GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Fixup CI by altendky · Pull Request #520 · MagicStack/uvloop

Conversation

@altendky

@altendky altendky commented Dec 17, 2022

Copy link
Copy Markdown
Contributor

No description provided.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
altendky added 3 commits December 17, 2022 12:03
@altendky
Report exception on flake8 and mypy failures
487aa2f
@altendky
Wrap modified lines
306e5bb
@altendky
Update test_sourcecode.py
f826031
@altendky
altendky marked this pull request as draft December 17, 2022 17:33
@altendky
Update test_sourcecode.py
9289e94
@altendky

altendky commented Dec 17, 2022 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor Author

https://github.com/MagicStack/uvloop/actions/runs/3721134010/jobs/6311076170#step:7:567

    self.check_plugins = plugin_manager.Checkers(local_plugins.extension)
  File "/Users/runner/hostedtoolcache/Python/3.7.15/x64/lib/python3.7/site-packages/flake8/plugins/manager.py", line 357, in __init__
    self.namespace, local_plugins=local_plugins
  File "/Users/runner/hostedtoolcache/Python/3.7.15/x64/lib/python3.7/site-packages/flake8/plugins/manager.py", line 238, in __init__
    self._load_entrypoint_plugins()
  File "/Users/runner/hostedtoolcache/Python/3.7.15/x64/lib/python3.7/site-packages/flake8/plugins/manager.py", line 254, in _load_entrypoint_plugins
    eps = importlib_metadata.entry_points().get(self.namespace, ())
AttributeError: 'EntryPoints' object has no attribute 'get'
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

altendky added 4 commits December 17, 2022 13:26
@altendky
Try flake8 6
c35c179
@altendky
Try flake8 5
ee6635c
@altendky
Update setup.py
a131ea9
@altendky
Update setup.py
fa6a460
@altendky

altendky commented Dec 17, 2022

Copy link
Copy Markdown
Contributor Author

Maybe just skip the flake8 check in 3.7 so we can use the latest? It is 3.8.1+. Or stick with flake8 5 as this has now.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky

altendky commented Dec 17, 2022

Copy link
Copy Markdown
Contributor Author

Might be worth a nightly build as well to catch failures early? I haven't really dug in but I'm guessing a setuptools update broke this.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky
Update tests.yml
56bac60
@altendky

altendky commented Dec 17, 2022 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor Author

https://github.com/MagicStack/uvloop/actions/runs/3721513697/jobs/6311716324#step:7:647

FAIL: test_call_later_rounding (test_base.TestBaseAIO)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/runner/work/uvloop/uvloop/tests/test_base.py", line 220, in test_call_later_rounding
    self.assertGreaterEqual(finished - started, 69)
AssertionError: 65 not greater than or equal to 69
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky

altendky commented Dec 17, 2022

Copy link
Copy Markdown
Contributor Author

Kick ci

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky altendky closed this Dec 17, 2022
@altendky altendky reopened this Dec 17, 2022
@altendky
add pinning for deps back to last successful run
6ff669c
@altendky

altendky commented Dec 18, 2022

Copy link
Copy Markdown
Contributor Author

I haven't managed to recreate the hangs locally yet, so I guess I'll try to debug here in CI.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky

altendky commented Dec 18, 2022

Copy link
Copy Markdown
Contributor Author

https://github.com/MagicStack/uvloop/actions/runs/3722977120/jobs/6314201846#step:7:582

