Re: FOSDEM 19 Debian Java talk
Hi, I'm still recovering from the infamous conference flu but I wanted to give you a short report about the talk and the discussions afterwards. You can find all the relevant links here. [1] While I was going through all the stuff we talked about, I realized that I would easily exceed my time limit. Thus I focused on Emmanuel's suggestion to present our achievements during the Buster release cycle in the first part and then I tried to explain the difference between Java's version centric approach and Debian's preferences. Apparently that aroused some interest and I got feedback from four audience members after the talk. The Fedora maintainer of Tycho and Eclipse offered help and support if someone wants to update and maintain Eclipse. Someone wanted to get more involved in Debian Java and I suggested to get involved by contacting debian-java@lists.debian.org. Andrej Shadura told me that he was working on Kotlin but discovered the same issues I mentioned during my talk. Another Java developer approached me and told me that he was impressed by the amount of work we are doing but couldn't understand why we would waste our talent on fighting Java build systems. ;) He was employed in a company with 1500 employees that only does Java stuff and he told me that 90% of his use cases are uberjars and docker images. :) In conclusion I can highly recommend to visit FOSDEM once at least because it is a great opportunity to connect with people and to broaden one's mind. I can also recommend to view some of these talks: https://fosdem.org/2019/schedule/track/free_java/ especially https://fosdem.org/2019/schedule/event/java_language_futures/ where Brian Goetz talks about what we can expect from Java language-wise in the future. Project "Valhalla" and "Metropolis" (integrating GraalVM into OpenJDK?) sounded promising. In a nutshell nobody should have to worry about Java. It looks like it will last for another 20 years at least. That's it for now. Markus [1] https://fosdem.org/2019/schedule/event/debian_java/ https://fosdem.org/2019/schedule/event/debian_java/attachments/slides/3231/export/events/attachments/debian_java/slides/3231/FOSDEM19_Debian_Java.odp https://fosdem.org/2019/schedule/event/debian_java/attachments/paper/3232/export/events/attachments/debian_java/paper/3232/FOSDEM19_Debian_Java.pdf https://video.fosdem.org/2019/H.2215/debian_java.mp4 https://video.fosdem.org/2019/H.2215/debian_java.webm signature.asc Description: OpenPGP digital signature
Re: FOSDEM 19 Debian Java talk
Am 01.02.19 um 23:53 schrieb Emmanuel Bourg: > Le 01/02/2019 à 22:41, Markus Koschany a écrit : > >> It is not very important but if you have some spare time in the next month >> we could figure this out and create some sort of statistics page like >> >> https://blends.debian.org/games/maintstats/ >> >> just with more information and for fun. > > The same charts are generated for the Java Team if that helps: > > http://blends.debian.net/liststats/authorstat_debian-java.png > http://blends.debian.net/liststats/authorstat_pkg-java-maintainers.png > http://blends.debian.net/liststats/bugs_pkg-java.png > http://blends.debian.net/liststats/commitstat_pkg-java.png > http://blends.debian.net/liststats/maintainer_per_package_pkg-java.png > Ah, interesting. I think the bugs closed graph is the most interesting one. I always had the feeling the bugs rate increased at an exponential rate for me. Still that would be more than 1000 bugs closed in the past two years for all of us. I have to find a way to verify that at some point in time but it doesn't feel too absurd right now. Thanks, Markus signature.asc Description: OpenPGP digital signature
Re: FOSDEM 19 Debian Java talk
Le 01/02/2019 à 22:41, Markus Koschany a écrit : > It is not very important but if you have some spare time in the next month > we could figure this out and create some sort of statistics page like > > https://blends.debian.org/games/maintstats/ > > just with more information and for fun. The same charts are generated for the Java Team if that helps: http://blends.debian.net/liststats/authorstat_debian-java.png http://blends.debian.net/liststats/authorstat_pkg-java-maintainers.png http://blends.debian.net/liststats/bugs_pkg-java.png http://blends.debian.net/liststats/commitstat_pkg-java.png http://blends.debian.net/liststats/maintainer_per_package_pkg-java.png Emmanuel Bourg
Re: FOSDEM 19 Debian Java talk
Le 01/02/2019 à 22:46, Markus Koschany a écrit : > What numbers do we have if you include the libraries too? These numbers include the libraries (but they weren't listed above). > Hmm. Why is this different from > > https://qa.debian.org/developer.php?email=pkg-java-maintainers%40lists.alioth.debian.org > > The page lists 1191 packages in main. Because it includes oldstable+stable+testing+unstable. 1003 is for testing only. That said, I forgot to include the new Clojure packages. It brings Leiningen 2.8.1 to the list of available build tools, and the numbers become: Total packages added to testing: 195 Total packages removed from testing: 95 Total packages updated in testing: 296 Total packages upgraded in testing: 291 Number of packages in stable: 932 Number of packages in testing: 1033 (+10,84%) Emmanuel Bourg
Re: FOSDEM 19 Debian Java talk
Am 01.02.19 um 21:39 schrieb Emmanuel Bourg: > Le 01/02/2019 à 14:28, Emmanuel Bourg a écrit : Great. Thanks! > Total packages added to testing: 179 > Total packages removed from testing: 95 > Total packages updated in testing: 291 > Total packages upgraded in testing: 283 What numbers do we have if you include the libraries too? > Number of packages maintained: 1003 Hmm. Why is this different from https://qa.debian.org/developer.php?email=pkg-java-maintainers%40lists.alioth.debian.org The page lists 1191 packages in main. Cheers, Markus signature.asc Description: OpenPGP digital signature
Re: FOSDEM 19 Debian Java talk
Hi! Am 01.02.19 um 14:28 schrieb Emmanuel Bourg: > Hi Markus, > > Le 29/01/2019 à 19:00, Markus Koschany a écrit : > >> I will attend FOSDEM 19 in Brussels this weekend (03.02.2019, 12:40 >> local time) and give a lightning talk (15 min) about our heroics. >> >> https://fosdem.org/2019/schedule/event/debian_java/ > > Thanks a lot for holding that talk. I won't be able to attend by I can > make some suggestions. Would have been great to see you there. Next time! >> Naturally there is not enough time to explain everything in detail but >> it should be adequate to put our message across. Here is your chance. >> What do you consider important or what would you like other people from >> the community to know? > > You could maybe summarize the upcoming Java related changes in Buster. I > started thinking about a blog post on this topic, the freeze is the good > time to publish it. Some items worth mentioning: > - the transition to OpenJDK 11 and the massive effort involved (more > than 400 package updates the last time I counted) > - the state of the build tools. Ant and Maven are up to date, Gradle is > stuck at the last pre-Kotlin version. SBT still being worked on. > - the state of the JVM languages: Groovy 2.14, Scala 2.11.12 (2.12 > requires SBT), Clojure 1.9. Kotlin is wanted but difficult to bootstrap. > - the state of the IDEs: Eclipse is gone (lack of maintainers), Netbeans 10 > - on the application servers side: Jetty 9.4 and Tomcat 9, fully up to > date, and now with systemd integration. > - the reproducibility rate is now around 85% (Stretch was around 75%). Perfect. Will be mentioned. >> I would like to reuse some of the scripts that we used for our last blog >> post in 2016 [1] to fetch some packaging statistics. Are those scripts >> still available? Otherwise I intend to use UDD a lot. > > I have a script that compares the packages between two releases but I > haven't published it yet. I'll run it and post the result for the > stretch/testing differences (it doesn't addresses the maintainer/bug > counts though). I tried to gather some fine grained statistics about bugs and used https://udd.debian.org/bugs/ for that. However the results appear very strange to me. There is even a selection for "Java team". I just wanted the total bugs reported in the past 600 days and all RC bugs and all RC bugs fixed (done). It is not very important but if you have some spare time in the next month we could figure this out and create some sort of statistics page like https://blends.debian.org/games/maintstats/ just with more information and for fun. >> What specific OpenJDK changes caused the most grief? > > - New layout of the JDK installation > - Removal of tools.jar > - Removal of the JavaEE APIs (activation, JAXB, JAXWS...) > - Removal of javah > - javac source/target pre 1.6 removal. > - ByteBuffer return type changes (Java 11 compiled code breaks with 8) > - sun.misc.Unsafe breaking changes > - Javadoc pendantic errors, JQuery embedding > > But let's not rant too much and keep the talk positive :) I can't promise that. :) >> Why we all love JavaDoc? :E > > Grrr :) :) signature.asc Description: OpenPGP digital signature
Re: FOSDEM 19 Debian Java talk
Le 01/02/2019 à 14:28, Emmanuel Bourg a écrit : > I have a script that compares the packages between two releases but I > haven't published it yet. I'll run it and post the result for the > stretch/testing differences. Here is the summary for the stretch -> testing changes (the libraries are not listed) : Packages removed from testing: * androidsdk-tools * eclipse * eclipse-anyedit * eclipse-cdt * eclipse-cdt-pkg-config * eclipse-eclox * eclipse-egit * eclipse-gef * eclipse-linuxtools * eclipse-mercurialeclipse * eclipse-mylyn * eclipse-mylyn-tasks-github * eclipse-ptp * eclipse-pydev * eclipse-remote-services-api * eclipse-rse * eclipse-subclipse * eclipse-wtp * eclipse-xsd * glassfish * jsymphonic * jta * netbeans * openjdk-8-jre-dcevm * pirl * pleiades * procyon * sikulix * triplea Packages added to testing: * gradle-completion (1.3.1) * hibiscus (2.8.8) * jameica (2.8.2) * jaxws (2.3.0.2) * maven-cache-cleanup (1.0.4) * omegat (3.6.0.10) * openjdk-11 (11.0.2+9) * sbt-ivy (2.4.0~rc1) * tomcat9 (9.0.14) Packages upgraded in testing: * activemq (5.15.8) * ant (1.10.5) * antlr4 (4.7.1) * apache-directory-server (2.0.0~M24) * aspectj (1.9.2) * bnd (3.5.0) * checkstyle (8.15) * cobertura (2.1.1) * cup (0.11b-20160615) * derby (10.14.2.0) * ecj (3.16.0) * fop (2.3) * freeplane (1.7.2) * gradle (4.4.1) * groovy (2.4.16) * hsqldb (2.4.1) * ivyplusplus (1.28) * jabref (3.8.2+ds) * japi-compliance-checker (2.4) * java-common (0.71) * java-wrappers (0.3) * jaxb (2.3.0.1) * jblas (1.2.4) * jedit (5.5.0) * jetty9 (9.4.14) * jflex (1.7.0) * jhove (1.20.1) * jruby (9.1.13.0) * jtreg (4.2-b13) * jython (2.7.1+repack1) * libapache-mod-jk (1.2.46) * maven (3.6.0) * nailgun (0.9.3) * openjdk-8 (8u171-b11) * openjfx (11.0.1+1) * pdfsam (4.0.1) * proguard (6.0.3) * robocode (1.9.3.3) * scala (2.11.12) * simplyhtml (0.17.3) * stegosuite (0.8.0) * sweethome3d (6.0) * sweethome3d-furniture (1.6.4) * sweethome3d-furniture-editor (1.23) * tomcat-native (1.2.19) * tomcat8 (8.5.37) -> will be removed before the release * uimaj (2.10.2) * visualvm (1.4.2) * xmlbeans (3.0.2) * yui-compressor (2.4.8) * zookeeper (3.4.13) Total packages added to testing: 179 Total packages removed from testing: 95 Total packages updated in testing: 291 Total packages upgraded in testing: 283 Number of packages maintained: 1003
Re: FOSDEM 19 Debian Java talk
Hi Markus, Le 29/01/2019 à 19:00, Markus Koschany a écrit : > I will attend FOSDEM 19 in Brussels this weekend (03.02.2019, 12:40 > local time) and give a lightning talk (15 min) about our heroics. > > https://fosdem.org/2019/schedule/event/debian_java/ Thanks a lot for holding that talk. I won't be able to attend by I can make some suggestions. > Naturally there is not enough time to explain everything in detail but > it should be adequate to put our message across. Here is your chance. > What do you consider important or what would you like other people from > the community to know? You could maybe summarize the upcoming Java related changes in Buster. I started thinking about a blog post on this topic, the freeze is the good time to publish it. Some items worth mentioning: - the transition to OpenJDK 11 and the massive effort involved (more than 400 package updates the last time I counted) - the state of the build tools. Ant and Maven are up to date, Gradle is stuck at the last pre-Kotlin version. SBT still being worked on. - the state of the JVM languages: Groovy 2.14, Scala 2.11.12 (2.12 requires SBT), Clojure 1.9. Kotlin is wanted but difficult to bootstrap. - the state of the IDEs: Eclipse is gone (lack of maintainers), Netbeans 10 - on the application servers side: Jetty 9.4 and Tomcat 9, fully up to date, and now with systemd integration. - the reproducibility rate is now around 85% (Stretch was around 75%). > I would like to reuse some of the scripts that we used for our last blog > post in 2016 [1] to fetch some packaging statistics. Are those scripts > still available? Otherwise I intend to use UDD a lot. I have a script that compares the packages between two releases but I haven't published it yet. I'll run it and post the result for the stretch/testing differences (it doesn't addresses the maintainer/bug counts though). > What specific OpenJDK changes caused the most grief? - New layout of the JDK installation - Removal of tools.jar - Removal of the JavaEE APIs (activation, JAXB, JAXWS...) - Removal of javah - javac source/target pre 1.6 removal. - ByteBuffer return type changes (Java 11 compiled code breaks with 8) - sun.misc.Unsafe breaking changes - Javadoc pendantic errors, JQuery embedding But let's not rant too much and keep the talk positive :) > Why we all love JavaDoc? :E Grrr :) Emmanuel Bourg
Re: FOSDEM 19 Debian Java talk
Emmanuel Bourg: > Le 30/01/2019 à 22:59, Hans-Christoph Steiner a écrit : > >> I thought it was worth a blog post too, as a follow up to your talk: >> https://salsa.debian.org/publicity-team/bits/merge_requests/16 > > Nice, remember the Java Team also has its own blog [1], that might be > nice to announce the FOSDEM talk there. It's just a matter of updating > the blog repository [2], the update is published automatically by a > Gitlab trigger. > > > [1] https://java.debian.net/blog/ > [2] https://salsa.debian.org/java-team/pkg-java-blog > Ok, based on the git history, it looks like posts are just pushed directly. So I just pushed my post there. Based on the feedback from the publicity team, I'll wait for an update from apo on his FOSDEM talk and include that in the post on bits.debian.org. .hc
Re: FOSDEM 19 Debian Java talk
Le 30/01/2019 à 22:59, Hans-Christoph Steiner a écrit : > I thought it was worth a blog post too, as a follow up to your talk: > https://salsa.debian.org/publicity-team/bits/merge_requests/16 Nice, remember the Java Team also has its own blog [1], that might be nice to announce the FOSDEM talk there. It's just a matter of updating the blog repository [2], the update is published automatically by a Gitlab trigger. [1] https://java.debian.net/blog/ [2] https://salsa.debian.org/java-team/pkg-java-blog
Re: FOSDEM 19 Debian Java talk
Markus Koschany: > > > Am 30.01.19 um 11:10 schrieb Hans-Christoph Steiner: >> >> Great that you are giving that talk! I think the Java Team's work is >> generally under-appreciated, so getting the word out should help with >> that. Here's what I would add: >> >> I think one thing to mention is how the Debian Java Team has to >> consistently fight the Java standard practice of bundling all deps into >> a single JAR. This means there is no shared security updates, each dev >> has to update every dependency themselves in that model. That works >> great for large companies with staff devoted to doing that. >> >> For the majority of Debian use cases, that works poorly. Debian >> delivers on the promise that people can just "apt install foo" and have >> it work, and receive security updates. The user does not even need to >> know what language the program is written in, it just works. >> >> Java developers need to learn the value of these use cases, and help >> Debian by making it easier to package Java projects in the standard >> distro method, with shared dependencies that are indepentently updated. > > Thanks for your feedback. Yes, that's a very good point and I will > mention it! I thought it was worth a blog post too, as a follow up to your talk: https://salsa.debian.org/publicity-team/bits/merge_requests/16 .hc
Re: FOSDEM 19 Debian Java talk
Am 30.01.19 um 11:10 schrieb Hans-Christoph Steiner: > > Great that you are giving that talk! I think the Java Team's work is > generally under-appreciated, so getting the word out should help with > that. Here's what I would add: > > I think one thing to mention is how the Debian Java Team has to > consistently fight the Java standard practice of bundling all deps into > a single JAR. This means there is no shared security updates, each dev > has to update every dependency themselves in that model. That works > great for large companies with staff devoted to doing that. > > For the majority of Debian use cases, that works poorly. Debian > delivers on the promise that people can just "apt install foo" and have > it work, and receive security updates. The user does not even need to > know what language the program is written in, it just works. > > Java developers need to learn the value of these use cases, and help > Debian by making it easier to package Java projects in the standard > distro method, with shared dependencies that are indepentently updated. Thanks for your feedback. Yes, that's a very good point and I will mention it! Cheers, Markus signature.asc Description: OpenPGP digital signature
Re: FOSDEM 19 Debian Java talk
Great that you are giving that talk! I think the Java Team's work is generally under-appreciated, so getting the word out should help with that. Here's what I would add: I think one thing to mention is how the Debian Java Team has to consistently fight the Java standard practice of bundling all deps into a single JAR. This means there is no shared security updates, each dev has to update every dependency themselves in that model. That works great for large companies with staff devoted to doing that. For the majority of Debian use cases, that works poorly. Debian delivers on the promise that people can just "apt install foo" and have it work, and receive security updates. The user does not even need to know what language the program is written in, it just works. Java developers need to learn the value of these use cases, and help Debian by making it easier to package Java projects in the standard distro method, with shared dependencies that are indepentently updated. .hc Markus Koschany: > Hi all, > > I will attend FOSDEM 19 in Brussels this weekend (03.02.2019, 12:40 > local time) and give a lightning talk (15 min) about our heroics. > > https://fosdem.org/2019/schedule/event/debian_java/ > > Naturally there is not enough time to explain everything in detail but > it should be adequate to put our message across. Here is your chance. > What do you consider important or what would you like other people from > the community to know? > > I would like to reuse some of the scripts that we used for our last blog > post in 2016 [1] to fetch some packaging statistics. Are those scripts > still available? Otherwise I intend to use UDD a lot. > > I want to answer the following questions: > > How does the Java language rank in Debian? > > https://sources.debian.org/stats/sid/ > > How many Java source packages / binary packages do we maintain or are > maintained in total including by other teams? > > How many contributors are there? > > How many uploads were made by those contributors? > > How many bugs were fixed by them? > > How many RC bugs were reported/fixed during the > Wheezy/Jessie/Stretch/Buster release cycle? My guess is the total > numbers are increasing. > > How many RC bugs were caused by OpenJDK7/8/9/10/11? We have our tagged > bugs list for example. > > https://bugs.debian.org/cgi-bin/pkgreport.cgi?users=debian-java@lists.debian.org;tag=default-java9 > > What specific OpenJDK changes caused the most grief? > > Why we all love JavaDoc? :E > > etc. > > If you have some other fun statistic, please let me know. > > Regards, > > Markus > > [1] > https://java.debian.net/blog/2016/06/wheezy-lts-and-the-switch-to-openjdk-7.html >