[jira] [Commented] (STATISTICS-7) Stream-based Java statistical processing
[ https://issues.apache.org/jira/browse/STATISTICS-7?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16804625#comment-16804625 ] Ben Nguyen commented on STATISTICS-7: - Hello, I am a second year computer science and economics student who has taken some of higher level econometrics courses, I'm very interested in working with the stat.regression library (I can see myself using it a lot in the near future). Looking through it briefly, I do see the problem; the implementation could be more intuitive to use. I am in the process of drafting a proposal. which lead me to wonder how to approach the dependency issue; to what extent should the new library be 'standalone' ; for example: should it still depend on math.linear (especially needed in OLS and GLS) since linear won't be getting an upgrade anytime soon? (I have not looked into math.linear yet) or should matrices be implemented internally with the new stats library? (repeating code in general is bad, though there is the benefit of 'zero' dependencies -> better maintainability?). I guess the same question lies with other dependencies too (math.exceptions, util) 'to what extent should this new library be standalone'? > Stream-based Java statistical processing > > > Key: STATISTICS-7 > URL: https://issues.apache.org/jira/browse/STATISTICS-7 > Project: Apache Commons Statistics > Issue Type: New Feature >Reporter: Eric Barnhill >Priority: Major > Labels: GSoC2019, gsoc2019, statistics, streams > > The new component aims to be a library of commons statistics functions > synchronized with the latest developments in the Java language, in particular > Java's functional programming syntax. > The library will make commonly used statistical functions available to an end > user through a simple grammar comparable to commons-math-statistics or > scikit-learn, while under the hood will implement Java's mapping, streaming, > and other producer and consumer functions to ensure the statistical methods > run optimally in new Java implementations. > Developers working on the project will have the opportunity to demonstrate > Java programming, functional programming, algorithm design, and data science > skills and receive authorship on a commons project that is likely to be > widely used. > The ideal contributor will also be able to help with important architectural > decision making. The old source of these libraries, commons-math, grew too > large, hierarchically complex and interdependent for the commons mission. The > developers on this project need to make architectural choices that will > enable the statiscal code to be lightweight and reusable, with a minimum of > outside dependencies while avoiding redundancy. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[GitHub] [commons-rng] coveralls edited a comment on issue #32: Jdk 11 build
coveralls edited a comment on issue #32: Jdk 11 build URL: https://github.com/apache/commons-rng/pull/32#issuecomment-475918486 [![Coverage Status](https://coveralls.io/builds/22471596/badge)](https://coveralls.io/builds/22471596) Coverage increased (+0.007%) to 98.246% when pulling **82b19d7b26688585e12c039bc5cad271fd59b504 on aherbert:jdk-11-build** into **85c9744774b2984201ded41ea75dbacc62117a99 on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services
[jira] [Commented] (NUMBERS-70) Userguide and reports
[ https://issues.apache.org/jira/browse/NUMBERS-70?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16804360#comment-16804360 ] Gilles commented on NUMBERS-70: --- {quote} still open ? {quote} Yes. I'd suggest that the first step is to write a summary of usage in the "index" files like [this one|https://gitbox.apache.org/repos/asf?p=commons-numbers.git;a=blob_plain;f=commons-numbers-angle/src/site/xdoc/index.xml;hb=HEAD] (one per maven module). > Userguide and reports > - > > Key: NUMBERS-70 > URL: https://issues.apache.org/jira/browse/NUMBERS-70 > Project: Commons Numbers > Issue Type: Wish >Reporter: Gilles >Priority: Minor > Labels: benchmark, documentation, gsoc2019 > Fix For: 1.0 > > > Review contents of the component towards providing an up-to-date userguide > and write benchmarking code for generating performance reports > ([JMH|http://openjdk.java.net/projects/code-tools/jmh/]). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (NUMBERS-70) Userguide and reports
[ https://issues.apache.org/jira/browse/NUMBERS-70?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16804318#comment-16804318 ] Abhishek Chaudhary commented on NUMBERS-70: --- Hello [~erans], I would like to pick this issue if its still open ? Can you guide me from where to start ? > Userguide and reports > - > > Key: NUMBERS-70 > URL: https://issues.apache.org/jira/browse/NUMBERS-70 > Project: Commons Numbers > Issue Type: Wish >Reporter: Gilles >Priority: Minor > Labels: benchmark, documentation, gsoc2019 > Fix For: 1.0 > > > Review contents of the component towards providing an up-to-date userguide > and write benchmarking code for generating performance reports > ([JMH|http://openjdk.java.net/projects/code-tools/jmh/]). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (JEXL-295) Add unary plus operator
[ https://issues.apache.org/jira/browse/JEXL-295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16804123#comment-16804123 ] Henri Biestro commented on JEXL-295: Changeset: 76af65b52c04ed9962372388db824041d008fe01 Author:henrib Date: 2019-03-28 18:20 Message: JEXL-295: positivize performs integral promotion of char, byte, short > Add unary plus operator > --- > > Key: JEXL-295 > URL: https://issues.apache.org/jira/browse/JEXL-295 > Project: Commons JEXL > Issue Type: New Feature >Affects Versions: 3.1 >Reporter: Henri Biestro >Assignee: Henri Biestro >Priority: Major > Fix For: 3.2 > > > WHAT > Introduce a new operator, the unary plus as in '+4' or '+b' expressions. JEXL > arithmetic already allows using a unary minus operator (the negate operation) > so there is logic in having the counterpart. > The proposed default behaviour would be to: > - call the 'Math.abs(...)' method for numbers > - return true for boolean > - could uppercase strings ? (should '-' lowercase strings ??) > HOW > - Follow the unary minus syntax and construct in the .jjt / ASTUnaryPlus / > ParserVisitor > - Implement Interpreter, Debugger > - Implement abs in JexlArithmetic -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (JELLY-294) Update Jelly from Jenkins Fork
[ https://issues.apache.org/jira/browse/JELLY-294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16804042#comment-16804042 ] Kamila Molina commented on JELLY-294: - Hi all. I wonder what is the status of this issue. I am a computer science student and I would like to apply to the Google Summer of Code program and this project draw my attention. Currently, I am on my last year of college and I have good skills in Java and Maven. So the idea of the project would be to pull the patches from jenkins's jelly fork to the commons-jelly repository, in addition to integrate the jellydoc plugin to the codebase. It is a really interesting task, do you known whether there is a change log with the most important modifications made by the Jenkins community?. Best, Kamila > Update Jelly from Jenkins Fork > -- > > Key: JELLY-294 > URL: https://issues.apache.org/jira/browse/JELLY-294 > Project: Commons Jelly > Issue Type: New Feature >Reporter: Rob Tompkins >Assignee: Rob Tompkins >Priority: Major > Labels: GSoC2019 > > I think that the jenkins fork is: https://github.com/jenkinsci/jelly > We want to pull their latest code in and do a 2.X jelly release so that we're > maintaining the code as opposed to jenkins having to maintain it. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (RNG-85) Middle Square Weyl Sequence generator
[ https://issues.apache.org/jira/browse/RNG-85?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803974#comment-16803974 ] Gilles commented on RNG-85: --- The algorithm is described in [a paper|https://arxiv.org/pdf/1704.00358v3.pdf], so an implementation "from scratch" is possible. Also, it's not forbidden to use the output of a GPL program, for any purpose (i.e. also testing a port that will be under a different license). Unless I'm mistaken, the algorithm for creating good seeds is not explicitly laid out in the paper. bq. How to make this compliant with the Apache licence? Should be asked on the ML, for confirmation of what the next step could be (e.g. ask the author to provide a specific authorization (?)). > Middle Square Weyl Sequence generator > - > > Key: RNG-85 > URL: https://issues.apache.org/jira/browse/RNG-85 > Project: Commons RNG > Issue Type: Sub-task > Components: core >Reporter: Gilles >Priority: Minor > Labels: gsoc2019 > > https://en.wikipedia.org/wiki/Middle_square_method#Middle_Square_Weyl_Sequence_PRNG -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (POOL-363) Evictor Thread prevents Spring Context shutdown in standalone app
[ https://issues.apache.org/jira/browse/POOL-363?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803964#comment-16803964 ] Gary Gregory edited comment on POOL-363 at 3/28/19 2:13 PM: [~markt]? [~p...@steitz.com]? Any thoughts on why we should not do this? I vaguely recall this kind of change being discussed in the past. was (Author: garydgregory): [~markt] ? [~p...@steitz.com]? Any thoughts on why we should not do this? I vaguely recall this kind of change being discussed in the past. > Evictor Thread prevents Spring Context shutdown in standalone app > - > > Key: POOL-363 > URL: https://issues.apache.org/jira/browse/POOL-363 > Project: Commons Pool > Issue Type: Bug >Affects Versions: 2.4.3, 2.5.0, 2.6.0, 2.6.1 > Environment: Java 1.8.0_171 >Reporter: Josh Landin >Priority: Major > Labels: pull-request-available > Attachments: 2019.03.26_screen281.jpg > > Time Spent: 20m > Remaining Estimate: 0h > > Given a DBCP2 connection pool configured in a Spring Application context with > the POOL evictor thread enabled, a standalone main() application hangs on > shutdown. Example below: > Maven pom.xml: > {code:xml} > > > org.apache.commons > commons-dbcp2 > 2.6.0 > > > mysql > mysql-connector-java > 8.0.15 > > > org.springframework > spring-context > 5.1.5.RELEASE > > > {code} > MainTest.java: > {code:java} > import java.sql.Connection; > import java.sql.ResultSet; > import java.sql.SQLException; > import java.sql.Statement; > import javax.sql.DataSource; > import org.apache.commons.dbcp2.BasicDataSource; > import > org.springframework.context.annotation.AnnotationConfigApplicationContext; > import org.springframework.context.annotation.Bean; > import org.springframework.context.annotation.Configuration; > public class MainTest > { > @Configuration > public static class Config > { > @Bean > public DataSource getBasicDataSource() > { > BasicDataSource d = new BasicDataSource(); > d.setUrl("jdbc:mysql://localhost:3306/anydb"); > d.setUsername("myuser"); > d.setPassword("mypass"); > d.setTimeBetweenEvictionRunsMillis(1000); // Turn on Evictor Thread. > return d; > } > } > public static void main(String[] args) > { > AnnotationConfigApplicationContext ctx = new > AnnotationConfigApplicationContext(Config.class); > ctx.registerShutdownHook(); // Ensures context.close() on JVM shutdown. > > try( > Connection conn = ctx.getBean(BasicDataSource.class).getConnection(); > Statement stmt = conn.createStatement(); > ResultSet result = stmt.executeQuery("SELECT 1"); > ) > { > int records = result.last() ? result.getRow() : 0; > System.out.println("Records: "+records); > } > catch(SQLException e) > { > e.printStackTrace(); > } > System.out.println("End."); > } > } > {code} > The issue is not present when turning off the eviction thread by setting > {{timeBetweenEvictionRunsMillis}} to {{-1}}. > Jconsole thread summary attached for reference. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (POOL-363) Evictor Thread prevents Spring Context shutdown in standalone app
[ https://issues.apache.org/jira/browse/POOL-363?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803964#comment-16803964 ] Gary Gregory commented on POOL-363: --- [~markt] ? [~p...@steitz.com]? Any thoughts on why we should not do this? I vaguely recall this kind of change being discussed in the past. > Evictor Thread prevents Spring Context shutdown in standalone app > - > > Key: POOL-363 > URL: https://issues.apache.org/jira/browse/POOL-363 > Project: Commons Pool > Issue Type: Bug >Affects Versions: 2.4.3, 2.5.0, 2.6.0, 2.6.1 > Environment: Java 1.8.0_171 >Reporter: Josh Landin >Priority: Major > Labels: pull-request-available > Attachments: 2019.03.26_screen281.jpg > > Time Spent: 20m > Remaining Estimate: 0h > > Given a DBCP2 connection pool configured in a Spring Application context with > the POOL evictor thread enabled, a standalone main() application hangs on > shutdown. Example below: > Maven pom.xml: > {code:xml} > > > org.apache.commons > commons-dbcp2 > 2.6.0 > > > mysql > mysql-connector-java > 8.0.15 > > > org.springframework > spring-context > 5.1.5.RELEASE > > > {code} > MainTest.java: > {code:java} > import java.sql.Connection; > import java.sql.ResultSet; > import java.sql.SQLException; > import java.sql.Statement; > import javax.sql.DataSource; > import org.apache.commons.dbcp2.BasicDataSource; > import > org.springframework.context.annotation.AnnotationConfigApplicationContext; > import org.springframework.context.annotation.Bean; > import org.springframework.context.annotation.Configuration; > public class MainTest > { > @Configuration > public static class Config > { > @Bean > public DataSource getBasicDataSource() > { > BasicDataSource d = new BasicDataSource(); > d.setUrl("jdbc:mysql://localhost:3306/anydb"); > d.setUsername("myuser"); > d.setPassword("mypass"); > d.setTimeBetweenEvictionRunsMillis(1000); // Turn on Evictor Thread. > return d; > } > } > public static void main(String[] args) > { > AnnotationConfigApplicationContext ctx = new > AnnotationConfigApplicationContext(Config.class); > ctx.registerShutdownHook(); // Ensures context.close() on JVM shutdown. > > try( > Connection conn = ctx.getBean(BasicDataSource.class).getConnection(); > Statement stmt = conn.createStatement(); > ResultSet result = stmt.executeQuery("SELECT 1"); > ) > { > int records = result.last() ? result.getRow() : 0; > System.out.println("Records: "+records); > } > catch(SQLException e) > { > e.printStackTrace(); > } > System.out.println("End."); > } > } > {code} > The issue is not present when turning off the eviction thread by setting > {{timeBetweenEvictionRunsMillis}} to {{-1}}. > Jconsole thread summary attached for reference. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (POOL-363) Evictor Thread prevents Spring Context shutdown in standalone app
[ https://issues.apache.org/jira/browse/POOL-363?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Josh Landin updated POOL-363: - Labels: pull-request-available (was: ) > Evictor Thread prevents Spring Context shutdown in standalone app > - > > Key: POOL-363 > URL: https://issues.apache.org/jira/browse/POOL-363 > Project: Commons Pool > Issue Type: Bug >Affects Versions: 2.4.3, 2.5.0, 2.6.0, 2.6.1 > Environment: Java {{1.8.0_92}} >Reporter: Josh Landin >Priority: Major > Labels: pull-request-available > Attachments: 2019.03.26_screen281.jpg > > Time Spent: 20m > Remaining Estimate: 0h > > Given a DBCP2 connection pool configured in a Spring Application context with > the POOL evictor thread enabled, a standalone main() application hangs on > shutdown. Example below: > Maven pom.xml: > {code:xml} > > > org.apache.commons > commons-dbcp2 > 2.6.0 > > > mysql > mysql-connector-java > 8.0.15 > > > org.springframework > spring-context > 5.1.5.RELEASE > > > {code} > MainTest.java: > {code:java} > import java.sql.Connection; > import java.sql.ResultSet; > import java.sql.SQLException; > import java.sql.Statement; > import javax.sql.DataSource; > import org.apache.commons.dbcp2.BasicDataSource; > import > org.springframework.context.annotation.AnnotationConfigApplicationContext; > import org.springframework.context.annotation.Bean; > import org.springframework.context.annotation.Configuration; > public class MainTest > { > @Configuration > public static class Config > { > @Bean > public DataSource getBasicDataSource() > { > BasicDataSource d = new BasicDataSource(); > d.setUrl("jdbc:mysql://localhost:3306/anydb"); > d.setUsername("myuser"); > d.setPassword("mypass"); > d.setTimeBetweenEvictionRunsMillis(1000); // Turn on Evictor Thread. > return d; > } > } > public static void main(String[] args) > { > AnnotationConfigApplicationContext ctx = new > AnnotationConfigApplicationContext(Config.class); > ctx.registerShutdownHook(); // Ensures context.close() on JVM shutdown. > > try( > Connection conn = ctx.getBean(BasicDataSource.class).getConnection(); > Statement stmt = conn.createStatement(); > ResultSet result = stmt.executeQuery("SELECT 1"); > ) > { > int records = result.last() ? result.getRow() : 0; > System.out.println("Records: "+records); > } > catch(SQLException e) > { > e.printStackTrace(); > } > System.out.println("End."); > } > } > {code} > The issue is not present when turning off the eviction thread by setting > {{timeBetweenEvictionRunsMillis}} to {{-1}}. > Jconsole thread summary attached for reference. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (POOL-363) Evictor Thread prevents Spring Context shutdown in standalone app
[ https://issues.apache.org/jira/browse/POOL-363?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Josh Landin updated POOL-363: - Environment: Java 1.8.0_171 (was: Java {{1.8.0_92}}) > Evictor Thread prevents Spring Context shutdown in standalone app > - > > Key: POOL-363 > URL: https://issues.apache.org/jira/browse/POOL-363 > Project: Commons Pool > Issue Type: Bug >Affects Versions: 2.4.3, 2.5.0, 2.6.0, 2.6.1 > Environment: Java 1.8.0_171 >Reporter: Josh Landin >Priority: Major > Labels: pull-request-available > Attachments: 2019.03.26_screen281.jpg > > Time Spent: 20m > Remaining Estimate: 0h > > Given a DBCP2 connection pool configured in a Spring Application context with > the POOL evictor thread enabled, a standalone main() application hangs on > shutdown. Example below: > Maven pom.xml: > {code:xml} > > > org.apache.commons > commons-dbcp2 > 2.6.0 > > > mysql > mysql-connector-java > 8.0.15 > > > org.springframework > spring-context > 5.1.5.RELEASE > > > {code} > MainTest.java: > {code:java} > import java.sql.Connection; > import java.sql.ResultSet; > import java.sql.SQLException; > import java.sql.Statement; > import javax.sql.DataSource; > import org.apache.commons.dbcp2.BasicDataSource; > import > org.springframework.context.annotation.AnnotationConfigApplicationContext; > import org.springframework.context.annotation.Bean; > import org.springframework.context.annotation.Configuration; > public class MainTest > { > @Configuration > public static class Config > { > @Bean > public DataSource getBasicDataSource() > { > BasicDataSource d = new BasicDataSource(); > d.setUrl("jdbc:mysql://localhost:3306/anydb"); > d.setUsername("myuser"); > d.setPassword("mypass"); > d.setTimeBetweenEvictionRunsMillis(1000); // Turn on Evictor Thread. > return d; > } > } > public static void main(String[] args) > { > AnnotationConfigApplicationContext ctx = new > AnnotationConfigApplicationContext(Config.class); > ctx.registerShutdownHook(); // Ensures context.close() on JVM shutdown. > > try( > Connection conn = ctx.getBean(BasicDataSource.class).getConnection(); > Statement stmt = conn.createStatement(); > ResultSet result = stmt.executeQuery("SELECT 1"); > ) > { > int records = result.last() ? result.getRow() : 0; > System.out.println("Records: "+records); > } > catch(SQLException e) > { > e.printStackTrace(); > } > System.out.println("End."); > } > } > {code} > The issue is not present when turning off the eviction thread by setting > {{timeBetweenEvictionRunsMillis}} to {{-1}}. > Jconsole thread summary attached for reference. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (STATISTICS-7) Stream-based Java statistical processing
[ https://issues.apache.org/jira/browse/STATISTICS-7?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803935#comment-16803935 ] Salman Hussain commented on STATISTICS-7: - Sorry about that [~erans], I have changed it now. Having looked more closely at the linear regression used in scikit-learn, there seem to be a lot of dependencies, including from scipy. I think focusing on porting the existing regression library would be more realistic, but whilst taking inspiration and design elements from the scikit-learn. I aim to submit a draft proposal by EOD through the GSoC portal. > Stream-based Java statistical processing > > > Key: STATISTICS-7 > URL: https://issues.apache.org/jira/browse/STATISTICS-7 > Project: Apache Commons Statistics > Issue Type: New Feature >Reporter: Eric Barnhill >Priority: Major > Labels: GSoC2019, gsoc2019, statistics, streams > > The new component aims to be a library of commons statistics functions > synchronized with the latest developments in the Java language, in particular > Java's functional programming syntax. > The library will make commonly used statistical functions available to an end > user through a simple grammar comparable to commons-math-statistics or > scikit-learn, while under the hood will implement Java's mapping, streaming, > and other producer and consumer functions to ensure the statistical methods > run optimally in new Java implementations. > Developers working on the project will have the opportunity to demonstrate > Java programming, functional programming, algorithm design, and data science > skills and receive authorship on a commons project that is likely to be > widely used. > The ideal contributor will also be able to help with important architectural > decision making. The old source of these libraries, commons-math, grew too > large, hierarchically complex and interdependent for the commons mission. The > developers on this project need to make architectural choices that will > enable the statiscal code to be lightweight and reusable, with a minimum of > outside dependencies while avoiding redundancy. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (RNG-85) Middle Square Weyl Sequence generator
[ https://issues.apache.org/jira/browse/RNG-85?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803871#comment-16803871 ] Alex D Herbert commented on RNG-85: --- Just looked at the c-code for this. There is a suggested implementation for seeding using a 64-bit number in the range of 0 to 2^64-1. The code package states that the software is under GPL 3. However the GPL 3 licence is only included in the main source file for the generator and not anything else. Q. How to make this compliant with the Apache licence? > Middle Square Weyl Sequence generator > - > > Key: RNG-85 > URL: https://issues.apache.org/jira/browse/RNG-85 > Project: Commons RNG > Issue Type: Sub-task > Components: core >Reporter: Gilles >Priority: Minor > Labels: gsoc2019 > > https://en.wikipedia.org/wiki/Middle_square_method#Middle_Square_Weyl_Sequence_PRNG -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (JEXL-295) Add unary plus operator
[ https://issues.apache.org/jira/browse/JEXL-295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803728#comment-16803728 ] Henri Biestro edited comment on JEXL-295 at 3/28/19 11:35 AM: -- You're right, the rule of lesser surprise implies it should only perform integral promotion as default op (like c/java/c++/c#). was (Author: henrib): You're right, the rule of lesser surprise implies it should only perform integral promotion as default op (lie c/java/c++/c#). > Add unary plus operator > --- > > Key: JEXL-295 > URL: https://issues.apache.org/jira/browse/JEXL-295 > Project: Commons JEXL > Issue Type: New Feature >Affects Versions: 3.1 >Reporter: Henri Biestro >Assignee: Henri Biestro >Priority: Major > Fix For: 3.2 > > > WHAT > Introduce a new operator, the unary plus as in '+4' or '+b' expressions. JEXL > arithmetic already allows using a unary minus operator (the negate operation) > so there is logic in having the counterpart. > The proposed default behaviour would be to: > - call the 'Math.abs(...)' method for numbers > - return true for boolean > - could uppercase strings ? (should '-' lowercase strings ??) > HOW > - Follow the unary minus syntax and construct in the .jjt / ASTUnaryPlus / > ParserVisitor > - Implement Interpreter, Debugger > - Implement abs in JexlArithmetic -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (JEXL-295) Add unary plus operator
[ https://issues.apache.org/jira/browse/JEXL-295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803728#comment-16803728 ] Henri Biestro commented on JEXL-295: You're right, the rule of lesser surprise implies it should only perform integral promotion as default op (lie c/java/c++/c#). > Add unary plus operator > --- > > Key: JEXL-295 > URL: https://issues.apache.org/jira/browse/JEXL-295 > Project: Commons JEXL > Issue Type: New Feature >Affects Versions: 3.1 >Reporter: Henri Biestro >Assignee: Henri Biestro >Priority: Major > Fix For: 3.2 > > > WHAT > Introduce a new operator, the unary plus as in '+4' or '+b' expressions. JEXL > arithmetic already allows using a unary minus operator (the negate operation) > so there is logic in having the counterpart. > The proposed default behaviour would be to: > - call the 'Math.abs(...)' method for numbers > - return true for boolean > - could uppercase strings ? (should '-' lowercase strings ??) > HOW > - Follow the unary minus syntax and construct in the .jjt / ASTUnaryPlus / > ParserVisitor > - Implement Interpreter, Debugger > - Implement abs in JexlArithmetic -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (JEXL-294) expression:b == true , when b="abc" then return true
[ https://issues.apache.org/jira/browse/JEXL-294?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Henri Biestro resolved JEXL-294. Resolution: Not A Problem Fix Version/s: 3.1 Works as intended, other behaviours are possible through arithmetic customisation. > expression:b == true , when b="abc" then return true > > > Key: JEXL-294 > URL: https://issues.apache.org/jira/browse/JEXL-294 > Project: Commons JEXL > Issue Type: Bug >Affects Versions: 3.1 > Environment: java 8 > commons-jexl 3.1 >Reporter: 锁战强 >Assignee: Henri Biestro >Priority: Blocker > Fix For: 3.1 > > > It seems a bit odd that the expression "abc" == true returns true. > {code:java} > > @Test > public void test294() throws Exception { > final String str = "(b)->{ b == true }"; > JexlContext ctxt = new MapContext(); > JexlEngine jexl = new JexlBuilder().create(); > JexlScript e = jexl.createScript(str); > Object value = e.execute(ctxt, "abc"); > Assert.assertEquals(true, value); // "abc" == true ?? > } > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (JEXL-295) Add unary plus operator
[ https://issues.apache.org/jira/browse/JEXL-295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16803704#comment-16803704 ] Dmitri Blinov commented on JEXL-295: IMHO it's very confusing for any programmer with background of java/c/c# to have unary plus operator to change a negative number to a positive. For many years people were taught that +x does not change sign. I know this is a legacy question, but may be we should keep basic implementation of unary plus operator this way, while aloowing the option of overloading it for those who want to use it other way? > Add unary plus operator > --- > > Key: JEXL-295 > URL: https://issues.apache.org/jira/browse/JEXL-295 > Project: Commons JEXL > Issue Type: New Feature >Affects Versions: 3.1 >Reporter: Henri Biestro >Assignee: Henri Biestro >Priority: Major > Fix For: 3.2 > > > WHAT > Introduce a new operator, the unary plus as in '+4' or '+b' expressions. JEXL > arithmetic already allows using a unary minus operator (the negate operation) > so there is logic in having the counterpart. > The proposed default behaviour would be to: > - call the 'Math.abs(...)' method for numbers > - return true for boolean > - could uppercase strings ? (should '-' lowercase strings ??) > HOW > - Follow the unary minus syntax and construct in the .jjt / ASTUnaryPlus / > ParserVisitor > - Implement Interpreter, Debugger > - Implement abs in JexlArithmetic -- This message was sent by Atlassian JIRA (v7.6.3#76005)