So what would this look like? Just stick all the interfaces in there? And
add more interfaces for things that are "public" and "supported"?

Gary

On Wed, Sep 7, 2016 at 9:26 PM, Matt Sicker <[email protected]> wrote:

> This is actually why I suggested making an spi package long ago in core
> for public classes that would remain BC. Sadly, it's a little late for that
> now.
>
> On 7 September 2016 at 23:22, Gary Gregory <[email protected]> wrote:
>
>> On Wed, Sep 7, 2016 at 9:17 PM, Remko Popma <[email protected]>
>> wrote:
>>
>>> Okay.
>>> Shall we introduce an @Internal annotation?
>>>
>>
>> Please no, everything in Core is internal. I think we need to start with
>> English sentences before we get caught up on details of how to communicate
>> that to users.
>>
>> Gary
>>
>>
>>>
>>> Sent from my iPhone
>>>
>>> On 2016/09/08, at 12:52, Matt Sicker <[email protected]> wrote:
>>>
>>> I agree that util packages are out of scope for BC. That's especially
>>> true in log4j-api where everything else has BC concerns.
>>>
>>> On 7 September 2016 at 21:14, Gary Gregory <[email protected]>
>>> wrote:
>>>
>>>> I do not think NullOutputStream.NULL_OUTPUT_STREAM is a good example
>>>> because the Core util package is or should out of bounds for BC. I thought
>>>> we had "agreed" on that.
>>>>
>>>> Gary
>>>>
>>>> On Wed, Sep 7, 2016 at 5:29 PM, Remko Popma <[email protected]>
>>>> wrote:
>>>>
>>>>> We should make an effort not to break compatibility unless it's
>>>>> unavoidable. There is usually a way to accomplish things without breaking
>>>>> BC.
>>>>>
>>>>> This is doubly true for plugins but should be our policy in general.
>>>>>
>>>>> We should not make breaking changes for aesthetic reasons. For
>>>>> example, NullOutputStream.NULL_OUTPUT_STREAM would have been better
>>>>> named INSTANCE, but this is one thing I would not change at this stage.
>>>>>
>>>>> One of the reasons people (I think on the Spark mailing list)
>>>>> mentioned for putting off upgrading from Log4j 1.2 to Log4j 2 was worries
>>>>> we would make breaking changes.
>>>>>
>>>>>
>>>>> Sent from my iPhone
>>>>>
>>>>> On 2016/09/08, at 8:03, Gary Gregory <[email protected]> wrote:
>>>>>
>>>>> On Wed, Sep 7, 2016 at 1:02 PM, Ralph Goers <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> We really need to document what we want to strive to maintain
>>>>>> compatibility with in core.  Basic components like Appenders and their
>>>>>> managers, Filters, Layouts, & Lookups or pretty much any Plugin type 
>>>>>> would
>>>>>> be at the top of my list.
>>>>>>
>>>>>
>>>>> Bleh, then we need to mark methods in some @tag-way in Javadocs.
>>>>>
>>>>> Gary
>>>>>
>>>>>>
>>>>>> Ralph
>>>>>>
>>>>>> On Sep 7, 2016, at 11:05 AM, Gary Gregory <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>> On Wed, Sep 7, 2016 at 11:41 AM, Remko Popma <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>> We should do this before starting the 2.7 release.
>>>>>>> If we are serious about being the replacement for Log4j 1.2 we
>>>>>>> should not break user code for no good reason.
>>>>>>>
>>>>>>
>>>>>> What does this have to do with 1.2?
>>>>>>
>>>>>> Gary
>>>>>>
>>>>>>>
>>>>>>> On Wed, Sep 7, 2016 at 7:25 AM, Remko Popma <[email protected]>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> I think that would be good.
>>>>>>>>
>>>>>>>> Based on the number of Jira tickets being filed we are beginning to
>>>>>>>> see increased uptake. Programmatic configuration is used surprisingly
>>>>>>>> often. Leaving the factory methods in with some reasonable default for 
>>>>>>>> the
>>>>>>>> missing parameters ensures existing users can smoothly upgrade.
>>>>>>>>
>>>>>>>> Sent from my iPhone
>>>>>>>>
>>>>>>>> On 2016/09/07, at 3:03, Matt Sicker <[email protected]> wrote:
>>>>>>>>
>>>>>>>> All the commits that removed deprecated factory methods it sounds
>>>>>>>> like.
>>>>>>>>
>>>>>>>> On 6 September 2016 at 13:00, Gary Gregory <[email protected]>
>>>>>>>>  wrote:
>>>>>>>>
>>>>>>>>> On Tue, Sep 6, 2016 at 12:31 PM, Matt Sicker <[email protected]>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Should we revert those commits? There's still time.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> What commit? Do you mean to add back factory methods?
>>>>>>>>>
>>>>>>>>> Gary
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 3 September 2016 at 01:12, Ralph Goers <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Perhaps we shouldn’t have.
>>>>>>>>>>>
>>>>>>>>>>> Ralph
>>>>>>>>>>>
>>>>>>>>>>> On Sep 2, 2016, at 7:46 PM, Matt Sicker <[email protected]>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>> We've already removed several deprecated factories in this
>>>>>>>>>>> upcoming release, though.
>>>>>>>>>>>
>>>>>>>>>>> On 2 September 2016 at 06:28, Mikael Ståldal <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> I agree with Remko, let's keep them unless they are in the way.
>>>>>>>>>>>> We can remove all of them in Log4j 3.0.
>>>>>>>>>>>>
>>>>>>>>>>>> On Fri, Sep 2, 2016 at 1:31 AM, Remko Popma <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> It was mentioned on a mailing list or twitter conversation
>>>>>>>>>>>>> with maintainers of another Apache project that one of the 
>>>>>>>>>>>>> reasons they
>>>>>>>>>>>>> hesitate to migrate to Log4j is that they worry we will break 
>>>>>>>>>>>>> binary
>>>>>>>>>>>>> compatibility.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Removing the factory methods just because we deprecated them
>>>>>>>>>>>>> seems a bit harsh.
>>>>>>>>>>>>> It's not like it's a huge maintenance effort to keep them.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I would not remove the deprecated factory methods unless they
>>>>>>>>>>>>> actively prevent us from doing something we want to do.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Remko
>>>>>>>>>>>>> Sent from my iPhone
>>>>>>>>>>>>>
>>>>>>>>>>>>> On 2016/09/02, at 6:29, Ralph Goers <
>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> Well, Java seems to have a policy of waiting at least 10
>>>>>>>>>>>>> years, if ever….
>>>>>>>>>>>>>
>>>>>>>>>>>>> Seriously, I don’t think 1 minor release is enough as that
>>>>>>>>>>>>> might very well be the next release.  I’d say 2 minor releases 
>>>>>>>>>>>>> and at least
>>>>>>>>>>>>> 6 months.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Ralph
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Sep 1, 2016, at 1:42 PM, Matt Sicker <[email protected]>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> I think that when you add a builder and deprecate the factory,
>>>>>>>>>>>>> you should remove it in the next 2.x release. Otherwise, 
>>>>>>>>>>>>> deprecation has no
>>>>>>>>>>>>> point if there's no version with the deprecation specified.
>>>>>>>>>>>>>
>>>>>>>>>>>>> On 1 September 2016 at 13:40, Gary Gregory <
>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> When can we delete factory methods that are deprecated by
>>>>>>>>>>>>>> builders?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> E-Mail: [email protected] | [email protected]
>>>>>>>>>>>>>> <[email protected]>
>>>>>>>>>>>>>> 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
>>>>>>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Matt Sicker <[email protected]>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>
>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>
>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>> [email protected]
>>>>>>>>>>>> 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 <[email protected]>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Matt Sicker <[email protected]>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> E-Mail: [email protected] | [email protected]
>>>>>>>>> <[email protected]>
>>>>>>>>> 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
>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Matt Sicker <[email protected]>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> E-Mail: [email protected] | [email protected]
>>>>>> <[email protected]>
>>>>>> 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
>>>>>> Home: http://garygregory.com/
>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> E-Mail: [email protected] | [email protected]
>>>>> 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
>>>>> Home: http://garygregory.com/
>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> E-Mail: [email protected] | [email protected]
>>>> 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
>>>> Home: http://garygregory.com/
>>>> Tweet! http://twitter.com/GaryGregory
>>>>
>>>
>>>
>>>
>>> --
>>> Matt Sicker <[email protected]>
>>>
>>>
>>
>>
>> --
>> E-Mail: [email protected] | [email protected]
>> 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
>> Home: http://garygregory.com/
>> Tweet! http://twitter.com/GaryGregory
>>
>
>
>
> --
> Matt Sicker <[email protected]>
>



-- 
E-Mail: [email protected] | [email protected]
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
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Reply via email to