The signature changes from void to ICollection shouldn't break anything. Now 
the configurators return a list of configuration messages. I suppose it should 
return an array of a certain type instead of just ICollection. Maybe something 
like ConfigurationMessage[] or  LogLog[]. I lean more towards 
ConfigurationMessage[]...LogLog sounds like it came from the Department of 
Redundancy Department.

Calls to LogLog are now required to pass in the Type of the caller which 
replaced inconsistent string identifiers to identify the source of internal log 
messages.



________________________________
From: Stefan Bodewig <bode...@apache.org>
To: log4net-dev@logging.apache.org
Sent: Tuesday, September 13, 2011 10:51 AM
Subject: diffs between 1.2.10 and current trunk

Hi all,

in order to shape up for the release I diffed the 1.2.10 release ZIP
source tree against current trunk's src and used BitDiffer from
bitwidgets[1] to compare the DEBUG assemblies targeting 2.0 in binary.
The results can be found in
<http://people.apache.org/~bodewig/log4net/diffs/>

The source code diffs are mainly there so we can put together proper
release notes and see whether there are changes not covered by resolved
JIRA issues.  They may also be useful to catch mistakes now, but that is
going to require a long time and sharp eyes, I'm afraid.

I've set up BitDiffer to not compare implementations but really only
signatures.  The breaking changes it flags right now:

(1) the several variations of static Configure methods in configurators
    now return ICollection, they used to be void methods.

(2) ConverterInfo used to be a nested class of PatternLayout and has
    been moved to the Util namespace.

(3) The signature of the CreateLogger method in ILoggerFactory has changed.

(4) Several LogLog method signatures have changed.

Of this only (3) really concerns me as I consider ConverterInfo and
LogLog internal to log4net and the change in return type shouldn't cause
anything to break IMHO.

The change in ILoggerFactory happend in svn revision 515275[2] for
LOG4NET-97[3].  Back then Nicko was aware this was breaking BWC (the
commit log says so) but accepted it as necessary.  This likely means we
should document the change and live with it.

Stefan

[1] http://bitwidgets.com/

[2] https://svn.apache.org/viewvc?view=revision&revision=515275

[3] https://issues.apache.org/jira/browse/LOG4NET-97

Reply via email to