Skip to content
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
48 changes: 48 additions & 0 deletions .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Python package

defaults:
run:
shell: sh

on:
push:
branches: [ "master", "updates" ]
pull_request:
branches: [ "master" ]

jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: ["ubuntu-20.04", "macos-12", "windows-2019"]
python-version: ["3.8", "3.12"]

steps:
- uses: actions/checkout@v3

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}

- name: Test doctests
run: |
python stream.py

- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install pytest
python -m pip install .

- name: Test with pytest
run: |
pytest test/*.py

# - name: Upload coverage to Codecov
# if: matrix.python-version == 3.12 && startsWith(matrix.os, 'ubuntu')
# uses: codecov/codecov-action@v3
# env:
# CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
build
dist
*.swp
stream.egg-info
21 changes: 0 additions & 21 deletions README

This file was deleted.

26 changes: 26 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
ABOUT
=====

Streams are iterables with a pipelining mechanism to enable data-flow
programming and easy parallelization.

See the reference documentation in [doc](doc/index.rst).


INSTALL
=======

This module requires Python 3.6.

$ pip install stream

or, for development,

$ pip install -e .


TEST
====

python3 stream.py # runs doctests
pytest test/*.py # runs test_* functions
37 changes: 14 additions & 23 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,48 +1,39 @@
#!/usr/bin/env python

import os
import sys

from distutils.core import setup

__dir__ = os.path.realpath(os.path.dirname(__file__))

sys.path.insert(0, __dir__)
try:
import stream
finally:
del sys.path[0]
from setuptools import setup, find_packages

classifiers = """
Development Status :: 3 - Alpha
Intended Audience :: Developers
License :: OSI Approved :: MIT License
Operating System :: OS Independent
Programming Language :: Python
Programming Language :: Python :: 3
Topic :: Software Development :: Libraries :: Python Modules
Topic :: Utilities
"""

__doc__ = """Streams are iterables with a pipelining mechanism to enable data-flow
programming and easy parallelization.

See the reference documentation at <http://www.trinhhaianh.com/stream.py>.

Articles written by the author about the module can be viewed at <http://blog.onideas.ws/tag/project:stream.py>.
See the reference documentation in the doc/ subdirectory.

The code repository is located at <http://github.com/aht/stream.py>.
"""

setup(
name = 'stream',
version = stream.__version__,
description = stream.__doc__.split('\n')[0],
name='stream',
# Remember to also change stream.py:__version__ on update!
version='0.9.0',
description=__doc__.split('\n', 1)[0],
long_description = __doc__,
author = 'Anh Hai Trinh',
author_email = 'moc.liamg@hnirt.iah.hna:otliam'[::-1],
author='Anh Hai Trinh',
author_email='moc.liamg@hnirt.iah.hna:otliam'[::-1],
keywords='lazy iterator generator stream pipe parallellization data flow functional list processing',
url = 'http://github.com/aht/stream.py',
platforms=['any'],
#packages=find_packages(), # Automatically find packages in the directory
#packages=['your_package'], # List of packages to include
py_modules=['stream'], # single python module to include
classifiers=filter(None, classifiers.split("\n")),
py_modules = ['stream']
platforms=['any'],
python_requires='>=3.6',
)
Loading