[slf4j-dev] Release of SLF4J version 1.8.0-alpha0

Ceki Gulcu ceki at qos.ch
Fri Apr 7 12:47:07 CEST 2017


Java 9 modularization
=====================

I  am  pleased  to  announce SLF4J  1.8.0-alpha0,  a  modularized
version of  slf4j compatible  with Java 9  and in  particular its
Java Platform Module System (JSR 376), a.k.a project Jigsaw.

Although there are  no client facing API  changes in 1.8.0-alpha0
release, the static binding mechanism has been abandoned in favor
of java.util.ServiceLoader introduced in  Java 6. It follows that
slf4j-api  now requires  Java 6.  Just as  importantly, slf4j-api
version 1.8.x  will no  longer search for  the StaticLoggerBinder
class.

Instead of  "bindings" now slf4j-api looks  for "providers" which
ship   with    slf4j-nop-1.8.x.jar,   slf4j-simple-1.8.x.jar   or
slf4j-jdk14-1.8.x.jar.

Given that in some environments, it is not possible to modify the
version  of  slf4j-api,  slf4j  1.8.x  "providers"  also  act  as
1.7.x/1.6.x "bindings".

For       example,      having       slf4j-api-1.8.x.jar      and
slf4j-simple-1.7.x.jar on  the class path will  NOT work, whereas
having  slf4j-api-1.7.x.jar  and  slf4j-simple-1.8.x.jar  on  the
class path will work fine.

In other words:

slf4j-api-1.8.x.jar + slf4j-simple-1.7.x.jar ==> "No SLF4J
providers found" warning

whereas:

slf4j-api-1.7.x.jar + slf4j-simple-1.8.x.jar ==> OK


Download
========

The relevant artifacts can be obtained via the Maven central
repository.

OSGi changes
============

While  we expect  the changes  introduced in  SLF4J 1.8.x  to be
rather   transparent   to   users,   given   JPMS   restrictions,
implementations had to be moved from the org.slf4.impl package to
packages  specific  to  each  provider.  Consequently,  the  OSGi
declarations in MANIFEST.MF files had  to be modified.  Our tests
indicate  that   SLF4J  version  1.8.x  should   work  fine  with
OSGi. However, more in depth testing  is in order. We are looking
for volunteers for such tests.


The slf4j-log4j12 module
========================

Due to technical reasons,  slf4j-log4j12 could not be modularized
in  this alpha0  release. However,  we expect  the problem  to be
solved in future 1.8.x releases.


Announcement mailing list
=========================

You can receive SLF4J related announcements by subscribing to the
SLF4J announce mailing list. To subscribe to QOS.ch announce list,
please visit the following URL.

    http://www.qos.ch/mailman/listinfo/announce

You may also receive announcements via twitter:

    https://twitter.com/qos_ch

Enjoy,

-- 
Ceki Gülcü




More information about the slf4j-dev mailing list