Skip to content

chore: release v0.3.0 - #20

Merged
scbrown merged 1 commit into
mainfrom
release-plz-2026-09-26T04-53-57Z
Oct 7, 2026
Merged

scbrown merged 1 commit into
mainfrom
release-plz-2026-09-26T04-53-57Z

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 26, 2026 •

Copy link
Copy Markdown
Contributor

🤖 New release

  • pixelsrc: 0.2.0 -> 0.3.0 (⚠ API breaking changes)

⚠ pixelsrc breaking changes

--- failure constructible_struct_adds_field: struct exhaustively constructible through public API adds field ---

Description:
A pub struct that could be exhaustively constructed with a literal using only public API has a new pub field, breaking existing exhaustive literals.
        ref: https://doc.rust-lang.org/reference/expressions/struct-expr.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/constructible_struct_adds_field.ron

Failed in:
  field ImportResult.regions in /tmp/.tmpdQW36U/pixelsrc/src/import/mod.rs:178
  field ImportResult.structured_regions in /tmp/.tmpdQW36U/pixelsrc/src/import/mod.rs:180
  field ImportResult.analysis in /tmp/.tmpdQW36U/pixelsrc/src/import/mod.rs:182
  field ImportResult.half_sprite in /tmp/.tmpdQW36U/pixelsrc/src/import/mod.rs:184
  field SpriteDiff.region_changes in /tmp/.tmpdQW36U/pixelsrc/src/diff.rs:24
  field SpriteDiff.presence_change in /tmp/.tmpdQW36U/pixelsrc/src/diff.rs:26
  field DefaultsConfig.antialias in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:190
  field DefaultsConfig.antialias in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:190
  field CliOverrides.allow_overflow in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:48
  field CliOverrides.allow_orphans in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:50
  field CliOverrides.allow_cycles in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:52
  field CliOverrides.collect_errors in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:54
  field CliOverrides.allow_overflow in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:48
  field CliOverrides.allow_orphans in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:50
  field CliOverrides.allow_cycles in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:52
  field CliOverrides.collect_errors in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:54
  field CssTransform.skew_x in /tmp/.tmpdQW36U/pixelsrc/src/transforms/css.rs:31
  field CssTransform.skew_y in /tmp/.tmpdQW36U/pixelsrc/src/transforms/css.rs:33
  field ValidateConfig.allow_overflow in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:396
  field ValidateConfig.allow_orphans in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:399
  field ValidateConfig.allow_cycles in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:402
  field ValidateConfig.allow_overflow in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:396
  field ValidateConfig.allow_orphans in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:399
  field ValidateConfig.allow_cycles in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:402
  field ResolvedSprite.nine_slice in /tmp/.tmpdQW36U/pixelsrc/src/registry/sprite.rs:88
  field ResolvedSprite.regions in /tmp/.tmpdQW36U/pixelsrc/src/registry/sprite.rs:90
  field AtlasConfig.antialias in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:230
  field AtlasConfig.antialias in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:230
  field Sprite.extends in /tmp/.tmpdQW36U/pixelsrc/src/models/sprite.rs:142
  field Sprite.remove in /tmp/.tmpdQW36U/pixelsrc/src/models/sprite.rs:145
  field Sprite.translate in /tmp/.tmpdQW36U/pixelsrc/src/models/sprite.rs:149
  field Sprite.regions in /tmp/.tmpdQW36U/pixelsrc/src/models/sprite.rs:152
  field Sprite.nine_slice in /tmp/.tmpdQW36U/pixelsrc/src/models/sprite.rs:161
  field Sprite.antialias in /tmp/.tmpdQW36U/pixelsrc/src/models/sprite.rs:164
  field Palette.ramps in /tmp/.tmpdQW36U/pixelsrc/src/models/palette.rs:143
  field Palette.roles in /tmp/.tmpdQW36U/pixelsrc/src/models/palette.rs:146
  field Palette.relationships in /tmp/.tmpdQW36U/pixelsrc/src/models/palette.rs:149
  field PxlConfig.format in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:483
  field PxlConfig.import_config in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:486
  field PxlConfig.telemetry in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:489
  field PxlConfig.dependencies in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:510
  field PxlConfig.format in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:483
  field PxlConfig.import_config in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:486
  field PxlConfig.telemetry in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:489
  field PxlConfig.dependencies in /tmp/.tmpdQW36U/pixelsrc/src/config/schema.rs:510

