Skip to content

Latest commit

 

History

History
42 lines (31 loc) · 2.06 KB

RELEASE.md

File metadata and controls

42 lines (31 loc) · 2.06 KB

Release process

  1. update version strings (but not in jsr.json yet)
  2. commit 'Bump version to vx.y.z'
  3. tag the commit with the new version string (with annotation)
  4. push to github (this will add updated test output to README.md)
  5. push to github with --tags (does not work @step4? why?)
  6. create release on GitHub (with annotation text from @step3)
  7. pull from github (to get updated README.md and minified build)
  8. update version string in jsr.json
  9. commit 'Bump jsr.io to vx.y.z'
  10. generate new CHANGELOG.md
  11. commit 'doc: update changelog'
  12. push to github (this will upload the fresh repository snapshot to jsr.io)

Version string update

  • package.json - "version" property value
  • files-to-prompt.ts - VERSION variable at the top of the script
  • README.md - download links for the raw script in the Installation section

Changelog

Generate CHANGELOG.md from git tag annotations with this commandline:

git for-each-ref --sort=-taggerdate --format='## %(refname:short)%n%(contents)%n---%n' refs/tags | sed 's/%n/\n/g' > CHANGELOG.md

jsr.io

  • jsr.json - "version" property value

Note: Updating this version string will trigger the publish.yml workflow and upload the repository files to jsr.io after push to GitHub

General Notes

  • minified build will be generated by build.yml workflow after release
  • test output will be generated and inserted into README.md by test.yml after tagging
  • test.yml workflow can fail (bun test reports failed tests), pay attention to GitHub notifications
  • simple test for Deno compatibility: deno run -A ./files-to-prompt.ts /some/testfolder
  • simple test for Node compatibility: node ./minified/ftp-vx.y.z-min.js /some/testfolder