So currently there is a PR open at https://github.com/apache/incubator-pekko/pull/270 which still uses an RC however the full release is expected this week, at which point I will bump the PR, see that it passes tests and just merge.
-- Matthew de Detrich Aiven Deutschland GmbH Immanuelkirchstraße 26, 10405 Berlin Amtsgericht Charlottenburg, HRB 209739 B Geschäftsführer: Oskari Saarenmaa & Hannu Valtonen m: +491603708037 w: aiven.io e: matthew.dedetr...@aiven.io On 23. May 2023 at 09:07 +0200, Claude Warren, Jr <claude.war...@aiven.io.invalid>, wrote: > Is there still a dependency here on an RC package? With the focus on > trying to get a release out we need to ensure that the codebase does not > contain any dependencies on RC or SNAPSHOT type code. > > On Mon, May 15, 2023 at 10:28 AM Matthew Benedict de Detrich > <matthew.dedetr...@aiven.io.invalid> wrote: > > > Informing everyone that Scala 3.3 RC6 was just released and unless there > > are any problems this will be the last Scala 3.3 RC release with the proper > > LTS release planning to come out in around a week (see > > > > https://contributors.scala-lang.org/t/3-3-0-release-thread/6079/7?u=mdedetrich > > ). > > > > On Fri, Apr 21, 2023 at 10:14 PM Matthew Benedict de Detrich < > > matthew.dedetr...@aiven.io> wrote: > > > > > Also in case others aren't aware, I made a draft PR on Parboiled2 (which > > > is a direct dependency of pekko-http) against Scala 3.3-RC4 to see if > > there > > > are any potential issues. You can see it here > > > https://github.com/sirthias/parboiled2/pull/444. > > > > > > On Fri, Apr 21, 2023 at 7:30 PM Matthew Benedict de Detrich < > > > matthew.dedetr...@aiven.io> wrote: > > > > > > > On another note, Scala 3.3-RC4 just came out and assuming there are no > > > > problems then a full release will be made roughly end of April (see > > > > https://contributors.scala-lang.org/t/3-3-0-release-thread/6079/5) > > > > > > > > On Thu, Apr 20, 2023 at 5:15 PM kerr <hepin1...@gmail.com> wrote: > > > > > > > > > Akka just bump to 3.2.2 > > > > > > > > > > 何品 > > > > > > > > > > > > > > > Jean-Luc Deprez <jeanluc.dep...@gmail.com> 于2023年4月19日周三 16:00写道: > > > > > > > > > > > Those craving stability won't judge you for jumping to an LTS. Those > > on > > > > > > Scala 3 already are not those craving stability, hence would > > typically > > > > > not > > > > > > worry too much about having to jump to 3.3. > > > > > > > > > > > > So I think you get away with that. > > > > > > > > > > > > On Tue, Mar 28, 2023 at 9:35 AM Claude Warren, Jr > > > > > > <claude.war...@aiven.io.invalid> wrote: > > > > > > > > > > > > > My suggestion is go with the LTS version unless there is a > > > > > > > conflict > > > > > with > > > > > > a > > > > > > > dependency. > > > > > > > > > > > > > > On Mon, Mar 27, 2023 at 3:58 PM Matthew Benedict de Detrich > > > > > > > <matthew.dedetr...@aiven.io.invalid> wrote: > > > > > > > > > > > > > > > As we are finding out from the conversation in > > > > > > > > https://github.com/apache/incubator-pekko/pull/273 (A PR that > > > > > involves > > > > > > > > updating Jackson version due to CVE's/other complications which > > > > > forces > > > > > > an > > > > > > > > update to Scala 3.2 due to Jackson 2.14.2 only supporting Scala > > > > > 3.1) a > > > > > > > lot > > > > > > > > of the source/compiler warnings are from Scala 3.2, not Scala > > 3.3. > > > > > > > > > > > > > > > > If the PR lands, this means that the argument for avoiding > > > > > updating to > > > > > > > > Scala 3.3 due to syntax/source incompatibilities is weaker since > > > > > we are > > > > > > > > already forced to do the most of the same changes anyways. > > > > > Furthermore > > > > > > as > > > > > > > > can be seen from Jackson 2.14.2 not supporting older Scala 3 > > > > > versions > > > > > > it > > > > > > > > appears that some of the critical parts of the ecosystem are > > > > > updating > > > > > > > Scala > > > > > > > > 3 as it releases new minor versions rather than leaving it at > > older > > > > > > > > versions. > > > > > > > > > > > > > > > > On Fri, Mar 24, 2023 at 4:15 PM Matthew Benedict de Detrich < > > > > > > > > matthew.dedetr...@aiven.io> wrote: > > > > > > > > > > > > > > > > > > Good point also about 2.12 compatibility. It will become > > > > > harder to > > > > > > > > > support multiple Scala version the more the allowed syntax > > > > > differs. > > > > > > > > > > > > > > > > > > The reason why I did the PR was to actually confirm/deny > > whether > > > > > this > > > > > > > is > > > > > > > > > an issue, as shown in the PR its a non issue (assuming that > > > > > Scala 3.3 > > > > > > > > > doesn't add anything more between RC3 and release which is > > quite > > > > > > > likely) > > > > > > > > > > > > > > > > > > On Fri, Mar 24, 2023 at 3:52 PM Johannes Rudolph < > > > > > > > > > johannes.rudo...@gmail.com> wrote: > > > > > > > > > > > > > > > > > > > Just for the record, I also said not to do anything right > > > > > > > > > > now > > > > > about > > > > > > it > > > > > > > > :) > > > > > > > > > > > > > > > > > > > > Other than that, I mostly agree with Nicolas. Unless we are > > > > > forced > > > > > > to > > > > > > > > > > update Scala 3 we should *not* do it right now. The > > > > > > > > > > situation > > > > > might > > > > > > > > > > change in 6-12 months with widespread adoption to Scala 3.3 > > > > > > > > > > we > > > > > might > > > > > > > > > > just do it (because everyone does by then and updates will > > only > > > > > be > > > > > > > > > > available for 3.3 at some point in the future). > > > > > > > > > > > > > > > > > > > > Good point also about 2.12 compatibility. It will become > > harder > > > > > to > > > > > > > > > > support multiple Scala version the more the allowed syntax > > > > > differs. > > > > > > > > > > > > > > > > > > > > On Fri, Mar 24, 2023 at 1:31 PM Matthew Benedict de Detrich > > > > > > > > > > <matthew.dedetr...@aiven.io.invalid> wrote: > > > > > > > > > > > > > > > > > > > > > > > One precondition to upgrade to newer versions of Scala 3 > > > > > would > > > > > > be > > > > > > > > > > dropping > > > > > > > > > > > support for Scala 2.12. > > > > > > > > > > > Scala 2.13 at least has support for some of the Scala 3 > > Syntax > > > > > > with > > > > > > > > > > > compiler flags to cross compile. > > > > > > > > > > > > > > > > > > > > > > Are you talking about support on artifact level or on > > > > > > > > > > > syntax > > > > > > level? > > > > > > > > > > Afaik > > > > > > > > > > > there isn't any plan for Scala 3.3 to drop support for > > > > > > > > > > > Scala > > > > > 2.13 > > > > > > > > > > artifacts > > > > > > > > > > > (artifacts are completely separated from supported > > > > > > > > > > > syntax). > > > > > If we > > > > > > > are > > > > > > > > > > > talking about a hypothetical Scala 3 user of Pekko, the > > Scala3 > > > > > > > syntax > > > > > > > > > > that > > > > > > > > > > > Pekko happens to use will be irrelevant here. In other > > words, > > > > > if a > > > > > > > > user > > > > > > > > > > is > > > > > > > > > > > upgrading from Scala 3.1/Scala 3.2 to Scala 3.3 then they > > will > > > > > > have > > > > > > > to > > > > > > > > > > > upgrade the syntax of the source code irrespective of > > > > > > > > > > > Pekko. > > > > > If we > > > > > > > are > > > > > > > > > > > talking about difficulties of cross compiling for Scala > > > > > 3/Scala 2 > > > > > > > > within > > > > > > > > > > > Pekko itself I think we would have to see if there are any > > > > > syntax > > > > > > > > > > breaking > > > > > > > > > > > changes in this regard (I didn't see any for Scala 3.3 > > > > > > > > > > > but I > > > > > may > > > > > > > have > > > > > > > > > > > missed something). Since an RC for Scala 3.3 is out we can > > > > > pretty > > > > > > > > easily > > > > > > > > > > > figure out if this is going to be a problem right now. > > > > > > > > > > > > > > > > > > > > > > I think what Johannes said here is important, which is > > > > > > > > > > > that > > > > > > > currently > > > > > > > > > > there > > > > > > > > > > > aren't any users of Pekko Scala 3 and because of this we > > > > > really > > > > > > > > > > shouldn't > > > > > > > > > > > overthink it. And even then, if we do release Pekko with > > > > > Scala 3.3 > > > > > > > and > > > > > > > > > > some > > > > > > > > > > > hypothetical user is going to have problems because they > > > > > haven't > > > > > > > > > > upgrade to > > > > > > > > > > > Scala 3.3 yet, they can easily use the Pekko Scala 2.13 > > > > > artifact > > > > > > and > > > > > > > > > > since > > > > > > > > > > > we are not using any bespoke Scala 3 features in Pekko > > > > > currently > > > > > > on > > > > > > > a > > > > > > > > > > > source level the user is actually not going to notice any > > > > > > > difference. > > > > > > > > > > > > > > > > > > > > > > On Fri, Mar 24, 2023 at 1:18 PM Nicolas Vollmar < > > > > > > nvoll...@gmail.com > > > > > > > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > IMHO we should use the lowest supported version of > > > > > > > > > > > > Scala 3 > > > > > to > > > > > > not > > > > > > > > > > force > > > > > > > > > > > > user to upgrade to newer versions. > > > > > > > > > > > > > > > > > > > > > > > > Scala 3 continues to deprecate old syntax. Some of it > > > > > > > > > > > > will > > > > > > produce > > > > > > > > > > warnings > > > > > > > > > > > > in Scala 3.2 and may be removed in 3.3 or later. > > > > > > > > > > > > For example > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > https://dotty.epfl.ch/docs/reference/dropped-features/package-objects.html > > > > > > > > > > > > or > > > > > > > > > > https://dotty.epfl.ch/docs/reference/changed-features/imports.html > > > > > > > > > > > > > > > > > > > > > > > > One precondition to upgrade to newer versions of Scala 3 > > > > > would > > > > > > be > > > > > > > > > > dropping > > > > > > > > > > > > support for Scala 2.12. > > > > > > > > > > > > Scala 2.13 at least has support for some of the Scala 3 > > > > > Syntax > > > > > > > with > > > > > > > > > > > > compiler flags to cross compile. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Fri, 24 Mar 2023 at 10:26, Matthew Benedict de > > > > > > > > > > > > Detrich > > > > > > > > > > > > <matthew.dedetr...@aiven.io.invalid> wrote: > > > > > > > > > > > > > > > > > > > > > > > > > So some discussions on github are popping up regarding > > > > > which > > > > > > > > Scala 3 > > > > > > > > > > > > > version we should pick so I think it's time to discuss > > > > > this > > > > > > > > > > formally on > > > > > > > > > > > > the > > > > > > > > > > > > > mailing list. > > > > > > > > > > > > > > > > > > > > > > > > > > As a precursor one thing people need to understand is > > > > > that the > > > > > > > > > > Scala 3 > > > > > > > > > > > > > release cycle has changed, quoting from > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > https://github.com/apache/incubator-pekko/issues/6#issuecomment-1302701657 > > > > > > > > > > > > > > > > > > > > > > > > > > > Scala 2 used epoch.major.minor version convention. > > > > > Scala 3 > > > > > > has > > > > > > > > > > > > > major.minor.patch. > > > > > > > > > > > > > > > > > > > > > > > > > > > So there is no 3.0/3.1/3.2/etc cross-compilation - > > > > > > > > > > > > > > the > > > > > > > > assumption > > > > > > > > > > is > > > > > > > > > > > > > that: > > > > > > > > > > > > > > > > > > > > > > > > > > > * you can compile against the same minor version > > > > > > > > > > > > > > with > > > > > > > backward- > > > > > > > > > > and > > > > > > > > > > > > > forward-compatibility: 3.1.3 dependency against 3.1.0 > > > > > code, > > > > > > > 3.0.0 > > > > > > > > > > > > > dependency against 3.0.1 code, etc > > > > > > > > > > > > > > * within the same major version you always have > > > > > > > > > > backward-compatibility: > > > > > > > > > > > > > 3.1.3 dependency can be used in 3.1.3 project, but > > > > > > > > > > > > > also > > > > > 3.2.0 > > > > > > > > > > project and > > > > > > > > > > > > > in future against 3.3.0 project > > > > > > > > > > > > > > > > > > > > > > > > > > This means that if we pick a Scala version, we are > > > > > essentially > > > > > > > > > > forcing > > > > > > > > > > > > the > > > > > > > > > > > > > potential Scala 3 users of Pekko to bump their Scala 3 > > > > > version > > > > > > > to > > > > > > > > > > the > > > > > > > > > > > > minor > > > > > > > > > > > > > that we decide on. On surface value this means that we > > > > > should > > > > > > > pick > > > > > > > > > > the > > > > > > > > > > > > > lowest Scala 3 minor version that we can support > > > > > > > > > > > > > however > > > > > there > > > > > > > is > > > > > > > > > > the > > > > > > > > > > > > fact > > > > > > > > > > > > > that Scala 3.3 is going to come out soon which will be > > an > > > > > LTS > > > > > > > > > > release. > > > > > > > > > > > > The > > > > > > > > > > > > > LTS release means that if any bugs are found after > > > > > > > > > > > > > Scala > > > > > 3.3 > > > > > > > for a > > > > > > > > > > period > > > > > > > > > > > > > of 2 years, they will be backported to Scala 3.3. The > > big > > > > > > > > advantage > > > > > > > > > > this > > > > > > > > > > > > > brings us, is that it allows us to freely bump Scala > > > > > > > > > > > > > 3.3 > > > > > > without > > > > > > > > > > breaking > > > > > > > > > > > > > our users if any potential bugs are found in the > > > > > > > > > > > > > future. > > > > > If we > > > > > > > > > > decide to > > > > > > > > > > > > > stick with Scala 3.2 or 3.1 and some bug is found in > > > > > Scala 3 > > > > > > > later > > > > > > > > > > on > > > > > > > > > > > > that > > > > > > > > > > > > > affects us, we will have to update to a version of > > Scala 3 > > > > > > that > > > > > > > > will > > > > > > > > > > > > break > > > > > > > > > > > > > binary compatibility. This facet is of even more > > > > > importance > > > > > > when > > > > > > > > > > > > > considering our 1.0.x release branches, which are > > > > > designed to > > > > > > > > never > > > > > > > > > > break > > > > > > > > > > > > > binary/backwards compatibility, i.e. if we do 1.0.x > > > > > releases > > > > > > > with > > > > > > > > > > Scala > > > > > > > > > > > > > 3.1/3.2 and some critical bug/CVE comes out later we > > could > > > > > > > > > > potentially be > > > > > > > > > > > > > forced to update the minor version which would break > > this > > > > > > > > > > > > binary/backwards > > > > > > > > > > > > > compatibility, this wouldn't be the case with Scala > > > > > > > > > > > > > 3.3 > > > > > (for a > > > > > > > > > > certain > > > > > > > > > > > > > period of time). > > > > > > > > > > > > > > > > > > > > > > > > > > Of course the counter argument to using Scala 3.3 is > > that > > > > > it > > > > > > > would > > > > > > > > > > force > > > > > > > > > > > > > all potential Pekko users (and the transitive set of > > > > > Scala 3 > > > > > > > > > > libraries > > > > > > > > > > > > for > > > > > > > > > > > > > that Pekko user) to also use/support Scala 3.3. > > > > > Unfortunately > > > > > > > its > > > > > > > > > > not > > > > > > > > > > > > > possible to get download stats from Sonatype for > > > > > artifacts you > > > > > > > > don't > > > > > > > > > > > > > maintain, but I wouldn't say its a controversial > > statement > > > > > > that > > > > > > > > the > > > > > > > > > > > > amount > > > > > > > > > > > > > of people that use Akka long with Scala 3 would be a > > tiny > > > > > > > minority > > > > > > > > > > (this > > > > > > > > > > > > is > > > > > > > > > > > > > also regarding other factors, i.e. the typical > > > > > demographic of > > > > > > > Akka > > > > > > > > > > > > users). > > > > > > > > > > > > > Ontop of this we need to take into account the delay > > > > > > > > > > > > > of > > > > > > current > > > > > > > > Akka > > > > > > > > > > > > users > > > > > > > > > > > > > migrating to Pekko, in other words by the time people > > > > > migrate > > > > > > to > > > > > > > > > > using > > > > > > > > > > > > > Pekko the fact that its using Scala 3.3 LTS would > > > > > > > > > > > > > likely > > > > > be a > > > > > > > non > > > > > > > > > > concern > > > > > > > > > > > > > at that point in time. > > > > > > > > > > > > > > > > > > > > > > > > > > And finally another thing to note is that even in the > > > > > worst > > > > > > case > > > > > > > > > > > > scenario, > > > > > > > > > > > > > nothing is stopping users from using Scala 2 artifacts > > > > > from > > > > > > > within > > > > > > > > > > Scala > > > > > > > > > > > > 3 > > > > > > > > > > > > > (this is perfectly supported and has been for a > > > > > > > > > > > > > while). > > > > > Afaik > > > > > > > the > > > > > > > > > > current > > > > > > > > > > > > > Scala 3 version of Akka/Pekko is not using any > > > > > unique/bespoke > > > > > > > > > > features of > > > > > > > > > > > > > Scala 3, if true this would mean from a Scala 3 user > > > > > > perspective > > > > > > > > > > there > > > > > > > > > > > > > really isn't going to be > > > > > > > > > > > > > a difference in using a Scala 2 artifact vs Scala 3 > > > > > artifact. > > > > > > > > > > > > > > > > > > > > > > > > > > For these reasons my recommendation would be, assuming > > > > > that > > > > > > the > > > > > > > > full > > > > > > > > > > > > > release of Scala 3.3 LTS is ready by the time we > > > > > > > > > > > > > decide > > to > > > > > > make > > > > > > > a > > > > > > > > > > release > > > > > > > > > > > > > that we should try and target that. For details on the > > > > > current > > > > > > > > > > release > > > > > > > > > > > > > schedule for Scala 3.3 LTS you can read > > > > > > > > > > > > > > > > > > > > https://contributors.scala-lang.org/t/3-3-0-release-thread/6079/3 > > > > > > > > . > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > > > > > > > > > > > > > > > > > Matthew de Detrich > > > > > > > > > > > > > > > > > > > > > > > > > > *Aiven Deutschland GmbH* > > > > > > > > > > > > > > > > > > > > > > > > > > Immanuelkirchstraße 26, 10405 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 > > > > > > > > > > > > > > > > > > > > > > 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 > > > > > > > > > > > > > > > > > > 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 > > > > > > > > > > > > > > > > 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 > > > > > > > > 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 > > > > > > 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 > > > > Amtsgericht Charlottenburg, HRB 209739 B > > > > Geschäftsführer: Oskari Saarenmaa & Hannu Valtonen > > > > *m:* +491603708037 > > > > *w:* aiven.io *e:* matthew.dedetr...@aiven.io > >