Commit graph

67 commits

Author SHA1 Message Date
Marcin Lulek
b95942a08c pull-requests: security, prevent from injecting comments to other pull requests users
don't have access to.
2017-10-19 08:56:32 +02:00
Marcin Kuzminski
27aff1de7a pull-requests: trigger merge simulation during PR creation. Fixes #5396 2017-10-12 20:57:02 +02:00
Marcin Kuzminski
56bbe6261a pull-request-events: add audit data for pull_request.close action 2017-09-08 16:04:22 +02:00
Marcin Kuzminski
990994942d pull-requests: use close action with proper --close-commit solution.
- Mercurial settings are no long as LABS
- Unified some code between GIT and HG on rebase/close/delete feature branches
2017-08-24 22:36:34 +02:00
Mathieu Cantin
761e973359 mercurial: Add option to close a branch before merging 2017-08-08 13:46:42 -04:00
Marcin Kuzminski
57031945a3 pull-requests: use merge info to show how Pull requests will be merged.
- rebase or merge commit is shown as merge strategy.
- close/delete branch are shown if that option is selected.
2017-08-23 13:48:10 +02:00
Marcin Kuzminski
b203d5f208 pull-requests: migrated code from pylons to pyramid 2017-07-27 11:30:55 +02:00
Marcin Kuzminski
ae8340ad2a db: use a wrapper on pull requests _last_merge_status to ensure this is always INT.
- after upgrade of sqlalchemy this is casted to Long
- for backward compat we cast it as Int
2017-07-26 12:16:25 +02:00
Marcin Lulek
af07c911dc security: use safe escaped version of description for repo and repo group to potentially
prevent any XSS attacks on returned data.
2017-06-21 12:23:46 +02:00
Marcin Lulek
ad54b9a57d security: use new safe escaped user attributes across the application.
- will fix all possible XSS attack vectors.
2017-06-19 15:14:02 +02:00
Marcin Kuzminski
aa3bffd198 pull-requests: prepare the migration of pull request to pyramid.
- this is half the code because of problems found during porting
- partially moved the urls, and flipped the logic into pyramid code
- needs more work in core for full switch.
2017-06-19 13:25:15 +02:00
Marcin Kuzminski
926a79e98e audit-logs: implemented pull request and comment events. 2017-06-17 15:22:50 +02:00
Daniel Dourvaris
091c9d9d99 pull-requests: make sure to skip duplicates of reviewers via PR create method. 2017-06-14 00:15:06 +02:00
Marcin Kuzminski
5915f38fcf pull-request-api: updated logic of closing a PR via API call.
- consistent logic via web and API
- updated events
- updated proper close checks.
2017-06-13 00:14:21 +02:00
Marcin Kuzminski
47f9f32ad9 events: expose permalink urls for different set of object.
- permalink url should provide a non-changeable url that can be used in
external sources with guarantee of beeing always valid.
2017-06-08 16:11:33 +02:00
Marcin Kuzminski
53b4ac98f8 repo-summary: re-implemented summary view as pyramid.
- changed exception handler, to now work in pure pyramid mode
- changed missing requirements logic on repo based views that require vcs-connection
2017-06-07 13:23:21 +02:00
Marcin Kuzminski
bd1e865c9c pull-request: extended default reviewers functionality.
- added mandatory reviewers JS logic Fixes: #4219
- added option to forbid author to be a reviewer via JS/Frontend checks. Fixes #5190
- added option to forbid adding new reviewers except those defined. Fixes #5208
2017-05-29 20:10:17 +02:00
Marcin Kuzminski
721d155fa9 pull-requests: make sure we process comments in the order of IDS when
linking them.

