Skip to content

chore(deps): bump miniz_oxide from 0.8.9 to 0.9.1 - #14

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/miniz_oxide-0.9.1
Open

chore(deps): bump miniz_oxide from 0.8.9 to 0.9.1#14
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/miniz_oxide-0.9.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 13, 2026

Copy link
Copy Markdown

Bumps miniz_oxide from 0.8.9 to 0.9.1.

Changelog

Sourced from miniz_oxide's changelog.

0.9.1 - 2026-03-13

Bug Fixes

  • reject incomplete Huffman trees with max code length > 1 (#190) - (c40992a) - Lilith River
  • bump simd_adler32 dependency version (needed for wasm issue fix) - (a9b3756) - oyvindln

Other

  • add wasmtime to workflow for running tests with wasip1 - (f70ad10) - oyvindln
  • box LZOxide.codes on wasm32 to reduce stack allocation (#189) - (d0f3e0c) - Fabrício Bracht

0.9.0 - 2026-01-12

Version bump due to a minor API break for having to add enum variants. Many enums have been made non_exhaustive to make it easier to avoid API breaks in the future. The minimum rust version is now 1.60.

Bug Fixes

  • (deflate) simplify stored compression, fixes to updating compresson level after start - (c5a7662) - oyvindln
  • (deflate) make more stuff non_exhaustive, reduce deflate stack usage a tiny bit - (cd2d14f) - oyvindln
  • (miniz_oxide) make tdeflflush and compressionstrategy non exhaustive - (130d51d) - oyvindln
  • fix flush test, make new simpler init function for compressoroxide and make flag creation function const - (3bb0d51) - oyvindln
  • make more funtions const and make tinflstatus non_exhaustive - (84a94e8) - oyvindln

Documentation

  • (inflate) add documentation and doctest for decompress_slice_iter_to_slice - (97465ca) - oyvindln

Features

  • feat(deflate): add window_bits feature for deflate, don't set wbits - (e70e395) - oyvindln

Other

  • Implement support for partial flushes (#179) - (2ede365) - Jonathan Behrens
  • Add decompress_with_limit to handle ring buffers (#183) - (bac1abe) - peckpeck
  • Flush improvements (#185) - (0d276ac) - Jim Peters
  • Fix flush_block to always insert zlib header correctly (#187) - (414d9b8) - Jim Peters

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [miniz_oxide](https://github.com/Frommi/miniz_oxide) from 0.8.9 to 0.9.1.
- [Changelog](https://github.com/Frommi/miniz_oxide/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Frommi/miniz_oxide/commits)

---
updated-dependencies:
- dependency-name: miniz_oxide
  dependency-version: 0.9.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github

dependabot Bot commented on behalf of github Aug 13, 2026

Copy link
Copy Markdown
Author

Labels

The following labels could not be found: dependencies, rust. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

zacharywhitley pushed a commit that referenced this pull request Aug 13, 2026
…BreakSectionBuilder

Adds the UAX #14 line-break capability to the shared SCUD loader in
preparation for the standalone `stringcheese-icu-linebreak` crate.

New wire surface:
- `CAP_LINEBREAK` = b"LBRK" capability tag
- `SECT_LB_CLASSES` (per-scalar Line_Break property, same wire layout
  as `SECT_GRAPHEME_CLASSES`)
- `SECT_LB_RULES` (rules-id marker byte)
- `SECT_LB_TAILORINGS` (CJK strictness byte per UAX #14 § 6.1)
- 43-value `LineBreakClass` enum covering the full UAX #14 class set
  (OP / CL / CP / QU / GL / NS / EX / SY / IS / PR / PO / NU / AL /
  HL / ID / IN / HY / BA / BB / B2 / ZW / CM / WJ / H2 / H3 / JL /
  JV / JT / RI / EB / EM / ZWJ / CJ / SG / AI / CB / BK / CR / LF /
  NL / SP / SA + XX default)
- `RULES_UAX14_DEFAULT` well-known rules-id constant
- `LB_STRICTNESS_{LOOSE,NORMAL,STRICT}` strictness-tag constants
- `LineBreakDataView` zero-copy view with binary-search class lookup
- `LineBreakSectionBuilder` writer
- `ScudFile::as_linebreak_data()` capability-projection accessor

4 new unit tests exercise pack round-trip, empty-pack defaults,
class-enum round-trip, and capability-mismatch guard.
zacharywhitley pushed a commit that referenced this pull request Aug 13, 2026
…18n-linebreak WIT

Introduces `stringcheese-icu-linebreak`, the standalone Rust algorithm
crate for Unicode line breaking per UAX #14, and its WIT contract at
`component/wit/linebreak/stringcheese-icu-linebreak.wit`
(`tegmentum:i18n-linebreak@0.1.0`).

Closes the "UAX #14 deferred to separate crate" note from Phase 5
(docs/design/wit-i18n.md § 8.5) — split from the segment crate
because the LB rule set is much larger than UAX #29's grapheme /
word / sentence tables.

Algorithm crate:
- `LineBreakEngine` with optional per-locale `LineBreakPack`; the
  pack's class section overrides the built-in classifier when
  populated. Empty pack falls through to `classes::line_break_class`.
- Full UAX #14 rule set implemented rule-by-rule in `pair_decision`:
  LB1 class resolution (AI/CJ/SA/SG/XX folds, strictness-sensitive
  for CJ), LB2/LB3 sot/eot, LB4/LB5 mandatory breaks (BK/CR/LF/NL
  with CR × LF pairing), LB6-LB31 pair-table rules including LB9
  CM/ZWJ fold-into-preceding-class, LB25 numeric-expression run
  tracking, LB26/LB27 Hangul syllable composition, LB30a RI-pair
  parity, LB30b EB × EM.
- `Strictness::Loose / Normal / Strict` enum + engine setter driving
  the CJK strictness tailoring per UAX #14 § 6.1.
- `BreakOpportunity { offset, kind }` records with `BreakKind::
  Mandatory | Allowed` — layout engines can distinguish LB4/LB5
  mandatory breaks from discretionary opportunities.

WIT contract:
- `find-breaks(text)` and `find-breaks-with-strictness(text, strictness)`
  return `list<break-opportunity>` in strictly-increasing offset order.
- `line-break-strictness` enum for the CJK tailoring.
- `break-kind` variant for mandatory vs allowed classification.
- `capabilities.supported-locales` / `capabilities.supports` — Phase 5
  ships root-only, returns true for every input for forward-compat.

Test coverage:
- 53 unit tests grouped by numbered rule (one section per LB rule).
- 3 wit-parser smoke tests (`tests/wit_parse.rs`) — WIT package name,
  world declaration, interface enumeration.
- 111 hand-picked LineBreakTest.txt vectors (`tests/uax14_vectors.rs`)
  running in superset mode — every enumerated break must appear;
  extra breaks tolerated so future classifier growth doesn't regress.
  Pass rate: 111/111.

No external deps beyond stringcheese-scud + std/alloc — the wasm
component stays lean. `#![forbid(unsafe_code)]` on the algorithm crate.
zacharywhitley pushed a commit that referenced this pull request Aug 13, 2026
…18n-linebreak

Reference WebAssembly Component-Model packaging of the UAX #14
line-break capability. Mirrors the `stringcheese-icu-segment-component`
template: dual `cdylib` + `rlib`, `wit-component` feature gate on
`wit-bindgen-rt` 0.44, pre-generated `src/bindings.rs` from
`wit-bindgen rust --runtime-path wit_bindgen_rt`, `AtomicPtr`-backed
`shared_engine()` singleton, in-process `wasmtime::component::bindgen!`
smoke tests.

Like the segment component, the linebreak component embeds NO SCUD
packs — the reference engine is `LineBreakEngine::new()`, running
pure-algorithm-driven UAX #14 rules from the built-in classification
table. Locale-specific tailorings (CJK dictionaries, Thai / Lao /
Khmer syllable segmentation, CSS `line-break` beyond CJK strictness)
are Phase 5 deferrals documented in the crate docs.

WIT-exports:
- `linebreak.find-breaks(text) -> list<break-opportunity>`
- `linebreak.find-breaks-with-strictness(text, strictness) -> list<...>`
- `capabilities.supported-locales() -> list<locale>` (returns [""])
- `capabilities.supports(loc) -> bool` (returns true for every input)

Smoke tests:
- 10 wasmtime tests cover CRLF single mandatory, LF alone, NEL,
  soft break after space, soft break after hyphen, no-break within
  numeric run, empty input, all three strictness variants, both
  capabilities exports.
- 5 native (non-wasm) unit tests inside `src/lib.rs` verify wit-parser
  gate + reference-engine sanity.

Measured sizes (aarch64 macOS, --release, wasmtime 26 / wasm-tools
1.219): raw module 56 739 B, componentised 79 193 B.
zacharywhitley pushed a commit that referenced this pull request Aug 13, 2026
…t jobs + design note

Adds two new CI jobs mirroring the segment-crate template:

- wasm-i18n-linebreak — native unit test job (52 UAX #14 rule tests +
  wit-parser gate + 111 hand-picked LineBreakTest.txt vectors).
- wasm-i18n-linebreak-component — wasm32-wasip1 build + wasm-tools
  componentise (with raw / wasm-opt -Oz size reporting) + wasmtime
  smoke test (10 tests via wasmtime::component::bindgen! typed
  bindings against the shipped WIT).

Adds `stringcheese-icu-linebreak-component` to the wasm-runtime
job's `--exclude` list for the same duplicate-export-symbol reason
the other icu-*-component crates are excluded.

Adds § 8.7 "Phase 5 follow-up — UAX #14 line breaking" to
`docs/design/wit-i18n.md`, cross-referencing § 8.5's UAX #14
deferral. Covers landed scope (SCUD extension, algorithm crate, WIT,
component wrapper, CI), measured wasm sizes, rules fully vs
approximated, red flags (LB25 numeric-expression simplification,
LB30 East-Asian-Width interaction, LB9 CM/ZWJ state-tracked fold,
mandatory-break queue), and deferred items (CJK dictionaries, CSS
line-break beyond CJK strictness, bidi-aware line breaking,
line-height / width-aware selection).
zacharywhitley pushed a commit that referenced this pull request Aug 13, 2026
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.

0 participants