Age | Commit message (Collapse) | Author |
|
Fix Error 500 when creating global milestones with Unicode characters
Two issues:
1. The constraints in the resources were incorrect. Here's what it was before:
```
group_milestone GET /groups/:group_id/milestones/:id(.:format) groups/milestones#show {:id=>/[a-zA-Z.0-9_\-]+(?<!\.atom)/, :group_id=>/[a-zA-Z.0-9_\-]+(?<!\.atom)/}
```
In this case, id is actually the title of the milestone, which can be anything at the moment.
After:
```
group_milestone GET /groups/:group_id/milestones/:id(.:format) groups/milestones#show {:id=>/[^\/]+/, :group_id=>/[a-zA-Z.0-9_\-]+(?<!\.atom)/}
```
2. `parameterize` would strip all Unicode characters, leaving a blank string. Rails would report something like:
```
ActionView::Template::Error (No route matches {:action=>"show", :controller=>"groups/milestones", :group_id=>#<Group id: 48, name: "ops-dev", path: "ops-dev", owner_id: nil, created_at: "2015-11-15 08:55:30", updated_at: "2015-12-02 06:23:26", type: "Group", description: "", avatar: "sha1.c71e73d51af1865c1bbbf6208e10044d46c9bb93.png", public: false>, :id=>"", :title=>"肯定不是中文的问题"} missing required keys: [:id]):
```
This change uses the babosa library to create a better slug, which surprisingly
isn't actually used by the global milestone controllers. Instead, they use the
title passed as a query string for some reason.
Closes https://github.com/gitlabhq/gitlabhq/issues/9881
See merge request !1983
|
|
Add flay: tool to find duplicate code
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
See merge request !1789
|
|
Add method complexity check to CI
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
See merge request !1783
|
|
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
|
|
Implement Build Artifacts
This implements #3028
1. It stores artifacts in shared/artifacts,
1. It adds `artifacts` to `.gitlab-ci.yml`,
1. We use GitLab Workhorse to offload artifacts uploading,
1. To download artifacts it uses GitLab Workhorse X-Sendfile extension,
1. There's one "artifact" per-build. The new upload removes previous one and creates a new one,
1. Default max artifact size is set to 100MB - this can be changed in settings.
Missing things:
1. Support for `.gitlab-ci.yml`: `artifacts: true or git-ls-files` which will upload all non tracked files,
1. Artifacts passing between builds.
GitLab Workhorse changes: https://gitlab.com/gitlab-org/gitlab-workhorse/merge_requests/5
GitLab Runner changes: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/46
Syntax:
```
artifacts:
untracked: true # default: false
paths: # default: empty
- bin/files
```
See merge request !1584
|
|
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
|
|
Switch to state_machines-activerecord (Fixes: #3374)
state_machine is unmaintained
See merge request !1764
|
|
- Offloads uploading to GitLab Workhorse
- Use /authorize request for fast uploading
- Added backup recipes for artifacts
- Support download acceleration using X-Sendfile
|
|
Switch back to github-linguist
|
|
Sherlock will be a new GitLab specific tool for measuring the
performance of Rails requests (and SideKiq jobs at some point). Some of
the things that are currently tracked:
* SQL queries along with their timings, backtraces and query plans
(using "EXPLAIN ANALYZE" for PostgreSQL and regular "EXPLAIN" for
MySQL)
* Timings of application files (including views) on a per line basis
* Some meta data such as the request method, path, total duration, etc
More tracking (e.g. Rugged or gitlab-shell timings) might be added in
the future.
Sherlock will replace any existing tools we have used so far (e.g.
active_record_query_trace and rack-mini-profiler), hence the
corresponding Gems have been removed from the Gemfile.
Sherlock can be enabled by starting Rails as following:
ENABLE_SHERLOCK=1 bundle exec rails s
Recorded transactions can be found at `/sherlock/transactions`.
|
|
|
|
Add Facebook authentication
See merge request !1740
|
|
|
|
Closes #2801
|
|
Bump nprogress-rails to 0.1.6.7
Closes #2866
See merge request !1686
|
|
Closes #2858
|
|
Closes #2866
|
|
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
|
|
|
|
Let gitlab-git-http-server handle archive downloads
This change relies on changes in gitlab_git and gitlab-git-http-server.
fixes #2429
See merge request !1548
|
|
Remove guard-rspec and its supporting gems
See merge request !1551
|
|
This can be used to measure the time (roughly) spent on a per line
basis. This can also be used to measure timings for views, for example
by adding the following to a URL:
?lineprof=app/views/projects/notes/_note
rack-lineprof is only enabled when:
1. The application runs in development mode
2. The used Ruby is MRI
3. The environment variable ENABLE_LINEPROF is set to a non-empty value
|
|
This can be used to track down where queries originate from, regardless
of whether they're caused by N+1 problems or not. This can be enabled by
setting the environment variable ENABLE_QUERY_TRACE to a non-empty value
(e.g. "true").
|
|
This can be used to resolve N+1 query problems. Bullet is disabled by
default and can be enabled by starting Rails with the environment
variable ENABLE_BULLET set to a non empty value (e.g. "true").
|
|
|
|
|
|
Update uglifier to ~> 2.7.2
Fixes a security vulnerability:
- https://github.com/lautis/uglifier/pull/86
- https://github.com/mishoo/UglifyJS2/issues/751
- https://zyan.scripts.mit.edu/blog/backdooring-js/
See merge request !1590
|
|
|
|
|
|
|
|
Remove slim
Closes #2897
See merge request !1537
|
|
Remove whenever gem
Closes #2879
See merge request !1538
|
|
|
|
|
|
|
|
Update slack-notifier to ~> 1.2.0
Closes #2826
See merge request !1533
|
|
Update tinder to ~> 1.10.0
Closes #2823
See merge request !1534
|
|
Update rack-cors to ~> 0.4.0
Closes #2800
See merge request !1536
|
|
|
|
|
|
|
|
|
|
|
|
Update omniauth-* gem dependencies
- twitter to `~> 1.2.0` - closes #2763
- kerberos to `~> 0.3.0` - closes #2792
- google-oauth2 to `~> 0.2.0`
- shibboleth to `~> 1.2.0` - closes #2791
See merge request !1526
|
|
Change "+" icon under "Files" section to have three options:
* Create file
* Upload file
* New directory
Upload file is no longer accessible from the "Create file" page.
Users can now select a target branch in upload file as well.
Closes #2799: Fixes a bug where file modes were overwritten after a commit
Closes https://github.com/gitlabhq/gitlabhq/issues/8253: Existing files
can no longer be overwritten in the "Create file" section.
Closes #2557
|
|
|
|
|
|
|
|
|
|
This allows me to use this Gem for benchmarking without having to
add/remove it every time.
|