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

dependencies: drop aiofiles #5306

Closed
oliver-sanders opened this issue Jan 16, 2023 · 0 comments · Fixed by #5308
Closed

dependencies: drop aiofiles #5306

oliver-sanders opened this issue Jan 16, 2023 · 0 comments · Fixed by #5308
Assignees
Labels
Milestone

Comments

@oliver-sanders
Copy link
Member

Aiofiles is a convenience library for farming out os calls to an executor (i.e. running them in threads).

The library essentially comes down to this 8 line snippet.

https://github.com/Tinche/aiofiles/blob/ee14e26f1cfee8b39888e7a03e70fba984d8845f/src/aiofiles/os.py#L7-L15

We don't really need this dependency as rolling your own async wraper is trivial. They've recently moved to date based versioning which pushes the overheads of compatibility onto us much more than before. This given the immaturity of the library means there's a reasonable chance that maintaining it as a dependency may become hard work at our end.

Pull requests welcome!

@oliver-sanders oliver-sanders added this to the cylc-8.2.0 milestone Jan 16, 2023
@oliver-sanders oliver-sanders self-assigned this Jan 17, 2023
oliver-sanders added a commit to oliver-sanders/cylc-flow that referenced this issue Jan 17, 2023
* Aiofiles is a simple wrapper for a thread pool executor.
  We don't need a 3rd party library to do this for us.
* Closes cylc#5306
oliver-sanders added a commit to oliver-sanders/cylc-flow that referenced this issue Jan 17, 2023
* Aiofiles is a simple wrapper for a thread pool executor.
  We don't need a 3rd party library to do this for us.
* Closes cylc#5306
wxtim pushed a commit to wxtim/cylc that referenced this issue Jan 24, 2023
* Aiofiles is a simple wrapper for a thread pool executor.
  We don't need a 3rd party library to do this for us.
* Closes cylc#5306
datamel pushed a commit to datamel/cylc-flow that referenced this issue Jan 24, 2023
* Aiofiles is a simple wrapper for a thread pool executor.
  We don't need a 3rd party library to do this for us.
* Closes cylc#5306
hjoliver pushed a commit to hjoliver/cylc-flow that referenced this issue Mar 13, 2023
* Aiofiles is a simple wrapper for a thread pool executor.
  We don't need a 3rd party library to do this for us.
* Closes cylc#5306
wxtim added a commit to wxtim/cylc that referenced this issue Apr 14, 2023
* Convert old clock triggers to wall_clock xtriggers.

* Fix test.

* Update change log.

* tests/f: fix job-submission/03

* bump version

* deps: remove aiofiles

* Aiofiles is a simple wrapper for a thread pool executor.
  We don't need a 3rd party library to do this for us.
* Closes cylc#5306

* Update cylc/flow/__init__.py

* Revert "Update cylc/flow/__init__.py"

This reverts commit d40bdc1.

* fix to make setup.cfg work with setuptools v67.0.0

* Use different version strings for isodatatime for python 3.7

* Update setup.cfg

Co-authored-by: Ronnie Dutta <61982285+MetRonnie@users.noreply.github.com>

* id: pass tokens objects between interfaces

* Change `TaskProxy.tokens` to hold the absolute ID rather than the
  relative ID to make the object useful in more situations.
* Refactor the data_store_mgr interfaces to accept `Tokens` instances
  rather than raw inputs (e.g. cycle_point, task_name, etc).
* This avoids doing `Tokens(str(tokens))` when passing context into the
  data store interfaces.

* deps: loosen pyzmq dependency

* The ZMTP protocol provides robust forward & backward compatibility
  from libzmq version 3.2.2 onwards.
* Since this is the minimum version compatible with pyzmq, we can
  safely loosen this version coupling.
* For more information see the rationale in
  cylc#5311 (comment)

* Closes cylc#5272
* Closes cylc#5311
* Unblocks cylc/cylc-uiserver#411

* Update README.md

* Quick fix for mypy

* remove issue templates

* Defaults can now be centrally configured in
  https://github.com/cylc/.github

* workflow_files: move clean functionality into its own module

* `cylc clean` has outgrown the workflow_files module somewhat.

* workflow_files: move install functionality into its own module

* remove pull request template

* update CONTRIBUTING

* add missing import

* Bump pypa/gh-action-pypi-publish from 1.6.4 to 1.7.1

Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.6.4 to 1.7.1.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](pypa/gh-action-pypi-publish@v1.6.4...v1.7.1)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

* Bump pypa/gh-action-pypi-publish from 1.7.1 to 1.8.1 (cylc#5413)

Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.7.1 to 1.8.1.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](pypa/gh-action-pypi-publish@v1.7.1...v1.8.1)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* remote: add note about sys.exit behaviour (cylc#5393)

* Bump pypa/gh-action-pypi-publish from 1.8.1 to 1.8.3

Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.8.1 to 1.8.3.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](pypa/gh-action-pypi-publish@v1.8.1...v1.8.3)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

* vr: add --yes option

* tui: add vr command

* add instruction to report critical traceback

* CLI: short option changes

* Rename `-n` for `--no-detach` to `-N`. This removes the conflict with
  `--workflow-name` allowing the option to be used in `cylc vip`.
* Add `-r` as a short option for `--run-name`.

* efficiency: pass tokens instances to get_broadcast

* This saves some unnecessary tokenise/detokenise operations

* Update cylc/flow/scheduler.py

* Update cylc/flow/tui/data.py

* Update cylc/flow/broadcast_mgr.py

Co-authored-by: Tim Pillinger <26465611+wxtim@users.noreply.github.com>

* Apply suggestions from code review [skip ci]

Co-authored-by: Oliver Sanders <oliver.sanders@metoffice.gov.uk>

* Bump pypa/gh-action-pypi-publish from 1.8.3 to 1.8.4 (cylc#5446)

Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.8.3 to 1.8.4.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](pypa/gh-action-pypi-publish@v1.8.3...v1.8.4)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump pypa/gh-action-pypi-publish from 1.8.4 to 1.8.5

Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.8.4 to 1.8.5.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](pypa/gh-action-pypi-publish@v1.8.4...v1.8.5)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

* Improve documentation for retrieve job logs command

* Update cylc/flow/cfgspec/globalcfg.py

* fix a typo in document

* actions: add build test

* Stop Cylc Reinstall modifying global variables
This caused the same variable to be added multiple times causing
errors from clashing options.

* validate-reinstall: don't print reload message

* The reload message is not applicable when using `cylc vr` because it
  does it for you.
* Closes cylc#5344

* play: preserve colour formatting when detaching

* Closes cylc#5159

* Upload coverage to Codecov in separate job (cylc#5459)

GH Actions: upload coverage to Codecov in separate job

- Reduces how hard we hit Codecov API
- Allows easy re-attempt to upload
- remove unnecessary step on MacOS

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Hilary Oliver <hilary.j.oliver@gmail.com>
Co-authored-by: Oliver Sanders <oliver.sanders@metoffice.gov.uk>
Co-authored-by: Melanie Hall <37735232+datamel@users.noreply.github.com>
Co-authored-by: Ronnie Dutta <61982285+MetRonnie@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dpmatthews <david.matthews@metoffice.gov.uk>
Co-authored-by: Cheng Da <cheng.da@nasa.gov>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant