Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude/skills/release/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ Both act only on a head matching `^release/v([0-9]+\.[0-9]+\.[0-9]+)$` and pass
## Particulars

- **`main` is the default branch, and it moves between releases.** An address without a tag runs `main` at its head, so `main` is fast-forwarded to `dev` when a change should reach those callers before a tag does, and `origin/main..dev` can then be empty while work is still unreleased. What a release carries is everything since the last tag: in the play's step 1, read `git -C <main> log $(git -C <main> describe --tags --abbrev=0)..dev --oneline` rather than `origin/main..dev`. The release pull request still targets `main` and still merges with a merge commit, whether or not `main` had already caught up.
- **What counts as breaking.** The bump follows the play's pre-1.0 rule, read for a method library: a change that breaks a caller moving an address from the previous tag to this one is a **minor** — a package renamed or removed, an exported pipe renamed, removed or no longer exported, a `main_pipe` changed, or the inputs or output concept of an exported pipe changed. Everything else is a **patch**: a new package, a new pipe, a better prompt, a model moved to a deck alias, a sample fixed. `v0.1.1`, which added `text_stats`, was a patch.
- **What counts as breaking.** The bump follows the play's pre-1.0 rule, read for a method library: a change that breaks a caller moving an address from the previous tag to this one is a **minor** — a package renamed or removed, an exported pipe renamed, removed or no longer exported, a `main_pipe` changed, the inputs or output concept of an exported pipe changed, or a package that stops running on a Pipelex release the previous tag ran on. Everything else is a **patch**: a new package, a new pipe, a better prompt, a model moved to a deck alias, a sample fixed. `v0.1.1`, which added `text_stats`, was a patch.
- **The changelog entry speaks to a caller who pins a tag.** Name the package and the pipe or the sample, and say what running it at the new tag changes. When a change makes something stop resolving at older tags, such as a sample link that moved in `v0.1.2`, say so and name the tag to run instead. The headings carry the `v`, `## [vX.Y.Z] - YYYY-MM-DD`, which is what `changelog-check.yml` greps for and what `github-release.yml` slices the Release notes from.
- **No pre-release form.** Both pull-request checks skip a head like `release/v0.2.0-rc.1` rather than failing it, and `github-release.yml` tags whatever the manifests declare, so an `rc` would ship as a tag any address could pin. Ship a plain `X.Y.Z`, which is also the tag form the address grammar recommends.
- **The tags are annotated.** `v0.1.0` to `v0.1.2` were created by hand, each with a one-line summary as its message; from the release that first carries `github-release.yml`, the workflow creates them with the message `Library snapshot vX.Y.Z`. A lightweight `v0.0.1` also exists, on a commit after `v0.1.0`; `git describe --tags` from `dev` answers the nearest release tag and is not misled by it.
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Changelog

## [v0.2.0] - 2026-10-16

### Changed

- **`text_stats` names its function by import path (Breaking)**: the `PipeFunc` step `analyze_text` names its Python function `text_stats_funcs.text_stats_report`, its import path from the package's root, instead of `text_stats_report`, and the report it writes is unchanged. The package now runs only on Pipelex 0.87.0 or later, which names a `PipeFunc`'s function by import path and refuses a flat name, while Pipelex 0.86.1 and earlier refuse the new name as a function missing from their registry. On those older releases, run `text_stats` at `@v0.1.7` or earlier.

## [v0.1.7] - 2026-10-06

### Changed
Expand Down
2 changes: 1 addition & 1 deletion docs/releasing.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ The `v` prefix appears in branch names, changelog headings and tags, never in a

## What counts as breaking

The library is pre-1.0, so a breaking change is a **minor** and everything else a **patch**. A change is breaking when it breaks a caller who moves an address from the previous tag to the new one: a package renamed or removed, an exported pipe renamed, removed or no longer exported, a `main_pipe` changed, or the inputs or output concept of an exported pipe changed. A new package, a new pipe, a better prompt, a model moved to a deck alias or a fixed sample is a patch. Pre-release forms (`-rc.1`) are not used: a tag is something any address can pin.
The library is pre-1.0, so a breaking change is a **minor** and everything else a **patch**. A change is breaking when it breaks a caller who moves an address from the previous tag to the new one: a package renamed or removed, an exported pipe renamed, removed or no longer exported, a `main_pipe` changed, the inputs or output concept of an exported pipe changed, or a package that stops running on a Pipelex release the previous tag ran on. A new package, a new pipe, a better prompt, a model moved to a deck alias or a fixed sample is a patch. Pre-release forms (`-rc.1`) are not used: a tag is something any address can pin.

## Cutting a release

Expand Down
2 changes: 1 addition & 1 deletion methods/cv_analyzer/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "cv_analyzer"
display_name = "CV Analyzer"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "End-to-end candidate screening: extract a CV and a job offer, analyze the match, then either generate tailored interview questions or draft a courteous refusal email."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/doc_summarizer/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "doc_summarizer"
display_name = "Document Summarizer"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Deep document summarization: profile the document and extract importance-ranked key points in parallel, then synthesize a structured summary with themes and open questions."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/documents/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "documents"
display_name = "Documents"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Document extraction methods for text, images, and page views."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/image_card/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "image_card"
display_name = "Image Card"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Generate an image from a text description with a small, fast image model, and present the image and its description side by side in an HTML page."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/image_generation/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "image_generation"
display_name = "Image Generation"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Image generation methods: render a description directly, or refine it into an optimized image prompt first."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/image_generation_fast/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "image_generation_fast"
display_name = "Image Generation Fast"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Fast image generation: render a text description directly with a small image generation model."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/invoice_extraction/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "invoice_extraction"
display_name = "Invoice Extraction"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Extract structured invoice data from a document: classify each page as bill or receipt, then extract amounts, VAT, vendor and buyer details using both the OCR text and the page view."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/slide_designer/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "slide_designer"
display_name = "Slide Designer"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Turn a rough slide-deck brief into design proposals: polish the brief, generate multiple visual themes, render a mockup image for each, and compose an HTML report presenting them all."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/table_extraction/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "table_extraction"
display_name = "Table Extraction"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Extract a data table from a screenshot into faithful HTML, then review the result against the image to correct text and formatting."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/text_stats/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "text_stats"
display_name = "Text Stats"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Deterministic text statistics computed in pure Python: character, word, sentence and paragraph counts, vocabulary richness, most frequent words, and estimated reading and speaking times, reported as Markdown."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion methods/text_stats/text_stats.mthds
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ type = "PipeFunc"
description = "Compute deterministic statistics about the input text (counts, averages, top words, reading time) and format them as a Markdown report."
inputs = { text = "Text" }
output = "Text"
function_name = "text_stats_report"
function_name = "text_stats_funcs.text_stats_report"
2 changes: 1 addition & 1 deletion methods/tweet_optimizer/METHODS.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "tweet_optimizer"
display_name = "Tweet Optimizer"
address = "github.com/Pipelex/methods"
version = "0.1.7"
version = "0.2.0"
description = "Optimize a tech tweet: score the draft for fluffiness, cringiness, humblebragging and vagueness, then rewrite it in your own writing style following Twitter/X best practices."
authors = ["Evotis S.A.S"]
license = "MIT"
Expand Down
Loading