Skip to content

Update gobl.fr.ctc to v0.0.16, gobl.ubl to v0.97.0 and gobl.cii to v0.79.0 - #71

Open
alvarolivie wants to merge 4 commits into
mainfrom
bump-gobl-fr-ctc
Open

alvarolivie wants to merge 4 commits into
mainfrom
bump-gobl-fr-ctc

Conversation

@alvarolivie

@alvarolivie alvarolivie commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor
Module From To
gobl.fr.ctc v0.0.12 v0.0.16
gobl.ubl v0.93.0 v0.97.0
gobl.cii v0.75.0 v0.79.0
xmlctx (indirect) v0.13.0 v0.14.0

gobl.fr.ctc v0.0.13:

  • flow2 and flow6 check 0224 private ids and 0225 addresses against the v1.4 charset (+ - _ .)
  • flow2 gives each BR-FR-CO-10 failure its own rule (03, 04), retiring 02
  • flow2 rule 48: both period dates on a global credit note
  • S3 billing mode
  • CDV: the reason description comes from both the label (MDT-114) and the note (MDT-126)
  • French document types restored on import, in UBL and CII
  • B2G contract type (EXT-FR-FE-01) as untdid-reference GC / CT

gobl.fr.ctc v0.0.14 keys the Factur-X formats as French CTC profiles: cii+fr-ctc-facturx-cius-v1 (export only) and cii+fr-ctc-facturx-extended-v1, both on the fr-ctc addon. cii+fr-facturx-v1, +basic and +extended are gone. In the editor:

  • The fr-facturx example is removed. Its fr-facturx-v1 addon no longer selects any Factur-X format, so it only offered what fr-en16931 does. The fr-ctc example now offers both Factur-X profiles.
  • The format tests use the new keys, and the README lists them.

gobl.fr.ctc v0.0.15:

  • BR-FR-CDV-08 (flow6 rule 28, now last in the status rules) checks the parties' iso6523-actorid-upis endpoints; inboxes are normalized into endpoints first, and WK/DFH parties are skipped
  • A 211 payment advice may carry a zero amount, or none
  • CI runs the schematron suite against phorm 2.2.11

gobl.fr.ctc v0.0.16:

  • The Factur-X EXTENDED guideline, shared with ZUGFeRD 2.1+ EXTENDED, only imports as French CTC with a French billing mode in BT-23; otherwise it imports as plain EN 16931. Since v0.0.14 those invoices, German ones included, came in with the flow 2 addon.
  • Plain Factur-X EN 16931 (cii+fr-facturx-v1) and EXTENDED (cii+fr-facturx-v1+extended) come back as export-only formats with only the EN 16931 addon.

gobl.ubl and gobl.cii also bring documents read in their declared encoding (ISO-8859-1, windows-1252, UTF-16), BT-110 picked by invoice currency, and the 386 / 393 / 396 type codes.

go test ./... and lint pass on Go 1.26.1. On Go 1.27, three cmd/gobl tests fail on main too, because the wording of an encoding/json error changed.

🤖 Generated with Claude Code

….79.0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@codecov-commenter

codecov-commenter commented Oct 22, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 65.83%. Comparing base (bda0e2f) to head (f61dc14).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #71   +/-   ##
=======================================
  Coverage   65.83%   65.83%           
=======================================
  Files          53       53           
  Lines        2710     2710           
=======================================
  Hits         1784     1784           
+ Misses        820      819    -1     
- Partials      106      107    +1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@alvarolivie
alvarolivie requested review from cavalle and rilla October 22, 2026 15:07
The fr-facturx example only matched the EN 16931 formats once the Factur-X
formats moved to the fr-ctc addon, which the fr-ctc example already covers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@alvarolivie alvarolivie changed the title Update gobl.fr.ctc to v0.0.13, gobl.ubl to v0.97.0 and gobl.cii to v0.79.0 Update gobl.fr.ctc to v0.0.14, gobl.ubl to v0.97.0 and gobl.cii to v0.79.0 Oct 22, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@alvarolivie alvarolivie changed the title Update gobl.fr.ctc to v0.0.14, gobl.ubl to v0.97.0 and gobl.cii to v0.79.0 Update gobl.fr.ctc to v0.0.15, gobl.ubl to v0.97.0 and gobl.cii to v0.79.0 Oct 22, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@alvarolivie alvarolivie changed the title Update gobl.fr.ctc to v0.0.15, gobl.ubl to v0.97.0 and gobl.cii to v0.79.0 Update gobl.fr.ctc to v0.0.16, gobl.ubl to v0.97.0 and gobl.cii to v0.79.0 Oct 23, 2026
Copilot AI lite review requested due to automatic review settings October 23, 2026 16:44

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

README.md omits the two supported export-only Factur-X formats.

1 open issue
What changed in this PR

Updates the GOBL converter dependencies and editor metadata for the latest French CTC, UBL, and CII format behavior.

Changes:

  • Upgrades gobl.fr.ctc, gobl.ubl, gobl.cii, and indirect xmlctx dependencies.
  • Updates editor format expectations and example preferences.
  • Removes the obsolete fr-facturx example.
  • Refreshes the documented French CTC formats.
File Summary
README.md Updates the documented French CTC format keys; the export-only Factur-X formats are not listed.
go.sum Refreshes dependency checksums.
go.mod Bumps the converter and XML context dependencies.
editor/​formats_test.go Updates the expected French CTC Factur-X label.
editor/​examples/​fr-facturx.json Removes the obsolete generic Factur-X example.
editor/​examples_test.go Updates French example preferences and import expectations.

Review effort: Lite

Comment thread README.md
| [gobl.de.xinvoice](https://github.com/invopop/gobl.de.xinvoice) | `ubl+de-xrechnung-v3`, `cii+de-xrechnung-v3`, `cii+de-zugferd-v2` (`+basic`, `+extended`) |
| [gobl.es.facturae](https://github.com/invopop/gobl.es.facturae) | `es-facturae-v3` |
| [gobl.fr.ctc](https://github.com/invopop/gobl.fr.ctc) | `ubl+fr-ctc-cius-v1`, `ubl+fr-ctc-extended-v1`, `cii+fr-ctc-cius-v1`, `cii+fr-ctc-extended-v1`, `cii+fr-ctc-facturx-v1`, `cii+fr-facturx-v1` (`+basic`, `+extended`), `cii+fr-choruspro-v1`, `cdar+fr-ctc-cdv-v1` (`+ppf`) |
| [gobl.fr.ctc](https://github.com/invopop/gobl.fr.ctc) | `ubl+fr-ctc-cius-v1`, `ubl+fr-ctc-extended-v1`, `cii+fr-ctc-cius-v1`, `cii+fr-ctc-extended-v1`, `cii+fr-ctc-facturx-cius-v1`, `cii+fr-ctc-facturx-extended-v1`, `cii+fr-choruspro-v1`, `cdar+fr-ctc-cdv-v1` (`+ppf`) |
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.

4 participants