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

Update Rust crate glutin to 0.31.0 #720

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Sep 1, 2022

Mend Renovate

This PR contains the following updates:

Package Type Update Change
glutin dependencies minor 0.29.0 -> 0.31.0

Release Notes

rust-windowing/glutin (glutin)

v0.31.3

Compare Source

  • Change Surface to be Send. This makes it consistent with the context, so now they are both Send but not Sync.

v0.31.2

Compare Source

  • Fixed EGL not setting context version with EGL versions before 1.5 and missing context ext.

v0.31.1

Compare Source

  • Fixed CGLContextObj having an invalid encoding on newer macOS versions.

v0.31.0

Compare Source

  • Bump MSRV from 1.60 to 1.65.
  • Breaking: bitflags which is used as a part of public API was updated to 2.0.
  • Breaking: .*SurfaceAccessor traits got removed; their methods now on respective .*GlContext traits instead.
  • Breaking: GlContext trait is now a part of the prelude.
  • Automatically cleanup the EGLDisplay when EGL_KHR_display_reference is present.
  • Add api::egl::Display::terminate to terminate the display when glutin doesn't manage it.
  • Fixed handling of Robustness::NoError and debug attribute when building context.
  • Robustness::NoError not being properly enabled with GLX/WGL.

v0.30.10

Compare Source

  • Add X11VisualInfo::visual_id to get XID of the visual.
  • Added support for EGL on Windows using Angle. This assumes libEGL.dll/libGLESv2.dll present.
  • EGL's Display::create_pbuffer_surface() no longer sets the invalid RENDER_BUFFER attribute.

v0.30.9

Compare Source

  • Fixed lock on SwapBuffers with some GLX drivers.
  • Fixed EGL's Surface::is_single_buffered being inversed.

v0.30.8

Compare Source

  • Fixed EGL dereferencing raw window handles on everything but X11 in legacy Window and Pixmap surface creation.
  • On GLX, fixed startup failure when passing default Flush with KHR_context_flush_control.
  • Behavior change: the Config's Api now has platform specific default instead of being unspecified.

v0.30.7

Compare Source

  • Altered specification for objc2 crate to pull patch update.

v0.30.6

Compare Source

  • Fixed handling of *_base extensions with EGL.

v0.30.5

Compare Source

  • Fixed EGL/GLX display initialization when the provided raw-window-handle has an unknown visual_id.
  • Fixed EGL always returning None for x11_visual().
  • Fixed GLX error handling assuming that XError's will arrive like they should on X11.
  • Fixed EGL window/pixmap creation when using legacy path.

v0.30.4

Compare Source

  • Fixed EGL display initialization with XcbDisplayHandle.
  • Fixed EGL/GLX Surface::width returning the height instead of the width.
  • On GLX, fixed handling of errors not directly requested by glutin.
  • Added GlConfig::hardware_accelerated to check if the config is hardware accelerated.
  • Added GlContext::context_api to get the ContextApi used by the context.
  • Added missing implementations of Surface::{width,height} for WGL/CGL
  • Fixed crash when accessing context from the off-thread on macOS.
  • Clarified that make_{,not}_current(), GlSurface::width(), GlSurface::height(), and GlSurface::resize() could block on macOS.

v0.30.3

Compare Source

  • Fixed wrong amount of rects committed in Surface::swap_buffers_with_damage with EGL.
  • Added missing Eq, PartialEq, and Hash impls for surface::Rect.

v0.30.2

Compare Source

  • Fixed robust context creation with EGL.
  • Moved to stable version of wayland-sys.
  • Allow offline renderers with CGL.
  • Fixed an error when compiling the EGL backend with only one of Wayland and X11 enabled.

v0.30.1

Compare Source

  • Add X11VisualInfo::visual_id to get XID of the visual.
  • Added support for EGL on Windows using Angle. This assumes libEGL.dll/libGLESv2.dll present.
  • EGL's Display::create_pbuffer_surface() no longer sets the invalid RENDER_BUFFER attribute.

v0.30.0

Compare Source

  • This version of glutin has been rewritten from the ground and no longer depends on winit, the raw-window-handle is now used instead of it.
  • The Api is now built around Display, Surface, Config, and Surface. For more info see crate documentation and examples.
  • Breaking: Bump MSRV from 1.57 to 1.60.
  • The ios support was removed for the lack of maintenance for now. In case there's a need for it, contributions are welcome.
  • The context creation is no longer limited to winit's supported platforms.
  • The underlying Api providers are publicly exposed now, so glutin could be used with just e.g. EGL.
  • Fixed soundness issues with Surface MT safety, since before EGLSurface could be sent to a different thread, which is not safe.
  • Fallback to Surface::swap_buffers when Surface::swap_buffers_with_damage is not supported on EGL.

Configuration

📅 Schedule: Branch creation - "before 4am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@iceiix
Copy link
Owner

iceiix commented Sep 3, 2022

The first dependency update from Renovate, an alternative to Dependabot enabled in #668. Trying it out because it can be configured to create batch update pull requests on a monthly basis, which may be easier to maintain than lots of little pull requests. This PR matches up with Dependabot's glutin update to 0.29.1: #711 , but why did Renovate not also include updates to serde, serde_json, and winit like Dependabot did in #716 #715 #712?

Looks like the "Dependency Dashboard" at #709 has the answer: "Awaiting Schedule: These updates are awaiting their schedule.", but I'm not clear on why it only chose to update glutin, and why the other deps are pending and were not all batched together into one pr.

@renovate renovate bot changed the title fix(deps): update rust crate glutin to 0.29.1 fix(deps): update rust crate glutin to 0.30.0 Oct 26, 2022
@iceiix
Copy link
Owner

iceiix commented Nov 1, 2022

Failed due to a higher rustc version requirement, ought to get rebased with #743 Update to Rust 1.64.0

Note: Renovate since opened more PRs, on the last of the month (monthly schedule): #744 and #745.

@renovate renovate bot changed the title fix(deps): update rust crate glutin to 0.30.0 fix(deps): update rust crate glutin to 0.30.1 Nov 12, 2022
@renovate renovate bot force-pushed the renovate/glutin-0.x branch 3 times, most recently from dff53e6 to b99ef71 Compare November 27, 2022 00:35
@renovate renovate bot changed the title fix(deps): update rust crate glutin to 0.30.1 fix(deps): update rust crate glutin to 0.30.2 Nov 27, 2022
@renovate renovate bot changed the title fix(deps): update rust crate glutin to 0.30.2 fix(deps): update rust crate glutin to 0.30.3 Dec 7, 2022
@renovate renovate bot changed the title fix(deps): update rust crate glutin to 0.30.3 Update Rust crate glutin to 0.30.3 Dec 17, 2022
@renovate renovate bot changed the title Update Rust crate glutin to 0.30.3 fix(deps): update rust crate glutin to 0.30.3 Dec 17, 2022
@renovate renovate bot changed the title fix(deps): update rust crate glutin to 0.30.3 Update Rust crate glutin to 0.30.3 Dec 20, 2022
@iceiix
Copy link
Owner

iceiix commented Jan 1, 2023

Have since updated rustc to satisfy the minimum requirement, but there are API incompatibilities in this glutin update which would also need to be resolved:

error[E0433]: failed to resolve: could not find `ContextBuilder` in `glutin`
   --> src/main.rs:311:37
    |
311 |         let glutin_window = glutin::ContextBuilder::new()
    |                                     ^^^^^^^^^^^^^^ could not find `ContextBuilder` in `glutin`

error[E0433]: failed to resolve: could not find `GlRequest` in `glutin`
   --> src/main.rs:314:30
    |
314 |             .with_gl(glutin::GlRequest::GlThenGles {
    |                              ^^^^^^^^^ could not find `GlRequest` in `glutin`

error[E0433]: failed to resolve: could not find `GlProfile` in `glutin`
   --> src/main.rs:318:38
    |
318 |             .with_gl_profile(glutin::GlProfile::Core)
    |                                      ^^^^^^^^^ could not find `GlProfile` in `glutin`

error[E0433]: failed to resolve: could not find `Api` in `glutin`
   --> src/main.rs:335:21
    |
335 |             glutin::Api::OpenGl => "#version 150",      // OpenGL 3.2
    |                     ^^^ could not find `Api` in `glutin`

error[E0433]: failed to resolve: could not find `Api` in `glutin`
   --> src/main.rs:336:21
    |
336 |             glutin::Api::OpenGlEs => "#version 300 es", // OpenGL ES 3.0 (similar to WebGL 2)
    |                     ^^^ could not find `Api` in `glutin`

error[E0433]: failed to resolve: could not find `Api` in `glutin`
   --> src/main.rs:337:21
    |
337 |             glutin::Api::WebGl => {
    |                     ^^^ could not find `Api` in `glutin`

error[E0308]: mismatched types
   --> src/main.rs:519:17
    |
518 |             tick_all(
    |             -------- arguments to this function are incorrect
519 |                 winit_window,
    |                 ^^^^^^^^^^^^
    |                 |
    |                 expected `&winit::window::Window`, found struct `winit::window::Window`
    |                 help: consider borrowing here: `&winit_window`
    |

@renovate renovate bot changed the title Update Rust crate glutin to 0.30.3 Update Rust crate glutin to 0.30.4 Feb 7, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.30.4 Update Rust crate glutin to 0.30.5 Feb 11, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.30.5 Update Rust crate glutin to 0.30.6 Feb 12, 2023
@renovate renovate bot force-pushed the renovate/glutin-0.x branch 2 times, most recently from 3b49513 to 48cb94d Compare March 16, 2023 13:50
@renovate renovate bot changed the title Update Rust crate glutin to 0.30.6 Update Rust crate glutin to 0.30.7 Mar 17, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.30.7 Update Rust crate glutin to 0.30.8 May 29, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.30.8 Update Rust crate glutin to 0.30.9 Jun 16, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.30.9 Update Rust crate glutin to 0.30.10 Aug 6, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.30.10 Update Rust crate glutin to 0.31.0 Oct 22, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.31.0 Update Rust crate glutin to 0.31.1 Oct 30, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.31.1 Update Rust crate glutin to 0.31.2 Dec 23, 2023
@renovate renovate bot changed the title Update Rust crate glutin to 0.31.2 Update Rust crate glutin to 0.31.3 Feb 13, 2024
@renovate renovate bot changed the title Update Rust crate glutin to 0.31.3 Update Rust crate glutin to 0.31.0 May 5, 2024
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.

None yet

1 participant