Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add individual pages for changelog versions #7117

Merged
merged 7 commits into from Mar 8, 2024

Conversation

daniel-beck
Copy link
Contributor

@daniel-beck daniel-beck commented Feb 21, 2024

Submitted to demonstrate something interesting (IMO) I discussed with @krisstern and @kmartens27 earlier: The ability to generate pages that have no corresponding source file. In this case, Changelog pages for individual Jenkins versions, so that we can replace linking to /changelog/#v2.440 (including the weird switch to /changelog-old/) with /changelog/2.440/ etc.

While I intend to finish this if it's deemed useful, it's not currently done. WIP:

  • Add links to the single-version changelog pages
  • Custom page title
  • Different layout, perhaps back/forward navigation
  • Implement the version limiter to what's released, similar to changelog list pages and upgrade guide
  • Possibly deduplicate UI code stolen from changelog-stable/

Examples:

https://deploy-preview-7117--jenkins-io-site-pr.netlify.app/changelog/2.440/
https://deploy-preview-7117--jenkins-io-site-pr.netlify.app/changelog-stable/2.440.1/
https://deploy-preview-7117--jenkins-io-site-pr.netlify.app/changelog-stable/2.426.3/

Screenshot 2024-02-21 at 17 19 28

@daniel-beck daniel-beck requested a review from a team as a code owner February 21, 2024 16:15
@probot-autolabeler probot-autolabeler bot added the changelog Jenkins changelogs label Feb 21, 2024
@daniel-beck daniel-beck marked this pull request as draft February 21, 2024 16:15
@MarkEWaite
Copy link
Contributor

I think that this is a great direction for the changelog pages. I don't have any frequent use case that benefits from multiple changelogs on a single page.

Copy link
Contributor

@kmartens27 kmartens27 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is a great idea, thanks very much @daniel-beck

Copy link
Member

@krisstern krisstern left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@zbynek
Copy link
Contributor

zbynek commented Mar 5, 2024

btw. what's the plan with Awestruct => Gatsby+Antora migration? Is this worth implementing in Ruby and rewriting in JS?

@krisstern
Copy link
Member

btw. what's the plan with Awestruct => Gatsby+Antora migration? Is this worth implementing in Ruby and rewriting in JS?

Yup, think so. I am planning to rewrite in JS for the retooling.

@daniel-beck daniel-beck marked this pull request as ready for review March 8, 2024 09:45
@daniel-beck
Copy link
Contributor Author

daniel-beck commented Mar 8, 2024

I think this is done enough now so it can be considered to be merged.

Thoughts about /changelog-stable/2.440.1/ (implemented) vs. /changelog/2.440.1/?

Former is consistent with the "list" location and makes the individual entry locally a child of the list it appears in.

Latter means the prefix for all version pages is the same, for those of us who manually edit URLs.

(We may consider generating redirect pages from one to the other too.)

@kmartens27
Copy link
Contributor

@daniel-beck would the later make sense where the weekly changelog is already using the https://www.jenkins.io/changelog/#v2.448 convention? It seems as though the implemented way may be more accurate in terms of what the user would be seeing.

@daniel-beck
Copy link
Contributor Author

@kmartens27 Weekly versions get the weekly changelog's /changelog/ prefix anyway, this is specifically about LTS versions.

@kmartens27
Copy link
Contributor

@daniel-beck yes, that part I understand. I was asking if the URL would end up looking the same for the LTS & Weekly changelogs due to the later's suggested formatting. Would the LTS changelog keep /changelog-stable/ or would it be changed, and if it is changed, how would we differentiate between the LTS & weekly changelogs?

@daniel-beck
Copy link
Contributor Author

@kmartens27 The changelog "lists" keep their URLs, nothing that currently exists is being moved. The question is only about whether individual pages for LTS releases have the /changelog/ prefix (so all individual releases live there) or /changelog-stable/ (for consistency with where the corresponding changelog "list" is).

Current situation

  • Weekly changelog list: /changelog/
  • LTS changelog list: /changelog-stable/
  • Entry on weekly changelog list: /changelog/#v2.440
  • Entry on LTS changelog list: /changelog-stable/#v2.440.1
  • Weekly release individual changelog: n/a
  • LTS release individual changelog: n/a

PR as implemented

  • Weekly changelog list: /changelog/
  • LTS changelog list: /changelog-stable/
  • Entry on weekly changelog list: /changelog/#v2.440
  • Entry on LTS changelog list: /changelog-stable/#v2.440.1
  • Weekly release individual changelog: /changelog/2.440/
  • LTS release individual changelog: /changelog-stable/2.440.1/

Suggestion

  • Weekly changelog list: /changelog/
  • LTS changelog list: /changelog-stable/
  • Entry on weekly changelog list: /changelog/#v2.440
  • Entry on LTS changelog list: /changelog-stable/#v2.440.1
  • Weekly release individual changelog: /changelog/2.440/
  • LTS release individual changelog: /changelog/2.440.1/

@kmartens27
Copy link
Contributor

@daniel-beck ah okay that makes much much much more sense, sorry for my confusion! I think keeping it aligned with the current naming convention makes sense.

@kmartens27 kmartens27 merged commit 1c4910a into jenkins-infra:master Mar 8, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants