Implementing special GitLab markdown reference for milestones
Using the syntax proposed in #13829 (closed) [project_reference]%(milestone_id | milestone_name) to get a link to the referred milestone.
Merge request reports
Activity
216 216 217 217 #### MilestoneReferenceFilter 218 218 219 Milestone: <%= milestone.to_reference %> 219 Milestone by ID: <%= simple_milestone.to_reference %> 220 Milestone by name: <%= Milestone.reference_prefix %><%= simple_milestone.name %> 221 Milestone by name in quotes: <%= milestone.to_reference(format: :name) %> 220 222 Milestone in another project: <%= xmilestone.to_reference(project) %> 221 Ignored in code: `<%= milestone.to_reference %>` 222 Link to milestone by URL: [Milestone](<%= urls.namespace_project_milestone_url(milestone.project.namespace, milestone.project, milestone) %>) 223 Ignored in code: `<%= simple_milestone.to_reference %>` 224 Ignored in links: [Link to <%= simple_milestone.to_reference %>](#milestone-link) 225 Link to milestone by URL: [Milestone](<%= milestone.to_reference %>) The exact case I mentioned still seems to be missing!
Link to milestone by URL: [Milestone](<%= urls.namespace_project_milestone_url(milestone.project.namespace, milestone.project, milestone) %>)
@eReGeBe We looked at
%
autocomplete as well, were you able to get that working?Edited by Douwe MaanMilestone changed to 8.7
Cross-project references are currently not rendered in a distinct way,
gitlab-org/gitlab-ee%8.7
and%8.7
both render as8.7
. Can we show the project name for cross-project references? We do a similar thing for labels:bug vs gitlab-org/gitlab-eebug.I like showing it as
8.7 (gitlab-org/gitlab-ee)
, but you might have a better idea. Cross-project milestone links won't be common, but we should properly support them.Edited by Douwe Maan7 7 end 8 8 9 9 def find_object(project, id) 10 project.milestones.find_by(iid: id) 10 project.milestones.find(id) 11 11 end 12 12 13 def url_for_object(issue, project) 13 def references_in(text, pattern = Milestone.reference_pattern) @DouweM cross references differentiation implemented also in latest commit.
@DouweM haven't got time to properly finish the autocomplete stuff yet, sorry :(
23 end 24 end 25 end 26 27 def url_for_object(milestone, project) 14 28 h = Gitlab::Application.routes.url_helpers 15 29 h.namespace_project_milestone_url(project.namespace, project, milestone, 16 30 only_path: context[:only_path]) 17 31 end 32 33 def object_link_text(object, matches) 34 if context[:project] == object.project 35 super 36 else 37 "#{super} <i>in #{escape_once(object.project.name_with_namespace)}</i>". 38 html_safe @eReGeBe You might also want to rebase!
Added 267 commits:
- d9b04ae6...67136007 - 265 commits from branch
gitlab-org:master
- 146035a4 - Implementing special GitLab markdown reference for milestones
- 44188ea9 - Consistently using iid when treating milestones as referrables
- d9b04ae6...67136007 - 265 commits from branch