--- failure enum_marked_non_exhaustive: enum marked #[non_exhaustive] ---

Description:
A public enum has been marked #[non_exhaustive]. Pattern-matching on it outside of its crate must now include a wildcard pattern like `_`, or it will fail to compile.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#attr-adding-non-exhaustive
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_marked_non_exhaustive.ron

Failed in:
  enum BuildError in /tmp/.tmpdQW36U/pixelsrc/src/build/pipeline.rs:23
  enum BuildError in /tmp/.tmpdQW36U/pixelsrc/src/build/pipeline.rs:23
  enum TransformError in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:13
  enum OutputError in /tmp/.tmpdQW36U/pixelsrc/src/output.rs:13
  enum WatchError in /tmp/.tmpdQW36U/pixelsrc/src/watch.rs:19
  enum PaletteSource in /tmp/.tmpdQW36U/pixelsrc/src/registry/palette.rs:26
  enum InitError in /tmp/.tmpdQW36U/pixelsrc/src/init.rs:14
  enum VariableError in /tmp/.tmpdQW36U/pixelsrc/src/variables.rs:31
  enum PaletteParseError in /tmp/.tmpdQW36U/pixelsrc/src/palette_parser.rs:34
  enum CssTransformError in /tmp/.tmpdQW36U/pixelsrc/src/transforms/css.rs:43
  enum BuildOrderError in /tmp/.tmpdQW36U/pixelsrc/src/build/target.rs:239
  enum BuildOrderError in /tmp/.tmpdQW36U/pixelsrc/src/build/target.rs:239
  enum ExportError in /tmp/.tmpdQW36U/pixelsrc/src/export/mod.rs:41
  enum TimingFunctionError in /tmp/.tmpdQW36U/pixelsrc/src/motion.rs:522
  enum PaletteError in /tmp/.tmpdQW36U/pixelsrc/src/registry/palette.rs:40
  enum ConfigError in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:18
  enum ConfigError in /tmp/.tmpdQW36U/pixelsrc/src/config/loader.rs:18
  enum ExpressionError in /tmp/.tmpdQW36U/pixelsrc/src/transforms/expression.rs:13
  enum ScaffoldError in /tmp/.tmpdQW36U/pixelsrc/src/scaffold.rs:14
  enum SpriteError in /tmp/.tmpdQW36U/pixelsrc/src/registry/sprite.rs:14
  enum CompositionError in /tmp/.tmpdQW36U/pixelsrc/src/composition/error.rs:20
  enum DiscoveryError in /tmp/.tmpdQW36U/pixelsrc/src/build/discovery.rs:15
  enum DiscoveryError in /tmp/.tmpdQW36U/pixelsrc/src/build/discovery.rs:15
  enum IncludeError in /tmp/.tmpdQW36U/pixelsrc/src/include.rs:19
  enum ManifestError in /tmp/.tmpdQW36U/pixelsrc/src/build/manifest.rs:71
  enum ManifestError in /tmp/.tmpdQW36U/pixelsrc/src/build/manifest.rs:71
  enum ColorError in /tmp/.tmpdQW36U/pixelsrc/src/color.rs:16

--- failure enum_no_repr_variant_discriminant_changed: enum variant had its discriminant change value ---

Description:
The enum's variant had its discriminant value change. This breaks downstream code that used its value via a numeric cast like `as isize`.
        ref: https://doc.rust-lang.org/reference/items/enumerations.html#assigning-discriminant-values
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_no_repr_variant_discriminant_changed.ron

