emilk / egui

egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
https://www.egui.rs/
Apache License 2.0
21.7k stars 1.56k forks source link

Panic on startup #2699

Closed Barugon closed 1 year ago

Barugon commented 1 year ago

Describe the bug I performed a cargo update and now my project panics on startup:

thread 'main' panicked at 'failed to find a matching configuration for creating opengl context', /home/barugon/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.20.1/src/native/run.rs:389:18
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

This is on Fedora 37. Before running cargo update everything worked fine.

To Reproduce Steps to reproduce the behavior:

  1. Build and run attached project on Linux

testy.zip

Expected behavior Executes without any issues.

Barugon commented 1 year ago

2697 is very likely the cause.

emilk commented 1 year ago

Try egui 0.21 (just published) - it contains some improvements for setting up the OpenGL context (https://github.com/emilk/egui/pull/2526)

coderedart commented 1 year ago

maybe relevant to https://github.com/emilk/egui/issues/2661

If this is not fixed yet, can you try posting the log output of egui's hello_world example, along with output of glxinfo/eglinfo commands. as recommended in the other issue, also try running the glutin example and see if it crashes.

Ti64CLi commented 1 year ago

I had the same issue with creating an opengl context, and I confirm that using egui 0.21 fixed it

apoorv569 commented 1 year ago

I was having same problem but updating egui to v0.21.0 did not help me. I am now getting this error,

    Finished dev [unoptimized + debuginfo] target(s) in 2m 57s
     Running `target/debug/sample_hive_rs`
[13:10]─[INFO ] ▶ Initializing application, please wait.. ◀ [src/main.rs:34]
[13:10]─[TRACE] ▶ registering event source with poller: token=Token(0), interests=READABLE ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/mio-0.8.5/src/poll.rs:532]
thread 'main' panicked at 'failed to find a matching configuration for creating glutin config', /home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.21.0/src/native/run.rs:416:61
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Before I was getting exact same error as OP.

I tried clean build also deleted all cargo registry and re-build the project but no luck.

coderedart commented 1 year ago

@apoorv569

can you try posting the log output of egui's hello_world example, along with output of glxinfo/eglinfo commands. as recommended in the other issue, also try running the glutin example and see if it crashes.

  1. RUST_LOG=debug cargo run -p hello_world with latest egui master
  2. glxinfo
  3. RUST_LOG=debug cargo run --example=window with latest glutin master
apoorv569 commented 1 year ago

can you try posting the log output of egui's hello_world example, along with output of glxinfo/eglinfo commands. as recommended in the other issue, also try running the glutin example and see if it crashes.

Sure,

1. `RUST_LOG=debug cargo run -p hello_world` with latest egui master
egui on  master via 🦀 v1.65.0
 RUST_LOG=debug cargo run -p hello_world
Finished dev [unoptimized + debuginfo] target(s) in 0.35s
Running `target/debug/hello_world`
2023-02-10T08:13:43.811423Z DEBUG eframe: Using the glow renderer
2023-02-10T08:13:43.822910Z DEBUG eframe::native::run: Entering the winit event loop (run_return)…
2023-02-10T08:13:43.823141Z DEBUG eframe::native::run::glow_integration: trying to create glutin Display with config: ConfigTemplateBuilder { template: ConfigTemplate { color_buffer_type: Rgb { r_size: 8, g_size: 8, b_size: 8 }, alpha_size: 8, depth_size: 0, stencil_size: 0, num_samples: None, min_swap_interval: None, max_swap_interval: None, config_surface_types: WINDOW, api: None, transparency: false, single_buffering: false, stereoscopy: None, float_pixels: false, max_pbuffer_width: None, hardware_accelerated: None, max_pbuffer_height: None, native_window: None } }
2023-02-10T08:13:43.869357Z DEBUG eframe::native::run::glow_integration: using the first config from config picker closure. config: Glx(Config { inner: Config { raw: GlxConfig(0x55ab5c0b42c0), display: GlxDisplay(0x55ab5be57a70) } })
2023-02-10T08:13:43.870007Z  INFO winit::platform_impl::platform::x11::window: Guessed window scale factor: 1
2023-02-10T08:13:43.870027Z DEBUG winit::platform_impl::platform::x11::window: Calculated physical dimensions: 320x240
2023-02-10T08:13:43.870702Z DEBUG eframe::native::run::glow_integration: successfully created GL Display with version: GLX 1.4 and supported features: CONTEXT_ROBUSTNESS | CONTEXT_NO_ERROR | FLOAT_PIXEL_FORMAT | SWAP_CONTROL | CONTEXT_RELEASE_BEHAVIOR | CREATE_ES_CONTEXT | MULTISAMPLING_PIXEL_FORMATS | SRGB_FRAMEBUFFERS
2023-02-10T08:13:43.870711Z DEBUG eframe::native::run::glow_integration: creating gl context using raw window handle: Some(Xlib(XlibWindowHandle { window: 109051906, visual_id: 0 }))
2023-02-10T08:13:43.871524Z DEBUG eframe::native::run::glow_integration: running on_resume fn.
2023-02-10T08:13:43.871546Z DEBUG eframe::native::run::glow_integration: creating surface with attributes: SurfaceAttributes { srgb: None, single_buffer: false, width: Some(320), height: Some(240), largest_pbuffer: false, raw_window_handle: Some(Xlib(XlibWindowHandle { window: 109051906, visual_id: 0 })), native_pixmap: None, _ty: PhantomData<glutin::surface::WindowSurface> }
2023-02-10T08:13:43.871604Z DEBUG eframe::native::run::glow_integration: surface created successfully: Glx(Surface { display: GlxDisplay(0x55ab5be57a70), config: GlxConfig(0x55ab5c0b42c0), raw: 109051907, type: Window }).making context current
2023-02-10T08:13:43.874212Z DEBUG eframe::native::run::glow_integration: made context current. setting swap interval for surface
2023-02-10T08:13:43.875116Z DEBUG egui_glow::painter:
opengl version: 4.6 (Core Profile) Mesa 22.3.4
opengl renderer: AMD Radeon Graphics (renoir, LLVM 15.0.7, DRM 3.49, 6.1.8-artix1-1)
opengl vendor: AMD
2023-02-10T08:13:43.875135Z DEBUG egui_glow::shader_version: Shader version: Gl140 ("4.60").
2023-02-10T08:13:43.875142Z DEBUG egui_glow::painter: Shader header: "#version 140\n".
2023-02-10T08:13:43.875179Z DEBUG egui_glow::painter: SRGB texture Support: true
2023-02-10T08:13:43.879485Z DEBUG egui_glow::vao: GL version: "4.6 (Core Profile) Mesa 22.3.4".
2023-02-10T08:13:43.880272Z DEBUG egui_winit::clipboard: Initializing arboard clipboard…
2023-02-10T08:13:43.880675Z DEBUG egui_winit::clipboard: Cannot initialize smithay clipboard without a display handle
2023-02-10T08:13:48.919735Z DEBUG eframe::native::epi_integration: Received WindowEvent::CloseRequested
2023-02-10T08:13:48.919749Z DEBUG eframe::native::epi_integration: App::on_close_event returned true
2023-02-10T08:13:48.919752Z DEBUG eframe::native::run: Asking to exit event loop…
2023-02-10T08:13:48.931096Z DEBUG eframe::native::run: Asking to exit event loop…
2023-02-10T08:13:48.931133Z DEBUG eframe::native::run: Received Event::LoopDestroyed - saving app state…
2023-02-10T08:13:48.933051Z DEBUG eframe::native::run: eframe window closed
2. `glxinfo`

Its a pretty long output.. Do you want everything? Sharing a part of it ATM.

name of display: :0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context,
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
    GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample,
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
    GLX_EXT_get_drawable_type, GLX_EXT_libglvnd, GLX_EXT_no_config_context,
    GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating,
    GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, GLX_OML_swap_method,
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
    GLX_SGI_swap_control
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context,
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
    GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
    GLX_ATI_pixel_format_float, GLX_EXT_buffer_age,
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
    GLX_EXT_import_context, GLX_EXT_no_config_context, GLX_EXT_swap_control,
    GLX_EXT_swap_control_tear, GLX_EXT_texture_from_pixmap,
    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_INTEL_swap_event,
    GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer, GLX_MESA_swap_control,
    GLX_NV_float_buffer, GLX_OML_swap_method, GLX_OML_sync_control,
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
    GLX_SGI_swap_control, GLX_SGI_video_sync
GLX version: 1.4
GLX extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context,
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
    GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
    GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile,
    GLX_EXT_create_context_es_profile, GLX_EXT_fbconfig_packed_float,
    GLX_EXT_framebuffer_sRGB, GLX_EXT_no_config_context, GLX_EXT_swap_control,
    GLX_EXT_swap_control_tear, GLX_EXT_texture_from_pixmap,
    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_INTEL_swap_event,
    GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer, GLX_MESA_swap_control,
    GLX_OML_swap_method, GLX_OML_sync_control, GLX_SGIS_multisample,
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group,
    GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: AMD (0x1002)
    Device: AMD Radeon Graphics (renoir, LLVM 15.0.7, DRM 3.49, 6.1.8-artix1-1) (0x164c)
    Version: 22.3.4
    Accelerated: yes
    Video memory: 2048MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 4.6
    Max compat profile version: 4.6
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 912 MB, largest block: 912 MB
    VBO free aux. memory - total: 6739 MB, largest block: 6739 MB
    Texture free memory - total: 912 MB, largest block: 912 MB
    Texture free aux. memory - total: 6739 MB, largest block: 6739 MB
    Renderbuffer free memory - total: 912 MB, largest block: 912 MB
    Renderbuffer free aux. memory - total: 6739 MB, largest block: 6739 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 2048 MB
    Total available memory: 8947 MB
    Currently available dedicated video memory: 912 MB
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon Graphics (renoir, LLVM 15.0.7, DRM 3.49, 6.1.8-artix1-1)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 22.3.4
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
    GL_AMD_conservative_depth, GL_AMD_depth_clamp_separate,
    GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced,
    GL_AMD_gpu_shader_int64, GL_AMD_multi_draw_indirect,
    GL_AMD_performance_monitor, GL_AMD_pinned_memory,
    GL_AMD_query_buffer_object, GL_AMD_seamless_cubemap_per_texture,
    GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax,
    GL_AMD_texture_texture4, GL_AMD_vertex_shader_layer,
    GL_AMD_vertex_shader_viewport_index, GL_ANGLE_texture_compression_dxt3,
    GL_ANGLE_texture_compression_dxt5, GL_ARB_ES2_compatibility,
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility,
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance,
    GL_ARB_bindless_texture, GL_ARB_blend_func_extended,
    GL_ARB_buffer_storage, GL_ARB_clear_buffer_object, GL_ARB_clear_texture,
    GL_ARB_clip_control, GL_ARB_color_buffer_float,
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader,
    GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted,
    GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image,
    GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float,
    GL_ARB_depth_clamp, GL_ARB_derivative_control, GL_ARB_direct_state_access,
    GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend,
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect,
    GL_ARB_draw_instanced, GL_ARB_enhanced_layouts,
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location,
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport,
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments,
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB,
    GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv,
    GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64,
    GL_ARB_half_float_pixel, GL_ARB_half_float_vertex,
    GL_ARB_indirect_parameters, GL_ARB_instanced_arrays,
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2,
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment,
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect,
    GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile,
    GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object,
    GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp,
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex,
    GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior,
    GL_ARB_robustness, GL_ARB_sample_shading, GL_ARB_sampler_objects,
    GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture,
    GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops,
    GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot,
    GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote,
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size,
    GL_ARB_shader_objects, GL_ARB_shader_precision,
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object,
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples,
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array,
    GL_ARB_shading_language_420pack, GL_ARB_shading_language_include,
    GL_ARB_shading_language_packing, GL_ARB_sparse_buffer,
    GL_ARB_sparse_texture, GL_ARB_sparse_texture2,
    GL_ARB_sparse_texture_clamp, GL_ARB_spirv_extensions,
    GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader,
    GL_ARB_texture_barrier, GL_ARB_texture_buffer_object,
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range,
    GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc,
    GL_ARB_texture_cube_map_array, GL_ARB_texture_filter_anisotropic,
    GL_ARB_texture_float, GL_ARB_texture_gather,
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_multisample,
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels,
    GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg,
    GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8,
    GL_ARB_texture_storage, GL_ARB_texture_storage_multisample,
    GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query,
    GL_ARB_transform_feedback2, GL_ARB_transform_feedback3,
    GL_ARB_transform_feedback_instanced,
    GL_ARB_transform_feedback_overflow_query, GL_ARB_uniform_buffer_object,
    GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object,
    GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding,
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_shader,
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev,
    GL_ARB_viewport_array, GL_ATI_blend_equation_separate, GL_ATI_meminfo,
    GL_ATI_texture_float, GL_ATI_texture_mirror_once,
    GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr,
    GL_EXT_blend_equation_separate, GL_EXT_debug_label,
    GL_EXT_demote_to_helper_invocation, GL_EXT_depth_bounds_test,
    GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_framebuffer_blit,
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled,
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_memory_object,
    GL_EXT_memory_object_fd, GL_EXT_packed_depth_stencil, GL_EXT_packed_float,
    GL_EXT_pixel_buffer_object, GL_EXT_polygon_offset_clamp,
    GL_EXT_provoking_vertex, GL_EXT_semaphore, GL_EXT_semaphore_fd,
    GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store,
    GL_EXT_shader_integer_mix, GL_EXT_shader_samples_identical,
    GL_EXT_texture_array, GL_EXT_texture_compression_dxt1,
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc,
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_integer,
    GL_EXT_texture_mirror_clamp, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8,
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod,
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm,
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback,
    GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit,
    GL_EXT_window_rectangles, GL_IBM_multimode_draw_arrays,
    GL_INTEL_blackhole_render, GL_KHR_blend_equation_advanced,
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error,
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior,
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr,
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y,
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions,
    GL_MESA_texture_signed_rgba, GL_NVX_gpu_memory_info,
    GL_NV_alpha_to_coverage_dither_control, GL_NV_compute_shader_derivatives,
    GL_NV_conditional_render, GL_NV_copy_image, GL_NV_depth_clamp,
    GL_NV_packed_depth_stencil, GL_NV_shader_atomic_int64,
    GL_NV_texture_barrier, GL_NV_vdpau_interop, GL_OES_EGL_image, GL_S3_s3tc
3. `RUST_LOG=debug cargo run --example=window` with latest glutin master
glutin on  master via 🦀 v1.67.1 took 56s
 RUST_LOG=debug cargo run --example=window
Finished dev [unoptimized + debuginfo] target(s) in 0.12s
Running `target/debug/examples/window`
Picked a config with 0 samples
Running on AMD Radeon Graphics (renoir, LLVM 15.0.7, DRM 3.49, 6.1.8-artix1-1)
OpenGL Version 4.6 (Core Profile) Mesa 22.3.4
Shaders version on 4.60

Both example ran fine no crash or anything.

coderedart commented 1 year ago

ah, nice. everything is running as it should.

you can try setting up logging in your app and post the output to find why your app is crashing.

if you are using a custom native_settings, then that's probably the most likely cause.

apoorv569 commented 1 year ago

ah, nice. everything is running as it should.

you can try setting up logging in your app and post the output to find why your app is crashing.

if you are using a custom native_settings, then that's probably the most likely cause.

In my first reply here, I posted the log only, including the panic message.

I am using NativeOptions,

    // Set window options
    let window_options = NativeOptions {
        decorated: false,
        drag_and_drop_support: true,
        initial_window_size: Some(egui::vec2(1280.0, 720.0)),
        min_window_size: Some(egui::vec2(1024.0, 768.0)),
        resizable: true,
        transparent: true,
        vsync: true,
        multisampling: 8,
        hardware_acceleration: HardwareAcceleration::Preferred,
        follow_system_theme: true,
        centered: true,
        ..Default::default()
    };

