This is an automated email from the ASF dual-hosted git repository. ddekany pushed a change to branch 3 in repository https://gitbox.apache.org/repos/asf/freemarker.git.
from 60944fc Increased minimum Java version to 8 new 310cb70 Bit of cleanup to decrease the number of ways InvalidReferenceException can be constructed new e11170a Very basic (incomplete) support for TemplateNullModel, and the null literal in the template language. This change also means that reading null loop variables will never fall back to higher scopes anymore. The 2 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: FM3-CHANGE-LOG.txt | 7 ++ .../apache/freemarker/core/NullLiteralTest.java | 54 ++++++++++++++ .../freemarker/core/NullTransparencyTest.java | 84 ++++++++++++++++++++++ .../org/apache/freemarker/core/ASTDirList.java | 9 ++- .../org/apache/freemarker/core/ASTExpDefault.java | 6 +- .../org/apache/freemarker/core/ASTExpExists.java | 4 +- ...pBooleanLiteral.java => ASTExpNullLiteral.java} | 25 ++----- .../apache/freemarker/core/BuiltInForHashEx.java | 22 +++--- .../apache/freemarker/core/BuiltInsForHashes.java | 8 ++- .../org/apache/freemarker/core/Environment.java | 61 +++++++++++----- .../freemarker/core/InvalidReferenceException.java | 6 +- .../org/apache/freemarker/core/_EvalUtils.java | 15 ++-- .../freemarker/core/model/TemplateNullModel.java | 46 ++++++++++++ .../core/model/impl/DefaultObjectWrapper.java | 4 +- .../core/util/TemplateLanguageUtils.java | 5 ++ freemarker-core/src/main/javacc/FTL.jj | 51 ++++++++++--- 16 files changed, 325 insertions(+), 82 deletions(-) create mode 100644 freemarker-core-test/src/test/java/org/apache/freemarker/core/NullLiteralTest.java create mode 100644 freemarker-core-test/src/test/java/org/apache/freemarker/core/NullTransparencyTest.java copy freemarker-core/src/main/java/org/apache/freemarker/core/{ASTExpBooleanLiteral.java => ASTExpNullLiteral.java} (72%) create mode 100644 freemarker-core/src/main/java/org/apache/freemarker/core/model/TemplateNullModel.java