Skip to content

Support different versions of winit for different backends #1262

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

Merged
merged 2 commits into from
Apr 1, 2019

Conversation

mitchmindtree
Copy link
Contributor

@mitchmindtree mitchmindtree commented Mar 30, 2019

One ongoing struggle with conrod has been ensuring that all backend
winit dependencies support the same version of winit so that the
conrod_winit crate functions could be shared between each of the
different backends. Previously, only glium and gfx backends had to
be kept in sync. With the recent addition of the vulkano backend the
problem of keeping all backend winit dependencies up-to-date is
starting to get out of hand.

This change moves the conrod_winit conversion functions behind public
macros, allowing for the user to generate the conversion functions
necessary for whatever version of winit they happen to currently have.

This is a breaking change due to the removal of the conrod_winit's
conversion functions and the removal of its winit and conrod_core
crate dependencies. See the updated conrod_vulkano, conrod_glium and
conrod_gfx backends and their examples to see how to update to this change
(required changes should be minor).

One ongoing struggle with conrod has been ensuring that all backend
winit dependencies support the same version of winit so that the
`conrod_winit` crate functions could be shared between each of the
different backends. Previously, only `glium` and `gfx` backends had to
be kept in sync. With the recent addition of the `vulkano` backend the
problem is starting to get out of hand.

This change moves the `conrod_winit` conversions functions behind public
macros, allowing for the user to generate the conversion functions
necessary for whatever version of winit they happen to currently have.

This is a **breaking change** due to the removal of the `conrod_winit`'s
conversion functions and the removal of its `winit` and `conrod_core`
crate dependencies. See the updated `conrod_vulkano`, `conrod_glium` and
`conrod_gfx` backends and their examples to how to update to this change
(required changes should be minor).
@mitchmindtree
Copy link
Contributor Author

Travis seems to be failing on a rustc bug on the latest nightly branch - see rust-lang/rust#59502. It looks like there's already a PR up to fix the issue. Otherwise, stable and beta seem to be working fine.

@mitchmindtree mitchmindtree merged commit aeca45b into PistonDevelopers:master Apr 1, 2019
@mitchmindtree mitchmindtree deleted the winit_versions branch June 29, 2019 20:38
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