Commit graph

22 commits

Author SHA1 Message Date
Alejandro Rodríguez
ea155ccc3e Optimize discussion notes resolving and unresolving
Use `update_all` to only require one query per discussion to
update the notes resolved status. Some changes had to be made to
the discussion spec to accout for the fact that notes are not
individually updated now
2016-09-06 12:14:09 -03:00
Sean McGivern
9b57ad382e Move #to_discussion to NoteOnDiff 2016-08-30 16:30:42 +01:00
Douwe Maan
d741303a59 Call set_discussion_id again in DiffNote before_validation because the order is important 2016-08-19 18:24:12 -05:00
Douwe Maan
080924f979 Fix bug where notes weren’t shown in discussion when the code had changed after creation 2016-08-19 12:38:40 -05:00
Douwe Maan
6a355d451e Improve performance of MR show page 2016-08-18 19:08:59 -05:00
Connor Shea
2df34c20cb
Fix a lingering conflict. 2016-08-17 12:29:05 -06:00
Connor Shea
d8654744cd
Merge branch 'master' into diff-line-comment-vuejs 2016-08-17 12:10:09 -06:00
Douwe Maan
4a13aa9f34 Store discussion_id on Note for faster discussion lookup. 2016-08-17 12:16:46 -05:00
Douwe Maan
41007f6d3c Address review feedback 2016-08-16 11:04:26 -05:00
Sean McGivern
427e724698 Don't allow resolving invalid conflicts
An MR can only be resolved in the UI if:
- It has conflicts.
- It has valid diff_refs (in other words, it supports new diff notes).
- It has no conflicts with one side missing.
- It has no conflicts in binary files.
- It has no conflicts in files too large to display.
- It has no conflicts containing invalid conflict markers.
2016-08-12 23:24:48 +03:00
Douwe Maan
c80f5e0a1c Add specs for new Note and DiffNote methods. 2016-08-12 00:16:38 -05:00
Douwe Maan
538e66d71c Merge branch 'master' into diff-line-comment-vuejs
# Conflicts:
#	app/models/discussion.rb
#	db/schema.rb
2016-08-03 15:32:00 -07:00
Paco Guzman
8716ff7f63 Speedup DiffNote#active? on discussions, preloading noteables and avoid touching git repository to return diff_refs when possible
- Preloading noteable we share the same noteable instance when more than one 
discussion refers to the same noteable.
- Any other call to that object that is cached in that object will be for any 
discussion.
- In those cases where merge_request_diff has all the sha stored to build a diff_refs get that 
diff_refs using directly those sha instead accessing to the git repository to first get the 
commits and later the sha.
2016-08-02 16:04:15 +02:00
Douwe Maan
1c2eefef3f Backend tweaks 2016-07-28 20:09:36 -06:00
Douwe Maan
35ce7aae01 Use sha1 of discussion ID. 2016-07-25 22:51:26 -06:00
Douwe Maan
bbab5d014f Add methods to resolve diff notes and discussions 2016-07-25 22:37:22 -06:00
Douwe Maan
46cc034e05 Add resolved_at and resolved_by_id to DiffNote 2016-07-25 22:33:01 -06:00
Douwe Maan
6dd71888b3 Make DiffNote#update_position private 2016-07-07 16:13:55 -04:00
Douwe Maan
d7e8479ee8 Keep around DiffNote position commits 2016-07-06 18:51:01 -04:00
Douwe Maan
710c488691 Automatically update diff note positions when MR is pushed to 2016-07-06 18:51:00 -04:00
Douwe Maan
8d7dc26d39 Support new diff notes on MRs with diff_refs 2016-07-06 18:51:00 -04:00
Douwe Maan
2f30d00432 Add DiffNote model 2016-07-06 18:50:59 -04:00