Skip to content

Commit

Permalink
Release 1.165.0
Browse files Browse the repository at this point in the history
See release notes.
  • Loading branch information
cjdsellers authored Jan 14, 2023
2 parents 46611e7 + 0b70ec2 commit d54c97a
Show file tree
Hide file tree
Showing 1,062 changed files with 12,628 additions and 11,555 deletions.
2 changes: 1 addition & 1 deletion .docker/nautilus_trader.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ WORKDIR $PYSETUP_PATH
FROM base as builder

# Install build deps
RUN apt-get update && apt-get install -y gcc curl
RUN apt-get update && apt-get install -y clang curl

# Install Rust stable
RUN curl https://sh.rustup.rs -sSf | bash -s -- -y
Expand Down
15 changes: 1 addition & 14 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,6 @@
.idea/**/gradle.xml
.idea/**/libraries

# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn. Uncomment if using
# auto-import.
# .idea/artifacts
# .idea/compiler.xml
# .idea/jarRepositories.xml
# .idea/modules.xml
# .idea/*.iml
# .idea/modules
# *.iml
# *.ipr

# CMake
cmake-build-*/

Expand Down Expand Up @@ -159,7 +146,7 @@ ipython_config.py
# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version
.python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
Expand Down
4 changes: 3 additions & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Set standard UNIX/Linux/MacOSX line endings.
* text eol=lf
* text=auto eol=lf

# Denote all files that are truly binary and should not be modified.
*.png binary
*.ico binary
*.jpg binary
*.bz2 binary
14 changes: 11 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ jobs:
strategy:
fail-fast: false
matrix:
arch: [x64, ARM64]
os: [ubuntu-latest, macos-latest]
arch: [x64]
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.9", "3.10", "3.11"]
name: build - Python ${{ matrix.python-version }} (${{ matrix.arch }} ${{ matrix.os }})
runs-on: ${{ matrix.os }}
Expand All @@ -23,6 +23,14 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3

# Rust setup (ensures latest stable)
- name: Set up Rust environment
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy

# Cargo setup
- name: Set up Cargo cache
uses: actions/cache@v3
Expand Down Expand Up @@ -111,7 +119,7 @@ jobs:
- name: Run tests (Windows)
if: runner.os == 'Windows'
run: |
poetry install --with test --extras "betfair docker ib redis"
poetry install --with test --all-extras
poetry run pytest --ignore=tests/performance_tests --new-first --failed-first
env:
PARALLEL_BUILD: false
12 changes: 10 additions & 2 deletions .github/workflows/build_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
fail-fast: false
matrix:
arch: [x64]
os: [ubuntu-latest, macos-latest]
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.9", "3.10", "3.11"]
name: build - Python ${{ matrix.python-version }} (${{ matrix.arch }} ${{ matrix.os }})
runs-on: ${{ matrix.os }}
Expand All @@ -23,6 +23,14 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3

# Rust setup (ensures latest stable)
- name: Set up Rust environment
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy

# Cargo setup
- name: Set up Cargo cache
uses: actions/cache@v3
Expand Down Expand Up @@ -111,7 +119,7 @@ jobs:
- name: Run tests (Windows)
if: runner.os == 'Windows'
run: |
poetry install --with test --extras "betfair docker ib redis"
poetry install --with test --all-extras
poetry run pytest --ignore=tests/performance_tests --new-first --failed-first
env:
PARALLEL_BUILD: false
8 changes: 8 additions & 0 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,14 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3

# Rust setup (ensures latest stable)
- name: Set up Rust environment
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy

# Cargo setup
- name: Set up Cargo cache
uses: actions/cache@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:

- name: Get branch name
id: branch-name
uses: tj-actions/branch-names@v5.2
uses: tj-actions/branch-names@v6

# Build nautilus_trader docker image (develop)
- name: Build nautilus_trader image (develop)
Expand Down
39 changes: 27 additions & 12 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,14 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3

# Rust setup (ensures latest stable)
- name: Set up Rust environment
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy

# Cargo setup
- name: Set up Cargo cache
uses: actions/cache@v2
Expand All @@ -35,20 +43,14 @@ jobs:

# Build project
- name: Build project
run: poetry install --with docs
run: poetry install --with docs --all-extras

- name: Get branch name
id: branch-name
uses: tj-actions/[email protected]

# Build docs (develop)
- name: Build docs (develop)
if: ${{ steps.branch-name.outputs.current_branch == 'develop' }}
run: make docs
uses: tj-actions/branch-names@v6

# Build docs (latest)
- name: Build docs (latest)
if: ${{ steps.branch-name.outputs.current_branch == 'master' }}
# Build docs
- name: Build docs
run: make docs

# Add nojeckyll
Expand All @@ -59,8 +61,21 @@ jobs:
- name: Add CNAME
run: echo "docs.nautilustrader.io" >> docs/build/html/CNAME

# Publish docs
- name: Publish docs
# Publish docs (develop)
- name: Publish docs (develop)
if: ${{ steps.branch-name.outputs.current_branch == 'develop' }}
uses: s0/git-publish-subdir-action@develop
env:
REPO: self
BRANCH: gh-pages
FOLDER: docs/build/html
SQUASH_HISTORY: false
GITHUB_TOKEN: ${{ secrets.GHPAGES_ACCESS }}
TARGET_DIR: develop

