Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.7.0 #333

Merged
merged 21 commits into from
Mar 1, 2024
Merged

Release v0.7.0 #333

merged 21 commits into from
Mar 1, 2024

Conversation

RLKRo
Copy link
Member

@RLKRo RLKRo commented Mar 1, 2024

Description

Release Notes

Deprecations

Improvements

Checklist

  • I have performed a self-review of the changes

List here tasks to complete in order to mark this PR as ready for review.

To Consider

  • Add tests (if functionality is changed)
  • Update API reference / tutorials / guides
  • Update CONTRIBUTING.md (if devel workflow is changed)
  • Update .ignore files, scripts (such as lint), distribution manifest (if files are added/deleted)
  • Search for references to changed entities in the codebase

ruthenian8 and others added 20 commits December 12, 2023 03:27
* Move updates from merge/slots; ensure passing tests

* move run_response from Node object to Actor object; execute response functions asynchronously

* update documentation && change the signature of processing-related actor methods

* remove overwrite_current_node_in_processing method

* allow asynchronous condition functions

* update tutorial

* fix merge errors

* make import absolute

* Apply suggestions by @RLKRo

Apply suggestions by @RLKRo

Co-authored-by: Roman Zlobin <trlkrot@gmail.com>

* Update actor & group removing context assignment statements

* test responses for None; use validate_label once

* return context from the 'pipeline' service group

* update tutorial tests for script/core;

* Remove random seed; use seed value of 42

* Deprecate overwrite_current_node

* update deprecation details

* fix: try to resolve docs bug

* update docs

* Update signature typings

* revert tutorial changes

Special tests for parallel processing will be added instead.

* remove overwrite_current_node_in_processing instead of deprecating

I decided that the next release will be 1.0, so we can remove instead of deprecating.

* remove most context returns; update docs and typing

* fix actor test

* codestyle

* add parallel processing test

* make global/local/node conditions run sequentially

As I said before it doesn't make much sense that they run in parallel while conditions in them run sequentially.

* replace args, kwargs with update_ctx_misc

Also includes some doc and typing updates

* codestyle

* fix typing

* line collapse

* rename function to fit inside code blocks

* fix tutorial function signatures

---------

Co-authored-by: Roman Zlobin <RLKRo@proton.me>
* versions frozen

* example poetry

* typos fixed

* poetry scripts

* all scripts ready

* github actions updated

* linting fixed

* remove get_extra_deps_line_number

* add inplace patching for sphinx

This requires the `wrapt` library which I haven't specified yet in project requirements.

* codestyle

* add dependencies required for poetry

Added wrapt dependency as a core dependency
Added urllib3 dependency to core (poetry requires urllib3<2.0 to function but some extra libraries update its version)

Maybe should use a different approach for these dependencies (not install them in core)

* fix coverage job

* separate doc and test; add test_no_cov

* change called script in jobs; modify dff installation

- Add pip upgrade for no reason
- Install specific extras instead of all
- Add flags to fix problems with poetry install
- Temporary fix of coverage job (poetry run test doesn't work)

* dependencies update

* lint applied

* tests + docs fixed

* versions updated

* scripting fixed

* actions updated

* attempt to fix test_full

* docker client adapted

* docker context manager once again updated

* tests no deps fixed

* coverage test fixed

* setuptools added

* test coverage poetry install added

* all dependencies added

* test coverage now in main

* backup files fixed + build and upload fail added

* context manager replaced with decorator (better)

* 1 return added

* add patch to suppress logger

* new dependencies

* all extras

* docker quiet + containers always down

* specified exception

* relint

* reformatted

* poetry scripts return ints

* benchmark added to coverage

* test full no coverage

* image building postponed

* otel volumes path fixed

* image build placing reverted

* building removed

* lint removed from coverage

* tests deps fixed

* poetry tests docker added

* tqdm added to benchmark

* iploading fixed

* pypi token added

* scripts updated

* lint + dry build

* build with publish + dirs exist ok

* apt -> apt-get + glob -> pathlib

* fix bumpversion

* contributing changed

* some reviews addressed

* pyproject updated to 0.6.1

* lint applied

* docker compose call updated

* test_ch exception check

* test tutorials exception check

* exception in rows

* assert reverted

* some comments fixed

* restricted, docker tests run on windows

* docker any platform reverted

* versions commenting started

* codestyle comments added

* extras -> groups

* lint applied

* comment added

* poethepoet introduced

* poe added as lib in poetry

* default script type changed

* codestyle fixed

* extract dff version from importlib

* add emails; merge maintainers with authors

* rework codestyle && fix codestyle

* remove docker-compose usage

* fix test_coverage && update includes and excludes

Instead of removing all directories to check that tests pass and do not miss any json files in `dff` it would be better to simply include all files under `dff` into source package.
Also remove redundant excludes and includes.

* remove lint from tests

These are separate tasks.

* replace returns with exits in scripts

* move coverage config to pyproject.toml

* freeze coverage version

Coverage 7.3.3 breaks `pragma: no cover` -- https://www.github.com/nedbat/coveragepy/issues/1713

* add poetry lock to git

The error with test_coverage was caused by new `coverage` version breaking things.
Keeping poetry lock in git would allow to separate errors caused by our code from those caused by dependency updates:
https://python-poetry.org/docs/basic-usage/#committing-your-poetrylock-file-to-version-control

* update poetry lock && add information about poetry lock updates

* update ignore files

* make devel group required

All devel processes require it.

* update dff version

* remove redundant groups from workflows

* keep poetry.lock during cleaning

* unfreeze and update devel deps

Poetry lock allows us to freeze dependencies without doing so in pyproject.toml.

* freeze urllib only in devel

urllib breaks poetry, so we want to restrict its version only in devel environments

* replace exclude_lines with exclude_also

* add python -m for workflows commands

---------

Co-authored-by: Roman Zlobin <trlkrot@gmail.com>
* replace forwardref with type_checking

* codestyle
Unfortunately, dependabot still notifies about all the library updates but this time suggests changes in `poetry.lock` file.
For some reason if you replace `branch=dev` with `branch=master` it doesn't work, so I had to set `dev` as target branch.
And without this param it shows the status of the latest workflow run on any branch.
* Add into  README.md info about target platform

* restructure markdown

---------

Co-authored-by: Roman Zlobin <trlkrot@gmail.com>
Without this env var local tests fail.

Signed-off-by: Roman Zlobin <RLKRo@proton.me>
* feat: Support Message creation with positional text arg

* chore: Replace kw-text with positional one in Message instantiations
* replace multimessage with misc messages

* format
* build(deps): bump the deps group with 16 updates

Bumps the deps group with 16 updates:

| Package | From | To |
| --- | --- | --- |
| [pydantic](https://github.com/pydantic/pydantic) | `2.5.3` | `2.6.0` |
| [nest-asyncio](https://github.com/erdewit/nest_asyncio) | `1.5.8` | `1.6.0` |
| [ydb](https://github.com/ydb-platform/ydb-python-sdk) | `3.7.0` | `3.8.0` |
| [cryptography](https://github.com/pyca/cryptography) | `41.0.7` | `42.0.2` |
| [pytelegrambotapi](https://github.com/eternnoir/pyTelegramBotAPI) | `4.14.1` | `4.15.4` |
| [flake8](https://github.com/pycqa/flake8) | `6.1.0` | `7.0.0` |
| [black](https://github.com/psf/black) | `23.12.1` | `24.1.1` |
| [pytest](https://github.com/pytest-dev/pytest) | `7.4.3` | `8.0.0` |
| [coverage](https://github.com/nedbat/coveragepy) | `7.3.2` | `7.4.1` |
| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.20.0` | `4.21.1` |
| [telethon](https://github.com/LonamiWebs/Telethon) | `1.33.1` | `1.34.0` |
| [fastapi](https://github.com/tiangolo/fastapi) | `0.107.0` | `0.109.2` |
| [uvicorn](https://github.com/encode/uvicorn) | `0.25.0` | `0.27.0.post1` |
| [locust](https://github.com/locustio/locust) | `2.20.0` | `2.22.0` |
| [streamlit](https://github.com/streamlit/streamlit) | `1.29.0` | `1.31.0` |
| [sphinxcontrib-apidoc](https://github.com/sphinx-contrib/apidoc) | `0.4.0` | `0.5.0` |


Updates `pydantic` from 2.5.3 to 2.6.0
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](pydantic/pydantic@v2.5.3...v2.6.0)

Updates `nest-asyncio` from 1.5.8 to 1.6.0
- [Release notes](https://github.com/erdewit/nest_asyncio/releases)
- [Commits](erdewit/nest_asyncio@v1.5.8...v1.6.0)

Updates `ydb` from 3.7.0 to 3.8.0
- [Release notes](https://github.com/ydb-platform/ydb-python-sdk/releases)
- [Changelog](https://github.com/ydb-platform/ydb-python-sdk/blob/main/CHANGELOG.md)
- [Commits](ydb-platform/ydb-python-sdk@3.7.0...3.8.0)

Updates `cryptography` from 41.0.7 to 42.0.2
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](pyca/cryptography@41.0.7...42.0.2)

Updates `pytelegrambotapi` from 4.14.1 to 4.15.4
- [Release notes](https://github.com/eternnoir/pyTelegramBotAPI/releases)
- [Commits](https://github.com/eternnoir/pyTelegramBotAPI/commits)

Updates `flake8` from 6.1.0 to 7.0.0
- [Commits](PyCQA/flake8@6.1.0...7.0.0)

Updates `black` from 23.12.1 to 24.1.1
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@23.12.1...24.1.1)

Updates `pytest` from 7.4.3 to 8.0.0
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](pytest-dev/pytest@7.4.3...8.0.0)

Updates `coverage` from 7.3.2 to 7.4.1
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](nedbat/coveragepy@7.3.2...7.4.1)

Updates `jsonschema` from 4.20.0 to 4.21.1
- [Release notes](https://github.com/python-jsonschema/jsonschema/releases)
- [Changelog](https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst)
- [Commits](python-jsonschema/jsonschema@v4.20.0...v4.21.1)

Updates `telethon` from 1.33.1 to 1.34.0
- [Release notes](https://github.com/LonamiWebs/Telethon/releases)
- [Commits](LonamiWebs/Telethon@v1.33.1...v1.34.0)

Updates `fastapi` from 0.107.0 to 0.109.2
- [Release notes](https://github.com/tiangolo/fastapi/releases)
- [Commits](fastapi/fastapi@0.107.0...0.109.2)

Updates `uvicorn` from 0.25.0 to 0.27.0.post1
- [Release notes](https://github.com/encode/uvicorn/releases)
- [Changelog](https://github.com/encode/uvicorn/blob/master/CHANGELOG.md)
- [Commits](encode/uvicorn@0.25.0...0.27.0.post1)

Updates `locust` from 2.20.0 to 2.22.0
- [Release notes](https://github.com/locustio/locust/releases)
- [Changelog](https://github.com/locustio/locust/blob/master/CHANGELOG.md)
- [Commits](locustio/locust@2.20.0...2.22.0)

Updates `streamlit` from 1.29.0 to 1.31.0
- [Release notes](https://github.com/streamlit/streamlit/releases)
- [Commits](streamlit/streamlit@1.29.0...1.31.0)

Updates `sphinxcontrib-apidoc` from 0.4.0 to 0.5.0
- [Commits](sphinx-contrib/apidoc@0.4.0...0.5.0)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: nest-asyncio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: ydb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: cryptography
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: deps
- dependency-name: pytelegrambotapi
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: flake8
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: deps
- dependency-name: black
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: deps
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: deps
- dependency-name: coverage
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: jsonschema
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: telethon
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: fastapi
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: uvicorn
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: locust
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: streamlit
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: sphinxcontrib-apidoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
...

Signed-off-by: dependabot[bot] <support@github.com>

* update coverage restriction

* update lock file

* lint

* update poetry lock

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Roman Zlobin <RLKRo@proton.me>
Removing validation by default caused seeded responses to change
This is done as part of these function's deprecation process.
* Revert "disable validation by default"

This reverts commit 2b5915a.

* remove function calls from validate_script

* lint

* lower coverage to 90
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It appears this PR is a release PR (change its base from master if that is not the case).

Here's a release checklist:

  • Update package version
  • Change PR merge option
  • Test modules without automated testing:
    • Requiring telegram api_id and api_hash
    • Requiring HF_API_KEY
  • Search for objects to be deprecated

@RLKRo RLKRo merged commit 224eaf1 into master Mar 1, 2024
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants