Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

QoL improvements to release notes script/notebooks#626

Merged
validbeck merged 25 commits intomainvalidmind/documentation:mainfrom
beck/sc-8017/release-notes-scripts-notebooks-qol-improvementsvalidmind/documentation:beck/sc-8017/release-notes-scripts-notebooks-qol-improvementsCopy head branch name to clipboard
Jan 15, 2025
Merged

QoL improvements to release notes script/notebooks#626
validbeck merged 25 commits intomainvalidmind/documentation:mainfrom
beck/sc-8017/release-notes-scripts-notebooks-qol-improvementsvalidmind/documentation:beck/sc-8017/release-notes-scripts-notebooks-qol-improvementsCopy head branch name to clipboard

Conversation

@validbeck
Copy link
Collaborator

@validbeck validbeck commented Jan 14, 2025

Internal Notes for Reviewers

sc-8017

Aliases added to older moved releases

What the header says — 2023 & 2024 releases have aliases now so that their old URLs resolve to the new ones where they got moved after the old year-end cleanup process.

Test the redirects

  • On any preview of the site, pick a release date file and remove the yearly directory from the URL. You should see the link resolve to the new page.
    • e.g /releases/2024-dec-24/release-notes.html > /releases/2024/2024-dec-24/release-notes.html

Quality of life improvements for release notes process

Generate release notes

  • This now creates the release note under a yearly folder to begin with so we don't have to create/move/resolve broken links at the end of each year with create_release_folder() 🎉
  • update_quarto_yaml() (inserting the new releases page into the sidebar) and update_index_qmd() (adding the latest release to the index and removing the oldest one from the listing) now also use the new filepath with the format {year}/{year}-mon-00/release-notes.qmd so those files update correctly without adjustment

Year-end release cleanup

Since generating the release notes now creates the releases automatically in a yearly folder:

  • We retrieve the filepath of yearly folder instead of creating it create_year_folder() > retrieve_year_folder()
  • Since release pages are already where they are supposed to be, we leave them alone in the file structure; REMOVED: move_yearly_releases()
  • Just a quick update to update_quarto_yaml() (adding the new yearly accordion to the sidebar) to accommodate for the releases already being in the yearly folder rather than fixing the filepaths after we move the files
  • Since we didn't move any files, there are no filepaths to fix; REMOVED: update_paths(), search_links()

Try it yourself

  • First, grab this PR: gh pr checkout 626

Creating the test release notes

