Skip to content

Commit

Permalink
Merge pull request #39 from ttldtor/EN-3260-add-compatibility-with-py…
Browse files Browse the repository at this point in the history
…thon-3.9-2

[EN-3260]  [PythonAPI] Add compatibility of PythonAPI with Python 3.9+
  • Loading branch information
alimantu authored Sep 3, 2021
2 parents 5f3694a + 0610ece commit 26c4f78
Show file tree
Hide file tree
Showing 20 changed files with 569 additions and 128 deletions.
9 changes: 4 additions & 5 deletions .github/workflows/publishpackage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ jobs:
build:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8]
os: [ubuntu-18.04, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8, 3.9]

runs-on: ${{ matrix.os }}

Expand All @@ -34,12 +34,11 @@ jobs:
poetry install --no-root
shell: bash
- name: Create tarball
if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.7
if: matrix.python-version == 3.7
run: |
task build -f sdist
shell: bash
- name: Create wheel
if: matrix.os == 'windows-latest' || matrix.os == 'macos-latest'
run: |
task build -f wheel
shell: bash
Expand All @@ -52,7 +51,7 @@ jobs:


publish:
runs-on: ubuntu-latest
runs-on: ubuntu-18.04
needs: build
steps:
- uses: actions/checkout@v2
Expand Down
76 changes: 76 additions & 0 deletions .github/workflows/test_on_pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# This workflow will check package installation and runs tests on PR
name: Test on PR

on:
pull_request:
types: [opened, reopened, synchronize]

jobs:
installation:
strategy:
matrix:
os: [ubuntu-18.04, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8, 3.9]

runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: Install poetry
run: |
pip install poetry
shell: bash
- name: Set poetry env
run: |
poetry config virtualenvs.create false
poetry install --no-root --no-dev
pip install taskipy cython
task build -f sdist
pip uninstall --yes taskipy cython
shell: bash
- name: Install package artifact
run: |
pip install dist/dxfeed*
pip uninstall --yes dxfeed
shell: bash
tests:
needs: installation
strategy:
matrix:
os: [ubuntu-18.04, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8, 3.9]

runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: Install poetry
run: |
pip install poetry
shell: bash
- name: Set poetry env
run: |
poetry config virtualenvs.create false
poetry install --no-root
shell: bash
- name: Run tests
run: |
task test
shell: bash
- name: Generate doc
run: |
task html_docs
shell: bash
if: matrix.os == 'ubuntu-18.04' && matrix.python-version == 3.7
6 changes: 3 additions & 3 deletions .github/workflows/testdevelop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
installation:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
os: [ubuntu-18.04, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8, 3.9]

runs-on: ${{ matrix.os }}
Expand Down Expand Up @@ -46,7 +46,7 @@ jobs:
needs: installation
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
os: [ubuntu-18.04, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8, 3.9]

runs-on: ${{ matrix.os }}
Expand Down Expand Up @@ -76,4 +76,4 @@ jobs:
run: |
task html_docs
shell: bash
if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.7
if: matrix.os == 'ubuntu-18.04' && matrix.python-version == 3.7
8 changes: 4 additions & 4 deletions .github/workflows/testpackage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ jobs:
installation:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8]
os: [ubuntu-18.04, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8, 3.9]

runs-on: ${{ matrix.os }}

Expand Down Expand Up @@ -47,7 +47,7 @@ jobs:
needs: installation
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
os: [ubuntu-18.04, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8]

runs-on: ${{ matrix.os }}
Expand Down Expand Up @@ -77,4 +77,4 @@ jobs:
run: |
task html_docs
shell: bash
if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.7
if: matrix.os == 'ubuntu-18.04' && matrix.python-version == 3.7
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,11 @@ _build*

Pipfile*
dist*
dist
build/**
dxfeed/core/**/*.c
dxfeed/tmp

setup.py
poetry.lock
dxfeed.egg-info
3 changes: 0 additions & 3 deletions .gitmodules

This file was deleted.

6 changes: 0 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,6 @@ pip3 install dxfeed

## Installation from sources

Reminder: initialize and pull git submodule after cloning the repo:
```bash
git submodule init
git submodule update
```

To install dxfeed from source you need Poetry. It provides a custom installer.
This is the recommended way of installing poetry according to [documentation](https://python-poetry.org/docs/)

Expand Down
Loading

0 comments on commit 26c4f78

Please sign in to comment.