This is an automated email from the ASF dual-hosted git repository.
ddekany pushed a change to branch FREEMARKER-35
in repository https://gitbox.apache.org/repos/asf/freemarker.git.
from 034534a [FREEMARKER-35] Continued reworking/cleaning:
add eb1343f Added more advices to FAQ about untrusted template authors.
add 2ef07c2 Manual: Recommending #import instead of #include in the
documentation of #include. Improved #import documentation.
add d921f5d [FREEMARKER-145] Fixed bug where methods with "overloaded"
return type may become inaccessible on Java 9+, if some overriding subclasses
are not public. (This is because java.beans.Introspector behavior has changed
with Java 9.)
add 09f2472 [FREEMARKER-133] Fixed bug where FreeMarker sometimes tries
to expose public methods that are defined or overridden in a non-public class,
if the non-public class was then extended by a public class. Calling such
method just ends up with IllegalAccessException, but they shouldn't be exposed
on the first place, and furthermore can sometimes hide the callable version of
the method.
add eedc075 Updated some test dependencies.
add 26966a4 (Minor typos)
add b037465 Build: Significantly simplified dependency management; no
update-deps and such anymore, just bare-bone Ivy, and we are only using well
known Maven repositories to retrieve artifacts (local, Central, and
apache-staging, in this order). We don't use our own Ivy repo (hosted on our
website) anymore.
add f1a316a Build: Removed some more old complications
add 02c9246 Update the OSGi BREE (minimum Bundle Required Execution
Environment) to 1.7
add aba2728 Merge pull request #69 from mbooth101/2.3-gae
add b145a00 OSGI: Allow FreeMarker being imported to modular Java
projects (Fix #FREEMARKER-159) (#70)
add 378ebfc Manual: Updated version history
add 125b8e6 (JavaDoc typo fixes)
add 11c2b09 Added ?eval_json to evaluate JSON given as flat string. This
was added as ?eval is routinely misused for the same purpose.
add 6d326b0 (Manual: Was using an element unsupported by Docgen)
add 133cc44 Added DOMNodeSupport and JythonSupport boolean properties to
DefaultObjectWrapper. This allows disabling the special wrapping of DOM nodes
and Jython classes. This might be desirable for security reasons.
add b686595 Updated Docgen dependency
add e88d9df More helpful parser error messages for nesting problems
(caused by missed or malformed end-tags usually).
add 5718cf3 (Typo fix in error message and test name)
add 3df22bf Add a TravisCI job to run the build and tests on ARM64
architecture
add 2b40919 Install OpenJDK 8 and Ant from Ubuntu repositories
add a5c5f40 Use JDK 1.8 for the build
add bdd0f6e Use ant-contrib for JUnit tasks
add eae06ba Cache Ivy's cache folder
add 61be173 Ant JUnit task is in ant-optional, not in ant-contrib
add 609f038 Move the printing of java and ant versions to before_install
add de5de02 Cache $HOME/.ivy-freemarker/cache folder
add d7b9ba1 FREEMARKER-165: Fixed bug where where if the namespace
expression in a block assignment (like <#assign x in
someNamespace>...</#assign>) refers to a missing variable, or has the wrong
type, FreeMarker has thrown NullPounterException or ClassCastException, instead
of InvalidReferenceException and NonNamespaceException with proper helpful
message.
add f64f7c9 (Manual: Typo)
add 0bb9b7f Added special Ivy settings for CI, so that the Ivy cache can
be reused between checkouts
add 158edb6 Merge branch '2.3-gae' into feature/build-on-arm64
add 08f3858 Merge pull request #72 from martin-g/feature/build-on-arm64
add bd3907b FREEMARKER-169: If incomplatible_improvements is set to
2.3.31 (or higher), when you set the number_format setting to "computer" (or
you call Environment.getCNumberFormat()), the format now matches the behavior
of ?c, when formatting infinite (positive and negative), and NaN. Matching the
behavior of ?c was always the intent, but before this incompatible improvement,
the computer format always behaved like ?c before incompatible improvements
2.3.21, where instead of "INF [...]
add f3a3d53 (Improved version history)
add a7c3fc8 (Manual: typo)
add 83f6a58 Allowed escaping # with backlash in identifier names (not in
string), as it used to occur in database column names.
add 31bcf07 Manual: Improved documentation for "computer" number format
add 74070ab (Some built-in variable expression code cleanup)
add 65c8b98 Added new special variable, time_zone (referred like
.time_zone, like all special variables), to retrieve the current value of the
time_zone setting as a string.
add 1f0b69f Disabled accessing local maven repo from Ivy, as "changing"
Maven dependencies aren't updated if it's there.
new 61de5d9 Merge remote-tracking branch 'origin/2.3-gae' into
FREEMARKER-35
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.travis.yml | 36 +-
README.md | 7 +-
build.xml | 165 +-----
ivy.xml | 6 +-
.../failing-parsetime.ftlnv => ivysettings-ci.xml | 18 +-
ivysettings.xml | 41 +-
osgi.bnd | 13 +-
src/main/java/freemarker/core/Assignment.java | 6 +-
src/main/java/freemarker/core/BlockAssignment.java | 12 +-
src/main/java/freemarker/core/BuiltIn.java | 4 +-
.../freemarker/core/BuiltInsForMultipleTypes.java | 4 +-
.../freemarker/core/BuiltInsForStringsMisc.java | 17 +-
src/main/java/freemarker/core/BuiltinVariable.java | 29 +-
src/main/java/freemarker/core/DynamicKeyName.java | 2 +-
src/main/java/freemarker/core/Environment.java | 46 +-
src/main/java/freemarker/core/JSONParser.java | 622 +++++++++++++++++++++
.../core/JavaTemplateNumberFormatFactory.java | 12 +-
src/main/java/freemarker/core/ParseException.java | 316 +++++++----
.../java/freemarker/core/TemplateNullModel.java | 4 +-
.../java/freemarker/core/_CoreStringUtils.java | 26 +-
.../freemarker/ext/beans/ClassIntrospector.java | 65 ++-
.../java/freemarker/ext/beans/_MethodUtil.java | 82 +++
.../java/freemarker/template/Configuration.java | 11 +
.../freemarker/template/DefaultObjectWrapper.java | 82 ++-
.../DefaultObjectWrapperConfiguration.java | 30 +-
.../java/freemarker/template/_TemplateAPI.java | 4 +-
.../freemarker/template/utility/StringUtil.java | 11 +
src/main/javacc/FTL.jj | 3 +-
src/manual/en_US/book.xml | 493 ++++++++++++++--
src/test/java/freemarker/core/CamelCaseTest.java | 3 +
.../EvalJsonBuiltInTest.java} | 14 +-
src/test/java/freemarker/core/JSONParserTest.java | 171 ++++++
.../freemarker/core/MiscErrorMessagesTest.java | 14 +-
.../java/freemarker/core/NumberFormatTest.java | 47 +-
.../freemarker/core/ParsingErrorMessagesTest.java | 24 +-
.../Java9InstrospectorBugWorkaroundTest.java} | 11 +-
.../java/freemarker/ext/beans/MethodUtilTest2.java | 164 ++++++
.../ext/beans/ParameterListPreferabilityTest.java | 2 +-
.../template/DefaultObjectWrapperTest.java | 45 +-
.../freemarker/core/cano-identifier-escaping.ftl | 6 +-
.../core/cano-identifier-escaping.ftl.out | 4 +-
.../templatesuite/expected/identifier-escaping.txt | 2 +-
.../test/templatesuite/expected/specialvars.txt | 1 +
.../templates/identifier-escaping.ftl | 6 +-
.../freemarker/test/templatesuite/templates/if.ftl | 8 +-
.../test/templatesuite/templates/setting.ftl | 2 +
.../test/templatesuite/templates/specialvars.ftl | 1 +
47 files changed, 2211 insertions(+), 481 deletions(-)
copy
src/test/resources/freemarker/ext/jsp/webapps/errors/failing-parsetime.ftlnv =>
ivysettings-ci.xml (53%)
create mode 100644 src/main/java/freemarker/core/JSONParser.java
copy src/test/java/freemarker/{manual/WithArgsLastExamples.java =>
core/EvalJsonBuiltInTest.java} (68%)
create mode 100644 src/test/java/freemarker/core/JSONParserTest.java
copy src/test/java/freemarker/{manual/WithArgsExamples.java =>
ext/beans/Java9InstrospectorBugWorkaroundTest.java} (73%)
create mode 100644 src/test/java/freemarker/ext/beans/MethodUtilTest2.java