Failed in:
  variant Commands::Show 15 -> 12 in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:380
  variant Commands::Build 16 -> 13 in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:422
  variant Commands::New 17 -> 14 in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:449
  variant Commands::Init 18 -> 15 in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:462
  variant Commands::Lsp 21 -> 17 in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:489
  variant Commands::Agent 22 -> 19 in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:497
  variant CompositionError::SizeMismatch 0 -> 1 in /tmp/.tmpdQW36U/pixelsrc/src/composition/error.rs:26
  variant CompositionError::SizeNotDivisible 1 -> 2 in /tmp/.tmpdQW36U/pixelsrc/src/composition/error.rs:34
  variant CompositionError::MapDimensionMismatch 2 -> 3 in /tmp/.tmpdQW36U/pixelsrc/src/composition/error.rs:37
  variant CompositionError::CycleDetected 3 -> 4 in /tmp/.tmpdQW36U/pixelsrc/src/composition/error.rs:45
  variant IssueType::MissingPalette 5 -> 4 in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:57
  variant IssueType::InvalidColor 6 -> 5 in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:59
  variant IssueType::EmptyGrid 8 -> 16 in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:81
  variant IssueType::DuplicateName 9 -> 6 in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:61
  variant Transform::Pingpong 11 -> 13 in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:117
  variant Transform::Reverse 12 -> 14 in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:120
  variant Transform::FrameOffset 13 -> 15 in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:121
  variant Transform::Hold 14 -> 16 in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:124
  variant Transform::Dither 15 -> 17 in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:131
  variant Transform::DitherGradient 16 -> 18 in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:142
  variant Transform::Subpixel 17 -> 19 in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:160

--- failure enum_struct_variant_field_added: pub enum struct variant field added ---

Description:
An enum's exhaustive struct variant has a new field, which has to be included when constructing or matching on this variant.
        ref: https://doc.rust-lang.org/reference/attributes/type_system.html#the-non_exhaustive-attribute
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_struct_variant_field_added.ron

Failed in:
  field nine_slice of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:136
  field antialias of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:140
  field aa_strength of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:144
  field anchor_mode of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:148
  field no_semantic_aa of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:152
  field gradient_shadows of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:156
  field no_project of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:160
  field frames of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:165
  field canvas of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:169
  field origin of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:173
  field fps of variant Commands::Render in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:177
  field analyze of variant Commands::Import in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:198
  field confidence of variant Commands::Import in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:202
  field hints of variant Commands::Import in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:206
  field no_shapes of variant Commands::Import in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:210

--- failure enum_variant_added: enum variant added on exhaustive enum ---

Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_added.ron

Failed in:
  variant Commands:Install in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:476
  variant Commands:Mcp in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:494
  variant Commands:Scaffold in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:504
  variant Commands:Draw in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:510
  variant Commands:Mask in /tmp/.tmpdQW36U/pixelsrc/src/cli/mod.rs:556
  variant SuggestionType:IncludeToImport in /tmp/.tmpdQW36U/pixelsrc/src/suggest.rs:19
  variant SuggestionType:AddExplicitImport in /tmp/.tmpdQW36U/pixelsrc/src/suggest.rs:21
  variant IssueType:InvalidRoleToken in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:63
  variant IssueType:InvalidRelationshipTarget in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:65
  variant IssueType:CircularDependency in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:67
  variant IssueType:InvalidWithinReference in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:69
  variant IssueType:InvalidAdjacentReference in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:71
  variant IssueType:InvalidRelationshipReference in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:73
  variant IssueType:CircularRelationship in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:75
  variant IssueType:UncertainConstraint in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:77
  variant IssueType:RangeValidation in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:79
  variant IssueType:UnresolvedImport in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:83
  variant IssueType:UnusedImport in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:85
  variant IssueType:ShadowedImport in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:87
  variant IssueType:DuplicateRegionKey in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:89
  variant IssueType:EmptyRegion in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:91
  variant IssueType:OutOfCanvas in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:93
  variant IssueType:UnusedToken in /tmp/.tmpdQW36U/pixelsrc/src/validate.rs:95
  variant TtpObject:Import in /tmp/.tmpdQW36U/pixelsrc/src/models/object.rs:25
  variant TtpObject:StateRules in /tmp/.tmpdQW36U/pixelsrc/src/models/object.rs:26
  variant Transform:SkewX in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:104
  variant Transform:SkewY in /tmp/.tmpdQW36U/pixelsrc/src/transforms/types.rs:111
  variant Explanation:StateRules in /tmp/.tmpdQW36U/pixelsrc/src/explain.rs:181
  variant Explanation:Import in /tmp/.tmpdQW36U/pixelsrc/src/explain.rs:182
  variant SuggestionFix:UseImport in /tmp/.tmpdQW36U/pixelsrc/src/suggest.rs:69
  variant SuggestionFix:AddImport in /tmp/.tmpdQW36U/pixelsrc/src/suggest.rs:76