Removing multisampling fixed it. I don't need it anyway because I don't have anything 3D in my application.

BTW, I am now getting bunch of these trace log messages

[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]
[16:52]─[TRACE] ▶ block_on() ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:108]
[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]
[16:52]─[TRACE] ▶ block_on() ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:108]
[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]
[16:52]─[TRACE] ▶ block_on() ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:108]
[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on() ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:108]
[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]
[16:52]─[TRACE] ▶ block_on() ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:108]
[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ block_on: sleep until notification ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:221]
[16:52]─[TRACE] ▶ Clipboard server window is being destroyed x_x ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/arboard-3.2.0/src/platform/linux/x11.rs:738]
[16:52]─[TRACE] ▶ block_on() ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:108]
[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]
[16:52]─[TRACE] ▶ block_on() ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:108]
[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]
[16:52]─[TRACE] ▶ remove: epoll_fd=13, fd=12 ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/polling-2.5.2/src/epoll.rs:105]
[16:52]─[TRACE] ▶ block_on: completed ◀ [/home/apoorv/.local/share/cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.12.0/src/driver.rs:147]

I didn't see them before updating to 0.21.0.

coderedart commented 1 year ago

for some reason, your logs don't show any of the eframe logs (except for one line about arboard).

anyway, those logs about block_on are from async-io crate, probably pulled by async-std / smol packages. nothing to do with egui.

regarding the multi sampling option, if you really wanted it in future, you can check what visual/fbconfg is actually supported by your system using glxinfo.

I think with that, the only remaining question is if egui 0.21 fixes issues for @Barugon . and then we can close this issue.

kchibisov commented 1 year ago

transparent: true, vsync: true, multisampling: 8,

There're no configs with multisampling and alpha visual (transparent) at the same time on X11 most of the time. So you either have a transparent window or multisampling. It's expected that you don't have such config. Maybe nvidia provides with such things, but not mesa for sure. In general when it comes to multisampling, you should pick config with it after the matching the config(on macOS you must do that before though).

The output from glxinfo you've posted is completely useless, most of the time you're asked about configs when configs are not matched(table like thing with y/n/some numbers).

So I don't see an issue here, just config you want don't exist on the system, nothing egui can do, you should have fallbacks in you app.

Barugon commented 1 year ago

I think with that, the only remaining question is if egui 0.21 fixes issues for @Barugon . and then we can close this issue.

It does fix it for me. However, you might want to pull v0.20 from crates.io as it is broken.

Barugon commented 1 year ago

Why are you publishing Cargo.lock anyway?

bschwind commented 1 year ago

Try egui 0.21 (just published) - it contains some improvements for setting up the OpenGL context (https://github.com/emilk/egui/pull/2526)

Hi @emilk, sorry for jumping on the comment section in this issue, I didn't want to open another one. Could you publish the 0.21 version of the egui-glium crate please? It's currently at v0.20.1 on crates.io, but the latest seems to be v0.21.

emilk commented 1 year ago

@bschwind egui_glium is looking for a new maintainer: