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

Minor Changes #119

Open
wants to merge 5 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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: 1 addition & 1 deletion .github/workflows/python-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
python-version: ['3.8']

steps:
- name: Checkout code
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,4 @@ coverage.xml
*/.ipynb_checkpoints/*
arbitragelab.egg-info/*
.eggs
/poetry.lock
83 changes: 83 additions & 0 deletions RELEASE.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
Version Release Guidelines
=======================

This document describes the guidelines for releasing new versions of the library. We follow semantic versioning, which means our version numbers have three parts: MAJOR.MINOR.PATCH.

- MAJOR version when you make incompatible API changes
- MINOR version when you add functionality in a backwards-compatible manner
- PATCH version when you make backwards-compatible bug fixes


1. Install the `bump2version` package:

```
pip install --upgrade bump2version
```
--------------------

2. Create a new branch for the release from dev branch:

```
git checkout -b release/x.y.z
```
--------------------

3. Update the version number using the `bump2version` command:

```
bump2version path
```
or
```
bump2version minor
```
or
```
bump2version major
```
--------------------

4. Commit the changes with the following message and push the changes to the release branch:

```
git commit -m "Bump version: {current_version} → {new_version}"
```

```
git push origin release/x.y.z
```

--------------------

5. Create a pull request from the release branch to the dev branch.

6. Once the pull request is approved and merged, create the tag to invoke the development package publishing workflow on TestPypi.

```
git tag -a x.y.z-dev -m "Release x.y.z-dev"
```

```
git push origin tag x.y.z-dev
```

7. Test the development version on a new fresh environment and if everything is working fine, create a new pull request from the develop branch to the master branch.

8. Once the pull request is approved and merged, create the tag on the main branch to invoke the package publishing workflow:

```
git tag -a x.y.z -m "Release x.y.z"
```

```
git push origin tag <tag_name>
```
--------------------

9. Once the tag is pushed, the package publishing workflow will be triggered and the package will be published to the PyPI.

10. Once the package is published, create a new release on GitHub with the tag name and the release notes (generate them automatically).

11. Write a blog post announcing the release and publish it on the website.
12. Send a newsletter email announcing the release
13. Post on social media about the release
14 changes: 12 additions & 2 deletions docs/source/getting_started/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,19 @@ Recommended Setup on Linux / MacOS

#. Install ArbitrageLab using ``pip``:

.. code-block::
.. note::

pip install arbitragelab
If you are using on Apple Silicon, and Python 3.8 or 3.9, first install the ``cvxpy``
dependency before installing ArbitrageLab, as follows:

.. code-block::

conda install -c conda-forge cvxpy


.. code-block::

pip install arbitragelab

#. You are now ready to use ArbitrageLab.

Expand Down