diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 00000000..466e9d4d --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,2 @@ +# Team Hermes are the owners of all files in this repository +* @ScilifelabDataCentre/teamhermes diff --git a/.github/workflows/pytest-cli.yml b/.github/workflows/pytest-cli.yml index f7fce4aa..9d08f803 100644 --- a/.github/workflows/pytest-cli.yml +++ b/.github/workflows/pytest-cli.yml @@ -17,10 +17,10 @@ jobs: steps: - uses: actions/checkout@v3 - - name: Set up Python 3.10.4 + - name: Set up Python 3.12 uses: actions/setup-python@v2 with: - python-version: 3.10.4 + python-version: 3.12 - name: Install dds_cli run: | diff --git a/.github/workflows/release-cli.yml b/.github/workflows/release-cli.yml index 5184afa2..54ac8fe4 100644 --- a/.github/workflows/release-cli.yml +++ b/.github/workflows/release-cli.yml @@ -18,10 +18,10 @@ jobs: - uses: actions/checkout@v3 name: Check out source-code repository - - name: Set up Python 3.9 + - name: Set up Python 3.12 uses: actions/setup-python@v4 with: - python-version: 3.9 + python-version: 3.12 - name: Install python dependencies run: | diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 49fb2a1a..4cf26fc9 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,6 +1,30 @@ Changelog ========== +.. _2.8.0: + +2.8.0 - 2024-09-24 +~~~~~~~~~~~~~~~~~~~ +- Deprecations: + - Drop support for python 3.7 +- New features: + - Added new dev instance url to cli config +- Dependencies: + - `prettytable` from `3.4.1` to `3.7.0` + - `prompt-toolkit` from `3.0.31` to `3.0.40` + - `pyYAML` from `6.0.1` to `6.0.2` + - `requests` from `2.32.0` to `2.32.2` + - `rich` from `12.5.1` to `13.6.0` + - `zstandard` from `0.19.0` to `0.22.0` + - `pyinstaller` version unpinned +- Dependencies (tests): + - `flask` from `2.0.2` to `2.2.5` + - `pyfakefs` from `4.5.5` to `5.3.0` +- Documentation: + - Improve documentation related to the testing instance. + - Clarify documentation about password management. + - Update documentation for python 3.12 + .. _2.7.1: 2.7.1 - 2024-06-27 diff --git a/SPRINTLOG.md b/SPRINTLOG.md index 4b6f5279..b3ca0baf 100644 --- a/SPRINTLOG.md +++ b/SPRINTLOG.md @@ -360,3 +360,26 @@ _Empty sprint_ # 2024-06-17 - 2024-06-28 - Update documentation to have correct executable name ([#702](https://github.com/ScilifelabDataCentre/dds_cli/pull/702)) + +# 2024-07-29 - 2024-08-09 + +- Improve docs related to the testing instance ([#705](https://github.com/ScilifelabDataCentre/dds_cli/pull/705)) + +# 2024-08-12 - 2024-08-23 + +_Empty sprint_ + +# 2024-08-26 - 2024-09-06 + +- Remove pinned version in requirements-dev.txt to resolve CVE ([#706](https://github.com/ScilifelabDataCentre/dds_cli/pull/706)) +- Add CODEOWNERS file in order to define Team Hermes as owners of all files in repository ([#707](https://github.com/ScilifelabDataCentre/dds_cli/pull/707)) +- Update documentation and related libraries for pyton 3.12, dropped support for python 3.7 ([#709](https://github.com/ScilifelabDataCentre/dds_cli/pull/709)) + +# 2024-09-09 - 2024-09-20 + +- Added new dev instance url to cli config ([#712](https://github.com/ScilifelabDataCentre/dds_cli/pull/712)) +- Clarify documentation about password managers ([#711](https://github.com/ScilifelabDataCentre/dds_cli/pull/711)) + +# 2024-09-24 - 2024-10-04 + +- New version and changelog([#714](https://github.com/ScilifelabDataCentre/dds_cli/pull/714)) diff --git a/WINDOWS.md b/WINDOWS.md index e584b0e9..af0ba4a1 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -1,6 +1,6 @@ # How to install the DDS CLI on Windows -## 1. Download and install Python > 3.7 +## 1. Download and install Python > 3.8 ### 1.1. Go to https://www.python.org/downloads/windows/ @@ -42,7 +42,7 @@ ![Powershell 1](docs/_static/windows/powershell_top-1.png) -> **Note:** Upon entering `python --version` the version of the previously installed Python distribution should be shown. If a version number < 3.7 is shown or Python is not found, please consult the :ref:`Troubleshooting` section below. +> **Note:** Upon entering `python --version` the version of the previously installed Python distribution should be shown. If a version number < 3.8 is shown or Python is not found, please consult the :ref:`Troubleshooting` section below. ### 2.3. Python ships with a helper program called **pip** to install additional packages. In the next step, this software should be upgraded to its current version. diff --git a/dds_cli/__init__.py b/dds_cli/__init__.py index 507fc690..d7cdafa5 100644 --- a/dds_cli/__init__.py +++ b/dds_cli/__init__.py @@ -61,12 +61,15 @@ class DDSEndpoint: BASE_ENDPOINT_DOCKER = "http://dds_backend:5000/api/v1" BASE_ENDPOINT_REMOTE = "https://delivery.scilifelab.se/api/v1" BASE_ENDPOINT_REMOTE_TEST = "https://testing.delivery.scilifelab.se/api/v1" + BASE_ENDPOINT_REMOTE_DEV = "https://dev.delivery.scilifelab.se/api/v1" if os.getenv("DDS_CLI_ENV") == "development": BASE_ENDPOINT = BASE_ENDPOINT_LOCAL elif os.getenv("DDS_CLI_ENV") == "docker-dev": BASE_ENDPOINT = BASE_ENDPOINT_DOCKER elif os.getenv("DDS_CLI_ENV") == "test-instance": BASE_ENDPOINT = BASE_ENDPOINT_REMOTE_TEST + elif os.getenv("DDS_CLI_ENV") == "dev-instance": + BASE_ENDPOINT = BASE_ENDPOINT_REMOTE_DEV else: BASE_ENDPOINT = BASE_ENDPOINT_REMOTE diff --git a/dds_cli/__main__.py b/dds_cli/__main__.py index fafc964d..63d01db3 100644 --- a/dds_cli/__main__.py +++ b/dds_cli/__main__.py @@ -1185,7 +1185,7 @@ def retract_project(click_ctx, project): required=False, is_flag=True, default=False, - help="Something has one wrong in the project.", + help="Something has gone wrong in the project.", ) @click.pass_obj def archive_project(click_ctx, project: str, abort: bool = False): diff --git a/dds_cli/version.py b/dds_cli/version.py index f5e94b47..9951ebcb 100644 --- a/dds_cli/version.py +++ b/dds_cli/version.py @@ -2,4 +2,4 @@ # Do not change bump the major version unless absolutely necessary - makes incompatible with API # If mid or minor version reaches 9, continue to 10, 11 etc. -__version__ = "2.7.1" +__version__ = "2.8.0" diff --git a/docs/index.rst b/docs/index.rst index 27bbf8f8..63871254 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -200,6 +200,7 @@ Command documentation and guide unit motd changelog + testing Indices and tables ================== diff --git a/docs/installation.rst b/docs/installation.rst index b7162ce4..65022a53 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -1,3 +1,5 @@ +.. _installation: + Installation guide #################### @@ -27,7 +29,7 @@ As mentioned above, you can install ``dds-cli`` from PyPI or via an executable. Install from **PyPI** ----------------------- -1. To perform these steps you need to have Python version 3.7 or higher installed. +1. To perform these steps you need to have Python version 3.8 or higher installed. * First check which Python version you have @@ -37,7 +39,7 @@ Install from **PyPI** .. image:: ../img/python3-version.svg - If this does not return ``Python 3.7.x`` or higher, you will need to `install Python `_. + If this does not return ``Python 3.8.x`` or higher, you will need to `install Python `_. .. warning:: diff --git a/docs/password.rst b/docs/password.rst index 11315a60..7ea1475d 100644 --- a/docs/password.rst +++ b/docs/password.rst @@ -6,16 +6,31 @@ Securing your password ================================= -Your Data Delivery System (DDS) password will be used to protect your data from any unauthorized parties. Choosing a secure password is therefore essential since the password's complexity will determine how easy it is to guess the password and thereby gain access to your data. Remembering a number of different passwords for different services can be difficult, and many people resort to using the same or similar password for all, or saving them in insecure ways where they are easily lost or/and read by others. +Your Data Delivery System (DDS) password will be used to protect your data from any +unauthorized parties. Choosing a secure password is therefore essential since the +password's complexity will determine how easy it is to guess the password and thereby +gain access to your data. Remembering a number of different passwords for different +services can be difficult, and many people resort to using the same or similar +password for all, or saving them in insecure ways where they are easily lost or/and +read by others. -Due to this, we highly recommend that you use a password manager to store your passwords. An example of this is `Bitwarden `_ which is also used by the SciLifeLab Data Centre team. +Due to this, we highly recommend that you use a password manager to store your passwords. +Some common password management services are `Bitwarden `_, +`LastPass `_, `1Password `_. How to use password managers, e.g. Bitwarden ============================================= -Using a password manager such as Bitwarden means that you need to keep track of a single password: The password you set for the password manager. The rest are stored within the password manager, allowing you to have different complex ones for each service you use. Many of these tools have mobile apps and plugins for different browsers, which simplifies password management significantly. +Using a password manager means that you need to keep track of a single password: +the password you set for the password manager. +All your other passwords are stored within the password manager, +allowing you to have different complex ones for each service you use. +Many of the password management services have mobile apps and plugins for different browsers, +which simplifies password management significantly. -The following is an example of how to start using Bitwarden. +Data Centre does not provide a password management service and we do not specifically recommend +any of the ones mentioned above. For illustrative purposes only, we provide +detailed instructions on how to begin using Bitwarden to demonstrate the concept: 1. Go to https://bitwarden.com/ 2. Create an account. At the time of writing, this is done by clicking ``Get Started`` in the top right corner. Fill in your information and click Create account at the bottom. Remember to choose a complex password, that you can remember. Do not share this password with anyone. diff --git a/docs/testing.rst b/docs/testing.rst index ef9eabac..b1c1acde 100644 --- a/docs/testing.rst +++ b/docs/testing.rst @@ -26,8 +26,8 @@ This page will give you information on: If your testing account has the role "Researcher", you can skip this section. -* First and foremost, **no sensitive data** is allowed to be delivered within this test instance. -* In order to create projects, which is required in order to test the upload / download functionality: +* First and foremost, this is not a production instance and will get releases without warning. **No sensitive data** is allowed to be delivered within this instance. +* In order to create projects, which is required in order to test the upload / download functionality: * You must have the account role "Unit Admin" or "Unit Personnel" * Your unit must have at least two "Unit Admins" * When listing your projects you will see your projects, and yours only. However, in order to not create a large number of separate storage locations for testing purposes, the actual storage location is shared by all units in the test setup. In the production instance, there's always a separate storage location per SciLifeLab unit. @@ -61,20 +61,17 @@ This page will give you information on: .. _test-install: -3. How to install the test version of the CLI +3. How to install the CLI ================================================ -You need to install the test version of the CLI from TestPyPi. Run this command in the terminal. - -.. code-block:: bash - - pip install -i https://test.pypi.org/simple/ dds-cli +Install the CLI as described in the :ref:`installation guide`. .. note:: - - This is **not** the same command as shown in the installation guide. - - You can install the released version of the CLI by following the installation guide, however you will not have the latest version or any of the features that are currently being implemented. There may also be unexpected errors since the released CLI and the DDS test instance may not be completely compatible. + Rarely, backwards incompatible releases will break the integration between the CLI and the API. As we + release the web application to test during the development process, there can be small windows of time + where the production CLI is not compatible with the DDS instance deployed to test. + + These windows of time will be kept as small as possible and we will notify test users. .. _test-config: diff --git a/img/dds-auth.svg b/img/dds-auth.svg index f3d10db3..07e96574 100644 --- a/img/dds-auth.svg +++ b/img/dds-auth.svg @@ -19,90 +19,90 @@ font-weight: 700; } - .terminal-1830499860-matrix { + .terminal-1237076098-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1830499860-title { + .terminal-1237076098-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1830499860-r1 { fill: #c5c8c6 } -.terminal-1830499860-r2 { fill: #868887;font-style: italic; } -.terminal-1830499860-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-1830499860-r4 { fill: #d0b344;font-weight: bold } -.terminal-1830499860-r5 { fill: #68a0b3;font-weight: bold } -.terminal-1830499860-r6 { fill: #868887 } -.terminal-1830499860-r7 { fill: #4e707b;font-weight: bold } + .terminal-1237076098-r1 { fill: #c5c8c6 } +.terminal-1237076098-r2 { fill: #868887;font-style: italic; } +.terminal-1237076098-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-1237076098-r4 { fill: #d0b344;font-weight: bold } +.terminal-1237076098-r5 { fill: #68a0b3;font-weight: bold } +.terminal-1237076098-r6 { fill: #868887 } +.terminal-1237076098-r7 { fill: #4e707b;font-weight: bold } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -114,30 +114,30 @@ - + - - $ dds auth -[..truncated..] - -Usage: dds auth [OPTIONSCOMMAND [ARGS]... - - Group command for creating and managing authenticated sessions (valid for 7 days).                  -Authenticate yourself once and run multiple commands within a certain amount of time without  -specifying your user credentials. If you do not authenticate yourself and start a new session, you -will need to provide your DDS username when running the other commands. -All subcommands are usable by all user roles. - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ ---help      Show this message and exit.                                                           -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ -╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ -info       Display information about ongoing authenticated session.                              -login      Start or renew an authenticated session.                                              -logout     End authenticated session.                                                            -twofactor  Group command for configuring and deactivating methods of two factor authentication.  -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds auth +[..truncated..] + +Usage: dds auth [OPTIONSCOMMAND [ARGS]... + + Group command for creating and managing authenticated sessions (valid for 7 days).                  +Authenticate yourself once and run multiple commands within a certain amount of time without  +specifying your user credentials. If you do not authenticate yourself and start a new session, you +will need to provide your DDS username when running the other commands. +All subcommands are usable by all user roles. + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +--help      Show this message and exit.                                                           +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ +info       Display information about ongoing authenticated session.                              +login      Start or renew an authenticated session.                                              +logout     End authenticated session.                                                            +twofactor  Group command for configuring and deactivating methods of two factor authentication.  +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/dds-data-get.svg b/img/dds-data-get.svg index 39e38e33..3566f41d 100644 --- a/img/dds-data-get.svg +++ b/img/dds-data-get.svg @@ -19,154 +19,154 @@ font-weight: 700; } - .terminal-2316791639-matrix { + .terminal-316438670-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2316791639-title { + .terminal-316438670-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2316791639-r1 { fill: #c5c8c6 } -.terminal-2316791639-r2 { fill: #868887;font-style: italic; } -.terminal-2316791639-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-2316791639-r4 { fill: #d0b344;font-weight: bold } -.terminal-2316791639-r5 { fill: #68a0b3;font-weight: bold } -.terminal-2316791639-r6 { fill: #868887 } -.terminal-2316791639-r7 { fill: #4e707b;font-weight: bold } -.terminal-2316791639-r8 { fill: #cc555a } -.terminal-2316791639-r9 { fill: #98a84b;font-weight: bold } -.terminal-2316791639-r10 { fill: #8a4346 } -.terminal-2316791639-r11 { fill: #8d7b39;font-weight: bold } + .terminal-316438670-r1 { fill: #c5c8c6 } +.terminal-316438670-r2 { fill: #868887;font-style: italic; } +.terminal-316438670-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-316438670-r4 { fill: #d0b344;font-weight: bold } +.terminal-316438670-r5 { fill: #68a0b3;font-weight: bold } +.terminal-316438670-r6 { fill: #868887 } +.terminal-316438670-r7 { fill: #4e707b;font-weight: bold } +.terminal-316438670-r8 { fill: #cc555a } +.terminal-316438670-r9 { fill: #98a84b;font-weight: bold } +.terminal-316438670-r10 { fill: #8a4346 } +.terminal-316438670-r11 { fill: #8d7b39;font-weight: bold } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -178,50 +178,50 @@ - + - - $ dds data get --help -[..truncated..] -Usage: dds data get [OPTIONS] - - Download data from a project.                                                                       -To download the data to a specific destination, use the `--destination` option. This cannot be an  -existing directory, for security reasons. This will be improved on in future releases. -Following to the download, the DDS decrypts the files, checks if the files are compressed and if  -so decompresses them. -NB! The current setup requires decryption and decompression to be performed locally. Make sure you -have enough space. This will be improved on in future releases. The default number of files to  -download, decrypt and decompress at a time is four. This can be changed by altering the  -`--num-threads` option, but whether or not it works depends on the machine you are running the CLI -on. -The token is valid for 7 days. Make sure your token is valid long enough for the delivery to  -finish. To avoid that a delivery fails because of an expired token, we recommend reauthenticating  -yourself before downloading data. - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ -*--project-pTEXT                      Project ID from which you're downloading   -                                                        data.                                      -[required]                                ---num-threads-ntINTEGER RANGE [1<=x<=32]  Number of parallel threads to perform the  -                                                        delivery                                   -[default: 4; 1<=x<=32]                    ---source-sTEXT                      Path to file or directory. Use the option  -                                                        multiple times to specify more than one    -                                                        source [multiple]                          ---source-path-file-spfPATH                      File containing path to files or           -                                                        directories.                               ---destination-dDIRECTORY                 Destination of downloaded data.            ---break-on-fail  Cancel download of all files if one        -                                                        fails.                                     ---silent  Turn off progress bar for each individual  -                                                        file. Summary bars still visible.          ---get-all-a  Download all project contents.             ---verify-checksum  Perform SHA-256 checksum verification      -                                                        after download (slower).                   ---help  Show this message and exit.                -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds data get --help +[..truncated..] +Usage: dds data get [OPTIONS] + + Download data from a project.                                                                       +To download the data to a specific destination, use the `--destination` option. This cannot be an  +existing directory, for security reasons. This will be improved on in future releases. +Following to the download, the DDS decrypts the files, checks if the files are compressed and if  +so decompresses them. +NB! The current setup requires decryption and decompression to be performed locally. Make sure you +have enough space. This will be improved on in future releases. The default number of files to  +download, decrypt and decompress at a time is four. This can be changed by altering the  +`--num-threads` option, but whether or not it works depends on the machine you are running the CLI +on. +The token is valid for 7 days. Make sure your token is valid long enough for the delivery to  +finish. To avoid that a delivery fails because of an expired token, we recommend reauthenticating  +yourself before downloading data. + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +*--project-pTEXT                      Project ID from which you're downloading   +                                                        data.                                      +[required]                                +--num-threads-ntINTEGER RANGE [1<=x<=32]  Number of parallel threads to perform the  +                                                        delivery                                   +[default: 4; 1<=x<=32]                    +--source-sTEXT                      Path to file or directory. Use the option  +                                                        multiple times to specify more than one    +                                                        source [multiple]                          +--source-path-file-spfPATH                      File containing path to files or           +                                                        directories.                               +--destination-dDIRECTORY                 Destination of downloaded data.            +--break-on-fail  Cancel download of all files if one        +                                                        fails.                                     +--silent  Turn off progress bar for each individual  +                                                        file. Summary bars still visible.          +--get-all-a  Download all project contents.             +--verify-checksum  Perform SHA-256 checksum verification      +                                                        after download (slower).                   +--help  Show this message and exit.                +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/dds-data-put.svg b/img/dds-data-put.svg index c040bd6e..3bf63e4f 100644 --- a/img/dds-data-put.svg +++ b/img/dds-data-put.svg @@ -19,157 +19,157 @@ font-weight: 700; } - .terminal-510542596-matrix { + .terminal-4032580667-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-510542596-title { + .terminal-4032580667-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-510542596-r1 { fill: #c5c8c6 } -.terminal-510542596-r2 { fill: #868887;font-style: italic; } -.terminal-510542596-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-510542596-r4 { fill: #d0b344;font-weight: bold } -.terminal-510542596-r5 { fill: #68a0b3;font-weight: bold } -.terminal-510542596-r6 { fill: #868887 } -.terminal-510542596-r7 { fill: #4e707b;font-weight: bold } -.terminal-510542596-r8 { fill: #98a84b;font-weight: bold } -.terminal-510542596-r9 { fill: #cc555a } -.terminal-510542596-r10 { fill: #8a4346 } -.terminal-510542596-r11 { fill: #8d7b39;font-weight: bold } + .terminal-4032580667-r1 { fill: #c5c8c6 } +.terminal-4032580667-r2 { fill: #868887;font-style: italic; } +.terminal-4032580667-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-4032580667-r4 { fill: #d0b344;font-weight: bold } +.terminal-4032580667-r5 { fill: #68a0b3;font-weight: bold } +.terminal-4032580667-r6 { fill: #868887 } +.terminal-4032580667-r7 { fill: #4e707b;font-weight: bold } +.terminal-4032580667-r8 { fill: #98a84b;font-weight: bold } +.terminal-4032580667-r9 { fill: #cc555a } +.terminal-4032580667-r10 { fill: #8a4346 } +.terminal-4032580667-r11 { fill: #8d7b39;font-weight: bold } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -181,51 +181,51 @@ - + - - $ dds data put --help -[..truncated..] -Usage: dds data put [OPTIONS] - - Upload data to a project.                                                                           -Limited to Unit Admins and Personnel. -To upload a file (with the same name) a second time, use the `--overwrite` flag. -Prior to the upload, the DDS checks if the files are compressed and if not compresses them,  -followed by encryption. After this the files are uploaded to the cloud. -NB! The current setup requires compression and encryption to be performed locally. Make sure you  -have enough space. This will be improved on in future releases. The default number of files to  -compress, encrypt and upload at a time is four. This can be changed by altering the  -`--num-threads` option, but whether or not it works depends on the machine you are running the CLI -on. -The token is valid for 7 days. Make sure your token is valid long enough for the delivery to  -finish. To avoid that a delivery fails because of an expired token, we recommend reauthenticating  -yourself before uploading data. - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ ---mount-dir-mdDIRECTORY                 New directory where the files will be      -                                                        mounted before upload and any error log    -                                                        files will be saved for a specific         -                                                        upload.                                    -*--project-pTEXT                      Project ID to which you're uploading       -                                                        data.                                      -[required]                                ---source-sPATH                      Path to file or directory (local). Use     -                                                        the option multiple times to specify more  -                                                        than one source [multiple]                 ---source-path-file-spfPATH                      File containing path to files or           -                                                        directories.                               ---num-threads-ntINTEGER RANGE [1<=x<=32]  Number of parallel threads to perform the  -                                                        delivery                                   -[default: 4; 1<=x<=32]                    ---destination-dTEXT                      Destination of uploaded data.              ---overwrite  Overwrite files if already uploaded.       ---break-on-fail  Cancel upload of all files if one fails.   ---silent  Turn off progress bar for each individual  -                                                        file. Summary bars still visible.          ---help  Show this message and exit.                -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds data put --help +[..truncated..] +Usage: dds data put [OPTIONS] + + Upload data to a project.                                                                           +Limited to Unit Admins and Personnel. +To upload a file (with the same name) a second time, use the `--overwrite` flag. +Prior to the upload, the DDS checks if the files are compressed and if not compresses them,  +followed by encryption. After this the files are uploaded to the cloud. +NB! The current setup requires compression and encryption to be performed locally. Make sure you  +have enough space. This will be improved on in future releases. The default number of files to  +compress, encrypt and upload at a time is four. This can be changed by altering the  +`--num-threads` option, but whether or not it works depends on the machine you are running the CLI +on. +The token is valid for 7 days. Make sure your token is valid long enough for the delivery to  +finish. To avoid that a delivery fails because of an expired token, we recommend reauthenticating  +yourself before uploading data. + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +--mount-dir-mdDIRECTORY                 New directory where the files will be      +                                                        mounted before upload and any error log    +                                                        files will be saved for a specific         +                                                        upload.                                    +*--project-pTEXT                      Project ID to which you're uploading       +                                                        data.                                      +[required]                                +--source-sPATH                      Path to file or directory (local). Use     +                                                        the option multiple times to specify more  +                                                        than one source [multiple]                 +--source-path-file-spfPATH                      File containing path to files or           +                                                        directories.                               +--num-threads-ntINTEGER RANGE [1<=x<=32]  Number of parallel threads to perform the  +                                                        delivery                                   +[default: 4; 1<=x<=32]                    +--destination-dTEXT                      Destination of uploaded data.              +--overwrite  Overwrite files if already uploaded.       +--break-on-fail  Cancel upload of all files if one fails.   +--silent  Turn off progress bar for each individual  +                                                        file. Summary bars still visible.          +--help  Show this message and exit.                +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/dds-data.svg b/img/dds-data.svg index 762899b1..9f3d522f 100644 --- a/img/dds-data.svg +++ b/img/dds-data.svg @@ -19,77 +19,77 @@ font-weight: 700; } - .terminal-1452403837-matrix { + .terminal-3575578347-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1452403837-title { + .terminal-3575578347-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1452403837-r1 { fill: #c5c8c6 } -.terminal-1452403837-r2 { fill: #868887;font-style: italic; } -.terminal-1452403837-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-1452403837-r4 { fill: #d0b344;font-weight: bold } -.terminal-1452403837-r5 { fill: #68a0b3;font-weight: bold } -.terminal-1452403837-r6 { fill: #868887 } + .terminal-3575578347-r1 { fill: #c5c8c6 } +.terminal-3575578347-r2 { fill: #868887;font-style: italic; } +.terminal-3575578347-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-3575578347-r4 { fill: #d0b344;font-weight: bold } +.terminal-3575578347-r5 { fill: #68a0b3;font-weight: bold } +.terminal-3575578347-r6 { fill: #868887 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -101,26 +101,26 @@ - + - - $ dds data -[..truncated..] - -Usage: dds data [OPTIONSCOMMAND [ARGS]... - - Group command for uploading, downloading and managing project data.                                 - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ ---help      Show this message and exit.                                                           -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ -╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ -get   Download data from a project.                                                              -ls    List project contents.                                                                     -put   Upload data to a project.                                                                  -rm    [Unit Admins and Personnel only] Delete data within a specific project.                    -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds data +[..truncated..] + +Usage: dds data [OPTIONSCOMMAND [ARGS]... + + Group command for uploading, downloading and managing project data.                                 + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +--help      Show this message and exit.                                                           +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ +get   Download data from a project.                                                              +ls    List project contents.                                                                     +put   Upload data to a project.                                                                  +rm    [Unit Admins and Personnel only] Delete data within a specific project.                    +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/dds-help-1.svg b/img/dds-help-1.svg index 7b0b6614..c2dafb98 100644 --- a/img/dds-help-1.svg +++ b/img/dds-help-1.svg @@ -19,140 +19,140 @@ font-weight: 700; } - .terminal-4202155958-matrix { + .terminal-3099583012-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4202155958-title { + .terminal-3099583012-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4202155958-r1 { fill: #c5c8c6 } -.terminal-4202155958-r2 { fill: #868887;font-style: italic; } -.terminal-4202155958-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-4202155958-r4 { fill: #d0b344;font-weight: bold } -.terminal-4202155958-r5 { fill: #68a0b3;font-weight: bold } -.terminal-4202155958-r6 { fill: #868887 } -.terminal-4202155958-r7 { fill: #4e707b;font-weight: bold } -.terminal-4202155958-r8 { fill: #98a84b;font-weight: bold } -.terminal-4202155958-r9 { fill: #8d7b39;font-weight: bold } + .terminal-3099583012-r1 { fill: #c5c8c6 } +.terminal-3099583012-r2 { fill: #868887;font-style: italic; } +.terminal-3099583012-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-3099583012-r4 { fill: #d0b344;font-weight: bold } +.terminal-3099583012-r5 { fill: #68a0b3;font-weight: bold } +.terminal-3099583012-r6 { fill: #868887 } +.terminal-3099583012-r7 { fill: #4e707b;font-weight: bold } +.terminal-3099583012-r8 { fill: #98a84b;font-weight: bold } +.terminal-3099583012-r9 { fill: #8d7b39;font-weight: bold } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -164,46 +164,46 @@ - + - - $ dds -     ︵  - ︵ (  )   ︵  -(  ) ) (  (  )   SciLifeLab Data Delivery System  - ︶  (  ) ) (    https://delivery.scilifelab.se/  -      ︶ (  )    CLI Version 2.7.1  -          ︶ -[..truncated..] -Usage: dds [OPTIONSCOMMAND [ARGS]... - - SciLifeLab Data Delivery System (DDS) command line interface.                                       -Access token is saved in a .dds_cli_token file in the home directory. -The token is valid for 7 days. Make sure your token is valid long enough for the delivery to  -finish. To avoid that a delivery fails because of an expired token, we recommend reauthenticating  -yourself before each delivery ('dds data put' / 'get'). - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ ---verbose-v  Print verbose output to the console.                               ---log-file-l<filename>  Save a log to a file.                                              ---no-prompt  Run without any interactive features.                              ---token-path-tpTEXT        The path where the authentication token will be stored. For a      -                                normal use-case, this should not be needed.                        ---version  Display the version of this software.                              ---help  List the options of any DDS subcommand and its default settings.   -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ -╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ -auth         Group command for creating and managing authenticated sessions (valid for 7 days).  -data         Group command for uploading, downloading and managing project data.                 -ls           List the active projects you have access to or the project contents.                -maintenance  [Super Admins only] Activate / Deactivate / Display status for Maintenance mode.    -motd         [Super Admins only] Group command for managing Message of the Day within DDS.       -project      Group command for creating and managing projects within the DDS.                    -stats        Get statistics in the DDS.                                                          -unit         [Super Admins only] Group command for managing units.                               -user         Group command for managing user accounts, including your own.                       -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds +     ︵  + ︵ (  )   ︵  +(  ) ) (  (  )   SciLifeLab Data Delivery System  + ︶  (  ) ) (    https://delivery.scilifelab.se/  +      ︶ (  )    CLI Version 2.7.1  +          ︶ +[..truncated..] +Usage: dds [OPTIONSCOMMAND [ARGS]... + + SciLifeLab Data Delivery System (DDS) command line interface.                                       +Access token is saved in a .dds_cli_token file in the home directory. +The token is valid for 7 days. Make sure your token is valid long enough for the delivery to  +finish. To avoid that a delivery fails because of an expired token, we recommend reauthenticating  +yourself before each delivery ('dds data put' / 'get'). + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +--verbose-v  Print verbose output to the console.                               +--log-file-l<filename>  Save a log to a file.                                              +--no-prompt  Run without any interactive features.                              +--token-path-tpTEXT        The path where the authentication token will be stored. For a      +                                normal use-case, this should not be needed.                        +--version  Display the version of this software.                              +--help  List the options of any DDS subcommand and its default settings.   +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ +auth         Group command for creating and managing authenticated sessions (valid for 7 days).  +data         Group command for uploading, downloading and managing project data.                 +ls           List the active projects you have access to or the project contents.                +maintenance  [Super Admins only] Activate / Deactivate / Display status for Maintenance mode.    +motd         [Super Admins only] Group command for managing Message of the Day within DDS.       +project      Group command for creating and managing projects within the DDS.                    +stats        Get statistics in the DDS.                                                          +unit         [Super Admins only] Group command for managing units.                               +user         Group command for managing user accounts, including your own.                       +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/dds-help-2.svg b/img/dds-help-2.svg index c06b5117..ff6f511c 100644 --- a/img/dds-help-2.svg +++ b/img/dds-help-2.svg @@ -19,140 +19,140 @@ font-weight: 700; } - .terminal-2328220121-matrix { + .terminal-3233145927-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2328220121-title { + .terminal-3233145927-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2328220121-r1 { fill: #c5c8c6 } -.terminal-2328220121-r2 { fill: #868887;font-style: italic; } -.terminal-2328220121-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-2328220121-r4 { fill: #d0b344;font-weight: bold } -.terminal-2328220121-r5 { fill: #68a0b3;font-weight: bold } -.terminal-2328220121-r6 { fill: #868887 } -.terminal-2328220121-r7 { fill: #4e707b;font-weight: bold } -.terminal-2328220121-r8 { fill: #98a84b;font-weight: bold } -.terminal-2328220121-r9 { fill: #8d7b39;font-weight: bold } + .terminal-3233145927-r1 { fill: #c5c8c6 } +.terminal-3233145927-r2 { fill: #868887;font-style: italic; } +.terminal-3233145927-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-3233145927-r4 { fill: #d0b344;font-weight: bold } +.terminal-3233145927-r5 { fill: #68a0b3;font-weight: bold } +.terminal-3233145927-r6 { fill: #868887 } +.terminal-3233145927-r7 { fill: #4e707b;font-weight: bold } +.terminal-3233145927-r8 { fill: #98a84b;font-weight: bold } +.terminal-3233145927-r9 { fill: #8d7b39;font-weight: bold } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -164,46 +164,46 @@ - + - - $ dds --help -     ︵  - ︵ (  )   ︵  -(  ) ) (  (  )   SciLifeLab Data Delivery System  - ︶  (  ) ) (    https://delivery.scilifelab.se/  -      ︶ (  )    CLI Version 2.7.1  -          ︶ -[..truncated..] -Usage: dds [OPTIONSCOMMAND [ARGS]... - - SciLifeLab Data Delivery System (DDS) command line interface.                                       -Access token is saved in a .dds_cli_token file in the home directory. -The token is valid for 7 days. Make sure your token is valid long enough for the delivery to  -finish. To avoid that a delivery fails because of an expired token, we recommend reauthenticating  -yourself before each delivery ('dds data put' / 'get'). - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ ---verbose-v  Print verbose output to the console.                               ---log-file-l<filename>  Save a log to a file.                                              ---no-prompt  Run without any interactive features.                              ---token-path-tpTEXT        The path where the authentication token will be stored. For a      -                                normal use-case, this should not be needed.                        ---version  Display the version of this software.                              ---help  List the options of any DDS subcommand and its default settings.   -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ -╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ -auth         Group command for creating and managing authenticated sessions (valid for 7 days).  -data         Group command for uploading, downloading and managing project data.                 -ls           List the active projects you have access to or the project contents.                -maintenance  [Super Admins only] Activate / Deactivate / Display status for Maintenance mode.    -motd         [Super Admins only] Group command for managing Message of the Day within DDS.       -project      Group command for creating and managing projects within the DDS.                    -stats        Get statistics in the DDS.                                                          -unit         [Super Admins only] Group command for managing units.                               -user         Group command for managing user accounts, including your own.                       -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds --help +     ︵  + ︵ (  )   ︵  +(  ) ) (  (  )   SciLifeLab Data Delivery System  + ︶  (  ) ) (    https://delivery.scilifelab.se/  +      ︶ (  )    CLI Version 2.7.1  +          ︶ +[..truncated..] +Usage: dds [OPTIONSCOMMAND [ARGS]... + + SciLifeLab Data Delivery System (DDS) command line interface.                                       +Access token is saved in a .dds_cli_token file in the home directory. +The token is valid for 7 days. Make sure your token is valid long enough for the delivery to  +finish. To avoid that a delivery fails because of an expired token, we recommend reauthenticating  +yourself before each delivery ('dds data put' / 'get'). + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +--verbose-v  Print verbose output to the console.                               +--log-file-l<filename>  Save a log to a file.                                              +--no-prompt  Run without any interactive features.                              +--token-path-tpTEXT        The path where the authentication token will be stored. For a      +                                normal use-case, this should not be needed.                        +--version  Display the version of this software.                              +--help  List the options of any DDS subcommand and its default settings.   +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ +auth         Group command for creating and managing authenticated sessions (valid for 7 days).  +data         Group command for uploading, downloading and managing project data.                 +ls           List the active projects you have access to or the project contents.                +maintenance  [Super Admins only] Activate / Deactivate / Display status for Maintenance mode.    +motd         [Super Admins only] Group command for managing Message of the Day within DDS.       +project      Group command for creating and managing projects within the DDS.                    +stats        Get statistics in the DDS.                                                          +unit         [Super Admins only] Group command for managing units.                               +user         Group command for managing user accounts, including your own.                       +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/dds-project-status-help.svg b/img/dds-project-status-help.svg index 2a5218f3..537176b6 100644 --- a/img/dds-project-status-help.svg +++ b/img/dds-project-status-help.svg @@ -19,88 +19,88 @@ font-weight: 700; } - .terminal-346232205-matrix { + .terminal-2354063355-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-346232205-title { + .terminal-2354063355-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-346232205-r1 { fill: #c5c8c6 } -.terminal-346232205-r2 { fill: #868887;font-style: italic; } -.terminal-346232205-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-346232205-r4 { fill: #868887 } -.terminal-346232205-r5 { fill: #68a0b3;font-weight: bold } + .terminal-2354063355-r1 { fill: #c5c8c6 } +.terminal-2354063355-r2 { fill: #868887;font-style: italic; } +.terminal-2354063355-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-2354063355-r4 { fill: #868887 } +.terminal-2354063355-r5 { fill: #68a0b3;font-weight: bold } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -112,30 +112,30 @@ - + - - $ dds project status --help -[..truncated..] - - Manage project statuses.                                                                            -Display or change the status of a project. -Displaying the project status is available for all user roles. Changing the project status is  -limited to Unit Admins and Personnel. - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ ---help      Show this message and exit.                                                           -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ -╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ -archive    Change the project status to 'Archived'.                                              -busy       [Super Admins only] Returns the number of busy projects.                              -delete     Delete an unreleased project (change project status to 'Deleted').                    -display    Display the status of a specific project.                                             -extend     Extend a project deadline by an specified number of days.                             -release    Change project status to 'Available'.                                                 -retract    Change the project status to 'In Progress'.                                           -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds project status --help +[..truncated..] + + Manage project statuses.                                                                            +Display or change the status of a project. +Displaying the project status is available for all user roles. Changing the project status is  +limited to Unit Admins and Personnel. + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +--help      Show this message and exit.                                                           +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ +archive    Change the project status to 'Archived'.                                              +busy       [Super Admins only] Returns the number of busy projects.                              +delete     Delete an unreleased project (change project status to 'Deleted').                    +display    Display the status of a specific project.                                             +extend     Extend a project deadline by an specified number of days.                             +release    Change project status to 'Available'.                                                 +retract    Change the project status to 'In Progress'.                                           +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/dds-project.svg b/img/dds-project.svg index bdbe73e2..d997c574 100644 --- a/img/dds-project.svg +++ b/img/dds-project.svg @@ -19,80 +19,80 @@ font-weight: 700; } - .terminal-3993618841-matrix { + .terminal-4202290183-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3993618841-title { + .terminal-4202290183-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3993618841-r1 { fill: #c5c8c6 } -.terminal-3993618841-r2 { fill: #868887;font-style: italic; } -.terminal-3993618841-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-3993618841-r4 { fill: #d0b344;font-weight: bold } -.terminal-3993618841-r5 { fill: #68a0b3;font-weight: bold } -.terminal-3993618841-r6 { fill: #868887 } + .terminal-4202290183-r1 { fill: #c5c8c6 } +.terminal-4202290183-r2 { fill: #868887;font-style: italic; } +.terminal-4202290183-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-4202290183-r4 { fill: #d0b344;font-weight: bold } +.terminal-4202290183-r5 { fill: #68a0b3;font-weight: bold } +.terminal-4202290183-r6 { fill: #868887 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -104,27 +104,27 @@ - + - - $ dds project -[..truncated..] - -Usage: dds project [OPTIONSCOMMAND [ARGS]... - - Group command for creating and managing projects within the DDS.                                    - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ ---help      Show this message and exit.                                                           -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ -╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ -access     Manage specific users access to a project.                                            -create     Create a project within the DDS.                                                      -info       Manage project information.                                                           -ls         List all active projects you have access to in the DDS.                               -status     Manage project statuses.                                                              -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds project +[..truncated..] + +Usage: dds project [OPTIONSCOMMAND [ARGS]... + + Group command for creating and managing projects within the DDS.                                    + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +--help      Show this message and exit.                                                           +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ +access     Manage specific users access to a project.                                            +create     Create a project within the DDS.                                                      +info       Manage project information.                                                           +ls         List all active projects you have access to in the DDS.                               +status     Manage project statuses.                                                              +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/dds-user.svg b/img/dds-user.svg index 9539375e..bbfc15e2 100644 --- a/img/dds-user.svg +++ b/img/dds-user.svg @@ -19,86 +19,86 @@ font-weight: 700; } - .terminal-4021865309-matrix { + .terminal-4148092363-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4021865309-title { + .terminal-4148092363-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4021865309-r1 { fill: #c5c8c6 } -.terminal-4021865309-r2 { fill: #868887;font-style: italic; } -.terminal-4021865309-r3 { fill: #c5c8c6;font-weight: bold } -.terminal-4021865309-r4 { fill: #d0b344;font-weight: bold } -.terminal-4021865309-r5 { fill: #68a0b3;font-weight: bold } -.terminal-4021865309-r6 { fill: #868887 } + .terminal-4148092363-r1 { fill: #c5c8c6 } +.terminal-4148092363-r2 { fill: #868887;font-style: italic; } +.terminal-4148092363-r3 { fill: #c5c8c6;font-weight: bold } +.terminal-4148092363-r4 { fill: #d0b344;font-weight: bold } +.terminal-4148092363-r5 { fill: #68a0b3;font-weight: bold } +.terminal-4148092363-r6 { fill: #868887 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -110,29 +110,29 @@ - + - - $ dds user -[..truncated..] - -Usage: dds user [OPTIONSCOMMAND [ARGS]... - - Group command for managing user accounts, including your own.                                       - -╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ ---help      Show this message and exit.                                                           -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ -╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ -activate     Activate/Reactivate user accounts.                                                  -add          Invite a new user to the DDS or add an existing one to a hosted project.            -deactivate   Deactivate user accounts in the Data Delivery System.                               -delete       Delete user accounts from the Data Delivery System.                                 -find         Check if a username is registered to an account in the DDS.                         -info         Display information connected to your own DDS account.                              -ls           List Unit Admins and Personnel connected to a specific unit.                        -╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ - + + $ dds user +[..truncated..] + +Usage: dds user [OPTIONSCOMMAND [ARGS]... + + Group command for managing user accounts, including your own.                                       + +╭─ Options ────────────────────────────────────────────────────────────────────────────────────────╮ +--help      Show this message and exit.                                                           +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────╮ +activate     Activate/Reactivate user accounts.                                                  +add          Invite a new user to the DDS or add an existing one to a hosted project.            +deactivate   Deactivate user accounts in the Data Delivery System.                               +delete       Delete user accounts from the Data Delivery System.                                 +find         Check if a username is registered to an account in the DDS.                         +info         Display information connected to your own DDS account.                              +ls           List Unit Admins and Personnel connected to a specific unit.                        +╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ + diff --git a/img/python-version.svg b/img/python-version.svg index 5206579e..0135b4b1 100644 --- a/img/python-version.svg +++ b/img/python-version.svg @@ -19,27 +19,27 @@ font-weight: 700; } - .terminal-625154443-matrix { + .terminal-627251597-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-625154443-title { + .terminal-627251597-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-625154443-r1 { fill: #c5c8c6 } + .terminal-627251597-r1 { fill: #c5c8c6 } - + - + @@ -51,11 +51,11 @@ - + - - $ python --version -Python 3.12.4 + + $ python --version +Python 3.12.6 diff --git a/img/python3-version.svg b/img/python3-version.svg index fbb94e36..da66a23d 100644 --- a/img/python3-version.svg +++ b/img/python3-version.svg @@ -19,27 +19,27 @@ font-weight: 700; } - .terminal-936974782-matrix { + .terminal-939071936-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-936974782-title { + .terminal-939071936-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-936974782-r1 { fill: #c5c8c6 } + .terminal-939071936-r1 { fill: #c5c8c6 } - + - + @@ -51,11 +51,11 @@ - + - - $ python3 --version -Python 3.12.4 + + $ python3 --version +Python 3.12.6 diff --git a/requirements-dev.txt b/requirements-dev.txt index 4dfa0e04..670a73ee 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -2,7 +2,7 @@ black==24.1.1 Sphinx==5.0.2 sphinx-rtd-theme==1.0.0 sphinx-click==4.0.0 -pyinstaller==4.1 +pyinstaller # version not pinned due to latest used by release procedure pylint==2.17.3 sphinx-copybutton==0.5.1 sphinxcontrib-svg2pdfconverter==1.2.2 \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 5b4d0dc7..5bb7795c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,15 +5,15 @@ click-pathlib==2020.3.13.0 cryptography==42.0.4 immutabledict==2.2.1 jwcrypto==1.5.6 -prettytable==3.4.1 -prompt-toolkit==3.0.31 +prettytable==3.7.0 +prompt-toolkit==3.0.40 PyNaCl==1.5.0 pytz==2022.2.1 -PyYAML==6.0.1 -questionary==1.10.0 -requests==2.32.0 -rich==12.5.1 +PyYAML==6.0.2 +questionary==1.10.0 # not mantained since 2018, can break anytime +requests==2.32.2 +rich==13.6.0 rich-click==1.5.2 simplejson==3.17.6 tzlocal==4.2 -zstandard==0.19.0 +zstandard==0.22.0 \ No newline at end of file diff --git a/setup.py b/setup.py index 8298f454..88a664cc 100644 --- a/setup.py +++ b/setup.py @@ -24,10 +24,11 @@ classifiers=[ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", - "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", ], url="https://github.com/ScilifelabDataCentre/dds_cli", author="SciLifeLab Data Centre", diff --git a/tests/requirements-test.txt b/tests/requirements-test.txt index 5d1964f9..71ffe35f 100644 --- a/tests/requirements-test.txt +++ b/tests/requirements-test.txt @@ -1,6 +1,6 @@ -Flask==2.0.2 +Flask==2.2.5 requests-mock==1.9.3 pytest==7.1.2 pytest-cov==3.0.0 -pyfakefs==4.5.5 +pyfakefs==5.3.0 Werkzeug==2.2.3 \ No newline at end of file