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

Zig tracking issue #58

Open
zenith391 opened this issue Sep 17, 2023 · 0 comments
Open

Zig tracking issue #58

zenith391 opened this issue Sep 17, 2023 · 0 comments

Comments

@zenith391
Copy link
Member

zenith391 commented Sep 17, 2023

This is a tracking issue for upstream Zig. (see Third Party Tracking Issues)
Overall, Zig is really great and its cross-compilation abilities are great for GUIs, but some (planned) proposals and bug fixes would make it better:

  • async/await (regression introduced in stage2). A lot of tasks in user interfaces are asynchronous, whether it's loading a resource or updating data on a remote server, async is important to have. Right now I'm having hacky solutions with capy.http which has an async-looking API but is actually synchronous and capy.assets which is entirely synchronous as of now, including when fetching resources over HTTP.
  • issue #12325 (regression introduced in stage2) is blocking me from having event handlers like fn buttonClicked(button: *capy.Button) !void instead of a more generic fn buttonClicked(button: *anyopaque) !void. Having to manually @ptrCast decreases the ease of use of the API.
  • The compiler crashes while trying to generate capy's documentation
  • (maybe) issue #1717, while it's been closed as not implemented, it would be useful in a lot of cases like Atom.dependOn instead of using the bizarre status quo of struct { fn a() void {} }.a
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