Skip to content

[RELEASE] v0.30.12 #624

Closed
Closed

Description

@ocots

Release of CTBase v0.30.12 (stable), prepared by an agent following ct-agents/recipes/release.md. Progress is in the comments below, one per phase.

Checklist

  • Version bumped in Project.toml
  • CHANGELOG.md / BREAKING.md up to date
  • CI, documentation and breakage checks are green
  • Resolves from General alone (REL4)
  • Release PR merged
  • GitHub release and tag created
  • Registered (General)

Activity

  1. ocots commented on Oct 19, 2026

    @ocots
    MemberAuthor

    Release proposal — CTBase v0.30.12 (stable)

    Version. Last release 0.30.11; last version in General 0.30.11. Since v0.30.11: fixes only. By REL1 (0.Y.Z: the breaking component is Y, a fix bumps Z) and REL2 (the triple must be above every one released: 0.30.11), the version is 0.30.12.
    Jump in General (REL3). None.
    Resolves from General alone (REL4). ✅ (10 environments).

    What changes since v0.30.11

    Decisions

    • Kind: stable, chosen by the maintainer.
    • Version: 0.30.12, as proposed.
    • Mode: autonomous: the agent merges with release.jl merge once release.jl ready says ready, and posts the registration comment without asking.

    What the agent will do

    1. Comment on this issue at every phase.
    2. Open the PR release/v0.30.12 (Project.toml, CHANGELOG.md, BREAKING.md) after the release gate passed locally; labels run ci github-runner, run breakage, run documentation, documentation push preview (no GPU job in CTBase).
    3. Merge with release.jl merge once release.jl ready says ready (what actually ran on the head commit: gate, breakage report, every job the release needs).
    4. Summarize the checks on this issue.
    5. Wait for the ReleaseTag workflow: tag v0.30.12 and GitHub release, notes since v0.30.11.
    6. Post the registration comment, once, and follow the General PR to its merge.
    7. Close this issue with a final comment.

    Every step starts from release.jl status: if anything interrupts the release, it is resumed from where the facts say it is.

    What the maintainer will do

    • Nothing, unless the agent stops; if main moves before the registration, the agent asks for a go.
  2. ocots commented on Oct 19, 2026

    @ocots
    MemberAuthor

    Phase 3 — Release PR #625.
    Done: opened #625 from release/v0.30.12 (166d1316937d847ff236af2b15590bbc7dd78602): Project.toml at 0.30.12, the [Unreleased] entries of CHANGELOG.md under ## [0.30.12] - 2026-10-19 with the missing fix #620 added, a non-breaking note in BREAKING.md; labels run ci github-runner, run breakage, run documentation, documentation push preview, added after creation.
    Decisions: no GPU label, CTBase has no GPU job.
    Check: release.jl gate --base origin/main locally → ✅ ready, 12 checks.
    Next: phase 4, the checks of the PR; the agent waits for them, then runs release.jl ready.

  3. ocots commented on Oct 19, 2026

    @ocots
    MemberAuthor

    Phase 4 — Checks of #625.

    Merge check — #625: ✅ ready

    Head commit 166d1316937d847ff236af2b15590bbc7dd78602, branch release/v0.30.12.

    • ✅ up to date with main
    • ✅ AddToProject.yml, run 39246338125: 1 job(s) passed
    • ✅ AutoAssign.yml, run 39246338076: 1 job(s) passed
    • ✅ Breakage.yml, run 39246345468: 13 job(s) passed
    • ✅ CI.yml, run 39246339875: 11 job(s) passed
    • ✅ Documentation.yml, run 39246355518: 1 job(s) passed
    • ✅ ReleaseGate.yml, run 39246355640: 1 job(s) passed
    • ✅ SpellCheck.yml, run 39246338102: 1 job(s) passed

    [exited with code 0]

    Breakage: #625 (comment) — release check REL1 ✅: no downstream release broken by 0.30.11 → 0.30.12; CTParser and OptimalControl already fail on the base (CTParser#342, OptimalControl#996).
    Documentation preview: https://control-toolbox.org/CTBase.jl/previews/PR625/
    Next: phase 5, release.jl merge --confirm (autonomous).

  4. ocots commented on Oct 19, 2026

    @ocots
    MemberAuthor

    Phase 5 — Merge.
    Done: #625 merged by release.jl merge --confirm at the head commit it checked (166d131); merge commit 9d0b5103e2f9ac5aecdc77d1ace47d1fde2f1f42.
    Decisions: none.
    Check: release.jl ready → ✅ ready, the same lines as phase 4.
    Next: phase 6, the ReleaseTag workflow tags v0.30.12 and creates the GitHub release; the agent waits for it.

  5. ocots commented on Oct 19, 2026

    @ocots
    MemberAuthor

    Phase 6 — Tag and GitHub release.
    Done: the ReleaseTag workflow tagged v0.30.12 on the merge commit 9d0b510 and created the GitHub release https://github.com/control-toolbox/CTBase.jl/releases/tag/v0.30.12 (notes since v0.30.11); it dispatched the documentation workflow on the tag.
    Decisions: none.
    Check: release.jl status --version 0.30.12 → phase 7, todo: tag on the merge commit, release present, main still at the merge commit, no registration comment yet.
    Next: phase 7, the registration comment, posted once by release.jl register.

  6. ocots commented on Oct 19, 2026

    @ocots
    MemberAuthor

    @JuliaRegistrator register

    Release notes:

    🐛 Bug Fixes

    • DevTools.test_extensions_quality no longer throws on a package that defines a Union
      alias: _owned_symbols skips the alias, whose members are collected on their own
      (#619,
      #620).

    📚 Documentation

    • ct-conventions pinned at v0.7.0 in AGENTS.md: the release rules REL1–REL7 in the
      index, and a Recurring tasks section pointing to the release recipe of ct-agents.

    🧪 Testing

    • Release workflows: ReleaseGate.yml (the gate of a release PR, REL1–REL7) and
      ReleaseTag.yml (tag and GitHub release of a merged release PR) call CTActions;
      Breakage.yml moves to breakage-suite.yml (one report, the REL1 check of a release
      PR) and also runs on push to main; Documentation.yml accepts workflow_dispatch.

    ✅ Compatibility

    • No breaking changes: a bug fix, documentation and CI only. See
      BREAKING.md.

    What's Changed

    Full Changelog: v0.30.11...v0.30.12

  7. JuliaRegistrator commented on Oct 19, 2026

    @JuliaRegistrator

    Registration pull request created: JuliaRegistries/General/172466

    Tagging

    After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.

    This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:

    git tag -a v0.30.12 -m "<description of version>" 9d0b5103e2f9ac5aecdc77d1ace47d1fde2f1f42
    git push origin v0.30.12
    
  8. ocots commented on Oct 19, 2026

    @ocots
    MemberAuthor

    Phase 7 — Registration.
    Done: the registration comment was posted once by release.jl register --post; the bot opened General's PR JuliaRegistries/General#172466, merged by AutoMerge at 2026-10-19 12:31 UTC.
    Decisions: none (no jump, no [merge approved]).
    Check: release.jl status --version 0.30.12 → phase 8, todo: one registration mention, General holds 0.30.12 with tree 7815d20, the tree of the tag.
    Next: phase 8, once the documentation of the tag is deployed: the final comment, the issue closed, the release branch deleted.

  9. ocots commented on Oct 19, 2026

    @ocots
    MemberAuthor

    Phase 8 — CTBase v0.30.12 is released.

    Left as is: CTParser and OptimalControl fail in the breakage report, on the base too (CTParser#342, OptimalControl#996); not caused by this release.
    Follow-ups: none; the dependents already admit 0.30, so no [compat] bump is needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

releaseRelease preparation

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions