[jira] [Created] (GEOMETRY-14) AffineTransform?D Classes

2018-09-06 Thread Matt Juntunen (JIRA)
Matt Juntunen created GEOMETRY-14:
-

 Summary: AffineTransform?D Classes
 Key: GEOMETRY-14
 URL: https://issues.apache.org/jira/browse/GEOMETRY-14
 Project: Apache Commons Geometry
  Issue Type: New Feature
Reporter: Matt Juntunen


We should create AffineTransform?D classes that implement matrix-based affine 
transforms. They should have simple methods for creating translations, 
rotations, and scaling and calculating the inverse.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (GEOMETRY-10) Reuse Normalized Vectors

2018-09-06 Thread Matt Juntunen (JIRA)


[jira] [Created] (GEOMETRY-13) Move Vector Norm Methods to commons-numbers-arrays

2018-09-06 Thread Matt Juntunen (JIRA)
Matt Juntunen created GEOMETRY-13:
-

 Summary: Move Vector Norm Methods to commons-numbers-arrays
 Key: GEOMETRY-13
 URL: https://issues.apache.org/jira/browse/GEOMETRY-13
 Project: Apache Commons Geometry
  Issue Type: Task
Reporter: Matt Juntunen


The code we have now in the Vectors utility class for computing vector norms 
should be placed in commons-numbers-arrays and used from there. This should 
allow for greater re-usability of the code. We should also try to use the 
SafeNorm class from that module for computing L2 norms.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (GEOMETRY-9) New Euclidean Vector Methods

2018-09-06 Thread Matt Juntunen (JIRA)


[ 
https://issues.apache.org/jira/browse/GEOMETRY-9?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16606607#comment-16606607
 ] 

Matt Juntunen commented on GEOMETRY-9:
--

Thanks for the feedback. I don't picture it as nit-picking at all since now, 
when we don't have any BC concerns, is the time to try to get it right.

 
 # GeometryException – This sounds good. I'll go ahead and implement a public 
GeometryException class hierarchy. Do you think this should go in this pull 
request or another one (perhaps one for GEOMETRY-8)?
 # Vectors class – I'll move this into an internal package for now and add 
another issue for moving it into commons-numbers-arrays.
 # Static vector/point methods – Yeah we can ditch these. It would clean up the 
API considerably and it's always easier to add something to the API than remove 
it later on.

> New Euclidean Vector Methods
> 
>
> Key: GEOMETRY-9
> URL: https://issues.apache.org/jira/browse/GEOMETRY-9
> Project: Apache Commons Geometry
>  Issue Type: Wish
>Reporter: Matt Juntunen
>Priority: Minor
>
> We should add some more methods to the Euclidean vector classes for user 
> convenience and algorithm clarity.
>  # length() – more intuitive alias for getNorm()
>  # project(Vector) – returns the current vector projected onto the given 
> vector
>  # static project(Vector, Vector) – static version of project
>  # reject(Vector) – returns the current vector projected onto the plane whose 
> normal is passed to the method (vec equals vec.project(v) + vec.reject(v))
>  # static reject(Vector, Vector) – static version of reject
>  # lerp(Vector, double) – linear interpolation between the current vector and 
> the given one
>  # static lerp(Vector, Vector, double) – static version of lerp
>  # withLength(double) – returns the current vector with the given length. 
> This is equivalent to vector.normalize().scalarMultiply(x) but without the 
> intermediate vector.
>  
> Pull request: [https://github.com/apache/commons-geometry/pull/8]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[GitHub] commons-lang pull request #350: Replace FindBugs with SpotBugs

2018-09-06 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/commons-lang/pull/350


---


[GitHub] commons-lang pull request #354: Convert tests for Validate.isTrue overloads ...

2018-09-06 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/commons-lang/pull/354


---


[GitHub] commons-lang issue #354: Convert tests for Validate.isTrue overloads to @Nes...

2018-09-06 Thread britter
Github user britter commented on the issue:

https://github.com/apache/commons-lang/pull/354
  
Build failure seems to be unrelated.


---


[jira] [Created] (LANG-1419) Restore BundleSymbolicName / regression in version 3.8.0

2018-09-06 Thread Philipp Ottlinger (JIRA)
Philipp Ottlinger created LANG-1419:
---

 Summary: Restore BundleSymbolicName / regression in version 3.8.0
 Key: LANG-1419
 URL: https://issues.apache.org/jira/browse/LANG-1419
 Project: Commons Lang
  Issue Type: Bug
  Components: General
Affects Versions: 3.8
Reporter: Philipp Ottlinger


In contrast to version 3.7.0 the BundleSymbolicName changed erroneously in 
3.8.0 to:
{code:java}
org.apache.commons.commons-lang3{code}
 

As this breaks existing installations the change should be reverted and a new 
version with OSGi support should be released.
h2. v3.8.0 - MetaData
{code:java}
Automatic-Module-Name    org.apache.commons.lang3   

Bnd-LastModified 1534383412565  
 

Build-Jdk    1.8.0_172  

Built-By chtompki   

Bundle-Description   Apache Commons Lang, a package of Java 
utility classes for the  classes that are in java.lang's hierarchy, or are 
considered to be so  standard as to justify existence in java.lang.

Bundle-DocURL    
http://commons.apache.org/proper/commons-lang/

Bundle-License       
https://www.apache.org/licenses/LICENSE-2.0.txt

Bundle-ManifestVersion   2  

Bundle-Name  Apache Commons Lang

Bundle-SymbolicName  org.apache.commons.commons-lang3   

Bundle-Vendor    The Apache Software Foundation 

Bundle-Version   3.8.0  

Created-By   Apache Maven Bundle Plugin 

Export-Package   
org.apache.commons.lang3;version="3.8",org.apache.commons.lang3.arch;version="3.8",org.apache.commons.lang3.builder;version="3.8",org.apache.commons.lang3.concurrent;version="3.8",org.apache.commons.lang3.event;version="3.8",org.apache.commons.lang3.exception;version="3.8",org.apache.commons.lang3.math;version="3.8",org.apache.commons.lang3.mutable;version="3.8",org.apache.commons.lang3.reflect;version="3.8",org.apache.commons.lang3.text;version="3.8",org.apache.commons.lang3.text.translate;version="3.8",org.apache.commons.lang3.time;version="3.8",org.apache.commons.lang3.tuple;version="3.8"

Implementation-Title Apache Commons Lang

Implementation-URL   
http://commons.apache.org/proper/commons-lang/

Implementation-Vendor    The Apache Software Foundation 

Implementation-Vendor-Id org.apache.commons 

Implementation-Version   3.8

Include-Resource 
META-INF/NOTICE.txt=NOTICE.txt,META-INF/LICENSE.txt=LICENSE.txt

Manifest-Version 1.0

Require-Capability   
osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.7))"

Specification-Title  Apache Commons Lang

Specification-Vendor The Apache Software Foundation 

Specification-Version    3.8

Tool Bnd-3.5.0.201709291849{code}
h2. v3.7.0 - MetaData
{code:java}
Archiver-Version Plexus Archiver

Automatic-Module-Name    org.apache.commons.lang3   

Bnd-LastModified 1509819256170  

Build-Jdk    1.7.0_80   

Built-By ggregory   

Bundle-Description   Apache Commons Lang, a package of Java 
utility classes for the  classes that are in java.lang's hierarchy, or are 
considered to be so  standard as to justify existence in java.lang.

Bundle-DocURL    
http://commons.apache.org/proper/commons-lang/

Bundle-License   
https://www.apache.org/licenses/LICENSE-2.0.txt

Bundle-ManifestVersion   2  

Bundle-Name  Apache Commons Lang

Bundle-SymbolicName  org.apache.commons.lang3   

Bundle-Vendor    The Apache Software Foundation 

Bundle-Version   3.7.0  

Created-By   Apache Maven Bundle Plugin 

Export-Package   

[jira] [Commented] (LANG-1410) StringsUtil.isBlank check null first

2018-09-06 Thread Evaristo (JIRA)


[ 
https://issues.apache.org/jira/browse/LANG-1410?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16605743#comment-16605743
 ] 

Evaristo commented on LANG-1410:


There is minor memory saving with Yifan Guo approach when cs is null, because 
Java primitives have a default value when assignment is not explicit to a given 
value

int strLen; // This is euqivalent to int strLen = 0;
 if (cs == null || (strLen = cs.length()) == 0) {
    return true;
 }

That means that when cs is null variable strLen is using some memory

 

This code saves memory when cs == null

 

if (cs == null) {

    return true;

}

int strLen = cs.length(); 
if ( strLen == 0) {
    return true;
}

 

 

> StringsUtil.isBlank check null first
> 
>
> Key: LANG-1410
> URL: https://issues.apache.org/jira/browse/LANG-1410
> Project: Commons Lang
>  Issue Type: Improvement
>  Components: lang.*
>Reporter: Yifan Guo
>Priority: Minor
>
> StringsUtil.isBlank should check null for cs first instead of declaring int 
> strLen first.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (GEOMETRY-9) New Euclidean Vector Methods

2018-09-06 Thread Gilles (JIRA)


[ 
https://issues.apache.org/jira/browse/GEOMETRY-9?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16605740#comment-16605740
 ] 

Gilles commented on GEOMETRY-9:
---

Relating my comment on GEOMETRY-10 and this issue's point about the {{Vectors}} 
utilities, a better approach might be to have the [commons-numbers-arrays| 
https://git1-us-west.apache.org/repos/asf?p=commons-numbers.git;a=tree;f=commons-numbers-arrays/src/main/java/org/apache/commons/numbers/arrays;hb=HEAD]
 module contain implementations of algorithms that rely on common assumptions 
about a list of {{double}} (or a {{double[]}}).

Even more reduction of duplication, and increased robustness through expanded 
usage.


> New Euclidean Vector Methods
> 
>
> Key: GEOMETRY-9
> URL: https://issues.apache.org/jira/browse/GEOMETRY-9
> Project: Apache Commons Geometry
>  Issue Type: Wish
>Reporter: Matt Juntunen
>Priority: Minor
>
> We should add some more methods to the Euclidean vector classes for user 
> convenience and algorithm clarity.
>  # length() – more intuitive alias for getNorm()
>  # project(Vector) – returns the current vector projected onto the given 
> vector
>  # static project(Vector, Vector) – static version of project
>  # reject(Vector) – returns the current vector projected onto the plane whose 
> normal is passed to the method (vec equals vec.project(v) + vec.reject(v))
>  # static reject(Vector, Vector) – static version of reject
>  # lerp(Vector, double) – linear interpolation between the current vector and 
> the given one
>  # static lerp(Vector, Vector, double) – static version of lerp
>  # withLength(double) – returns the current vector with the given length. 
> This is equivalent to vector.normalize().scalarMultiply(x) but without the 
> intermediate vector.
>  
> Pull request: [https://github.com/apache/commons-geometry/pull/8]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (GEOMETRY-10) Reuse Normalized Vectors

2018-09-06 Thread Gilles (JIRA)


[ 
https://issues.apache.org/jira/browse/GEOMETRY-10?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16605723#comment-16605723
 ] 

Gilles commented on GEOMETRY-10:


Implementation of {{normalize()}} in the description does not take [infinities 
into 
account|https://git1-us-west.apache.org/repos/asf?p=commons-math.git;a=blob;f=src/main/java/org/apache/commons/math4/util/MathArrays.java;h=0f7046ee0bf83073c18a2928752e6d21c4cf7152;hb=HEAD#l958].

bq. We'll need to verify that this won't introduce any floating point accuracy 
issues.

Perhaps this 
[implementation|https://git1-us-west.apache.org/repos/asf?p=commons-numbers.git;a=blob;f=commons-numbers-arrays/src/main/java/org/apache/commons/numbers/arrays/SafeNorm.java;h=a04fb4d1a5aef78fb4b10eb8d4d9dea5cff03780;hb=HEAD]
 should be used (?).


> Reuse Normalized Vectors
> 
>
> Key: GEOMETRY-10
> URL: https://issues.apache.org/jira/browse/GEOMETRY-10
> Project: Apache Commons Geometry
>  Issue Type: Improvement
>Reporter: Matt Juntunen
>Priority: Minor
>
> The Vector.normalize() method is used quite frequently. We currently always 
> return a new instance with each method call, but we should be able to reuse 
> the current instance if it is already normalized. 
> Ex:
> {code:java}
> public Vector3D normalize() {
>final double normSq = getNormSq();
>if (normSq == 1.0) {
>   return this;
>}
>else if (normSq == 0.0) {
>   throw new IllegalStateException(ZERO_NORM_MSG);
>}
>return scalarMultiply(1 / Math.sqrt(normSq);
> }{code}
> We'll need to verify that this won't introduce any floating point accuracy 
> issues.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (GEOMETRY-9) New Euclidean Vector Methods

2018-09-06 Thread Gilles (JIRA)


[ 
https://issues.apache.org/jira/browse/GEOMETRY-9?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16605712#comment-16605712
 ] 

Gilles commented on GEOMETRY-9:
---

bq. GeometryException

It seems fine to define a base class for all exceptions for this component
{code}
public class GeometryException extends RuntimeException { /* ... */ }
{code}

It's not the route ultimately taken for CM (after many discussions and 
flip-flop changes), but as long as we stay simple and consistent...

The Javadoc of that class should note that the component departs from the JDK 
nomenclature like e.g. by not using (subclasses of) 
{{IllegalArgumentException}} for wrong user input.

bq. {{Vectors.norm(double, double, double)}}

I think that we should avoid having such methods part of the public API as 
(among other bad things in utility classes) there are hidden assumptions (like: 
the three {{double}} arguments are Cartesian coordinates) that preclude 
legitimate overloads.
If for now you can't figure out a better way to avoid duplicate code, please 
let's hide this in an {{internal}} package.

bq. using a static method can make code slightly easier to read

One could counter-argue that it makes for longer statements...
My main reluctance is the sheer size of code duplication since, for 
consistency, any and all methods that could have a static counterpart should 
have one.
I understand your point about "operator" but as in the post I referred to in 
the previous comment hints at, there might be some good things in sticking with 
proper OO syntax.  I'd rather keep the API minimal until we've explored how we 
might leverage Java 8 functionalities (lambda).

Sorry if it all looks like nit-picking, but it's really not: Now is the time to 
try and avoid many of the pitfalls we went through in CM.


> New Euclidean Vector Methods
> 
>
> Key: GEOMETRY-9
> URL: https://issues.apache.org/jira/browse/GEOMETRY-9
> Project: Apache Commons Geometry
>  Issue Type: Wish
>Reporter: Matt Juntunen
>Priority: Minor
>
> We should add some more methods to the Euclidean vector classes for user 
> convenience and algorithm clarity.
>  # length() – more intuitive alias for getNorm()
>  # project(Vector) – returns the current vector projected onto the given 
> vector
>  # static project(Vector, Vector) – static version of project
>  # reject(Vector) – returns the current vector projected onto the plane whose 
> normal is passed to the method (vec equals vec.project(v) + vec.reject(v))
>  # static reject(Vector, Vector) – static version of reject
>  # lerp(Vector, double) – linear interpolation between the current vector and 
> the given one
>  # static lerp(Vector, Vector, double) – static version of lerp
>  # withLength(double) – returns the current vector with the given length. 
> This is equivalent to vector.normalize().scalarMultiply(x) but without the 
> intermediate vector.
>  
> Pull request: [https://github.com/apache/commons-geometry/pull/8]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[GitHub] commons-lang issue #354: Convert tests for Validate.isTrue overloads to @Nes...

2018-09-06 Thread britter
Github user britter commented on the issue:

https://github.com/apache/commons-lang/pull/354
  
Okay, as there is positive feedback for this change, I'm going to migrate 
the whole `ValidateTest` to this style and then merge it 👍 


---


[GitHub] commons-lang pull request #355: Use @ParameterizedTest to iterate over avail...

2018-09-06 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/commons-lang/pull/355


---


[GitHub] commons-lang issue #355: Use @ParameterizedTest to iterate over available lo...

2018-09-06 Thread britter
Github user britter commented on the issue:

https://github.com/apache/commons-lang/pull/355
  
I'm going to reach out to the JUnit maintainers to find out whether we can 
even inject zone values via parameter source.


---


[jira] [Created] (COMMONSSITE-124) Revert change in commons.scmPubUrl in Parent 47

2018-09-06 Thread Benedikt Ritter (JIRA)
Benedikt Ritter created COMMONSSITE-124:
---

 Summary: Revert change in commons.scmPubUrl in Parent 47
 Key: COMMONSSITE-124
 URL: https://issues.apache.org/jira/browse/COMMONSSITE-124
 Project: Commons All
  Issue Type: Improvement
  Components: Commons Parent Pom
Reporter: Benedikt Ritter


As pointed out by Stefan this change to commons.scmPubUrl: 
[http://svn.apache.org/viewvc/commons/proper/commons-parent/trunk/pom.xml?r1=1831599=1832339]
 broke multiple component site builds. At least the site builds for Commons 
Compress, Commons Lang and Commons CSV do not work anymore. We should revert 
this change.

For more details see: 
https://lists.apache.org/thread.html/304129bf7d25a2118ee3f324214c04e1e8f0846e7ee43a57b100a26e@%3Cdev.commons.apache.org%3E



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Closed] (DBCP-520) BasicManagedDataSource needs to pass the TSR with creating DataSourceXAConnectionFactory

2018-09-06 Thread Zheng Feng (JIRA)


 [ 
https://issues.apache.org/jira/browse/DBCP-520?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zheng Feng closed DBCP-520.
---

> BasicManagedDataSource needs to pass the TSR with creating 
> DataSourceXAConnectionFactory
> 
>
> Key: DBCP-520
> URL: https://issues.apache.org/jira/browse/DBCP-520
> Project: Commons DBCP
>  Issue Type: Improvement
>Affects Versions: 2.5.0
>Reporter: Zheng Feng
>Priority: Major
> Fix For: 2.6.0
>
>
> As the TransactionSynchronizationRegistry has been introduced in the 2.5.0, 
> it needs to pass the transactionSynchronizationRegistry to create the 
> DataSourceXAConnectionFactory.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (LANG-1418) Incorrect Javadoc for StringUtils.isAnyBlank(null)

2018-09-06 Thread Andrei (JIRA)


 [ 
https://issues.apache.org/jira/browse/LANG-1418?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrei updated LANG-1418:
-
Description: 
As of 
[https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html#isAnyBlank-java.lang.CharSequence...-]
 isAnyBlank((String) null) -> true

But test isAnyBlank((String) null) -> false.

As the result incorrect description for the other methods that used isAnyBlank

  was:
As of 
[https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html#isAnyBlank-java.lang.CharSequence...-]
 isAnyBlank((String) null) -> true

But test isAnyBlank((String) null) -> false.


> Incorrect Javadoc for StringUtils.isAnyBlank(null)
> --
>
> Key: LANG-1418
> URL: https://issues.apache.org/jira/browse/LANG-1418
> Project: Commons Lang
>  Issue Type: Bug
>  Components: lang.*
>Affects Versions: 3.8
>Reporter: Andrei
>Priority: Major
> Attachments: apache-common.isAnyBlank(null).png
>
>
> As of 
> [https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html#isAnyBlank-java.lang.CharSequence...-]
>  isAnyBlank((String) null) -> true
> But test isAnyBlank((String) null) -> false.
> As the result incorrect description for the other methods that used isAnyBlank



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (LANG-1418) Incorrect Javadoc for StringUtils.isAnyBlank(null)

2018-09-06 Thread Andrei (JIRA)
Andrei created LANG-1418:


 Summary: Incorrect Javadoc for StringUtils.isAnyBlank(null)
 Key: LANG-1418
 URL: https://issues.apache.org/jira/browse/LANG-1418
 Project: Commons Lang
  Issue Type: Bug
  Components: lang.*
Affects Versions: 3.8
Reporter: Andrei
 Attachments: apache-common.isAnyBlank(null).png

As of 
[https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html#isAnyBlank-java.lang.CharSequence...-]
 isAnyBlank((String) null) -> true

But test isAnyBlank((String) null) -> false.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)