[geometry] 1.0 Roadmap

2018-09-06 Thread Matt Juntunen
Hi all,

I've been working on the new commons-geometry component for a while now and I 
wanted to share with everyone the current state of the project and what I'm 
picturing for the future, up to a 1.0 release.

Here is where we are now:

  1.  All of the original geometry code from commons-math has been moved to 
commons-geometry.
  2.  Code has been split into a number of distinct modules, per Java 9+ 
conventions.
  3.  The old Vector classes have been completely redesigned and refactored 
into separate Point and Vector classes to better reflect the underlying math.
  4.  All Point and Vector classes are now VALJOs.
  5.  Support for spherical and polar coordinates has been added.

Here is what I'd like to still accomplish before a 1.0 release (in order of 
priority):

  1.  Add additional Vector methods (GEOMETRY-9) -- This includes methods like 
lerp, project, and reject among others. A pull request has been submitted for 
this and is in discussion.
  2.  Vector normalization optimizations (GEOMETRY-10) -- We can avoid a lot of 
computation by making some tweaks here. I've started on this but do not yet 
have a pull request.
  3.  Add matrix-based AffineTransform?D classes (GEOMETRY-14) -- We are sorely 
lacking an API to translate, rotate, and scale.
  4.  Encapsulate concept of tolerance (GEOMETRY-11) -- We currently use raw 
double tolerance values to help determine equality between floating point 
numbers. I think we should encapsulate this into a GeometryContext class to 
ensure that this is done consistently and to allow us to easily tweak the 
algorithm if needed. If anyone has any ideas for how to best maintain floating 
point accuracy here, that would be great.
  5.  API cleanup for Region, Hyperplane, and BSPTree (no JIRA issue yet) -- 
This is a big one and kind of ill-defined. One of the main gripes I and other 
people at my work have had with the old commons-math geometry code was that it 
was awkward to use. You had to jump through a bunch of hoops to do things like 
get the vertices of the union of two 2D shapes. I'd like to try to clean this 
up and streamline some of the common use cases. Comments and feedback on this 
would be great.
  6.  BSPTree optimizations (no JIRA issue yet) -- I have some ideas I'd like 
to try out to speed up the BSP tree code. My unofficial benchmark is to convert 
a model of the Utah teapot I have with ~1000 facets into a PolygonsSet and 
back. The current code cannot do this. It takes forever and then fails, I 
believe due to accumulated floating point errors. If we can get the code to be 
able to do this correctly and in a reasonable amount of time, then I'd feel 
good about making a release.

Thoughts? Comments? I have a project at work coming up near the end of the year 
that I'd really love to use commons-geometry on, so that's what I'm aiming for 
in terms of a timeline.

Thanks,
Matt Juntunen


Re: [VOTE] Release Apache Commons JCS 2.2.1 based on RC4

2018-09-06 Thread Thomas Vandahl
On 27.08.18 18:12, Benedikt Ritter wrote:
> ~/w/a/r/r/t/jcs git:(upstream ⚡ master) > diff -r commons-jcs-2.2.1-RC4/
> commons-jcs-2.2.1-src
> Only in commons-jcs-2.2.1-RC4/: .gitignore
> Only in commons-jcs-2.2.1-RC4/: .svn
> Only in commons-jcs-2.2.1-RC4/: .travis.yml
> Only in commons-jcs-2.2.1-src: LICENSE
> Only in commons-jcs-2.2.1-RC4/: LICENSE.txt
> Only in commons-jcs-2.2.1-src: NOTICE
> Only in commons-jcs-2.2.1-RC4/: NOTICE.txt
> Only in commons-jcs-2.2.1-RC4/: auxiliary-builds
> Only in commons-jcs-2.2.1-RC4/: checkstyle.xml
> Only in commons-jcs-2.2.1-RC4/: commons-jcs-sandbox
> Only in commons-jcs-2.2.1-RC4/: init-git-svn.sh
> Only in commons-jcs-2.2.1-RC4/: jcache-fast.sh
> Only in commons-jcs-2.2.1-RC4/: maven-eclipse-codestyle.xml
> 
> This should be fixed for the next release.

Is it absolutely necessary that the tag contains the exact same files as
the distribution or would it be sufficient that the tag is able to
*build* the identical distribution? That has always been my interpretation.

