Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New release v2.8.0 - No more Python 3.7 #713

Merged
merged 52 commits into from
Sep 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
cca0459
DDS-2023: Add the testing page to the navigation links
aishling-scilifelab Jul 29, 2024
2b57960
DDS-2023: Remove references to TestPyPi
aishling-scilifelab Jul 29, 2024
4333abe
DDS-2023: Update SPRINTLOG.md
aishling-scilifelab Jul 29, 2024
5619d0d
Merge pull request #705 from ScilifelabDataCentre/DDS-2023-update-tes…
aishling-scilifelab Aug 9, 2024
e6abf6c
unpinned pyinstaller
i-oden Aug 28, 2024
aea5486
sprintlog
i-oden Aug 28, 2024
9f90e67
codeowners file
i-oden Aug 28, 2024
ed4829e
sprintlog
i-oden Aug 28, 2024
0b8fac1
Merge pull request #706 from ScilifelabDataCentre/DDS-2041-fix-local-…
i-oden Aug 29, 2024
fdec57e
Merge branch 'dev' into DDS-2054-add-codeowner-file-and-branch-protec…
i-oden Aug 29, 2024
7fefe4c
Merge pull request #707 from ScilifelabDataCentre/DDS-2054-add-codeow…
i-oden Aug 29, 2024
89b5d06
Started process to bump python in client
rv0lt Sep 2, 2024
85a312a
sprintlog
rv0lt Sep 2, 2024
0343c81
update workflows to match pyton version
rv0lt Sep 2, 2024
60f101d
bump libraty
rv0lt Sep 2, 2024
662bfa8
bump libraty
rv0lt Sep 2, 2024
44d4ca9
Update __main__.py
wpotrzebowski Sep 4, 2024
1d03602
Merge pull request #710 from ScilifelabDataCentre/docs_typo_fix
i-oden Sep 4, 2024
f0edf9d
Merge branch 'dev' into DDS-2073-Bump-Python-version-in-dds_cli-to-sa…
rv0lt Sep 11, 2024
247a5fd
Merge pull request #709 from ScilifelabDataCentre/DDS-2073-Bump-Pytho…
rv0lt Sep 12, 2024
bc3a8f9
added list of passwd managers
valyo Sep 12, 2024
305a288
fix links
valyo Sep 12, 2024
1136c65
added clarification regarding Bitwarden
valyo Sep 16, 2024
85b351c
sprintlog
valyo Sep 16, 2024
40723f7
Started process to bump python in client
rv0lt Sep 2, 2024
2f49001
sprintlog
valyo Sep 16, 2024
aa1b3b5
update workflows to match pyton version
rv0lt Sep 2, 2024
73b675a
bump libraty
rv0lt Sep 2, 2024
3c0db7f
bump libraty
rv0lt Sep 2, 2024
b40c66d
Merge branch 'dev' into DDS-2083-clarify-passwd-management-documentation
valyo Sep 16, 2024
9ea47f3
added dev endpoint
rv0lt Sep 18, 2024
6740c90
sprintlog
rv0lt Sep 18, 2024
96623df
Update dds_cli/__init__.py
rv0lt Sep 19, 2024
6348e77
new versjk
rv0lt Sep 19, 2024
0dcfce6
Merge branch 'DDS-2122-Add-dds-dev-url-to-CLI-config' of https://gith…
rv0lt Sep 19, 2024
66c44be
new version
rv0lt Sep 19, 2024
837d9dc
new version
rv0lt Sep 19, 2024
ff5d59b
undo version change
rv0lt Sep 20, 2024
7972db5
Merge pull request #712 from ScilifelabDataCentre/DDS-2122-Add-dds-de…
rv0lt Sep 20, 2024
fd4d52f
review suggestions
valyo Sep 20, 2024
45e84c1
Merge branch 'master' into dev
i-oden Sep 23, 2024
fb95040
Merge branch 'dev' into DDS-2083-clarify-passwd-management-documentation
i-oden Sep 23, 2024
a5939bb
Merge pull request #711 from ScilifelabDataCentre/DDS-2083-clarify-pa…
i-oden Sep 23, 2024
a44ef1f
Generate new screengrabs with rich-codex
github-actions[bot] Sep 24, 2024
96c9b16
new version and changelog
rv0lt Sep 24, 2024
10331eb
sprintlog
rv0lt Sep 24, 2024
84e2e43
Merge branch 'dev' into new-version-changelog
rv0lt Sep 24, 2024
8e95241
prettier
rv0lt Sep 24, 2024
a01d373
changelog
rv0lt Sep 24, 2024
bc197c8
remove workflow from changelog
rv0lt Sep 24, 2024
9da4fb1
Merge pull request #714 from ScilifelabDataCentre/new-version-changelog
rv0lt Sep 24, 2024
017b2a8
move in changelog
i-oden Sep 24, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Team Hermes are the owners of all files in this repository
* @ScilifelabDataCentre/teamhermes
4 changes: 2 additions & 2 deletions .github/workflows/pytest-cli.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-cli.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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: |
Expand Down
24 changes: 24 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -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
Expand Down
23 changes: 23 additions & 0 deletions SPRINTLOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -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))
4 changes: 2 additions & 2 deletions WINDOWS.md
Original file line number Diff line number Diff line change
@@ -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/

Expand Down Expand Up @@ -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<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<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.

Expand Down
3 changes: 3 additions & 0 deletions dds_cli/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down
2 changes: 1 addition & 1 deletion dds_cli/__main__.py
Original file line number Diff line number Diff line change
Expand Up @@ -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):
Expand Down
2 changes: 1 addition & 1 deletion dds_cli/version.py
Original file line number Diff line number Diff line change
Expand Up @@ -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"
1 change: 1 addition & 0 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,7 @@ Command documentation and guide
unit
motd
changelog
testing

Indices and tables
==================
Expand Down
6 changes: 4 additions & 2 deletions docs/installation.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _installation:

Installation guide
####################

Expand Down Expand Up @@ -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

Expand All @@ -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 <https://www.python.org/downloads/>`_.
If this does not return ``Python 3.8.x`` or higher, you will need to `install Python <https://www.python.org/downloads/>`_.

.. warning::

Expand Down
23 changes: 19 additions & 4 deletions docs/password.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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 <https://bitwarden.com/>`_ 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 <https://bitwarden.com/>`_,
`LastPass <https://www.lastpass.com/>`_, `1Password <https://1password.com/>`_.

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.
Expand Down
21 changes: 9 additions & 12 deletions docs/testing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down Expand Up @@ -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<installation>`.

.. 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:

Expand Down
Loading
Loading