chore(main): release 3.0.0 - #58
Open
github-actions[bot] wants to merge 2 commits into
Open
github-actions[bot] wants to merge 2 commits into
github-actions[bot] wants to merge 2 commits into
Conversation
github-actions
Bot
force-pushed
the
release-please--branches--main
branch
from
August 25, 2026 02:15
7678021 to
3c32880
Compare
github-actions
Bot
force-pushed
the
release-please--branches--main
branch
8 times, most recently
from
September 3, 2026 10:37
6af9d89 to
c11106a
Compare
github-actions
Bot
force-pushed
the
release-please--branches--main
branch
13 times, most recently
from
September 10, 2026 08:07
d25e865 to
d6c1c79
Compare
github-actions
Bot
force-pushed
the
release-please--branches--main
branch
2 times, most recently
from
September 11, 2026 02:33
88365f8 to
2cbc978
Compare
github-actions
Bot
force-pushed
the
release-please--branches--main
branch
28 times, most recently
from
September 15, 2026 04:02
0ebde63 to
4f5b3db
Compare
last-release-sha records the merge parent so the squash merge itself lands the next cycle's boundary on main: version tags live on packaged commits that are not on main, so release-please cannot find the boundary by tag.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 I have created a release beep boop
3.0.0 (2026-09-23)
⚠ BREAKING CHANGES
{ failed }, and ArtifactUploader.upload() resolves to{ uploaded: true } | { failed }. docs/upgrading/v2-to-v3.md section 58 names the fix._remove: true, or clear a list with_layering: replace.SectionModule.plan()no longer accepts a raw section value. Pass the section off a validated document:validateSettings(doc)(ormergeSettings, orsnapshotRepository) returnssettings, andsettings.labelsis theValidatedInput<"labels">thatlabels.plan()takes.validatehook.deploy_keys[].keythat is not one line of<algorithm> <base64> [comment]with the algorithm one of ssh-ed25519, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com now fails the settings-file parse (a DSA key is refused naming the date GitHub dropped DSA), and a pasted private key is refused there without the material being echoed; declare the contents of the .pub file.bypass_actors: [],reviewers: [],deployment_branch_policy: null) to remove it on purpose_layering: mergeandlayering: mergeno longer exist and fail as unknown values (the set isreplace,shallow,deep).mode: mergeismode: render,merged-fileisrendered-file, the CLI subcommandmergeisrender, the result wordmergedisrendered, and the problem codesinput-merge-only,input-rejected-in-merge,input-merged-file-missing,merged-file-is-layer, andmerged-file-unwritablecarry the render spelling. Every list section now unions by its key under the default, where only labels and rulesets did.collaborators[].permissionandteams[].permissionrefuse "read", "write", mis-cased standard permissions, empty values, and whitespace at either end; declare "pull", "push", or the lowercase form.teams[].namerefuses anything outside[A-Za-z0-9._-]and a value with no letter or digit; declare the team's slug.due_ontakes a calendar dayYYYY-MM-DD(or a UTC timestampYYYY-MM-DDTHH:MM:SSZ, read for its day);due_on: nulland offset timestamps such as2026-01-15T00:00:00+02:00are refused with an error naming the day form. A snapshot emits a due date asYYYY-MM-DDT12:00:00Z.pages: nullnow means "site off". A repository that usedpages: nullover a fleet Pages block to opt out of the fleet's declaration has its live Pages site deleted on the next apply, andinteraction_limits: nullover a fleet limit clears the live limit the same way. The way to opt out of a fleet Pages block without disabling the site no longer exists.returned a body outside the documented shapenaming the endpoint and field, where before it flowed into the comparison or a section's own message; a reading section without snapshot() no longer compiles; the teams and custom_properties owner probe runs ahead of their own validation.<label>: left out of the snapshot - <reason>; the interaction_limits.expiry and repository toggle notes use the cannot-verify template; a personal account under teams or custom_properties reads one note (docs/upgrading/v2-to-v3.md section 13).parseConfig(read, env, capabilities)owns theprivate-report: artifactrefusal (input-artifact-unsupported);artifact-uploader-missingand the flows' uploader check are gone.executeRunreturnsRunEnd { exitCode, fatal? }andRunDepshas nodescribe;failRun(io, problem)takes no wording hook.validateSettingsDocandvalidateSettingstake aSectionSelectionwhere they took aReadonlySet<SectionKey>.parseSnapshotFileConfig(read, env, "settings-file")reads the destination itself;SettingsFileRolegainscentral-file. The action and the command line print one wording per problem; remedies name the input and its flag and say "re-run" without "the workflow"._layeringand_undeclared, where v2 dropped it as a private note; move notes into YAML comments.teamstakes the{_undeclared, entries}wrapper (defaultkeep): every run lists the repository's teams (repository Administration read) and notes undeclared direct grants,_undeclared: deleterevokes them, and snapshots write the wrapper form. The retry-timing knob is read fromGSAC_RETRY_BASE_MS;RETRY_BASE_MSis ignored.name; a ruleset without source_type is repository-owned, a repeated rule type a settings-file error; one wording per concept in drift lines and notes (docs/upgrading/v2-to-v3.md sections 11-15)../internalsubpath with no semver promise and 5 are renamed below.GithubApi,GithubApiOptions,GithubClientareGitHubApi,GitHubApiOptions,GitHubClient;MissingPermissionPolicyisOnMissingPermission.checkRepositoryandapplyRepositorytake(client, repo, settings, options?);RepoRunReportisCheckReportandApplyReport;SnapshotLibraryOptionsisSnapshotOptions.validateSettingsreturns{ settings, log }and takessectionsas aSectionSelection;mergeSettings(layers, options?)replaces the publicfoldLayers._undeclared; a settings file still writingundeclaredfails validation with an error naming the new key.Features
Bug Fixes
Documentation
Miscellaneous Chores
Code Refactoring
This PR was generated with Release Please. See documentation.