XMLBeans in 4.0.0 release

classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

XMLBeans in 4.0.0 release

pj.fanning
Relating to https://bz.apache.org/bugzilla/show_bug.cgi?id=59268 : would it
be possible to have a vote on what the XMLBeans solution should be for the
4.0.0 release?
I understand the desire to replace XMLBeans altogether but I don't think we
have enough developer time available to do this in the 4.0.0 time frame.

1. Keep Apache XMLBeans 2.6.0 dependency - if users run into issues with
XMLBeans, they can choose to configure their own project builds to swap in
https://github.com/pjfanning/xmlbeans instead.
2. Make https://github.com/pjfanning/xmlbeans the default dependency
3. Delay POI 4.0.0 release until we can get an adequate replacement for
XMLBeans.




--
Sent from: http://apache-poi.1045710.n5.nabble.com/POI-Dev-f2312866.html

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: XMLBeans in 4.0.0 release

Murphy, Mark
Let me say first that I am generally not in favor of a rip and replace strategy. It tends to be change for the sake of change, and if we can avoid it, that would be better. I know that we have issues with XMLBeans, but since we have been offered the opportunity to patch XMLBeans, maybe that would be the appropriate choice rather than replacement.

On the other hand:

The current dependency is XMLBeans 2.3.0, but we could potentially bump that up to 2.6.0. I agree that it will take a lot of work to replace XMLBeans, and given we haven't identified a viable replacement, that work should be focused toward architecting a scheme to make its replacement easier. In the meantime, I don't think we can really afford to delay 4.0.0 until we have identified the replacement and completed the rearchitecting, and built the new scheme. Maybe we say that 5.0.0 will have a new plugin architecture that will decouple the XML marshaller from the API, and 6.0.0 would add new plugins for one or more additional marshallers. That is a lot of work, and would require rethinking how the whole POI project views reading and writing XML formats.

There are other things to consider as well. Right now we handle the XML, and for binary formats, the binary records in line so that we can easily retain unknown parts/records/XML. But do we have to do it this way. If we used a reader/writer strategy and maintained the document in POJOs, then maybe in each POJO we could have a place to store unexpected data for writing back to the document. Maybe that would allow us to use less memory. A reader/writer strategy could make it easier to keep all access using XMLBeans or whatever XML marshaller we decide to use in the readers and writers. And we could potentially have readers for various file formats, and writers for various formats, and therefore be able to read in CSV for example, and write back out in XLSX.

This decoupling would make it impossible to just go into the XML to add an additional feature, but that is currently true of the HxxF formats (not technically, but effectively due to the complexity of the HxxF formats). But it would make conversions to HTML and PDF much easier as we wouldn't have to write a converter for each format we can read, but rather a single writer for each format we wish to write. We could also conceivably support the OASIS Open Document Format this way by just adding a reader and writer for each document type.

This probably goes way beyond what anyone was thinking.

Anyway, I vote #1, but make sure #2 continues to work.

-----Original Message-----
From: pj.fanning [mailto:[hidden email]]
Sent: Monday, January 08, 2018 7:52 AM
To: [hidden email]
Subject: XMLBeans in 4.0.0 release

Relating to https://bz.apache.org/bugzilla/show_bug.cgi?id=59268 : would it be possible to have a vote on what the XMLBeans solution should be for the
4.0.0 release?
I understand the desire to replace XMLBeans altogether but I don't think we have enough developer time available to do this in the 4.0.0 time frame.

1. Keep Apache XMLBeans 2.6.0 dependency - if users run into issues with XMLBeans, they can choose to configure their own project builds to swap in https://github.com/pjfanning/xmlbeans instead.
2. Make https://github.com/pjfanning/xmlbeans the default dependency 3. Delay POI 4.0.0 release until we can get an adequate replacement for XMLBeans.




--
Sent from: http://apache-poi.1045710.n5.nabble.com/POI-Dev-f2312866.html

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

Nick Burch-2
In reply to this post by pj.fanning
On Mon, 8 Jan 2018, pj.fanning wrote:
> I understand the desire to replace XMLBeans altogether but I don't think
> we have enough developer time available to do this in the 4.0.0 time
> frame.

Given the amount of work that'd take, and a desire for other features and
bugs to be worked on in the mean time, I'd agree!


> 1. Keep Apache XMLBeans 2.6.0 dependency - if users run into issues with
> XMLBeans, they can choose to configure their own project builds to swap in
> https://github.com/pjfanning/xmlbeans instead.