Before we can test the year-end release cleanup, we'll need to create two sets of test release notes: 2 from 2025 and 1 from 2026.

    • Open release-scripts/generate-release-notes.ipynb and run the notebook with any release tag of your choice (I just used https://github.com/validmind/documentation/releases/tag/v2.6.7 for all the testing). Leave the date as default for this run. Your preview should show:
      • The new release on index.qmd under Latest Releases and the oldest one from the listing removed
      • The new release under the "About" section in the Releases sidebar and have the filepath: releases/{year}/{year}-mon-00/release-notes.html
    • Navigate into the site/ folder: cd site
    • Run the Make command to generate release notes: make release-notes. You can use the same release tag but PICK A DIFFERENT DATE THAT IS IN 2025 THAT ISN'T THE DEFAULT. This is important because we want two "release notes" in 2025 to work with. Your preview should show:
      • The new release on index.qmd under Latest Releases to the left of the previous one you just added
      • The new release under the "About" section in the Releases sidebar on top of the previous one you just added
    • Finally, generate one more set of release notes, with either method. Same release tag is fine, but MAKE SURE THE DATE IS IN 2026. Your final preview should show:
Index page Releases section
Screenshot 2025-01-14 at 12 23 35 PM Screenshot 2025-01-14 at 12 23 42 PM

Cleaning up the "2025" releases

Cool, now that we have releases to clean up:

  • Open release-scripts/year-end-cleanup.ipynb and run the notebook, ENTERING IN 2025 WHEN PROMPTED (DO NOT LEAVE DEFAULT AS THIS WILL PULL 2024). You should see:
Updated _quarto.yml sidebar & comment markers Updated Releases section
Screenshot 2025-01-14 at 12 25 44 PM Screenshot 2025-01-14 at 12 25 49 PM

@validbeck validbeck added the internal Not to be externalized in the release notes label Jan 14, 2025
@validbeck validbeck self-assigned this Jan 14, 2025
@github-actions
Copy link
Contributor

A PR preview is available: Preview URL

@github-actions
Copy link
Contributor

A PR preview is available: Preview URL

1 similar comment
@github-actions
Copy link
Contributor

A PR preview is available: Preview URL

@github-actions
Copy link
Contributor

A PR preview is available: Preview URL

2 similar comments
@github-actions
Copy link
Contributor

A PR preview is available: Preview URL

@github-actions
Copy link
Contributor

A PR preview is available: Preview URL

@validbeck validbeck force-pushed the beck/sc-8017/release-notes-scripts-notebooks-qol-improvements branch from 8bd1379 to 10e317a Compare January 14, 2025 21:25
@github-actions
Copy link
Contributor

A PR preview is available: Preview URL

@validbeck validbeck marked this pull request as draft January 14, 2025 21:34
@validbeck validbeck force-pushed the beck/sc-8017/release-notes-scripts-notebooks-qol-improvements branch 2 times, most recently from 1468878 to 10e317a Compare January 14, 2025 21:50
@validbeck validbeck marked this pull request as ready for review January 14, 2025 22:18
@validbeck validbeck requested a review from nrichers January 14, 2025 22:18
@github-actions
Copy link
Contributor

PR Summary

This pull request introduces several enhancements to the release note generation and yearly cleanup scripts. The key changes include:

  1. Release Note Generation:

    • The create_release_folder function now returns both the output file path and the year, allowing for better organization of release notes into yearly folders.
    • The update_quarto_yaml and update_index_qmd functions have been updated to include the year as a parameter, ensuring that release notes are correctly referenced in the YAML and index files.
  2. Yearly Cleanup Script:

    • The script now focuses on collating releases into a yearly listing page without moving them into a new subdirectory. This change simplifies the process and reduces the risk of broken links.
    • The retrieve_year_folder function checks for the existence of a yearly directory instead of creating one, reflecting the new approach of not moving release folders.
    • The get_yearly_releases function has been updated to find subdirectories within a specific year, ensuring accurate retrieval of release folders.
  3. Alias Addition:

    • Aliases have been added to various release note files to ensure backward compatibility with previous URLs.

These changes aim to improve the organization and accessibility of release notes while simplifying the yearly cleanup process.

Test Suggestions

  • Test the create_release_folder function to ensure it returns the correct file path and year.
  • Verify that the update_quarto_yaml and update_index_qmd functions correctly update the YAML and index files with the new year parameter.
  • Run the yearly cleanup script to ensure it correctly collates releases into a yearly listing page without moving them.
  • Check that aliases in release note files redirect correctly to the intended pages.
  • Ensure that the retrieval of yearly release folders works as expected and returns accurate results.

@github-actions
Copy link
Contributor

A PR preview is available: Preview URL

Copy link
Collaborator

@nrichers nrichers left a comment

Choose a reason for hiding this comment

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

Tested this PR locally and it works a treat — it's quite impressive to simply enter a few prompts and have the release notes pop up in a preview a little while later. Feels polished. The aliases are a nice touch. ✨✨✨

Just a quick update to update_quarto_yaml() (adding the new yearly accordion to the sidebar) to accommodate for the releases already being in the yearly folder rather than fixing the filepaths after we move the files

I wouldn't make any changes to this PR, but since we now list the latest releases on the home page, it feels like even the sidebar could just use the year folder from the start, rather than breaking out the current releases one heading level higher — I could see a future where we retire release-scripts/year-end-cleanup.ipynb altogether because everything is already where it needs to be and whatever else needs to be done gets handled by the release notes script itself.

Nicely done, @validbeck! Great QoL improvements.

@validbeck validbeck merged commit 5c56df6 into main Jan 15, 2025
13 checks passed
@validbeck validbeck deleted the beck/sc-8017/release-notes-scripts-notebooks-qol-improvements branch January 15, 2025 17:04
validbeck added a commit that referenced this pull request Jan 22, 2025
* Add make execute PROFILE=exe-prod to docs-site action  (#598)

* Add execute PROFILE=exe-prod to Docker image build

* Move notebook execution into docs-site action

* Docs — Customize model overview page (#622)

* Draft customize-model-overview-page.qmd

* Quick instructions

* Edits based on feedback from Rod

* Updated docs — Workflows (#620)

* Tweak to release generation notebook

* Wait, gotta make the file first

* Wording in notebook

* Just being picky about spaces now

* Adding open file to yearly_cleanup.py too

* Success

* Edits to customize-model-lifecycle-statuses.qmd

* New img - working-with-model-workflows.qmd > See workflow statuses

* +reset-workflow.gif to working-with-model-workflows.qmd

* Updated set-up-model-workflows.qmd > Configure workflow steps

* Updated configure-user-action.png

* Updated approval-group-setup.png

* Redid the Approval Step example/images

* Redid the Condition Branch example/images

* Changed linked-workflow image to a gif

* Updated set-up-model-workflows.qmd > Link approval steps

* Changed my mind about the model-workflows.png screencap

* Tweak

* Simplifying based on Rod's suggestion

* QoL improvements to release notes script/notebooks (#626)

* Testing adding the year to generated release notes

* oops, forgot to parse the date format

* Now the folder is swapped ugh

* Adding the year to the _quarto.yml entry

* Oops, forgot to add the input

* Casing

* Adding new year folder to index function

* Grabbing yearly folders in established year

* Fake 2025 releases for testing & modifying Makefile command

* Fake 2026 release for yearly cleanup test

* Trying the yearly lookup again

* Yearly lookup works

* Retrieve year folder

* Commenting out move releases for now

* Removed move releases

* Modifying update_quarto_yaml

* Cleaning up the Makefile command

* Notebook wording cleanup

* Removing test files & reverting _quarto.yml & index.qmd to main

* Added aliases for moved 2024 releases

* Added aliases for moved 2023 releases

* Whoops, wrong alias for some of the super old releases

* Nitpicky edit

* Meh

* Nitpicking the output

* Added instructions for Wait steps in workflows (#628)

* Edits to date & date-time custom fields

* Wait step draft

* Edits & footnotes

---------

Co-authored-by: Nik Richers <nik@validmind.ai>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

internal Not to be externalized in the release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.