I agree with Jörg's email below. Furthermore, to me, the best chance [math] has a shot to survive and prosper (I'm a glass-half-full kinda guy) is to stay in Commons in its current single module form (KISS) _because_ a bunch of [math] developer's have left. We have a bunch of people in Commons that are smart and _can_ fix _some_ of the problems, can _shepherd_ patches, and _mentor_ newcomers; all of which could not happen in a new TLP unless all Commons committers came along.
$2 (inflation) Gary On Fri, Jun 10, 2016 at 3:19 AM, Jörg Schaible < joerg.schai...@bpm-inspire.com> wrote: > Hi Gilles, > > Gilles wrote: > > > Hi. > > > > On Fri, 10 Jun 2016 01:48:20 +0200, Jörg Schaible wrote: > > [snip] > > >> MATH-172 is about an enhancement. Unfortunately no-one can currently > >> implement it, so we have to wait until someone can or the issue stays > >> simply > >> unresolved again. You've requested for help and that was the proper > >> action. > >> However, there has been no problem to release 3.0 in this state, so > >> why > >> should it be a problem now for 4.0? > > > > Because the context has changed: in 3.0 there was support, now there > > isn't. > > > That does not state the fact, that the code is already released and it does > not matter at all if users ask questions for release 3.0 or 4.0. > > > >> MATH-1735 is a bug report for a problem which is currently not > >> reproducible. > >> Again you did the right action, but without more input and without a > >> possibility to reproduce the problem, there's not much we can do. > >> Again, why > >> should this issue prevent a release of 4.0? > > > > The code in question should not have been in CM. [That was my position > > back > > then (cf. archive).] > > > Again, you cannot change history, it is already released. And a new release > of the code does not make the situation worse. > > > > And every bug report for it is a reminder that unmaintainable code > > should > > not be released. > > > That is your interpretation. For me it is a normal bug report and we can > eigher solve it on our own or have to wait for a contribution. > > > >>> Moreover what could be true for VFS is not for CM where there are > >>> many, > >>> many different areas that have nothing in common (except perhaps > >>> some > >>> ubiquitous very-low utilities which might be worth their own > >>> component > >>> to serve as a, maybe "internal", dependency). > >>> > >>> Also, compare the source basic statistics (lines of code): > >>> VFS CM > >>> Java code 24215 90834 > >>> Unit tests 8926 95595 > >>> > >>> All in all, CM is more than 5 times larger than VFS (not even > >>> counting > >>> documentation). > >> > >> Any why is size suddenly a problem? > > > > Not suddenly. > > I've raised this issue for years. Please look at the archives! > > > Then: Why is size a problem? It is only a problem if *you* try to support > all of it at once. Nobody expects that. > > [snip] > > > >> Fine. But talk about artifacts, not components. Apache Commons Math > >> is still > >> *one* component of Apache Commons. It does not matter if you divide > >> the code > >> into different artifacts as long as anything is released together. > > > > I know. > > > > What you can't seem to get to is that I consider it a bad idea to > > release > > unsupported code. > > > You've stated that multiple times now. > > > > I think that "I do not know (and nobody else does)" is not an > > acceptable > > answer to user requests. > > > See, this is the difference. To me this *is* acceptible. Especially if > users > have to be kind of experts themselves to use this code. > > > > If we _know_ that some parts of the code would be unsupported (such > > that it > > would elicit this kind of answer for bug reports), then it's > > _deceiving_ to > > release that code. > > > A new release does not change the situation at all. With such a definition > we could move quite some of our components directly to the attic, because > the original authors are no longer around and we might currently have no > expert around. > > > >> Individual release cycles for the different parts can only happen if > >> Math is > >> TLP, but not in Apache Commons. We will certainly not allow and > >> create again > >> any sub-umbrellas (search the Jakarta archives). > > > > Who talked about sub-umbrellas? I didn't. > > > I talk about it, because it is what the result looks to me. > > > > I've explained that > > 1. CM cannot be released as it was before > > > You've expressed that *you* don't want to release it as it was before > (well- > founded however). > > > > 2. for some parts, the necessary _minimal_ support has "disappeared" > > > That does not immediately invalidate the existing code. One fact that you > don't want to see. > > > > 3. some parts can be turned into independent components (with _full_ > > support) > > > Have we some kind of agreement here to introduce new Commons components? As > far as I know, we just did not oppose to break Math into individual > artifacts. > > > > 4. Some people are ready to perform the necessary steps in order to > > create these components > > > The work on the code is still independent of a monolithic Math component > vs. > inidividual (let's say) Maven projects. The refactoring is the same if you > simply want to minimize the dependencies between the Java packages in Math. > > > > Please comment on how this contradicts Commons policy. > > > The ASF in general does not like umbrella TLPs at all. Apache Commons > actually has been near this category all the times. We try to manage a > (large) set of general purpose libraries with the intent to provide long > time compatibility (sometimes possibly exaggerated) or provide clear > upgrade > paths if a redesign was necessary. We do this, because we are aware that > our > components are nearly always part of large software stacks and we may > impact > a lot of stuff if we fail. > > However every of our components has a general purpose. Math is described as > "Lightweight, self-contained mathematics and statistics components". The > component in its completeness is certainly no longer lightwight. > > What you propose now, is to move Math in its current state into dormant (or > even attic, because it will then never be revived in its current state) and > create several (how many?) new Commons components, all of them focussed to > a > special mathematical problem. And this is exactly the reason why a bunch of > new Math components no longer fit into Commons, because they fail the > "general purpose". > > It has happened before that a Commons component had outgrown the general > purpose (see former HttpClient that is now a successful TLP) and Math might > be not the last one. Remember, we already had a successful vote for a Math > TLP this year for exactly these reasons. > > [snip] > > > >> What you talk about is a complete new component without a proper > >> upgrade > >> path for users of Math 3.x. > > > > "Commons Math" is a dead end. Is it that which you did not get? > > > It's death when we decide it together. Currently it's your (well-founded) > opinion. > > > There is "Commons" and there are "math codes" implementing various > > functionalities, some in good shape, which I want to help release, > > some in bad shape (for numerous reasons which you don't know about > > and don't seem to want to hear about) which I'm not going to help > > release as long as they are in that state. > > > >> You wanna use the new stuff for complex numbers? > >> Well, adjust your code to the new structures in > >> commons-math-complex-4.0. > > > > No. It should be "commons-complex-numbers-1.0" (or perhaps "0.1" if > > that's allowed). > > > See, I doubt that all devs were aware of the fact, that we're currently not > just talking about a Math component with multiple artifacts, but a bunch of > new Commons components instead (discontinuing the "Math component"). > > > >> Oh, you also want to use genetic algorithms?, Well, that part of the > >> code > >> should stick with commons-math-3.0, because we did not took it over > >> for 4.0. > >> Maybe for 4.1 ... > >> > >> Sorry, but for such a release I already propose my vote today: -1 > > > > So you prefer to sink whole work rather than be pragmatic about the > > new reality. > > > As PMC I care for a sane Commons community with already ~40 maintained > components. > > > > How is that preferable to the user community? > > > And what does the name "commons-complex-numbers-0.1" vs. "commons-math- > complex-number-4.0" change for the users' situation I've described above? > > > >> In that case I'd move Math really into the incubator. > > > > Please do. > > > > There are several options: > > 1. Go on with a monolithic Commons Math > > 2. Break the codebase into (maven) modules > > > Concerning the release cycle, there's no difference between 1 and 2. > > > > 3. Create (in the long term) an all-encompassing TLP > > 4. Create reusable components (right now) > > > IMHO, 4 is not an option for Commons, only for a Math TLP. Which needs an > own community. Which has to be rebuilt. > > > > [Add others if appropriate.] > > > > Which is more useful, in your opinion? > > > As stated above. > > > > To which are you going to contribute (multiple choice allowed, > > of course)? > > > Nowadays I typically care for the release only. And I care for the impact > of > it, because my software stack is also built upon Commons. > > Cheers, > Jörg > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > For additional commands, e-mail: dev-h...@commons.apache.org > > -- E-Mail: garydgreg...@gmail.com | ggreg...@apache.org 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