SOY-40 work-in-progress on refactoring to use the SoyManager API. This is not complete - it compiles, but appears to be broken. Committing so I can hand over to another dev.
SOY-40 - Create output directory if it doesn't exist.
SOY-40 - The templates to be compiled are also part of the dependencies for compilation.
[maven-release-plugin] prepare for next development iteration
SOY-40 : A little more PR feedback Removed redundant SoyManagerBuilder calls (which just made the defaults explicit). Removed SoyFunctionNotFoundException. Updated README. Improved error message on unsupported java version.
SOY-40 : Made CLI extension param supported for compilation. This allows devs to have foo.soy => foo.soy.js so as to not clash with foo.js
SOY-40 : Fixed CLI to preserve directory structure for output. Appears to have been a regression :/
SOY-40 : Made i18n support multiple files (pass in a glob).
[maven-release-plugin] prepare for next development iteration
SOY-40 : PR feedback Made soy compiler output js as it goes, rather than accumulate it in memory. Fixed up weird control flow issues stemming from guava usage. Wrapped the user provided extension param in a Matcher.quoteReplacement call.
[maven-release-plugin] prepare for next development iteration
Bump version to 3.3.0-SNAPSHOT
SOY-81: Switch from using the string builder code style to using the concat code style
This allows the use of strict autoescape and generates less JavaScript code. The string builder code style is recommended only for application which need to support IE 6
[maven-release-plugin] prepare for next development iteration
SOY-86: Bump platform version to a 3.x milestone to fix the integration tests
Disable integration tests for Stash
Fix integrations tests for Refapp
Bump AMPS version while I'm here
Bump base pom while I'm here
Make use of new language features in Java 7
Use try-with-resource where possible
Make use of diamond syntax over guava helper methods
Cleanup deprecated APIs in preparation for 4.0.0
SOY-88: First cut at adding a release stage to the end of the build
[Maven Release] Updating version to 4.0.1-SNAPSHOT
SOY-87: Harden CustomFunctionsModule when soy functions clash
Maintain a list of builtin and provided soy functions
Log a message when a soy function attempts to register with the same name as a provided function
Detect when plugin provided soy functions have the same name as each other and pick the first function provided, logging a message about the ignored function
SOY-87: Add some more tests for CustomFunctionsModule and CoreFunctionsModule to catch soy functions which are recorded as registered but aren't
[Maven Release] Updating version to 3.3.4-SNAPSHOT
[Maven Release] Updating version to 4.0.2-SNAPSHOT
SOY-91 update SalWebContextProvider to use SAL ApplicationProperties instead of HttpContext
The contextPath function has been failing to render in emails and other situations where a httpContext is unavailable, this commit updates to use SALs ApplicationProperties which falls back to the configured context path when a httpContext is unavailable. The unit test is more a statement of requirements to prevent future accidental refactorings
[Maven Release] Updating version to 3.3.5-SNAPSHOT
[Maven Release] Updating version to 4.0.3-SNAPSHOT
SOY-92 Bumping closure-templates library version to pick up fix
[Maven Release] Updating version to 4.0.4-SNAPSHOT
SOY-93: Also accept SoyClientFunction in case SoyFunction implements both SoyServerFunction and SoyClientFunction
[Maven Release] Updating version to 4.0.5-SNAPSHOT
Specifically require 3.0.5+
SOY-95: Add release build for closure templates fork
SOY-95: Set hasTests to false for the closure-templates fork
Fix binaryModule for closure template fork
SOY-92: Backport closure template compiler fixes to 3.x series
[Maven Release] Updating version to 3.3.6-SNAPSHOT
Bump soycompiler version to the new versioning scheme
Add additional tests to CustomFunctionsModuleTest
SOY-83: Allow ContextFunction to be customized in the CLI
Inject named Properties into the guice system so that configuration can be used by soy functions
Add default configuration for the soy functions
Modify the CLI to allow customizing the context path to be a custom string or AJS.contextPath()
SOY-91 update SalWebContextProvider to use SAL ApplicationProperties instead of HttpContext
The contextPath function has been failing to render in emails and other situations where a httpContext is unavailable, this commit updates to use SALs ApplicationProperties which falls back to the configured context path when a httpContext is unavailable. The unit test is more a statement of requirements to prevent future accidental refactorings
SOY-100 bumping parent POM version and AMPs version to match the version on 3.x
SOY-101, SOY-102: Add additional configuration options for the CLI
Add the ability to exclude files from the base directory. Excludes take precedence over includes
Add the ability to have a different base directory for i18n files than from soy files, because some developers like to split files into different directories for each type
[Maven Release] Updating version to 2.9.2-SNAPSHOT
[Maven Release] Updating version to 3.4.1-SNAPSHOT
Bump to 4.1.0-SNAPSHOT
[Maven Release] Updating version to 4.1.1-SNAPSHOT
SOY-105: Fix FileBasedI18nResolver so it correctly formats messages
Format messages for the no-arg getText methods
Add unit tests
[Maven Release] Updating version to 3.4.2-SNAPSHOT
[Maven Release] Updating version to 4.1.2-SNAPSHOT
SOY-107 Increasing expireAfterAccess cache expiry time
[Maven Release] Updating version to 3.4.4-SNAPSHOT
[Maven Release] Updating version to 4.1.4-SNAPSHOT
Notify Atlassian Soy HipChat room for all build results
SOY-112 Add @Inherited to @CustomSoyDataMapper so subclasses of annotated classes receive the customSoyDataMapping
Bump to 4.2.0-SNAPSHOT
SOY-109: Convert release/2.9 to the new platform code style
SOY-109: Convert release/3.0 to the new platform code style
SOY-103: Add validation to SoyFunctionModuleDescriptor documenting class as a required attribute
SOY-116: Upgrade dependencies to be consistent with Java Platform 3
This was primarily done to in preparation of incoming Spring Boot support for Atlassian Soy which required a number of these upgrades but also to simplify the versions of dependencies Atlassian Soy uses. Atlassian Soy 4.x is platform 3.0+ compatible so this is not a breaking change. Most dependencies are now retrieved via the platform poms which are scope imported into the parent POMs dependency management. The main dependency changes are:
Noteable third party dependencies
SLF4j: 1.5.8 - 1.7.x
Spring: 2.5.6 - 4.1.x
Noteable Atlassian dependencies
Plugins: 3.0.8 - 4.0.x
Web resources: 3.0.7 - 3.3.x
Fugue: 1.1 - 2.2.x
Web fragments: 3.0.7 - 4.0.x
SAL: 2.11.0 - 3.0.x
SOY-116: Downgrade Atlassian Util Concurrent to 2.6.x from 3.0.x
Unfortunately JIRA was very naughty and didn't upgrade this library. Added the dependency to the dependencyManagement and document why.
Also reenable JIRA for the integration tests
SOY-113: Add Spring Boot autoconfigure support to Atlassian Soy
Create support/spring-boot and integration-tests/spring-boot modules
Add AtlassianSoyAutoConfiguration auto configuration which makes use of the existing factory beans in the spring and spring-mvc support modules but exposes their customizable parts as overrideable beans
Create AtlassianSoySettings to allow customization of various value based configurationw without having to override the beans that use them. The annotation processor module is also added so the JSON metadata is generated
Add SpringWebContextProvider as the successor of
WebContextProviderServletFilter which makes use of Spring's RequestContextHolder and LocaleContextHolder instead of maintaining its own thread locals
SOY-116: Upgrade AMPS to 6.1.0 to reenable integration tests for Bitbucket Server (aka Stash)
Run build using JDK 1.8 so that JIRA 7.x can run in the integration tests
SOY-116: Further cleanup after upgrading dependencies to platform 3
Bump the parent POM to the latest 3.x
Remove the duplicate banned dependency
Fix some documentation issues
Remove unnecessary test dependencies which are already managed in the platform POMs
SOY-114: Add a Code coverage build to Atlassian Soy using Clover
SOY-114: Move some of the configuration into a profile to provide some assurance that Clover isn't being activated in the regular build
Fix the JavaDoc failures
Disable doclint for now
[Maven Release] Updating version to 4.2.1-SNAPSHOT
SOY-119: integration tests fixed for JIRA (doing synchronous startup) and refapp (making WRM do not require Prebake components being provided); informing pre-baking errors in Function Supplier
SOY-119: stateful (impure) soy functions should be dimension aware and contribute with their dimensions
SOY-119: improving dimension aware interface for stateful soy functions
SOY-119: do not fail if some dimensions cannot be computed
SOY-40 command line interface
SOY-40 Remove common-io and use guava
SOY-40 i18n param is not required
SOY-40 doco
SOY-40 work-in-progress on refactoring to use the SoyManager API. This is not complete - it compiles, but appears to be broken. Committing so I can hand over to another dev.
SOY-40 - Create output directory if it doesn't exist.
SOY-40 - The templates to be compiled are also part of the dependencies for compilation.
I don't like nulls.
SOY-40 - Test actual compilation part of the CLI.
SOY-40 - Write test for asserting rendering works.
SOY-40 - Deal with empty dependencies.
SOY-40 - Add test for inclusion of external template dependencies.
SOY-40 - Glob will resolve relative to base search directory
SOY-66: Push JavaScript soy compilation into SoyManager
SOY-65: Add SoyManagerBuilder to consolidate a lot of the boilerplate required to create a SoyManager
SOY-65: Add various javadoc for the SoyManagerBuilder and friends
SOY-40: Adding ability to specify custom functions in cli
SOY-40: Few little changes
SOY-40: Bit of refactoring
[maven-release-plugin] prepare release soy-templates-parent-3.2.0-m1-servicedesk-1
[maven-release-plugin] prepare for next development iteration
SOY-40: Fixing typo
[maven-release-plugin] prepare release soy-templates-parent-3.2.0-m1-servicedesk-2
[maven-release-plugin] prepare for next development iteration
SOY-40: Adding test for custom soy function
SOY-40: Formatting
SOY-67: Fix GetTextAsHtmlFunction after upgrade to soy compiler
SOY-67: Fix GetTextAsHtmlFunctionTest
[maven-release-plugin] prepare release soy-templates-parent-3.1.2
[maven-release-plugin] prepare for next development iteration
SOY-67: Fix GetTextAsHtmlFunction again
SOY-67: Fix GetTextAsHtmlFunctionTest again
[maven-release-plugin] prepare release soy-templates-parent-3.1.3
[maven-release-plugin] prepare for next development iteration
SOY-69: Handle primitive arrays in AtlassianSoyCustomValueConverter
SOY-70: Fix GetTextAsHtml to support choice formats by not converting numbers to strings. Numbers are always safe
SOY-40 : Removed some logic from SoyJsCompiler, made it use SoyManager better
SOY-40 : PR feedback Made source 1.6 Made cli fail-fast on java 1.6 or earlier Removed redundant classes
SOY-40 : More PR feedback Used a ServiceLoader for custom functions. Removed SoyManagerFactory
[maven-release-plugin] prepare release soy-templates-parent-3.2.0-SOY-40-cli-support
[maven-release-plugin] prepare for next development iteration
SOY-40 : A little more PR feedback Removed redundant SoyManagerBuilder calls (which just made the defaults explicit). Removed SoyFunctionNotFoundException. Updated README. Improved error message on unsupported java version.
SOY-40 : Made CLI extension param supported for compilation. This allows devs to have foo.soy => foo.soy.js so as to not clash with foo.js
SOY-40 : Fixed CLI to preserve directory structure for output. Appears to have been a regression :/
SOY-40 : Made i18n support multiple files (pass in a glob).
[maven-release-plugin] prepare release soy-templates-parent-3.2.0-SOY-40-cli-support-1
[maven-release-plugin] prepare for next development iteration
SOY-40 : PR feedback Made soy compiler output js as it goes, rather than accumulate it in memory. Fixed up weird control flow issues stemming from guava usage. Wrapped the user provided extension param in a Matcher.quoteReplacement call.
[maven-release-plugin] prepare release soy-templates-parent-3.2.0
[maven-release-plugin] prepare for next development iteration
SOY-73: Change the default implementation of SoyFunctionSupplier to ServiceLoaderSoyFunctionSupplier
SOY-74: Allow soy function jars to be specified at the command line by using a custom ClassLoader
SOY-78: Further improve the performance of SoyTransformerUrlBuilder
Build the global state of contributing plugins up-front instead of on each invocation
Push addToUrl logic for SoyFunctions down into PluginSoyFunctionSupplier
Stop using PluginModuleTracker to allow for optimizations
Rename SoyFunctionModuleDescriptorSupplier to UrlEncodingSoyFunctionSupplier to better describe its contract
SOY-77: Split API which is dependent on the plugin system into its own module, and clearly document what is API and what isn't
Move QueryParamsResolver and SoyFunctionModuleDescriptor into plugin-api module
Remove web resource dependency from api module
Add PublicApi, PublicSpi and Internal annotations to the API modules
SOY-79: Creating all directories in path when using cli
SOY-79: Avoid commons-io dependency
SOY-79: Minor reformatting
[maven-release-plugin] prepare release soy-templates-parent-3.2.1
[maven-release-plugin] prepare for next development iteration
Bump version to 3.3.0-SNAPSHOT
SOY-81: Switch from using the string builder code style to using the concat code style
This allows the use of strict autoescape and generates less JavaScript code. The string builder code style is recommended only for application which need to support IE 6
SOY-77: Bump version to 3.3.0-SNAPSHOT
SOY-80 - get help function
SOY-80 - trying to wire help path resolver correctly
SOY-77: Bump version to 3.3.0-SNAPSHOT
[maven-release-plugin] prepare release soy-templates-parent-3.2.2
[maven-release-plugin] prepare for next development iteration
SOY-80 - add proper escaping
SOY-80 - code review feedback and fix for unit test
Bump version to 2.9.0-SNAPSHOT
SOY-80: Convert helpUrl function to use Atlassian Soy interfaces instead of the soy compilers interfaces
SOY-82: Implement toString function to help bridge the gap between 2.x and 3.x
[maven-release-plugin] prepare release soy-templates-parent-2.9.0
[maven-release-plugin] prepare for next development iteration
SOY-78: Convert volatile state to a resetable lazy reference
[maven-release-plugin] prepare release soy-templates-parent-3.3.0
[maven-release-plugin] prepare for next development iteration
SOY-39: Correct the scope of dependencies for core to make it easier to consume from non-plugin environments
Add enforcer rule to plugin/ so that only explicitly named dependencies are bundled
Audit dependencies using dependency:analyze and add all missing dependencies which were previously being included transitively
SOY-78: Fix race condition in implementation of PluginSoyFunctionSupplier which causes functional tests to fail
[maven-release-plugin] prepare release soy-templates-parent-3.3.1
[maven-release-plugin] prepare for next development iteration
Initial plan template
Add notifications to plan templates
Update documentation to point to new CI location
Enforce maven 3.x, bump parent POM, bump AMPS version and enforce plugin versions
Upgrade to Maven 3.2 in the builds
Minor fixup to enforcer configurations
SOY-85: Bump the version of closure template to 20140422-8ece726-atlassian3, which inludes some missing methods for soy renderer in javascript
[maven-release-plugin] prepare release soy-templates-parent-3.3.2
[maven-release-plugin] prepare for next development iteration
SOY-86 : Removed InputSupplier methods, added guava 18 as a dependency and changed version to 4.0.0-SNAPSHOT
SOY-86 Addressing comments from PR - removed redundant maven-compiler-plugin and used try-with-resources to make sure the Reader is closed....
[maven-release-plugin] prepare release soy-templates-parent-4.0.0-m01-refapp-1
[maven-release-plugin] prepare for next development iteration
SOY-86: Bump platform version to a 3.x milestone to fix the integration tests
Disable integration tests for Stash
Fix integrations tests for Refapp
Bump AMPS version while I'm here
Bump base pom while I'm here
Make use of new language features in Java 7
Use try-with-resource where possible
Make use of diamond syntax over guava helper methods
Cleanup deprecated APIs in preparation for 4.0.0
SOY-88: First cut at adding a release stage to the end of the build
[Maven Release] Updating version to 4.0.1-SNAPSHOT
SOY-87: Harden CustomFunctionsModule when soy functions clash
Maintain a list of builtin and provided soy functions
Log a message when a soy function attempts to register with the same name as a provided function
Detect when plugin provided soy functions have the same name as each other and pick the first function provided, logging a message about the ignored function
SOY-87: Complete the comment
SOY-87: Add some more tests for CustomFunctionsModule and CoreFunctionsModule to catch soy functions which are recorded as registered but aren't
[Maven Release] Updating version to 3.3.4-SNAPSHOT
[Maven Release] Updating version to 4.0.2-SNAPSHOT
SOY-91 update SalWebContextProvider to use SAL ApplicationProperties instead of HttpContext
The contextPath function has been failing to render in emails and other situations where a httpContext is unavailable, this commit updates to use SALs ApplicationProperties which falls back to the configured context path when a httpContext is unavailable. The unit test is more a statement of requirements to prevent future accidental refactorings
[Maven Release] Updating version to 3.3.5-SNAPSHOT
[Maven Release] Updating version to 4.0.3-SNAPSHOT
SOY-92 Bumping closure-templates library version to pick up fix
[Maven Release] Updating version to 4.0.4-SNAPSHOT
SOY-93: Also accept SoyClientFunction in case SoyFunction implements both SoyServerFunction and SoyClientFunction
[Maven Release] Updating version to 4.0.5-SNAPSHOT
Specifically require 3.0.5+
SOY-95: Add release build for closure templates fork
SOY-95: Set hasTests to false for the closure-templates fork
Fix binaryModule for closure template fork
SOY-92: Backport closure template compiler fixes to 3.x series
[Maven Release] Updating version to 3.3.6-SNAPSHOT
Bump soycompiler version to the new versioning scheme
Add additional tests to CustomFunctionsModuleTest
SOY-83: Allow ContextFunction to be customized in the CLI
Inject named Properties into the guice system so that configuration can be used by soy functions
Add default configuration for the soy functions
Modify the CLI to allow customizing the context path to be a custom string or AJS.contextPath()
Bump version to 3.4.0-SNAPSHOT
SOY-96: Add integration tests for CLI
Also:
Make integration-tests/webapp able to run on JDK 8
Remove non-existant atlassian-soy-functions artifact from parent pom
Upgrade testing libraries to allow for better assertions including junit 4.11 and hamcrest 1.3
Improve CLI help messaging by correctly identifying required options
Add integration/cli module which runs a sanity test against the CLI as a separate Java program
Add FeatureMatchers for the CLI integration tests
Convert integration tests to use ServiceLoaderFunctionSupplier instead of the simple version
Fix POM versions
Fix POM versions
Fix dependencyManagement
Fix dependencyManagement
SOY-83: Update use-context-path description
SOY-91 update SalWebContextProvider to use SAL ApplicationProperties instead of HttpContext
The contextPath function has been failing to render in emails and other situations where a httpContext is unavailable, this commit updates to use SALs ApplicationProperties which falls back to the configured context path when a httpContext is unavailable. The unit test is more a statement of requirements to prevent future accidental refactorings
SOY-100 bumping parent POM version and AMPs version to match the version on 3.x
SOY-101, SOY-102: Add additional configuration options for the CLI
Add the ability to exclude files from the base directory. Excludes take precedence over includes
Add the ability to have a different base directory for i18n files than from soy files, because some developers like to split files into different directories for each type
[Maven Release] Updating version to 2.9.2-SNAPSHOT
[Maven Release] Updating version to 3.4.1-SNAPSHOT
Bump to 4.1.0-SNAPSHOT
[Maven Release] Updating version to 4.1.1-SNAPSHOT
SOY-105: Fix FileBasedI18nResolver so it correctly formats messages
Format messages for the no-arg getText methods
Add unit tests
[Maven Release] Updating version to 3.4.2-SNAPSHOT
[Maven Release] Updating version to 4.1.2-SNAPSHOT
SOY-107 Increasing expireAfterAccess cache expiry time
SOY-107 Removing expireAfterAccess
CONFDEV-36056 - soy compiler upgrade
SOY-108: Upgrade the closure template compiler to pick up performance fixes
[Maven Release] Updating version to 3.4.3-SNAPSHOT
[Maven Release] Updating version to 4.1.3-SNAPSHOT
SOY-110: Upgrade to soy compiler 20140422.11-atlassian4
SOY-110: Upgrade to Soy 20140422.18-atlassian3
[Maven Release] Updating version to 3.4.4-SNAPSHOT
[Maven Release] Updating version to 4.1.4-SNAPSHOT
Notify Atlassian Soy HipChat room for all build results
SOY-112 Add @Inherited to @CustomSoyDataMapper so subclasses of annotated classes receive the customSoyDataMapping
Bump to 4.2.0-SNAPSHOT
SOY-109: Convert release/2.9 to the new platform code style
SOY-109: Convert release/3.0 to the new platform code style
SOY-103: Add validation to SoyFunctionModuleDescriptor documenting class as a required attribute
SOY-116: Upgrade dependencies to be consistent with Java Platform 3
This was primarily done to in preparation of incoming Spring Boot support for Atlassian Soy which required a number of these upgrades but also to simplify the versions of dependencies Atlassian Soy uses. Atlassian Soy 4.x is platform 3.0+ compatible so this is not a breaking change. Most dependencies are now retrieved via the platform poms which are scope imported into the parent POMs dependency management. The main dependency changes are:
Noteable third party dependencies
SLF4j: 1.5.8 - 1.7.x
Spring: 2.5.6 - 4.1.x
Noteable Atlassian dependencies
Plugins: 3.0.8 - 4.0.x
Web resources: 3.0.7 - 3.3.x
Fugue: 1.1 - 2.2.x
Web fragments: 3.0.7 - 4.0.x
SAL: 2.11.0 - 3.0.x
SOY-116: Downgrade Atlassian Util Concurrent to 2.6.x from 3.0.x
Unfortunately JIRA was very naughty and didn't upgrade this library. Added the dependency to the dependencyManagement and document why.
Also reenable JIRA for the integration tests
SOY-113: Add Spring Boot autoconfigure support to Atlassian Soy
Create support/spring-boot and integration-tests/spring-boot modules
Add AtlassianSoyAutoConfiguration auto configuration which makes use of the existing factory beans in the spring and spring-mvc support modules but exposes their customizable parts as overrideable beans
Create AtlassianSoySettings to allow customization of various value based configurationw without having to override the beans that use them. The annotation processor module is also added so the JSON metadata is generated
Add SpringWebContextProvider as the successor of
WebContextProviderServletFilter which makes use of Spring's RequestContextHolder and LocaleContextHolder instead of maintaining its own thread locals
SOY-116: Upgrade AMPS to 6.1.0 to reenable integration tests for Bitbucket Server (aka Stash)
Run build using JDK 1.8 so that JIRA 7.x can run in the integration tests
SOY-116: Further cleanup after upgrading dependencies to platform 3
Bump the parent POM to the latest 3.x
Remove the duplicate banned dependency
Fix some documentation issues
Remove unnecessary test dependencies which are already managed in the platform POMs
SOY-114: Add a Code coverage build to Atlassian Soy using Clover
SOY-114: Move some of the configuration into a profile to provide some assurance that Clover isn't being activated in the regular build
Fix the JavaDoc failures
Disable doclint for now
[Maven Release] Updating version to 4.2.1-SNAPSHOT
SOY-119: transformers dimension aware, bump Java 8, bump WRM (branch), bump JIRA (branch), trying to fix integration tests
SOY-119: integration tests fixed for JIRA (doing synchronous startup) and refapp (making WRM do not require Prebake components being provided); informing pre-baking errors in Function Supplier
SOY-119: stateful (impure) soy functions should be dimension aware and contribute with their dimensions
SOY-119: improving dimension aware interface for stateful soy functions
SOY-119: do not fail if some dimensions cannot be computed
SOY-119: concrete WRM release
SOY-119: bump webresource osgi version
SOY-119: bump plugin version
[Maven Release] Updating version to 4.3.1-SNAPSHOT
Update mailmap file to map various authors
SOY-125: Add option for using AJS.I18n.getText for resolving strings
SOY-125: More tests
SOY-125: Fixing test
SOY-125: Changes after review
SOY-125: Cleaning up logic and fixing test
Bamp to 4.4.0-SNAPSHOT
[Maven Release] Updating version to 4.4.1-SNAPSHOT
PLATFORM-202 vertigo compatibility.
PLATFORM-202 updating comments.
PLATFORM-202 updating tenant annotations.
[Maven Release] Updating version to 4.4.2-SNAPSHOT
README.md edited online with Bitbucket