Skip to content

Commit d04cc27

Browse files
author
Aleksandr Salynskii
authored
Merge pull request #5 from dxFeed/EN-1228-ci-cd
[EN-1228] ci cd
2 parents 69a418b + a04a723 commit d04cc27

File tree

2 files changed

+95
-1
lines changed

2 files changed

+95
-1
lines changed

.github/workflow/pythonpackage.yml

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# This workflow will check package installation and runs tests
2+
# On Ubuntu, Windows and MacOS
3+
# Triggered by push to master
4+
5+
name: Test package
6+
7+
on:
8+
push:
9+
branches:
10+
- master
11+
12+
jobs:
13+
installation:
14+
strategy:
15+
matrix:
16+
os: [ubuntu-latest, windows-latest, macos-latest]
17+
python-version: [3.6, 3.7, 3.8]
18+
19+
runs-on: ${{ matrix.os }}
20+
21+
steps:
22+
- uses: actions/checkout@v2
23+
with:
24+
submodules: true
25+
- name: Set up Python ${{ matrix.python-version }}
26+
uses: actions/setup-python@v1
27+
with:
28+
python-version: ${{ matrix.python-version }}
29+
- name: Install poetry
30+
run: |
31+
pip install poetry
32+
shell: bash
33+
- name: Set poetry env
34+
run: |
35+
poetry config virtualenvs.create false
36+
poetry install --no-root --no-dev
37+
pip install taskipy cython
38+
task build -f sdist
39+
pip uninstall --yes taskipy cython
40+
shell: bash
41+
- name: Install package artifact
42+
run: |
43+
pip install dist/dxfeed*
44+
pip uninstall dxfeed
45+
shell: bash
46+
build:
47+
needs: installation
48+
strategy:
49+
matrix:
50+
os: [ubuntu-latest, windows-latest, macos-latest]
51+
python-version: [3.6, 3.7, 3.8]
52+
53+
runs-on: ${{ matrix.os }}
54+
55+
steps:
56+
- uses: actions/checkout@v2
57+
with:
58+
submodules: true
59+
- name: Set up Python ${{ matrix.python-version }}
60+
uses: actions/setup-python@v1
61+
with:
62+
python-version: ${{ matrix.python-version }}
63+
- name: Install poetry
64+
run: |
65+
pip install poetry
66+
shell: bash
67+
- name: Set poetry env
68+
run: |
69+
poetry config virtualenvs.create false
70+
poetry install --no-root
71+
shell: bash
72+
- name: Run tests
73+
run: |
74+
task test
75+
shell: bash
76+
- name: Generate doc
77+
run: |
78+
task html_docs
79+
shell: bash
80+
if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.7

README.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
# dxfeed package
22

3-
This library provides Python API to dxfeed via C API. The code is written in Python and Cython.
3+
This package provides access to [dxFeed](https://www.dxfeed.com/) streaming data.
4+
The library is build as a thin wrapper over [dxFeed C-API library](https://github.com/dxFeed/dxfeed-c-api).
5+
We use [Cython](https://cython.org/) in this project as it combines flexibility, reliability and
6+
usability in writing C extensions.
7+
8+
This package already contains basic C-API functions related to creating connections, subscriptions etc.
9+
Moreover default listeners (functions responsible for event processing) are ready to use. The user is also able to
10+
write his own custom listener in Cython
411

512
## Installation
613

@@ -16,6 +23,13 @@ Install package via PyPI
1623
pip3 install dxfeed
1724
```
1825

26+
---
27+
**NOTE**
28+
29+
MacOS is not supported yet
30+
31+
---
32+
1933
## Basic usage
2034

2135
All the functions in C API have similar ones in Python with the same name. Not all arguments are

0 commit comments

Comments
 (0)