I looked into this a bit more. If we made a 2.13 release now, we'd have to name the module more specifically. In this case, it'd be "log4j-api-scala_2.13.0-M1". The version number in the module name can be as specific as the exact compiler version (which is more important for compiler plugins than it is for libraries), though it's usually the least specific version that it's binary compatible with. Perhaps Scala will have more compatible binary versions in the future, but in the meantime, we have to make several copies of the same code compiled with different versions of the compiler.
On 20 July 2017 at 21:22, Matt Sicker <[email protected]> wrote: > As for the 2.12 IBM JDK bug, could be worth filing a jira ticket over it. > Since they don't seem to publish the IBM JDK for macOS, that may make it > harder to test a fix, but we can possibly make a Dockerfile for it. > > On 20 July 2017 at 21:18, Matt Sicker <[email protected]> wrote: > >> To test for 2.13.0, we'd need to make a 2.13.0 jar for log4j-api-scala. >> You can try it out by either copying or modifying the 2.12 one and changing >> the compiler version. Using sbt, it's a bit easier to cross compile various >> versions (future goal in this repo). I'm not sure if it's such a great idea >> to release binaries for beta versions of Scala, but if we do, I'd like to >> try out a Dotty binary as well (future Scala 3.0 compiler). >> >> On 20 July 2017 at 21:01, Gary Gregory <[email protected]> wrote: >> >>> HI Matt, >>> >>> - 2.10.6 Hello, world! >>> - 2.11.8 Hello, world! >>> - 2.11.11 Hello, world! >>> - 2.12.1 crashes >>> - 2.12.0 crashes >>> >>> How do I update the sbt file to test 2.13.0-M1? >>> >>> Gary >>> >>> >>> >>> >>> On Thu, Jul 20, 2017 at 6:27 PM, Matt Sicker <[email protected]> wrote: >>> >>> > Can you try changing the Scala version in build.sbt to 2.11.8 or >>> 2.10.6? >>> > Those only require Java 6 btw. >>> > >>> > On 20 July 2017 at 16:58, Gary Gregory <[email protected]> wrote: >>> > >>> > > Here is the JVM dump, not that we can do anything about it! :-P >>> > > >>> > > https://gist.githubusercontent.com/garydgregory/ >>> > > 1e8d78d6305fe5379efccf76fadf0b25/raw/1411977cea9a14328f17ff99f35bfc >>> > > 951c1eb1c0/javacore.20170720.133045.13856.0004.txt >>> > > >>> > > Gary >>> > > >>> > > On Thu, Jul 20, 2017 at 2:53 PM, Gary Gregory < >>> [email protected]> >>> > > wrote: >>> > > >>> > > > In installed SBT and ran: 'sbt clean run' and it hangs hard with >>> IBM >>> > > Java, >>> > > > CTRL-C does nothing: https://pastebin.com/HWYniJXB >>> > > > >>> > > > Gary >>> > > > >>> > > > On Thu, Jul 20, 2017 at 1:25 PM, Matt Sicker <[email protected]> >>> wrote: >>> > > > >>> > > >> The sbt script is just added for convenience in case you don't >>> have >>> > sbt >>> > > >> installed already. Regardless, sbt has to download itself as it is >>> > > similar >>> > > >> to gradle's wrapper. >>> > > >> >>> > > >> On 20 July 2017 at 14:38, Mikael Ståldal <[email protected]> >>> wrote: >>> > > >> >>> > > >> > You could install SBT on your Windows machine, and build/run the >>> > > project >>> > > >> > without using the "sbt" script in Matt's repo. >>> > > >> > >>> > > >> > http://www.scala-sbt.org/0.13/docs/Installing-sbt-on-Windows >>> .html >>> > > >> > >>> > > >> > >>> > > >> > >>> > > >> > On 2017-07-20 21:21, Gary Gregory wrote: >>> > > >> > >>> > > >> >> Hi Matt, >>> > > >> >> >>> > > >> >> I'm on Windows, so that sbt script is not going to work for me. >>> > > >> >> >>> > > >> >> I did try it on Cygwin but no dice (unsurprisingly): >>> > > >> >> >>> > > >> >> $ ./sbt run >>> > > >> >> ./sbt: line 5: $'\r': command not found >>> > > >> >> : invalid option nameipefail >>> > > >> >> ./sbt: line 7: $'\r': command not found >>> > > >> >> ./sbt: line 10: $'\r': command not found >>> > > >> >> ./sbt: line 16: $'\r': command not found >>> > > >> >> ./sbt: line 18: $'\r': command not found >>> > > >> >> ./sbt: line 23: $'\r': command not found >>> > > >> >> ./sbt: line 26: $'\r': command not found >>> > > >> >> ': not a valid identifier`sbt_new >>> > > >> >> ': not a valid identifier`sbt_explicit_version >>> > > >> >> ': not a valid identifier`trace_level >>> > > >> >> ': not a valid identifier`debugUs >>> > > >> >> ./sbt: line 31: $'\r': command not found >>> > > >> >> ': not a valid identifier`sbt_launch_repo >>> > > >> >> ./sbt: line 35: $'\r': command not found >>> > > >> >> ': not a valid identifier`residual_args >>> > > >> >> ./sbt: line 38: $'\r': command not found >>> > > >> >> ': not a valid identifier`extra_sbt_opts >>> > > >> >> ./sbt: line 41: $'\r': command not found >>> > > >> >> ./sbt: line 47: syntax error near unexpected token `$'{\r'' >>> > > >> >> '/sbt: line 47: `onSbtRunnerExit() { >>> > > >> >> >>> > > >> >> I don't want to take the time to set up a VirtualBox for Linux >>> > today, >>> > > >> >> sorry >>> > > >> >> :-( >>> > > >> >> >>> > > >> >> Gary >>> > > >> >> >>> > > >> >> On Thu, Jul 20, 2017 at 12:14 PM, Matt Sicker < >>> [email protected]> >>> > > >> wrote: >>> > > >> >> >>> > > >> >> https://github.com/jvz/test-log4j-scala >>> > > >> >>> >>> > > >> >>> Clone this and run "sbt run" or "./sbt run". It should print >>> out a >>> > > >> single >>> > > >> >>> info-level "Hello, world!" log message. >>> > > >> >>> >>> > > >> >>> On 20 July 2017 at 14:03, Matt Sicker <[email protected]> >>> wrote: >>> > > >> >>> >>> > > >> >>> I can write a test project that you can try out with the IBM >>> JDK. >>> > > I'll >>> > > >> >>>> push something to GitHub this afternoon. >>> > > >> >>>> >>> > > >> >>>> On 20 July 2017 at 13:59, Gary Gregory < >>> [email protected]> >>> > > >> wrote: >>> > > >> >>>> >>> > > >> >>>> On Thu, Jul 20, 2017 at 11:54 AM, Mikael Ståldal < >>> > [email protected] >>> > > > >>> > > >> >>>>> wrote: >>> > > >> >>>>> >>> > > >> >>>>> On 2017-07-20 03:16, Gary Gregory wrote: >>> > > >> >>>>>> >>> > > >> >>>>>> I noticed WARNINGs like: >>> > > >> >>>>>>> >>> > > >> >>>>>>> [INFO] --- scala-maven-plugin:3.2.2:compile (default) @ >>> > > >> >>>>>>> log4j-api-scala_2.11 --- >>> > > >> >>>>>>> [WARNING] Expected all dependencies to require Scala >>> version: >>> > > >> 2.11.8 >>> > > >> >>>>>>> [WARNING] org.apache.logging.log4j:log4j >>> -api-scala_2.11:11.0 >>> > > >> >>>>>>> >>> > > >> >>>>>> requires >>> > > >> >>> >>> > > >> >>>> scala version: 2.11.8 >>> > > >> >>>>>>> [WARNING] org.scala-lang:scala-reflect:2.11.8 requires >>> scala >>> > > >> >>>>>>> >>> > > >> >>>>>> version: >>> > > >> >>> >>> > > >> >>>> 2.11.8 >>> > > >> >>>>>>> [WARNING] org.scalatest:scalatest_2.11:3.0.0 requires >>> scala >>> > > >> >>>>>>> >>> > > >> >>>>>> version: >>> > > >> >>> >>> > > >> >>>> 2.11.8 >>> > > >> >>>>>>> [WARNING] org.scalactic:scalactic_2.11:3.0.0 requires >>> scala >>> > > >> >>>>>>> >>> > > >> >>>>>> version: >>> > > >> >>> >>> > > >> >>>> 2.11.8 >>> > > >> >>>>>>> [WARNING] org.scala-lang.modules:scala-xml_2.11:1.0.5 >>> > requires >>> > > >> >>>>>>> >>> > > >> >>>>>> scala >>> > > >> >>> >>> > > >> >>>> version: 2.11.7 >>> > > >> >>>>>>> [WARNING] Multiple versions of scala libraries detected! >>> > > >> >>>>>>> >>> > > >> >>>>>>> >>> > > >> >>>>>> I have seen this too. It is hard to avoid, and I am quite >>> > > confident >>> > > >> >>>>>> >>> > > >> >>>>> that >>> > > >> >>> >>> > > >> >>>> it is harmless. >>> > > >> >>>>>> >>> > > >> >>>>>> >>> > > >> >>>>>> C:\temp\rc\apache-log4j-scala- >>> 11.0-src\log4j-api-scala_2.11\ >>> > > >> >>>>>> >>> > > >> >>>>>>> src\main\scala\org\apache\logging\log4j\scala\Logger. >>> > scala:59: >>> > > >> >>>>>>> warning: Variable user.getName undefined in comment for >>> class >>> > > >> Logger >>> > > >> >>>>>>> >>> > > >> >>>>>> in >>> > > >> >>> >>> > > >> >>>> class Logger >>> > > >> >>>>>>> * logger.debug(s"Logging in user ${user.getName} with >>> > > birthday >>> > > >> >>>>>>> ${user.calcBirthday}") >>> > > >> >>>>>>> ^ >>> > > >> >>>>>>> C:\temp\rc\apache-log4j-scala- >>> 11.0-src\log4j-api-scala_2.11\ >>> > > >> >>>>>>> src\main\scala\org\apache\logging\log4j\scala\Logger. >>> > scala:59: >>> > > >> >>>>>>> warning: Variable user.calcBirthday undefined in comment >>> for >>> > > class >>> > > >> >>>>>>> >>> > > >> >>>>>> Logger >>> > > >> >>>>> >>> > > >> >>>>>> in class Logger >>> > > >> >>>>>>> * logger.debug(s"Logging in user ${user.getName} with >>> > > birthday >>> > > >> >>>>>>> ${user.calcBirthday}") >>> > > >> >>>>>>> >>> > > >> ^ >>> > > >> >>>>>>> two warnings found >>> > > >> >>>>>>> >>> > > >> >>>>>>> >>> > > >> >>>>>> Those warnings are bogus and definitely harmless. >>> > > >> >>>>>> >>> > > >> >>>>>> The build goes on and eventually crashes the IBM JVM: >>> > > >> >>>>>> >>> > > >> >>>>>>> >>> > > >> >>>>>>> >>> > > >> >>>>>> I have not seen and such crash. Does it crash Oracle JVM >>> too, >>> > or >>> > > >> only >>> > > >> >>>>>> >>> > > >> >>>>> IBM? >>> > > >> >>>>> >>> > > >> >>>>>> I haven't tried IBM JVM for this. >>> > > >> >>>>>> >>> > > >> >>>>>> >>> > > >> >>>>> Only IBM. My review states "Building it worked for me from >>> the >>> > src >>> > > >> zip >>> > > >> >>>>> with >>> > > >> >>>>> 'mvn clean install site'." and just below that I show the >>> 'mvn >>> > > >> >>>>> -version' >>> > > >> >>>>> output which includes the Oracle JVM version. >>> > > >> >>>>> >>> > > >> >>>>> Gary >>> > > >> >>>>> >>> > > >> >>>>> >>> > > >> >>>> >>> > > >> >>>> >>> > > >> >>>> -- >>> > > >> >>>> Matt Sicker <[email protected]> >>> > > >> >>>> >>> > > >> >>>> >>> > > >> >>> >>> > > >> >>> >>> > > >> >>> -- >>> > > >> >>> Matt Sicker <[email protected]> >>> > > >> >>> >>> > > >> >>> >>> > > >> >> >>> > > >> > >>> > > >> >>> > > >> >>> > > >> -- >>> > > >> Matt Sicker <[email protected]> >>> > > >> >>> > > > >>> > > > >>> > > >>> > >>> > >>> > >>> > -- >>> > Matt Sicker <[email protected]> >>> > >>> >> >> >> >> -- >> Matt Sicker <[email protected]> >> > > > > -- > Matt Sicker <[email protected]> > -- Matt Sicker <[email protected]>
