Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Double-check semver breaks #696

Closed
dbr opened this issue Jan 9, 2023 · 1 comment
Closed

Double-check semver breaks #696

dbr opened this issue Jan 9, 2023 · 1 comment
Milestone

Comments

@dbr
Copy link
Contributor

dbr commented Jan 9, 2023

Extension of #688 and #694 - double-check the semver breaks to check all are necessary, and if they can be smoothed

@dbr dbr added this to the v0.10 milestone Jan 9, 2023
@dbr
Copy link
Contributor Author

dbr commented Jan 16, 2023

These were all pretty reasonable:

--- failure auto_trait_impl_removed: auto trait no longer implemented ---

Description:
A public type has stopped implementing one or more auto traits. This can break downstream code that depends on the traits being implemented.
        ref: https://doc.rust-lang.org/reference/special-types-and-traits.html#auto-traits
       impl: https://github.com/obi1kenobi/cargo-semver-check/tree/v0.15.2/src/queries/auto_trait_impl_removed.ron

Failed in:
  type ImageButton is no longer UnwindSafe, in imgui/src/widget/image.rs:78
  type ImageButton is no longer Send, in imgui/src/widget/image.rs:78
  type ImageButton is no longer Sync, in imgui/src/widget/image.rs:78
  type ImageButton is no longer RefUnwindSafe, in imgui/src/widget/image.rs:78

Loss of these is fine - imgui stuff is generally non-Sync, the auto-traits were there because the old ImageButton was mostly an ~empty builder


--- 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/reference/attributes/type_system.html#the-non_exhaustive-attribute
       impl: https://github.com/obi1kenobi/cargo-semver-check/tree/v0.15.2/src/queries/enum_marked_non_exhaustive.ron

Failed in:
  enum Key in imgui/src/input/keyboard.rs:9

Somewhat unavoidable


--- 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-check/tree/v0.15.2/src/queries/enum_variant_missing.ron

Failed in:
  variant Key::KeyPadEnter, previously in file /home/dbr/.cargo/registry/src/github.com-1ecc6299db9ec823/imgui-0.9.0/src/input/keyboard.rs:24

Avoidable but not worthwhile given the other changes in Key and the "did you mean" prompt in error


--- failure inherent_method_missing: pub method removed or renamed ---

Description:
A publicly-visible method or associated fn 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-check/tree/v0.15.2/src/queries/inherent_method_missing.ron

Failed in:
  ImageButton::frame_padding, previously in file /home/dbr/.cargo/registry/src/github.com-1ecc6299db9ec823/imgui-0.9.0/src/widget/image.rs:124

Technically breaking, but the ImageButtonDeprecated makes this generally backwards-compatible


--- failure method_parameter_count_changed: pub method parameter count changed ---

Description:
A publicly-visible method 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-check/tree/v0.15.2/src/queries/method_parameter_count_changed.ron

Failed in:
  imgui::image::ImageButton::build now takes 1 parameters instead of 2, in imgui/src/widget/image.rs:166
       Final [  18.970s] semver requires new major version: 5 major and 0 minor checks failed

Same

@dbr dbr closed this as completed Jan 16, 2023
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

No branches or pull requests

1 participant