| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| |
| |
| | |
Deleting a user shouldn't delete associated issues.
Closes #12726
See merge request !7393
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Add a `destroy_user` ability. This didn't exist before, and was implicit in
other abilities (only admins could access the admin area, so only they could
destroy all users; a user can only access their own account page, and so can
destroy only themselves).
- Grant this ability to admins, and when the current user is trying to destroy
themselves. Disallow destroying ghost users in all cases.
- Modify the `Users::DestroyService` to check this ability. Also check it in
views to decide whether or not to show the "Delete User" button.
- Add a short summary of the Ghost User to the bio.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Have `Uniquify` take a block instead of a Proc/function. This is more
idiomatic than passing around a function in Ruby.
- Block a user before moving their issues to the ghost user. This avoids a data
race where an issue is created after the issues are migrated to the ghost user,
and before the destroy takes place.
- No need to migrate issues (to the ghost user) in a transaction, because
we're using `update_all`
- Other minor changes
|
| |
| |
| |
| |
| | |
The default (false) is not strictly required, and this lets us avoid a
potentially expensive migration
|
| |
| |
| |
| |
| |
| |
| | |
1. Refactoring and specs in the `Uniquify` class.
2. Don't use the `AdvisoryLocking` class. Similar functionality is
provided (backed by Redis) in the `ExclusiveLease` class.
|
| |
| |
| |
| |
| |
| | |
Rather than using a separate `ghost` state. This lets us have the benefits of
both ghost and blocked users (ghost: true, state: blocked) without having to
rewrite a number of queries to include cases for `state: ghost`.
|
| |
| |
| |
| |
| |
| |
| |
| | |
1. Use an advisory lock to guarantee the absence of concurrency in `User.ghost`,
to prevent data races from creating more than one ghost, or preventing the
creation of ghost users by causing validation errors.
2. Use `update_all` instead of updating issues one-by-one.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
1. Create a `Uniquify` class, which generalizes the process of generating unique
strings, by accepting a function that defines what "uniqueness" means in a
given context.
2. WIP: Make sure tests for `Namespace` pass, add more if necessary.
3. WIP: Add tests for `Uniquify`
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- "Associated" issues are issues the user has created + issues that the
user is assigned to.
- Issues that a user owns are transferred to a "Ghost User" (just a
regular user with `state = 'ghost'` that is created when
`User.ghost` is called).
- Issues that a user is assigned to are moved to the "Unassigned" state.
- Fix a spec failure in `profile_spec` — a spec was asserting that when a user
is deleted, `User.count` decreases by 1. After this change, deleting a user
creates (potentially) a ghost user, causing `User.count` not to change. The
spec has been updated to look for the relevant user in the assertion.
|
| |
| |
| |
| |
| | |
We already skip sending notifications to blocked users. Simply add ghost users
to this list.
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
Use Namespace#full_path instead of #path where appropriate
See merge request !9495
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Simplify variables validation in triggers API
See merge request !9506
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Use correct GitLab Prometheus exporter name in docs
Closes #28619
See merge request !9503
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
Added application password instructions for Gmail/G suite accounts
See merge request !9486
|
| | | | |
| | | | |
| | | | | |
with 2-step verification.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fix broken links in CI admin area docs
See merge request !9507
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
[ci skip]
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
clarify Pages custom domain details
Closes #28577
See merge request !9457
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Api remove owned groups
Closes #27937
See merge request !9505
|
| |\ \ \ \ \ \ \
| | | |/ / / / /
| | |/| | | | |
| | | | | | | | |
# Conflicts:
# doc/api/v3_to_v4.md
|
| | | | | | | | |
|
| | | | | | | | |
|
| | |_|_|/ / /
| |/| | | | | |
|
|\ \ \ \ \ \ \
| |_|/ / / / /
|/| | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Use persistent name identifier instead of transient in SAML2 documentation
Closes #28653
See merge request !9504
|
| |/ / / / / |
|
|\ \ \ \ \ \
| |_|_|_|_|/
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Return 202 with JSON body on async removals on V4 API
Closes #3874
See merge request !9449
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Artifact Expiration Defaults
Closes #27762
See merge request !9219
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9219#note_24032923
|
| | | | | | | |
|
| |\ \ \ \ \ \
| | | |/ / / /
| | |/| | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
27762-add-default-artifacts-expiration
* upstream/master: (247 commits)
Switched CONTRIBUTING.md style guide recommendation for method chaining
Fix new offenses
Stylistic tweaks
Fix OAuth/SAML user blocking behavior
Revert "Enable Style/DotPosition"
Revert "Prefer leading style for Style/DotPosition"
Revert "Enable Style/BarePercentLiterals"
Manually correct autocorrect
Move up delegate calls
Exclude migrations from Style/MutableConstant
ActiveSupport delegation is preferred over Forwardable
Update haml_lint to work with newest rubocop
Add explanations to cops
Update rubocop and rubocop-rspec and regenerate .rubocop_todo.yml
Update rubocop and rubocop-rspec and regenerate .rubocop_todo.yml
Order cops alphabetically
Don’t exclude some file in lib from rubocop
Fix new offenses
Enable Rails/Delegate
Enable Style/WordArray
...
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Feedback:
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9219#note_23943262
|
| | | | | | | |
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
27762-add-default-artifacts-expiration
* upstream/master: (26 commits)
Allow searching issues for strings containing colons
Fix Spinach failure
[ci skip] UX Guide: Add personas
Reuse User#find_by_any_email on UserFormatter#find_by_email
Use leading periods on UserFormatter#find_by_external_uid
Add CHANGELOG entry
Add a simple cache for Gitlab::GithubImport::Client#user
GitHub Importer - Find users based on their email address
Don't use potentially slow ForkService in spec
Added support for Authentiq Back-Channel Logout
Added documentation for permalinks to most recent build artifacts
Unify issues search behavior by always filtering when ALL labels matches
Update GitLab Pages to v0.3.1
Document Timecop usage for time-sensitive tests
Add process for requesting approval for licenses
Rename karma job to rake karma
Update positioning of nav scroll arrows
Fix issue where files on a fork could not be edited
Move tanuki to left of title; increase max-width of title
Refactor project stats & last_commit CSS; left align main nav items
...
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
and update screenshot for maximum artifacts size.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Feedback:
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9219#note_23762243
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9219#note_23762268
|
| |\ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
27762-add-default-artifacts-expiration
* upstream/master: (234 commits)
Improve performance of User Agent Detail
Fix some grammar in the API docs
Remove shared example for pagination
API: Use POST to (un)block a user
API: Moved `DELETE /projects/:id/star` to `POST /projects/:id/unstar`
Use grape validation for dates
Change wording for LDAP doc that was moved to a new location
API: Remove `DELETE projects/:id/deploy_keys/:key_id/disable`
Download snippets with LF line-endings by default
utilize pre-minified Vue in production since no CJS distribution is available
Prevent project team from being truncated too early during project destruction
loading icon sometimes toggled alongside MR pipeline contents
fix failed spec because haml_lint
fix incorrect sidekiq concurrency count in admin background page
exclude rpc_pipefs from system disc info
Fix wrong line ending [ci-skip]
fix overlooked window binding in spec files
remove imports loader
replace implicit this == window with explicit binding
Todo done clicking is kind of unusable.
...
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
https://gitlab.com/gitlab-org/gitlab-ce/issues/27762#note_23520780
|
| | | | | | | | | |
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9219#note_23437712
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Feedback:
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9219#note_23436980
|