I would like to finish add `mapWithResource` to pekko in M1 too, I think I can finish it this weekend.
何品 Matthew de Detrich <matthew.dedetr...@aiven.io.invalid> 于2024年1月10日周三 08:08写道: > So I have some good news for one of the big ticket items listed earlier, > Pekko is now using the latest version of sbt-osgi which contains a lot of > fixes and > improvements, see https://github.com/apache/incubator-pekko/pull/920. This > avoids > us having to drop sbt-osgi support (doing so is not off the table > completely but should > be made as a community decision later). Also > https://github.com/apache/incubator-pekko/pull/252 > landed which is important since it's a behavioural change. > > I would say the only other big item that should be handled before an M1 > vote is > finishing off the inliner changes, > https://github.com/apache/incubator-pekko/pull/587 > and the migration of akka to pekko clusters. A milestone release of these > changes > will provide ample opportunity for extensive testing to make sure as much > as possible > that the full release is without issues. I left out multi-release-jar > support, my feeling is > that this is too big of a change for M1 but It might make sense as an M2 > or as part of 1.2.x. > > If there is anything that's left out please mention it. > > On Sun, Dec 24, 2023 at 7:42 AM kerr <hepin1...@gmail.com> wrote: > > > +1 for this, IIRC Matthew suggested this kind of release too. > > 何品 > > > > > > Matthew de Detrich <matthew.dedetr...@aiven.io.invalid> 于2023年12月13日周三 > > 07:06写道: > > > > > Apologies for necroing this topic, but there is one other feature I > would > > > like to add to the M1 > > > milestone release which is > > > https://github.com/apache/incubator-pekko/pull/252. The reason I > > > am pointing out this issue specifically is that it is a breaking > > behaviour > > > change (all of the > > > details are in the PR) so it needs to land for the 1.1.x series, > ideally > > > for M1 so we can figure > > > out if there are any behavioural regressions. > > > > > > On Mon, Nov 6, 2023 at 8:40 PM Matthew de Detrich < > > > matthew.dedetr...@aiven.io> wrote: > > > > > > > > Some of those changes will likely also need backporting for > > > > 1.0.x releases. > > > > > > > > Indeed, the rolling migration from Akka to Pekko clusters is > actually a > > > > feature for 1.0.x, but because > > > > of how its designed (i.e. there is a configuration for the > > > sender/receiver > > > > address), this feature and > > > > configuration also needs to exist for Pekko 1.1.0 otherwise the user > > > > experience will be extremely > > > > unintuitive. > > > > > > > > > I don't think a 1.1.0-M0 is warranted. This git tag has code that > is > > > > very similar to Pekko 1.0.1. I don't see the merit in having multiple > > > > ASF contributors having to review such a release. > > > > > > > > It trivializes MiMa management which is worth the annoyance of doing > a > > > > release. There really > > > > isn't any other way without breaking ASF policy, we basically have to > > > make > > > > a release that is > > > > not a "real" release. > > > > > > > > One thing to note is this doesn't occur that frequently (i.e. M0 > > > > milestones), i.e. its only on a > > > > minor version bump and it can be argued that this release can be part > > of > > > > the formality of > > > > when we decide to make a 1.1.x branch, i.e. the community makes a > > > > decision/vote that > > > > at a certain point in time we are going to bump the minor version > which > > > > requires a vote > > > > and that some vote is also used for the M0 release. > > > > > > > > In fact, now that I think/write about it, we really should have a > > formal > > > > vote when we make a > > > > minor version bump because it is a significant change, it shouldn't > be > > > > done at whim (even > > > > if its from a PMC) > > > > > > > > > When I say LTS, I mean what versions will get patches for a long > > time. > > > > Java releases are a good example. If an org really needs a Java 22 > > > > feature they can use Java 22 in production - but they are expected to > > > > upgrade to Java 23, etc. when those versions are released until a new > > > > Java LTS is released. There are other OSS equivalents. I am not > > > > talking about Commercial Support contracts - commercial entities are > > > > very welcome to fill this gap - this does not need to relate directly > > > > to the FOSS releases from the ASF project team. > > > > > > > > I understand the difference between LTS and commercial contract, it's > > > just > > > > that > > > > even the variables for how long the support is, is something that I > > don't > > > > think > > > > we have any ability to estimate concretely now. In summary, in my > view > > > > it's too > > > > soon to even be discussing this. > > > > > > > > > If the consensus is to delay Pekko 1.1 until every candidate change > > is > > > > made - then fine - but this stops users from using features that are > > > > ready to try, like the Netty 4 support. > > > > > > > > As discussed on the github issue[1], this is a non issue. A milestone > > > > release > > > > will cater to anyone who really needs netty4 and as stated, it's just > > as > > > > tested > > > > as any other Pekko release is. If people are really desperate for > > netty4, > > > > then > > > > they can use the milestone (I would also note that I haven't seen any > > > > indication that anyone is begging for netty4 right now). > > > > > > > > > Since Pekko 1.1.0 full release seems like a long way away, it might > > be > > > > worth considering mechanisms to release the most useful changes > > > > earlier - in a way that Pekko 1.0 users can uptake. > > > > > > > > This is what milestones are for, i.e. they are precisely the > mechanism > > > > to solve this issue. It also solves a host of other issues as > discussed > > > > here[2]. > > > > > > > > [1] https://github.com/apache/incubator-pekko/pull/778 > > > > [2] https://lists.apache.org/thread/o494q89hhg64r5nwv4rnq6fsx9zofmny > > > > > > > > On Sun, Nov 5, 2023 at 10:57 PM PJ Fanning <fannin...@gmail.com> > > wrote: > > > > > > > >> I have no objections to the general list of changes that we need for > > > >> 1.1.0. Some of those changes will likely also need backporting for > > > >> 1.0.x releases. > > > >> > > > >> A 1.1.0-M1 release makes sense. I want to delay it by a week or 2 > > > >> while we decide what to do about the config logging (recent Akka > CVE). > > > >> > > > >> I don't think a 1.1.0-M0 is warranted. This git tag has code that is > > > >> very similar to Pekko 1.0.1. I don't see the merit in having > multiple > > > >> ASF contributors having to review such a release. > > > >> > > > >> I guess it is a separate conversation but there is a fair degree of > > > >> resistance to us dropping support for anything. I think we will need > > > >> to only drop support if it really makes things much easier for us. > > > >> Multi Release Jars seems like a better option than dropping Java 8 > > > >> support (for instance). > > > >> > > > >> When I say LTS, I mean what versions will get patches for a long > time. > > > >> Java releases are a good example. If an org really needs a Java 22 > > > >> feature they can use Java 22 in production - but they are expected > to > > > >> upgrade to Java 23, etc. when those versions are released until a > new > > > >> Java LTS is released. There are other OSS equivalents. I am not > > > >> talking about Commercial Support contracts - commercial entities are > > > >> very welcome to fill this gap - this does not need to relate > directly > > > >> to the FOSS releases from the ASF project team. > > > >> > > > >> If the consensus is to delay Pekko 1.1 until every candidate change > is > > > >> made - then fine - but this stops users from using features that are > > > >> ready to try, like the Netty 4 support. > > > >> > > > >> Since Pekko 1.1.0 full release seems like a long way away, it might > be > > > >> worth considering mechanisms to release the most useful changes > > > >> earlier - in a way that Pekko 1.0 users can uptake. > > > >> > > > >> > > > >> On Sun, 5 Nov 2023 at 12:59, Matthew de Detrich > > > >> <matthew.dedetr...@aiven.io.invalid> wrote: > > > >> > > > > >> > So my take on this > > > >> > > > > >> > - We should do milestones to solve the general problem you are > > > alluding > > > >> to, > > > >> > i.e. the M1 milestone that you suggest that we vote on (we should > > also > > > >> do > > > >> > the M0 milestone which is at the exact moment when a new bump to > > minor > > > >> > version is done, reasoning why is given in this thread[1]). I > would > > > >> argue > > > >> > that doing an M1 now is a good idea and then an M2 once other > > critical > > > >> > features land (such as inliner which is mentioned in the below > > point) > > > >> > - There are some critical features that need to be merged before a > > > >> release > > > >> > of 1.1.0 Pekko Core is ever made (and 1.1.0 Pekko core needs to be > > > >> released > > > >> > before any other 1.1.0 releases for the other modules) due to > > > technical > > > >> > reasons. On the top of my head the critical features so far are > the > > > >> > inliner[2] and rolling update migration of Akka to Pekko > > clusters[3]. > > > I > > > >> > think it's achievable to get [2] and [3] done in a few months > time, > > > but > > > >> we > > > >> > would have to focus on getting it over the line ([2] is already > > > "done", > > > >> it > > > >> > just needs a review and testing in downstream modules, [3] likely > > > needs > > > >> > more work and most of all testing so that it works as expected). > > > >> > - Regarding LTS, I don't think we should entertain the idea now. > We > > > >> have no > > > >> > idea of what and how an LTS can work and we don't even have the > > > capacity > > > >> > for it. It might even be a thing that LTS's are "someone else's" > > > problem > > > >> > (Pekko is open source after all). I think the most critical thing > is > > > >> > sticking to semantic versioning, such an expectation is manageable > > for > > > >> us > > > >> > and I would argue is kind of a requirement for large open source > > > >> projects > > > >> > like Pekko > > > >> > - Fixing the manager name [4] should also be fixed for 1.1.0 > > (actually > > > >> if > > > >> > anything this should be fixed for 1.0.x branch as well) > > > >> > - As kind of a stretch goal, sbt-multi-release-jar support for > > > 1.1.0[5] > > > >> > would be awesome as it would unblock a **lot** of things while > also > > > >> keeping > > > >> > part of the community happy > > > >> > - Releasing pekko 1.1.0 with the latest sbt-osgi (which apparently > > > >> fixes a > > > >> > lot of pain points versus the current osgi used in Pekko 1.0.x) > > would > > > be > > > >> > another nice stretch goal, currently there is one issue with > > duplicate > > > >> > classes but we now have infrastructure set up[6] so that we can > > > properly > > > >> > test such changes. > > > >> > > > > >> > Note that a lot of the underlying reasoning behind my points are > > also > > > >> > strategic, i.e. keeping features which can be considered critical > to > > > >> Pekko > > > >> > and/or current Akka users which don't require to much effort > > > (basically > > > >> > anything that gives a reason for people to use/migrate to Pekko > > while > > > >> not > > > >> > breaking the i.e. our bank so to speak). I know that there has > been > > a > > > >> push > > > >> > to do things like drop JDK 8, Scala 2.12, osgi etc etc due to > death > > > by a > > > >> > thousand cuts but tbh objectively speaking these issues are not > > taking > > > >> up > > > >> > that much time (at least personally by far the largest amount of > > time > > > >> spent > > > >> > is just overhead of having to do so many releases and validate > them, > > > >> really > > > >> > looking forward to the day when we can automate everything with > > > >> > sbt-reproducible-builds/jardiff/create jars in ci etc etc). Pekko > > > 2.0.x > > > >> > series is when we can look forward to drop a lot of this "annoying > > > >> > maintenance" stuff and I would actually strongly argue that at the > > > time > > > >> > when we start looking at Pekko 2.0.x we actually get a better idea > > of > > > >> what > > > >> > our Pekko users look like, because as has been shown due to the > > chaos > > > >> > created from the license change very few us had any somewhat > > realistic > > > >> lens > > > >> > as to how the Pekko community (specifically users) look like, i.e. > > > while > > > >> > the OS would **LOVE** to get rid of JDK 1.8 support it just so > > happens > > > >> that > > > >> > a lot of people still need to use JDK 1.8 and even though there > are > > > >> reasons > > > >> > to move away from 1.8 evidently they aren't relevant. > > > >> > > > > >> > [1] > > https://lists.apache.org/thread/o494q89hhg64r5nwv4rnq6fsx9zofmny > > > >> > [2] https://github.com/apache/incubator-pekko/pull/305 > > > >> > [3] https://github.com/apache/incubator-pekko/pull/765 > > > >> > [4] https://github.com/apache/incubator-pekko/pull/587 > > > >> > [5] https://github.com/sbt/sbt-multi-release-jar/issues/22 > > > >> > [6] https://github.com/apache/incubator-pekko/issues/75 > > > >> > > > > >> > On Sun, Nov 5, 2023 at 12:12 PM PJ Fanning <fannin...@apache.org> > > > >> wrote: > > > >> > > > > >> > > The core pekko repo [1] has quite a few changes in its main > branch > > > >> that > > > >> > > are are targeted at a future 1.1.0 release. > > > >> > > > > > >> > > We haven't really agreed on what to do with the code that was > > > already > > > >> > > deprecated in the Akka era and there is also the issue of the > > > >> ApiMayChange > > > >> > > annotations on some of the APIs. > > > >> > > > > > >> > > There are also some new features that developers want to add. > > > >> > > > > > >> > > We don't have a great deal of developer effort available to us. > > > >> > > > > > >> > > I suspect that we need to need to balance the need to release > some > > > of > > > >> the > > > >> > > 1.1 changes and then maybe try to make another batch of changes > in > > > >> Pekko > > > >> > > 1.2. > > > >> > > > > > >> > > What if we aimed to do a Pekko 1.1.0 release in a few months and > > > said > > > >> that > > > >> > > it was not a Long Term Support release? If we go down this line, > > we > > > >> would > > > >> > > probably want to have a tentative plan as to when a new LTS > > release > > > >> would > > > >> > > happen. > > > >> > > > > > >> > > An example of something that would be useful to release would be > > the > > > >> > > netty4 support. I know that the Apache Flink team would like to > > use > > > >> this. > > > >> > > > > > >> > > Alternatively, we could do a Pekko 1.1.0-M1 release. I suspect > > that > > > we > > > >> > > would end up with a fair number of these and the M version > number > > > >> would > > > >> > > discourage uptake (except for testing). > > > >> > > > > > >> > > What are people's thoughts on the options? > > > >> > > > > > >> > > > > > >> > > > > > >> > > [1] https://github.com/apache/incubator-pekko > > > >> > > > > > >> > > > > > --------------------------------------------------------------------- > > > >> > > To unsubscribe, e-mail: dev-unsubscr...@pekko.apache.org > > > >> > > For additional commands, e-mail: dev-h...@pekko.apache.org > > > >> > > > > > >> > > > > > >> > > > > >> > -- > > > >> > > > > >> > Matthew de Detrich > > > >> > > > > >> > *Aiven Deutschland GmbH* > > > >> > > > > >> > Immanuelkirchstraße 26, 10405 Berlin > > > >> > > > > >> > Alexanderufer 3-7, 10117 Berlin > > > >> > > > > >> > Amtsgericht Charlottenburg, HRB 209739 B > > > >> > > > > >> > Geschäftsführer: Oskari Saarenmaa & Hannu Valtonen > > > >> > > > > >> > *m:* +491603708037 > > > >> > > > > >> > *w:* aiven.io *e:* matthew.dedetr...@aiven.io > > > >> > > > >> > --------------------------------------------------------------------- > > > >> To unsubscribe, e-mail: dev-unsubscr...@pekko.apache.org > > > >> For additional commands, e-mail: dev-h...@pekko.apache.org > > > >> > > > >> > > > > > > > > -- > > > > > > > > Matthew de Detrich > > > > > > > > *Aiven Deutschland GmbH* > > > > > > > > Immanuelkirchstraße 26, 10405 Berlin > > > > > > > > Alexanderufer 3-7, 10117 Berlin > > > > > > > > Amtsgericht Charlottenburg, HRB 209739 B > > > > > > > > Geschäftsführer: Oskari Saarenmaa & Hannu Valtonen > > > > > > > > *m:* +491603708037 > > > > > > > > *w:* aiven.io *e:* matthew.dedetr...@aiven.io > > > > > > > > > > > > > -- > > > > > > Matthew de Detrich > > > > > > *Aiven Deutschland GmbH* > > > > > > Immanuelkirchstraße 26, 10405 Berlin > > > > > > Alexanderufer 3-7, 10117 Berlin > > > > > > Amtsgericht Charlottenburg, HRB 209739 B > > > > > > Geschäftsführer: Oskari Saarenmaa & Hannu Valtonen > > > > > > *m:* +491603708037 > > > > > > *w:* aiven.io *e:* matthew.dedetr...@aiven.io > > > > > > > > -- > > Matthew de Detrich > > *Aiven Deutschland GmbH* > > Immanuelkirchstraße 26, 10405 Berlin > > Alexanderufer 3-7, 10117 Berlin > > Amtsgericht Charlottenburg, HRB 209739 B > > Geschäftsführer: Oskari Saarenmaa & Hannu Valtonen > > *m:* +491603708037 > > *w:* aiven.io *e:* matthew.dedetr...@aiven.io >