Bye, Thomas

-
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org



Re: [VOTE] Release Apache Commons Weaver 2.0 based on RC1

2018-09-06 Thread Mark Struberg
checked the source zip from 
https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/source/

sha512 fine
sig fine
builds fine
RAT passes.

+1


LieGrue,
strub

> Am 04.09.2018 um 17:58 schrieb Matt Benson :
> 
> I would like to release the [weaver] component.
> 
> Apache Commons Weaver 2.0 RC1 is available for review at:
>  *https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/
> * (r29084).
> 
> Maven artifacts are at:
>  https://repository.apache.org/content/repositories/orgapachecommons-1377 .
> 
> Tested with Oracle JDKs 8 and 10.
> 
> The Git tag is:
> 
> https://gitbox.apache.org/repos/asf?p=commons-weaver.git;a=tag;h=0eed2d07008fd2bfad32b6f8a03da0299cc61d65
> .
> 
> Site (note some links may be broken; this will be fixed when the site
> is deployed):
> 
> https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/site/index.html
> 
> RAT Report:
> 
> https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/site/rat-report.html
> 
> Quality Reports (PMD/Checkstyle/Findbugs/japicmp):
> 
> https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/site/commons-weaver-parent/commons-weaver-processor/project-reports.html
> 
> https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/site/commons-weaver-parent/commons-weaver-modules-parent/commons-weaver-privilizer-parent/commons-weaver-privilizer-api/project-reports.html
> 
> https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/site/commons-weaver-parent/commons-weaver-modules-parent/commons-weaver-privilizer-parent/commons-weaver-privilizer/project-reports.html
> 
> https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/site/commons-weaver-parent/commons-weaver-modules-parent/commons-weaver-normalizer/project-reports.html
> 
> https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/site/commons-weaver-parent/commons-weaver-maven-plugin/project-reports.html
> 
> https://dist.apache.org/repos/dist/dev/commons/weaver/2.0-RC1/site/commons-weaver-parent/commons-weaver-antlib/project-reports.html
> 
> Keys: https://dist.apache.org/repos/dist/release/commons/KEYS
> 
> Please review the release candidate and vote.
>  This vote will close no sooner than 72 hours from now, i.e. after
> 1600UTC 7-September 2018
> 
>  [ ] +1 Release these artifacts
>  [ ] +0 OK, but...
>  [ ] -0 OK, but really should fix...
>  [ ] -1 I oppose this release because...
> 
>  Thanks!


-
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org



Re: [parent] change in commons.scmPubUrl in Parent 47

2018-09-06 Thread Benedikt Ritter
I have created COMMONSSITE-124 [1] in order to fix this. Will implement a
fix later today.

Benedikt

[1] https://issues.apache.org/jira/browse/COMMONSSITE-124

Am Fr., 31. Aug. 2018 um 13:24 Uhr schrieb Benedikt Ritter <
brit...@apache.org>:

>
>
> Am Fr., 31. Aug. 2018 um 11:38 Uhr schrieb sebb :
>
>> On 31 August 2018 at 10:16, Benedikt Ritter  wrote:
>> > Hello,
>> >
>> > I upgraded commons-csv from parent v43 to parent v47. Now the site build
>> > doesn't work anymore (see below). I think we should roll back said
>> chance,
>> > since it broke multiple working component builds.
>>
>> Which change are you talking about?
>>
>
> The one from the thread title...
>
>
>>
>> Note that if a CP version causes problems, just don't use it.
>> Either revert to an earlier version or release a new one that fixes
>> the issue and then use that.
>>
>> > Benedikt
>> >
>> > commons-csv build log:
>> >
>> > ~/w/a/c/commons-csv git:(master) 1M > mvn site
>> > [INFO] Scanning for projects...
>> > [INFO]
>> > [INFO] ---< org.apache.commons:commons-csv
>> >>---
>> > [INFO] Building Apache Commons CSV 1.6-SNAPSHOT
>> > [INFO] [ jar
>> > ]-
>> > [INFO]
>> > [INFO] --- maven-antrun-plugin:1.8:run (prepare-checkout) @ commons-csv
>> ---
>> > [WARNING] Parameter tasks is deprecated, use target instead
>> > [INFO] Executing tasks
>> >
>> > main:
>> >  [exec] svn: E17: URL '
>> >
>> https://svn.apache.org/repos/infra/websites/production/commons/content/proper/csv
>> '
>> > doesn't exist
>> >  [exec] Result: 1
>> >  [exec] Skipped '/Users/bene/commons-sites/csv/javadocs'
>> >  [exec] svn: E155007: None of the targets are working copies
>> >  [exec] Result: 1
>> > [INFO]
>> > 
>> > [INFO] BUILD FAILURE
>> > [INFO]
>> > 
>> > [INFO] Total time: 3.199 s
>> > [INFO] Finished at: 2018-08-31T11:13:39+02:00
>> > [INFO]
>> > 
>> > [ERROR] Failed to execute goal
>> > org.apache.maven.plugins:maven-antrun-plugin:1.8:run (prepare-checkout)
>> on
>> > project commons-csv: An Ant BuildException has occured:
>> > /Users/bene/commons-sites/csv does not exist.
>> > [ERROR] around Ant part ..
>> @
>> > 10:44 in
>> >
>> /Users/bene/workspace/apache/commons/commons-csv/target/antrun/build-main.xml
>> > [ERROR] -> [Help 1]
>> > [ERROR]
>> > [ERROR] To see the full stack trace of the errors, re-run Maven with
>> the -e
>> > switch.
>> > [ERROR] Re-run Maven using the -X switch to enable full debug logging.
>> > [ERROR]
>> > [ERROR] For more information about the errors and possible solutions,
>> > please read the following articles:
>> > [ERROR] [Help 1]
>> > http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
>> >
>> >
>> >
>> > Am Mi., 22. Aug. 2018 um 21:22 Uhr schrieb Benedikt Ritter <
>> > brit...@apache.org>:
>> >
>> >>
>> >>
>> >> Am Mi., 22. Aug. 2018 um 14:33 Uhr schrieb Gilles <
>> >> gil...@harfang.homelinux.org>:
>> >>
>> >>> On Wed, 22 Aug 2018 08:11:03 -0400, Rob Tompkins wrote:
>> >>> >> On Aug 22, 2018, at 1:47 AM, Benedikt Ritter 
>> >>> >> wrote:
>> >>> >>
>> >>> >> Hi,
>> >>> >>
>> >>> >> I don't understand this discussion. Changes in Commons Parent have
>> >>> >> broken
>> >>> >> the commons-compress build. So we should either roll this changes
>> >>> >> back or
>> >>> >> those who need the changes in commons parent should fix the commons
>> >>> >> compress build.
>> >>> >
>> >>> > I think the problem at hand here is that we, across our projects,
>> are
>> >>> > inconsistent with our usage of componentId, so naturally any changes
>> >>> > to the way we consume it in the parent are breaking changes. For
>> >>> > example:
>> >>> >
>> >>> > https://github.com/apache/commons-lang/blob/master/pom.xml#L573
>> >>> > 
>> >>>
>> >>> This one is wrong, according to a convention explicitly mentioned
>> >>> in some POM files, e.g.:
>> >>> ---CUT---
>> >>>  
>> >>>  rng
>> >>> ---CUT---
>> >>>
>> >>
>> >> I've raised LANG-1414 [1] to fix this.
>> >>
>> >> Benedikt
>> >>
>> >> [1] https://issues.apache.org/jira/browse/LANG-1414
>> >>
>> >>
>> >>>
>> >>> Gilles
>> >>>
>> >>> > versus
>> >>> >
>> >>> >
>> https://github.com/apache/commons-collections/blob/master/pom.xml#L487
>> >>> >
>> >>> > <
>> https://github.com/apache/commons-collections/blob/master/pom.xml#L487
>> >>> >
>> >>> >
>> >>> > -Rob
>> >>> >
>> >>> >
>> >>> >>
>> >>> >> Regards,
>> >>> >> Benedikt
>> >>> >>
>> >>> >> Am Do., 16. Aug. 2018 um 19:08 Uhr schrieb Gary Gregory <
>> >>> >> garydgreg...@gmail.com>:
>> >>> >>
>> >>> >>> On Thu, Aug 16, 2018 at 10:27 AM Stefan Bodewig
>> >>> >>> 
>> >>> >>> wrote:
>> >>> >>>
>> >>>  On 2018-08-16, Gary Gregory wr