Releases: xenit-eu/dynamic-extensions-for-alfresco
1.1
- Service proxies: access dynamic extension services from regular (global) Spring beans (similar to Alfresco subsystems) https://github.com/laurentvdl/dynamic-extensions-for-alfresco/wiki/Service-proxies
- Gradle plugin
- installBundle task can be configured to deploy maven dependencies
- generic callWebScript task to invoke ie. integration tests
- repository configuration moved to global alfrescoDynamicExtensions configuration block (extension)
- alfresco dependencies are no longer added by the plugin, this has to be done explicitly, giving you more control (transitive yes/no, enterprise groupname)
- Control panel
- more metadata on webscript page (familiy, format, description)
- dependent bundles are refreshed after updating an extension via the REST API or UI (helpfull when running integration tests and updating the test target)
- the /app:company_home/app:dictionary/cm:dynamic_extensions/cm:configuration can safely be removed, the framework now stores this cache information in the io.tmpdir
- Alfresco 3.4 support: workflow support is disabled when Activiti is not found on the classpath, allowing deployment on 3.4
- correct issue with @action parameters requiring explicit type information (java.lang.String was interpreted as cmis datatype) #100
- Scala edition AMP is no longer part of the release: dependencies can now easily be deployed using the installBundle task type
- Hosting of binaries on Bintray jcenter instead of Github raw branch.
Checkout https://github.com/laurentvdl/example-dynamic-extension for updated Gradle and Maven build examples.
1.0.2 stable
Bugfix release:
- fix bootstrapping encoded resources: wrap inputsteam with buffer for charset finder: the InputStream must support marks
- be more lenient in parsing Alfresco library versions: "5.13-alf-20130918" was not parsed by the OSGi manifest parser
Both AMP files are stand-alone. (scala version includes standard extension, but adds scala library as standard bundle)
1.0.1 stable
You can upgrade your extension project by updating the buildscript configuration:
buildscript {
repositories { maven { url 'https://raw.github.com/laurentvdl/dynamic-extensions-for-alfresco/mvn-repo/' } }
dependencies {
classpath group: 'com.github.dynamicextensionsalfresco', name: 'gradle-plugin', version: '1.0.1'
}
}
Features:
- webscript resolutions: https://github.com/laurentvdl/dynamic-extensions-for-alfresco/wiki/Annotated-WebScripts#resolutions
- custom webscript ArgumentResolvers: https://github.com/laurentvdl/dynamic-extensions-for-alfresco/wiki/Annotated-WebScripts#attribute-providers-and-injection
- Activiti workflow support: extension Service Tasks and execution/task listeners: https://github.com/laurentvdl/dynamic-extensions-for-alfresco/wiki/Workflow
- automatic wrapping of non OSGi dependencies: https://github.com/laurentvdl/dynamic-extensions-for-alfresco/wiki/Extension-dependencies
- 2 amp distributions: Scala build is optional
- Abstract base class for serving static resources: https://github.com/laurentvdl/dynamic-extensions-for-alfresco/wiki/Annotated-WebScripts#serving-static-resources
- annotation support for exporting OSGi services:
@Component @OsgiService
Breaking changes:
The support for Activiti breaks Alfresco 3.4 compatibility, so 4.0 is now the minimum required version.
Important note: due to the project ownership change, the base package structure has changed.
Replacing nl.runnable.alfresco
with com.github.dynamicextensionsalfresco
will make any previous extension compatible with the 1.0 release.
Bugfix::
- a URI method with a parameter that is a subtype of a
java.util.Map
is no longer injected with the model, this allows customAbstractTypeBasedArgumentResolver
to be registered that handle Map subtypes
Use the non-scala AMP for normal Java development. (or if you want to use a custom version of Scala)
The scala AMP also includes the Scala 2.10.2 runtime library.
Milestone 6
Features:
- REST endpoint for restarting the OSGi framework:
/service/dynamic-extensions/osgi/restart
- auto refresh system package cache when WEB-INF/lib has changed
- runtime MODE (Production/Dev) is replaced with individual settings in osgi-container.properties (also visible in control-panel)
- Uri handlers can now return the template to use as a String return value
- auto configuration of
Alfresco-Spring-Configuration
if not specified has Bundle header - new webscript-support module for the
AbstractBundleResourceHandler
(no more need to import control-panel) - Scala 2.10.3 is now included by default to ease deployment of Scala based extensions
Fixes in this milestone:
- integration: fallback to jar content scanning when MANIFEST.MF fails to parse (Vaadin jar)
- gradle-plugin: allow override of "Import-Package"
- fix duplicate WebScript ID detection: make sure you Uri methods have a unique name (no overloading)
Internal:
- moved from Maven to Gradle: use "gradlew(.sh|.bat)" script to build the project