Commit Graph

18 Commits

Author SHA1 Message Date
Ben Fry
f2755d597e set minimum Java version for Windows launcher to 17.0.1 2022-01-16 15:13:58 -05:00
A Samuel Pottinger
ee299ef935 Move to ANTLR 4 with Java 11 lang features and localization. (#5)
* Move to ANTLR 4 with Java 11 lang features and localization.

Introduces ANTLR4 and Java 8 language feature support within IDE while also adding additional hooks for localization of syntax error messages, addressing https://github.com/processing/processing/issues/3054 and https://github.com/processing/processing/issues/3055.

The PR is broadly a continuation of https://github.com/processing/processing/issues/3055, bringing it up to speed with the latest Processing master plus the changes introduced at https://github.com/processing/processing/pull/5753. **Requires https://github.com/processing/processing/pull/5753 as pre-requisite.** This introduces a number of edits beyond https://github.com/processing/processing/issues/3055 beyond compatibility with current Processing master and https://github.com/processing/processing/pull/5753 including:

 - Update to the grammar itself
 - Change ANTLR listeners to emit `TextTransform.Edit` to unify JDT-based `PreprocessingService` and `JavaBuild`, removing code with duplicate purpose.
 - Introduction of syntax error rewriting with support for localization.
 - Addition of complete localized strings set for English and Spanish.
 - Addition of partial localized strings set for other languages.
 - Refactor of ANTLR-related code for testability and readability
 - Expansion of tests including full parse tests for new Java features (type inference, lambdas).

* Ask travis for ant upgrade prior to run.

* Ask Travis for java11 update.

* Add openjdk ppa

* Travis no confirmation on add ppa.

* Force newer ant on travis.

* Swtich ant download to www-us mirror.

* Switch ant to 1.10.7

* Start x for unit tests in travis.

* More complete start x in travis.

* Revert x in travis.

* Try x in services.
2019-10-05 23:34:38 -07:00
A Pottinger
c14695476e Moves to Java11 and OpenJDK via AdoptOpenJDK within the processing4 train.
Moves to Java11 and OpenJDK via AdoptOpenJDK within the processing4 train using a squash of sampottinger processing fork's java11 branch.

**Primary required changes:**
Some changes directly support OpenJFX / OpenJDK 11:

 - Response to image loading changes caused by [JEP 320](https://openjdk.java.net/jeps/320)
 - Use of jmodules as necessitated by [JEP 261](https://openjdk.java.net/jeps/261)
 - Reponse to largely changed file paths caused by [JEP 220](https://openjdk.java.net/jeps/220).
 - Modifications in build system related to AdoptOpenJDK and Java 11 which have a different naming structure for downloads.
 - Allowing use of non-Oracle Java within internal Processing checks.

**Secondary required changes:**
There were some secondary required changes that impacted the usability of Processing after having moved to OpenJFX / OpenJDK 11:

 - Removal of com.apple.eawt calls related to [JEP 272](http://openjdk.java.net/jeps/272)
 - Response to HiDPI support on Windows and Linux in [JEP 263](https://openjdk.java.net/jeps/263)
- Removal of `java.ext.dirs`. Would be forced by [JEP 220](http://openjdk.java.net/jeps/220).
 - Due to bugs on Windows, updated the JNA jars.
 - Changes in downloader build tasks to support AdoptOpenJDK and OpenJFX.
 - Updated org.eclipse.* / equinox jars.
 - Some optimization around size of distribution.
 - Update of AppBundler.
 - Some changes in formulation of classpath and modifications in PreprocessingService given [JEP 261](https://openjdk.java.net/jeps/261).

**Incidental changes:**
This was (ahem) a bit of a larger PR with the above modifications. So, I wanted to introduce automated tests when possible and convenient along with a few changes for platform sustainability in order to support development:

 - Addition of cross-building capability (!) made possible by AdoptOpenJDK.
 - Addition of mockito for testing.
 - Upgrade of junit.
 - Addition of ant-contrib.
 - Standardized nomenclature around JRE / JDK in `build/build.xml`
 - Deduplication of code in `jre/build.xml`.
 - Addition of JavaDoc in a few places.
 - Some refactoring of PImage / Shape to support increased testing and readability in image manipulation code.
2019-10-05 20:49:33 -07:00
Ben Fry
534ca5d86f fixes for java.ext.dirs on Windows (more for #4623) 2016-08-19 15:39:02 -04:00
Ben Fry
bcd7f9daf2 work on quoting of java.ext.dirs (#4623) 2016-08-19 14:07:04 -04:00
Ben Fry
ef7c4525f3 tweaks and testing for ext.dirs handling 2016-08-12 15:27:18 -04:00
Ben Fry
dbdb5416af remove java.ext.dirs on startup (fixes #4608) 2016-08-06 16:49:55 -04:00
Jakub Valtar
d50a571879 Update min version
...so we can get rid of the workaround for JDK bug
2016-04-04 20:58:21 +02:00
Ben Fry
c4ffdfe68c debugging and forcing use of the local version of jna for #3800 and #3624 2015-09-20 11:07:56 -04:00
Ben Fry
4c192a5cda looking into Windows launcher issues #3543 2015-08-06 14:16:17 -04:00
Ben Fry
3982af6d88 update command line tool for all platforms (fixes #3224) 2015-04-27 11:36:37 -04:00
Kyle Feuz
cc312f8b76 Unset the executable bit on xml files 2014-11-20 13:17:33 -07:00
josh giesbrecht
ed6edbf9db small fix to l4j config so windows build works 2014-06-25 06:13:59 -07:00
josh giesbrecht
5137b0468c Revert "fixed launch4j config for windows build"
This reverts commit 309a5eb0ae.
2014-06-25 06:08:03 -07:00
josh giesbrecht
309a5eb0ae fixed launch4j config for windows build 2014-06-24 08:21:26 -07:00
Ben Fry
4359a16f0e increase heap size to 256m (-Xmx256) per Manindra request 2014-06-06 12:39:58 -04:00
Ben Fry
c43003496f simplify layout a bit more 2014-05-10 15:53:35 -04:00
Ben Fry
187dd45087 git rid of launcher folder, since it is now the only one 2014-05-10 15:16:21 -04:00