Hi Andi,

On Ant vs. Maven: could we at least combine the Sonar and normal Maven
scripts to at least start removing some of the duplication here?

On the general discussion:
I also sometimes feel that I am allowed to work on what sounds interesting
and do not need to do one bugfix after the other. And I like that you are
taking on such tasks so that we do not have a single changelog-entry
"bugfixes" in the release announcement. We should find some balance to have
a mature and stable product with up-to-date features. POI is open source,
everybody who stumbles across a bug can step in. What we should however do
is to make it as easy as possible for others to provide bugfixes.

Here a few initial ideas where we could improve this:

1. Add some CI to the Github project so that PRs are automatically verified
2. Move to Git/Github
3. Use Apache Yetus to have a default process for verifying patches, see
https://yetus.apache.org/, although it does not seem to support SVN, so 2.
would be a prerequisite
4. Alternatively we could automate verification of patches in bugzilla to
provide quicker response, although I feel that the entries in bugzilla are
not streamlined enough to easily automate verification, Github would
provide all of this out-of-the-box!
5. Use some donation-scheme for bugfixes so people affected by bugs can
offer some compensation and developers can make some money for fixing
certain bugs
5. ... what else?

I would like to do at least 1. fairly soon as it can be done very easily
just by adding a .travis.yml file with build-definitions.

Dominik.

On Thu, Mar 10, 2016 at 12:46 AM, Andreas Beeker <kiwiwi...@apache.org>
wrote:

> Hi,
>
> first of all, thank you for your comments.
>
> TL;DR: I put it on hold.
>
>
> > However also Gradle has quite a learning curve, ...
>
> I've checked their quick start for the first time ... probably I'm unaware
> of Gradle as I'm not an android developer,
> and only a maven user of spring(/hibernate)/... - at least it seems to
> grow fast [1]
>
>
> > there is quite a bit more in the Ant build ...
>
> yes ... nothing I'd fear about moving ;) ... my motivation for the switch
> is the things I forget,
> when something is changed ... e.g. for a new library dependency (1) the
> download in the ant build,
> (2) the lib file location, (3) the sonar pom, (4) the maven pom, (5) the
> eclipse project needs to be changed.
> With a build based on maven, only the corresponding maven pom needs to be
> changed and
> the IDEs usually update their config automatically.
>
>
> > ... "haven't you got enough real bugs to work on, without breaking
> something that works"
>
> Off-topic: hmm ... I know that saying from my $dayjob ... if you work on a
> budget, you need to do what is requested ...
> ... whereas on an open source project, you can do what is accepted and
> hopefully makes sense.
> So even if there are a few hundred bugs opened, I still prefer to do what
> I'm interested in (my free time ...)
> So lets get back to the topic ...
>
>
> > clean-ups the directory structures ... risks breaking lots of pending
> patches and private forks
>
> @pending patches: I wouldn't change the package structure, so patching
> with ignored root folders
> should be still possible
>
> @private forks: do we really care about who is forking us? ... I know this
> a limited attitude, but keeping
> our API stable is sometimes already a burden ... I don't want to think
> about the impact what happens
> when I modify the internals (e.g. refractoring), just because someone
> anonymous has modifications on
> a historical revision of our trunk
>
>
> > Don't the existing ant-generated maven poms have all that in?
> at least they need to be adapted when new external versions are used.
>
>
> > Plus the website, which is where most people seem to look. ...
> The info on the website would be still valid for quite some time.
>
>
> > I really worry that if we add more, even more beginners won't be able to
> get it working and will give up ...
> Although I like the idea of scratchpad, i.e. to try something new and not
> always obey the rules of api stability,
> the code partitioning in the maven modules are a bit confusing - not sure
> if this makes more sense,
> but I would prefer something like:
> - poi-core : poifs, opcpackage
> - either poi-ss or poi-xssf/poi-hssf
> - same for sl, wp, visio
> the (xml-)modules would contain the format specific lite-versions of the
> schemas or even the full JAXB schemas. *)
> So a user needs to reference only poi-ss (poi-core would be a transitive
> maven dependency)
>
> *) (sorry again, as I stressed this several times and haven't brought up a
> POC with JAXB up till now)
>
>
> > ... and whine when people point them at the docs / tell them to use
> maven / etc...
> hmm ... I only know it the other way around, i.e. they whine first and
> when pointed to the FAQ (#faq-N10025)
> it's usually solved ...
>
>
> So currently my motivation to progress in this direction is bit hushed.
> I thought about creating a branch and using externals to link the trunk to
> see if for a point X in time
> the results of the ant and maven build are the same ... but there are some
> reasons given, which
> I can't really argue without knowing our users reactions ... so I put it
> on hold for the time being.
>
> Andi
>
> [1]
> https://discuss.gradle.org/t/what-open-source-projects-use-gradle-as-the-default-build-tool/7469
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
> For additional commands, e-mail: dev-h...@poi.apache.org
>
>

Reply via email to