Well, the version numbers don’t have to actually match; that’s more of an amusing coincidence at the moment. But anyways, this basically needs a baseline version of Kotlin; there haven’t been any backward-incompatible changes that would require supporting multiple versions like in Scala.
> On Feb 14, 2023, at 2:08 PM, Gary Gregory <garydgreg...@gmail.com> wrote: > > There are quite a few jars out there that use "-jre8" type of postfixes > strings in artifact IDs, so we should do the same IMO. > > But... > > The first question to ask is whether or not we should go through the pain > of even supporting different Kotlin platforms. I wouldn't bother if it were > me, but I'm not a Kotlin user. > > Gary > > On Tue, Feb 14, 2023, 14:43 Volkan Yazıcı <vol...@yazi.ci> wrote: > >> *[I would steal the releasing infra from `log4j-tools` >> <https://github.com/apache/logging-log4j-tools/blob/master/RELEASING.adoc> >> for >> the best speed pill.]* >> >> Matt, I think matching major and minor versions of `log4j-api-kotlin` with >> Kotlin is a recipe for disaster. >> >> Imagine we shipped 1.7.0 and 1.8.0 to with Kotlin 1.7 and 1.8 support, >> respectively. You just developed a new feature that you want to release >> both for Kotlin 1.8 and 1.7. Are you going to release 1.9.0 for Kotlin 1.8 >> users (since this is what you should be doing according to semver) and >> 1.7.1 for Kotlin 1.7 users (which violates semver, since this isn't a >> patch/fix). >> >> One can address these concerns by suffixing versions (e.g., >> `1.3.0-kotlin1.8`) or providing classifiers in the dependencies, etc. But >> you know what... That is not what we do. >> >> Do we ship different <Log4j-or-any-Java-lib> for each Java version out >> there? You simply pick a good enough baseline and stick to that. Log4j >> 2.x.x moved from Java 6 to 7, and then to 8; Log4j 3.0.0 will target Java >> 11. >> >> I would simply stick to Kotlin 1.3 in our current 1.2.x line and state in >> the website we support Kotlin 1.x. If Kotlin happens to introduce a version >> (e.g., Kotlin 2.0) that breaks the compatibility for us, we can either >> release `log4j-api-kotlin20` or `log4j-api-kotlin` 2.0.0 supporting Kotlin >> 2.x, etc. >> >> >> On Tue, Feb 14, 2023 at 6:20 PM Matt Sicker <m...@musigma.org> wrote: >> >>> After having migrated the build to use the new system Volkan put together >>> for the main repo, I’ve managed to get the build there working in a >> similar >>> streamlined fashion. Thus, it’ll be a lot easier to cut some releases >>> there, and wow do we have a backlog of them to get through! So here’s >> what >>> I’m proposing for releases: >>> >>> * 1.3.0 - next release. This includes a few API updates, cleaned up >>> website, dependency updates, etc. 1.3.x will be the last version to >> support >>> Kotlin 1.3 (for context, Kotlin is at version 1.8.10 at the moment). >>> * 1.4.0 - This release will bump the Kotlin version requirement to 1.4.x. >>> While backward compatibility seems to stretch back to 1.3.x., this does >>> make it harder to use as a dependency since we need to use a >> provided-scope >>> dependency to avoid using the wrong Kotlin version in an application. >> Thus, >>> this will be the start of some catch-up releases to pull the baseline >>> Kotlin version required up to a more reasonably modern version. Amusingly >>> enough, these version numbers coincide with Kotlin itself, so it’s >> possible >>> to make 1.5.0 require Kotlin 1.5, 1.6.0 require Kotlin 1.6, and so forth. >>> * 1.5.0 - Kotlin 1.5 >>> * 1.6.0 - Kotlin 1.6 >>> etc. >>> >>> The 1.3.0 and 1.4.0 releases are the more immediately relevant ones (as >> in >>> I’d like to do them in a couple weeks). Since Spinnaker has been stuck on >>> Kotlin 1.4 for a while, I didn’t exactly have a pressing need to move >>> toward the bleeding edge, but even that project is working through >>> dependency updates which will eventually get to Java and Kotlin upgrades, >>> so I’d also like to release some later versions before then as well. >>> >>> Anything else desired for these releases? The Kotlin releases/roadmap are >>> on https://kotlinlang.org/docs/releases.html which may help discover any >>> new APIs or features that would be relevant to support or use. >>