[ https://issues.apache.org/jira/browse/AVRO-1605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15529260#comment-15529260 ]
Tom White commented on AVRO-1605: --------------------------------- I see your point. The motivation behind this change is to upgrade to Jackson 2 (AVRO-1126), so another way to approach this would be to see how the deprecated methods could be removed in making that change. I think the main problem here is that there are public methods that should really only be used by the internals, like JsonProperties#addProp(). In the absence of any Java-level mechanism for dealing with that, our options are i) relying on documentation (or an annotation) to say that a method is internal only, or ii) using a friend package schema and excluding the friend package from javadoc (see http://wiki.apidesign.org/wiki/APIDesignPatterns:FriendPackages). Ideally, we'd also make Schema immutable at the same time, but that doesn't make this problem any easier. > Remove Jackson classes from public API > -------------------------------------- > > Key: AVRO-1605 > URL: https://issues.apache.org/jira/browse/AVRO-1605 > Project: Avro > Issue Type: Sub-task > Components: java > Affects Versions: 1.7.8 > Reporter: Tom White > Assignee: Gabor Szadovszky > Fix For: 1.9.0 > > -- This message was sent by Atlassian JIRA (v6.3.4#6332)