Skip to content

Commit

Permalink
Added gtmap() and gtstarmap() based on Green Threads from eventlet lib
Browse files Browse the repository at this point in the history
  • Loading branch information
asuiu committed Sep 24, 2023
1 parent e2b7c6f commit 35d67dd
Show file tree
Hide file tree
Showing 10 changed files with 3,343 additions and 984 deletions.
57 changes: 57 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
- id: check-ast
- id: check-case-conflict
- id: trailing-whitespace
- id: end-of-file-fixer
files: ".+\\.py"
- id: debug-statements
- id: trailing-whitespace
- id: detect-aws-credentials
args: [--allow-missing-credentials]
- id: check-docstring-first
- id: check-merge-conflict
- id: check-symlinks
- id: check-toml
- id: detect-private-key
- id: requirements-txt-fixer

- repo: https://github.com/psf/black
rev: 23.9.1 # Replace by any tag/version: https://github.com/psf/black/tags
hooks:
- id: black
language_version: python3 # Should be a command that runs python3.6+

- repo: https://github.com/pycqa/isort
rev: 5.12.0
hooks:
- id: isort
args: ["--profile", "black"]

- repo: https://github.com/pycqa/pylint
rev: v3.0.0a7
hooks:
- id: pylint

- repo: local
hooks:
- id: prospector
name: Python quality check
entry: prospector
language: python
types: [ python ]
exclude: ".*/tests/.*"

- repo: https://github.com/charliermarsh/ruff-pre-commit
# Ruff version.
rev: 'v0.0.291'
hooks:
- id: ruff
args: [--exit-non-zero-on-fix] # don't use --fix as it corrupts the files

- repo: https://github.com/kynan/nbstripout
rev: 0.6.1
hooks:
- id: nbstripout
2,004 changes: 2,004 additions & 0 deletions poetry.lock

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions poetry.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Low level configuration for how the `poetry` tool should work for this project.
# You should rarely need to change this. See `pyproject.toml` for the primary project configuration.

[virtualenvs]
in-project = true
virtualenvs.path = "./.venv"
102 changes: 102 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
[tool.poetry]
name = "streamerate"
version = "1.0.3" # do not edit manually. kept in sync with `tool.commitizen` config via automation
description = "streamerate: a fluent and expressive Python library for chainable iterable processing, inspired by Java 8 streams."
authors = ["Andrei Suiu <[email protected]>"]
repository = "https://github.com/asuiu/streamerate"
readme = "README.md"
license = "MIT"

[tool.poetry.dependencies]
python = ">=3.8,<4.0.0"
tqdm = ">=4.62.0"
throttlex = ">=1.0.0"
eventlet = ">=0.20.0"


[tool.poetry.dev-dependencies]
pytest = "~7.4.2"
pytest-mock = "~3.11.1"
invoke = "~2.0"
black = ">=22.12"
pycodestyle = "~2.10"
pydocstyle = "~6.3"
#mypy = "~1.5.1"
pylint = ">=2.17.5"
termcolor = "~2.2.0"
commitizen = "~2.42.1"
tomlkit = "~0.11.6"
pytest-only = "~=2.0.0"
coverage = { extras = ["toml"], version = "~7.2.1" }
pytest-cov = "~4.0.0"
#scikit-build = "~0.16.7"
prospector = ">=1.10.1"
pre-commit = ">=2.21.0"
twine = ">=4.0.2"

[tool.poetry.scripts]
test = "tasks:test"
reformat = "tasks:reformat"
lint = "tasks:lint"
typecheck = "tasks:typecheck"
verify-all = "tasks:verify_all"
find-releasable-changes = "tasks:find_releasable_changes"
prepare-release = "tasks:prepare_release"
debug-auto-git-tag = "tasks:debug_auto_git_tag"

[tool.black]
line-length = 160
include = '\.pyi?$'
default_language_version = '3.8'

[tool.pylint.master]
#ignore="tests,test_integrations"
ignore-patterns = ["test_.*"]
load-plugins = ["pylint.extensions.no_self_use"]

[tool.pylint.messages_control]
max-line-length = 160
disable = ["import-error",
"missing-module-docstring",
"missing-class-docstring",
"invalid-name",
"no-name-in-module",
"missing-function-docstring",
"too-few-public-methods",
"too-many-instance-attributes",
"logging-fstring-interpolation"]
output-format = "colorized"
max-locals = 25
max-args = 10
enable = "useless-suppression"

[tool.ruff]
# Enable Pyflakes `E` and `F` codes by default.
select = ["E", "F"]
ignore = ["E501"]


# Allow autofix for all enabled rules (when `--fix`) is provided.
fixable = ["A", "B", "C", "D", "E", "F"]
unfixable = []


[tool.commitizen]
name = "cz_conventional_commits"
version = "1.0.2" # do not edit manually. kept in sync with `tool.poetry` config via automation
tag_format = "v$version"

# Same as Black.
line-length = 160

[tool.coverage.run]
branch = true

[tool.coverage.report]
exclude_also = [
"if TYPE_CHECKING:"
]

[build-system]
requires = ["poetry>=1.3"]
build-backend = "poetry.masonry.api"
5 changes: 3 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
tqdm>=4.62.0;python_version>="3"
eventlet>=0.20.0;python_version>="3"
pydantic>=1.8.2;python_version>="3"
tblib>=1.7.0;python_version>="3"
throttlex>=1.0.0
throttlex>=1.0.0
tqdm>=4.62.0;python_version>="3"
110 changes: 0 additions & 110 deletions setup.py

This file was deleted.

Loading

0 comments on commit 35d67dd

Please sign in to comment.