Skip to content

comline release 1.0, and raising a bump with a reason #82

Open

Description

@Kinflou

CLI half of ComlineProject/core#122. Proposed; nothing implemented.

  • comline release 1.0 (name open): moves a 0.x package to 1.0.0, after explaining what that commits to:

    • from now on a breaking change is a major bump, and peers and consumers rely on that;
    • what the package exposes, in summary: protocols, the formats and framings it speaks, and any guarantees it gives up;
    • anything worth settling first, such as deprecated declarations or guarantees given up. These are listed for information only, not as requirements.

    It asks for confirmation interactively, and needs an explicit flag in CI.

  • Raising a bump (say comline build --bump major --reason "…"): never below the computed bump. A reason is required. Raising to major asks for confirmation interactively and needs the flag in CI. The reason shows in comline diff and history.

  • Showing the reasons: build and diff print why the computed bump is what it is (pairs with diff/build: change-reporting gaps #80).

Activity

  1. Kinflou commented on Oct 19, 2026

    @Kinflou
    MemberAuthor

    One more job for comline release 1.0 (core#127, ComlineProject/docs#59): for a package whose framings address calls by position (datagram), it assigns @id to every function, writes them into the source, and switches protocol.function.ids.assign to write, so calls can't be re-addressed by reordering after 1.0. It should list the ids it wrote.

  2. Kinflou commented on Oct 20, 2026

    @Kinflou
    MemberAuthor

    Widened 2026-10-20 (core#122, ComlineProject/docs#64): comline release is the general release command, not only 1.0. It creates the version from the highest bump computed since the last release; --raise <level> --reason and --lower <level> --reason (the latter gives up version honesty, @unverified). Builds carry pre-release versions in between.

  3. Kinflou commented on Oct 20, 2026

    @Kinflou
    MemberAuthor

    Built in #90 (core#133, docs#71): comline release, comline release 1.0 (it explains what 1.0 commits to, lists the protocols with their handshakes, the given-up guarantees and the deprecated declarations, then asks; without a terminal it needs --yes), and --raise patch|minor|major --reason …. comline build now prints the next release it leads to.

    Still open: requiring @id before 1.0 waits on core#127.

  4. added
    1.0-blockerMust be done before the 1.0 announcement (docs conduct/readiness.md)
    on Oct 31, 2026
  5. added this to the 1.0 milestone on Oct 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    1.0-blockerMust be done before the 1.0 announcement (docs conduct/readiness.md)enhancementNew feature or requestlaterParkedtoolingCLI, language server, editor

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions