Alfresco Process Services 1.*-2.* migration - alfresco

I'm trying to migrate to Alfresco Process Services 2.3.2 from 1.*
There is a property in the documentation about activiti.engine5.enabled property I don't understand how to set. The documentation does not make sense:
Before you upgrade from 1.x to 2.x you must set the activiti.engine5.enabled property to true in the activiti-app.properties file.
Once you have upgraded from 1.x to 2.x you must set the activiti.engine5.enabled property to true in the activiti-app.properties file.
It says to set it to true before the upgrade and after the upgrade.
Isn't it a mistake? Does anyone know how to set up this property?

It seems it is enough to set activiti.engine5.enabled to true in the moment of the upgrade.

Related

Validation Caching in Symfony >= 3.1

In a Symfony 3.1 application (which developement has been started on Symfony 2.7) I have this config item in config_prod.yml:
framework:
validation:
cache: validator.mapping.cache.doctrine.apc
To use this setup with PHP7 I needed to change this to:
framework:
validation:
cache: validator.mapping.cache.doctrine.apcu
Since Symfony 3.1 there is as well a new Cache component which for the system is configured like:
framework:
cache:
system: ???
and the official blog article states for it:
"cache.system is where Symfony components store their contents (e.g. the Serializer and Validator metadata) (...) If your server has APCu installed, the cache.system pool uses it. Otherwise, it falls back to the filesystem cache."
What I'd like to understand is whether the framework->validation->cache definition is still required or if that's part of the cache.system pool.
In later case - if I understand it correctly - framework->validation->cache could be removed and still an enabled APCu would cache validation annotations.
EDIT
If my assumption is correct then validations would be cached by the new Symfony ApcuAdapter and not by the Doctrine APC/U Cache anymore.
Based on the upgrade documentation:
"The framework.serializer.cache option and the service serializer.mapping.cache.apc have been deprecated. APCu should now be automatically used when available."
So this means indeed the old configuration can be deleted without any replacement as long as apcu is installed and enabled.

Is Symfony looks for a service?

I am trying to do LDAP authentication, I currently have this type of error :
ServiceNotFoundException: The service
"security.firewall.map.context.main" has a dependency on a
non-existent service "form.csrf_provider".
Any help please ?
You need to enable csrf_protection in your configuration. Open config.yml and be sure that
framework:
csrf_protection: true
is present in your configuration.
The form.csrf_provider is deprecated and removed in Symfony 3.
Use security.csrf.token_manager instead.
My guess is that you are using a bundle that is not ready for symfony3.
Look at the README of your required bundles and to be sure they are compatibile.
See the 3.0 CHANGELOG for all deprecated features.
Update
It's the inverse. You are on a too old symfony version, which doesn't support the form.csrf_provider, and you are surely using a bundle that require it.
Look for adapt your requirements or your symfony version.
NOTE: You should really change your symfony version for a stable release.

FXMLLoader template flag

Looking at FXMLLoader#load, a "template flag" is mentioned - yet I see no explanation of how to set this flag. Presumably there should be a FXMLLoader#setTemplate, but no such method exists in the linked JavaDoc, and using the latest 1.8 OpenJDK (build 1.8.0_72-internal-b05) I can't see such method either.
So what is this flag, and how do I set it?
There was some discussion on the JavaFX developer list about creating this flag in order to generate a better-performing mode for loading FXML files for certain use cases. It seems this idea was not included in the final release of JavaFX 8.0, but clearly the API documentation didn't fully reflect that decision.
So the actual answer to your question is that the API documentation is wrong: there is no such flag.

Why does Flyway's Validate ignore missing files?

I use Flyway's migrate when I start my application to, well, migrate the database. As per default validateOnMigrate is enabled and validate reports an error if a already applied file is changed.
So far so good, but it seems to ignore cases where an already applied file is missing.
Secondly, if the schema contains a migration that is newer than the latest available, migrate logs a warning but doesn't fail either, for example:
Schema xxx has a version (1.1.1) that is newer than the latest
available migration (1.0.1) !
Is there a way to prevent this behaviour? I would like to have options like failIfMigrationIsMissing and failIfSchemaIsNewer.
All of this would be useful to make sure nobody installs or starts an older version on top of a newer database, e.g. downgrades. Actually I thought this would be the default behaviour, or do I miss something here?
Here's a scheme that works with flyway 4.0.3. You can check all the migrations if your versioning is more complex.
flyway.migrate();
MigrationInfoService migrationInfoService = flyway.info();
MigrationInfo[] applied = migrationInfoService.applied();
MigrationInfo last = applied[applied.length - 1];
if (MigrationState.FUTURE_SUCCESS.equals(last.getState())) {
throw new Exception("Database downgrade detected.");
}

Best strategy for upgrading application from Symfony 2.0 to Symfony 2.4?

I need to upgrade an existing rather large application from Symfony 2.0.15 to Symfony 2.4.x (replace with current version).
I'm not quite sure what would be the best strategy to do so. Migration critical features like forms or esi are used, of course :)
Upgrade "step by step" from one major version to another (2.1, 2.2, 2.3, 2.4)
Upgrade directly from 2.0.x to 2.4
Do you have any tips / experience to share ? Would appreciate it :)
Thanks,
Stephan
Each new version comes with an update UPGRADE-2.x.md file containing all intructions to convert your application from the immediately previous version.
I had to do that on my project as well, and I found the step-by-step method more natural and easier to manage. Fact is, there is no file such file as UPGRADE-2.0-to-2.4.md that would help you out for a direct conversion to 2.4.
I shall first recommend to make sure that none of your code uses obsolete functionnalities of Symfony 2.0 (not sure if there are deprecated parts in this version, though), because these can be removed in ulterior versions and will not be included in the UPGRADE file.
If you have done indeep modifications of the core Symfony code, you may find that some undocumented modifications are needed. For instance, there is a custom error handler in my project, extending the Symfony error handler. Well, although it was not documented in the UPGRADE file, the signature of ErrorHandler::handle() was modified and needed to be updated in my custom handler.
Similarly, I had to modify some namespaces because files had been moved in the framework code.
The conversion is still ongoing and I'm currently experiencing a weird error I'm trying to get rid of: The 'request' scope on services registered on custom events generates errors in the logs.

Resources