Releases 2.10.0 - #355
Merged
Merged
Releases 2.10.0#355
Conversation
docs/upgrading.md now runs from 2.5 to 2.10.0, and the README
sentence that points at it names the same range.
- 2.9.0: must change NONE (MachineState.last_selection is not in a
position blob); may start Statifier.Publish.findings/2 and read
last_selection. The page carried a section per release from 2.6.0
on, so 2.9.0 gets one to keep it continuous.
- 2.10.0: must change NONE (a session that registers no send type
sees nothing new, and ~> 2.9 already accepts 2.10.0); may start
the Basic HTTP Event I/O Processor under both type strings, the
front around decode/1, the scxml-send-key header a front dedupes
on, and the {module, opts} registration with the optional
ioprocessors_entry/2. It links docs/basichttp.md.
A commit of its own, ahead of the release commit: the release
extension names the only files a release commit touches.
Refs: st-p2a2
Assembles the fragments for the Basic HTTP Event I/O Processor, its
dedup key header, the {module, opts} send type registration, the
test_scxml/5 option and the corpus claims into a 2.10.0 section and
deletes them, and moves the README requirement to ~> 2.10. The lead
paragraph says a session that registers nothing sees nothing new and
that a sibling implementation re-vendors the corpus at this tag.
ADR-0066's SemVer commitment makes this a minor release. The public
surface only grows: a new module, Statifier.Send.BasicHTTP, with its
Transport behaviour and the Httpc adapter; a new optional callback,
Statifier.Send.Processor.ioprocessors_entry/2, with its entry_context
type; a :send_types value may be {module, opts} beside the bare module
it already accepted, with a registration type; the
Statifier.Send.Types struct gains a processors field; and
test_scxml/5 takes a :send_types option. No existing function changes
what it answers for an input it accepted in 2.9.0: a bare-module
registration plans, records and writes _ioprocessors as before, and a
session that registers nothing is unchanged. The case schema's host
object gains event_io_processors, a new member of a closed set, and a
w3c case may now carry that one host key: a closed-set
growth. mix.exs's dependencies are unchanged; the
processor's default transport is OTP's :httpc.
Committed on the staged tree the full mix quality and mix quality
--profile merge ran green on (write-tree 62cbefe before the commit).
Prep only: the tag and the Hex publish are not part of this commit.
Refs: st-p2a2
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.
The statifier 2.10.0 release prep: two commits.
docs/upgrading.mdnow runs from 2.5 to 2.10.0 (title and intro range), with a## 2.9.0section and a## 2.10.0section in the page's "must change / may start" shape. Both "must change" lines are NONE. The page carried one section per release from 2.6.0 on, so 2.9.0 gets its own NONE section to keep it continuous. The 2.10.0 section names the Basic HTTP Event I/O Processor under both type strings (requires~> 2.10), the front arounddecode/1, thescxml-send-keyheader a front dedupes on, and the{module, opts}registration with the optionalioprocessors_entry/2, and linksdocs/basichttp.md. It is a commit of its own because.claude/wurk/release.mdnames the only files a release commit touches.@versionto 2.10.0, thechangelog.d/st-gje8.mdandchangelog.d/st-8kn8.mdfragments promoted byte for byte under## [2.10.0] 2026-09-30with a lead paragraph and deleted, the README install pin moved from~> 2.9to~> 2.10. It touches exactlymix.exs,README.md,CHANGELOG.mdand the deleted fragments, the set the release extension lists (the 2.9.0 prepf2365bbis the shape reference).Why a minor
The public surface only grows (the commit body says it in full):
Statifier.Send.BasicHTTP(lib/statifier/send/basic_http.ex), theStatifier.Send.BasicHTTP.Transportbehaviour and itsTransport.Httpcdefault.Statifier.Send.Processor.ioprocessors_entry/2, with itsentry_contexttype (lib/statifier/send/processor.ex); a processor that implements only/1is asked as before.:send_typesvalue may be{module, opts}beside the bare module it already accepted (Statifier.Send.Types.registration/0); a bare module plans, records and writes_ioprocessorsas before (Statifier.Session.Effectsprocessor_for/2,Statifier.Session.Recordingregistration_names/1).%Statifier.Send.Types{}gains aprocessorsfield, defaulting to%{}; the existingtypesandentriesfields are unchanged.Statifier.Testing.Case.test_scxml/5takes a:send_typesoption; a call without it starts its session as before.hostobject gainsevent_io_processors(conformance/schema/case.json), and a w3c case may now carry that onehostkey: a new member of a closed set.No removed function, narrowed union or changed return was found in the
lib/diff sincev2.9.0or in either promoted fragment. The dependencies inmix.exsare unchanged: the processor's default transport is OTP's:httpc.Provenance
CHANGELOG.mdheader's link tochangelog.d/README.mdstays pinned atv2.9.0: that pin was set outside a release prep, the file there is unchanged, and the release extension moves no link.Gate
The full
mix quality, run on the staged tree of the release commit (both commits applied), quoted whole:mix quality --profile mergeon the same tree: all stages passed; the ADR judge skipped because no file in the diff is in a judged ADR scope. The release commit is a bare commit on that byte-identical staged tree (git write-treebefore and after both runs), with the repo gate lock and one machine slot held throughout.This PR bumps the version only. The tag follows the merge and the Hex publish stays the operator's.