# Publish docs (latest)
- name: Publish docs (latest)
if: ${{ steps.branch-name.outputs.current_branch == 'master' }}
uses: s0/git-publish-subdir-action@develop
env:
REPO: self
Expand Down
34 changes: 33 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
strategy:
fail-fast: false
matrix:
arch: [x64, ARM64]
arch: [x64]
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.9", "3.10", "3.11"]
name: test-pip-install - Python ${{ matrix.python-version }} (${{ matrix.arch }} ${{ matrix.os }})
Expand All @@ -26,6 +26,14 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3

# Rust setup (ensures latest stable)
- name: Set up Rust environment
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy

# Cargo setup
- name: Set up Cargo cache
uses: actions/cache@v3
Expand Down Expand Up @@ -63,6 +71,14 @@ jobs:
with:
fetch-depth: 2

# Rust setup (ensures latest stable)
- name: Set up Rust environment
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy

# Cargo setup
- name: Set up Cargo cache
uses: actions/cache@v3
Expand Down Expand Up @@ -139,6 +155,14 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3

# Rust setup (ensures latest stable)
- name: Set up Rust environment
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy

# Cargo setup
- name: Set up Cargo cache
uses: actions/cache@v3
Expand Down Expand Up @@ -223,6 +247,14 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3

# Rust setup (ensures latest stable)
- name: Set up Rust environment
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy

# Cargo setup
- name: Set up Cargo cache
uses: actions/cache@v3
Expand Down
36 changes: 10 additions & 26 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -72,40 +72,24 @@ repos:
args: ["--config", "pyproject.toml"]
exclude: "docs/_pygments/monokai.py"

# - repo: https://github.com/pre-commit/mirrors-mypy
# rev: v0.991
# hooks:
# - id: mypy
# types_or: [python, pyi]
# entry: "poetry"
# args: ["run", "mypy", "--config", "pyproject.toml"]
# require_serial: true
# exclude: "^nautilus_core/"

- repo: https://github.com/pre-commit/mirrors-mypy
rev: v0.991
hooks:
- id: mypy
args: [
--no-strict-optional,
--ignore-missing-imports,
--warn-no-return,
--no-strict-optional,
--ignore-missing-imports,
--warn-no-return,
]
additional_dependencies: [
msgspec,
types-frozendict,
types-pytz,
types-redis,
types-requests,
types-toml,
msgspec,
types-frozendict,
types-pytz,
types-redis,
types-requests,
types-toml,
]

- repo: https://github.com/john-hen/Flake8-pyproject
rev: 1.2.2
hooks:
- id: Flake8-pyproject
name: flake8-pyproject

- repo: https://github.com/pycqa/flake8
rev: 6.0.0
hooks:
Expand All @@ -117,7 +101,7 @@ repos:
- Flake8-pyproject

- repo: https://github.com/pycqa/pydocstyle
rev: 6.1.1
rev: 6.2.2
hooks:
- id: pydocstyle
files: ^nautilus_trader/
Expand Down
35 changes: 12 additions & 23 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,31 @@
# Contributing to NautilusTrader

Involvement from the trading community is a goal for this project. All help is welcome!
Developers can open issues on GitHub to discuss proposed enhancements/changes, or
to make bug reports.
Involvement from the trading community is a goal for this project, and all help is welcome!
To contribute, please follow these steps:

It's a best practice to keep all discussions regarding changes to the codebase public.
1. Open an issue on GitHub to discuss your proposed changes or enhancements.

To contribute, the following steps should be followed;
2. Once everyone is on the same page, take a fork of the develop branch (or ensure all upstream changes are merged).

- Open an issue on GitHub to discuss your proposal.
3. Install and set up [pre-commit](https://pre-commit.com/) to ensure that the pre-commit hook is picked up on your local machine. This will automatically run various checks, auto-formatters, and linting tools.

- Once everyone is on the same page, take a fork of the `develop` branch (or ensure all upstream changes are merged).
4. It is recommended to install Redis using the default configuration so that integration tests will pass on your machine.

- Install and setup pre-commit so that the pre-commit hook will be picked up on
your local machine. This will automatically run various checks, auto-formatters
and linting tools. Further information can be found here <https://pre-commit.com/>.
5. Open a pull request (PR) on the `develop` branch with a summary comment.

- It's recommended you install Redis using the default configuration, so that integration
tests will pass on your machine.

- Open a pull request (PR) on the `develop` branch with a summary comment.

- The CI system will run the full test-suite over your code including all unit and integration tests, so please include appropriate tests
6. The CI system will run the full test-suite over your code including all unit and integration tests, so please include appropriate tests
with the PR.

- [Codacy](https://www.codacy.com/) will perform an automated code review. Please
7. [Codacy](https://www.codacy.com/) will perform an automated code review. Please
fix any issues which cause a failed check, and add the commit to your PR.

- You'll also be required to sign a standard Contributor License Agreement (CLA), which is
administered automatically through CLAassisant.
8. You will also be required to sign a standard Contributor License Agreement (CLA), which is administered automatically through [CLA Assistant](https://cla-assistant.io/).

- We will endeavour to review your code expeditiously, there may be some
feedback on needed changes before merging.
9. We will review your code as quickly as possible and may provide feedback on needed changes before merging.

## Tips

- Conform to the established coding practices, see _Coding Standards_ in the
[Developer Guide](https://docs.nautilustrader.io/developer_guide/index.html).
- Follow the established coding practices outlined in the [Developer Guide](https://docs.nautilustrader.io/developer_guide/index.html).
- Keep PR's small and focused.
- Reference the related GitHub issue(s) in the PR comment.

Expand Down
Loading

0 comments on commit d54c97a

Please sign in to comment.