github.com/criteo/command-launcher@v0.0.0-20230407142452-fb616f546e98/release-notes.yaml (about)

     1  1.10.1:
     2    version: 1.10.1
     3    releaseNotes: |
     4      * 🐛 Fix regression: flags aren't passed to `validArgsCmd` when `checkFlags` is true.
     5    startPartition: 0
     6    endPartition: 9
     7  
     8  1.10.0:
     9    version: 1.10.0
    10    releaseNotes: |
    11      * ✨ Support auto-complete for flag values. Introduced two new flag properties `values` for static flag values and `valuesCmd` for dynamic flag values.
    12      * ✨ New `--list` option in the built-in rename command to list all command alias
    13      * 🐛 Fix wrong exit code reported in metrics.
    14    startPartition: 0
    15    endPartition: 9
    16  
    17  1.9.0:
    18    version: 1.9.0
    19    releaseNotes: |
    20      * ✨New package level system command `__setup__`. This system hook can be triggered once a new package version is installed from the remote registry. Or manually triggered from the built-in `package setup` command.
    21        * New configuration `enable_package_setup_hook` to toggle the new package setup hook during package installation
    22        * New built-in command `package setup` to manually trigger the package setup system hook
    23      * ✨New ways to define command flags. The newly introduced `flags` command property allows you to define the command flags with an object instead of the formatted string separated by `\t`. The `requiredFlags` property can be stilled be used to define flags, but it is marked as deprecated.
    24      * ✨New `exclusiveFlags` command property to ensure that only one property can be specified among a set of flags. This property must be used together with the `checkFlags` property to delegate the command launcher for argument parsing
    25      * ✨New `groupFlags` command property to ensure that all of them must be specified from the command line among a set of flags. This property must be used together with the `checkFlags` property to delegate the command launcher for argument parsing
    26    startPartition: 0
    27    endPartition: 9
    28  
    29  1.8.1:
    30    version: 1.8.1
    31    releaseNotes: |
    32      * 🐛 Fix DNS resolve issue on darwin amd64 under VPN. For Mac intel user, please download this version.
    33    startPartition: 0
    34    endPartition: 9
    35  
    36  1.8.0:
    37    version: 1.8.0
    38    releaseNotes: |
    39      * ✨Support multiple remote registry. From version 1.8.0, you are able to define multiple remote registries. Command launcher synchronizes the commands with all these remote registries at the end of each command execution. This is useful for several scenarios: for example, supporting internal or experimental commands, different teams target their commands to different group of audience.
    40      * ✨Built-in command `remote` command to mange multiple remote registries.
    41          * `remote list`: list all remote registries
    42          * `remote delete`: delete specific remote registry
    43          * `remote add`: add a new remote registry
    44      * ✨Built-in package management related commands are regrouped into `package` command:
    45          * `package list`: list installed local and dropin packages and remote packages. It also provides the possibility to show the installed commands
    46          * `package install`: install dropin packages from git repository or remote/local zip file
    47          * `package delete`: delete installed dropin packages
    48      * ✨New command name conflict resolution system: Each command now has a unique full name in form of [regitry]@[package]@[group]@[name]. When two commands register to the same group and name. One of them will be registered with its full group name.
    49  
    50          For example, two command `hello@greeting@pkg1@repo1` and `hello@greeting@pkg2@repo2`. These two commands have the same group name and command name (greeting hello). The first one will be registered as `cola greeting hello`, the second one will be registered as command `cola greeting@@pkg2@repo2 hello`. Note: `greeting@@pkg2@repo2` is the full name of the group command `greeting` defined in pkg2 and repo2.
    51      * ✨New built-in `rename` command. Now it is possible to rename both group and sub command to a different name.
    52      * ✨New resource `PACKAGE_DIR`. Each command now can access its package's absolute path through the `PACKAGE_DIR` resource. This resource doesn't require user consent.
    53  
    54      * 🔥Metrics system hook interface change. Now the metrics system hook accepts two new parameters: repo/registry name, package name. The full list of parameters:
    55          1. repository/registry name (see remote command)
    56          2. package name
    57          3. command group name, or “default” if no group
    58          4. command name
    59          5. user partition
    60          6. command exit code
    61          7. command execution duration in nano seconds
    62          8. error message or “nil” if no error
    63          9. command start timestamp in seconds
    64    startPartition: 0
    65    endPartition: 9
    66  
    67  1.7.0:
    68    version: 1.7.0
    69    releaseNotes: |
    70      * ✨New mechanism to access resources with user consent, resources required user consent:
    71          * username
    72          * password
    73          * login_token
    74          * log_level
    75      * ✨New system package with system command. Now supports two types of system command:
    76          * __login__: extends the built-in login command
    77          * __metrics__: extends the built-in metrics
    78      * ✨New package management with new built-in commands:
    79          * list: list installed local and dropin packages and remote packages. It also provides the possibility to show the installed commands
    80          * install: install dropin packages from git repository or remote/local zip file
    81          * delete: delete installed dropin packages
    82      * ✨New URL convention for command launcher self update. You can now use the Github release file as the latest version
    83      * ✨New configurations:
    84          * enable_user_consent
    85          * user_consent_life
    86          * system_package
    87          * system_package_public_key
    88          * system_package_public_key_file
    89          * verify_package_checksum
    90          * verify_package_signature
    91      * 🔒️Enable package checksum verification
    92      * ♻️Refactor local repository management and remote management
    93      * 🔨Default local build version now takes the current branch name: [branch name]-dev. See build.sh
    94    startPartition: 0
    95    endPartition: 9
    96  
    97  1.6.0:
    98    version: 1.6.0
    99    releaseNotes: |
   100      - Add the PackageDir context variable to reference the package's directory, same as the Cache and Root context variables. Cache and Root variables are deprecated.
   101      - Extend the format of the flag definition. Now it is possible to add bool type flags: [name] \t [shorthand] \t [description] \t [type] \t [default].
   102      - New command definition field in manifest, checkFlags. The default value is false, when it is true, before executing the command, the arguments will be parsed, and the parsed flags and args will be passed to the command in form of an environment variable: [APP_NAME]_FLAG_[FLAG_LONG_NAME] and [APP_NAME]_ARG_[ARG_INDEX_STARTS_FROM_1]
   103      - New command definition field in the manifest: argsUsage to customize the one-line help message. This field will take effect when checkFlags=true
   104      - New command definition field in the manifest: examples to customize the examples in the help message. This field will take effect when checkFlags=true
   105    startPartition: 0
   106    endPartition: 9