1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
.. _extended-default:
Extended default
================
Configuration
-------------
- introduce :mconfig:`extended_default` option name
- off by default in v4 as previously soft/1 was an error
- on by default in v5, option could even disappear
- set as a separate option than *advanced_version_spec*
- as it affects also basic soft/vers version specification
- seem easier to understand for user if concepts are distinguished
Specification
-------------
- Take partial version identifier and returns matches
- for soft/10.1.2.4 soft/10.1.2.3 soft/10.1.1
- query soft/10 returns highest among 3
- query soft/10.1 returns highest among 3
- query soft/1 returns nothing
- query soft/10.1.2 returns highest among soft/10.1.2.4 soft/10.1.2.3
- In situation where soft/1.1(default) soft/1.2 soft/2.1 soft/2.2
- query soft/1 returns soft/1.1
- query soft/2 returns soft/2.2
- Character considered as version number separator: ``.``
- list: ``.`` and ``-``
- ``-`` was also considered initially, but cannot determine in all case the highest version specified after this character (may find a hash name, strings like *rc*, *alpha*, *beta*, etc)
- not possible with ``+`` as it is used by variant specification
- Does not apply to the root part of module name
- e.g. *foo.2*
- If :mconfig:`implicit_default` is disabled
- it makes ``extended_default`` inoperative if queried version does not include a defined default
- even if only one modulefile matches query
- with situation described above query soft/1 returns soft/1.1
- but query soft/2 returns an error as no default is found among version 2 modulefiles
- Contexts where it could be used
- :ref:`module_version_specification_to_return_all_matching_modules`
- on specification that are processed as a wild search, ``extended_default`` has no impact
- as a wildcard character ``*`` is appended to specification
- affects ``avail``/``spider`` sub-commands
- :ref:`module_version_specification_to_select_one_module`
- :ref:`module_version_specification_to_check_compatibility`
.. vim:set tabstop=2 shiftwidth=2 expandtab autoindent:
|