I don't think that's a good new-user experience (nor upgrading user
experience), the "default" they're pushed towards is known to have
problems and they'll likely struggle with them for a while before
discovering the fix

> 2. Make https://github.com/pjfanning/xmlbeans the default dependency
> 3. Delay POI 4.0.0 release until we can get an adequate replacement for
> XMLBeans.

I'd suggest we either go back to the Attic PMC and do a fixed release of
XMLBeans there (based on your fixed github fork), or fork XMLBeans within
POI (based on your fixed fork) and release a fixed release ourselves.

Either way, we then have POI depend on a known-fixed rather than
known-broken jar by default!

Nick

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

Greg Woolsey
+1 for either of those options resulting in 4.0.0 depending on an updated
and fixed XML Beans. I don't care which.  An updated attic release is
slightly preferable to me, but if that's troublesome to pull off then a POI
fork is fine.

On Tue, Jan 9, 2018, 00:28 Nick Burch <[hidden email]> wrote:

> On Mon, 8 Jan 2018, pj.fanning wrote:
> > I understand the desire to replace XMLBeans altogether but I don't think
> > we have enough developer time available to do this in the 4.0.0 time
> > frame.
>
> Given the amount of work that'd take, and a desire for other features and
> bugs to be worked on in the mean time, I'd agree!
>
>
> > 1. Keep Apache XMLBeans 2.6.0 dependency - if users run into issues with
> > XMLBeans, they can choose to configure their own project builds to swap
> in
> > https://github.com/pjfanning/xmlbeans instead.
>
> I don't think that's a good new-user experience (nor upgrading user
> experience), the "default" they're pushed towards is known to have
> problems and they'll likely struggle with them for a while before
> discovering the fix
>
> > 2. Make https://github.com/pjfanning/xmlbeans the default dependency
> > 3. Delay POI 4.0.0 release until we can get an adequate replacement for
> > XMLBeans.
>
> I'd suggest we either go back to the Attic PMC and do a fixed release of
> XMLBeans there (based on your fixed github fork), or fork XMLBeans within
> POI (based on your fixed fork) and release a fixed release ourselves.
>
> Either way, we then have POI depend on a known-fixed rather than
> known-broken jar by default!
>
> Nick
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>
Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

Alain FAGOT BÉAREZ

+1 for either of those options resulting in 4.0.0 depending on an updated and fixed XML Beans.

I can't estimate which one is easier to achieve and maintain.



-------- Originale Nachricht --------
Von: Greg Woolsey <[hidden email]>
Gesendet: Tue Jan 09 13:08:04 GMT-03:00 2018
An: POI Developers List <[hidden email]>
Betreff: Re: XMLBeans in 4.0.0 release

+1 for either of those options resulting in 4.0.0 depending on an updated
and fixed XML Beans. I don't care which.  An updated attic release is
slightly preferable to me, but if that's troublesome to pull off then a POI
fork is fine.

On Tue, Jan 9, 2018, 00:28 Nick Burch <[hidden email]> wrote:

> On Mon, 8 Jan 2018, pj.fanning wrote:
> > I understand the desire to replace XMLBeans altogether but I don't think
> > we have enough developer time available to do this in the 4.0.0 time
> > frame.
>
> Given the amount of work that'd take, and a desire for other features and
> bugs to be worked on in the mean time, I'd agree!
>
>
> > 1. Keep Apache XMLBeans 2.6.0 dependency - if users run into issues with
> > XMLBeans, they can choose to configure their own project builds to swap
> in
> > https://github.com/pjfanning/xmlbeans instead.
>
> I don't think that's a good new-user experience (nor upgrading user
> experience), the "default" they're pushed towards is known to have
> problems and they'll likely struggle with them for a while before
> discovering the fix
>
> > 2. Make https://github.com/pjfanning/xmlbeans the default dependency
> > 3. Delay POI 4.0.0 release until we can get an adequate replacement for
> > XMLBeans.
>
> I'd suggest we either go back to the Attic PMC and do a fixed release of
> XMLBeans there (based on your fixed github fork), or fork XMLBeans within
> POI (based on your fixed fork) and release a fixed release ourselves.
>
> Either way, we then have POI depend on a known-fixed rather than
> known-broken jar by default!
>
> Nick
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>
Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

Dave Fisher-5
In reply to this post by Nick Burch-2
Hi -

I think that releasing a package with right XMLbean path in Maven Central might be best for our users. Finding that they have issues with old XMLbeans might be subtly difficult. I could be wrong.

Regards,
Dave

Sent from my iPhone