--- failure enum_variant_missing: pub enum variant removed or renamed ---

Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/enum_variant_missing.ron

Failed in:
  variant SuggestionType::RowCompletion, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/suggest.rs:19
  variant Commands::Inline, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/cli.rs:329
  variant Commands::Alias, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/cli.rs:339
  variant Commands::Grid, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/cli.rs:349
  variant Commands::Sketch, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/cli.rs:465
  variant Commands::Transform, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/cli.rs:487
  variant SuggestionFix::ExtendRow, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/suggest.rs:66
  variant IssueType::RowLengthMismatch, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/validate.rs:43
  variant IssueType::SizeMismatch, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/validate.rs:49

--- failure function_missing: pub fn removed or renamed ---

Description:
A publicly-visible function cannot be imported by its prior path. A `pub use` may have been removed, or the function itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/function_missing.ron

Failed in:
  function pixelsrc::alias::extract_aliases, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/alias.rs:36
  function pixelsrc::alias::parse_simple_grid, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/alias.rs:204
  function pixelsrc::transforms::apply_scale, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2050
  function pixelsrc::transforms::apply_shadow, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2272
  function pixelsrc::transforms::apply_rotate, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2392
  function pixelsrc::transforms::apply_crop, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2636
  function pixelsrc::alias::format_columns, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/alias.rs:156
  function pixelsrc::transforms::apply_selout, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:1893
  function pixelsrc::transforms::apply_shift, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2208
  function pixelsrc::transforms::apply_mirror_vertical, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2378
  function pixelsrc::transforms::apply_pad, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2554
  function pixelsrc::alias::expand_aliases, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/alias.rs:114
  function pixelsrc::alias::simple_grid_to_sprite, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/alias.rs:233
  function pixelsrc::alias::parse_grid_row, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/alias.rs:300
  function pixelsrc::transforms::apply_outline, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2123
  function pixelsrc::transforms::apply_mirror_horizontal, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2352
  function pixelsrc::transforms::apply_tile, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/transforms.rs:2493
  function pixelsrc::tokenizer::tokenize, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/tokenizer.rs:33

--- failure function_parameter_count_changed: pub fn parameter count changed ---

Description:
A publicly-visible function now takes a different number of parameters.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/function_parameter_count_changed.ron

Failed in:
  pixelsrc::include::resolve_include now takes 3 parameters instead of 2, in /tmp/.tmpdQW36U/pixelsrc/src/include.rs:87
  pixelsrc::include::resolve_include_with_detection now takes 4 parameters instead of 3, in /tmp/.tmpdQW36U/pixelsrc/src/include.rs:125

--- failure module_missing: pub module removed or renamed ---

Description:
A publicly-visible module cannot be imported by its prior path. A `pub use` may have been removed, or the module may have been renamed, removed, or made non-public.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/module_missing.ron

Failed in:
  mod pixelsrc::alias, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/alias.rs:1
  mod pixelsrc::tokenizer, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/tokenizer.rs:1

--- failure struct_missing: pub struct removed or renamed ---

Description:
A publicly-visible struct cannot be imported by its prior path. A `pub use` may have been removed, or the struct itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/struct_missing.ron

Failed in:
  struct pixelsrc::tokenizer::Warning, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/tokenizer.rs:5
  struct pixelsrc::diff::GridChange, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/diff.rs:60

--- failure struct_pub_field_missing: pub struct's pub field removed or renamed ---

Description:
A publicly-visible struct has at least one public field that is no longer available under its prior name. It may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/struct_pub_field_missing.ron

Failed in:
  field grid of struct Sprite, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/models.rs:250
  field grid of struct ResolvedSprite, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/registry.rs:435
  field grid_changes of struct SpriteDiff, previously in file /tmp/release-plz-pixelsrc-31puQP/worktree/src/diff.rs:24

--- failure trait_newly_sealed: pub trait became sealed ---

Description:
A publicly-visible trait became sealed, so downstream crates are no longer able to implement it
        ref: https://rust-lang.github.io/api-guidelines/future-proofing.html#sealed-traits-protect-against-downstream-implementations-c-sealed
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/trait_newly_sealed.ron

Failed in:
  trait pixelsrc::export::Exporter in file /tmp/.tmpdQW36U/pixelsrc/src/export/mod.rs:78
Changelog

[0.3.0] - 2026-09-27

Added

  • (iso-prototype) Enhance reference-head with facial hair, glasses, expressions(c68bfc6)
  • Rebuild examples/demos directory with regions format(ea266fe)
  • (demos) Add demos for transform, agent-verify, and agent commands(fc06cbb)
  • (examples) Add eyebrow expression renders for reference-head(3f32ee1)
  • (examples) Add avatar-prototype with skull sprite via artisan workflow(6c33833)
  • (examples) Add talking skull animation with mouth states(f6c75ba)
  • (cli) Remove deprecated pxl transform command(6e0ebaf)
  • (examples) Add skull-outline silhouette study(08dcc51)
  • (demos) Add animation demo tests (DT-4)(9dcfb36)
  • (demos) Add composition demo tests (DT-5)(f4658ef)
  • (demos) Add @demo annotations to export tests (DT-6/7/8)(d4325f3)
  • (demos) Add CSS color demo tests (DT-9)(886b3e3)
  • (sprites) Add beanie hat and burly sailor beard(b9f3825)
  • (examples) Add neutral eyebrow sprite and style variations(145584f)
  • (demos) Add CSS timing function demo tests (DT-11)(fbbe283)
  • (demos) Add CSS transform demo tests (DT-12)(91ab190)
  • (demos) Add palette cycling demo tests (DT-11)(b9d1833)
  • (demos) Add CSS keyframes demo tests (DT-14)(47d25f0)
  • (demos) Add @demo annotations to build system tests (DT-13)(2af6f3d)
  • (docs) Add CSS section to mdbook with demo markers (DT-17)(bb9199f)
  • (demos) Add @demo annotations to CLI tests(63a30a5)
  • (ci) Enforce demo coverage threshold(8ba6cab)
  • (ci) Add demo tests and documentation checks to CI (DT-18)(5bc2e01)
  • (artisan) Skull sprite iteration round 2(8fca6be)
  • (antialias) Add core types and enums(c5cd7e3)
  • (config) Add AntialiasConfig to schema(bd8fb98)
  • (cli) Add antialiasing CLI flags to render command(75bc99e)
  • (antialias) Add SemanticContext for AA extraction(9111765)
  • (antialias) Add apply_antialias() pipeline integration(1fe1679)
  • (antialias) Add aa-blur algorithm with semantic masking(3e73a93)
  • (antialias) Add Scale2x algorithm with semantic modifications(d040d38)
  • (antialias) Add HQ2x/HQ4x algorithms with semantic awareness(45b349d)
  • (antialias) Implement xBR2x/xBR4x edge-aware upscaling(46ec422)
  • (antialias) Implement gradient smoothing for DerivesFrom relationships(052358f)
  • (antialias) Add @demo annotated tests for AA algorithms and semantic preservation(6daa4e2)
  • (models) Add per-sprite and per-region antialias config(016b983)
  • (demo-tests) Add @demo annotations for 100% coverage(93f12a0)
  • (antialias) Add comprehensive integration tests(f9e45c7)
  • (idioms) Add #[non_exhaustive] to all public error enums(bc16a5e)
  • (demo-tests) Add CSS variable demo tests (DT-10)(658a6b2)
  • (ergonomics) Add Result type aliases to major modules(e0933ea)
  • (antialias) Add example sprites for AA demo(f650089)
  • (demos) Add @demo annotations to CLI tests(c7f201a)
  • Establish 3/4 view perspective for skull sprite(be1b2f6)
  • Add pyo3 dependency and python feature flag(8b5c254)
  • Scaffold Python package with PyO3 + maturin (PY-1, PY-2)(1f477b9)
  • Add parse, list_sprites, list_palettes Python bindings (PY-4)(a33cf45)
  • Add validate, validate_file Python bindings (PY-5)(18d39ee)
  • Add import_png, import_png_analyzed Python bindings (PY-7)(204c707)
  • Add format_pxl Python binding (PY-9)(2b6e777)
  • Add stateful Registry #[pyclass] for Python bindings (PY-8)(a406799)
  • Add comprehensive Python test suite for color and import bindings (PY-11)(6e67037)
  • Add missing demo test annotations to reach 100% coverage(02a54c9)
  • Add banner sprite definitions (examples/banner_pxl.jsonl)(13b5dc4)
  • Generate favicon at multiple sizes + ICO + manifest.json (Phase 13.4)(61d3c12)
  • Create social preview OG image (1280x640) (Phase 13.5)(daaae27)
  • Add pxl draw subcommand with file read-modify-write pipeline(12582fc)
  • Add grid token editing engine with --set and --erase operations(37968bc)
  • Add --line x1,y1,x2,y2={token} draw operation using Bresenham algorithm(94e2edc)
  • Add pxl scaffold CLI subcommand with sprite/composition/palette dispatch(1b884b5)
  • Add pxl mask subcommand with token grid extraction(05f9074)
  • Add MCP tools for format, prime, palettes, analyze, scaffold(6e4c3f0)
  • Implement pixelsrc_import MCP tool for PNG to .pxl conversion(ec09a3e)
  • Add pre-commit hook installer for fmt + clippy checks(45b143c)
  • Add MCP static resources for format spec and palette catalog(a9a5ecf)
  • Version-control pre-commit hooks via .githooks/ and core.hooksPath(3b23776)
  • Add --query and --bounds operations to pxl mask(c021551)
  • Implement --sample and --neighbors mask operations(36a2814)
  • Add --list operation to pxl mask(18a4bcd)
  • Add --region and --count operations to pxl mask(bbcfb19)
  • Add MCP integration tests + Claude Code/Desktop config examples(120825b)
  • Add MCP resource templates for palettes, examples, and prompts(1c4b9c0)
  • Add mask CLI integration tests, agent workflow example, and docs(f7e7d3a)
  • Add MCP prompt templates for guided pixelsrc workflows(d54824f)
  • Add draw tests, edge cases, and docs(132a81a)
  • Add pixelsrc_render MCP tool for .pxl to PNG rendering(1c7a06a)
  • Add pixelsrc_explain and pixelsrc_diff MCP tools(49e10cc)
  • Add pixelsrc_validate and pixelsrc_suggest MCP tools(0f7a823)
  • Add project-wide registry for cross-file item resolution(cb9c6a8)
  • Add @include:path#name syntax for named palette selection(79bd1b1)
  • Add Import object type with parser, validation, and explain support(657b178)
  • Implement two-pass build pipeline for cross-file reference resolution(90a16be)
  • Add project context auto-detection to pxl render(2234627)
  • Add import resolution for cross-file references(57e1a20)
  • Add optional NumPy/Pillow integration for RenderResult(b53182d)
  • Add VS Code extension for pixelsrc(2b3f62c)
  • Add particle system rendering engine(07d68ed)
  • Add circle and ellipse fill to pxl draw(348175f)
  • Add MCP integration tests for explain/diff tools + docs(95ba850)
  • Add [dependencies] section to pxl.toml schema(9cc0be1)
  • Add LSP cross-file support via ProjectRegistry(d92ee71)
  • Add import validation and suggestions for pxl validate/suggest(00e8784)
  • Add pxl install command for dependency fetching(d14ffb1)
  • Add namespaced external references via dependency loading(9f588ae)
  • (examples) Skull sprite matching the reference(fd3f2d5)
  • (examples) Animate the skull (idle, laugh, glowing eyes, speech timing)(3d9bfb3)
  • Validate catches duplicate region keys, OOB pixels, empty regions, unused tokens(46a62e1)
  • Diff compares region geometry and reports presence honestly(81794b1)
  • Sprite extends inherits and patches regions at the key level(6cfce13)
  • Bake particle systems to frames with pxl render --frames(32dea13)
  • Per-region and sprite-level group translate (one-line walk bob)(dd8fff9)
  • Auto-outline renders a real silhouette outline(73e1d17)
  • pxl show renders structured sprites as an ANSI color preview(320a1f2)

