Optimize system note visibility checking by hiding notes that
have been fully redacted and contain cross-project references. The previous implementation relied on Note#cross_reference_not_visible_for?, which essentially tries to render all the Markdown references in a system note and only displays the note if the user can see the referring project. But this duplicated the work that Banzai::NotesRenderer was doing already. Instead, for each note we render, we memoize the number of visible user references and use it later if it is available. Improves #19273
显示
- CHANGELOG 1 个添加, 0 个删除CHANGELOG
- app/models/note.rb 13 个添加, 1 个删除app/models/note.rb
- lib/banzai/object_renderer.rb 4 个添加, 6 个删除lib/banzai/object_renderer.rb
- lib/banzai/redactor.rb 25 个添加, 12 个删除lib/banzai/redactor.rb
- spec/features/notes_on_merge_requests_spec.rb 22 个添加, 0 个删除spec/features/notes_on_merge_requests_spec.rb
- spec/lib/banzai/object_renderer_spec.rb 6 个添加, 2 个删除spec/lib/banzai/object_renderer_spec.rb
- spec/lib/banzai/redactor_spec.rb 22 个添加, 2 个删除spec/lib/banzai/redactor_spec.rb
- spec/models/note_spec.rb 14 个添加, 0 个删除spec/models/note_spec.rb
加载中
想要评论请 注册 或 登录