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

Add Go 1.19 support #1140

Closed
nevkontakte opened this issue Aug 17, 2022 · 14 comments
Closed

Add Go 1.19 support #1140

nevkontakte opened this issue Aug 17, 2022 · 14 comments
Labels
NeedsHelp Community contributions are welcome for this feature!

Comments

@nevkontakte
Copy link
Member

Go 1.19 was released last week and we should begin work on supporting it.

Skimming through the release notes, the following changes seem relevant to us:

I hope that supporting it won't be too much work, although I suspect that generics might have started infiltrating the standard library, in which case we'll have to double down on #1013 first.

@nevkontakte nevkontakte mentioned this issue Aug 18, 2022
5 tasks
@nevkontakte nevkontakte pinned this issue Aug 18, 2022
@KiddoV
Copy link

KiddoV commented Aug 26, 2022

Any update on this?

@nevkontakte
Copy link
Member Author

@KiddoV only that it will happen at some point. I am currently writing a guide for how to add new Go version support in a hope that someone from community would step up and help us out. If no volunteers appear, I will probably work on 1.19 only after generics. Please let me know if you are interested in contributing 🙂

@nevkontakte nevkontakte added the NeedsHelp Community contributions are welcome for this feature! label Aug 28, 2022
@nevkontakte nevkontakte added this to the Go spec compliance milestone Aug 28, 2022
@nevkontakte
Copy link
Member Author

In a hope to inspire more contributions I wrote a guide to supporting new Go versions in GopherJS. I would appreciate feedback on what may be unclear (especially to the non-maintainer folks) or can be phrased better (English isn't my native language ¯_(ツ)_/¯).

The draft is available here, and should be accessible by anyone (ping me if you are having issues): https://docs.google.com/document/d/1QD_jl9G1jwL2ye_ZeFMtqIEEYZ9cNIHbV3n3R4pXdYA/edit?usp=sharing. I intend to move it into the github wiki, once the feedback is gathered and addressed.

@chenrui333
Copy link

chenrui333 commented Feb 22, 2023

Now Golang is with 1.20, and go1.18.x is unsupported.

@nevkontakte
Copy link
Member Author

Hi @chenrui333, I am acutely aware of this :) Unfortunately, I have only limited amount of time for open source work, and all of it is currently going towards adding generics support. If you have some spare time and the desire to contribute support for Go 1.19+ - let me know, I'll be happy to provide pointers and advice.

@ghostsquad
Copy link

Would love to know if this is in progress or not!

@flimzy
Copy link
Member

flimzy commented Jun 28, 2023

Indeed there is progress being made. Just a few hours ago, a PR was merged into our branch adding generics support.

Of course, generics is a complicated thing to add, and it's being done virtually entirely by @nevkontakte in his free time, so patience is appreciated!

@ghostsquad
Copy link

Thank you for the update! I'm excited for this change.

@grantnelson-wf
Copy link
Contributor

We have been working on a generic-less Go 1.19. It is getting close to being done. See the go1.19 branch.

@flimzy
Copy link
Member

flimzy commented Feb 15, 2024

I suppose we should discuss how to label GopherJS 1.19, and what that means to the support of 1.17 and 1.18.

What makes most sense to me, having not spent much time thinking about it:

  • Release GopherJS 1.19 as a beta release (same as we did for 1.18)
  • Continue to support 1.17 and 1.18, until generics are done, then we can drop 1.17, and likely 1.18 very quickly after.

@nevkontakte
Copy link
Member Author

I agree with @flimzy, although I feel like supporting 1.18 would seem redundant after 1.19-beta release. In the other news, my alternate generics branch is very close to fully supporting generics at a single-package level, after which multi-package support is quite straightforward. So I have high hopes for a full 1.19 very soon.

@nevkontakte
Copy link
Member Author

Also I've looked through the release notes and it seems like the work @grantnelson-wf has done covers everything that doesn't depend on generics. Unless anyone objects, we should be good to merge it into master and publish 1.19-beta1 release.

@flimzy
Copy link
Member

flimzy commented Feb 19, 2024

I think that's fine. So we'll have 1.17 (stable) and 1.19 (beta) under active support for the time being.

No objections from me for merging/tagging 1.19-beta1.

@nevkontakte
Copy link
Member Author

Thanks to @grantnelson-wf efforts, Go 1.19 support (sans generics) has been released. #1270 will track work on 1.20. Work on generics is ongoing in #1013.

@nevkontakte nevkontakte unpinned this issue Feb 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NeedsHelp Community contributions are welcome for this feature!
Projects
None yet
Development

No branches or pull requests

6 participants