CI/CD

  • Add Python wheel build and PyPI publish workflow (PY-12)(bd08d45)
  • Release-plz with binary builds; fix red main(fc97085)
  • Clippy late-init lint; drop native x86_64 linker override that broke wheel builds(a1342a0)
  • Unbreak the Python wheel and browser-test lanes(4bb0f81)
  • Publish the Homebrew formula to the scbrown/homebrew-pixelsrc tap(8acb129)
  • Browser tests serve mdBook's html/ output; Linux wheels find interpreters(cc5f3a0)

Changed

  • (fixtures) Convert test fixtures from grid to regions format(a68e463)
  • (fixtures) Convert remaining test fixtures from grid to regions(2cf5356)
  • (init) Convert project templates from grid to regions format(524e7bb)
  • Remove grid format from scaffold templates and fmt output(d5ea8a1)
  • Convert test strings from grid to regions format(2a1e655)
  • (parser) Convert test strings from grid to regions format(30a3d99)
  • Remove grid format references from production and test code(93192fc)
  • (transforms) Split transforms.rs into modular directory structure(ecdbc8d)
  • Convert models.rs and registry.rs grid refs to regions(74b5351)
  • Convert remaining grid refs to regions format(927b556)
  • Convert tests/demos to regions format(eccd3a0)
  • (cli) Split cli.rs into modular structure(c45ef14)
  • (composition) Split composition.rs into modular structure(9766d9e)
  • (analyze) Split analyze.rs into modular structure(53b1943)
  • (models) Split models.rs into modular structure(b0082a7)
  • (lsp) Split lsp.rs into modular structure(1c5bb6b)
  • (registry) Split registry.rs into modular structure(600daea)

