From 6746a80f6def68c1d649ed2d3e3c84110cda8e15 Mon Sep 17 00:00:00 2001 From: Michael Panchenko <35432522+MischaPanch@users.noreply.github.com> Date: Mon, 4 Mar 2024 12:21:49 +0100 Subject: [PATCH] Add publish workflow, first preparation for next release (#1067) --- .github/workflows/publish.yaml | 30 ++++++++++++++++++++++++ README.md | 16 ++++++------- docs/04_contributing/05_contributor.rst | 10 -------- docs/04_contributing/05_contributors.rst | 28 ++++++++++++++++++++++ docs/spelling_wordlist.txt | 4 ++++ pyproject.toml | 2 +- 6 files changed, 71 insertions(+), 19 deletions(-) create mode 100644 .github/workflows/publish.yaml delete mode 100644 docs/04_contributing/05_contributor.rst create mode 100644 docs/04_contributing/05_contributors.rst diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml new file mode 100644 index 000000000..80a560142 --- /dev/null +++ b/.github/workflows/publish.yaml @@ -0,0 +1,30 @@ +name: Upload Python Package + +on: + release: + types: [created] + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up Python + uses: actions/setup-python@v1 + with: + python-version: 3.11 + # use poetry and cache installed packages, see https://github.com/marketplace/actions/python-poetry-action + - name: Install poetry + uses: abatilo/actions-poetry@v2 + - name: Setup a local virtual environment (if no poetry.toml file) + run: | + poetry config virtualenvs.create true --local + poetry config virtualenvs.in-project true --local + - name: Build and publish + env: + PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} + run: | + if [ -z "${PYPI_TOKEN}" ]; then echo "Set the PYPI_TOKEN variable in your repository secrets"; exit 1; fi + poetry config pypi-token.pypi $PYPI_TOKEN + poetry config repositories.pypi https://pypi.org/legacy + poetry publish --build --repository pypi diff --git a/README.md b/README.md index d07c0c0d7..2ddefd517 100644 --- a/README.md +++ b/README.md @@ -6,21 +6,21 @@ [![PyPI](https://img.shields.io/pypi/v/tianshou)](https://pypi.org/project/tianshou/) [![Conda](https://img.shields.io/conda/vn/conda-forge/tianshou)](https://github.com/conda-forge/tianshou-feedstock) [![Read the Docs](https://img.shields.io/readthedocs/tianshou)](https://tianshou.readthedocs.io/en/master) [![Read the Docs](https://img.shields.io/readthedocs/tianshou-docs-zh-cn?label=%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%A3)](https://tianshou.readthedocs.io/zh/master/) [![Unittest](https://github.com/thu-ml/tianshou/actions/workflows/pytest.yml/badge.svg)](https://github.com/thu-ml/tianshou/actions) [![codecov](https://img.shields.io/codecov/c/gh/thu-ml/tianshou)](https://codecov.io/gh/thu-ml/tianshou) [![GitHub issues](https://img.shields.io/github/issues/thu-ml/tianshou)](https://github.com/thu-ml/tianshou/issues) [![GitHub stars](https://img.shields.io/github/stars/thu-ml/tianshou)](https://github.com/thu-ml/tianshou/stargazers) [![GitHub forks](https://img.shields.io/github/forks/thu-ml/tianshou)](https://github.com/thu-ml/tianshou/network) [![GitHub license](https://img.shields.io/github/license/thu-ml/tianshou)](https://github.com/thu-ml/tianshou/blob/master/LICENSE) -> ⚠️️ **Dropped support for Gym**: -> Tianshou no longer supports Gym, and we recommend that you transition to -> [Gymnasium](http://github.com/Farama-Foundation/Gymnasium). -> If you absolutely have to use Gym, you can try using [Shimmy](https://github.com/Farama-Foundation/Shimmy) -> (the compatibility layer), but Tianshou provides no guarantees that things will work then. > ⚠️️ **Current Status**: the Tianshou master branch is currently under heavy development, > moving towards more features, improved interfaces, more documentation. You can view the relevant issues in the corresponding > [milestone](https://github.com/thu-ml/tianshou/milestone/1) -> Stay tuned! (and expect breaking changes until the release is done) +> Stay tuned! (and expect breaking changes until the next major release) -**Tianshou** ([天授](https://baike.baidu.com/item/%E5%A4%A9%E6%8E%88)) is a reinforcement learning platform based on pure PyTorch. Unlike other reinforcement learning libraries, which are partly based on TensorFlow, have unfriendly APIs ot are not optimized for speed, Tianshou provides a high-performance, modularized framework and user-friendly APIs for building deep reinforcement learning agents, enabling concise implementations without sacrificing flexibility. +**Tianshou** ([天授](https://baike.baidu.com/item/%E5%A4%A9%E6%8E%88)) is a reinforcement learning platform based on pure PyTorch and [Gymnasium](http://github.com/Farama-Foundation/Gymnasium). Unlike other reinforcement learning libraries, which may have complex codebases, +unfriendly high-level APIs, or are not optimized for speed, Tianshou provides a high-performance, modularized framework +and user-friendly interfaces for building deep reinforcement learning agents. One more aspect that sets Tianshou apart is its +generality: it supports online and offline RL, multi-agent RL, and model-based algorithms. -The set of supported algorithms includes the following: +Tianshou aims at enabling concise implementations, both for researchers and practitioners, without sacrificing flexibility. + +Supported algorithms include: - [Deep Q-Network (DQN)](https://storage.googleapis.com/deepmind-media/dqn/DQNNaturePaper.pdf) - [Double DQN](https://arxiv.org/pdf/1509.06461.pdf) diff --git a/docs/04_contributing/05_contributor.rst b/docs/04_contributing/05_contributor.rst deleted file mode 100644 index aea3738cf..000000000 --- a/docs/04_contributing/05_contributor.rst +++ /dev/null @@ -1,10 +0,0 @@ -Contributors -============ - -We always welcome contributions to help make Tianshou better. Below are an incomplete list of our contributors (find more on `this page `_). - -* Jiayi Weng (`Trinkle23897 `_) -* Alexis Duburcq (`duburcqa `_) -* Kaichao You (`youkaichao `_) -* Huayu Chen (`ChenDRAG `_) -* Yi Su (`nuance1979 `_) diff --git a/docs/04_contributing/05_contributors.rst b/docs/04_contributing/05_contributors.rst new file mode 100644 index 000000000..d48a7148f --- /dev/null +++ b/docs/04_contributing/05_contributors.rst @@ -0,0 +1,28 @@ +Contributors +============ + +We always welcome contributions to help make Tianshou better! +Tiashou was originally created by the `THU-ML Group `_ at Tsinghua University. + +Today, it is backed by the `appliedAI Institute for Europe `_, +which is committed to making Tianshou the go-to resource for reinforcement learning research and development, +and guaranteeing its long-term maintenance and support. + +The original creator Jiayi Weng (`Trinkle23897 `_) continues +to be a key contributor to the project. + +The current tianshou maintainers from the appliedAI Institute for Europe are: + +* Michael Panchenko (`MischaPanch `_) +* Dominik Jain (`opcode81 `_) + + +An incomplete list of the early contributors is: + +* Alexis Duburcq (`duburcqa `_) +* Kaichao You (`youkaichao `_) +* Huayu Chen (`ChenDRAG `_) +* Yi Su (`nuance1979 `_) + + +You can find more information about contributors `here `_. diff --git a/docs/spelling_wordlist.txt b/docs/spelling_wordlist.txt index 53ca93b32..8ab0c2876 100644 --- a/docs/spelling_wordlist.txt +++ b/docs/spelling_wordlist.txt @@ -249,3 +249,7 @@ dicts pytorch tensordict onwards +Dominik +Tsinghua +Tianshou +appliedAI diff --git a/pyproject.toml b/pyproject.toml index 9b8fe7aee..d4679f949 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "tianshou" -version = "0.5.1" +version = "1.0.0" description = "A Library for Deep Reinforcement Learning" authors = ["TSAIL "] license = "MIT"