-
Notifications
You must be signed in to change notification settings - Fork 338
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
feat: add semantic release #307
Conversation
Should do a normal release then before turning this on. |
Will need to setup commitizen/commitlint before landing this to ensure commit messages are valid |
Wondering if we actually want a release every time a PR is merged. Might be better to offer a stable branch (periodic release) and a dev branch (tracking master) |
Yeah. I can send a PR with the file updates for the release if you want?
There's a few GitHub actions that handle stuff like this. I prefer to enforce squashing and lint the PR title. Thoughts - lint PR title, or all commits?
Releasing after every PR seems to be common in JS libraries. It's up to you, but a periodic release would probably require manual action again |
I just cut 4.14.0 so I think we're clear here.
I set the repo to squash by default so we just have to lint PR title.
OK, maybe this is me not understanding semantic release, but what's the point of releases if you release every PR. That seems like what a nightly is for. |
I'll look at adding a GitHub Action which lints the PR title.
It wouldn't necessarily be a point release - I think the only real benefit to releasing after every PR is that it's fully automated. The other benefit is that easy to rollback to a previously working version if one PR breaks something.
This should be do-able, but would require you to manually merge We could perhaps just make |
I'm down to try with a manual GitHub action to start, and then upgrade into continuous if we like it. |
a333bb5
to
f10b0eb
Compare
I've updated it so the PR title is linted, and it runs manually. Two things to note, but I don't think you need to worry about either:
To manually run the action see https://docs.github.com/en/actions/managing-workflow-runs/manually-running-a-workflow |
YAML will try to interpret numeric values as numbers, leading to `8.0` being interpreted as `8` instead of `'8.0'`. This doesn't result in a functional change, but cleans up the output of the jobs a little (e.g. in the title line).
This does not introduce any functional difference and is intended as a future-proofing change. see https://github.com/actions/checkout/releases/tag/v3.0.0
Selecting the `fstools` tests also executed the `htmlt` tests.
* Define HTMLPurifier_AttrTransform_SafeParam::$wmode This fixes a PHP 8.2 deprecation. * Define HTMLPurifier_DefinitionCache_DecoratorHarness::$cache This fixes a PHP 8.2 deprecation. * Define HTMLPurifier_DefinitionCache_DecoratorHarness::$mock This fixes a PHP 8.2 deprecation. * Define HTMLPurifier_DefinitionCache_DecoratorHarness::$def This fixes a PHP 8.2 deprecation. * Define HTMLPurifier_EntityParserTest::$_entity_lookup This fixes a PHP 8.2 deprecation.
* Add contenteditable attribute definition * gate behind html.trusted * use enum
* Add PHP 8.2 to CI see ezyang#334 * Add PHP 8.2 to composer.json
* Run CSSTidy tests on CI * update dirname * use compopser instead of git clone * use composer * use test-settings.sample.php * enable ext-intl * disable Net_IDNA2
I plan to merge this after the upcoming release, then do a "stutter" relase to check that this is working |
Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
… into bytestream-semantic-release
# [4.16.0](v4.15.0...v4.16.0) (2022-09-18) ### Features * add semantic release ([#307](#307)) ([db31243](db31243)), closes [#322](#322) [#323](#323) [#326](#326) [#327](#327) [#328](#328) [#329](#329) [#330](#330) [#331](#331) [#332](#332) [#333](#333) [#337](#337) [#335](#335) [#334](#334) [#336](#336) [#338](#338)
🎉 This PR is included in version 4.16.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Requires a GitHub auth token adding to the repository secrets of name
GITHUB_TOKEN
https://docs.github.com/en/actions/security-guides/encrypted-secretsHow does it work? https://semantic-release.gitbook.io/semantic-release/#how-does-it-work
Release notes / change log is generated based on
fix:
/feat:
commit messages. So the first automatic release won't include historic commits which don't match that format.NEWS
is generated automatically per above using markdown format, so will not look the same as before...WHATSNEW
has been removed as it's difficult to automatically generateCloses #304