Documentation

  • (plan) Audit phase statuses and document gaps(ce71556)
  • Add Artisan Workflow for autonomous art iteration(a715a75)
  • (plan) Update phase statuses for 17, 18, 20(fd03ee0)
  • Reorganize artistic workflow documentation(a0a1c2f)
  • (plan) Revise Phase 19 to reflect current implementation(b92f6f9)
  • (plan) Update Phase 19 - mark Color Ramps & Nine-Slice complete(d55ca55)
  • (artistic-workflow) Add Phase 0 silhouette-first workflow(1c88d35)
  • (artistic-workflow) Expand shape reference with tested details(a355b85)
  • (artistic-workflow) Add shape diagrams with coordinates(a9b3579)
  • (book) Add shape diagrams and silhouette-first workflow(2274b1c)
  • (transforms) Clarify CSS vs op-style transform systems(42ecd8c)
  • (plan) Add semantic-aware antialiasing phase specification(1dc4e7c)
  • (contributing) Add comprehensive Rust coding standards(7be3802)
  • (antialias) Add antialiasing reference chapter(8fb65d7)
  • (plan) Add semantic import enhancement plan(7dc4bec)
  • (plan) Add Python bindings plan (PyO3 + maturin)(2832c8c)
  • (plan) Add PNG import task (PY-7) to Python bindings plan(b0572f9)
  • Complete type stubs and documentation for Python bindings (PY-10)(2b7941a)
  • Regenerate demo documentation to match current tests(18ee6d3)
  • Add demo documentation regeneration requirements(21b05ca)
  • Update plan README to reflect actual implementation status(6547f2d)
  • Add missing phases to plan README — LSP, Python, antialiasing, crates.io(451854d)
  • Add Drafting Table plan docs for scaffold, draw, mask(0e3037b)
  • Add import system plan with module namespaces and persona analysis(ab9abbd)
  • Add MCP server plan, task breakdown, and implementation beads(aeb08b2)
  • Add banner image, lowercase branding, and badges to README(f1345bb)
  • Scaffold mdbook with Dracula theme + Intel One Mono(4f785b6)
  • Drop an internal forge URL from the Chronicle link — public-repo leak(0220c93)
  • (examples) Skull evolution strip, from the January prototypes to now(dd8617d)
  • (examples) Animated skull evolution GIF(80f8b50)

