Skip to content

Add 0.2.0 to 0.2.1 update script and adopt stable - #8

Merged
jnasbyupgrade merged 2 commits into
masterfrom
stable-and-0.2.0-update
Oct 26, 2026
Merged

jnasbyupgrade merged 2 commits into
masterfrom
stable-and-0.2.0-update

Conversation

@jnasbyupgrade

Copy link
Copy Markdown
Contributor

Adds the missing 0.2.0--0.2.1 update script so a 0.2.0 install can ALTER EXTENSION trunklet UPDATE through the whole chain, and adopts the stable pseudo-version (default_version = 'stable') between releases.

Fixes #7

The update script creates _trunklet.template__get(template_id, ...), process(template_id, ...) and the execute_into*/execute_text* families, and replaces process_language() and the process(name, version, ...) function with their 0.2.1 bodies. The anyarray overloads of process()/process_language() are commented out in the 0.2.0 install script, so there is nothing to drop; nothing in trunklet-format 0.2.0 depends on them (it calls process_language() with jsonb).

Two commits: the first adopts stable (control file, no-op 0.3.3--stable placeholder, HISTORY.asc STABLE section; sql/trunklet--stable.sql stays generated and gitignored), the second adds the update script, the committed trunklet--0.2.0.sql and trunklet--0.2.1.sql (byte-identical to upstream/0.2.0 and upstream/0.2.1 sql/trunklet.sql), and test/sql/update.sql, which installs 0.2.0 with a stored language and template, updates to stable, and checks the template still processes and the 0.2.1 functions exist. make verify-results passes on PG12 and PG17; with the update script gutted the new test fails.

Verified separately on PG12 and PG17 by comparing ALTER EXTENSION UPDATE results against fresh installs: 0.2.0 updated to 0.2.1 has identical extension member objects (ACLs, function bodies) and pg_dump -s output to a fresh 0.2.1 install, and the stored language and template survive. 0.2.0 updated to stable has identical pg_dump -s output to a fresh stable install, with one pre-existing difference unrelated to this PR: the update chain leaves _trunklet.language__get(varchar) without a RAISE DEBUG line that a fresh 0.3.3 install has (the same result when starting from 0.2.1).

jnasbyupgrade and others added 2 commits October 25, 2026 15:31
Set `default_version = 'stable'` in `trunklet.control` and add the
`0.3.3--stable` no-op update script placeholder, so a fresh checkout is
always ready to cut the next release. `sql/trunklet--stable.sql` stays
generated and gitignored.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Without a `0.2.0--0.2.1` script, `ALTER EXTENSION trunklet UPDATE` had no
path from 0.2.0 to any later version. The script creates
`_trunklet.template__get(template_id, ...)`, `process(template_id, ...)`
and the `execute_into*`/`execute_text*` families, and replaces
`process_language()` and `process()` with their 0.2.1 bodies.

Commit the shipped 0.2.0 and 0.2.1 install scripts so the path can be
tested, and add `test/sql/update.sql`, which installs 0.2.0 with a stored
language and template and updates to `stable`.

Fixes #7

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 7ecccf88-feb5-4903-aa68-cd2ed9533eeb

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@jnasbyupgrade
jnasbyupgrade marked this pull request as ready for review October 26, 2026 20:45
@jnasbyupgrade
jnasbyupgrade merged commit cf25b79 into master Oct 26, 2026
14 checks passed
@jnasbyupgrade
jnasbyupgrade deleted the stable-and-0.2.0-update branch October 26, 2026 20:45
jnasbyupgrade added a commit that referenced this pull request Oct 26, 2026
Adds the missing `0.2.0--0.2.1` update script so a 0.2.0 install can
`ALTER EXTENSION trunklet UPDATE` through the whole chain, and adopts
the `stable` pseudo-version (`default_version = 'stable'`) between
releases.

Fixes #7

The `0.3.3--stable` script also restores the `RAISE DEBUG` line in
`_trunklet.language__get(varchar)` that updates from 0.2.x lacked.
jnasbyupgrade added a commit that referenced this pull request Oct 26, 2026
Adds the missing `0.2.0--0.2.1` update script so a 0.2.0 install can
`ALTER EXTENSION trunklet UPDATE` through the whole chain, and adopts
the `stable` pseudo-version (`default_version = 'stable'`) between
releases.

The 0.3.2--0.3.3 update script now also carries the
`language__get()` debug message that a fresh 0.3.3 install has, and
`test/sql/update.sql` compares updated installs against a fresh one.

Fixes #7
jnasbyupgrade added a commit that referenced this pull request Oct 26, 2026
Adds the missing `0.2.0--0.2.1` update script so a 0.2.0 install can
`ALTER EXTENSION trunklet UPDATE` through the whole chain, and adopts
the `stable` pseudo-version (`default_version = 'stable'`) between
releases.

The `language__get()` debug message that a fresh 0.3.3 install has is
now added by `0.3.3--stable` (for installs already at 0.3.3) and
retroactively by the released `0.3.2--0.3.3` update script, and
`test/sql/update.sql` compares updated installs against a fresh one.

Fixes #7
jnasbyupgrade added a commit that referenced this pull request Oct 27, 2026
Adds the missing `0.2.0--0.2.1` update script so a 0.2.0 install can
`ALTER EXTENSION trunklet UPDATE` through the whole chain, and adopts
the `stable` pseudo-version (`default_version = 'stable'`) between
releases.

The `language__get()` debug message that a fresh 0.3.3 install has is
now added by `0.3.3--stable` (for installs already at 0.3.3) and
retroactively by the released `0.3.2--0.3.3` update script.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

No update path from trunklet 0.2.0 (or 0.2.1) to later versions

1 participant