> On Jan 9, 2018, at 12:28 AM, Nick Burch <[hidden email]> wrote:
>
>> On Mon, 8 Jan 2018, pj.fanning wrote:
>> I understand the desire to replace XMLBeans altogether but I don't think we have enough developer time available to do this in the 4.0.0 time frame.
>
> Given the amount of work that'd take, and a desire for other features and bugs to be worked on in the mean time, I'd agree!
>
>
>> 1. Keep Apache XMLBeans 2.6.0 dependency - if users run into issues with
>> XMLBeans, they can choose to configure their own project builds to swap in
>> https://github.com/pjfanning/xmlbeans instead.
>
> I don't think that's a good new-user experience (nor upgrading user experience), the "default" they're pushed towards is known to have problems and they'll likely struggle with them for a while before discovering the fix
>
>> 2. Make https://github.com/pjfanning/xmlbeans the default dependency
>> 3. Delay POI 4.0.0 release until we can get an adequate replacement for
>> XMLBeans.
>
> I'd suggest we either go back to the Attic PMC and do a fixed release of XMLBeans there (based on your fixed github fork), or fork XMLBeans within POI (based on your fixed fork) and release a fixed release ourselves.
>
> Either way, we then have POI depend on a known-fixed rather than known-broken jar by default!
>
> Nick
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

kiwiwings
Hi,

we had this discussion already before [1].

- at 1) ... -1, we should get rid of the known errors

- at 2) ... if we get something with apache/poi in its name, I would +1 it. I still don't get it, why we can't have it as a module in our codebase - keeping everything apart the maven group id.
if we would switch to jaxb, we probably need to have something similar - although the last result was, that a jaxb fork should be imported, i.e. not provided by the project itself. [2]
How about opening a github contrib project?

- at 3) ... -1, a xml/model/writer replacement would take too long

Andi

[1] http://apache-poi.1045710.n5.nabble.com/DISCUSS-Getting-a-fixed-version-of-XMLBeans-td5729378.html

[2] https://issues.apache.org/jira/browse/LEGAL-264



