Uploaded image for project: 'Alfresco'
  1. Alfresco
  2. ALF-21842

Document handling of module versions with literals after ACE-2269

    Details

    • Type: Documentation
    • Status: New (View Workflow)
    • Priority: Unprioritized
    • Resolution: Unresolved
    • Affects Version/s: Community Edition 201605 GA, Community Edition 201612 GA
    • Fix Version/s: None
    • Component/s: Module Management
    • Security Level: external (External user)
    • Labels:
      None
    • Triage:
      ACE

      Description

      ACE-2269 adds support for using literals in module / AMP version numbers. This significantly changes some aspects of how versions need to be used for developing non-trivial modules. There is currently no documentation I could find that goes into details, and in fact http://docs.alfresco.com/community/concepts/dev-extensions-modules-module-properties.html explicitly states that

      The version number must be made up of numeric values separated by dots. For example '2.1.56' is a valid version number, '2.3.4a' is not.

      which is no longer correct.

      Since the version of a module is an important criterion for handling e.g. the application / execution of configured ModuleComponent instances for a module to bootstrap or patch objects in the system, the change has significant impact on developers and must be document. Some of the implicit behaviours I would even classify as a bug but since there is no documentation (even in ACE-2269) it is hard to judge.

      One example: I have a module X under development with version 1.0-SNAPSHOT (Maven numbering scheme) that defines a module component X-A with "appliesFromVersion" as 1.0. Expectation is that during local developer testing, the X-A is being executed when the Alfresco Repository starts up - but it is not. Only when using "appliesFromVersion" defined as 1.0-SNAPSHOT, 1.SNAPSHOT or 0.9 does it start - using 1 or 1.0 will not work.

      Looking at the implementation, ACE-2269 also adds semantic evaluation and ordering of literals, e.g. "alpha", "beta", "milestone", "rc", "ga"/"final" and "sp" - while other literals are treated in lexical order as "larger than" the base version.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                repositoryteam Repository Team
                Reporter:
                afaust Axel Faust
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Date of First Response: