Skip to content

Latest commit

 

History

History
776 lines (519 loc) · 26.3 KB

changelog.adoc

File metadata and controls

776 lines (519 loc) · 26.3 KB

CLI Changelog

3.13.0 (2023-04-21)

Enhancements

  • Add --include option to globus transfer allowing ordered overrides of --exclude rules.

Breaking Changes

  • The --exclude option for globus transfer now only applies to files to better support excluding files within a directory structure

3.12.0 (2023-03-15)

Bugfixes:

  • Fix the handling of multiple -Q parameters with the same name for the globus api commands. Such usages were only sending the last value used, but now correctly send all parameters.

  • Certain combinations of options for globus task list could, generate invalid or useless filters. These behaviors are fixed.

  • Strip single quotes from scope strings passed to globus session consent, fixing the behavior of this command when run from Windows Command Prompt

Enhancements:

  • Add globus timer create transfer as a new command for creating new timers

    • The command prompts for login if data_access consents are detected as a requirement

  • globus session consent now supports a --timer-data-access flag, specifically to help support timer creation

  • The CLI now has stronger requirements around the scope used for the Timer service, and will treat past Timer tokens as invalid. Users running globus timer commands will find that they must login again.

  • Add globus timer delete as a command for deleting timers

  • When showing login requirements for known Globus services, the error message instructing users to run globus login will use recognizable nice names for those services, e.g. Globus Timers

Other:

  • The CLI’s handling of changes to its scope requirements over time has been improved. After CLI updates which change the required scopes, users will be prompted to login again, ensuring that the most up-to-date set of scopes are in use.

    • Changes to the CLI which adjust scopes, and therefore force this re-login behavior, will note this in the changelog.

    • This change, in itself, will not force re-login for any users.

  • globus-cli now uses packaging for version parsing. This improves compatibility with python 3.12

3.11.0 (2023-02-08)

Enhancements:

  • Add --policy option to globus session update which takes a comma delimited list of Globus Auth policy IDs and starts an auth flow to meet the policies.

  • Whenever an error is hit due to not meeting a Globus Auth policy, helptext is displayed with a globus session update command to resolve the error.

  • Support --user-message and --user-message-link for globus endpoint update and globus gcp create mapped

Other:

  • Improve the uniformity of endpoint and collection option parsing.

    • The --sharing-restrict-paths option to globus collection update now checks for invalid types (non-dict, non-null data)

    • globus endpoint update now treats the empty string as null for the following options: --contact-email, --contact-info, --default-directory, --department, --description, --info-link, and --organization. This behavior matches globus collection update. --no-default-directory is still supported, but is equivalent to --default-directory ""

    • globus gcp create guest and globus gcp create mapped now accept --verify [force|disable|default] for verification options. This replaces --disable-verify/--no-disable-verify, which is now deprecated

3.10.1 (2022-12-06)

Bugfixes:

  • Fix a typo in the globus endpoint permission update command

  • Fixed an AttributeError preventing text output of globus session show

3.10.0 (2022-12-05)

Bugfixes:

  • Fix a bug which caused globus list-commands not to show proper information

Enhancements:

  • Add the globus api flows command for direct interactions with the Globus Flows service

  • Added commands for interacting with GCSv5 user credentials

    • globus endpoint user-credential list

    • globus endpoint user-credential show

    • globus endpoint user-credential delete

    • globus endpoint user-credential create

      • globus endpoint user-credential create from-json

      • globus endpoint user-credential create posix

      • globus endpoint user-credential create s3

  • Added globus endpoint storage-gateway list

  • Add globus flows delete to delete a flow by ID

  • Add a new command, globus flows show which displays information about a single flow

  • Add globus flows start as a new command for starting a flow.

  • Add globus login --flow <flow_id> to trigger a login that asks for consent to start a flow.

  • globus ls has improved behavior when the --filter and --recursive options are used in combination

    • directory names are not matched against the filter, allowing the operation to traverse directories regardless of their names

    • the --filter is still applied to filenames in all directories traversed by the ls operation

    • directory names can be filtered out of the text output by eliminating lines which end in /

    • the behaviors of globus ls commands with --recursive or --filter, but not both, are unchanged

Other:

  • globus endpoint create is now hidden and displays a deprecation warning when used

  • Support Python 3.11.

  • Endpointish now uses entity_type for determining EntityType

3.9.0 (2022-10-13)

Bugfixes:

  • Fix a bug in text output for globus transfer --dry-run which crashed with a KeyError if --external-checksum was omitted

Enhancements:

  • A new command, globus flows list, allows users to list Flow objects in Globus Flows

  • New commands for creating Globus Connect Personal endpoints and collections

    • globus gcp create mapped creates a GCP Mapped Collection

    • globus gcp create guest creates a GCP Guest Collection

In GCP, the Mapped Collection and Endpoint are synonymous. Therefore, globus gcp create mapped replaces the functionality previously only available via globus endpoint create --personal.

Note
Neither of the globus gcp create commands automatically installs Globus Connect Personal on the local machine. These commands complement and interact with an existing installation.

Other:

  • globus endpoint create is now documented as deprecated. Users are encouraged to use globus gcp create for Globus Connect Personal, and the Globus Connect Server CLI for Globus Connect Server

  • globus endpoint create no longer accepts --no-default-directory as an option. It previously did nothing when used.

3.8.0 (2022-08-31)

Enhancements:

  • The globus CLI is now faster to start in many cases. Tab completions are most significantly improved, but other commands may demonstrate an improvement as well

  • Add the globus api timer command for direct interactions with the Globus Timer service

  • Order globus task list by descending request time to prioritise newer tasks in default output

3.7.0 (2022-08-05)

Bugfixes:

  • Fix globus session update help text not handling missing domain errors from Transfer

Enhancements:

  • globus group member invite now supports provisioning new identities in Globus Auth in order to support inviting new users who have not created Globus accounts. Use --provision-identity to indicate that new users should be auto-provisioned in Globus Auth

  • Add new globus timer commands for interacting with the Timer service:

    • globus timer list to list jobs

    • globus timer show to show a particular job

  • Add globus search index delete command

3.6.0 (2022-06-08)

Enhancements:

  • Commands which have required arguments will print their helptext if invoked with no arguments. They still exit(2) (usage error). This only applies to the case of a command with required arguments being called with no arguments at all.

Bugfixes:

  • Fix behavior of globus api to respect formatting options. --jmespath can be used on results, and -Fjson will pretty-print JSON responses if the original response body is compact JSON

Other:

  • Increase the maximum width of help output to 80% of the terminal size.

  • Remove support for python3.6 . Users on python3.6 should still be able to install globus-cli but will not be able to update to the latest version.

3.5.0 (2022-05-05)

Bugfixes:

  • globus endpoint activate --web now correctly respects the environment when it is set

Enhancements:

  • Add a new command, globus api, which can be used to make requests to curl-like requests to Globus services using the credentials from a globus-cli login

  • Add commands for interacting with individual documents in Globus Search: globus search subject show and globus search subject delete

3.4.0 (2022-03-11)

Enhancements:

  • New commands for interacting with Globus Groups

    • globus groups set-policies to manage a group’s policies

    • globus group member list to list members of a group

    • globus group member invite to invite a member to join a group

    • globus group member approve to approve a member who has requested to join a group

    • globus group member reject to reject a member who has requested to join a group

    • globus group invite accept to accept an invitation to a group

    • globus group invite decline to decline an invitation to a group

    • globus group join to join a group, with an option --request for groups which require approval for members

    • globus group leave to leave a group

  • globus group member add now supports the --role argument for adding members with the manager and admin roles

  • A new command for interacting with Globus Search, globus search delete-by-query to bulk-delete data from a Globus Search index

Bugfixes:

  • Fix an issue which caused certain commands like globus mkdir to retry incorrectly when failing, leading to unnecessary delays on failure

3.3.0 (2022-02-18)

Enhancements:

  • Add Globus Search commands for managing index roles. These are globus search index role list, globus search index role create, and globus search index role delete

  • Added new commands for manipulating groups

    • globus group create creates a new group

    • globus group show shows group information

    • globus group update updates group name or description

    • globus group delete deletes a group

Bugfixes:

  • Update the version of globus-sdk used, fixing an issue which caused globus task show --skipped-errors and globus task show --successful-transfers to only show partial output

3.2.0 (2022-01-13)

Enhancements:

  • Add a globus group member add command to add users to a group

  • Add a globus group member remove command to remove a user from a group

  • Add a new globus search index show command which displays an index by ID

  • Add a new globus search index list command which lists indices for which the current user has permissions

  • Add a new globus search index create command which creates a new Globus Search index. Note that because the index creation API is in public beta, the command is also labeled as "beta"

  • Add docs on GLOBUS_PROFILE setting to help for login and logout commands

  • Add support for client credentials for authentication in the Globus CLI by setting GLOBUS_CLI_CLIENT_ID and GLOBUS_CLI_CLIENT_SECRET environment variables

    • Both variables must be set to enable this behavior

    • Tokens generated with client credentials are cached in the current user’s home directory, but isolated from any user credentials

    • With client credentials, globus login is invalid, but globus logout can be used to revoke any cached tokens

    • Attempting to run globus login while using client credentials will show an appropriate error message

  • A new command, globus cli-profile-list can be used to list values for GLOBUS_PROFILE and GLOBUS_CLI_CLIENT_ID ("client profiles") which have been used. By default, the listing is restricted to the current environment. A hidden option (--all) can be used to list all environments

3.1.4 (2021-11-09)

Bugfixes:

  • globus session consent was reducing the scopes of the Auth token provided by login, resulting in errors on logout and whoami

3.1.3 (2021-11-05)

Enhancements:

  • The --help text for globus endpoint create now clarifies the meaning of --personal.

  • Errors for use of mutually exclusive options to globus endpoint create have been improved.

Bugfixes:

  • Fix an error when globus ls --recursive is used on an empty directory, or filtered such that a recursive listing has no results

  • The help text printed by --batch when stdin is a tty has been removed. This text explained CLI v2.x behavior, and is not accurate for CLI v3.x

  • Fix a bug in globus session consent in which an id_token was expected as part of the token data, but the openid scope was not provided to the login flow

  • Fix a crash that occurs when running globus task event-list {task-id}

3.1.2 (2021-10-13)

Bugfixes:

  • Fix a typo in the word "latitude" for --location arguments.

  • Fix the handling of the legacy-line of virtualenv, versions below 20.0.0. When the globus-cli was installed under these versions of virtualenv, all commands would fail at import-time due to an API difference between stdlib site module and the virtualenv-generated site

3.1.1 (2021-10-12)

Bugfixes:

  • The behavior of globus update when operating under a pipx install has been fixed, so that --user will not be passed to the pip invocation

  • Fix TypeError in globus endpoint activate resulting from the v3 upgrade

Other:

  • Cleanup internal and undocumented behaviors of globus update

3.1.0 (2021-10-08)

Enhancements:

  • Add the new globus search command group for interacting with the Globus Search service. globus search commands may prompt users to login again if they have not previously used a globus search command.

  • Add the globus search query command for executing searches on Globus Search indices.

  • Add the globus search ingest command for ingesting data into a Globus Search index. You must have writer permissions on the index in order to use this operation.

  • Add the globus search task show and globus search task list commands. To use these commands, you must have writer permissions on the index whose tasks are being displayed.

Bugfixes:

  • Fix TypeError when running globus endpoint set-subscription-id

3.0.2 (2021-10-06)

Bugfixes:

  • globus task cancel --all no longer throws a TypeError.

3.0.1 (2021-09-29)

Bugfixes:

  • Update dependency specification to avoid an issue in which old versions of cryptography were not updated when an existing installation was updated

3.0.0 (2021-09-29)

This is a major release of the CLI and has several backwards incompatible changes. See the Backwards Incompatible Changes list below.

Bugfixes:

  • Fix a bug in which some error outputs could be sent to stdout

Enhancements:

  • globus endpoint show now includes the description field. Formatting of the description may wrap

  • globus session update now supports domains for session_required_single_domain requirements

  • globus-cli now uses more advanced token storage, and does not use ~/.globus.cfg. A globus login with this version will invalidate any CLI tokens found in ~/.globus.cfg

    • Note: this version of the CLI will not modify the ~/.globus.cfg file, only invalidate CLI version 2 tokens. After the upgrade, you may remove this file if you are not using it for other purposes.

  • globus-cli now supports use of the GLOBUS_PROFILE environment variable, which lets users name sets of credentials and switch between accounts

  • globus-cli commands can now direct the user to login to a specific Globus Connect Server v5 Endpoint. When the requirements for running a command are not met, a message with the correct login command will be shown.

  • A new environment variable, GLOBUS_CLI_INTERACTIVE can be used to instruct the CLI to behave as though it is or is not in an interactive shell. Set GLOBUS_CLI_INTERACTIVE=0 to force non-interactive behavior, and GLOBUS_CLI_INTERACTIVE=1 to force interactive behavior

  • Add new collection-related commands for Mapped and Guest Collections

    • globus collection list

    • globus collection show

    • globus collection update

    • globus collection delete

  • globus endpoint …​ and globus collection …​ commands may exit with an error instructing the user to use a corresponding command when globus endpoint commands are used on collections or globus collection commands are used on non-collection endpoint types

  • Add new globus group list command for listing your group memberships

Backwards Incompatible Changes:

  • Remove the --version flag. Use globus version instead

  • globus endpoint server add now takes the server as a positional argument, not a required option

  • globus rename has changed to take the endpoint ID once and two separate paths, instead of two endpoint:path arguments which require the endpoint ID to match

  • Remove the globus config commands

  • globus transfer --batch and globus delete --batch now accept filenames to specify batches. To use stdin (as in v2), pass a single dash for the filename, as in --batch -

  • Two new exit statuses, in addition to 0, 1, and 2, are now used by the CLI to indicate specific error conditions

    • An exit(3) is used whenever the type of an object does not match the expectations of a command. For example, globus collection list on a Collection is incorrect — that command should be used on Endpoints

    • An exit(4) is used whenever the authentication or authorization requirements of a command are not met. For example, if your session does not satisfy the authentication_timeout for an HA endpoint.

2.1.0 (2021-06-23)

Enhancements:

  • globus transfer now supports an option, --exclude, which can be used to skip files matching a pattern or set of patterns when submitting a recursive directory transfer

2.0.0 (2021-02-02)

  • Drop support for python2

1.16.0 (2021-01-29)

Enhancements:

  • globus transfer now supports two new flags, --skip-source-errors and --fail-on-quota-errors, which allow you to better control error behaviors

  • globus task show --skipped-errors is a new flag which will show skipped transfer errors (for transfers which support them)

1.15.0 (2021-01-28)

Bugfixes:

  • The disable_verify option will no longer be set to False when left unspecified in globus endpoint update

Enhancements:

  • globus update now restricts updates to python2-compatible versions when running under python2

1.14.0 (2020-10-07)

Bugfixes:

  • Fix some help options not being correctly populated

Enhancements:

  • Add handling for ConsentRequired errors when interacting with newer versions of Globus Connect Server

Other:

  • Web documentation is now autogenerated as part of the release process

1.13.0 (2020-04-28)

Enhancements:

  • Add a new command, globus endpoint set-subscription-id, which allows Subscription Managers to set the subscription on Endpoints where they may not have administrative privileges

1.12.0 (2020-03-12)

Bugfixes:

  • If a new refresh_token is issued when a token refreshes, it will be stored correctly.

  • Paths being joined for --batch mode for globus transfer and globus delete on Windows were joined incorrectly with the platform path separator (\). They are now joined correctly with /

Enhancements:

  • Error and hint outputs are styled using colors when the output is being written to a terminal.

    • Supports macOS and Linux by default using ANSI colors.

    • You can install colorama (pip install colorama) in the same environment as the CLI to get color support on Windows.

  • Endpoints whose activation requirements do not include any myproxy requirements now give an informative error message if myproxy activation is attempted

  • Add support for --external-checksum and --checksum-algorithm in globus transfer commands

Other:

  • Internally, use the globus_sdk.IdentityMap construct, not a custom mapping type.

  • Remove official support for python3.4, add support for python3.8

  • Improvements to help text

1.11.0 (2019-08-13)

Enhancements:

  • Add --limit <count> option to globus endpoint search command.

Other:

  • Upgrade to click version 7.

1.10.1 (2019-03-19)

  • Rename globus session boost command to globus session update.

1.10.0 (2019-03-11)

Enhancements:

  • Add --timeout-exit-code option to override the default exit code (1) for commands that wait on tasks. For example, globus task wait <task_id> --timeout 60 --timeout-exit-code 0.

1.9.1 (2019-02-26)

  • Minor internal improvements

1.9.0 (2018-11-07)

Enhancements:

  • GCP connection/paused status via the endpoint resource (440)

  • Update WebApp links (438)

  • Minor internal improvements

1.8.0 (2018-08-29)

Enhancements:

  • Add support for using high assurance collections (434)

1.7.0 (2018-07-24)

Enhancements:

  • Add the --no-default-directory flag to globus endpoint create and globus endpoint update which unsets the default directory setting (428)

1.6.3 (2018-07-16)

Enhancements:

  • Verbose output option for version command (420)

  • Lists of roles and permissions are now faster (424)

1.6.2 (2018-06-06)

Bugfixes:

  • Fix handling of Groups in globus endpoint role list (417)

1.6.1 (2018-05-29)

Enhancements:

  • Minor internal improvements

1.6.0 (2018-05-24)

Enhancements:

  • Add the globus whoami --linked-identities flag to get all of your linked identities (295)

  • Add the --format UNIX flag to produce output suitable for line-oriented processing with typical unix tools (404)

  • Documentation and minor internal improvements

Bugfixes:

  • Fix globus bookmark list rendering of deleted endpoints (406)

1.5.0 (2018-04-04)

Enhancements:

  • Support endpoint server deletion by hostname or URL (389)

  • Support --myproxy-lifetime for endpoint activation (393)

  • The globus update command now handles pip install --user installations of the CLI (392)

  • Add globus rm command (399)

1.4.0 (2018-02-27)

Enhancements:

  • Add --notify option to globus transfer and globus delete to turn notifications on or off (383)

  • Add --filter option to globus ls (384)

  • Add globus endpoint local-id command to get the endpoint ID of a local Globus Connect Personal installation (382)

  • Add --notify-email and --notify-message options to globus endpoint permission create (381)

  • globus delete will now prompt when the last character is a wildcard * (interactive only) (380)

    • globus delete --star-silent or globus delete --unsafe can be used to skip the prompt

  • Minor documentation improvements

Bugfixes:

  • Fix error rendering with --format json (377)

1.3.0 (2018-02-15)

Enhancements:

  • Add --skip-activation-check option for submitting tasks regardless of the activation status of an endpoint (367)

  • Improve task event-details output formatting (373)

Other:

  • Update Globus SDK to v1.5.0

1.2.3 (2017-12-01)

Enhancements:

  • Add support for GLOBUS_SDK_ENVIRONMENT="preview"

1.2.2 (2017-11-20)

Enhancements:

  • Better errors when installation onto python2.6 is attempted (362)

  • Improve validation of Endpoint --network-use (361)

Bugfixes:

  • Generate delegate proxy certs using UTC, not local time (360)

1.2.1 (2017-11-01)

Bugfixes:

  • Improve handling of non-ascii user names (354)

1.2.0 (2017-07-17)

Enhancements:

  • Allow enabling or disabling the "managed" state of an endpoint via the --managed, --no-managed, and --subscription-id options to the globus endpoint update command.

1.1.2 (2017-06-15)

Enhancements:

  • Improved autoactivation error messages. (296)

Bugfixes:

  • Handle "control-c" interrupts while doing the browser based login flow. (320)

1.1.1 (2017-06-13)

Enhancements:

  • Use the cryptography package instead of M2Crypto for the delegate-proxy feature.

    • Note: If you are using the delegate-proxy feature and previously installed the CLI along with M2Crypto, you will need to activate the CLI’s virtualenv and install the cryptography dependency:

source $HOME/.globus-cli-virtualenv/bin/activate
pip install globus-cli[delegate-proxy] --upgrade
deactivate

1.1.0 (2017-05-16)

Enhancements:

  • Add Delegate Proxy Activation to 'globus endpoint activate' (requires M2Crypto for options to be displayed) (306)

  • Allow 'globus bookmark rename' and 'globus bookmark delete' to accept either a bookmark name or id. (292)

  • Validate tokens upon login. (286)

  • Raise more helpful error messages on missing / invalid tokens. (299)

  • Display additional helptext with 'globus login'. (289)

  • Display additional fields with 'globus task show'. (301)

  • Make conflicting filters mutually exclusive in 'globus task event-list' (294)

Bugfixes:

  • Fix broken links in the docs. (305)

  • Update Six dependency to >=1.10.0 to meet SDK requirements. (285)

1.0.0.0 (2017-04-10)

  • Initial release.