Fixed

  • Use valid palette colors in hair/hat sprite regions(9a5a140)
  • (tests) Update scaffold tests for regions format(573c31f)
  • Correct dependency direction for large file refactoring epic(c178911)
  • (validate) Don't warn about missing regions for source sprites(a95833c)
  • Resolve remaining demo test failures and add missing fixtures(bd9f4b4)
  • (validate) Resolve var() references before parsing CSS colors(780acd6)
  • (hair) Improve hair coverage on reference-head sprites(4c0cdcc)
  • (shapes) Fix polygon fill horizontal stripe artifacts(d8c19fb)
  • (color) Replace unwrap() with documented expect() in hex parsing(f1f71e2)
  • (transforms) Replace unwrap() with documented expect() in production code(ecd7908)
  • (ci) Resolve clippy warnings(ac3799e)
  • (export) Handle missing animation frames gracefully in Unity export(4aa70fd)
  • (scaffold) Remove unsafe unwrap() calls in production code(ed225ba)
  • (analyze) Replace unsafe unwraps with expect() and total_cmp(a7e9c27)
  • (lsp) Replace unwrap() with proper error handling in server(23e0d37)
  • (build) Replace Mutex unwrap() with expect() for better error messages(7a9c233)
  • (config) Replace unsafe unwrap() calls with expect() in tests(dde73a0)
  • (clippy) Resolve 9 clippy warnings(feaa702)
  • (ci) Exclude python feature from main CI workflow(e4fd8ad)
  • Resolve clippy warnings and compilation errors for CI(837f2a2)
  • Remove broken links to deprecated CLI commands in mdbook docs(6a6c5ae)
  • Resolve clippy warnings (redundant_closure, collapsible_if)(ec34432)
  • Revert grid field, replace TokenGrid with RegionEditor(3ed8555)
  • Replace v1 grid format with v2 regions in scaffold generators(44d5cfb)
  • Apply cargo fmt to fix CI formatting check(7e01aff)
  • Remove unnecessary to_string() to fix clippy CI failure(d8140eb)
  • Gate MCP integration tests behind mcp feature flag(d75c4d5)
  • (docs) Interactive demos never loaded; wheel and browser-test lanes green(e8e590e)
  • Rasterize circles/ellipses round with pixel-art rounding(3cf32d7)
  • Credit extends-frame tokens to the inherited palette (no false unused warning)(dcf1342)

Implement

  • REF-8: Test Coverage - Add cargo-llvm-cov, CI integration, coverage targets(561f373)

Merge

Miscellaneous

  • Add .beads/ to gitignore (workspace setup)(5c91449)
  • Update Cargo.lock for pyo3 dependency(bbfa2fa)
  • Gitignore Python build artifacts(70f236b)
  • Add root .venv/ to gitignore(3be4e44)
  • Track .beads/metadata.json for dolt.lan:3306 config(e616db9)
  • Add test-generated fixture (minimal_dot_dot.png)(92c44bf)
  • Add v1 grid deprecation warnings to docs and code(0af98ae)
  • Fix formatting in cli/mod.rs(93ee086)

Testing

  • Improve Python parse tests with fixtures and coverage (PY-4)(9034141)
  • Add version metadata tests for Python package (PY-11)(e9ce068)

Art

  • Add "pxl" text favicon sprite (16x16)(d019384)
  • Replace P favicon with pxl text favicon(0daa0e9)
  • Iterate skull sprite Round 2 - angular sockets, brow ridge, narrower jaw(7753a11)

Beads

  • Add pixelsrc issues for reference-head work(dc333df)
  • Add unwrap cleanup epic with 17 child tasks(51b668c)
  • Add Rust idioms epic with 8 child tasks(6a284c1)
  • Add for CONTRIBUTING.md Rust standards(dc05525)

Close

  • Transforms.rs refactoring complete(8f6956e)

Config

  • Point beads metadata at per-rig Dolt database(3d3583f)

Style

  • Apply cargo fmt to fix CI formatting check(e9a9279)
  • Cargo fmt over the integrated fork commits(efb161f)

Sync


This PR was generated with release-plz.

@github-actions
github-actions Bot force-pushed the release-plz-2026-09-26T04-53-57Z branch 3 times, most recently from edab0d4 to 2e6f523 Compare September 26, 2026 06:49
@github-actions
github-actions Bot force-pushed the release-plz-2026-09-26T04-53-57Z branch from 2e6f523 to 370715f Compare September 27, 2026 06:42
@scbrown
scbrown merged commit 686b366 into main Oct 7, 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.

1 participant