[ https://issues.apache.org/jira/browse/SOLR-17518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17936277#comment-17936277 ]
Pierre Salagnac commented on SOLR-17518: ---------------------------------------- Thanks for pointing this [~dsmiley]. There is indeed a small compilation change, where old code that was creating a new {{RequestWriter}} will now have to create a new {{{}XMLRequestWriter{}}}. That's unclear to me that we require a *strict* compilation backward compatibility between minor versions. When we do Lucene upgrade in Solr for example, we do have to handle some minor changes to get everything compiling with the new version. My understanding was that's acceptable to require some similar change with a new SolrJ version. The required change here would be a very simple renaming, which does not force a SolrJ user to redesign and rewrite some more complex code. There is no feature drop. Maybe that's a good opportunity to have a broader discussion on what is required for backward compatibility and write guidelines? About your comment on the {{CHANGES.txt}} entry, that's fair it does not mention the replacement of the class. I will expand it (assuming we keep the change as it is). > Refactor out a XmlRequestWriter so that RequestWriter is abstract > ----------------------------------------------------------------- > > Key: SOLR-17518 > URL: https://issues.apache.org/jira/browse/SOLR-17518 > Project: Solr > Issue Type: Task > Components: SolrJ > Reporter: David Smiley > Assignee: Pierre Salagnac > Priority: Minor > Labels: newdev, pull-request-available > Fix For: main (10.0), 9.9 > > Time Spent: 2h 20m > Remaining Estimate: 0h > > RequestWriter writes XML; some subclasses write other things. This is > terrible API design; the XML choice should be a subclass, RequestWriter > should be abstract (or an interface). > While we're at this, the XML generation is kind of split into multiple > places; it should be consolidated: UpdateRequest & ClientUtils have XML > generation methods. Those methods should move to the new XmlRequestWriter. > BinaryRequestWriter should probably be final and/or ensure the CBOR one does > not subclass it, which is weird since CBOR != "javabin". > Be sure to note this refactoring in the update notes since SolrJ users will > be impacted. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org For additional commands, e-mail: issues-h...@solr.apache.org