signature.asc (495 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

pj.fanning
I don't fancy trying to merge the xmlbeans and poi ant builds. I've been
trying for an hour or more and still getting issues.

If the major objection to the com.github.pjfanning:xmlbeans dependency is
that my name is in the groupId, I can request a new groupId from OSS
Sonatype. They require that you own the domain for the groupId that you
request, that's why is was easy for me to get `com.github.pjfanning`. I've
just created a new github organisation with the name `xmlbeans`. This would
allow me to request `com.github.xmlbeans` as a groupId. If this approach is
acceptable, I can move my xmlbeans repo to this org and I can invite other
users to be part of the org.



--
Sent from: http://apache-poi.1045710.n5.nabble.com/POI-Dev-f2312866.html

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

Nick Burch-2
On Wed, 10 Jan 2018, pj.fanning wrote:
> I don't fancy trying to merge the xmlbeans and poi ant builds. I've been
> trying for an hour or more and still getting issues.

There's no need to do this!

We'd keep the two codebases separate, and probably release at different
times. (XMLBeans hardly ever, except when we find bugs) All that would
happen is that we'd swap the group ID, add POI to the release names, and
update the readme etc to refer to POI as the PMC providing the oversight

So, assuming we're releasing it as POI rather than getting it out of the
attic:
  * Copy xmlbeans trunk in svn to
    https://svn.apache.org/repos/asf/poi/xmlbeans/trunk
  * Merge in the fixes
  * Update the bin/src packages to have poi in them, eg
    xmlbeans-poi-2.6.5-bin.zip
  * Update the poms to be under org.apache.poi rather than xmlbeans
  * Test, vote, release!

Or, if we want to take xmlbeans out of the attic, we'd do:
  * Vote to take it on
  * Wait for attic PMC to confirm
  * Get infra to unlock svn for xmlbeans
  * Merge in fixes
  * Test, vote, release!

Nick

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: XMLBeans in 4.0.0 release

Murphy, Mark
If we are going to take on maintenance of XMLBeans, I would suggest that getting it out of the attic would be the most appropriate course of action. This would reduce confusion for people trying to find XML Beans as there would only be a single project to reference rather than one in the attic and another in the POI project.

-----Original Message-----
From: Nick Burch [mailto:[hidden email]]
Sent: Thursday, January 11, 2018 12:59 AM
To: POI Developers List <[hidden email]>
Subject: Re: XMLBeans in 4.0.0 release

On Wed, 10 Jan 2018, pj.fanning wrote:
> I don't fancy trying to merge the xmlbeans and poi ant builds. I've
> been trying for an hour or more and still getting issues.

There's no need to do this!

We'd keep the two codebases separate, and probably release at different times. (XMLBeans hardly ever, except when we find bugs) All that would happen is that we'd swap the group ID, add POI to the release names, and update the readme etc to refer to POI as the PMC providing the oversight

So, assuming we're releasing it as POI rather than getting it out of the
attic:
  * Copy xmlbeans trunk in svn to
    https://svn.apache.org/repos/asf/poi/xmlbeans/trunk
  * Merge in the fixes
  * Update the bin/src packages to have poi in them, eg
    xmlbeans-poi-2.6.5-bin.zip
  * Update the poms to be under org.apache.poi rather than xmlbeans
  * Test, vote, release!

Or, if we want to take xmlbeans out of the attic, we'd do:
  * Vote to take it on
  * Wait for attic PMC to confirm
  * Get infra to unlock svn for xmlbeans
  * Merge in fixes
  * Test, vote, release!

Nick

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: XMLBeans in 4.0.0 release

Javen O'Neal-2
Bringing xmlbeans out of the attic is my vote.

I can be one of the Xmlbeans PMCs if all we are missing is a head count and
a couple emails to infra.

I don't see taking Xmlbeans out of the attic as a huge support burden. It's
a stable, complete product and any future development is probably just
small bug fixes. As long as infra is okay with that philosophy, removing
Xmlbeans from the attic causes the least confusion for everyone, and may
reduce our support load for POI and Tika when users can't get xmlbeans
working (even if all it is is linking to the FAQ and PJ's GitHub).

Every email we receive probably was the result of 8 hours of struggling to
diagnose the problem in their build setup, and several others who gave up
without contacting us.

On Jan 11, 2018 05:02, "Murphy, Mark" <[hidden email]> wrote:

> If we are going to take on maintenance of XMLBeans, I would suggest that
> getting it out of the attic would be the most appropriate course of action.
> This would reduce confusion for people trying to find XML Beans as there
> would only be a single project to reference rather than one in the attic
> and another in the POI project.
>
> -----Original Message-----
> From: Nick Burch [mailto:[hidden email]]
> Sent: Thursday, January 11, 2018 12:59 AM
> To: POI Developers List <[hidden email]>
> Subject: Re: XMLBeans in 4.0.0 release
>
> On Wed, 10 Jan 2018, pj.fanning wrote:
> > I don't fancy trying to merge the xmlbeans and poi ant builds. I've
> > been trying for an hour or more and still getting issues.
>
> There's no need to do this!
>
> We'd keep the two codebases separate, and probably release at different
> times. (XMLBeans hardly ever, except when we find bugs) All that would
> happen is that we'd swap the group ID, add POI to the release names, and
> update the readme etc to refer to POI as the PMC providing the oversight
>
> So, assuming we're releasing it as POI rather than getting it out of the
> attic:
>   * Copy xmlbeans trunk in svn to
>     https://svn.apache.org/repos/asf/poi/xmlbeans/trunk
>   * Merge in the fixes
>   * Update the bin/src packages to have poi in them, eg
>     xmlbeans-poi-2.6.5-bin.zip
>   * Update the poms to be under org.apache.poi rather than xmlbeans
>   * Test, vote, release!
>
> Or, if we want to take xmlbeans out of the attic, we'd do:
>   * Vote to take it on
>   * Wait for attic PMC to confirm
>   * Get infra to unlock svn for xmlbeans
>   * Merge in fixes
>   * Test, vote, release!
>
> Nick
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email] For additional
> commands, e-mail: [hidden email]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>
Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

pj.fanning
In reply to this post by pj.fanning
Who would be in a position to follow up with Apache Foundation (or XMLBeans
PMC) about taking XMLBeans out of the attic?

Nick summarised the requirements, as follows:

  * Vote to take it on
  * Wait for attic PMC to confirm
  * Get infra to unlock svn for xmlbeans
  * Merge in fixes
  * Test, vote, release!

I would +1 the idea of taking xmlbeans out of attic (as opposed to us moving
it to Poi as a subproject).





--
Sent from: http://apache-poi.1045710.n5.nabble.com/POI-Dev-f2312866.html

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: XMLBeans in 4.0.0 release

kiwiwings
I guess the XMLBeans release will anyway take some time, but I've found an issue with [1],
please don't start preparing the POI release without that being resolved.

Andi


[1] https://github.com/apache/poi/pull/90



signature.asc (495 bytes) Download Attachment