ERROR: test_create_unix_server_ssl_1 (test_unix.Test_AIO_UnixSSL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/runner/work/uvloop/uvloop/tests/test_unix.py", line 599, in test_create_unix_server_ssl_1
    self.loop.run_until_complete(start_server())
  File "/Users/runner/hostedtoolcache/Python/3.8.15/x64/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
    return future.result()
  File "/Users/runner/work/uvloop/uvloop/tests/test_unix.py", line 591, in start_server
    await asyncio.wait_for(asyncio.gather(*tasks), TIMEOUT)
  File "/Users/runner/hostedtoolcache/Python/3.8.15/x64/lib/python3.8/asyncio/tasks.py", line 501, in wait_for
    raise exceptions.TimeoutError()
asyncio.exceptions.TimeoutError
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

altendky added 7 commits December 17, 2022 22:10
@altendky
back a bit more
f688184
@altendky
just skip test_handshake_timeout_handler_leak() for now to see
dab57b8
@altendky
limit workflow concurrency
205a16c
@altendky
use a venv
590c5ac
@altendky
install aiohttp for 3.11 as well
599d514
@altendky
use non-prerelease 3.11
2e54a8e
@altendky
also skip test_remote_shutdown_receives_trailing_data()
196186c
@altendky

altendky commented Dec 18, 2022

Copy link
Copy Markdown
Contributor Author

Looks like test_remote_shutdown_receives_trailing_data() might be the culprit. Maybe tomorrow I'll try undoing the other difference narrowing changes I've made since they don't seem relevant.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

altendky added 2 commits December 18, 2022 10:12
@altendky
Revert "just skip test_handshake_timeout_handler_leak() for now to see"
58bf790
This reverts commit dab57b8.
@altendky
try on ubuntu-20.04 instead of -latest (22.04)
8e50aca
@altendky
undo some debugging changes
132aa60
@altendky

altendky commented Dec 18, 2022

Copy link
Copy Markdown
Contributor Author

https://github.com/MagicStack/uvloop/actions/runs/3725634404/jobs/6318565550#step:8:948

FAIL: test_call_later_rounding (test_base.TestBaseAIO.test_call_later_rounding)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/runner/work/uvloop/uvloop/tests/test_base.py", line 220, in test_call_later_rounding
    self.assertGreaterEqual(finished - started, 69)
AssertionError: 65 not greater than or equal to 69
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky

altendky commented Dec 18, 2022

Copy link
Copy Markdown
Contributor Author

kick ci

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky altendky closed this Dec 18, 2022
@altendky altendky reopened this Dec 18, 2022
@altendky

altendky commented Dec 18, 2022 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor Author

I think the current state here is worth considering.

  1. Skips test_remote_shutdown_receives_trailing_data() in the cases where it is causing hangs. Certainly this should be fixed, but I think it might be appropriate to get CI back into a generally functional state sooner than later.
  2. Increases output around the flake8 and mypy failure cases, specifically including the exception text (no traceback) and the stderr.
  3. Updates flake8 to the last version supporting Python 3.7 and a corresponding pycodestyle version. Perhaps another PR should update flake8 to latest and skip running that test on 3.7.

I certainly didn't try all the permutations, but I tried going back on a few points to try to identify a trigger for the test hangs that had changed since the last successful run. No success identifying such a trigger.

  • backup up dependency versions to match the last successful build at https://github.com/MagicStack/uvloop/actions/runs/3095350858/jobs/5009673734
  • use ubuntu-20.04
  • added aiohttp install for 3.11
  • used non-prerelease 3.11

I tried running locally including calling the tests in a few different ways and failed to trigger a hang. Local is Ubuntu 20.04 Linux.

I've also noted above a couple different testing flakes that I've seen while running here.

Separately, with green CI available, I would expect to submit PRs for:

  1. GitHub managed workflow concurrency (cancel old PR runs when a new commit is pushed)
  2. Job timeouts at 30 minutes
  3. Using released Python 3.11
  4. Automatic tracking of pre-release through release Pythons without updating for each version alpha/beta/rc/final as they are released.
  5. Latest flake8 skipped on Python <3.7
  6. Install aiohttp for Python 3.11
  7. Make master look more like the win branch in terms of system.pxd to reduce future conflicts between the two branches.
  8. Setup daily builds to more quickly identify these failures that just start happening. Then we know sooner, have a reference log available (not expired and removed by GitHub), and the diff between working and not is smaller.

Other points of interest that I don't know how to do already but might work on would be Windows support (I see the existing branch and comments about preferred next steps) and fixing the hanging test_remote_shutdown_receives_trailing_data() test.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky
altendky marked this pull request as ready for review December 18, 2022 16:58
@shuuji3 shuuji3 mentioned this pull request Jan 2, 2023
Fix ci status badge error #522
Merged
@altendky

altendky commented Jan 3, 2023

Copy link
Copy Markdown
Contributor Author

Kicking CI to make sure it is fresh.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky altendky closed this Jan 3, 2023
@altendky altendky reopened this Jan 3, 2023
@altendky

altendky commented Jan 3, 2023

Copy link
Copy Markdown
Contributor Author

New one to fix...

https://github.com/MagicStack/uvloop/actions/runs/3830530519/jobs/6518521286#step:7:472

ERROR: test_tcp (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: test_tcp
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.10.9/x64/lib/python3.10/unittest/loader.py", line 436, in _find_test_path
    module = self._get_module_from_name(name)
  File "/opt/hostedtoolcache/Python/3.10.9/x64/lib/python3.10/unittest/loader.py", line 377, in _get_module_from_name
    __import__(name)
  File "/home/runner/work/uvloop/uvloop/tests/test_tcp.py", line 14, in <module>
    from OpenSSL import SSL as openssl_ssl
  File "/opt/hostedtoolcache/Python/3.10.9/x64/lib/python3.10/site-packages/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import crypto, SSL
  File "/opt/hostedtoolcache/Python/3.10.9/x64/lib/python3.10/site-packages/OpenSSL/crypto.py", line 3268, in <module>
    _lib.OpenSSL_add_all_algorithms()
AttributeError: module 'lib' has no attribute 'OpenSSL_add_all_algorithms'
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky
altendky marked this pull request as draft January 3, 2023 15:10
@altendky
pyOpenSSL~=23.0.0
1ff5e32
@altendky

altendky commented Jan 3, 2023

Copy link
Copy Markdown
Contributor Author

We constrain pyopenssl but not cryptography and this, along with their deps not being constrained, allowed for incompatible versions to get installed.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@elprans
elprans requested a review from fantix January 3, 2023 19:53
@altendky
altendky marked this pull request as ready for review January 3, 2023 20:30
@altendky

altendky commented Jan 12, 2023

Copy link
Copy Markdown
Contributor Author

kicking ci for a fresh run

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky altendky closed this Jan 12, 2023
@altendky altendky reopened this Jan 12, 2023
@altendky

altendky commented Jan 12, 2023

Copy link
Copy Markdown
Contributor Author

https://github.com/MagicStack/uvloop/actions/runs/3905648871/jobs/6672910215#step:8:982

Traceback (most recent call last):
  File "/Users/runner/work/uvloop/uvloop/tests/test_base.py", line 220, in test_call_later_rounding
    self.assertGreaterEqual(finished - started, 69)
AssertionError: 66 not greater than or equal to 69
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@altendky altendky closed this Jan 12, 2023
@altendky altendky reopened this Jan 12, 2023
fantix
fantix approved these changes Jan 15, 2023
View reviewed changes

@fantix fantix left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

Thanks! I think the failing test on 3.11 is related to #471 and I'll try to fix it there.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@fantix
fantix merged commit 7783f1c into MagicStack:master Jan 15, 2023
fantix added a commit that referenced this pull request Oct 12, 2023
@fantix
uvloop 0.18.0
400a0c3
Fixes
=====

* CI fixes (#520, #553)
  (by @altendky in 7783f1c, @dulmandakh in 1dd40f1)

* Make extract_stack resilient to lacking frames. (#563)
  (by @jhance in 0687643 for #563)

* Port uvloop to Python 3.12 (#570)
  (by @1st1, @fantix in 9f82bd7 for #569)
@fantix fantix mentioned this pull request Oct 12, 2023
uvloop 0.18.0 #572
Merged
fantix added a commit that referenced this pull request Oct 13, 2023
@fantix
uvloop 0.18.0
5ddf38b
Changes
=======

* Port uvloop to Python 3.12 (#570)
  (by @1st1, @fantix in 9f82bd7 for #569)

* Upgrade libuv to v1.46.0 (#571)
  (by @fantix in 2e1978c for #571)

Fixes
=====

* CI fixes (#520, #553)
  (by @altendky in 7783f1c, @dulmandakh in 1dd40f1)

* Make extract_stack resilient to lacking frames. (#563)
  (by @jhance in 0687643 for #563)
This was referenced Oct 15, 2023
chore(deps): Bump flake8 and pycodestyle #515
Closed
chore(deps): Bump flake8 and pycodestyle #512
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@fantix fantix fantix approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@altendky @fantix
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.