[slf4j-dev] [Bug 31] Varargs for Logger methods

bugzilla-daemon at pixie.qos.ch bugzilla-daemon at pixie.qos.ch
Wed Oct 10 21:27:12 CEST 2007


listid at qos.ch changed:

           What    |Removed                     |Added
             Status|REOPENED                    |RESOLVED
         Resolution|                            |WONTFIX

------- Comment #10 from listid at qos.ch  2007-10-10 21:27 -------
OK, after checking for myself, I can testify for the following:

1) a client compiled against "regular" slf4j-api runs fine with

   - slf4j-api with JDK 1.4 or JDK 1.5
   - slf4j-api-jdk15 with JDK 1.5 but not JDK 1.4 

2)  a client compiled against slf4j-api-jdk15 runs fine with

   - slf4j-api with JDK 1.5 but not JDK 1.4
   - slf4j-api-jdk15 with JDK 1.5 but not JDK 1.4 

In summary, from a clients point of view, slf4j-api and
slf4j-api-jdk15 are interchangeable, but compilation against
slf4j-api-jdk15 makes JDK 1.5 mandatory for the client.

I think providing multiple versions of the API is too complicated as
well as error prone. Logging has to be simple. As soon as one tries
to be smart about logging, things start to crumble. (Simplicity and
robustness is SLF4J's main selling point.)

Your patch demonstrates that we could modify the Logger interface to
use varargs without impacting existing users (as long as they use JDK
1.5).  That's a considerable plus. However, we cannot replace:

1) debug(String, Object)
2) debug(String, Object, Object)
3) debug(String, Object[])

with just:

debug(String, Object...)

Only the third method can be replaced. The first two have to be kept
as is. From my point of view as a SLF4J developer that's a pity.

I appreciate your effort. However, we can not make any changes to the
API which would break JDK 1.4 compatibility. Your solution produces
two jars which need to be documented and installed separately. Most
importantly, our user base has to be educated about it. Given the
number of SLF4J users, that's too much of a hassle. After careful
review of your proposal, although it has real merit, I am sorry to reject

Please accept my apologies.

Configure bugmail: http://bugzilla.slf4j.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

More information about the slf4j-dev mailing list