Changes for version v2.1.0 - 2026-11-10
- A pipeline goes wherever a stage goes, and the docs read plainly.
- A pipeline can go wherever a stage goes (roadmap 2026-0004), and the messages for a bad stage say so. The docs are rewritten in plainer, shorter sentences (roadmap 2026-0005), and the manuals link to Ekorn::Pipeline's by module name (roadmap 2026-0002). Every claim in the reference now has a test (roadmap 2026-0007), and the how-to is rebuilt to answer a newcomer's questions (roadmap 2026-0008).
- iterate, results, an iterator's reset, and Sugar's statements and functions take a pipeline among their stages. Before, they took only code references, and a pipeline there was taken for a bind value. Its stages run in its place, in the same run, so a take(2) inside it gives two results in all (roadmap 2026-0004).
- A gather block can return a pipeline as its stage.
- Error messages name a stage inside a pipeline by its place, such as #2.3 for the third stage of a pipeline given as the second.
- Sugar's message for something other than a stage after a statement's definition says what a stage is: "Expected only code references or pipelines after the statement for %s", not "Expected only stages after the statement for %s".
- Two of Ekorn::Pipeline's messages, which DBIx::Squirrel passes on, say a stage can be a pipeline, as of Ekorn::Pipeline v0.2.0: "Expected stage #%d to be a code reference or a pipeline", and "Expected stage #%s, made with gather, to return a code reference or a pipeline, and optionally an end function". Code matching the old wording needs updating.
- The README, the POD and the reference are rewritten in plainer, shorter sentences. What they say is unchanged, and so are their examples and DIAGNOSTICS entries (roadmap 2026-0005).
- The reference and the how-to, as POD manuals, link to Ekorn::Pipeline's manuals by module name, not to GitHub, so a reader on MetaCPAN or in perldoc stays there (roadmap 2026-0002).
- The reference says where a pipeline can be given, that a stage of your own can be one, and where a stage belongs. Each claim it makes has a test, in t/23-documented.t (roadmap 2026-0007).
- The how-to is rebuilt by task: it says who each part is for, and has a tested recipe for every topic in the reference, from transactions and handle classes of your own to moving from 1.x and writing stages for others (roadmap 2026-0008).
- Requires Ekorn::Pipeline v0.2.0 or later, below v0.3.0: v0.1.3 for is_stage and a pipeline among its stages, and v0.2.0 for the two messages' wording.
Documentation
DBIx::Squirrel how-to
DBIx::Squirrel reference
Modules
DBI, minus the boilerplate, plus a pipeline
what a stage can ask about the result it's making
report the DBI's errors at the caller's line
a stage made afresh for each run, told when the values run out
an iterator over a statement's results
run values through a list of stages
the pipe and tap methods of DBIx::Squirrel's handles
find the placeholders in a statement, and match values to them
the base class of the rows a result set hands out
an iterator handing out rows as objects
stages gathering values: batch and collect
stages taking or dropping values: take, drop, take_while and drop_while
stages reshaping rows: pluck and as_hash
stages run for their side effects: peek, count_into and dump_to
end a DBIx::Squirrel pipeline early
a function for each database, and each statement
helpers shared by DBIx::Squirrel's modules
DBIx::Squirrel's database handle class
DBIx::Squirrel's statement handle class