That would be one way to find out how many custom implementations there are. I 
bet nearly every one of them would complain.

Ralph

> On Jul 25, 2016, at 9:56 AM, Matt Sicker <boa...@gmail.com> wrote:
> 
> Wouldn't it also be kind of an evil thing to do by adding Serializable to 
> Logger mid-2.x? That kind of decision seems to be an x.0 type of decision.
> 
> On 25 July 2016 at 11:55, Gary Gregory <garydgreg...@gmail.com 
> <mailto:garydgreg...@gmail.com>> wrote:
> Roger that. I suppose that we could make that part of an epic and note that 
> Log4j's own implementations are fully supported (or not and which ones).
> 
> I'm still not convinced that this is a "good thing" at the interface level 
> because we could only document what each of our Logger implementations 
> support instead without "forcing" the interface on other 3rd party impls 
> (which I have no idea if there are any.)
> 
> Gary
> 
> On Mon, Jul 25, 2016 at 9:43 AM, Mikael Ståldal <mikael.stal...@magine.com 
> <mailto:mikael.stal...@magine.com>> wrote:
> The purpose is that the user of Log4j can be sure that the Logger is 
> serializable.
> 
> On Mon, Jul 25, 2016 at 6:38 PM, Gary Gregory <garydgreg...@gmail.com 
> <mailto:garydgreg...@gmail.com>> wrote:
> But to what purpose? Does Log4j itself need this? Is this a case of YAGNI?
> 
> If I have a Logger in an object I serialize, and the class implementing 
> Logger is serializable, then I am good to go.
> 
> Making Logger Serializable, would make this obvious to users and might make 
> some developers warm and fuzzy. It just seems like an odd requirement for ALL 
> implementors of Loggers to be serializable. As a third party Logger 
> implementor, that does not mean it would be done properly. Implementing the 
> interface is no guarantee of proper behavior. 
> 
> Overall, it seems like it would make Log4j less friendly to 3rd party 
> implementors. Are there even any? 
> 
> Gary
> 
> On Mon, Jul 25, 2016 at 9:07 AM, Mikael Ståldal <mikael.stal...@magine.com 
> <mailto:mikael.stal...@magine.com>> wrote:
> But maybe we actually want to force all implementations to be serializable?
> 
> On Mon, Jul 25, 2016 at 6:01 PM, Remko Popma <remko.po...@gmail.com 
> <mailto:remko.po...@gmail.com>> wrote:
> I think the theory is it is preferable to let implementors of an interface 
> implement java.io.Serializable instead of letting the interface extend 
> java.io.Serializable. That gives future implementors the freedom to choose to 
> either implement Serializable or not.
> 
> On Tue, Jul 26, 2016 at 12:49 AM, Mikael Ståldal <mikael.stal...@magine.com 
> <mailto:mikael.stal...@magine.com>> wrote:
> It seems like serializable logger is useful in Apache Spark, which is popular 
> to use from Scala.
> 
> On Mon, Jul 25, 2016 at 4:20 PM, Matt Sicker <boa...@gmail.com 
> <mailto:boa...@gmail.com>> wrote:
> Do Scala programmers use Serializable a lot, or is there a better mechanism 
> there? Because if there's a more Scala way of doing it, that would make more 
> sense. Otherwise, you can always add Serializable later, but you shouldn't 
> remove it once it's part of the public API.
> 
> On 25 July 2016 at 03:06, Mikael Ståldal <mikael.stal...@magine.com 
> <mailto:mikael.stal...@magine.com>> wrote:
> I am asking this since I'm considering making the Scala Logger wrapper 
> Serializable. Would that be a good idea?
> 
> On Mon, Jul 25, 2016 at 10:00 AM, Mikael Ståldal <mikael.stal...@magine.com 
> <mailto:mikael.stal...@magine.com>> wrote:
> Users can rely on the fact that loggers are always Serializable.
> 
> I guess we could also document that fact if we don't want to mark the 
> interface Serializable.
> 
> On Fri, Jul 22, 2016 at 7:16 PM, Ralph Goers <ralph.go...@dslextreme.com 
> <mailto:ralph.go...@dslextreme.com>> wrote:
> What advantage is gained by declaring the interface Serializable?
> 
> Ralph
> 
>> On Jul 22, 2016, at 9:38 AM, Mikael Ståldal <mikael.stal...@magine.com 
>> <mailto:mikael.stal...@magine.com>> wrote:
>> 
>> I don't think we should limit ourselves to what we add to the API just for 
>> the sake of alternative implementations.
>> 
>> On Fri, Jul 22, 2016 at 6:09 PM, Gary Gregory <garydgreg...@gmail.com 
>> <mailto:garydgreg...@gmail.com>> wrote:
>> I do not think you want to _force_ all implementation to be serializable. 
>> Serialization is not a main feature of loggers, logging is.
>> 
>> Gary
>> 
>> On Fri, Jul 22, 2016 at 12:45 AM, Mikael Ståldal <mikael.stal...@magine.com 
>> <mailto:mikael.stal...@magine.com>> wrote:
>> But if this is a feature that is useful for some users, why not fully 
>> advertise it by making the Logger interface Serializable?
>> 
>> On Thu, Jul 21, 2016 at 7:53 PM, Matt Sicker <boa...@gmail.com 
>> <mailto:boa...@gmail.com>> wrote:
>> It's Serializable because there was a feature request for it. The jira 
>> ticket is internal (reported by Gary), but I recall either another bug or a 
>> mailing list post where the justification was so that serializable classes 
>> can still use a Logger instance field (not everyone uses a static field for 
>> the Logger for some reason).
>> 
>> On 21 July 2016 at 11:32, Ralph Goers <ralph.go...@dslextreme.com 
>> <mailto:ralph.go...@dslextreme.com>> wrote:
>> I asked myself the same question and I guess the answer is that Logger is 
>> included in lots of classes, many of which are Serializable. It would be 
>> easier for us to make AbstractLogger Serializable then for all the users to 
>> mark it as transient and have to manually instantiate the Logger during 
>> de-Serialization.
>> 
>> Ralph
>> 
>>> On Jul 21, 2016, at 9:29 AM, Mikael Ståldal <mikael.stal...@magine.com 
>>> <mailto:mikael.stal...@magine.com>> wrote:
>>> 
>>> So then why is AbstractLogger, and our implementation in log4j-core, 
>>> Serializable?
>>> 
>>> On Thu, Jul 21, 2016 at 6:18 PM, Gary Gregory <garydgreg...@gmail.com 
>>> <mailto:garydgreg...@gmail.com>> wrote:
>>> I do not think there is a way to know what folks are doing out there...
>>> 
>>> Gary
>>> 
>>> On Thu, Jul 21, 2016 at 9:13 AM, Mikael Ståldal <mikael.stal...@magine.com 
>>> <mailto:mikael.stal...@magine.com>> wrote:
>>> Are there any providers not using AbstractLogger?
>>> 
>>> On Thu, Jul 21, 2016 at 6:09 PM, Gary Gregory <garydgreg...@gmail.com 
>>> <mailto:garydgreg...@gmail.com>> wrote:
>>> Probably to leave the decision on whether to support serialization to each 
>>> provider.
>>> 
>>> Gary
>>> 
>>> 
>>> On Jul 21, 2016 3:14 AM, "Mikael Ståldal" <mikael.stal...@magine.com 
>>> <mailto:mikael.stal...@magine.com>> wrote:
>>> AbstractLogger is Serializable, but the Logger interface is not. Why is it 
>>> so?
>>> 
>>> -- 
>>>  
>>> 
>>> Mikael Ståldal
>>> Senior software developer 
>>> 
>>> Magine TV
>>> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
>>> <http://www.magine.com/>
>>> 
>>> Privileged and/or Confidential Information may be contained in this 
>>> message. If you are not the addressee indicated in this message
>>> (or responsible for delivery of the message to such a person), you may not 
>>> copy or deliver this message to anyone. In such case, 
>>> you should destroy this message and kindly notify the sender by reply 
>>> email.   
>>> 
>>> 
>>> 
>>> -- 
>>>  
>>> 
>>> Mikael Ståldal
>>> Senior software developer 
>>> 
>>> Magine TV
>>> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
>>> <http://www.magine.com/>
>>> 
>>> Privileged and/or Confidential Information may be contained in this 
>>> message. If you are not the addressee indicated in this message
>>> (or responsible for delivery of the message to such a person), you may not 
>>> copy or deliver this message to anyone. In such case, 
>>> you should destroy this message and kindly notify the sender by reply 
>>> email.   
>>> 
>>> 
>>> 
>>> -- 
>>> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
>>> ggreg...@apache.org  <mailto:ggreg...@apache.org>
>>> Java Persistence with Hibernate, Second Edition 
>>> <http://www.manning.com/bauer3/>
>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>> Spring Batch in Action <http://www.manning.com/templier/>
>>> Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> 
>>> Home: http://garygregory.com/ <http://garygregory.com/>
>>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
>>> 
>>> 
>>> -- 
>>>  
>>> 
>>> Mikael Ståldal
>>> Senior software developer 
>>> 
>>> Magine TV
>>> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
>>> <http://www.magine.com/>
>>> 
>>> Privileged and/or Confidential Information may be contained in this 
>>> message. If you are not the addressee indicated in this message
>>> (or responsible for delivery of the message to such a person), you may not 
>>> copy or deliver this message to anyone. In such case, 
>>> you should destroy this message and kindly notify the sender by reply 
>>> email.   
>> 
>> 
>> 
>> 
>> -- 
>> Matt Sicker <boa...@gmail.com <mailto:boa...@gmail.com>>
>> 
>> 
>> 
>> -- 
>>  
>> 
>> Mikael Ståldal
>> Senior software developer 
>> 
>> Magine TV
>> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
>> <http://www.magine.com/>
>> 
>> Privileged and/or Confidential Information may be contained in this message. 
>> If you are not the addressee indicated in this message
>> (or responsible for delivery of the message to such a person), you may not 
>> copy or deliver this message to anyone. In such case, 
>> you should destroy this message and kindly notify the sender by reply email. 
>>   
>> 
>> 
>> 
>> -- 
>> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
>> ggreg...@apache.org  <mailto:ggreg...@apache.org>
>> Java Persistence with Hibernate, Second Edition 
>> <http://www.manning.com/bauer3/>
>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>> Spring Batch in Action <http://www.manning.com/templier/>
>> Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> 
>> Home: http://garygregory.com/ <http://garygregory.com/>
>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
>> 
>> 
>> -- 
>>  
>> 
>> Mikael Ståldal
>> Senior software developer 
>> 
>> Magine TV
>> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
>> <http://www.magine.com/>
>> 
>> Privileged and/or Confidential Information may be contained in this message. 
>> If you are not the addressee indicated in this message
>> (or responsible for delivery of the message to such a person), you may not 
>> copy or deliver this message to anyone. In such case, 
>> you should destroy this message and kindly notify the sender by reply email. 
>>   
> 
> 
> 
> 
> -- 
>  
> 
> Mikael Ståldal
> Senior software developer 
> 
> Magine TV
> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
> <http://www.magine.com/>
> 
> Privileged and/or Confidential Information may be contained in this message. 
> If you are not the addressee indicated in this message
> (or responsible for delivery of the message to such a person), you may not 
> copy or deliver this message to anyone. In such case, 
> you should destroy this message and kindly notify the sender by reply email.  
>  
> 
> 
> 
> -- 
>  
> 
> Mikael Ståldal
> Senior software developer 
> 
> Magine TV
> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
> <http://www.magine.com/>
> 
> Privileged and/or Confidential Information may be contained in this message. 
> If you are not the addressee indicated in this message
> (or responsible for delivery of the message to such a person), you may not 
> copy or deliver this message to anyone. In such case, 
> you should destroy this message and kindly notify the sender by reply email.  
>  
> 
> 
> 
> -- 
> Matt Sicker <boa...@gmail.com <mailto:boa...@gmail.com>>
> 
> 
> 
> -- 
>  
> 
> Mikael Ståldal
> Senior software developer 
> 
> Magine TV
> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
> <http://www.magine.com/>
> 
> Privileged and/or Confidential Information may be contained in this message. 
> If you are not the addressee indicated in this message
> (or responsible for delivery of the message to such a person), you may not 
> copy or deliver this message to anyone. In such case, 
> you should destroy this message and kindly notify the sender by reply email.  
>  
> 
> 
> 
> 
> -- 
>  
> 
> Mikael Ståldal
> Senior software developer 
> 
> Magine TV
> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
> <http://www.magine.com/>
> 
> Privileged and/or Confidential Information may be contained in this message. 
> If you are not the addressee indicated in this message
> (or responsible for delivery of the message to such a person), you may not 
> copy or deliver this message to anyone. In such case, 
> you should destroy this message and kindly notify the sender by reply email.  
>  
> 
> 
> 
> -- 
> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
> ggreg...@apache.org  <mailto:ggreg...@apache.org>
> Java Persistence with Hibernate, Second Edition 
> <http://www.manning.com/bauer3/>
> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
> Spring Batch in Action <http://www.manning.com/templier/>
> Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> 
> Home: http://garygregory.com/ <http://garygregory.com/>
> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
> 
> 
> -- 
>  
> 
> Mikael Ståldal
> Senior software developer 
> 
> Magine TV
> mikael.stal...@magine.com <mailto:mikael.stal...@magine.com>    
> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com  
> <http://www.magine.com/>
> 
> Privileged and/or Confidential Information may be contained in this message. 
> If you are not the addressee indicated in this message
> (or responsible for delivery of the message to such a person), you may not 
> copy or deliver this message to anyone. In such case, 
> you should destroy this message and kindly notify the sender by reply email.  
>  
> 
> 
> 
> -- 
> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
> ggreg...@apache.org  <mailto:ggreg...@apache.org>
> Java Persistence with Hibernate, Second Edition 
> <http://www.manning.com/bauer3/>
> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
> Spring Batch in Action <http://www.manning.com/templier/>
> Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> 
> Home: http://garygregory.com/ <http://garygregory.com/>
> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
> 
> 
> -- 
> Matt Sicker <boa...@gmail.com <mailto:boa...@gmail.com>>

Reply via email to