Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: ucloud/ucloud-sdk-python3
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: ucloud/ucloud-sdk-python3
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: fix/collections-callable-py310
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 1 commit
  • 1 file changed
  • 1 contributor

Commits on Aug 18, 2026

  1. fix(test): replace collections.Callable, removed in Python 3.10

    test_client_try_import used `isinstance(x, collections.Callable)`.
    `collections.Callable` has been an alias for `collections.abc.Callable`
    since 3.3 and was removed in 3.10, so the test raises:
    
        AttributeError: module 'collections' has no attribute 'Callable'
    
    The suite therefore only passes on Python <= 3.9. .travis.yml tests
    3.5/3.6/3.7, which is why this was never noticed -- and Travis has not
    run on this repo for a long time either.
    
    Uses the builtin `callable()` instead of `collections.abc.Callable`:
    same semantics (collections.abc.Callable.__subclasshook__ just checks
    for __call__), and it drops the now-unused `collections` import rather
    than keeping one around for a single predicate.
    
    Verified on Python 3.11.9:
        before   1 failed, 47 passed, 37 skipped
        after    48 passed, 37 skipped
    Episkey-G committed Aug 18, 2026
    Configuration menu
    Copy the full SHA
    351f093 View commit details
    Browse the repository at this point in the history
Loading