- random order could be problematic
2017-04-27 18:06:51 +02:00
Marcin Kuzminski
dabc592890 pull-request: fixed typo in wrong ref type error, and added which
refs are actually allowed.
2017-04-24 16:36:28 +02:00
Marcin Kuzminski
afe887cf7e pull-requests: change the update commits logic to handle target changes better.
- references #5266
- don't create comments if NO changes in PR were detected, but target changed
- Show the origin of changes target/source repos
- Allows updating the diffs without invalidating voting and creating new versions.
2017-04-05 16:39:32 +02:00
Marcin Kuzminski
71c08bd00c pull-requests: updates on pull requests that don't have versions shouldn't
throw any errors.
2017-04-05 11:33:57 +02:00
Marcin Kuzminski
9f40d6928b pull-request: force update pull-request in case of the target repo reference changes.
- We should be able to force update a diff if the target repo reference changes. It
will help detect commits that are pushed into the target from the origin.
- Fixes #5266
2017-04-04 16:38:32 +02:00
Marcin Kuzminski
4c2e5ee660 pull-request: lock button when updating reviewers to forbid multi-submit.
- fixed some small UI issues found.
2017-03-27 15:32:27 +02:00
Marcin Kuzminski
89dc191e0d pull-requests: add explicit CLOSE pr action instead of closed status from selector.
- This is much better UX
- we set status based on calculated review
- fixes #5215
2017-02-15 11:48:54 +01:00
Marcin Kuzminski
33ec213f25 merge-checks: show only username for allowed to merge check. 2017-02-01 12:11:01 +01:00
Marcin Kuzminski
8c3f6e1f5b perms: fixed call to correctly check permissions for admin. 2017-01-30 17:20:48 +01:00
Marcin Kuzminski
5e35e36e4f pr-model: don't use set to calculate commit ranges as they generate random order. 2017-01-30 12:41:16 +01:00
Marcin Kuzminski
e7511ca6f6 pr-versioning: implemented versioning for pull requests.
- users can navigate via each version or generate diffs between versions
- diff between versions will show changed commits and partial diffs
- redone the UI for versioning a bit
- small UI fixes
2017-01-25 19:06:59 +01:00
Marcin Kuzminski
57268f2564 merge-logic: improve merge failed because of conflicts message. 2017-01-19 14:04:19 +01:00
Marcin Kuzminski
82fd870fe4 merge-checks: added more detailed information about why merge is not possible.
- information is stored inside .error_details now.
2017-01-19 13:56:23 +01:00
Marcin Kuzminski
30637758d6 pull-requests: unified merge checks.
- same logic is now used for API, pre-conditions on show, and checks on actual merge
- added checks into API because it was not validated
2017-01-18 14:56:20 +01:00
Marcin Kuzminski
b52808ca95 comments: renamed ChangesetCommentsModel to CommentsModel to reflect what it actually does.
It's not limited to Changesets/Commits.
2017-01-09 17:52:00 +01:00
Marcin Kuzminski
fcc027c282 license: updated copyright year to 2017 2017-01-02 09:30:39 +01:00
Marcin Kuzminski
d6f28d246d pull-requests: when creating a new version set the created_date to now instead of
coping it from original object.
2016-12-06 00:19:29 +01:00
Martin Bornhold
ba66c9ce61 subrepo: Add merge failure reason code ad message for subrepo merge conflicts. 2016-10-28 13:06:55 +02:00
Marcin Kuzminski
510f700051 pull-requests: moved the delete logic into the show view.
- delete from pr view is more intuitive
- there was several support queries about beeing confused how to delete a pr
2016-10-30 20:58:11 +01:00
Marcin Kuzminski
753d0ff478 pull-requests: redo my account pull request page with datagrid. Fixes #4297
- consistent ui with per-repo pull-request page
- faster loading due to pagination
- enabled sorting of columns
2016-11-01 08:58:57 +01:00
Martin Bornhold
e0af9069d6 pr: Rename update response flag success -> executed
The name `success` may be misleading beacuse a skipped updated can be
interpreted as success or failure. The new name `executed` is clearer
because its only `True` if the update is really executed.
2016-10-27 14:28:26 +02:00
Martin Bornhold
053382901e pr: Refactor PR update error message handling. 2016-10-27 13:55:58 +02:00
Martin Bornhold
0236ad15ca vcs: Deprecate generic missing commit merge error reason.
There are two more specific error reasons (target/source ref missing)
which should be used instead.
2016-10-27 12:50:59 +02:00
Martin Bornhold
667cf04058 pr: Catch errors if target or source reference are missing during commit update. #3950 2016-10-27 10:37:51 +02:00
Martin Bornhold
e7dd0a5526 pr: Return update response objects instead of tuples. 2016-10-27 10:36:55 +02:00
Martin Bornhold
b82c5febad pr: Add UpdateResponse data structure to hold response data when updating commits. 2016-10-27 10:33:55 +02:00
Martin Bornhold
83bfa216e3 pr: Add update status messages dict. 2016-10-27 10:24:33 +02:00
Martin Bornhold
0990dd0076 pr: Return proper merge response if target reference is missing. 2016-10-27 10:24:00 +02:00
Martin Bornhold
e9b40b0f19 pr: Move log statement to allow early return and still log merge response. 2016-10-27 10:22:54 +02:00
Martin Bornhold
0191964cfd pr: Add error messages for new merge failure reasons. 2016-10-26 15:43:44 +02:00
Martin Bornhold
ff69018a3e pr-shadow: Adapt to new merge response object. 2016-10-23 16:03:46 +02:00
Martin Bornhold
ccc011226b pr-model: Commit changes to DB on merge status update. 2016-10-23 14:37:47 +02:00
Martin Bornhold
797d70d4cf pr-shadow: Set last merge revision on merge status update. 2016-10-23 14:37:19 +02:00