├── .github └── workflows │ ├── check_scripts.yml │ ├── force_update.yml │ ├── test_api_token.yml │ └── update_stubs.yml ├── .gitignore ├── LICENSE ├── README.md ├── SECURITY.md ├── data ├── changelogs │ ├── .keep │ ├── Authlib.md │ ├── D3DShot.md │ ├── DateTimeRange.md │ ├── Deprecated.md │ ├── ExifRead.md │ ├── Flask-Cors.md │ ├── Flask-Migrate.md │ ├── Flask-SQLAlchemy.md │ ├── Flask-SocketIO.md │ ├── Flask.md │ ├── JACK-Client.md │ ├── Jetson.GPIO.md │ ├── Jinja2.md │ ├── Markdown.md │ ├── MarkupSafe.md │ ├── Pillow.md │ ├── PyAutoGUI.md │ ├── PyMySQL.md │ ├── PyScreeze.md │ ├── PyYAML.md │ ├── Pygments.md │ ├── RPi.GPIO.md │ ├── SQLAlchemy.md │ ├── Send2Trash.md │ ├── TgCrypto.md │ ├── WTForms.md │ ├── WebOb.md │ ├── Werkzeug.md │ ├── aiofiles.md │ ├── annoy.md │ ├── antlr4-python3-runtime.md │ ├── appdirs.md │ ├── assertpy.md │ ├── atheris.md │ ├── atomicwrites.md │ ├── auth0-python.md │ ├── aws-xray-sdk.md │ ├── babel.md │ ├── backports.ssl_match_hostname.md │ ├── backports_abc.md │ ├── beautifulsoup4.md │ ├── binaryornot.md │ ├── bleach.md │ ├── boltons.md │ ├── boto.md │ ├── braintree.md │ ├── cachetools.md │ ├── caldav.md │ ├── capturer.md │ ├── certifi.md │ ├── cffi.md │ ├── characteristic.md │ ├── chardet.md │ ├── chevron.md │ ├── click-default-group.md │ ├── click-log.md │ ├── click-spinner.md │ ├── click-web.md │ ├── click.md │ ├── colorama.md │ ├── commonmark.md │ ├── console-menu.md │ ├── contextvars.md │ ├── corus.md │ ├── croniter.md │ ├── cryptography.md │ ├── dataclasses.md │ ├── dateparser.md │ ├── decorator.md │ ├── defusedxml.md │ ├── dirhash.md │ ├── dj-database-url.md │ ├── django-import-export.md │ ├── docker.md │ ├── dockerfile-parse.md │ ├── docopt.md │ ├── docutils.md │ ├── editdistance.md │ ├── emoji.md │ ├── entrypoints.md │ ├── enum34.md │ ├── fanstatic.md │ ├── filelock.md │ ├── first.md │ ├── flake8-2020.md │ ├── flake8-bugbear.md │ ├── flake8-builtins.md │ ├── flake8-docstrings.md │ ├── flake8-plugin-utils.md │ ├── flake8-rst-docstrings.md │ ├── flake8-simplify.md │ ├── flake8-typing-imports.md │ ├── flake8.md │ ├── fpdf2.md │ ├── freezegun.md │ ├── frozendict.md │ ├── futures.md │ ├── gdb.md │ ├── geopandas.md │ ├── gevent.md │ ├── google-cloud-ndb.md │ ├── greenlet.md │ ├── grpcio-channelz.md │ ├── grpcio-health-checking.md │ ├── grpcio-reflection.md │ ├── grpcio-status.md │ ├── grpcio.md │ ├── hdbcli.md │ ├── hnswlib.md │ ├── html5lib.md │ ├── httplib2.md │ ├── humanfriendly.md │ ├── hvac.md │ ├── ibm-db.md │ ├── icalendar.md │ ├── influxdb-client.md │ ├── inifile.md │ ├── invoke.md │ ├── ipaddress.md │ ├── itsdangerous.md │ ├── jmespath.md │ ├── jsonschema.md │ ├── jwcrypto.md │ ├── keyboard.md │ ├── ldap3.md │ ├── libsass.md │ ├── lupa.md │ ├── lzstring.md │ ├── m3u8.md │ ├── maxminddb.md │ ├── mock.md │ ├── mypy-extensions.md │ ├── mysqlclient.md │ ├── nanoid.md │ ├── nanoleafapi.md │ ├── netaddr.md │ ├── netifaces.md │ ├── networkx.md │ ├── oauthlib.md │ ├── objgraph.md │ ├── olefile.md │ ├── openpyxl.md │ ├── opentracing.md │ ├── orjson.md │ ├── paho-mqtt.md │ ├── paramiko.md │ ├── parsimonious.md │ ├── passlib.md │ ├── passpy.md │ ├── peewee.md │ ├── pep8-naming.md │ ├── pexpect.md │ ├── pika.md │ ├── playsound.md │ ├── pluggy.md │ ├── polib.md │ ├── portpicker.md │ ├── prettytable.md │ ├── protobuf.md │ ├── psutil.md │ ├── psycopg2.md │ ├── pyOpenSSL.md │ ├── pyRFC3339.md │ ├── pyasn1.md │ ├── pyaudio.md │ ├── pycocotools.md │ ├── pycurl.md │ ├── pyfarmhash.md │ ├── pyflakes.md │ ├── pygit2.md │ ├── pyinstaller.md │ ├── pyjks.md │ ├── pynput.md │ ├── pyperclip.md │ ├── pyserial.md │ ├── pysftp.md │ ├── pytest-lazy-fixture.md │ ├── python-crontab.md │ ├── python-datemath.md │ ├── python-dateutil.md │ ├── python-gflags.md │ ├── python-http-client.md │ ├── python-jenkins.md │ ├── python-jose.md │ ├── python-nmap.md │ ├── python-slugify.md │ ├── python-xlib.md │ ├── pytz.md │ ├── pyvmomi.md │ ├── pywin32.md │ ├── pyxdg.md │ ├── qrbill.md │ ├── qrcode.md │ ├── ratelimit.md │ ├── redis.md │ ├── regex.md │ ├── reportlab.md │ ├── requests-oauthlib.md │ ├── requests.md │ ├── retry.md │ ├── rfc3339-validator.md │ ├── s2clientprotocol.md │ ├── seaborn.md │ ├── selenium.md │ ├── setuptools.md │ ├── shapely.md │ ├── simplejson.md │ ├── singledispatch.md │ ├── six.md │ ├── slumber.md │ ├── stdlib-list.md │ ├── str2bool.md │ ├── stripe.md │ ├── tabulate.md │ ├── tensorflow.md │ ├── termcolor.md │ ├── toml.md │ ├── toposort.md │ ├── tqdm.md │ ├── translationstring.md │ ├── tree-sitter-languages.md │ ├── tree-sitter.md │ ├── ttkthemes.md │ ├── typed-ast.md │ ├── tzlocal.md │ ├── uWSGI.md │ ├── ujson.md │ ├── unidiff.md │ ├── untangle.md │ ├── urllib3.md │ ├── usersettings.md │ ├── vobject.md │ ├── waitress.md │ ├── watchpoints.md │ ├── whatthepatch.md │ ├── workalendar.md │ ├── wurlitzer.md │ ├── xdgenvpy.md │ ├── xlrd.md │ ├── xmltodict.md │ ├── xxhash.md │ ├── zstd.md │ └── zxcvbn.md ├── empty_package │ └── setup.py ├── last_typeshed_commit.sha1 ├── test_typeshed │ └── stubs │ │ ├── bogusfiles │ │ ├── METADATA.toml │ │ ├── bogusfile.txt │ │ └── bogusfiles.pyi │ │ ├── multifilepkg │ │ ├── @tests │ │ │ └── stubtest_allowlist.txt │ │ ├── METADATA.toml │ │ └── multifilepkg │ │ │ ├── __init__.pyi │ │ │ ├── a.pyi │ │ │ ├── b.pyi │ │ │ └── c │ │ │ ├── __init__.pyi │ │ │ ├── d.pyi │ │ │ └── e.pyi │ │ ├── nspkg │ │ ├── @tests │ │ │ └── stubtest_allowlist.txt │ │ ├── METADATA.toml │ │ └── nspkg │ │ │ └── innerpkg │ │ │ └── __init__.pyi │ │ └── singlefilepkg │ │ ├── @tests │ │ └── stubtest_allowlist.txt │ │ ├── METADATA.toml │ │ └── singlefilepkg.pyi └── uploaded_packages.txt ├── requirements.txt ├── stub_uploader ├── __init__.py ├── build_wheel.py ├── const.py ├── get_changed.py ├── get_version.py ├── metadata.py ├── ts_data.py ├── update_changelog.py ├── upload.py ├── upload_changed.py └── upload_some.py └── tests ├── __init__.py ├── test_integration.py └── test_unit.py /.github/workflows/check_scripts.yml: -------------------------------------------------------------------------------- 1 | name: Check scripts 2 | 3 | on: 4 | push: 5 | pull_request: 6 | 7 | env: 8 | FORCE_COLOR: 1 9 | 10 | jobs: 11 | black: 12 | name: Check formatting with black 13 | runs-on: ubuntu-latest 14 | steps: 15 | - uses: actions/setup-python@v5 16 | with: 17 | python-version: '3.13' 18 | - uses: actions/checkout@v4 19 | - run: pip install -r requirements.txt 20 | - run: | 21 | black --version 22 | black --check . 23 | 24 | mypy: 25 | name: Check stub_uploader with mypy 26 | runs-on: ubuntu-latest 27 | steps: 28 | - uses: actions/setup-python@v5 29 | with: 30 | python-version: '3.13' 31 | - uses: actions/checkout@v4 32 | - run: pip install -r requirements.txt 33 | - run: mypy --strict -p stub_uploader -p tests 34 | 35 | tests: 36 | name: Run integration and unit tests 37 | runs-on: ubuntu-latest 38 | steps: 39 | - name: Setup Python 40 | uses: actions/setup-python@v5 41 | with: 42 | # Keep in sync with typeshed's daily.yml and tests.yml workflows. 43 | python-version: '3.13' 44 | - name: Checkout main 45 | uses: actions/checkout@v4 46 | with: 47 | path: main 48 | - name: Checkout typeshed 49 | uses: actions/checkout@v4 50 | with: 51 | repository: python/typeshed 52 | path: typeshed 53 | - name: Run tests 54 | run: | 55 | cd main 56 | pip install -r requirements.txt 57 | python -Werror -m pytest tests 58 | -------------------------------------------------------------------------------- /.github/workflows/force_update.yml: -------------------------------------------------------------------------------- 1 | name: Force update of some stubs from typeshed to PyPI 2 | 3 | on: 4 | workflow_dispatch: 5 | inputs: 6 | distribution: 7 | description: 'Package name or pattern (Python regexp)' 8 | required: true 9 | 10 | env: 11 | FORCE_COLOR: 1 12 | 13 | jobs: 14 | build-and-upload: 15 | runs-on: ubuntu-latest 16 | steps: 17 | - name: Setup Python 18 | uses: actions/setup-python@v5 19 | with: 20 | python-version: '3.13' 21 | - name: Checkout main 22 | uses: actions/checkout@v4 23 | with: 24 | path: main 25 | - name: Checkout typeshed 26 | uses: actions/checkout@v4 27 | with: 28 | repository: python/typeshed 29 | path: typeshed 30 | - name: Install dependencies 31 | run: | 32 | python -m pip install --upgrade pip 33 | pip install -r main/requirements.txt 34 | - name: Execute build and upload 35 | env: 36 | TWINE_USERNAME: __token__ 37 | TWINE_PASSWORD: ${{ secrets.TYPESHED_BOT_API_TOKEN }} 38 | run: | 39 | cd main 40 | python -m stub_uploader.upload_some ../typeshed "${{ github.event.inputs.distribution }}" 41 | # If we are force uploading packages that were never uploaded, they are added to the list 42 | if [ -z "$(git status --porcelain)" ]; then 43 | exit 0; 44 | fi 45 | git config user.name github-actions && git config user.email github-actions@github.com 46 | git add . && git commit -m "Update uploaded packages list" && git push 47 | -------------------------------------------------------------------------------- /.github/workflows/test_api_token.yml: -------------------------------------------------------------------------------- 1 | name: Test PyPI API token 2 | 3 | on: 4 | # Only triggered manually (for debugging/integration testing). 5 | workflow_dispatch: 6 | inputs: 7 | increment: 8 | description: 'Package minor version' 9 | required: true 10 | default: 0 11 | 12 | env: 13 | FORCE_COLOR: 1 14 | 15 | jobs: 16 | deploy: 17 | runs-on: ubuntu-latest 18 | 19 | steps: 20 | - uses: actions/checkout@v4 21 | - name: Set up Python 22 | uses: actions/setup-python@v5 23 | with: 24 | python-version: '3.13' 25 | - name: Install dependencies 26 | run: | 27 | python -m pip install --upgrade pip 28 | pip install build setuptools wheel twine 29 | - name: Build and publish 30 | env: 31 | TWINE_USERNAME: __token__ 32 | TWINE_PASSWORD: ${{ secrets.TYPESHED_BOT_API_TOKEN }} 33 | run: | 34 | cd data/empty_package 35 | PACKAGE_VERSION_INCREMENT=${{ github.event.inputs.increment }} python -m build --wheel --no-isolation 36 | twine upload dist/* 37 | -------------------------------------------------------------------------------- /.github/workflows/update_stubs.yml: -------------------------------------------------------------------------------- 1 | name: Periodic update of stubs from typeshed to PyPI 2 | 3 | on: 4 | # Triggers the workflow each day at 02:00 UTC. 5 | schedule: 6 | - cron: 0 2 * * * 7 | # If needed, allows to run this workflow manually from the Actions tab 8 | workflow_dispatch: 9 | 10 | env: 11 | FORCE_COLOR: 1 12 | 13 | jobs: 14 | build-and-upload: 15 | runs-on: ubuntu-latest 16 | if: ${{ github.repository == 'typeshed-internal/stub_uploader' || github.event_name == 'workflow_dispatch' }} 17 | steps: 18 | - name: Setup Python 19 | uses: actions/setup-python@v5 20 | with: 21 | python-version: '3.13' 22 | - name: Checkout main 23 | uses: actions/checkout@v4 24 | with: 25 | path: main 26 | - name: Checkout typeshed 27 | uses: actions/checkout@v4 28 | with: 29 | repository: python/typeshed 30 | path: typeshed 31 | # It is unlikely there will be more commits between two runs. 32 | # We could set this to 0 to fetch everything, but we want this to be fast. 33 | fetch-depth: 100 34 | - name: Install dependencies 35 | run: | 36 | python -m pip install --upgrade pip 37 | pip install -r main/requirements.txt 38 | - name: Execute diff build and upload tasks 39 | env: 40 | TWINE_USERNAME: __token__ 41 | TWINE_PASSWORD: ${{ secrets.TYPESHED_BOT_API_TOKEN }} 42 | run: | 43 | cd main 44 | python -m stub_uploader.upload_changed ../typeshed $(cat data/last_typeshed_commit.sha1) 45 | (cd ../typeshed; git rev-parse HEAD) > data/last_typeshed_commit.sha1 46 | if [ -z "$(git status --porcelain)" ]; then 47 | exit 0; 48 | fi 49 | git config user.name github-actions && git config user.email github-actions@github.com 50 | # This will also commit any new and changed changelogs. 51 | git add . && git commit -m "Update last typeshed commit" && git push 52 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | 5 | # C extensions 6 | *.so 7 | 8 | # Distribution / packaging 9 | .Python 10 | env/ 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | lib/ 17 | lib64/ 18 | parts/ 19 | sdist/ 20 | var/ 21 | *.egg-info/ 22 | .installed.cfg 23 | *.egg 24 | 25 | # PyInstaller 26 | # Usually these files are written by a python script from a template 27 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 28 | *.manifest 29 | *.spec 30 | 31 | # Installer logs 32 | pip-log.txt 33 | pip-delete-this-directory.txt 34 | 35 | # Unit test / coverage reports 36 | htmlcov/ 37 | .tox/ 38 | .coverage 39 | .cache 40 | nosetests.xml 41 | coverage.xml 42 | stubtest-output* 43 | mypy-* 44 | 45 | # Translations 46 | *.mo 47 | *.pot 48 | 49 | # Django stuff: 50 | *.log 51 | 52 | # Sphinx documentation 53 | docs/_build/ 54 | 55 | # PyBuilder 56 | target/ 57 | 58 | # Local utility scripts 59 | analyze.py 60 | 61 | # Editor backup files 62 | *~ 63 | .*.sw? 64 | .vscode/ 65 | .idea/ 66 | .venv*/ 67 | 68 | # Mypy cache 69 | .mypy_cache/ 70 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Implication of the Typeshed Stub Uploader 2 | 3 | Security for the stub uploader is of the highest importance. If the stub 4 | uploader gets compromised, an attacker could upload manipulated stub 5 | packages to gain full access to developer machines or even production hosts. 6 | Considering the high trust, quick turnaround, and automated installation of 7 | stub packages, this could have significant security implications. 8 | 9 | ## Maintainers 10 | 11 | Only a small number of typeshed maintainers have commit rights for this 12 | repository to minimize the attack vector in case of hacked accounts. This 13 | is also the reason that this repository is part of a separate GitHub 14 | organization and not the [python](https://github.com/python) or 15 | [psf](https://github.com/psf) organizations, like typeshed is. 16 | 17 | Typeshed maintainers without commit rights are still considered maintainers 18 | of the stub uploader and are encouraged to manage issues and send and review 19 | pull requests. 20 | 21 | ## Typeshed Data 22 | 23 | To ensure that a compromised typeshed repository can't lead to compromised 24 | stub packages, all typeshed data is verified by the stub uploader before 25 | building packages. The stub uploader ensures that only stub and metadata 26 | files are added to the stub packages. This also means that no code from the 27 | typeshed repository must be executed while building packages, and no 28 | modules must be imported. 29 | 30 | ## Dependencies 31 | 32 | Another possible attack vector is dependencies of stub packages. 33 | A compromised dependency can have a similar effect to when a stub package 34 | gets compromised directly. Therefore, only certain dependencies are 35 | allowed: 36 | 37 | * Dependencies on other stub packages created by typeshed. 38 | * Dependencies on packages the upstream package depends on – even recursively. 39 | Since it's likely that a stub package gets installed alongside the 40 | upstream package, this does not introduce an additional security liability. 41 | * Dependencies that are explicitly allowlisted in the stub uploader. These 42 | dependencies are vetted to be from a trusted source. 43 | 44 | ## PyPI Uploads 45 | 46 | Stub packages are uploaded to PyPI by the PyPI user 47 | [typeshed_bot](https://pypi.org/user/typeshed_bot/) using an API token. 48 | The packages are owned solely by that user, so that no other PyPI user can 49 | upload new versions of the packages, in case the PyPI account of a 50 | maintainer becomes compromised. 51 | 52 | ## Reporting a Vulnerability 53 | 54 | To report an issue, go to https://github.com/typeshed-internal/stub_uploader/security. We commit to respond to any issue within 14 days and promptly fix any problems. 55 | -------------------------------------------------------------------------------- /data/changelogs/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/changelogs/.keep -------------------------------------------------------------------------------- /data/changelogs/Authlib.md: -------------------------------------------------------------------------------- 1 | ## 1.5.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 1.5.0.20250416 (2025-04-16) 6 | 7 | Update authlib to 1.5.* (#13540) 8 | 9 | ## 1.4.0.20250408 (2025-04-08) 10 | 11 | Improve `Authlib` (#13801) 12 | 13 | ## 1.4.0.20241230 (2024-12-30) 14 | 15 | [stubsabot] Bump Authlib to 1.4.* (#13329) 16 | 17 | Release: https://pypi.org/pypi/Authlib/1.4.0 18 | Repository: https://github.com/lepture/authlib 19 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/Authlib 20 | Diff: https://github.com/lepture/authlib/compare/v1.3.2...v1.4.0 21 | 22 | Stubsabot analysis of the diff between the two releases: 23 | - 0 public Python files have been added. 24 | - 0 files included in typeshed's stubs have been deleted. 25 | - 5 files included in typeshed's stubs have been modified or renamed: `authlib/consts.py`, `authlib/jose/rfc7517/key_set.py`, `authlib/oauth2/rfc9068/introspection.py`, `authlib/oauth2/rfc9068/revocation.py`, `authlib/oidc/core/grants/util.py`. 26 | - Total lines of Python code added: 90. 27 | - Total lines of Python code deleted: 13. 28 | 29 | ## 1.3.0.20241229 (2024-12-29) 30 | 31 | Authlib (v2) (#13140) 32 | 33 | Co-authored-by: Brian Villemarette 34 | Co-authored-by: Jelle Zijlstra 35 | 36 | -------------------------------------------------------------------------------- /data/changelogs/D3DShot.md: -------------------------------------------------------------------------------- 1 | ## 0.1.0.5 (2023-04-01) 2 | 3 | Mark `types-D3DShot` as no longer updated (#8929) 4 | 5 | `D3DShot` is an archived repo 6 | 7 | Link: https://github.com/SerpentAI/D3DShot 8 | 9 | ## 0.1.0.4 (2023-02-22) 10 | 11 | Update `Unused` parameters in `stubs/` (#9704) 12 | 13 | * Update _Unused TypeAlias 14 | 15 | * Update `object | None` params 16 | 17 | * Replace unused `object` parameters with `Unused` alias 18 | 19 | ## 0.1.0.3 (2023-02-21) 20 | 21 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 22 | 23 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 24 | 25 | ## 0.1.0.2 (2023-01-14) 26 | 27 | Update various comments now non-types dependencies are allowed (#9527) 28 | 29 | ## 0.1.0.1 (2022-11-11) 30 | 31 | Add the ability to run third-party stubtest on Windows or MacOS when needed (#8923) 32 | 33 | Co-authored-by: Alex Waygood 34 | Co-authored-by: Jelle Zijlstra 35 | 36 | ## 0.1.0 (2022-09-12) 37 | 38 | Add stubs for D3DShot (#8652) 39 | 40 | -------------------------------------------------------------------------------- /data/changelogs/DateTimeRange.md: -------------------------------------------------------------------------------- 1 | ## 2.0.0.6 (2023-07-20) 2 | 3 | Add an upstream_repository field to METADATA.toml (#10487) 4 | 5 | Closes: #10478 6 | 7 | ## 2.0.0.5 (2023-03-29) 8 | 9 | Remove unnecessary ellipsis expressions (#9976) 10 | 11 | Ignore flake8 F821 warnings in stub files 12 | 13 | ## 2.0.0.4 (2023-03-27) 14 | 15 | Add defaults for third-party stubs A-D (#9952) 16 | 17 | ## 2.0.0.3 (2023-02-21) 18 | 19 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 20 | 21 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 22 | 23 | ## 2.0.0.2 (2023-02-20) 24 | 25 | [stubsabot] Mark DateTimeRange as obsolete since 2.1.0 (#9765) 26 | 27 | Release: https://pypi.org/pypi/DateTimeRange/2.1.0 28 | Homepage: https://github.com/thombashi/DateTimeRange 29 | Diff: https://github.com/thombashi/DateTimeRange/compare/v2.0.0...v2.1.0 30 | 31 | Co-authored-by: stubsabot <> 32 | 33 | ## 2.0.0.1 (2023-02-15) 34 | 35 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 36 | 37 | ## 2.0.0.0 (2023-02-12) 38 | 39 | Bump DateTimeRange to 2.0.* (#9720) 40 | 41 | Release: https://pypi.org/pypi/DateTimeRange/2.0.0 42 | Homepage: https://github.com/thombashi/DateTimeRange 43 | Diff: https://github.com/thombashi/DateTimeRange/compare/v1.2.0...v2.0.0 44 | 45 | ## 1.2.8 (2022-08-03) 46 | 47 | Add some missing stubs in datetimerange (#8470) 48 | 49 | ## 1.2.7 (2022-07-19) 50 | 51 | Add missing third party modules (#8321) 52 | 53 | Co-authored-by: Alex Waygood 54 | Co-authored-by: hauntsaninja <> 55 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 56 | 57 | ## 1.2.6 (2022-06-26) 58 | 59 | DateTimeRange: complete stubs (#8168) 60 | 61 | Co-authored-by: hauntsaninja <> 62 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 63 | Co-authored-by: Alex Waygood 64 | 65 | ## 1.2.5 (2022-04-16) 66 | 67 | Third-party stubs: import from `collections.abc` where possible (#7637) 68 | 69 | ## 1.2.4 (2022-03-24) 70 | 71 | DateTimeRange: __contains__ accepts datetime.datetime (#7541) 72 | 73 | ## 1.2.3 (2022-02-07) 74 | 75 | Improve some in-place BinOp methods (#7149) 76 | 77 | ## 1.2.1 (2022-01-02) 78 | 79 | Never explicitly inherit from `object` in Python 3-only stubs (#6777) 80 | 81 | ## 1.2.0 (2021-10-12) 82 | 83 | Update remaining versions for third-party stubs (#6094) 84 | 85 | Also remove the python2 markers of packages that don't list Python 2 86 | as supported in the latest version. 87 | 88 | Don't special case version '0.1' 89 | 90 | Co-authored-by: Akuli 91 | 92 | -------------------------------------------------------------------------------- /data/changelogs/Deprecated.md: -------------------------------------------------------------------------------- 1 | ## 1.2.15.20250304 (2025-03-04) 2 | 3 | [Deprecated]: fix missing extra_stacklevel kwarg for deprecated() (#13573) 4 | 5 | ## 1.2.15.20241117 (2024-11-17) 6 | 7 | [Deprecated] Update to 1.2.15 (#13020) 8 | 9 | ## 1.2.9.20240311 (2024-03-11) 10 | 11 | Use PEP 570 syntax in third party stubs (#11554) 12 | 13 | ## 1.2.9.20240106 (2024-01-06) 14 | 15 | Update typing_extensions imports in third-party stubs (#11245) 16 | 17 | ## 1.2.9.3 (2023-07-20) 18 | 19 | Add an upstream_repository field to METADATA.toml (#10487) 20 | 21 | Closes: #10478 22 | 23 | ## 1.2.9.2 (2023-03-27) 24 | 25 | Add defaults for third-party stubs A-D (#9952) 26 | 27 | ## 1.2.9.1 (2023-02-21) 28 | 29 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 30 | 31 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 32 | 33 | ## 1.2.9 (2022-06-26) 34 | 35 | deprecated: complete stubs (#8169) 36 | 37 | Co-authored-by: hauntsaninja <> 38 | 39 | ## 1.2.8 (2022-05-07) 40 | 41 | Import generics from standard modules in all third-party stubs (#7791) 42 | 43 | ## 1.2.7 (2022-04-27) 44 | 45 | Drop Python 2 support in third-party stubs (#7703) 46 | 47 | ## 1.2.6 (2022-04-16) 48 | 49 | Use `TypeAlias` where possible for type aliases (#7630) 50 | 51 | ## 1.2.5 (2022-01-08) 52 | 53 | Use lowercase `type` everywhere (#6853) 54 | 55 | ## 1.2.3 (2021-10-12) 56 | 57 | Add star to all non-0.1 versions (#6146) 58 | 59 | ## 1.2.1 (2021-09-06) 60 | 61 | Update deprecated.sphinx.deprecated signature (#6005) 62 | 63 | The signature was changed in Deprecated 1.2.13. 64 | 65 | -------------------------------------------------------------------------------- /data/changelogs/ExifRead.md: -------------------------------------------------------------------------------- 1 | ## 3.0.0.20250429 (2025-04-29) 2 | 3 | Mark ExifRead as obsolete (#13899) 4 | 5 | ## 3.0.0.20240806 (2024-08-06) 6 | 7 | Bump mypy to 1.11.1 (#12463) 8 | 9 | ## 3.0.0.20240723 (2024-07-23) 10 | 11 | ExifRead: Fix `Reader.__iter__()` (#12402) 12 | 13 | Co-authored-by: Jelle Zijlstra 14 | 15 | ## 3.0.0.20240311 (2024-03-11) 16 | 17 | Use PEP 570 syntax in third party stubs (#11554) 18 | 19 | ## 3.0.0.20240106 (2024-01-06) 20 | 21 | Update typing_extensions imports in third-party stubs (#11245) 22 | 23 | ## 3.0.0.7 (2023-11-24) 24 | 25 | Third-party stubs: remove unused `type: ignore`s (#11063) 26 | 27 | ## 3.0.0.6 (2023-07-20) 28 | 29 | Add an upstream_repository field to METADATA.toml (#10487) 30 | 31 | Closes: #10478 32 | 33 | ## 3.0.0.5 (2023-03-27) 34 | 35 | Add defaults for third-party stubs E-H (#9954) 36 | 37 | ## 3.0.0.4 (2023-02-21) 38 | 39 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 40 | 41 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 42 | 43 | ## 3.0.0.3 (2023-02-15) 44 | 45 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 46 | 47 | ## 3.0.0.2 (2023-02-07) 48 | 49 | Bump mypy to 1.0 (#9684) 50 | 51 | ## 3.0.0.1 (2022-12-27) 52 | 53 | Fully annotate ExifRead (#9403) 54 | 55 | Co-authored-by: Alex Waygood 56 | 57 | ## 3.0.0.0 (2022-12-23) 58 | 59 | Initial ExifRead stubs (#9401) 60 | 61 | -------------------------------------------------------------------------------- /data/changelogs/Flask-Migrate.md: -------------------------------------------------------------------------------- 1 | ## 4.1.0.20250112 (2025-01-12) 2 | 3 | [stubsabot] Bump Flask-Migrate to 4.1.* (#13392) 4 | 5 | Co-authored-by: stubsabot <> 6 | 7 | ## 4.0.0.20241204 (2024-12-04) 8 | 9 | Use SupportsFlush from typeshed to fix TODO (#13166) 10 | 11 | ## 4.0.0.20240311 (2024-03-11) 12 | 13 | Use Python 3.11 for third-party stubtest in CI (#11562) 14 | 15 | ## 4.0.0.20240205 (2024-02-05) 16 | 17 | A new shade of Black (#11362) 18 | 19 | ## 4.0.0.7 (2023-11-10) 20 | 21 | Complete Flask-Migrate and mark as Strict (#10971) 22 | 23 | ## 4.0.0.6 (2023-07-20) 24 | 25 | Add an upstream_repository field to METADATA.toml (#10487) 26 | 27 | Closes: #10478 28 | 29 | ## 4.0.0.5 (2023-07-08) 30 | 31 | Remove `SQLAlchemy` stubs (#10389) 32 | 33 | Co-authored-by: AlexWaygood 34 | 35 | ## 4.0.0.4 (2023-05-10) 36 | 37 | Add `partial_stub` metadata field (#10157) 38 | 39 | ## 4.0.0.3 (2023-03-27) 40 | 41 | Add defaults for third-party stubs E-H (#9954) 42 | 43 | ## 4.0.0.2 (2023-02-21) 44 | 45 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 46 | 47 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 48 | 49 | ## 4.0.0.1 (2023-01-13) 50 | 51 | `Flask-Migrate`: Add `Flask` as a dependency (#9517) 52 | 53 | ## 4.0.0.0 (2022-11-23) 54 | 55 | Add stubs for flask-migrate (#8967) 56 | 57 | Co-authored-by: Alex Waygood 58 | 59 | -------------------------------------------------------------------------------- /data/changelogs/Flask-SQLAlchemy.md: -------------------------------------------------------------------------------- 1 | ## 2.5.9.4 (2023-05-10) 2 | 3 | Add `partial_stub` metadata field (#10157) 4 | 5 | ## 2.5.9.3 (2023-03-27) 6 | 7 | Add defaults for third-party stubs E-H (#9954) 8 | 9 | ## 2.5.9.2 (2023-02-21) 10 | 11 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 12 | 13 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 14 | 15 | ## 2.5.9.1 (2023-01-18) 16 | 17 | Replace `Any` with `Incomplete` in many places (#9558) 18 | 19 | ## 2.5.9 (2022-08-22) 20 | 21 | `Flask-SQLAlchemy`: `session` should be `scoped_session`, not `Session` (#8589) 22 | 23 | ## 2.5.8 (2022-08-20) 24 | 25 | `Flask-SQLAlchemy`: type `session` as `Session` (#8550) 26 | 27 | ## 2.5.7 (2022-08-12) 28 | 29 | Annotate Model in SQLAlchemy (#8535) 30 | 31 | ## 2.5.6 (2022-08-10) 32 | 33 | `Flask-SQLAlchemy`: Make model query non-generic (#8455) 34 | 35 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 36 | Co-authored-by: Alex Waygood 37 | 38 | ## 2.5.5 (2022-07-31) 39 | 40 | Add type hints to `flask_sqlalchemy.model` (#8389) 41 | 42 | ## 2.5.4 (2022-07-31) 43 | 44 | Annotate flask_sqlalchemy.__init__.Pagination (#8390) 45 | 46 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 47 | Co-authored-by: Alex Waygood 48 | 49 | ## 2.5.3 (2022-07-12) 50 | 51 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 52 | 53 | ## 2.5.2 (2022-05-19) 54 | 55 | Import SQLAlchemy types in Flask-SQLAlchemy (#7861) 56 | 57 | ## 2.5.1 (2022-01-22) 58 | 59 | Add __getattr__ to flask-sqlalchemy (#6993) 60 | 61 | The SQLAlchemy class exposes dynamically classes of SQLAlchemy. The exact classes depend on used SQLAlchemy version. 62 | 63 | ## 2.5.0 (2022-01-20) 64 | 65 | Add stubs for Flask-SQLAlchemy (#6946) 66 | 67 | -------------------------------------------------------------------------------- /data/changelogs/Flask-SocketIO.md: -------------------------------------------------------------------------------- 1 | ## 5.5.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 5.5.0.20250321 (2025-03-21) 6 | 7 | Fix incorrect default value for callback (#13678) 8 | 9 | ## 5.5.0.20241227 (2024-12-27) 10 | 11 | [stubsabot] Bump Flask-SocketIO to 5.5.* (#13288) 12 | 13 | Release: https://pypi.org/pypi/Flask-SocketIO/5.5.0 14 | Homepage: https://github.com/miguelgrinberg/flask-socketio 15 | Repository: https://github.com/miguelgrinberg/flask-socketio 16 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/Flask-SocketIO 17 | Diff: https://github.com/miguelgrinberg/flask-socketio/compare/v5.4.1...v5.5.0 18 | 19 | Stubsabot analysis of the diff between the two releases: 20 | - Total lines of Python code added: 28. 21 | - Total lines of Python code deleted: 23. 22 | 23 | ## 5.4.0.20241224 (2024-12-24) 24 | 25 | Flask-socketio 5.5 + add type of kwargs (#13271) 26 | 27 | ## 5.4.0.20241002 (2024-10-02) 28 | 29 | [stubsabot] Bump Flask-SocketIO to 5.4.* (#12712) 30 | 31 | Release: https://pypi.org/pypi/Flask-SocketIO/5.4.0 32 | Homepage: https://github.com/miguelgrinberg/flask-socketio 33 | Repository: https://github.com/miguelgrinberg/flask-socketio 34 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/Flask-SocketIO 35 | Diff: https://github.com/miguelgrinberg/flask-socketio/compare/v5.3.7...v5.4.0 36 | 37 | Stubsabot analysis of the diff between the two releases: 38 | - Total lines of Python code added: 40. 39 | - Total lines of Python code deleted: 11. 40 | 41 | If stubtest fails for this PR: 42 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 43 | - Fix stubtest failures in another PR, then close this PR 44 | 45 | Note that you will need to close and re-open the PR in order to trigger CI 46 | 47 | Co-authored-by: stubsabot <> 48 | 49 | ## 5.3.0.20240617 (2024-06-17) 50 | 51 | Flask-SocketIO: fix type hints (#12140) 52 | 53 | ## 5.3.0.20240331 (2024-03-31) 54 | 55 | Remove bare Incomplete annotations in third-party stubs (#11671) 56 | 57 | ## 5.3.0.20240311 (2024-03-11) 58 | 59 | Use PEP 570 syntax in third party stubs (#11554) 60 | 61 | ## 5.3.0.20240106 (2024-01-06) 62 | 63 | Update typing_extensions imports in third-party stubs (#11245) 64 | 65 | ## 5.3.0.0 (2023-09-25) 66 | 67 | Add stubs for Flask-SocketIO (#10735) 68 | 69 | Co-authored-by: AlexWaygood 70 | 71 | -------------------------------------------------------------------------------- /data/changelogs/Flask.md: -------------------------------------------------------------------------------- 1 | ## 1.1.6 (2021-11-26) 2 | 3 | Add mypy error codes to '# type: ignore' comments (#6379) 4 | 5 | ## 1.1.5 (2021-11-09) 6 | 7 | Fix typos (#6263) 8 | 9 | Found via `codespell -q 3 -L alo,asend,ba,nams,spawnve` 10 | 11 | ## 1.1.4 (2021-10-12) 12 | 13 | Add star to all non-0.1 versions (#6146) 14 | 15 | -------------------------------------------------------------------------------- /data/changelogs/Jetson.GPIO.md: -------------------------------------------------------------------------------- 1 | ## 2.1.0.20240903 (2024-09-03) 2 | 3 | Add stubs for `Jetson.GPIO` (#12108) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/Jinja2.md: -------------------------------------------------------------------------------- 1 | ## 2.11.9 (2021-11-26) 2 | 3 | Add mypy error codes to '# type: ignore' comments (#6379) 4 | 5 | ## 2.11.8 (2021-10-15) 6 | 7 | Use lowercase tuple where possible (#6170) 8 | 9 | ## 2.11.7 (2021-10-12) 10 | 11 | Add star to all non-0.1 versions (#6146) 12 | 13 | -------------------------------------------------------------------------------- /data/changelogs/MarkupSafe.md: -------------------------------------------------------------------------------- 1 | ## 1.1.10 (2021-11-27) 2 | 3 | Improve stubs for sequence types (#6386) 4 | 5 | ## 1.1.9 (2021-11-26) 6 | 7 | Add mypy error codes to '# type: ignore' comments (#6379) 8 | 9 | ## 1.1.8 (2021-10-15) 10 | 11 | Use lowercase tuple where possible (#6170) 12 | 13 | ## 1.1.7 (2021-10-12) 14 | 15 | Add star to all non-0.1 versions (#6146) 16 | 17 | -------------------------------------------------------------------------------- /data/changelogs/PyAutoGUI.md: -------------------------------------------------------------------------------- 1 | ## 0.9.3.20241230 (2024-12-30) 2 | 3 | pyAutoGui: Correct Return Type of position() to Match Actual Behavior (#11267) 4 | 5 | Co-authored-by: Avasam 6 | 7 | ## 0.9.3.20240406 (2024-04-06) 8 | 9 | Depend on Pillow instead of types-Pillow (#11720) 10 | 11 | ## 0.9.3.20240106 (2024-01-06) 12 | 13 | Update typing_extensions imports in third-party stubs (#11245) 14 | 15 | ## 0.9.3.8 (2023-12-19) 16 | 17 | Review `SupportsInt` and `SupportsFloat` usages in 3rd-party stubs (#11003) 18 | 19 | ## 0.9.3.7 (2023-07-20) 20 | 21 | Add an upstream_repository field to METADATA.toml (#10487) 22 | 23 | Closes: #10478 24 | 25 | ## 0.9.3.6 (2023-05-25) 26 | 27 | Update pyautogui (#10209) 28 | 29 | Fixes #10207 30 | 31 | ## 0.9.3.5 (2023-02-21) 32 | 33 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 34 | 35 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 36 | 37 | ## 0.9.3.4 (2023-02-01) 38 | 39 | Add defaults for params and constants in PyAutoGUI (#9639) 40 | 41 | ## 0.9.3.3 (2023-01-31) 42 | 43 | `PyAutoGui`: Add more reexports from pyscreeze (#9634) 44 | 45 | Add remaining methods from pyscreeze 46 | 47 | ## 0.9.3.2 (2022-11-29) 48 | 49 | Mark `PyAutoGUI` as complete (#9300) 50 | 51 | ## 0.9.3.1 (2022-10-04) 52 | 53 | `PyAutoGUI`: Use types from `PyScreeze` (#8824) 54 | 55 | ## 0.9.3 (2022-09-10) 56 | 57 | Run third-party stubtest under xvfb-run (#8719) 58 | 59 | ## 0.9.2 (2022-09-09) 60 | 61 | Complete `pyautogui` stubs (#8684) 62 | 63 | Co-authored-by: Alex Waygood 64 | 65 | ## 0.9.1 (2022-09-03) 66 | 67 | `pyautogui`: just skip stubtest (#8678) 68 | 69 | ## 0.9.0 (2022-09-03) 70 | 71 | Add stubs for `pyautogui` (#8654) 72 | 73 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 74 | Co-authored-by: Alex Waygood 75 | 76 | -------------------------------------------------------------------------------- /data/changelogs/PyScreeze.md: -------------------------------------------------------------------------------- 1 | ## 1.0.1.20250425 (2025-04-25) 2 | 3 | [PyScreeze] Fix locateCenterOnScreen optional arguments (#13852) 4 | 5 | ## 1.0.1.20240822 (2024-08-22) 6 | 7 | [stubsabot] Bump PyScreeze to 1.0.1 (#12566) 8 | 9 | Co-authored-by: stubsabot <> 10 | 11 | ## 0.1.30.20240406 (2024-04-06) 12 | 13 | Depend on Pillow instead of types-Pillow (#11720) 14 | 15 | ## 0.1.30.20240313 (2024-03-13) 16 | 17 | Make stubtest work on pyscreeze if you're using py312 (#11582) 18 | 19 | ## 0.1.30.20240106 (2024-01-06) 20 | 21 | Update typing_extensions imports in third-party stubs (#11245) 22 | 23 | ## 0.1.30.1 (2023-11-30) 24 | 25 | Use `ConvertibleToInt`/`ConvertibleToFloat` in many third-party stubs (#11022) 26 | 27 | Note: this may make the latest version of certain stubs packages incompatible with older versions of mypy and pyright. 28 | 29 | ## 0.1.30.0 (2023-11-14) 30 | 31 | Bump PyScreeze to 0.1.30 (#11025) 32 | 33 | ## 0.1.29.0 (2023-11-11) 34 | 35 | Pin PyScreeze more tightly (#11017) 36 | 37 | To stop the "stubtest failed" bot opening a new issue every night until we have a chance to look at the stubtest failures (stubsabot will just open a PR instead) 38 | 39 | Closes #11016 40 | 41 | ## 0.1.0.10 (2023-09-23) 42 | 43 | Update pyscreeze methods reusing `locateAll` (#10741) 44 | 45 | ## 0.1.0.9 (2023-07-20) 46 | 47 | Add an upstream_repository field to METADATA.toml (#10487) 48 | 49 | Closes: #10478 50 | 51 | ## 0.1.0.8 (2023-05-26) 52 | 53 | Update pyscreeze stubs (#10223) 54 | 55 | ## 0.1.0.7 (2023-02-22) 56 | 57 | Update `Unused` parameters in `stubs/` (#9704) 58 | 59 | * Update _Unused TypeAlias 60 | 61 | * Update `object | None` params 62 | 63 | * Replace unused `object` parameters with `Unused` alias 64 | 65 | ## 0.1.0.6 (2023-02-21) 66 | 67 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 68 | 69 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 70 | 71 | ## 0.1.0.5 (2023-02-07) 72 | 73 | Bump mypy to 1.0 (#9684) 74 | 75 | ## 0.1.0.4 (2023-02-01) 76 | 77 | Bump black to 23.1.0 (#9647) 78 | 79 | ## 0.1.0.3 (2023-02-01) 80 | 81 | Add defaults for params and constants in pyscreeze (#9641) 82 | 83 | ## 0.1.0.2 (2023-01-17) 84 | 85 | Reenable flake8-pyi's Y011 and Y015 (#9551) 86 | 87 | ## 0.1.0.1 (2023-01-14) 88 | 89 | Update various comments now non-types dependencies are allowed (#9527) 90 | 91 | ## 0.1.0.0 (2022-10-03) 92 | 93 | Add pyscreeze stubs (#8823) 94 | 95 | -------------------------------------------------------------------------------- /data/changelogs/RPi.GPIO.md: -------------------------------------------------------------------------------- 1 | ## 0.7.0.20250318 (2025-03-18) 2 | 3 | RPi.GPIO: Fix typo in name of `ChangeFrequency` method (#13634) 4 | 5 | ## 0.7.0.20240314 (2024-03-14) 6 | 7 | [RPi.GPIO] General improvement of stubs. (#11516) 8 | 9 | ## 0.7.0.20240131 (2024-01-31) 10 | 11 | Add stubs for RPi.GPIO (#11345) 12 | 13 | -------------------------------------------------------------------------------- /data/changelogs/Send2Trash.md: -------------------------------------------------------------------------------- 1 | ## 1.8.2.7 (2023-07-25) 2 | 3 | Complete send2trash stubs (#10504) 4 | 5 | ## 1.8.2.6 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 1.8.2.5 (2023-05-10) 12 | 13 | Add `partial_stub` metadata field (#10157) 14 | 15 | ## 1.8.2.4 (2023-02-21) 16 | 17 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 18 | 19 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 20 | 21 | ## 1.8.2.3 (2022-11-16) 22 | 23 | Always use `bool` and `Literal` for Python compat code (#9213) 24 | 25 | ## 1.8.2.2 (2022-11-03) 26 | 27 | Remove `Send2Trash` from `pyright`'s exclude (#8944) 28 | 29 | ## 1.8.2.1 (2022-10-15) 30 | 31 | Use `Incomplete` instead of `Any` in `__getattr__` (#8903) 32 | 33 | ## 1.8.1 (2021-10-12) 34 | 35 | Add star to all non-0.1 versions (#6146) 36 | 37 | ## 1.8.0 (2021-09-03) 38 | 39 | Create send2trash stubs (#6000) 40 | 41 | -------------------------------------------------------------------------------- /data/changelogs/TgCrypto.md: -------------------------------------------------------------------------------- 1 | ## 1.2.0.20240802 (2024-08-02) 2 | 3 | Add stubs for `TgCrypto` (#12469) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/WTForms.md: -------------------------------------------------------------------------------- 1 | ## 3.2.1.20250602 (2025-06-02) 2 | 3 | Update mypy to 1.16.0 (#14194) 4 | 5 | Co-authored-by: Sebastian Rittau 6 | Co-authored-by: Alex Waygood 7 | 8 | ## 3.2.1.20250401 (2025-04-01) 9 | 10 | Add `__all__` part 2 (#13719) 11 | 12 | --------- 13 | 14 | Co-authored-by: Avasam 15 | 16 | ## 3.2.1.20250304 (2025-03-04) 17 | 18 | Enable Ruff PLC (Pylint Convention) (#13306) 19 | 20 | ## 3.2.1.20241221 (2024-12-21) 21 | 22 | Update to mypy 1.14 (#13272) 23 | 24 | ## 3.2.1.20241025 (2024-10-25) 25 | 26 | WTForms: Form errors no longer use `None` as a special key (#12877) 27 | 28 | This also fixes incorrect `error` attributes on `FieldList`/`FormField` 29 | 30 | ## 3.2.1.20241023 (2024-10-23) 31 | 32 | WTForms: Fix incorrect `Form` constructor return type for pyright (#12875) 33 | 34 | ## 3.2.1.20241022 (2024-10-22) 35 | 36 | Bump WTForms to ~= 3.2.1 (#12867) 37 | 38 | Bump WTForms to 3.2.* (#12865) 39 | 40 | Add missing `__all__` declarations 41 | 42 | ## 3.1.0.20240425 (2024-04-25) 43 | 44 | Bump pyright to v1.1.360 (#11810) 45 | 46 | ## 3.1.0.20240311 (2024-03-11) 47 | 48 | Use PEP 570 syntax in third party stubs (#11554) 49 | 50 | ## 3.1.0.20240301 (2024-03-01) 51 | 52 | Fix invalid noqa comments and poorly formatted type ignores (#11497) 53 | 54 | ## 3.1.0.20240205 (2024-02-05) 55 | 56 | A new shade of Black (#11362) 57 | 58 | ## 3.1.0.20240106 (2024-01-06) 59 | 60 | Update typing_extensions imports in third-party stubs (#11245) 61 | 62 | ## 3.1.0.2 (2023-11-24) 63 | 64 | Fix typos in docs and comments (#11064) 65 | 66 | ## 3.1.0.1 (2023-11-11) 67 | 68 | third-party: make some protocol params pos-only (#11006) 69 | 70 | ## 3.1.0.0 (2023-10-12) 71 | 72 | Bump WTForms to 3.1.* (#10868) 73 | 74 | Co-authored-by: sobolevn 75 | 76 | ## 3.0.0.0 (2023-09-29) 77 | 78 | Add stubs for WTForms (#10557) 79 | 80 | Co-authored-by: Jelle Zijlstra 81 | 82 | -------------------------------------------------------------------------------- /data/changelogs/WebOb.md: -------------------------------------------------------------------------------- 1 | ## 1.8.0.20250522 (2025-05-22) 2 | 3 | [webob-stubs] Fix _Serializer protocol (#14116) 4 | 5 | ## 1.8.0.20250319 (2025-03-19) 6 | 7 | [WebOb] Add cgi_FieldStorage.make_file on Python 3.13+ (#13654) 8 | 9 | ## 1.8.0.20250226 (2025-02-26) 10 | 11 | WebOb: Fix various issues and refactor some things (#13487) 12 | 13 | ## 1.8.0.20241221 (2024-12-21) 14 | 15 | Update to mypy 1.14 (#13272) 16 | 17 | ## 1.8.0.20241205 (2024-12-05) 18 | 19 | WebOb: Fixes `webob.exc.status_map` (#13195) 20 | 21 | ## 1.8.0.20240822 (2024-08-22) 22 | 23 | Using precise code for `pyright: ignore` and re-enabling various pyright tests (#12576) 24 | 25 | ## 1.8.0.20240520 (2024-05-20) 26 | 27 | Add 3.13 to our CI (#11926) 28 | 29 | ## 1.8.0.20240425 (2024-04-25) 30 | 31 | Bump pyright to v1.1.360 (#11810) 32 | 33 | ## 1.8.0.20240311 (2024-03-11) 34 | 35 | Replace Flake8 checks with Ruff (except for flake8-pyi) (#11496) 36 | 37 | Co-authored-by: Alex Waygood 38 | 39 | Use PEP 570 syntax in third party stubs (#11554) 40 | 41 | ## 1.8.0.20240301 (2024-03-01) 42 | 43 | WebOb: Complete the stubs and activate stricter pyright config (#11460) 44 | 45 | Fix invalid noqa comments and poorly formatted type ignores (#11497) 46 | 47 | ## 1.8.0.20240128 (2024-01-28) 48 | 49 | WebOb: CacheControl descriptors are always allowed to accept `None` (#11288) 50 | 51 | ## 1.8.0.20240106 (2024-01-06) 52 | 53 | Update typing_extensions imports in third-party stubs (#11245) 54 | 55 | ## 1.8.0.5 (2023-11-24) 56 | 57 | Fix typos in docs and comments (#11064) 58 | 59 | Third-party stubs: remove unused `type: ignore`s (#11063) 60 | 61 | ## 1.8.0.4 (2023-11-11) 62 | 63 | third-party: make some protocol params pos-only (#11006) 64 | 65 | ## 1.8.0.3 (2023-10-27) 66 | 67 | Finish stubs for `webob.cookies` and improve `samesite` type (#10927) 68 | 69 | ## 1.8.0.2 (2023-08-13) 70 | 71 | Fill in all missing `upstream_repository` fields (#10571) 72 | 73 | Co-authored-by: Alex Waygood 74 | 75 | ## 1.8.0.1 (2023-06-27) 76 | 77 | Fixes incorrect return value for `MultiDict.get` without `default` param (#10367) 78 | 79 | ## 1.8.0.0 (2023-06-18) 80 | 81 | Add stubs for WebOb (#9874) 82 | 83 | Co-authored-by: Alex Waygood 84 | Co-authored-by: Jelle Zijlstra 85 | 86 | -------------------------------------------------------------------------------- /data/changelogs/Werkzeug.md: -------------------------------------------------------------------------------- 1 | ## 1.0.9 (2021-11-26) 2 | 3 | Add mypy error codes to '# type: ignore' comments (#6379) 4 | 5 | ## 1.0.8 (2021-11-23) 6 | 7 | Reduce use of deprecated `typing` aliases (#6358) 8 | 9 | ## 1.0.7 (2021-10-15) 10 | 11 | Use lowercase tuple where possible (#6170) 12 | 13 | ## 1.0.6 (2021-10-12) 14 | 15 | Add star to all non-0.1 versions (#6146) 16 | 17 | -------------------------------------------------------------------------------- /data/changelogs/annoy.md: -------------------------------------------------------------------------------- 1 | ## 1.17.8.4 (2023-06-29) 2 | 3 | [stubsabot] Mark annoy as obsolete since 1.17.1 (#10374) 4 | 5 | Release: https://pypi.org/pypi/annoy/1.17.1 6 | Homepage: https://github.com/spotify/annoy 7 | Diff: https://github.com/spotify/annoy/compare/v1.17.0...v1.17.1 8 | 9 | Co-authored-by: stubsabot <> 10 | 11 | ## 1.17.8.3 (2023-03-27) 12 | 13 | Add defaults for third-party stubs A-D (#9952) 14 | 15 | ## 1.17.8.2 (2023-02-21) 16 | 17 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 18 | 19 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 20 | 21 | ## 1.17.8.1 (2022-11-06) 22 | 23 | Remove `annoy` from pyright excludelist (#9114) 24 | 25 | ## 1.17.8 (2022-07-19) 26 | 27 | Add missing third party modules (#8321) 28 | 29 | Co-authored-by: Alex Waygood 30 | Co-authored-by: hauntsaninja <> 31 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 32 | 33 | ## 1.17.7 (2022-06-26) 34 | 35 | Check missing definitions for several packages (#8167) 36 | 37 | Co-authored-by: hauntsaninja <> 38 | 39 | ## 1.17.6 (2022-04-16) 40 | 41 | Use `TypeAlias` where possible for type aliases (#7630) 42 | 43 | ## 1.17.4 (2021-10-12) 44 | 45 | Add star to all non-0.1 versions (#6146) 46 | 47 | -------------------------------------------------------------------------------- /data/changelogs/antlr4-python3-runtime.md: -------------------------------------------------------------------------------- 1 | ## 4.13.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 4.13.0.20240519 (2024-05-19) 6 | 7 | Use assignment instead of annotation in third party enums (#11957) 8 | 9 | ## 4.13.0.20240331 (2024-03-31) 10 | 11 | Remove bare Incomplete annotations in third-party stubs (#11671) 12 | 13 | ## 4.13.0.20240116 (2024-01-16) 14 | 15 | Add stubs for antlr4 (#11192) 16 | 17 | -------------------------------------------------------------------------------- /data/changelogs/appdirs.md: -------------------------------------------------------------------------------- 1 | ## 1.4.3.5 (2023-03-14) 2 | 3 | Fix typos in `extra_description` fields (#9883) 4 | 5 | ## 1.4.3.4 (2023-03-13) 6 | 7 | Mark `types-appdirs` as no longer updated (#9877) 8 | 9 | ## 1.4.3.3 (2023-03-13) 10 | 11 | appdirs: improve annotation for appauthor argument (#9876) 12 | 13 | Fix: Missing annotation for appauthor argument 14 | 15 | According to the appdirs doc string and code [1], the appauthor argument in all functions supports False as argument value to skip insertion of author directories. 16 | 17 | [1] https://github.com/ActiveState/appdirs/blob/master/appdirs.py#L52 18 | 19 | ## 1.4.3.2 (2023-02-21) 20 | 21 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 22 | 23 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 24 | 25 | ## 1.4.3.1 (2022-11-16) 26 | 27 | Always use `bool` and `Literal` for Python compat code (#9213) 28 | 29 | ## 1.4.3 (2022-06-25) 30 | 31 | appdirs, tabulate, termcolor, xmltodict: check missing defs (#8156) 32 | 33 | complete termcolor, xmltodict 34 | 35 | ## 1.4.1 (2021-10-12) 36 | 37 | Add star to all non-0.1 versions (#6146) 38 | 39 | ## 1.4.0 (2021-09-20) 40 | 41 | Create stubs for appdirs (#6047) 42 | 43 | -------------------------------------------------------------------------------- /data/changelogs/assertpy.md: -------------------------------------------------------------------------------- 1 | ## 1.1.0.20250502 (2025-05-02) 2 | 3 | Correct type of `kwargs` in `assertpy.exception.ExceptionMixin.when_called_with` (#13903) 4 | 5 | The keys of `kwargs` dicts are always strings, the type hint is for the values, 6 | which in this case could be anything. 7 | 8 | ## 1.1.0.20250407 (2025-04-07) 9 | 10 | Mark internal stuff in allowlist for `assertpy` (#13802) 11 | 12 | Co-authored-by: Jelle Zijlstra 13 | 14 | ## 1.1.0.20240712 (2024-07-12) 15 | 16 | Update assertpy/string.pyi to correct type of pattern arg (#12235) 17 | 18 | The methods requires the pattern arg to be of type str, not Pattern. 19 | 20 | Signed-off-by: BJ Hargrave 21 | 22 | ## 1.1.0.20240703 (2024-07-03) 23 | 24 | Update assertpy/extracting.pyi so that kwargs are not required (#12229) 25 | 26 | The recent change to better type the `sort` and `filter` kwargs had the 27 | side effect of making them required. So we fix to supply a default 28 | argument. 29 | 30 | Signed-off-by: BJ Hargrave 31 | 32 | ## 1.1.0.20240627 (2024-06-27) 33 | 34 | assertpy: improve type for extracting (#12224) 35 | 36 | Signed-off-by: BJ Hargrave 37 | Co-authored-by: hauntsaninja 38 | 39 | ## 1.1.0.20240516 (2024-05-16) 40 | 41 | Add stubs for `assertpy` (#11916) 42 | 43 | -------------------------------------------------------------------------------- /data/changelogs/atheris.md: -------------------------------------------------------------------------------- 1 | ## 2.3.0.20250306 (2025-03-06) 2 | 3 | Update tools versions in `stubtest` workflow (#13582) 4 | 5 | ## 2.3.0.20240831 (2024-08-31) 6 | 7 | Added types for atheris (#12462) 8 | 9 | -------------------------------------------------------------------------------- /data/changelogs/atomicwrites.md: -------------------------------------------------------------------------------- 1 | ## 1.4.5.1 (2022-10-17) 2 | 3 | Mark `atomicwrites` as no longer updated (#8912) 4 | 5 | [`atomicwrites`](https://github.com/untitaker/python-atomicwrites) is a package that's only really useful for Python 2/3 compatibility. It's now deprecated, archived, and unmaintained. Prior to #8883 a few days ago, marking the stubs as complete, the typeshed stubs hadn't received any significant updates for several years. 6 | 7 | I propose we mark the stubs as no longer updated, and then remove them. 8 | 9 | ## 1.4.5 (2022-05-07) 10 | 11 | Import generics from standard modules in all third-party stubs (#7791) 12 | 13 | ## 1.4.4 (2022-04-27) 14 | 15 | Remove Python 2 support from atomicwrites (#7712) 16 | 17 | ## 1.4.3 (2022-01-08) 18 | 19 | Use lowercase `type` everywhere (#6853) 20 | 21 | ## 1.4.1 (2021-10-12) 22 | 23 | Add star to all non-0.1 versions (#6146) 24 | 25 | ## 1.4.0 (2021-09-19) 26 | 27 | Update third-party package versions (#5996) 28 | 29 | -------------------------------------------------------------------------------- /data/changelogs/auth0-python.md: -------------------------------------------------------------------------------- 1 | ## 4.9.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 4.9.0.20250425 (2025-04-25) 6 | 7 | [auth0-python] Add async functions to AsyncAuth0 (#13799) 8 | 9 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 10 | Co-authored-by: Avasam 11 | 12 | ## 4.9.0.20250416 (2025-04-16) 13 | 14 | auth0-python solve stubtest_allowlist entries (#13827) 15 | 16 | auth0-python: Cleanup re-exports leftovers from stubgen (#13828) 17 | 18 | ## 4.9.0.20250413 (2025-04-13) 19 | 20 | Bump auth0-python to 4.9.* (#13803) 21 | 22 | ## 4.8.0.20250404 (2025-04-04) 23 | 24 | [auth0-python] Add auth0-python stubs (#13716) 25 | 26 | -------------------------------------------------------------------------------- /data/changelogs/backports.ssl_match_hostname.md: -------------------------------------------------------------------------------- 1 | ## 3.7.4.4 (2023-03-14) 2 | 3 | Mark stubs for backports.ssl_match_hostname as no longer updated (#9882) 4 | 5 | See #9843 for discussion 6 | 7 | ## 3.7.4.3 (2023-02-21) 8 | 9 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 10 | 11 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 12 | 13 | ## 3.7.4.2 (2022-11-07) 14 | 15 | Remove `ssl_match_hostname` from pyright exclude (#9116) 16 | 17 | ## 3.7.4.1 (2022-10-15) 18 | 19 | Use `Incomplete` instead of `Any` in `__getattr__` (#8903) 20 | 21 | ## 3.7.4 (2022-06-26) 22 | 23 | Check missing definitions for several packages (#8167) 24 | 25 | Co-authored-by: hauntsaninja <> 26 | 27 | ## 3.7.3 (2022-04-27) 28 | 29 | Drop Python 2 support in third-party stubs (#7703) 30 | 31 | ## 3.7.1 (2021-10-12) 32 | 33 | Add star to all non-0.1 versions (#6146) 34 | 35 | ## 3.7.0 (2021-09-19) 36 | 37 | Fix distribution name backports.ssl_match_hostname (#5997) 38 | 39 | Bump version number to latest version available on pypi 40 | 41 | Turn backports.ssl_match_hostname into a package to match upstream 42 | 43 | -------------------------------------------------------------------------------- /data/changelogs/backports_abc.md: -------------------------------------------------------------------------------- 1 | ## 0.5.1 (2021-10-12) 2 | 3 | Add star to all non-0.1 versions (#6146) 4 | 5 | ## 0.5.0 (2021-09-19) 6 | 7 | Update third-party package versions (#5996) 8 | 9 | -------------------------------------------------------------------------------- /data/changelogs/binaryornot.md: -------------------------------------------------------------------------------- 1 | ## 0.4.0.20250507 (2025-05-07) 2 | 3 | Add binaryornot stubs (#13920) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/boltons.md: -------------------------------------------------------------------------------- 1 | ## 25.0.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 25.0.0.20250326 (2025-03-26) 6 | 7 | Add `__all__` (#13704) 8 | 9 | ## 25.0.0.20250304 (2025-03-04) 10 | 11 | Drop flake8-noqa and remove workarounds to work with Ruff (#13571) 12 | 13 | Enable Ruff PLC (Pylint Convention) (#13306) 14 | 15 | ## 25.0.0.20250223 (2025-02-23) 16 | 17 | Updates to boltons types (#13517) 18 | 19 | ## 25.0.0.20250210 (2025-02-10) 20 | 21 | Bump boltons to 25.0.* (#13481) 22 | 23 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 24 | 25 | ## 24.1.0.20241221 (2024-12-21) 26 | 27 | Update to mypy 1.14 (#13272) 28 | 29 | ## 24.1.0.20241113 (2024-11-13) 30 | 31 | Bump boltons to 24.1.* (#12970) 32 | 33 | Co-authored-by: Alex Waygood 34 | 35 | ## 24.0.0.20240423 (2024-04-23) 36 | 37 | Bump boltons to 24.0.* (#11804) 38 | 39 | ## 23.1.0.20240331 (2024-03-31) 40 | 41 | Remove bare Incomplete annotations in third-party stubs (#11671) 42 | 43 | ## 23.1.0.20240310 (2024-03-10) 44 | 45 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 46 | 47 | Co-authored-by: Alex Waygood 48 | 49 | ## 23.1.0.20240106 (2024-01-06) 50 | 51 | Update typing_extensions imports in third-party stubs (#11245) 52 | 53 | ## 23.1.0.0 (2023-11-30) 54 | 55 | Bump boltons to 23.1.* (#11083) 56 | 57 | ## 23.0.0.2 (2023-11-22) 58 | 59 | third-party stubs: Add several missing `__del__` methods (#11054) 60 | 61 | ## 23.0.0.1 (2023-07-20) 62 | 63 | Add an upstream_repository field to METADATA.toml (#10487) 64 | 65 | Closes: #10478 66 | 67 | ## 23.0.0.0 (2023-06-07) 68 | 69 | add boltons (#8892) 70 | 71 | Co-authored-by: Andrey Maslennikov 72 | Co-authored-by: Alex Waygood 73 | Co-authored-by: Jelle Zijlstra 74 | 75 | -------------------------------------------------------------------------------- /data/changelogs/capturer.md: -------------------------------------------------------------------------------- 1 | ## 3.0.0.20240408 (2024-04-08) 2 | 3 | Add stubs for package capturer (#11551) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/certifi.md: -------------------------------------------------------------------------------- 1 | ## 2021.10.8.3 (2022-06-09) 2 | 3 | certifi: mark as obsolete since 2022.5.18.1 (#8045) 4 | 5 | ## 2021.10.8.2 (2022-04-27) 6 | 7 | Drop Python 2 support in third-party stubs (#7703) 8 | 9 | ## 2021.10.8.0 (2021-10-12) 10 | 11 | Add star to all non-0.1 versions (#6146) 12 | 13 | ## 2020.4.0 (2021-09-01) 14 | 15 | Add certifi.contents() (#5989) 16 | 17 | Added in commit: 18 | https://github.com/certifi/python-certifi/commit/3e585603ff265552c2e137d064ea092d51332602 19 | 20 | Available since version 2020.04.05. 21 | 22 | -------------------------------------------------------------------------------- /data/changelogs/characteristic.md: -------------------------------------------------------------------------------- 1 | ## 14.3.7 (2022-06-08) 2 | 3 | Mark characteristic as no longer updated (#8038) 4 | 5 | Part of #8012 6 | 7 | ## 14.3.6 (2022-06-06) 8 | 9 | Always use `TypeAlias` when assigning to `Any` (#8021) 10 | 11 | ## 14.3.5 (2022-05-07) 12 | 13 | Import generics from standard modules in all third-party stubs (#7791) 14 | 15 | ## 14.3.4 (2022-04-27) 16 | 17 | Drop Python 2 support in third-party stubs (#7703) 18 | 19 | ## 14.3.3 (2022-01-08) 20 | 21 | Use lowercase `type` everywhere (#6853) 22 | 23 | ## 14.3.1 (2021-10-12) 24 | 25 | Add star to all non-0.1 versions (#6146) 26 | 27 | ## 14.3.0 (2021-09-19) 28 | 29 | Update third-party package versions (#5996) 30 | 31 | -------------------------------------------------------------------------------- /data/changelogs/chardet.md: -------------------------------------------------------------------------------- 1 | ## 5.0.4.6 (2023-05-10) 2 | 3 | Add `partial_stub` metadata field (#10157) 4 | 5 | ## 5.0.4.5 (2023-04-29) 6 | 7 | chardet: UniversalDetector.feed accepts bytearray (#10107) 8 | 9 | Technically it accepts any buffer, but the inline type annotations 10 | now say bytes | bytearray, so let's stick to that. 11 | 12 | Part of #9006 13 | 14 | ## 5.0.4.4 (2023-04-24) 15 | 16 | Simplify `chardet` type imports (#10080) 17 | 18 | ## 5.0.4.3 (2023-03-27) 19 | 20 | Add defaults for third-party stubs A-D (#9952) 21 | 22 | ## 5.0.4.2 (2023-02-21) 23 | 24 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 25 | 26 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 27 | 28 | ## 5.0.4.1 (2022-12-02) 29 | 30 | [stubsabot] Mark chardet as obsolete since 5.1.0 (#9318) 31 | 32 | Release: https://pypi.org/pypi/chardet/5.1.0 33 | Homepage: https://github.com/chardet/chardet 34 | Diff: https://github.com/chardet/chardet/compare/5.0.0...5.1.0 35 | 36 | Co-authored-by: stubsabot <> 37 | 38 | ## 5.0.4 (2022-08-10) 39 | 40 | Remove a few unused `TypedDict`s (#8522) 41 | 42 | ## 5.0.3 (2022-07-25) 43 | 44 | Add missing `__version__` to `chardet.__init__` (#8401) 45 | 46 | ## 5.0.2 (2022-07-12) 47 | 48 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 49 | 50 | ## 5.0.1 (2022-06-25) 51 | 52 | chardet: improve stubs (#8155) 53 | 54 | ## 5.0.0 (2022-06-25) 55 | 56 | [stubsabot] Bump chardet to 5.0.* (#8150) 57 | 58 | Co-authored-by: hauntsaninja <> 59 | 60 | ## 4.0.4 (2022-04-27) 61 | 62 | Drop Python 2 support from chardet (#7708) 63 | 64 | ## 4.0.2 (2021-12-28) 65 | 66 | Use PEP 585 syntax wherever possible (#6717) 67 | 68 | ## 4.0.1 (2021-10-12) 69 | 70 | Add star to all non-0.1 versions (#6146) 71 | 72 | ## 4.0.0 (2021-09-19) 73 | 74 | Update third-party package versions (#5996) 75 | 76 | -------------------------------------------------------------------------------- /data/changelogs/chevron.md: -------------------------------------------------------------------------------- 1 | ## 0.14.2.20250103 (2025-01-03) 2 | 3 | Enable Ruff EXE (flake8-executable) (#13346) 4 | 5 | ## 0.14.2.20240310 (2024-03-10) 6 | 7 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 8 | 9 | Co-authored-by: Alex Waygood 10 | 11 | ## 0.14.2.20240106 (2024-01-06) 12 | 13 | Update typing_extensions imports in third-party stubs (#11245) 14 | 15 | ## 0.14.2.5 (2023-07-20) 16 | 17 | Add an upstream_repository field to METADATA.toml (#10487) 18 | 19 | Closes: #10478 20 | 21 | ## 0.14.2.4 (2023-03-27) 22 | 23 | Add defaults for third-party stubs A-D (#9952) 24 | 25 | ## 0.14.2.3 (2023-02-21) 26 | 27 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 28 | 29 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 30 | 31 | ## 0.14.2.2 (2023-02-09) 32 | 33 | Use `_typeshed.FileDescriptorOrPath` in stubs (#9695) 34 | 35 | ## 0.14.2.1 (2023-02-07) 36 | 37 | Bump mypy to 1.0 (#9684) 38 | 39 | ## 0.14.2 (2022-04-16) 40 | 41 | Third-party stubs: import from `collections.abc` where possible (#7637) 42 | 43 | ## 0.14.1 (2022-04-16) 44 | 45 | Use `TypeAlias` where possible for type aliases (#7630) 46 | 47 | ## 0.14.0 (2022-02-05) 48 | 49 | Add stubs for `chevron` package (#7139) 50 | 51 | Co-authored-by: Akuli 52 | 53 | -------------------------------------------------------------------------------- /data/changelogs/click-default-group.md: -------------------------------------------------------------------------------- 1 | ## 1.2.0.20250513 (2025-05-13) 2 | 3 | [click_default_group] default_cmd_name argument should be named default (#14023) 4 | 5 | ## 1.2.0.20250425 (2025-04-25) 6 | 7 | Expand args and kwargs for `click_default_group` methods (#13873) 8 | 9 | ## 1.2.0.20250413 (2025-04-13) 10 | 11 | Import names from typing directly rather than importing module (#13761) 12 | 13 | ## 1.2.0.20250322 (2025-03-22) 14 | 15 | Add `__all__` to `click-default-group` (#13694) 16 | 17 | ## 1.2.0.20241221 (2024-12-21) 18 | 19 | Update to mypy 1.14 (#13272) 20 | 21 | ## 1.2.0.0 (2023-07-22) 22 | 23 | Add stubs for click-default-group (#9304) 24 | 25 | Co-authored-by: AlexWaygood 26 | Co-authored-by: Avasam 27 | 28 | -------------------------------------------------------------------------------- /data/changelogs/click-log.md: -------------------------------------------------------------------------------- 1 | ## 0.4.0.20250413 (2025-04-13) 2 | 3 | Import names from typing directly rather than importing module (#13761) 4 | 5 | ## 0.4.0.20241229 (2024-12-29) 6 | 7 | Add stubs for "click-log" package (#13207) 8 | 9 | -------------------------------------------------------------------------------- /data/changelogs/click-spinner.md: -------------------------------------------------------------------------------- 1 | ## 0.1.13.20250510 (2025-05-10) 2 | 3 | click-spinner: Replace `Any` return type (#13970) 4 | 5 | ## 0.1.13.20240311 (2024-03-11) 6 | 7 | Use PEP 570 syntax in third party stubs (#11554) 8 | 9 | ## 0.1.13.20240106 (2024-01-06) 10 | 11 | Update typing_extensions imports in third-party stubs (#11245) 12 | 13 | ## 0.1.13.6 (2023-11-11) 14 | 15 | third-party: make some protocol params pos-only (#11006) 16 | 17 | ## 0.1.13.5 (2023-07-20) 18 | 19 | Add an upstream_repository field to METADATA.toml (#10487) 20 | 21 | Closes: #10478 22 | 23 | ## 0.1.13.4 (2023-03-27) 24 | 25 | Add defaults for third-party stubs A-D (#9952) 26 | 27 | ## 0.1.13.3 (2023-02-21) 28 | 29 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 30 | 31 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 32 | 33 | ## 0.1.13.2 (2023-02-15) 34 | 35 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 36 | 37 | ## 0.1.13.1 (2022-11-17) 38 | 39 | click_spinner: make arguments optional (#9220) 40 | 41 | Matches the code, where these arguments are not required: https://github.com/click-contrib/click-spinner/blob/master/click_spinner/__init__.py 42 | 43 | ## 0.1.13 (2022-07-19) 44 | 45 | Add missing third party modules (#8321) 46 | 47 | Co-authored-by: Alex Waygood 48 | Co-authored-by: hauntsaninja <> 49 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 50 | 51 | ## 0.1.12 (2022-06-26) 52 | 53 | Check missing definitions for several packages (#8167) 54 | 55 | Co-authored-by: hauntsaninja <> 56 | 57 | ## 0.1.11 (2022-04-27) 58 | 59 | Drop Python 2 support from click-spinner (#7710) 60 | 61 | ## 0.1.10 (2022-02-03) 62 | 63 | Improve `__enter__` & constructor methods (#7114) 64 | 65 | ## 0.1.9 (2022-01-08) 66 | 67 | Use lowercase `type` everywhere (#6853) 68 | 69 | ## 0.1.7 (2021-12-17) 70 | 71 | Always import Protocol from typing in stubs (#6617) 72 | 73 | ## 0.1.6 (2021-10-12) 74 | 75 | Add star to all non-0.1 versions (#6146) 76 | 77 | -------------------------------------------------------------------------------- /data/changelogs/click-web.md: -------------------------------------------------------------------------------- 1 | ## 0.8.0.20250511 (2025-05-11) 2 | 3 | [click-web] Fixes after click 8.2.0 release (#14001) 4 | 5 | ## 0.8.0.20250413 (2025-04-13) 6 | 7 | Import names from typing directly rather than importing module (#13761) 8 | 9 | ## 0.8.0.20250412 (2025-04-12) 10 | 11 | Complete stubs for `click-web` (#13806) 12 | 13 | ## 0.8.0.20241229 (2024-12-29) 14 | 15 | Add stubs for "click-web" package (#13208) 16 | 17 | -------------------------------------------------------------------------------- /data/changelogs/click.md: -------------------------------------------------------------------------------- 1 | ## 7.1.8 (2021-11-23) 2 | 3 | Reduce use of deprecated `typing` aliases (#6358) 4 | 5 | ## 7.1.7 (2021-10-15) 6 | 7 | Use lowercase tuple where possible (#6170) 8 | 9 | ## 7.1.6 (2021-10-12) 10 | 11 | Add star to all non-0.1 versions (#6146) 12 | 13 | -------------------------------------------------------------------------------- /data/changelogs/commonmark.md: -------------------------------------------------------------------------------- 1 | ## 0.9.2.20250330 (2025-03-29) 2 | 3 | Mark commonmark as no_longer_updated (#13726) 4 | 5 | ## 0.9.2.20250328 (2025-03-28) 6 | 7 | Complete stubs for `commonmark` (#13724) 8 | 9 | ## 0.9.2.20250326 (2025-03-26) 10 | 11 | Improve stubs for `commonmark` (#13681) 12 | 13 | ## 0.9.2.20240106 (2024-01-06) 14 | 15 | Update typing_extensions imports in third-party stubs (#11245) 16 | 17 | ## 0.9.2.4 (2023-07-20) 18 | 19 | Add an upstream_repository field to METADATA.toml (#10487) 20 | 21 | Closes: #10478 22 | 23 | ## 0.9.2.3 (2023-05-10) 24 | 25 | Add `partial_stub` metadata field (#10157) 26 | 27 | ## 0.9.2.2 (2023-02-21) 28 | 29 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 30 | 31 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 32 | 33 | ## 0.9.2.1 (2023-01-18) 34 | 35 | Replace `Any` with `Incomplete` in many places (#9558) 36 | 37 | ## 0.9.1 (2021-10-12) 38 | 39 | Add star to all non-0.1 versions (#6146) 40 | 41 | -------------------------------------------------------------------------------- /data/changelogs/console-menu.md: -------------------------------------------------------------------------------- 1 | ## 0.8.0.20250326 (2025-03-26) 2 | 3 | Add `__all__` (#13704) 4 | 5 | ## 0.8.0.20241221 (2024-12-21) 6 | 7 | Update to mypy 1.14 (#13272) 8 | 9 | ## 0.8.0.3 (2023-07-20) 10 | 11 | Add an upstream_repository field to METADATA.toml (#10487) 12 | 13 | Closes: #10478 14 | 15 | ## 0.8.0.2 (2023-03-27) 16 | 17 | Add defaults for third-party stubs A-D (#9952) 18 | 19 | ## 0.8.0.1 (2023-03-08) 20 | 21 | Replace `object | None` with `object` (#9857) 22 | 23 | All types, including `None`, are a subtype of `object`, so `None` is redundant in the union `object | None`. 24 | 25 | ## 0.8.0.0 (2023-03-06) 26 | 27 | Update `console-menu` stubs for v0.8 (#9845) 28 | 29 | ## 0.7.0.3 (2023-02-21) 30 | 31 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 32 | 33 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 34 | 35 | ## 0.7.0.2 (2023-01-18) 36 | 37 | Replace `Any` with `Incomplete` in many places (#9565) 38 | 39 | ## 0.7.0.1 (2022-10-20) 40 | 41 | Remove `consolemenu` from `pyright`'s exclude (#8940) 42 | 43 | ## 0.7.0.0 (2022-10-03) 44 | 45 | Add type stubs for package console-menu (#8820) 46 | 47 | Co-authored-by: Jelle Zijlstra 48 | 49 | -------------------------------------------------------------------------------- /data/changelogs/contextvars.md: -------------------------------------------------------------------------------- 1 | ## 2.4.7.3 (2023-07-07) 2 | 3 | Mark contextvars stubs as no longer updated (#10419) 4 | 5 | ## 2.4.7.2 (2023-03-27) 6 | 7 | contextvars: widen return value of ContextVar.get(default) (#9953) 8 | 9 | ## 2.4.7.1 (2023-02-21) 10 | 11 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 12 | 13 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 14 | 15 | ## 2.4.7 (2022-06-26) 16 | 17 | Check missing definitions for several packages (#8167) 18 | 19 | Co-authored-by: hauntsaninja <> 20 | 21 | ## 2.4.6 (2022-05-27) 22 | 23 | constructors: Fix defaulted TypeVars (#7965) 24 | 25 | From the list in https://github.com/microsoft/pyright/issues/3501 26 | 27 | ## 2.4.5 (2022-04-16) 28 | 29 | Third-party stubs: import from `collections.abc` where possible (#7637) 30 | 31 | ## 2.4.4 (2022-02-22) 32 | 33 | Correct several positional-only differences in third-party stubs (#7352) 34 | 35 | ## 2.4.3 (2022-02-21) 36 | 37 | contextvars, pycurl: make classes final (#7334) 38 | 39 | ## 2.4.2 (2022-01-27) 40 | 41 | Improve `contextvars.Context` (#7052) 42 | 43 | Similar changes to the ones @sobolevn made in #6942 44 | 45 | ## 2.4.0 (2021-10-12) 46 | 47 | Update remaining versions for third-party stubs (#6094) 48 | 49 | Also remove the python2 markers of packages that don't list Python 2 50 | as supported in the latest version. 51 | 52 | Don't special case version '0.1' 53 | 54 | Co-authored-by: Akuli 55 | 56 | -------------------------------------------------------------------------------- /data/changelogs/corus.md: -------------------------------------------------------------------------------- 1 | ## 0.10.0.20250527 (2025-05-27) 2 | 3 | [corus] set `no_longer_updated` (#14160) 4 | 5 | Revert "Remove corus stubs" (#14158) 6 | 7 | Remove corus stubs (#14153) 8 | 9 | ## 0.10.0.20250516 (2025-05-16) 10 | 11 | Replace `Incomplete | None = None` in third party stubs (#14063) 12 | 13 | ## 0.10.0.20250413 (2025-04-13) 14 | 15 | Import names from typing directly rather than importing module (#13761) 16 | 17 | ## 0.10.0.20250319 (2025-03-19) 18 | 19 | [CI] Run stubtest with Python 3.13 (#13638) 20 | 21 | ## 0.10.0.20240814 (2024-08-14) 22 | 23 | add baseline types for natasha-corus library of nlp sources (#12518) 24 | 25 | -------------------------------------------------------------------------------- /data/changelogs/cryptography.md: -------------------------------------------------------------------------------- 1 | ## 3.3.23.2 (2022-11-08) 2 | 3 | Fix and allow classes with missing metaclasses (#9136) 4 | 5 | ## 3.3.23.1 (2022-10-15) 6 | 7 | Use `Incomplete` instead of `Any` in `__getattr__` (#8903) 8 | 9 | ## 3.3.23 (2022-08-23) 10 | 11 | `cryptography`: Add some missing `@abstractmethod` decorators (#8598) 12 | 13 | ## 3.3.22 (2022-08-16) 14 | 15 | cryptography: Rename parameter of serialize_key_and_certificates (#8543) 16 | 17 | ## 3.3.21 (2022-04-28) 18 | 19 | cryptography: make `oid` attributes readonly (#7731) 20 | 21 | ## 3.3.20 (2022-04-16) 22 | 23 | Third-party stubs: import from `collections.abc` where possible (#7637) 24 | 25 | ## 3.3.19 (2022-04-05) 26 | 27 | Mark many attributes as read-only properties (#7591) 28 | 29 | ## 3.3.18 (2022-03-10) 30 | 31 | Modernize syntax in various stubs (#7469) 32 | 33 | Use `str` and `contextlib.AbstractContextManager` instead of `typing.Text` and `typing.ContextManager`. 34 | 35 | ## 3.3.17 (2022-03-09) 36 | 37 | Remove explicit inheritance from object (#7468) 38 | 39 | ## 3.3.16 (2022-03-09) 40 | 41 | Remove Python 2 support from some third-party distributions (#7466) 42 | 43 | Co-authored-by: Alex Waygood 44 | 45 | ## 3.3.15 (2022-02-03) 46 | 47 | Improve `__enter__` & constructor methods (#7114) 48 | 49 | ## 3.3.14 (2022-01-17) 50 | 51 | remove quoted strings (#6933) 52 | 53 | ## 3.3.13 (2022-01-16) 54 | 55 | remove "= ..." from top-level values (#6930) 56 | 57 | ## 3.3.12 (2022-01-08) 58 | 59 | Use lowercase `type` everywhere (#6853) 60 | 61 | ## 3.3.10 (2021-12-23) 62 | 63 | Remove unused allowlist entries (#6671) 64 | 65 | ## 3.3.9 (2021-11-23) 66 | 67 | Reduce use of deprecated `typing` aliases (#6358) 68 | 69 | ## 3.3.8 (2021-10-28) 70 | 71 | Add defaults to GCM.__init__ arguments (#6207) 72 | 73 | ## 3.3.7 (2021-10-15) 74 | 75 | Use lowercase tuple where possible (#6170) 76 | 77 | ## 3.3.6 (2021-10-12) 78 | 79 | Add star to all non-0.1 versions (#6146) 80 | 81 | -------------------------------------------------------------------------------- /data/changelogs/dataclasses.md: -------------------------------------------------------------------------------- 1 | ## 0.6.5 (2022-04-16) 2 | 3 | Third-party stubs: import from `collections.abc` where possible (#7637) 4 | 5 | ## 0.6.4 (2022-01-08) 6 | 7 | Use lowercase `type` everywhere (#6853) 8 | 9 | ## 0.6.2 (2021-12-28) 10 | 11 | Use PEP 585 syntax wherever possible (#6717) 12 | 13 | ## 0.6.1 (2021-10-15) 14 | 15 | Use lowercase tuple where possible (#6170) 16 | 17 | ## 0.6.0 (2021-10-12) 18 | 19 | Update remaining versions for third-party stubs (#6094) 20 | 21 | Also remove the python2 markers of packages that don't list Python 2 22 | as supported in the latest version. 23 | 24 | Don't special case version '0.1' 25 | 26 | Co-authored-by: Akuli 27 | 28 | -------------------------------------------------------------------------------- /data/changelogs/defusedxml.md: -------------------------------------------------------------------------------- 1 | ## 0.7.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 0.7.0.20240218 (2024-02-18) 6 | 7 | defusedxml.ElementTree: use`Element` from ElementTree instead of minidom (#11305) 8 | 9 | ## 0.7.0.20240117 (2024-01-17) 10 | 11 | `defusedxml`: Add xml.dom.minidom.Document return type annotation (#11279) 12 | 13 | ## 0.7.0.20240115 (2024-01-15) 14 | 15 | Add types for defusedxml (#11179) 16 | 17 | -------------------------------------------------------------------------------- /data/changelogs/dirhash.md: -------------------------------------------------------------------------------- 1 | ## 0.5.0.20250228 (2025-02-28) 2 | 3 | Add stubs for `dirhash` package (#13437) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/dj-database-url.md: -------------------------------------------------------------------------------- 1 | ## 1.3.0.4 (2023-07-20) 2 | 3 | Add an upstream_repository field to METADATA.toml (#10487) 4 | 5 | Closes: #10478 6 | 7 | ## 1.3.0.3 (2023-05-11) 8 | 9 | Bump `mypy` to `1.3.0` (#10173) 10 | 11 | Co-authored-by: AlexWaygood 12 | 13 | ## 1.3.0.2 (2023-04-28) 14 | 15 | [stubsabot] Mark dj-database-url as obsolete since 2.0.0 (#10094) 16 | 17 | Release: https://pypi.org/pypi/dj-database-url/2.0.0 18 | Homepage: https://github.com/jazzband/dj-database-url 19 | Diff: https://github.com/jazzband/dj-database-url/compare/v1.3.0...v2.0.0 20 | 21 | Co-authored-by: stubsabot <> 22 | 23 | ## 1.3.0.1 (2023-04-24) 24 | 25 | [dj-database-url] Fix CONN_MAX_AGE and conn_max_age types (#10075) 26 | 27 | ## 1.3.0.0 (2023-03-30) 28 | 29 | Bump dj-database-url to 1.3.* (#9975) 30 | 31 | Release: https://pypi.org/pypi/dj-database-url/1.3.0 32 | Homepage: https://github.com/jazzband/dj-database-url 33 | Diff: https://github.com/jazzband/dj-database-url/compare/v1.2.0...v1.3.0 34 | 35 | Co-authored-by: AlexWaygood 36 | 37 | ## 1.2.0.1 (2023-02-21) 38 | 39 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 40 | 41 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 42 | 43 | ## 1.2.0.0 (2022-12-14) 44 | 45 | Update dj-database-url to 1.2.* (#9355) 46 | 47 | ## 1.0.0 (2022-08-05) 48 | 49 | [stubsabot] Bump dj-database-url to 1.0.* (#8488) 50 | 51 | * [stubsabot] Bump dj-database-url to 1.0.* 52 | 53 | * Add DJANGO_VERSION 54 | 55 | Co-authored-by: stubsabot <> 56 | Co-authored-by: Sebastian Rittau 57 | 58 | ## 0.5.3 (2022-06-25) 59 | 60 | dj-database-url, docopt, editdistance, first: check missing defs (#8154) 61 | 62 | ## 0.5.2 (2022-06-01) 63 | 64 | `dj-database-url`: Add missing fields to `_DBConfig` TypedDict (#8008) 65 | 66 | Co-authored-by: Alex Waygood 67 | 68 | ## 0.5.1 (2022-05-29) 69 | 70 | dj_database_url: make all keys optional in _DBConfig TypedDict (#7979) 71 | 72 | Co-authored-by: Xavier Francisco 73 | 74 | ## 0.5.0 (2022-05-28) 75 | 76 | Add stubs for dj-database-url (#7972) 77 | 78 | Co-authored-by: Xavier Francisco 79 | 80 | -------------------------------------------------------------------------------- /data/changelogs/django-import-export.md: -------------------------------------------------------------------------------- 1 | ## 4.3.0.20250218 (2025-02-18) 2 | 3 | [stubsabot] Bump django-import-export to 4.3.* (#13460) 4 | 5 | Co-authored-by: stubsabot <> 6 | 7 | ## 3.3.0.20250204 (2025-02-04) 8 | 9 | Bump django-import-export to 4.3.4 (#13414) 10 | 11 | ## 3.3.0.20250117 (2025-01-17) 12 | 13 | Improve `django-import-export` (#13402) 14 | 15 | ## 3.3.0.20241229 (2024-12-29) 16 | 17 | Add stubs for `django-import-export` (#11709) 18 | 19 | -------------------------------------------------------------------------------- /data/changelogs/dockerfile-parse.md: -------------------------------------------------------------------------------- 1 | ## 2.0.0.20240106 (2024-01-06) 2 | 3 | Update typing_extensions imports in third-party stubs (#11245) 4 | 5 | ## 2.0.0.5 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 2.0.0.4 (2023-03-27) 12 | 13 | Add defaults for third-party stubs A-D (#9952) 14 | 15 | ## 2.0.0.3 (2023-02-21) 16 | 17 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 18 | 19 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 20 | 21 | ## 2.0.0.2 (2023-02-07) 22 | 23 | Bump mypy to 1.0 (#9684) 24 | 25 | ## 2.0.0.1 (2023-01-25) 26 | 27 | Fix some stubtest complaints before they happen (#9585) 28 | 29 | Add missing objects to various stubs 30 | 31 | ## 2.0.0.0 (2022-12-14) 32 | 33 | Update dockerfile-parse to 2.0.* (#9357) 34 | 35 | ## 1.2.0.1 (2022-12-01) 36 | 37 | Remove `dockerfile-parse` from pyright's exclude (#9310) 38 | 39 | Remove unnecessary dependency on types-six 40 | 41 | ## 1.2.0.0 (2022-12-01) 42 | 43 | Add stubs for dockerfile-parse (#9305) 44 | 45 | Co-authored-by: AlexWaygood 46 | 47 | -------------------------------------------------------------------------------- /data/changelogs/docopt.md: -------------------------------------------------------------------------------- 1 | ## 0.6.11.4 (2023-08-13) 2 | 3 | Fill in all missing `upstream_repository` fields (#10571) 4 | 5 | Co-authored-by: Alex Waygood 6 | 7 | ## 0.6.11.3 (2023-03-04) 8 | 9 | docopt: add exception types (#9839) 10 | 11 | ## 0.6.11.2 (2023-02-21) 12 | 13 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 14 | 15 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 16 | 17 | ## 0.6.11.1 (2023-01-18) 18 | 19 | Replace `Any` with `Incomplete` in many places (#9558) 20 | 21 | ## 0.6.11 (2022-06-25) 22 | 23 | dj-database-url, docopt, editdistance, first: check missing defs (#8154) 24 | 25 | ## 0.6.10 (2022-05-21) 26 | 27 | Add docopt.printable_usage (#7913) 28 | 29 | ## 0.6.9 (2022-05-07) 30 | 31 | Import generics from standard modules in all third-party stubs (#7791) 32 | 33 | ## 0.6.8 (2022-04-27) 34 | 35 | Drop Python 2 support in third-party stubs (#7703) 36 | 37 | ## 0.6.7 (2022-04-16) 38 | 39 | Use `TypeAlias` where possible for type aliases (#7630) 40 | 41 | ## 0.6.6 (2022-03-16) 42 | 43 | Use PEP 604 syntax wherever possible (#7493) 44 | 45 | ## 0.6.4 (2021-10-12) 46 | 47 | Add star to all non-0.1 versions (#6146) 48 | 49 | -------------------------------------------------------------------------------- /data/changelogs/emoji.md: -------------------------------------------------------------------------------- 1 | ## 2.1.0.3 (2023-03-27) 2 | 3 | Add defaults for third-party stubs E-H (#9954) 4 | 5 | ## 2.1.0.2 (2023-02-21) 6 | 7 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 8 | 9 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 10 | 11 | ## 2.1.0.1 (2022-11-01) 12 | 13 | [stubsabot] Mark emoji as obsolete since 2.2.0 (#9051) 14 | 15 | Release: https://pypi.org/pypi/emoji/2.2.0 16 | Homepage: https://github.com/carpedm20/emoji/ 17 | Diff: https://github.com/carpedm20/emoji/compare/v2.1.0...v2.2.0 18 | 19 | Co-authored-by: stubsabot <> 20 | 21 | ## 2.1.0 (2022-09-23) 22 | 23 | [stubsabot] Bump emoji to 2.1.* (#8784) 24 | 25 | Release: https://pypi.org/pypi/emoji/2.1.0 26 | Homepage: https://github.com/carpedm20/emoji/ 27 | Diff: https://github.com/carpedm20/emoji/compare/v2.0.0...v2.1.0 28 | 29 | If stubtest fails for this PR: 30 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 31 | - Fix stubtest failures in another PR, then close this PR 32 | 33 | Note that you will need to close and re-open the PR in order to trigger CI 34 | 35 | Co-authored-by: stubsabot <> 36 | 37 | ## 2.0.1 (2022-08-10) 38 | 39 | Remove a few unused `TypedDict`s (#8522) 40 | 41 | ## 2.0.0 (2022-07-28) 42 | 43 | Update emoji stubs for v2.0.0 (#8426) 44 | 45 | ## 1.7.4 (2022-07-19) 46 | 47 | Add missing third party modules (#8321) 48 | 49 | Co-authored-by: Alex Waygood 50 | Co-authored-by: hauntsaninja <> 51 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 52 | 53 | ## 1.7.3 (2022-07-12) 54 | 55 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 56 | 57 | ## 1.7.2 (2022-06-26) 58 | 59 | emoji: complete stubs (#8170) 60 | 61 | Co-authored-by: hauntsaninja <> 62 | 63 | ## 1.7.1 (2022-06-10) 64 | 65 | Add stub for emoji.is_emoji (#8053) 66 | 67 | ## 1.7.0 (2022-05-22) 68 | 69 | Update emoji stubs for version 1.7 (#7884) 70 | 71 | ## 1.2.8 (2022-04-27) 72 | 73 | Drop Python 2 support from emoji (#7716) 74 | 75 | ## 1.2.6 (2021-10-15) 76 | 77 | Use lowercase tuple where possible (#6170) 78 | 79 | ## 1.2.5 (2021-10-12) 80 | 81 | Add star to all non-0.1 versions (#6146) 82 | 83 | -------------------------------------------------------------------------------- /data/changelogs/entrypoints.md: -------------------------------------------------------------------------------- 1 | ## 0.4.1.20240106 (2024-01-06) 2 | 3 | Remove Python 3.7 branches (#11238) 4 | 5 | ## 0.4.1.4 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 0.4.1.3 (2023-02-21) 12 | 13 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 14 | 15 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 16 | 17 | ## 0.4.1.2 (2023-02-15) 18 | 19 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 20 | 21 | ## 0.4.1.1 (2022-10-15) 22 | 23 | Mark `entrypoints` as complete (#8901) 24 | 25 | ## 0.4.1 (2022-07-12) 26 | 27 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 28 | 29 | ## 0.4.0 (2022-06-25) 30 | 31 | [stubsabot] Bump entrypoints to 0.4.* (#8157) 32 | 33 | Co-authored-by: hauntsaninja <> 34 | 35 | ## 0.3.7 (2022-04-29) 36 | 37 | Delete python 2 branches from third-party stubs (#7741) 38 | 39 | Since #7703, we no longer have third-party stubs that support Python 2, so code like `if sys.version_info >= (3, 0)` can be simplified. 40 | 41 | ## 0.3.6 (2022-04-27) 42 | 43 | Remove Python 2 support from entrypoints (#7711) 44 | 45 | ## 0.3.5 (2022-01-08) 46 | 47 | Use lowercase `type` everywhere (#6853) 48 | 49 | ## 0.3.3 (2021-10-15) 50 | 51 | Use lowercase tuple where possible (#6170) 52 | 53 | ## 0.3.2 (2021-10-13) 54 | 55 | Cleanup: use lower-case list and dict, add a test (#6161) 56 | 57 | ## 0.3.1 (2021-10-12) 58 | 59 | Add star to all non-0.1 versions (#6146) 60 | 61 | -------------------------------------------------------------------------------- /data/changelogs/enum34.md: -------------------------------------------------------------------------------- 1 | ## 1.1.8 (2022-01-20) 2 | 3 | Remove nearly all `__str__` and `__repr__` methods from typeshed (#6968) 4 | 5 | ## 1.1.7 (2022-01-19) 6 | 7 | Use PEP 585 syntax in `@python2/_ast`, convert more `TypeVar`s to `_typeshed.Self`, & `# noqa` a `SQLAlchemy` line (#6954) 8 | 9 | * Manual fixes for `_ast` and `SQLAlchemy` 10 | 11 | * Change more `TypeVar`s to `Self`, using script 12 | 13 | Use PEP 585 syntax in Python 2, `protobuf` & `_ast` stubs, where possible (#6949) 14 | 15 | ## 1.1.3 (2022-01-17) 16 | 17 | Use `_typeshed.Self` in Python 2, too (#6932) 18 | 19 | ## 1.1.1 (2021-10-12) 20 | 21 | Add star to all non-0.1 versions (#6146) 22 | 23 | -------------------------------------------------------------------------------- /data/changelogs/fanstatic.md: -------------------------------------------------------------------------------- 1 | ## 1.5.0.20250307 (2025-03-07) 2 | 3 | [stubsabot] Bump fanstatic to 1.5.* (#13586) 4 | 5 | ## 1.4.0.20250305 (2025-03-05) 6 | 7 | Remove `setuptools/pkg_resources` (#13369) 8 | 9 | ## 1.4.0.20240310 (2024-03-10) 10 | 11 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 12 | 13 | Co-authored-by: Alex Waygood 14 | 15 | ## 1.4.0.20240301 (2024-03-01) 16 | 17 | Fix invalid noqa comments and poorly formatted type ignores (#11497) 18 | 19 | ## 1.4.0.20240106 (2024-01-06) 20 | 21 | Update typing_extensions imports in third-party stubs (#11245) 22 | 23 | ## 1.4.0.1 (2023-12-11) 24 | 25 | fanstatic: Use `Unpack` in `fanstatic.injector.Injector` (#11139) 26 | 27 | ## 1.4.0.0 (2023-11-22) 28 | 29 | Add stubs for fanstatic (#9931) 30 | 31 | -------------------------------------------------------------------------------- /data/changelogs/filelock.md: -------------------------------------------------------------------------------- 1 | ## 3.2.7 (2022-06-09) 2 | 3 | filelock: mark as obsolete since 3.3.0 (#8043) 4 | 5 | ## 3.2.6 (2022-05-21) 6 | 7 | Simplify and correct many numeric unions (#7906) 8 | 9 | Unblocks PyCQA/flake8-pyi#222 10 | 11 | ## 3.2.5 (2022-01-20) 12 | 13 | Remove nearly all `__str__` and `__repr__` methods from typeshed (#6968) 14 | 15 | ## 3.2.4 (2022-01-10) 16 | 17 | Always use `_typeshed.Self`, where applicable (#6880) 18 | 19 | * Always use `_typeshed.Self`, where applicable 20 | 21 | * Revert changes to `google-cloud-ndb` (ambiguous) 22 | 23 | * Remove empty line added by script 24 | 25 | * Revert changes to `stubs/python-dateutil/dateutil/relativedelta.pyi` 26 | 27 | * Manually add a few more that the script missed 28 | 29 | * Improve `filelock` annotation 30 | 31 | Source code here: https://github.com/tox-dev/py-filelock/blob/79ec7b2826e33b982fe83b057f359448b9d966ba/src/filelock/_api.py#L207 32 | 33 | * Improve `opentracing/scope` annotation 34 | 35 | Source code here: https://github.com/opentracing/opentracing-python/blob/3e1d357a348269ef54d67f761302fab93dbfc0f7/opentracing/scope.py#L71 36 | 37 | * Improve `redis/client` stub 38 | 39 | Source code here: https://github.com/redis/redis-py/blob/15f315a496c3267c8cbcc6d6d9c6005ea4d4a4d5/redis/client.py#L1217 40 | 41 | * Improve `redis/lock` annotation 42 | 43 | Source code here: https://github.com/redis/redis-py/blob/15f315a496c3267c8cbcc6d6d9c6005ea4d4a4d5/redis/lock.py#L155 44 | 45 | * Improve `requests/models` annotation 46 | 47 | Source code here: https://github.com/psf/requests/blob/d718e753834b84018014a23d663369ac27d1ab9c/requests/models.py#L653 48 | 49 | ## 3.2.3 (2022-01-08) 50 | 51 | Use lowercase `type` everywhere (#6853) 52 | 53 | ## 3.2.1 (2021-10-12) 54 | 55 | Add star to all non-0.1 versions (#6146) 56 | 57 | ## 3.2.0 (2021-09-30) 58 | 59 | Unbreak CI (#6093) 60 | 61 | * Temporarily remove `cachetools` stubs. They will be added back soon, and meanwhile they will continue to be available on pypi. 62 | 63 | * Remove `filelock.logger()` (no longer exists in filelock 3.2) 64 | 65 | * Delete `OpenSSL.crypto` from stubtest whitelist 66 | 67 | Co-authored-by: Akuli 68 | 69 | -------------------------------------------------------------------------------- /data/changelogs/first.md: -------------------------------------------------------------------------------- 1 | ## 2.0.5.20240806 (2024-08-06) 2 | 3 | Bump mypy to 1.11.1 (#12463) 4 | 5 | ## 2.0.5.2 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 2.0.5.1 (2023-02-21) 12 | 13 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 14 | 15 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 16 | 17 | ## 2.0.5 (2022-06-25) 18 | 19 | dj-database-url, docopt, editdistance, first: check missing defs (#8154) 20 | 21 | ## 2.0.4 (2022-05-07) 22 | 23 | Import generics from standard modules in all third-party stubs (#7791) 24 | 25 | ## 2.0.3 (2022-04-27) 26 | 27 | Drop Python 2 support in third-party stubs (#7703) 28 | 29 | ## 2.0.1 (2021-10-12) 30 | 31 | Add star to all non-0.1 versions (#6146) 32 | 33 | ## 2.0.0 (2021-09-19) 34 | 35 | Update third-party package versions (#5996) 36 | 37 | -------------------------------------------------------------------------------- /data/changelogs/flake8-2020.md: -------------------------------------------------------------------------------- 1 | ## 1.8.0.20240818 (2024-08-18) 2 | 3 | [February 2025] flake8-2020 is an archived repo (#12539) 4 | 5 | Flake8-2020: Add Final and remove Any (#12538) 6 | 7 | ## 1.8.0.1 (2023-07-20) 8 | 9 | Add an upstream_repository field to METADATA.toml (#10487) 10 | 11 | Closes: #10478 12 | 13 | ## 1.8.0.0 (2023-05-07) 14 | 15 | [stubsabot] Bump flake8-2020 to 1.8.* (#10153) 16 | 17 | Release: https://pypi.org/pypi/flake8-2020/1.8.0 18 | Homepage: https://github.com/asottile/flake8-2020 19 | Diff: https://github.com/asottile/flake8-2020/compare/v1.7.0...v1.8.0 20 | 21 | Stubsabot analysis of the diff between the two releases: 22 | - 0 public Python files have been added. 23 | - 0 files included in typeshed's stubs have been deleted. 24 | - 1 file included in typeshed's stubs has been modified or renamed: `flake8_2020.py`. 25 | - Total lines of Python code added: 9. 26 | - Total lines of Python code deleted: 7. 27 | 28 | ## 1.7.0.2 (2023-02-21) 29 | 30 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 31 | 32 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 33 | 34 | ## 1.7.0.1 (2022-10-15) 35 | 36 | Mark `flake8-2020` as complete (#8902) 37 | 38 | ## 1.7.0 (2022-08-05) 39 | 40 | [stubsabot] Bump flake8-2020 to 1.7.* (#8492) 41 | 42 | Co-authored-by: stubsabot <> 43 | 44 | ## 1.6.3 (2022-04-16) 45 | 46 | Third-party stubs: import from `collections.abc` where possible (#7637) 47 | 48 | ## 1.6.2 (2022-01-08) 49 | 50 | Use lowercase `type` everywhere (#6853) 51 | 52 | ## 1.6.0 (2021-12-10) 53 | 54 | Add stubs for flake8-2020 (#6555) 55 | 56 | -------------------------------------------------------------------------------- /data/changelogs/flake8-docstrings.md: -------------------------------------------------------------------------------- 1 | ## 1.7.0.20250425 (2025-04-25) 2 | 3 | Complete `flake8-docstrings` (#13872) 4 | 5 | ## 1.7.0.3 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 1.7.0.2 (2023-05-10) 12 | 13 | Add `partial_stub` metadata field (#10157) 14 | 15 | ## 1.7.0.1 (2023-02-21) 16 | 17 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 18 | 19 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 20 | 21 | ## 1.7.0.0 (2023-01-26) 22 | 23 | [stubsabot] Bump flake8-docstrings to 1.7.* (#9589) 24 | 25 | Release: https://pypi.org/pypi/flake8-docstrings/1.7.0 26 | Homepage: https://github.com/pycqa/flake8-docstrings 27 | Diff: https://github.com/pycqa/flake8-docstrings/compare/1.6.0...1.7.0 28 | 29 | Stubsabot analysis of the diff between the two releases: 30 | - 0 public Python files have been added. 31 | - 0 files included in typeshed's stubs have been deleted. 32 | - 1 file included in typeshed's stubs has been modified or renamed: `flake8_docstrings.py`. 33 | - Total lines of Python code added: 93. 34 | - Total lines of Python code deleted: 94. 35 | 36 | If stubtest fails for this PR: 37 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 38 | - Fix stubtest failures in another PR, then close this PR 39 | 40 | Note that you will need to close and re-open the PR in order to trigger CI 41 | 42 | Co-authored-by: stubsabot <> 43 | 44 | ## 1.6.3.1 (2022-10-15) 45 | 46 | Use `Incomplete` instead of `Any` in `__getattr__` (#8903) 47 | 48 | ## 1.6.3 (2022-04-16) 49 | 50 | Third-party stubs: import from `collections.abc` where possible (#7637) 51 | 52 | ## 1.6.2 (2022-01-08) 53 | 54 | Use lowercase `type` everywhere (#6853) 55 | 56 | ## 1.6.0 (2021-12-06) 57 | 58 | Add stubs for flake8-docstrings (#6507) 59 | 60 | Co-authored-by: Akuli 61 | 62 | -------------------------------------------------------------------------------- /data/changelogs/flake8-plugin-utils.md: -------------------------------------------------------------------------------- 1 | ## 1.3.7.5 (2023-07-20) 2 | 3 | Add an upstream_repository field to METADATA.toml (#10487) 4 | 5 | Closes: #10478 6 | 7 | ## 1.3.7.4 (2023-06-28) 8 | 9 | [stubsabot] Mark flake8-plugin-utils as obsolete since 1.3.3 (#10373) 10 | 11 | Release: https://pypi.org/pypi/flake8-plugin-utils/1.3.3 12 | Homepage: https://pypi.org/project/flake8-plugin-utils 13 | 14 | Co-authored-by: stubsabot <> 15 | 16 | ## 1.3.7.3 (2023-05-10) 17 | 18 | Add `partial_stub` metadata field (#10157) 19 | 20 | ## 1.3.7.2 (2023-03-27) 21 | 22 | Add defaults for third-party stubs E-H (#9954) 23 | 24 | ## 1.3.7.1 (2023-02-21) 25 | 26 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 27 | 28 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 29 | 30 | ## 1.3.7 (2022-06-14) 31 | 32 | Fix miscellaneous invalid `TypeVar` usages (#8074) 33 | 34 | ## 1.3.6 (2022-04-16) 35 | 36 | Third-party stubs: import from `collections.abc` where possible (#7637) 37 | 38 | ## 1.3.5 (2022-04-16) 39 | 40 | Use `TypeAlias` where possible for type aliases (#7630) 41 | 42 | ## 1.3.4 (2022-03-29) 43 | 44 | Remove unneeded `# noqa` comments, fix broken `# noqa` comments (#7561) 45 | 46 | ## 1.3.3 (2022-01-08) 47 | 48 | Use lowercase `type` everywhere (#6853) 49 | 50 | ## 1.3.1 (2021-12-28) 51 | 52 | Use PEP 585 syntax wherever possible (#6717) 53 | 54 | ## 1.3.0 (2021-12-13) 55 | 56 | Add stubs for flake8-plugin-utils (#6506) 57 | 58 | -------------------------------------------------------------------------------- /data/changelogs/flake8-rst-docstrings.md: -------------------------------------------------------------------------------- 1 | ## 0.3.0.20250425 (2025-04-25) 2 | 3 | Mark `flake8-rst-docstrings` as complete (#13867) 4 | 5 | ## 0.3.0.3 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 0.3.0.2 (2023-05-10) 12 | 13 | Add `partial_stub` metadata field (#10157) 14 | 15 | ## 0.3.0.1 (2023-02-21) 16 | 17 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 18 | 19 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 20 | 21 | ## 0.3.0.0 (2022-11-17) 22 | 23 | [stubsabot] Bump flake8-rst-docstrings to 0.3.* (#9218) 24 | 25 | Release: https://pypi.org/pypi/flake8-rst-docstrings/0.3.0 26 | Homepage: https://github.com/peterjc/flake8-rst-docstrings 27 | Diff: https://github.com/peterjc/flake8-rst-docstrings/compare/v0.2.7...v0.3.0 28 | 29 | Stubsabot analysis of the diff between the two releases: 30 | - 2 public Python files have been added: `tests/RST214/plurals.py`, `tests/RST215/plurals.py`. 31 | - 0 files included in typeshed's stubs have been deleted. 32 | - 1 file included in typeshed's stubs has been modified or renamed: `flake8_rst_docstrings.py`. 33 | - Total lines of Python code added: 38. 34 | - Total lines of Python code deleted: 54. 35 | 36 | If stubtest fails for this PR: 37 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 38 | - Fix stubtest failures in another PR, then close this PR 39 | 40 | Note that you will need to close and re-open the PR in order to trigger CI 41 | 42 | Co-authored-by: stubsabot <> 43 | 44 | ## 0.2.2 (2022-06-08) 45 | 46 | Update flake8-rst-docstrings (#8033) 47 | 48 | Fixes #8032 49 | 50 | Co-authored-by: hauntsaninja <> 51 | 52 | ## 0.2.1 (2022-04-16) 53 | 54 | Third-party stubs: import from `collections.abc` where possible (#7637) 55 | 56 | ## 0.2.0 (2022-01-25) 57 | 58 | Add stubs for flake8_rst_docstrings (#7029) 59 | 60 | -------------------------------------------------------------------------------- /data/changelogs/flake8-simplify.md: -------------------------------------------------------------------------------- 1 | ## 0.21.0.0 (2023-09-24) 2 | 3 | [stubsabot] Bump flake8-simplify to 0.21.* (#10755) 4 | 5 | Release: https://pypi.org/pypi/flake8-simplify/0.21.0 6 | Homepage: https://github.com/MartinThoma/flake8-simplify 7 | Repository: https://github.com/MartinThoma/flake8-simplify 8 | 9 | ## 0.20.0.2 (2023-07-20) 10 | 11 | Add an upstream_repository field to METADATA.toml (#10487) 12 | 13 | Closes: #10478 14 | 15 | ## 0.20.0.1 (2023-05-10) 16 | 17 | Add `partial_stub` metadata field (#10157) 18 | 19 | ## 0.20.0.0 (2023-03-31) 20 | 21 | [stubsabot] Bump flake8-simplify to 0.20.* (#9993) 22 | 23 | Release: https://pypi.org/pypi/flake8-simplify/0.20.0 24 | Homepage: https://github.com/MartinThoma/flake8-simplify 25 | 26 | ## 0.19.0.1 (2023-02-21) 27 | 28 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 29 | 30 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 31 | 32 | ## 0.19.0 (2022-06-13) 33 | 34 | [stubsabot] Bump flake8-simplify to 0.19.* (#8052) 35 | 36 | ## 0.18.1 (2022-04-16) 37 | 38 | Third-party stubs: import from `collections.abc` where possible (#7637) 39 | 40 | ## 0.18.0 (2022-02-21) 41 | 42 | Update flake8-simplify (#7339) 43 | 44 | ## 0.14.3 (2022-01-08) 45 | 46 | Use lowercase `type` everywhere (#6853) 47 | 48 | ## 0.14.1 (2021-12-06) 49 | 50 | Mark some fields as ClassVars (#6510) 51 | 52 | ## 0.14.0 (2021-12-03) 53 | 54 | Add stubs for flake8-simplify (#6480) 55 | 56 | -------------------------------------------------------------------------------- /data/changelogs/flake8.md: -------------------------------------------------------------------------------- 1 | ## 7.2.0.20250330 (2025-03-30) 2 | 3 | [stubsabot] Bump flake8 to 7.2.* (#13743) 4 | 5 | ## 7.1.0.20241020 (2024-10-20) 6 | 7 | Update mypy to 1.12.0 (#12859) 8 | 9 | ## 7.1.0.20240711 (2024-07-11) 10 | 11 | [flake8] Improve `Statistic` typing (#12313) 12 | 13 | Add `_write` method to `flake8.formatting.BaseFormatter` (#12312) 14 | 15 | It is very useful for real-life custom formatters. Example: https://github.com/wemake-services/wemake-python-styleguide/blob/470d81174684eb9a175603aec02f0ac6589b8acd/wemake_python_styleguide/formatter.py#L92-L96 16 | 17 | Definition: https://github.com/PyCQA/flake8/blob/65a38c42a7f1a05ff8d99b313160754fc9b7a0d8/src/flake8/formatting/base.py#L173-L178 18 | 19 | ## 7.1.0.20240616 (2024-06-16) 20 | 21 | [stubsabot] Bump flake8 to 7.1.* (#12139) 22 | 23 | Release: https://pypi.org/pypi/flake8/7.1.0 24 | Homepage: https://github.com/pycqa/flake8 25 | Repository: https://github.com/pycqa/flake8 26 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/flake8 27 | Diff: https://github.com/pycqa/flake8/compare/7.0.0...7.1.0 28 | 29 | Stubsabot analysis of the diff between the two releases: 30 | - Total lines of Python code added: 7. 31 | - Total lines of Python code deleted: 3. 32 | 33 | ## 7.0.0.20240519 (2024-05-19) 34 | 35 | Use assignment instead of annotation in third party enums (#11957) 36 | 37 | ## 7.0.0.20240511 (2024-05-11) 38 | 39 | Add flake8 (#11676) 40 | 41 | -------------------------------------------------------------------------------- /data/changelogs/freezegun.md: -------------------------------------------------------------------------------- 1 | ## 1.1.10 (2022-06-09) 2 | 3 | freezegun: mark as obsolete since 1.2.1 (#8042) 4 | 5 | Linking #5842 6 | 7 | ## 1.1.9 (2022-04-16) 8 | 9 | Use `TypeAlias` where possible for type aliases (#7630) 10 | 11 | ## 1.1.8 (2022-04-01) 12 | 13 | Third-party stubs: Improve several `__exit__` methods (#7575) 14 | 15 | ## 1.1.7 (2022-03-16) 16 | 17 | Use PEP 604 syntax wherever possible (#7493) 18 | 19 | ## 1.1.6 (2022-01-08) 20 | 21 | Use lowercase `type` everywhere (#6853) 22 | 23 | ## 1.1.4 (2022-01-02) 24 | 25 | Never explicitly inherit from `object` in Python 3-only stubs (#6777) 26 | 27 | ## 1.1.3 (2021-11-02) 28 | 29 | freezegun: Add as_kwarg argument (#6220) 30 | 31 | ## 1.1.2 (2021-10-13) 32 | 33 | freezegun: _freeze_time.__enter__ return a freeze factory (#6164) 34 | 35 | ## 1.1.1 (2021-10-12) 36 | 37 | Add star to all non-0.1 versions (#6146) 38 | 39 | -------------------------------------------------------------------------------- /data/changelogs/frozendict.md: -------------------------------------------------------------------------------- 1 | ## 2.0.9 (2022-06-09) 2 | 3 | frozendict: mark as obsolete since 2.2.0 (#8044) 4 | 5 | It has shipped with a py.typed file since v.2.2.0 in January: https://github.com/Marco-Sulla/python-frozendict/commit/7fcdd3aa990aa323fbcecea4b33733468c97cc27 6 | 7 | It can be removed come July 15 8 | 9 | Co-authored-by: hauntsaninja <> 10 | 11 | ## 2.0.8 (2022-04-16) 12 | 13 | Third-party stubs: import from `collections.abc` where possible (#7637) 14 | 15 | ## 2.0.7 (2022-03-06) 16 | 17 | Upgrade to stubtest with dunder pos only reverted (#7442) 18 | 19 | ## 2.0.6 (2022-02-22) 20 | 21 | Correct several positional-only differences in third-party stubs (#7352) 22 | 23 | ## 2.0.5 (2022-01-20) 24 | 25 | Remove nearly all `__str__` and `__repr__` methods from typeshed (#6968) 26 | 27 | ## 2.0.4 (2022-01-10) 28 | 29 | Always use `_typeshed.Self`, where applicable (#6880) 30 | 31 | * Always use `_typeshed.Self`, where applicable 32 | 33 | * Revert changes to `google-cloud-ndb` (ambiguous) 34 | 35 | * Remove empty line added by script 36 | 37 | * Revert changes to `stubs/python-dateutil/dateutil/relativedelta.pyi` 38 | 39 | * Manually add a few more that the script missed 40 | 41 | * Improve `filelock` annotation 42 | 43 | Source code here: https://github.com/tox-dev/py-filelock/blob/79ec7b2826e33b982fe83b057f359448b9d966ba/src/filelock/_api.py#L207 44 | 45 | * Improve `opentracing/scope` annotation 46 | 47 | Source code here: https://github.com/opentracing/opentracing-python/blob/3e1d357a348269ef54d67f761302fab93dbfc0f7/opentracing/scope.py#L71 48 | 49 | * Improve `redis/client` stub 50 | 51 | Source code here: https://github.com/redis/redis-py/blob/15f315a496c3267c8cbcc6d6d9c6005ea4d4a4d5/redis/client.py#L1217 52 | 53 | * Improve `redis/lock` annotation 54 | 55 | Source code here: https://github.com/redis/redis-py/blob/15f315a496c3267c8cbcc6d6d9c6005ea4d4a4d5/redis/lock.py#L155 56 | 57 | * Improve `requests/models` annotation 58 | 59 | Source code here: https://github.com/psf/requests/blob/d718e753834b84018014a23d663369ac27d1ab9c/requests/models.py#L653 60 | 61 | ## 2.0.3 (2022-01-08) 62 | 63 | Use lowercase `type` everywhere (#6853) 64 | 65 | ## 2.0.1 (2021-10-15) 66 | 67 | Use lowercase tuple where possible (#6170) 68 | 69 | ## 2.0.0 (2021-10-12) 70 | 71 | Update remaining versions for third-party stubs (#6094) 72 | 73 | Also remove the python2 markers of packages that don't list Python 2 74 | as supported in the latest version. 75 | 76 | Don't special case version '0.1' 77 | 78 | Co-authored-by: Akuli 79 | 80 | -------------------------------------------------------------------------------- /data/changelogs/futures.md: -------------------------------------------------------------------------------- 1 | ## 3.3.8 (2022-01-27) 2 | 3 | Backport many `ParamSpec`-related changes to Python 2 (#7054) 4 | 5 | ## 3.3.7 (2022-01-19) 6 | 7 | Use PEP 585 syntax in Python 2, `protobuf` & `_ast` stubs, where possible (#6949) 8 | 9 | ## 3.3.3 (2022-01-17) 10 | 11 | Use `_typeshed.Self` in Python 2, too (#6932) 12 | 13 | ## 3.3.1 (2021-10-12) 14 | 15 | Add star to all non-0.1 versions (#6146) 16 | 17 | -------------------------------------------------------------------------------- /data/changelogs/geopandas.md: -------------------------------------------------------------------------------- 1 | ## 1.0.1.20250601 (2025-06-01) 2 | 3 | [geopandas] Add a # type: ignore (#14200) 4 | 5 | Should help with #14194 6 | 7 | ## 1.0.1.20250528 (2025-05-28) 8 | 9 | [geopandas] Unblock CI (#14178) 10 | 11 | ## 1.0.1.20250510 (2025-05-10) 12 | 13 | [geopandas] Fix CI tests in some circumstances (#13978) 14 | 15 | Add "libproj-dev" and "proj-bin" to apt_dependencies. 16 | These packages are necessary to build the pyproj 17 | dependency if a pre-built wheel is not available. 18 | 19 | ## 1.0.1.20250404 (2025-04-04) 20 | 21 | Enable Ruff flake8-todos (TD) (#13748) 22 | 23 | ## 1.0.1.20250310 (2025-03-10) 24 | 25 | Fix override issue in GeoDataFrame.astype return type (#13606) 26 | 27 | ## 1.0.1.20250304 (2025-03-04) 28 | 29 | Drop flake8-noqa and remove workarounds to work with Ruff (#13571) 30 | 31 | ## 1.0.1.20250120 (2025-01-20) 32 | 33 | Add geopandas stubs (#12990) 34 | 35 | -------------------------------------------------------------------------------- /data/changelogs/gevent.md: -------------------------------------------------------------------------------- 1 | ## 25.4.0.20250516 (2025-05-16) 2 | 3 | gevent: Remove remaining uses of `Incomplete` (#14072) 4 | 5 | ## 25.4.0.20250512 (2025-05-12) 6 | 7 | Bump gevent to 25.4.* (#13885) 8 | 9 | ## 24.11.0.20250401 (2025-04-01) 10 | 11 | Add `__all__` part 2 (#13719) 12 | 13 | --------- 14 | 15 | Co-authored-by: Avasam 16 | 17 | ## 24.11.0.20250305 (2025-03-05) 18 | 19 | Enable Ruff PLE (Pylint Error) (#13305) 20 | 21 | ## 24.11.0.20250304 (2025-03-04) 22 | 23 | Enable Ruff PLR (Pylint Refactor) (#13307) 24 | 25 | ## 24.11.0.20241230 (2024-12-30) 26 | 27 | fix gevent.select.poll (#13335) 28 | 29 | fixes #13330 30 | 31 | ## 24.11.0.20241225 (2024-12-25) 32 | 33 | gevent: remove unused allowlist entry (#13301) 34 | 35 | Fixes #13300 36 | 37 | ## 24.11.0.20241221 (2024-12-21) 38 | 39 | Update to mypy 1.14 (#13272) 40 | 41 | ## 24.11.0.20241122 (2024-11-22) 42 | 43 | clean up allowlist for gevent (#13056) 44 | 45 | ## 24.11.0.20241115 (2024-11-15) 46 | 47 | Update gevent to 24.11.* (#13003) 48 | 49 | ## 24.10.0.20241012 (2024-10-12) 50 | 51 | Bump gevent to 24.10.* (#12779) 52 | 53 | ## 24.2.0.20241003 (2024-10-03) 54 | 55 | gevent: remove unused allowlist entry (#12726) 56 | 57 | ## 24.2.0.20240806 (2024-08-06) 58 | 59 | Bump mypy to 1.11.1 (#12463) 60 | 61 | ## 24.2.0.20240425 (2024-04-25) 62 | 63 | Bump pyright to v1.1.360 (#11810) 64 | 65 | ## 24.2.0.20240315 (2024-03-15) 66 | 67 | chore(deps): update pytype and pyright (#11595) 68 | 69 | ## 24.2.0.20240311 (2024-03-11) 70 | 71 | Use Python 3.11 for third-party stubtest in CI (#11562) 72 | 73 | Use PEP 570 syntax in third party stubs (#11554) 74 | 75 | ## 24.2.0.20240310 (2024-03-10) 76 | 77 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 78 | 79 | Co-authored-by: Alex Waygood 80 | 81 | ## 24.2.0.20240301 (2024-03-01) 82 | 83 | Fix invalid noqa comments and poorly formatted type ignores (#11497) 84 | 85 | ## 24.2.0.20240218 (2024-02-18) 86 | 87 | [stubsabot] Bump gevent to 24.2.* (#11425) 88 | 89 | Release: https://pypi.org/pypi/gevent/24.2.1 90 | Homepage: http://www.gevent.org/ 91 | Repository: https://github.com/gevent/gevent 92 | Diff: https://github.com/gevent/gevent/compare/23.9.1...24.2.1 93 | 94 | Stubsabot analysis of the diff between the two releases: 95 | - Total lines of Python code added: 4. 96 | - Total lines of Python code deleted: 4. 97 | 98 | ## 23.9.0.20240205 (2024-02-05) 99 | 100 | A new shade of Black (#11362) 101 | 102 | ## 23.9.0.20240106 (2024-01-06) 103 | 104 | Update typing_extensions imports in third-party stubs (#11245) 105 | 106 | Remove Python 3.7 branches (#11238) 107 | 108 | ## 23.9.0.20240105 (2024-01-05) 109 | 110 | Drop support for Python 3.7 (#11234) 111 | 112 | ## 23.9.0.1 (2023-12-11) 113 | 114 | gevent: Use `TypeVarTuple` instead of old `ParamSpec` workaround. (#11129) 115 | 116 | ## 23.9.0.0 (2023-12-07) 117 | 118 | Add stubs for gevent (#10527) 119 | 120 | -------------------------------------------------------------------------------- /data/changelogs/greenlet.md: -------------------------------------------------------------------------------- 1 | ## 3.2.0.20250417 (2025-04-17) 2 | 3 | [stubsabot] Bump greenlet to 3.2.* (#13836) 4 | 5 | Release: https://pypi.org/pypi/greenlet/3.2.0 6 | Homepage: https://greenlet.readthedocs.io/ 7 | Repository: https://github.com/python-greenlet/greenlet 8 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/greenlet 9 | Changelog: https://greenlet.readthedocs.io/en/latest/changes.html 10 | Diff: https://github.com/python-greenlet/greenlet/compare/3.1.1...3.2.0 11 | 12 | Stubsabot analysis of the diff between the two releases: 13 | - Total lines of Python code added: 29. 14 | - Total lines of Python code deleted: 18. 15 | 16 | If stubtest fails for this PR: 17 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 18 | - Fix stubtest failures in another PR, then close this PR 19 | 20 | Note that you will need to close and re-open the PR in order to trigger CI 21 | 22 | Co-authored-by: stubsabot <> 23 | 24 | ## 3.1.0.20250401 (2025-04-01) 25 | 26 | Add `__all__` part 2 (#13719) 27 | 28 | --------- 29 | 30 | Co-authored-by: Avasam 31 | 32 | ## 3.1.0.20250318 (2025-03-18) 33 | 34 | [greenlet] Fix for Python 3.13 (#13648) 35 | 36 | `get_tstate_trash_delete_nesting()` is not available 37 | on Python 3.13. 38 | 39 | ## 3.1.0.20241221 (2024-12-21) 40 | 41 | Update to mypy 1.14 (#13272) 42 | 43 | ## 3.1.0.20240924 (2024-09-24) 44 | 45 | [stubsabot] Bump greenlet to 3.1.* (#12636) 46 | 47 | Co-authored-by: stubsabot <> 48 | 49 | ## 3.0.0.20240604 (2024-06-04) 50 | 51 | greenlet: Adds missing `__version__` variable (#12089) 52 | 53 | ## 3.0.0.20240311 (2024-03-11) 54 | 55 | Use PEP 570 syntax in third party stubs (#11554) 56 | 57 | ## 3.0.0.20240106 (2024-01-06) 58 | 59 | Update typing_extensions imports in third-party stubs (#11245) 60 | 61 | ## 3.0.0.0 (2023-10-04) 62 | 63 | Bump greenlet to 3.0.* (#10833) 64 | 65 | ## 2.0.0.0 (2023-07-22) 66 | 67 | Add stubs for greenlet (#10463) 68 | 69 | Co-authored-by: Alex Waygood 70 | 71 | -------------------------------------------------------------------------------- /data/changelogs/grpcio-channelz.md: -------------------------------------------------------------------------------- 1 | ## 1.0.0.20250506 (2025-05-06) 2 | 3 | Extract grpcio plugins (#13896) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/grpcio-health-checking.md: -------------------------------------------------------------------------------- 1 | ## 1.0.0.20250506 (2025-05-06) 2 | 3 | Extract grpcio plugins (#13896) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/grpcio-reflection.md: -------------------------------------------------------------------------------- 1 | ## 1.0.0.20250506 (2025-05-06) 2 | 3 | Extract grpcio plugins (#13896) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/grpcio-status.md: -------------------------------------------------------------------------------- 1 | ## 1.0.0.20250506 (2025-05-06) 2 | 3 | Extract grpcio plugins (#13896) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/grpcio.md: -------------------------------------------------------------------------------- 1 | ## 1.0.0.20250603 (2025-06-03) 2 | 3 | Improve grpcio serializer/deserializer types (#14093) 4 | 5 | ## 1.0.0.20250525 (2025-05-25) 6 | 7 | Update `grpcio` stub to import `grpc.aio` (#14132) 8 | 9 | ## 1.0.0.20250506 (2025-05-06) 10 | 11 | Extract grpcio plugins (#13896) 12 | 13 | Run Black after grpcio merge (#13944) 14 | 15 | grpc `_CallIterator` is an iterator (#13925) 16 | 17 | stubtest-complete grpcio plugins (#13932) 18 | 19 | ## 1.0.0.20250429 (2025-04-29) 20 | 21 | Remove Any in `stubs/grpcio/grpc_status/rpc_status.pyi` (#13895) 22 | 23 | ## 1.0.0.20250426 (2025-04-26) 24 | 25 | Import gRPC stubs from the grpc-stubs project (#11204) 26 | 27 | -------------------------------------------------------------------------------- /data/changelogs/hnswlib.md: -------------------------------------------------------------------------------- 1 | ## 0.8.0.20250227 (2025-02-27) 2 | 3 | [hnswlib] Add ArrayLike annotations and raise Numpy dependency (#13538) 4 | 5 | ## 0.8.0.20250224 (2025-02-24) 6 | 7 | Add type annotations for `hnswlib` (#13529) 8 | 9 | -------------------------------------------------------------------------------- /data/changelogs/hvac.md: -------------------------------------------------------------------------------- 1 | ## 2.3.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 2.3.0.20250429 (2025-04-29) 6 | 7 | [hvac] Clarify and improve some annotations (#13886) 8 | 9 | ## 2.3.0.20240621 (2024-06-21) 10 | 11 | Bump hvac to 2.3.* (#12168) 12 | 13 | ## 2.2.0.20240522 (2024-05-22) 14 | 15 | [stubsabot] Bump hvac to 2.2.* (#11839) 16 | 17 | ## 2.1.0.20240514 (2024-05-14) 18 | 19 | Complete types for hvac.v1.Client (#11886) 20 | 21 | ## 2.1.0.20240329 (2024-03-29) 22 | 23 | Improve hvac adapter types (#11659) 24 | 25 | ## 2.1.0.20240326 (2024-03-26) 26 | 27 | Add type stubs for hvac (#11591) 28 | 29 | -------------------------------------------------------------------------------- /data/changelogs/ibm-db.md: -------------------------------------------------------------------------------- 1 | ## 3.2.6.20250311 (2025-03-11) 2 | 3 | [stubsabot] Bump ibm-db to 3.2.6 (#13610) 4 | 5 | ## 3.2.5.20241231 (2024-12-31) 6 | 7 | [stubsabot] Bump ibm-db to 3.2.5 (#13348) 8 | 9 | Release: https://pypi.org/pypi/ibm-db/3.2.5 10 | Homepage: http://pypi.python.org/pypi/ibm_db/ 11 | Repository: https://github.com/ibmdb/python-ibmdb 12 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/ibm-db 13 | Diff: https://github.com/ibmdb/python-ibmdb/compare/v3.2.4...v3.2.5 14 | 15 | Stubsabot analysis of the diff between the two releases: 16 | - Total lines of Python code added: 13. 17 | - Total lines of Python code deleted: 9. 18 | 19 | ## 3.2.4.20241216 (2024-12-16) 20 | 21 | Bump ibm-db to 3.2.4 (#13251) 22 | 23 | ## 3.2.3.20241212 (2024-12-12) 24 | 25 | pin ibm-db to 3.2.3 (#13233) 26 | 27 | ## 3.2.0.20241204 (2024-12-04) 28 | 29 | Remove obsolete todo from `ibm_db.pyi` (#13170) 30 | 31 | The `SQL_ATTR_CONFIG_KEYWORDS_MAXLEN` attr is already there on line 100 32 | 33 | ## 3.2.0.20240311 (2024-03-11) 34 | 35 | Use PEP 570 syntax in third party stubs (#11554) 36 | 37 | ## 3.2.0.20240106 (2024-01-06) 38 | 39 | Update typing_extensions imports in third-party stubs (#11245) 40 | 41 | ## 3.2.0.1 (2023-11-24) 42 | 43 | ibm-db: Add SQL_ATTR_TXN_ISOLATION (#11060) 44 | 45 | ## 3.2.0.0 (2023-08-27) 46 | 47 | Update `ibm-db` to `3.2.*` (#10622) 48 | 49 | ## 3.1.0.3 (2023-08-13) 50 | 51 | Fill in all missing `upstream_repository` fields (#10571) 52 | 53 | Co-authored-by: Alex Waygood 54 | 55 | ## 3.1.0.2 (2023-02-21) 56 | 57 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 58 | 59 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 60 | 61 | ## 3.1.0.1 (2023-02-15) 62 | 63 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 64 | 65 | ## 3.1.0.0 (2022-12-24) 66 | 67 | Add stub for ibm_db (#9325) 68 | 69 | Co-authored-by: Jelle Zijlstra 70 | 71 | -------------------------------------------------------------------------------- /data/changelogs/icalendar.md: -------------------------------------------------------------------------------- 1 | ## 6.3.1.20250521 (2025-05-21) 2 | 3 | [icalendar] Update to 6.3.1 (#14105) 4 | 5 | ## 6.3.0.20250517 (2025-05-17) 6 | 7 | Bump icalendar to 6.3.* (#14078) 8 | 9 | ## 6.2.0.20250514 (2025-05-14) 10 | 11 | Bump icalendar to 6.2.* (#13963) 12 | 13 | ## 6.1.3.20250403 (2025-04-03) 14 | 15 | Remove Python 3.8 exclusive branches (#13772) 16 | 17 | ## 6.1.3.20250329 (2025-03-29) 18 | 19 | icalendar: update (#13737) 20 | 21 | Fixes #13735 22 | 23 | ## 6.1.2.20250321 (2025-03-21) 24 | 25 | [icalendar] Update to 6.1.2 (#13672) 26 | 27 | Finish icalendar.prop annotations 28 | 29 | ## 6.1.0.20250301 (2025-03-01) 30 | 31 | Fix conflicting imports (#13561) 32 | 33 | ## 6.1.0.20250119 (2025-01-19) 34 | 35 | icalendar: fix arg name (#13407) 36 | 37 | Fixes #13406 38 | 39 | ## 6.1.0.20250111 (2025-01-11) 40 | 41 | Officially drop Python 3.8 support (#13386) 42 | 43 | ## 6.1.0.20241128 (2024-11-28) 44 | 45 | [icalendar] Update to 6.1.* (#13109) 46 | 47 | ## 6.0.1.20241022 (2024-10-22) 48 | 49 | Use compatible version marker for icalendar (#12831) 50 | 51 | ## 6.0.0.20241015 (2024-10-15) 52 | 53 | Bump icalendar to 6.0.1 (#12802) 54 | 55 | ## 6.0.0.20241003 (2024-10-03) 56 | 57 | [icalendar] Update to 6.0.0 (#12706) 58 | 59 | ## 5.0.0.20240806 (2024-08-06) 60 | 61 | Bump mypy to 1.11.1 (#12463) 62 | 63 | ## 5.0.0.20240409 (2024-04-09) 64 | 65 | Add icalendar stubs (#11733) 66 | 67 | -------------------------------------------------------------------------------- /data/changelogs/inifile.md: -------------------------------------------------------------------------------- 1 | ## 0.4.0.20240310 (2024-03-10) 2 | 3 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 4 | 5 | Co-authored-by: Alex Waygood 6 | 7 | ## 0.4.0.20240106 (2024-01-06) 8 | 9 | Update typing_extensions imports in third-party stubs (#11245) 10 | 11 | ## 0.4.0.3 (2023-08-13) 12 | 13 | Fill in all missing `upstream_repository` fields (#10571) 14 | 15 | Co-authored-by: Alex Waygood 16 | 17 | ## 0.4.0.2 (2023-06-29) 18 | 19 | Stricter pyright checks for `inifile` (#10382) 20 | 21 | ## 0.4.0.1 (2023-06-08) 22 | 23 | inifile: add missing attributes (#10273) 24 | 25 | And make many attributes read-only. The primary entry point to this module in `IniFile` (or its subclass 26 | `AppIniFile`). Since the config file is read (from `filename`) and 27 | parsed (using the `dialect`) in the `IniFile` constructor, modifying 28 | attributes like `IniFile.filename` or `IniFile.dialect` after 29 | construction is likely to cause problems. 30 | 31 | ## 0.4.0.0 (2023-06-07) 32 | 33 | Add stubs for `inifile` (#10270) 34 | 35 | -------------------------------------------------------------------------------- /data/changelogs/ipaddress.md: -------------------------------------------------------------------------------- 1 | ## 1.0.8 (2022-01-30) 2 | 3 | Reduce use of `Any` in equality methods (#7081) 4 | 5 | Co-authored-by: Akuli 6 | 7 | ## 1.0.7 (2022-01-19) 8 | 9 | Use PEP 585 syntax in Python 2, `protobuf` & `_ast` stubs, where possible (#6949) 10 | 11 | ## 1.0.3 (2022-01-17) 12 | 13 | Use `_typeshed.Self` in Python 2, too (#6932) 14 | 15 | ## 1.0.1 (2021-10-12) 16 | 17 | Add star to all non-0.1 versions (#6146) 18 | 19 | -------------------------------------------------------------------------------- /data/changelogs/itsdangerous.md: -------------------------------------------------------------------------------- 1 | ## 1.1.6 (2021-11-26) 2 | 3 | Add mypy error codes to '# type: ignore' comments (#6379) 4 | 5 | ## 1.1.5 (2021-10-15) 6 | 7 | Use lowercase tuple where possible (#6170) 8 | 9 | ## 1.1.4 (2021-10-12) 10 | 11 | Add star to all non-0.1 versions (#6146) 12 | 13 | -------------------------------------------------------------------------------- /data/changelogs/jmespath.md: -------------------------------------------------------------------------------- 1 | ## 1.0.2.20250529 (2025-05-29) 2 | 3 | Improve `jmespath` (#14176) 4 | 5 | ## 1.0.2.20240106 (2024-01-06) 6 | 7 | Update typing_extensions imports in third-party stubs (#11245) 8 | 9 | ## 1.0.2.7 (2023-07-20) 10 | 11 | Add an upstream_repository field to METADATA.toml (#10487) 12 | 13 | Closes: #10478 14 | 15 | ## 1.0.2.6 (2023-03-27) 16 | 17 | Add defaults for third-party stubs I-L (#9955) 18 | 19 | ## 1.0.2.5 (2023-02-21) 20 | 21 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 22 | 23 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 24 | 25 | ## 1.0.2.4 (2023-01-05) 26 | 27 | Improve various `jmespath` types 28 | 29 | Merge `jmespath` from microsoft/python-type-stubs 30 | 31 | ## 1.0.2.3 (2022-12-21) 32 | 33 | Fix return type of `search` in jmespath stubs (#9394) 34 | 35 | ## 1.0.2.2 (2022-12-14) 36 | 37 | Add types for jmespath internals (#9338) 38 | 39 | Co-authored-by: Alex Waygood 40 | 41 | ## 1.0.2.1 (2022-11-08) 42 | 43 | Fix and allow classes with missing metaclasses (#9136) 44 | 45 | ## 1.0.2 (2022-07-19) 46 | 47 | Add missing third party modules (#8321) 48 | 49 | Co-authored-by: Alex Waygood 50 | Co-authored-by: hauntsaninja <> 51 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 52 | 53 | ## 1.0.1 (2022-07-07) 54 | 55 | Annotate `jmespath` public API (#8253) 56 | 57 | ## 1.0.0 (2022-06-26) 58 | 59 | [stubsabot] Bump jmespath to 1.0.* (#8183) 60 | 61 | Co-authored-by: hauntsaninja <> 62 | 63 | ## 0.10.3 (2022-06-26) 64 | 65 | Check missing definitions for several packages (#8167) 66 | 67 | Co-authored-by: hauntsaninja <> 68 | 69 | ## 0.10.1 (2021-10-12) 70 | 71 | Add star to all non-0.1 versions (#6146) 72 | 73 | -------------------------------------------------------------------------------- /data/changelogs/jwcrypto.md: -------------------------------------------------------------------------------- 1 | ## 1.5.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 1.5.0.20250514 (2025-05-14) 6 | 7 | jwcrypto: Fix export_to_pem password argument (#14037) 8 | 9 | ## 1.5.0.20250413 (2025-04-13) 10 | 11 | jwcrypto: type most of the rest of `JWT` and `JWKSet.generate` function (#13807) 12 | 13 | ## 1.5.0.20250326 (2025-03-26) 14 | 15 | Improve `jwcrypto` (#13715) 16 | 17 | ## 1.5.0.20241221 (2024-12-21) 18 | 19 | Update to mypy 1.14 (#13272) 20 | 21 | ## 1.5.0.20240925 (2024-09-25) 22 | 23 | Add basic jwcrypto stubs (#12687) 24 | 25 | -------------------------------------------------------------------------------- /data/changelogs/keyboard.md: -------------------------------------------------------------------------------- 1 | ## 0.13.2.20240310 (2024-03-10) 2 | 3 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 4 | 5 | Co-authored-by: Alex Waygood 6 | 7 | ## 0.13.2.20240106 (2024-01-06) 8 | 9 | Update typing_extensions imports in third-party stubs (#11245) 10 | 11 | ## 0.13.2.8 (2023-07-20) 12 | 13 | Add an upstream_repository field to METADATA.toml (#10487) 14 | 15 | Closes: #10478 16 | 17 | ## 0.13.2.7 (2023-04-17) 18 | 19 | `keyboard` : Update `stubtest_allowlist` and add comments for missing defaults (#9965) 20 | 21 | ## 0.13.2.6 (2023-03-27) 22 | 23 | Add defaults for third-party stubs I-L (#9955) 24 | 25 | ## 0.13.2.5 (2023-02-21) 26 | 27 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 28 | 29 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 30 | 31 | ## 0.13.2.4 (2023-02-07) 32 | 33 | Enable flake8-pyi's Y037 (#9686) 34 | 35 | ## 0.13.2.3 (2023-01-13) 36 | 37 | Allowlist-only fixes for stubtest on Windows (#9522) 38 | 39 | ## 0.13.2.2 (2022-11-14) 40 | 41 | Comments explaining why `keyboard` and `tzlocal` are not run on multiple platforms (#9188) 42 | 43 | ## 0.13.2.1 (2022-11-03) 44 | 45 | Update pyright to 1.1.278 (#9077) 46 | 47 | Co-authored-by: Alex Waygood 48 | 49 | ## 0.13.2 (2022-09-27) 50 | 51 | Bump mypy to 0.981 (#8796) 52 | 53 | ## 0.13.1 (2022-09-22) 54 | 55 | Add reportMissingParameterType to `pyrightconfig.stricter.json` (#8770) 56 | 57 | ## 0.13.0 (2022-09-06) 58 | 59 | Added stubs for keyboard (#8666) 60 | 61 | -------------------------------------------------------------------------------- /data/changelogs/libsass.md: -------------------------------------------------------------------------------- 1 | ## 0.23.0.20250401 (2025-04-01) 2 | 3 | Add `__all__` part 2 (#13719) 4 | 5 | --------- 6 | 7 | Co-authored-by: Avasam 8 | 9 | ## 0.23.0.20241221 (2024-12-21) 10 | 11 | Update to mypy 1.14 (#13272) 12 | 13 | ## 0.23.0.20240724 (2024-07-24) 14 | 15 | `setuptools` & `distutils`: `ClassVar` mutables (and tuples) (#12403) 16 | 17 | ## 0.23.0.20240425 (2024-04-25) 18 | 19 | Bump pyright to v1.1.360 (#11810) 20 | 21 | ## 0.23.0.20240311 (2024-03-11) 22 | 23 | Make stubtest pass on libsass/passlib/redis/tree-sitter if you're using Python 3.12 (#11561) 24 | 25 | Use PEP 570 syntax in third party stubs (#11554) 26 | 27 | ## 0.23.0.20240109 (2024-01-09) 28 | 29 | Bump libsass to 0.23.* (#11253) 30 | 31 | ## 0.22.0.20240106 (2024-01-06) 32 | 33 | Update typing_extensions imports in third-party stubs (#11245) 34 | 35 | ## 0.22.0.1 (2023-11-30) 36 | 37 | Use `ConvertibleToInt`/`ConvertibleToFloat` in many third-party stubs (#11022) 38 | 39 | Note: this may make the latest version of certain stubs packages incompatible with older versions of mypy and pyright. 40 | 41 | ## 0.22.0.0 (2023-09-01) 42 | 43 | Add stubs for libsass (#10638) 44 | 45 | -------------------------------------------------------------------------------- /data/changelogs/lupa.md: -------------------------------------------------------------------------------- 1 | ## 2.4.0.20250112 (2025-01-12) 2 | 3 | [stubsabot] Bump lupa to 2.4.* (#13391) 4 | 5 | Co-authored-by: stubsabot <> 6 | 7 | ## 2.3.0.20250111 (2025-01-11) 8 | 9 | [stubsabot] Bump lupa to 2.3.* (#13383) 10 | 11 | Release: https://pypi.org/pypi/lupa/2.3 12 | Homepage: https://github.com/scoder/lupa 13 | Repository: https://github.com/scoder/lupa 14 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/lupa 15 | 16 | ## 2.2.0.20240917 (2024-09-17) 17 | 18 | Add lupa stubs (#12650) 19 | 20 | -------------------------------------------------------------------------------- /data/changelogs/lzstring.md: -------------------------------------------------------------------------------- 1 | ## 1.0.0.20240228 (2024-02-28) 2 | 3 | Add stubs for lzstring (#11479) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/m3u8.md: -------------------------------------------------------------------------------- 1 | ## 6.0.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 6.0.0.20241227 (2024-12-27) 6 | 7 | Enable Ruff PGH rules (#13304) 8 | 9 | ## 6.0.0.20241002 (2024-10-02) 10 | 11 | add stubs for m3u8 (#12683) 12 | 13 | -------------------------------------------------------------------------------- /data/changelogs/maxminddb.md: -------------------------------------------------------------------------------- 1 | ## 1.5.0 (2021-09-20) 2 | 3 | maxminddb: Update version field and set obsolete_since (#6055) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/nanoid.md: -------------------------------------------------------------------------------- 1 | ## 2.0.0.20240601 (2024-06-01) 2 | 3 | add stubs for py-nanoid (#12074) 4 | 5 | Co-authored-by: Alex Waygood 6 | 7 | -------------------------------------------------------------------------------- /data/changelogs/nanoleafapi.md: -------------------------------------------------------------------------------- 1 | ## 2.1.0.20241229 (2024-12-29) 2 | 3 | add stubs for nanoleafapi (#11619) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/netifaces.md: -------------------------------------------------------------------------------- 1 | ## 0.11.0.20241025 (2024-10-25) 2 | 3 | Fix linting issues (#12898) 4 | 5 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 6 | 7 | ## 0.11.0.20241022 (2024-10-22) 8 | 9 | Add stubs for "netifaces" package (#12854) 10 | 11 | -------------------------------------------------------------------------------- /data/changelogs/objgraph.md: -------------------------------------------------------------------------------- 1 | ## 3.6.0.20240907 (2024-09-07) 2 | 3 | Add stubs for `objgraph` (#12608) 4 | 5 | Co-authored-by: Alex Waygood 6 | Co-authored-by: Jelle Zijlstra 7 | 8 | -------------------------------------------------------------------------------- /data/changelogs/olefile.md: -------------------------------------------------------------------------------- 1 | ## 0.47.0.20240806 (2024-08-06) 2 | 3 | Bump mypy to 1.11.1 (#12463) 4 | 5 | ## 0.47.0.20240626 (2024-06-26) 6 | 7 | Updated olefile types (#12097) 8 | 9 | ## 0.47.0.20240301 (2024-03-01) 10 | 11 | Fix invalid noqa comments and poorly formatted type ignores (#11497) 12 | 13 | ## 0.47.0.20240218 (2024-02-18) 14 | 15 | Added types for olefile (#11416) 16 | 17 | -------------------------------------------------------------------------------- /data/changelogs/orjson.md: -------------------------------------------------------------------------------- 1 | ## 3.6.1 (2021-10-12) 2 | 3 | Add star to all non-0.1 versions (#6146) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/paho-mqtt.md: -------------------------------------------------------------------------------- 1 | ## 1.6.0.20240321 (2024-03-21) 2 | 3 | Mark types-paho-mqtt as obsolete since v2.0.0 (#11635) 4 | 5 | ## 1.6.0.20240106 (2024-01-06) 6 | 7 | Update typing_extensions imports in third-party stubs (#11245) 8 | 9 | ## 1.6.0.7 (2023-08-13) 10 | 11 | Fill in all missing `upstream_repository` fields (#10571) 12 | 13 | Co-authored-by: Alex Waygood 14 | 15 | ## 1.6.0.6 (2023-03-27) 16 | 17 | Add default values for third-party stubs beginning with 'P' (#9957) 18 | 19 | ## 1.6.0.5 (2023-02-22) 20 | 21 | Update `Unused` parameters in `stubs/` (#9704) 22 | 23 | * Update _Unused TypeAlias 24 | 25 | * Update `object | None` params 26 | 27 | * Replace unused `object` parameters with `Unused` alias 28 | 29 | ## 1.6.0.4 (2023-02-21) 30 | 31 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 32 | 33 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 34 | 35 | ## 1.6.0.3 (2023-02-07) 36 | 37 | Enable flake8-pyi's Y037 (#9686) 38 | 39 | ## 1.6.0.2 (2023-02-02) 40 | 41 | Manual changes of `Any` union to `Incomplete` in stubs folder (#9566) 42 | 43 | - ClassVar[Any | None] 44 | - Missed previous changes due to alias 45 | - Manual review of leftover Any unions (`| Any` and `Any |`) 46 | 47 | ## 1.6.0.0 (2022-10-06) 48 | 49 | Add paho-mqtt stubs (#8853) 50 | 51 | -------------------------------------------------------------------------------- /data/changelogs/parsimonious.md: -------------------------------------------------------------------------------- 1 | ## 0.10.0.20240331 (2024-03-31) 2 | 3 | Remove bare Incomplete annotations in third-party stubs (#11671) 4 | 5 | ## 0.10.0.10 (2023-11-24) 6 | 7 | Third-party stubs: remove unused `type: ignore`s (#11063) 8 | 9 | ## 0.10.0.9 (2023-07-20) 10 | 11 | Add an upstream_repository field to METADATA.toml (#10487) 12 | 13 | Closes: #10478 14 | 15 | ## 0.10.0.8 (2023-03-27) 16 | 17 | Add default values for third-party stubs beginning with 'P' (#9957) 18 | 19 | ## 0.10.0.7 (2023-03-09) 20 | 21 | `parsimonious`: Update return types of `NodeVisitor`'s methods (#9564) 22 | 23 | ## 0.10.0.6 (2023-02-21) 24 | 25 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 26 | 27 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 28 | 29 | ## 0.10.0.5 (2023-02-15) 30 | 31 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 32 | 33 | ## 0.10.0.4 (2023-02-07) 34 | 35 | Enable flake8-pyi's Y037 (#9686) 36 | 37 | ## 0.10.0.3 (2023-02-07) 38 | 39 | Bump mypy to 1.0 (#9684) 40 | 41 | ## 0.10.0.2 (2023-02-02) 42 | 43 | Manual changes of `Any` union to `Incomplete` in stubs folder (#9566) 44 | 45 | - ClassVar[Any | None] 46 | - Missed previous changes due to alias 47 | - Manual review of leftover Any unions (`| Any` and `Any |`) 48 | 49 | ## 0.10.0.1 (2022-10-20) 50 | 51 | Mark `parsimonious` as completed (#8934) 52 | 53 | ## 0.10.0 (2022-09-13) 54 | 55 | Update parsimonious to 0.10.0 (#8730) 56 | 57 | ## 0.9.1 (2022-07-12) 58 | 59 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 60 | 61 | ## 0.9.0 (2022-06-21) 62 | 63 | Bump parsimonious to 0.9.* (#8117) 64 | 65 | ## 0.8.5 (2022-05-07) 66 | 67 | Import generics from standard modules in all third-party stubs (#7791) 68 | 69 | ## 0.8.4 (2022-04-16) 70 | 71 | Third-party stubs: import from `collections.abc` where possible (#7637) 72 | 73 | ## 0.8.3 (2022-04-16) 74 | 75 | Use `TypeAlias` where possible for type aliases (#7630) 76 | 77 | ## 0.8.2 (2022-03-19) 78 | 79 | Add mypy error codes to `type: ignore`s, remove unused ignores (#7504) 80 | 81 | Co-authored-by: Jelle Zijlstra 82 | 83 | ## 0.8.1 (2022-03-13) 84 | 85 | parsimonious: `re.Match` does not exist in Python 3.6 (#7482) 86 | 87 | It has to be imported from `typing` in <3.7. 88 | Refs https://github.com/python/typeshed/pull/7478. 89 | 90 | ## 0.8.0 (2022-03-13) 91 | 92 | Stubs for parsimonious (#7477) 93 | 94 | -------------------------------------------------------------------------------- /data/changelogs/passpy.md: -------------------------------------------------------------------------------- 1 | ## 1.0.2.4 (2023-07-20) 2 | 3 | Add an upstream_repository field to METADATA.toml (#10487) 4 | 5 | Closes: #10478 6 | 7 | ## 1.0.2.3 (2023-03-27) 8 | 9 | Add default values for third-party stubs beginning with 'P' (#9957) 10 | 11 | ## 1.0.2.2 (2023-02-21) 12 | 13 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 14 | 15 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 16 | 17 | ## 1.0.2.1 (2022-11-01) 18 | 19 | Complete `passpy` stubs (#8959) 20 | 21 | ## 1.0.2 (2022-07-12) 22 | 23 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 24 | 25 | ## 1.0.0 (2021-12-22) 26 | 27 | adding stubs for passpy API (#6651) 28 | 29 | Co-authored-by: Jelle Zijlstra 30 | 31 | -------------------------------------------------------------------------------- /data/changelogs/pep8-naming.md: -------------------------------------------------------------------------------- 1 | ## 0.15.0.20250501 (2025-05-01) 2 | 3 | Bump pep8-naming to 0.15.* (#13908) 4 | 5 | ## 0.14.0.20250401 (2025-04-01) 6 | 7 | Complete stubs for `pep8-naming` (#13741) 8 | 9 | ## 0.14.0.20240522 (2024-05-22) 10 | 11 | [stubsabot] Bump pep8-naming to 0.14.* (#11924) 12 | 13 | ## 0.13.0.5 (2023-07-20) 14 | 15 | Add an upstream_repository field to METADATA.toml (#10487) 16 | 17 | Closes: #10478 18 | 19 | ## 0.13.0.4 (2023-05-10) 20 | 21 | Add `partial_stub` metadata field (#10157) 22 | 23 | ## 0.13.0.3 (2023-02-21) 24 | 25 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 26 | 27 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 28 | 29 | ## 0.13.0.2 (2022-10-15) 30 | 31 | Use `Incomplete` instead of `Any` in `__getattr__` (#8903) 32 | 33 | ## 0.13.0.1 (2022-10-07) 34 | 35 | Add two more methods to `pep8-naming` stub (#8864) 36 | 37 | ## 0.13.0 (2022-06-26) 38 | 39 | [stubsabot] Bump pep8-naming to 0.13.* (#8181) 40 | 41 | * [stubsabot] Bump pep8-naming to 0.13.* 42 | 43 | * Bye bye Python 2 44 | 45 | Co-authored-by: hauntsaninja <> 46 | Co-authored-by: Alex Waygood 47 | 48 | ## 0.12.1 (2022-04-16) 49 | 50 | Third-party stubs: import from `collections.abc` where possible (#7637) 51 | 52 | ## 0.12.0 (2022-01-25) 53 | 54 | Fix missing return type in pep8ext_naming (#7031) 55 | 56 | Add stubs for pep8-naming (#7030) 57 | 58 | -------------------------------------------------------------------------------- /data/changelogs/pexpect.md: -------------------------------------------------------------------------------- 1 | ## 4.9.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 4.9.0.20241208 (2024-12-08) 6 | 7 | Correct `exitstatus` type (#13216) 8 | 9 | ## 4.9.0.20240806 (2024-08-06) 10 | 11 | Bump mypy to 1.11.1 (#12463) 12 | 13 | ## 4.9.0.20240311 (2024-03-11) 14 | 15 | Use PEP 570 syntax in third party stubs (#11554) 16 | 17 | ## 4.9.0.20240207 (2024-02-07) 18 | 19 | Bump pexpect to 4.9 (#11287) 20 | 21 | ## 4.8.0.20240106 (2024-01-06) 22 | 23 | Fix timeout argument on pexpect spawn class constructor (#11239) (#11240) 24 | 25 | ## 4.8.0.20240105 (2024-01-05) 26 | 27 | fix pexpect delaybeforesend_type (#11221) 28 | 29 | ## 4.8.0.2 (2023-11-10) 30 | 31 | Support for pexpect.spawn(..., logfile=sys.stdout) (#10976) 32 | 33 | ## 4.8.0.1 (2023-08-13) 34 | 35 | Fill in all missing `upstream_repository` fields (#10571) 36 | 37 | Co-authored-by: Alex Waygood 38 | 39 | ## 4.8.0.0 (2023-06-21) 40 | 41 | Add pexpect stubs (#10300) 42 | 43 | -------------------------------------------------------------------------------- /data/changelogs/playsound.md: -------------------------------------------------------------------------------- 1 | ## 1.3.1.3 (2023-07-20) 2 | 3 | Add an upstream_repository field to METADATA.toml (#10487) 4 | 5 | Closes: #10478 6 | 7 | ## 1.3.1.2 (2023-02-21) 8 | 9 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 10 | 11 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 12 | 13 | ## 1.3.1.1 (2023-01-25) 14 | 15 | Fix some stubtest complaints before they happen (#9585) 16 | 17 | Add missing objects to various stubs 18 | 19 | ## 1.3.1 (2022-06-26) 20 | 21 | Check missing definitions for several packages (#8167) 22 | 23 | Co-authored-by: hauntsaninja <> 24 | 25 | ## 1.3.0 (2022-01-10) 26 | 27 | Add stubs for playsound (#6881) 28 | 29 | -------------------------------------------------------------------------------- /data/changelogs/pluggy.md: -------------------------------------------------------------------------------- 1 | ## 1.2.0.20240106 (2024-01-06) 2 | 3 | Update typing_extensions imports in third-party stubs (#11245) 4 | 5 | Remove Python 3.7 branches (#11238) 6 | 7 | ## 1.2.0.2 (2023-08-27) 8 | 9 | [stubsabot] Mark pluggy as obsolete since 1.3.0 (#10618) 10 | 11 | Release: https://pypi.org/pypi/pluggy/1.3.0 12 | Homepage: https://github.com/pytest-dev/pluggy 13 | Repository: https://github.com/pytest-dev/pluggy 14 | Diff: https://github.com/pytest-dev/pluggy/compare/1.2.0...1.3.0 15 | 16 | Co-authored-by: stubsabot <> 17 | 18 | ## 1.2.0.1 (2023-07-20) 19 | 20 | Add an upstream_repository field to METADATA.toml (#10487) 21 | 22 | Closes: #10478 23 | 24 | ## 1.2.0.0 (2023-07-20) 25 | 26 | Add stubs for `pluggy==1.2.0` (#10473) 27 | 28 | Signed-off-by: oleg.hoefling 29 | Signed-off-by: Oleg Hoefling 30 | Co-authored-by: Alex Waygood 31 | 32 | -------------------------------------------------------------------------------- /data/changelogs/portpicker.md: -------------------------------------------------------------------------------- 1 | ## 1.6.0.0 (2023-10-29) 2 | 3 | Add stubs for portpicker (#10944) 4 | 5 | Co-authored-by: Alex Waygood 6 | 7 | -------------------------------------------------------------------------------- /data/changelogs/prettytable.md: -------------------------------------------------------------------------------- 1 | ## 3.4.2.6 (2023-03-27) 2 | 3 | Add default values for third-party stubs beginning with 'P' (#9957) 4 | 5 | ## 3.4.2.5 (2023-02-21) 6 | 7 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 8 | 9 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 10 | 11 | ## 3.4.2.4 (2023-01-18) 12 | 13 | Replace `Any` with `Incomplete` in many places (#9558) 14 | 15 | ## 3.4.2.3 (2022-12-28) 16 | 17 | Check for unused `pyright: ignore` and differentiate from mypy ignores (#9397) 18 | 19 | ## 3.4.2.2 (2022-11-23) 20 | 21 | Mark first argument of `__[get|set|del]attr__` as `str` (#9245) 22 | 23 | ## 3.4.2.1 (2022-10-29) 24 | 25 | [stubsabot] Mark prettytable as obsolete since 3.5.0 (#9023) 26 | 27 | Release: https://pypi.org/pypi/prettytable/3.5.0 28 | Homepage: https://github.com/jazzband/prettytable 29 | Diff: https://github.com/jazzband/prettytable/compare/3.4.1...3.5.0 30 | 31 | Co-authored-by: stubsabot <> 32 | 33 | ## 3.4.2 (2022-09-25) 34 | 35 | prettytable: get_X_string return str (#8791) 36 | 37 | ## 3.4.1 (2022-09-03) 38 | 39 | `prettytable`: Fix stubtest errors (#8676) 40 | 41 | Fixes #8674. A partial revert of 9e696275018ef3798bb596821ad0d8b4b8e80ab6. 42 | 43 | ## 3.4.0 (2022-08-29) 44 | 45 | Bump prettytable to 3.4.* (#8621) 46 | 47 | ## 3.3.1 (2022-07-12) 48 | 49 | Use error codes for type ignores (#8280) 50 | 51 | Disable reportSelfClsParameterName for pytype as this is out of typeshed's 52 | control 53 | 54 | Closes: #7497 55 | 56 | ## 3.3.0 (2022-06-30) 57 | 58 | Bump prettytable to 3.3.* (#8207) 59 | 60 | Co-authored-by: hauntsaninja <> 61 | Co-authored-by: Alex Waygood 62 | 63 | ## 2.1.3 (2022-06-26) 64 | 65 | Check missing definitions for several packages (#8167) 66 | 67 | Co-authored-by: hauntsaninja <> 68 | 69 | ## 2.1.1 (2021-10-12) 70 | 71 | Add star to all non-0.1 versions (#6146) 72 | 73 | -------------------------------------------------------------------------------- /data/changelogs/pyRFC3339.md: -------------------------------------------------------------------------------- 1 | ## 2.0.1.20241107 (2024-11-07) 2 | 3 | Update pyRFC3339 to 2.0.1 (#12960) 4 | 5 | ## 1.1.1.5 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 1.1.1.4 (2023-03-27) 12 | 13 | Add default values for third-party stubs beginning with 'P' (#9957) 14 | 15 | ## 1.1.1.3 (2023-02-21) 16 | 17 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 18 | 19 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 20 | 21 | ## 1.1.1.2 (2023-02-15) 22 | 23 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 24 | 25 | ## 1.1.1.1 (2022-11-21) 26 | 27 | Mark pyRFC3339 as completed (#9233) 28 | 29 | ## 1.1.0 (2021-10-12) 30 | 31 | Update remaining versions for third-party stubs (#6094) 32 | 33 | Also remove the python2 markers of packages that don't list Python 2 34 | as supported in the latest version. 35 | 36 | Don't special case version '0.1' 37 | 38 | Co-authored-by: Akuli 39 | 40 | -------------------------------------------------------------------------------- /data/changelogs/pyasn1.md: -------------------------------------------------------------------------------- 1 | ## 0.6.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 0.6.0.20250208 (2025-02-08) 6 | 7 | Bump mypy to 1.15.0 (#13473) 8 | 9 | ## 0.6.0.20240913 (2024-09-13) 10 | 11 | [pyasn1] Remove items removed from 0.6.1 (#12646) 12 | 13 | ## 0.6.0.20240824 (2024-08-24) 14 | 15 | Resolve some stubtest allowlist entries by marking params as keyword-only (#12581) 16 | 17 | ## 0.6.0.20240402 (2024-04-02) 18 | 19 | Bump pyasn1 to 0.6.* (#11681) 20 | 21 | ## 0.5.0.20240301 (2024-03-01) 22 | 23 | Update `pyright` version to 1.1.350 (#11501) 24 | 25 | If you're reading about this commit in an auto-generated changelog: this is an internal change that should have no impact on how these stubs are understood by static-analysis tools such as type checkers or IDEs 26 | 27 | ## 0.5.0.20240205 (2024-02-05) 28 | 29 | A new shade of Black (#11362) 30 | 31 | ## 0.5.0.20240106 (2024-01-06) 32 | 33 | Update typing_extensions imports in third-party stubs (#11245) 34 | 35 | ## 0.5.0.20231222 (2023-12-22) 36 | 37 | Bump mypy (and a few other test dependencies) (#11196) 38 | 39 | ## 0.5.0.1 (2023-11-30) 40 | 41 | Use `ConvertibleToInt`/`ConvertibleToFloat` in many third-party stubs (#11022) 42 | 43 | Note: this may make the latest version of certain stubs packages incompatible with older versions of mypy and pyright. 44 | 45 | ## 0.5.0.0 (2023-10-04) 46 | 47 | Bump pyasn1 to 0.5.* (#10801) 48 | 49 | ## 0.4.0.6 (2023-07-20) 50 | 51 | Add an upstream_repository field to METADATA.toml (#10487) 52 | 53 | Closes: #10478 54 | 55 | ## 0.4.0.5 (2023-03-27) 56 | 57 | Add default values for third-party stubs beginning with 'P' (#9957) 58 | 59 | ## 0.4.0.4 (2023-02-22) 60 | 61 | Update `Unused` parameters in `stubs/` (#9704) 62 | 63 | * Update _Unused TypeAlias 64 | 65 | * Update `object | None` params 66 | 67 | * Replace unused `object` parameters with `Unused` alias 68 | 69 | ## 0.4.0.3 (2023-02-21) 70 | 71 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 72 | 73 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 74 | 75 | ## 0.4.0.2 (2023-02-15) 76 | 77 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 78 | 79 | ## 0.4.0.1 (2023-02-07) 80 | 81 | Bump mypy to 1.0 (#9684) 82 | 83 | ## 0.4.0.0 (2023-01-06) 84 | 85 | Add stubs for `pyasn1` (#9437) 86 | 87 | Co-authored-by: Alex Waygood 88 | 89 | -------------------------------------------------------------------------------- /data/changelogs/pycocotools.md: -------------------------------------------------------------------------------- 1 | ## 2.0.0.20250111 (2025-01-11) 2 | 3 | Officially drop Python 3.8 support (#13386) 4 | 5 | ## 2.0.0.20241229 (2024-12-29) 6 | 7 | Fix todo in pycocotools (#13182) 8 | 9 | Adds numpy types. 10 | All the types were already there as comments. 11 | 12 | ## 2.0.0.20240806 (2024-08-06) 13 | 14 | Bump mypy to 1.11.1 (#12463) 15 | 16 | ## 2.0.0.20240106 (2024-01-06) 17 | 18 | Update typing_extensions imports in third-party stubs (#11245) 19 | 20 | ## 2.0.0.5 (2023-11-24) 21 | 22 | Third-party stubs: remove unused `type: ignore`s (#11063) 23 | 24 | ## 2.0.0.4 (2023-07-20) 25 | 26 | Add an upstream_repository field to METADATA.toml (#10487) 27 | 28 | Closes: #10478 29 | 30 | ## 2.0.0.3 (2023-03-27) 31 | 32 | Add default values for third-party stubs beginning with 'P' (#9957) 33 | 34 | ## 2.0.0.2 (2023-03-17) 35 | 36 | [pycocotools] Fix COCOeval.eval and Params.areaRng (#9897) 37 | 38 | * Rename `_EvaluationResult` to `_ImageEvaluationResult` 39 | * Add new `_EvaluationResult` 40 | * Fix type of `COCOeval.eval` 41 | * Correct Params.areaRng which is in fact a list of pairs 42 | 43 | ## 2.0.0.1 (2023-02-21) 44 | 45 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 46 | 47 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 48 | 49 | ## 2.0.0.0 (2022-11-28) 50 | 51 | Add stubs for pycocotools (#9086) 52 | 53 | Co-authored-by: Alex Waygood 54 | 55 | -------------------------------------------------------------------------------- /data/changelogs/pyfarmhash.md: -------------------------------------------------------------------------------- 1 | ## 0.4.0.20240902 (2024-09-02) 2 | 3 | [stubsabot] Bump pyfarmhash to 0.4.* (#12597) 4 | 5 | Co-authored-by: stubsabot <> 6 | 7 | ## 0.3.1.20240311 (2024-03-11) 8 | 9 | Use PEP 570 syntax in third party stubs (#11554) 10 | 11 | ## 0.3.1.2 (2023-07-20) 12 | 13 | Add an upstream_repository field to METADATA.toml (#10487) 14 | 15 | Closes: #10478 16 | 17 | ## 0.3.1.1 (2023-02-21) 18 | 19 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 20 | 21 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 22 | 23 | ## 0.3.1 (2022-06-25) 24 | 25 | ujson, pyfarmhash, toposort: check for missing definitions (#8153) 26 | 27 | Co-authored-by: hauntsaninja <> 28 | 29 | ## 0.3.0 (2022-06-14) 30 | 31 | [stubsabot] Bump pyfarmhash to 0.3.* (#8079) 32 | 33 | Co-authored-by: hauntsaninja <> 34 | 35 | ## 0.2.2 (2021-10-12) 36 | 37 | Add star to all non-0.1 versions (#6146) 38 | 39 | -------------------------------------------------------------------------------- /data/changelogs/pygit2.md: -------------------------------------------------------------------------------- 1 | ## 1.15.0.20250319 (2025-03-19) 2 | 3 | [CI] Run stubtest with Python 3.13 (#13638) 4 | 5 | ## 1.15.0.20241020 (2024-10-20) 6 | 7 | Update mypy to 1.12.0 (#12859) 8 | 9 | ## 1.15.0.20241012 (2024-10-12) 10 | 11 | [stubsabot] Mark pygit2 as obsolete since 1.16.0 (#12785) 12 | 13 | ## 1.15.0.20240822 (2024-08-22) 14 | 15 | Using precise code for `pyright: ignore` and re-enabling various pyright tests (#12576) 16 | 17 | ## 1.15.0.20240813 (2024-08-13) 18 | 19 | Use Generator instead of Iterator for 3rd-party context managers (#12481) 20 | 21 | ## 1.15.0.20240806 (2024-08-06) 22 | 23 | Add reexport to RemoteCallbacks in pygit2 (#12483) 24 | 25 | ## 1.15.0.20240714 (2024-07-14) 26 | 27 | Bump pygit2 to 1.15.* (#12319) 28 | 29 | ## 1.15.0.20240708 (2024-07-08) 30 | 31 | Pin pygit2 to 1.15.0 (#12293) 32 | 33 | Fixes #12292 34 | 35 | ## 1.15.0.20240520 (2024-05-20) 36 | 37 | Bump pygit2 to 1.15 and fix enums (#11983) 38 | 39 | ## 1.14.0.20240317 (2024-03-17) 40 | 41 | pygit2: Workaround python/mypy#16972 (#11584) 42 | 43 | To fix the signatures of `clone_repository` and `init_repository` as 44 | seen by type checkers. 45 | 46 | ## 1.14.0.20240313 (2024-03-13) 47 | 48 | pygit2: Add missing Repository fields (#11579) 49 | 50 | Add stubs for pygit2 (#11374) 51 | 52 | The upstream library is very tricky to type (likely requires nontrivial 53 | refactoring), and only contains partial type information, but stubs are 54 | a lot easier because only the public signatures are involved this way, 55 | so I plan to first make the library usable in typed projects by making 56 | stubs available here, then gradually work my way upstream. 57 | 58 | The stubs are auto-generated then completed with fully manual inspection 59 | of every Python source file. The `_pygit2.pyi` comes from upstream and 60 | is mostly untouched except for required style changes, the signature of 61 | `options()`, and `FilterSource` which is missing from upstream. 62 | 63 | -------------------------------------------------------------------------------- /data/changelogs/pyjks.md: -------------------------------------------------------------------------------- 1 | ## 20.0.0.20240310 (2024-03-10) 2 | 3 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 4 | 5 | Co-authored-by: Alex Waygood 6 | 7 | ## 20.0.0.20240106 (2024-01-06) 8 | 9 | Update typing_extensions imports in third-party stubs (#11245) 10 | 11 | ## 20.0.0.1 (2023-10-06) 12 | 13 | [pyjks] Fill in jks.bks and other modules, improved constructors (#10815) 14 | 15 | ## 20.0.0.0 (2023-10-01) 16 | 17 | Add stubs for `pyjks` (#10797) 18 | 19 | Co-authored-by: Alex Waygood 20 | 21 | -------------------------------------------------------------------------------- /data/changelogs/pynput.md: -------------------------------------------------------------------------------- 1 | ## 1.8.1.20250318 (2025-03-18) 2 | 3 | [pynput] Update to 1.8.1 (#13647) 4 | 5 | ## 1.8.0.20250306 (2025-03-06) 6 | 7 | Bump pynput to 1.8.* (#13583) 8 | 9 | ## 1.7.8.20250304 (2025-03-04) 10 | 11 | Enable Ruff PLC (Pylint Convention) (#13306) 12 | 13 | ## 1.7.8.20250301 (2025-03-01) 14 | 15 | [stubsabot] Bump pynput to 1.7.8 (#13565) 16 | 17 | ## 1.7.7.20241221 (2024-12-21) 18 | 19 | Update to mypy 1.14 (#13272) 20 | 21 | ## 1.7.7.20241127 (2024-11-27) 22 | 23 | Remove obsolete OptExcInfo from sys (#13117) 24 | 25 | ## 1.7.7.20240813 (2024-08-13) 26 | 27 | Use Generator instead of Iterator for 3rd-party context managers (#12481) 28 | 29 | ## 1.7.7.20240601 (2024-06-01) 30 | 31 | Bump pynput to 1.7.7 (#12069) 32 | 33 | ## 1.7.6.20240511 (2024-05-11) 34 | 35 | Pin pynput more tightly (#11897) 36 | 37 | Fixes #11896 38 | 39 | ## 1.7.5.20240423 (2024-04-23) 40 | 41 | Add precise values for enum members where possible (#11299) 42 | 43 | Co-authored-by: Jelle Zijlstra 44 | Co-authored-by: Alex Waygood 45 | 46 | ## 1.7.5.20240311 (2024-03-11) 47 | 48 | Use Python 3.11 for third-party stubtest in CI (#11562) 49 | 50 | ## 1.7.5.20240205 (2024-02-05) 51 | 52 | A new shade of Black (#11362) 53 | 54 | ## 1.7.5.20240106 (2024-01-06) 55 | 56 | Update typing_extensions imports in third-party stubs (#11245) 57 | 58 | ## 1.7.5.20231222 (2023-12-22) 59 | 60 | Bump mypy (and a few other test dependencies) (#11196) 61 | 62 | ## 1.7.5.7 (2023-07-20) 63 | 64 | Add an upstream_repository field to METADATA.toml (#10487) 65 | 66 | Closes: #10478 67 | 68 | ## 1.7.5.6 (2023-03-27) 69 | 70 | Add default values for third-party stubs beginning with 'P' (#9957) 71 | 72 | ## 1.7.5.5 (2023-02-21) 73 | 74 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 75 | 76 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 77 | 78 | ## 1.7.5.4 (2023-02-15) 79 | 80 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 81 | 82 | ## 1.7.5.3 (2022-11-23) 83 | 84 | Mark pynput as completed (#9235) 85 | 86 | ## 1.7.5 (2022-09-12) 87 | 88 | [pynput] Fix annotations of Controller.Key(Code) (#8722) 89 | 90 | Document stubtest entries 91 | 92 | ## 1.7.4 (2022-09-10) 93 | 94 | Run third-party stubtest under xvfb-run (#8719) 95 | 96 | ## 1.7.3 (2022-06-26) 97 | 98 | Third-party stubs: audit `Callable[, None]` annotations (#8175) 99 | 100 | ## 1.7.2 (2022-06-19) 101 | 102 | stubtest: use separate table in METADATA.toml (#8096) 103 | 104 | ## 1.7.1 (2022-04-01) 105 | 106 | Third-party stubs: Improve several `__exit__` methods (#7575) 107 | 108 | ## 1.7.0 (2022-02-24) 109 | 110 | Add stubs for `pynput` package (#7177) 111 | 112 | Fixes #4328 113 | 114 | -------------------------------------------------------------------------------- /data/changelogs/pyperclip.md: -------------------------------------------------------------------------------- 1 | ## 1.9.0.20250218 (2025-02-18) 2 | 3 | Add pyperclip stubs (#13502) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/pysftp.md: -------------------------------------------------------------------------------- 1 | ## 0.2.17.20241117 (2024-11-17) 2 | 3 | [pysftp] Logging attribute can be bool or str (#13018) 4 | 5 | ## 0.2.17.20240106 (2024-01-06) 6 | 7 | Update typing_extensions imports in third-party stubs (#11245) 8 | 9 | ## 0.2.17.6 (2023-07-20) 10 | 11 | Add a few more upstream_repository URLs (#10489) 12 | 13 | ## 0.2.17.5 (2023-03-29) 14 | 15 | Remove unnecessary ellipsis expressions (#9976) 16 | 17 | Ignore flake8 F821 warnings in stub files 18 | 19 | ## 0.2.17.4 (2023-03-27) 20 | 21 | Add default values for third-party stubs beginning with 'P' (#9957) 22 | 23 | ## 0.2.17.3 (2023-03-24) 24 | 25 | pysftp: CnOpts.hostkeys can be None (#9937) 26 | 27 | ## 0.2.17.2 (2023-02-21) 28 | 29 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 30 | 31 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 32 | 33 | ## 0.2.17.1 (2023-02-15) 34 | 35 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 36 | 37 | ## 0.2.17 (2022-07-04) 38 | 39 | Third-party stubs: audit more `Callable[, Any]` annotations (#8233) 40 | 41 | ## 0.2.16 (2022-06-26) 42 | 43 | Third-party stubs: audit `Callable[, None]` annotations (#8175) 44 | 45 | ## 0.2.15 (2022-06-26) 46 | 47 | Check missing definitions for several packages (#8167) 48 | 49 | Co-authored-by: hauntsaninja <> 50 | 51 | ## 0.2.14 (2022-04-16) 52 | 53 | Third-party stubs: import from `collections.abc` where possible (#7637) 54 | 55 | ## 0.2.13 (2022-04-16) 56 | 57 | Use `TypeAlias` where possible for type aliases (#7630) 58 | 59 | ## 0.2.12 (2022-03-16) 60 | 61 | Use PEP 604 syntax wherever possible (#7493) 62 | 63 | ## 0.2.11 (2022-03-10) 64 | 65 | Modernize syntax in various stubs (#7469) 66 | 67 | Use `str` and `contextlib.AbstractContextManager` instead of `typing.Text` and `typing.ContextManager`. 68 | 69 | ## 0.2.10 (2022-03-09) 70 | 71 | Remove Python 2 support from some third-party distributions (#7466) 72 | 73 | Co-authored-by: Alex Waygood 74 | 75 | ## 0.2.9 (2022-01-16) 76 | 77 | Cleanup: do not quote types unnecessarily (#6931) 78 | 79 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 80 | 81 | ## 0.2.8 (2022-01-08) 82 | 83 | Use lowercase `type` everywhere (#6853) 84 | 85 | ## 0.2.6 (2021-10-15) 86 | 87 | Use lowercase tuple where possible (#6170) 88 | 89 | ## 0.2.5 (2021-10-12) 90 | 91 | Add star to all non-0.1 versions (#6146) 92 | 93 | -------------------------------------------------------------------------------- /data/changelogs/pytest-lazy-fixture.md: -------------------------------------------------------------------------------- 1 | ## 0.6.3.20240707 (2024-07-07) 2 | 3 | `is_lazy_fixture` in `pytest-lazy-fixture` is a `TypeIs` function (#12285) 4 | 5 | ## 0.6.3.20240310 (2024-03-10) 6 | 7 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 8 | 9 | Co-authored-by: Alex Waygood 10 | 11 | ## 0.6.3.4 (2023-07-20) 12 | 13 | Add an upstream_repository field to METADATA.toml (#10487) 14 | 15 | Closes: #10478 16 | 17 | ## 0.6.3.3 (2023-02-21) 18 | 19 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 20 | 21 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 22 | 23 | ## 0.6.3.2 (2022-11-20) 24 | 25 | Mark `pytest-lazy-fixture` as completed (#9229) 26 | 27 | ## 0.6.3.1 (2022-10-15) 28 | 29 | Use `Incomplete` instead of `Any` in `__getattr__` (#8903) 30 | 31 | ## 0.6.3 (2022-04-16) 32 | 33 | Third-party stubs: import from `collections.abc` where possible (#7637) 34 | 35 | ## 0.6.1 (2021-10-12) 36 | 37 | Add star to all non-0.1 versions (#6146) 38 | 39 | -------------------------------------------------------------------------------- /data/changelogs/python-crontab.md: -------------------------------------------------------------------------------- 1 | ## 3.2.0.20240703 (2024-07-03) 2 | 3 | [stubsabot] Bump python-crontab to 3.2.* (#12253) 4 | 5 | ## 3.1.0.20240524 (2024-05-24) 6 | 7 | Bump python-crontab to 3.1.* (#12008) 8 | 9 | ## 3.0.0.20240417 (2024-04-17) 10 | 11 | Remove remaining bare `Incomplete`s (#11768) 12 | 13 | Enable Y065 14 | 15 | ## 3.0.0.20240106 (2024-01-06) 16 | 17 | Update typing_extensions imports in third-party stubs (#11245) 18 | 19 | ## 3.0.0.1 (2023-07-20) 20 | 21 | Add a few more upstream_repository URLs (#10489) 22 | 23 | ## 3.0.0.0 (2023-07-19) 24 | 25 | Update `python-crontab` to `3.0.*` (#10475) 26 | 27 | ## 2.7.0.6 (2023-02-22) 28 | 29 | Update `Unused` parameters in `stubs/` (#9704) 30 | 31 | * Update _Unused TypeAlias 32 | 33 | * Update `object | None` params 34 | 35 | * Replace unused `object` parameters with `Unused` alias 36 | 37 | ## 2.7.0.5 (2023-02-21) 38 | 39 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 40 | 41 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 42 | 43 | ## 2.7.0.4 (2023-02-15) 44 | 45 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 46 | 47 | ## 2.7.0.3 (2023-02-07) 48 | 49 | Complete `python-crontab` (#9306) 50 | 51 | Co-authored-by: Alex Waygood 52 | Co-authored-by: Jelle Zijlstra 53 | 54 | ## 2.7.0.2 (2023-02-07) 55 | 56 | Bump mypy to 1.0 (#9684) 57 | 58 | ## 2.7.0.1 (2022-12-24) 59 | 60 | crontab: upstream did some py2 cleanup (#9406) 61 | 62 | Fixes #9405 63 | 64 | ## 2.7.0.0 (2022-12-23) 65 | 66 | crontab: improve types, update to 2.7 (#9392) 67 | 68 | https://gitlab.com/doctormo/python-crontab/-/blob/v2.7.0/crontab.py 69 | 70 | Closes #9391 71 | 72 | Co-authored-by: Jelle Zijlstra 73 | 74 | ## 2.6.0.2 (2022-11-16) 75 | 76 | Always use `bool` and `Literal` for Python compat code (#9213) 77 | 78 | ## 2.6.0.1 (2022-10-20) 79 | 80 | Mark `python-crontab` as completed (#8938) 81 | 82 | ## 2.6.0.0 (2022-10-20) 83 | 84 | Add stubs for python-cronlog (#8917) 85 | 86 | Co-authored-by: Jelle Zijlstra 87 | Co-authored-by: Alex Waygood 88 | 89 | -------------------------------------------------------------------------------- /data/changelogs/python-datemath.md: -------------------------------------------------------------------------------- 1 | ## 3.0.1.20250514 (2025-05-14) 2 | 3 | Replace incomplete module markers (#14030) 4 | 5 | ## 3.0.1.20240913 (2024-09-13) 6 | 7 | [python-datemath] Pin and mark as obsolete (#12645) 8 | 9 | Closes: #12640 10 | 11 | ## 3.0.0.20240902 (2024-09-02) 12 | 13 | [stubsabot] Bump python-datemath to 3.0.* (#12583) 14 | 15 | Co-authored-by: stubsabot <> 16 | 17 | ## 1.5.0.4 (2023-07-20) 18 | 19 | Add an upstream_repository field to METADATA.toml (#10487) 20 | 21 | Closes: #10478 22 | 23 | ## 1.5.0.3 (2023-05-10) 24 | 25 | Add `partial_stub` metadata field (#10157) 26 | 27 | ## 1.5.0.2 (2023-03-27) 28 | 29 | Add default values for third-party stubs beginning with 'P' (#9957) 30 | 31 | ## 1.5.0.1 (2023-02-21) 32 | 33 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 34 | 35 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 36 | 37 | ## 1.5.0.0 (2023-01-11) 38 | 39 | Add stubs for python-datemath (#5765) 40 | 41 | Co-authored-by: Alex Waygood 42 | 43 | -------------------------------------------------------------------------------- /data/changelogs/python-gflags.md: -------------------------------------------------------------------------------- 1 | ## 3.1.7.3 (2023-07-20) 2 | 3 | Add an upstream_repository field to METADATA.toml (#10487) 4 | 5 | Closes: #10478 6 | 7 | ## 3.1.7.2 (2023-02-21) 8 | 9 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 10 | 11 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 12 | 13 | ## 3.1.7.1 (2022-10-16) 14 | 15 | Remove empty `__init__` methods from classes with 0 parents (#8907) 16 | 17 | ## 3.1.7 (2022-07-22) 18 | 19 | Always return `Iterator`, not `Iterable` for `__iter__` (#8361) 20 | 21 | ## 3.1.6 (2022-06-26) 22 | 23 | Check missing definitions for several packages (#8167) 24 | 25 | Co-authored-by: hauntsaninja <> 26 | 27 | ## 3.1.5 (2022-04-27) 28 | 29 | Drop Python 2 support from python-gflags (#7709) 30 | 31 | ## 3.1.4 (2022-01-28) 32 | 33 | Do not use `True` or `False` as default values in assignments (#7060) 34 | 35 | ## 3.1.3 (2022-01-20) 36 | 37 | Remove nearly all `__str__` and `__repr__` methods from typeshed (#6968) 38 | 39 | ## 3.1.1 (2021-10-12) 40 | 41 | Add star to all non-0.1 versions (#6146) 42 | 43 | ## 3.1.0 (2021-09-19) 44 | 45 | Update third-party package versions (#5996) 46 | 47 | -------------------------------------------------------------------------------- /data/changelogs/python-http-client.md: -------------------------------------------------------------------------------- 1 | ## 3.3.7.20240910 (2024-09-10) 2 | 3 | Add stubs for `python-http-client` (#12626) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/python-jenkins.md: -------------------------------------------------------------------------------- 1 | ## 1.8.0.20240921 (2024-09-21) 2 | 3 | Add stubs for python-jenkins (#12582) 4 | 5 | Co-authored-by: Jelle Zijlstra 6 | 7 | -------------------------------------------------------------------------------- /data/changelogs/python-jose.md: -------------------------------------------------------------------------------- 1 | ## 3.5.0.20250531 (2025-05-31) 2 | 3 | Bump python-jose to 3.5.* (#14193) 4 | 5 | ## 3.4.0.20250516 (2025-05-16) 6 | 7 | Replace `Incomplete | None = None` in third party stubs (#14063) 8 | 9 | ## 3.4.0.20250224 (2025-02-24) 10 | 11 | Bump python-jose to 3.4.* (#13522) 12 | 13 | ## 3.3.4.20240106 (2024-01-06) 14 | 15 | Update typing_extensions imports in third-party stubs (#11245) 16 | 17 | ## 3.3.4.8 (2023-07-20) 18 | 19 | Add an upstream_repository field to METADATA.toml (#10487) 20 | 21 | Closes: #10478 22 | 23 | ## 3.3.4.7 (2023-04-13) 24 | 25 | Style: prefer `type[Foo | Bar]` over `type[Foo] | type[Bar]` (#10039) 26 | 27 | ## 3.3.4.6 (2023-03-27) 28 | 29 | Add default values for third-party stubs beginning with 'P' (#9957) 30 | 31 | ## 3.3.4.5 (2023-02-21) 32 | 33 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 34 | 35 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 36 | 37 | ## 3.3.4.4 (2023-02-15) 38 | 39 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 40 | 41 | ## 3.3.4.3 (2023-02-03) 42 | 43 | Fix python-jose unverified jws and jwt functions (#9662) 44 | 45 | ## 3.3.4.2 (2023-01-18) 46 | 47 | Replace `Any` with `Incomplete` in many places (#9558) 48 | 49 | ## 3.3.4.1 (2023-01-07) 50 | 51 | Use `pyasn1` in `python-jose` (#9469) 52 | 53 | ## 3.3.4 (2022-07-15) 54 | 55 | python-jose: improvements to jose.backends (#8294) 56 | 57 | ## 3.3.3 (2022-07-13) 58 | 59 | Complete python-jose typing (#8258) 60 | 61 | ## 3.3.2 (2022-07-06) 62 | 63 | Improve python-jose jws and jwt modules (#8238) 64 | 65 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 66 | Co-authored-by: Alex Waygood 67 | 68 | ## 3.3.1 (2022-05-26) 69 | 70 | Third-party stubs: fix several fictitious type aliases (#7958) 71 | 72 | ## 3.3.0 (2022-04-12) 73 | 74 | Add stubs for Python-Jose (#7613) 75 | 76 | -------------------------------------------------------------------------------- /data/changelogs/python-nmap.md: -------------------------------------------------------------------------------- 1 | ## 0.7.1.20240106 (2024-01-06) 2 | 3 | Update typing_extensions imports in third-party stubs (#11245) 4 | 5 | ## 0.7.1.4 (2023-08-13) 6 | 7 | Fill in all missing `upstream_repository` fields (#10571) 8 | 9 | Co-authored-by: Alex Waygood 10 | 11 | ## 0.7.1.3 (2023-03-27) 12 | 13 | Add default values for third-party stubs beginning with 'P' (#9957) 14 | 15 | ## 0.7.1.2 (2023-02-21) 16 | 17 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 18 | 19 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 20 | 21 | ## 0.7.1.1 (2022-11-19) 22 | 23 | Mark `python-nmap` as completed (#9226) 24 | 25 | ## 0.7.1 (2022-07-04) 26 | 27 | Third-party stubs: audit more `Callable[, Any]` annotations (#8233) 28 | 29 | ## 0.7.0 (2022-06-26) 30 | 31 | [stubsabot] Bump python-nmap to 0.7.* (#8174) 32 | 33 | Co-authored-by: hauntsaninja <> 34 | 35 | ## 0.6.7 (2022-04-27) 36 | 37 | Drop Python 2 support from python-nmap (#7706) 38 | 39 | ## 0.6.6 (2022-04-16) 40 | 41 | Use `TypeAlias` where possible for type aliases (#7630) 42 | 43 | ## 0.6.4 (2021-12-28) 44 | 45 | Use PEP 585 syntax wherever possible (#6717) 46 | 47 | ## 0.6.3 (2021-11-26) 48 | 49 | Add mypy error codes to '# type: ignore' comments (#6379) 50 | 51 | ## 0.6.2 (2021-10-15) 52 | 53 | Use lowercase tuple where possible (#6170) 54 | 55 | ## 0.6.1 (2021-10-12) 56 | 57 | Add star to all non-0.1 versions (#6146) 58 | 59 | -------------------------------------------------------------------------------- /data/changelogs/pyxdg.md: -------------------------------------------------------------------------------- 1 | ## 0.28.0.20240106 (2024-01-06) 2 | 3 | Update typing_extensions imports in third-party stubs (#11245) 4 | 5 | ## 0.28.0.1 (2023-11-09) 6 | 7 | Bump flake8-pyi to 23.11.0 (#10997) 8 | 9 | ## 0.28.0.0 (2023-11-07) 10 | 11 | Add pyxdg stubs (#10163) 12 | 13 | Co-authored-by: Alex Waygood 14 | 15 | -------------------------------------------------------------------------------- /data/changelogs/qrbill.md: -------------------------------------------------------------------------------- 1 | ## 1.1.0.20241221 (2024-12-21) 2 | 3 | Update to mypy 1.14 (#13272) 4 | 5 | ## 1.1.0.20240412 (2024-04-12) 6 | 7 | Add stubs for qrbill (#11741) 8 | 9 | Co-authored-by: Akuli 10 | 11 | -------------------------------------------------------------------------------- /data/changelogs/qrcode.md: -------------------------------------------------------------------------------- 1 | ## 8.2.0.20250506 (2025-05-06) 2 | 3 | Bump qrcode to 8.2.* (#13918) 4 | 5 | ## 8.1.0.20250404 (2025-04-04) 6 | 7 | [stubsabot] Bump qrcode to 8.1.* (#13779) 8 | 9 | ## 8.0.0.20241004 (2024-10-04) 10 | 11 | Remove Pillow stubs (#12732) 12 | 13 | ## 8.0.0.20241002 (2024-10-02) 14 | 15 | [stubsabot] Bump qrcode to 8.0.* (#12718) 16 | 17 | Release: https://pypi.org/pypi/qrcode/8.0 18 | Homepage: https://github.com/lincolnloop/python-qrcode 19 | Repository: https://github.com/lincolnloop/python-qrcode 20 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/qrcode 21 | Diff: https://github.com/lincolnloop/python-qrcode/compare/v7.4.2...v8.0 22 | 23 | Stubsabot analysis of the diff between the two releases: 24 | - 2 public Python files have been added: `qrcode/compat/png.py`, `qrcode/tests/consts.py`. 25 | - 0 files included in typeshed's stubs have been deleted. 26 | - 12 files included in typeshed's stubs have been modified or renamed. 27 | - Total lines of Python code added: 669. 28 | - Total lines of Python code deleted: 727. 29 | 30 | If stubtest fails for this PR: 31 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 32 | - Fix stubtest failures in another PR, then close this PR 33 | 34 | Note that you will need to close and re-open the PR in order to trigger CI 35 | 36 | Co-authored-by: stubsabot <> 37 | 38 | ## 7.4.0.20240921 (2024-09-21) 39 | 40 | Complete coverage for the qrcode package (#12675) 41 | 42 | ## 7.4.0.20240408 (2024-04-08) 43 | 44 | [qrcode] Add various annotations (#11726) 45 | 46 | ## 7.4.0.20240106 (2024-01-06) 47 | 48 | Update typing_extensions imports in third-party stubs (#11245) 49 | 50 | ## 7.4.0.1 (2023-11-09) 51 | 52 | Bump flake8-pyi to 23.11.0 (#10997) 53 | 54 | ## 7.4.0.0 (2023-07-20) 55 | 56 | Add an upstream_repository field to METADATA.toml (#10487) 57 | 58 | Closes: #10478 59 | 60 | Add stubs for qrcode (#10380) 61 | 62 | -------------------------------------------------------------------------------- /data/changelogs/ratelimit.md: -------------------------------------------------------------------------------- 1 | ## 2.2.0.20250501 (2025-05-01) 2 | 3 | Add ratelimit stubs (#13909) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/reportlab.md: -------------------------------------------------------------------------------- 1 | ## 4.4.1.20250602 (2025-06-02) 2 | 3 | Update mypy to 1.16.0 (#14194) 4 | 5 | Co-authored-by: Sebastian Rittau 6 | Co-authored-by: Alex Waygood 7 | 8 | ## 4.4.1.20250601 (2025-06-01) 9 | 10 | [reportlab] Add # type: ignores (#14202) 11 | 12 | Helps with #14194 13 | 14 | ## 4.4.1.20250527 (2025-05-27) 15 | 16 | reportlab: add some types for canvas (#14152) 17 | 18 | ## 4.4.1.20250516 (2025-05-16) 19 | 20 | Replace `Incomplete | None = None` in third party stubs (#14063) 21 | 22 | Update reportlab to 4.4.1 (#14073) 23 | 24 | ## 4.4.0.20250515 (2025-05-15) 25 | 26 | reportlab: canvas.getPageNumber() returns int (#14066) 27 | 28 | ## 4.4.0.20250429 (2025-04-29) 29 | 30 | Bump reportlab to 4.4.* (#13857) 31 | 32 | ## 4.3.1.20250401 (2025-04-01) 33 | 34 | Add `__all__` part 2 (#13719) 35 | 36 | --------- 37 | 38 | Co-authored-by: Avasam 39 | 40 | ## 4.3.1.20250219 (2025-02-19) 41 | 42 | Bump reportlab to 4.3.1 (#13510) 43 | 44 | ## 4.2.5.20250130 (2025-01-30) 45 | 46 | Upgrade Black and Ruff (#13443) 47 | 48 | ## 4.2.5.20241221 (2024-12-21) 49 | 50 | Update to mypy 1.14 (#13272) 51 | 52 | ## 4.2.5.20241002 (2024-10-02) 53 | 54 | [stubsabot] Bump reportlab to 4.2.5 (#12719) 55 | 56 | Release: https://pypi.org/pypi/reportlab/4.2.5 57 | Homepage: https://www.reportlab.com/ 58 | Repository: https://github.com/MrBitBucket/reportlab-mirror 59 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/reportlab 60 | 61 | If stubtest fails for this PR: 62 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 63 | - Fix stubtest failures in another PR, then close this PR 64 | 65 | Note that you will need to close and re-open the PR in order to trigger CI 66 | 67 | Co-authored-by: stubsabot <> 68 | 69 | ## 4.2.4.20240930 (2024-09-30) 70 | 71 | Bump reportlab to 4.2.4 (#12701) 72 | 73 | ## 4.2.2.20240819 (2024-08-19) 74 | 75 | Forbid extremely long line lengths in non-autogenerated stubs (#12537) 76 | 77 | Co-authored-by: Alex Waygood 78 | 79 | ## 4.2.2.20240806 (2024-08-06) 80 | 81 | Bump mypy to 1.11.1 (#12463) 82 | 83 | ## 4.2.2.20240701 (2024-07-01) 84 | 85 | Bump reportlab to 4.2.2 (#12227) 86 | 87 | ## 4.2.0.20240627 (2024-06-27) 88 | 89 | Add upstream_repository for reportlab (#12223) 90 | 91 | This was found at https://docs.reportlab.com/releases/#reportlab-build-process 92 | 93 | Pin reportlab to version 4.2.0 (#12220) 94 | 95 | Part of #12213 96 | 97 | ## 4.2.0.20240530 (2024-05-30) 98 | 99 | reportlab: Add some basic type hints for graphics rendering API (#12051) 100 | 101 | ## 4.2.0.20240525 (2024-05-25) 102 | 103 | Adds stubs for reportlab (#12013) 104 | 105 | -------------------------------------------------------------------------------- /data/changelogs/requests-oauthlib.md: -------------------------------------------------------------------------------- 1 | ## 2.0.0.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 2.0.0.20250306 (2025-03-06) 6 | 7 | Fix: OAuth1 type hints to include realm parameter (#13579) 8 | 9 | ## 2.0.0.20250119 (2025-01-19) 10 | 11 | requests-oauthlib: decoding can be None (#13404) 12 | 13 | it is passed along to oauthlib where the default there is None 14 | 15 | ## 2.0.0.20240417 (2024-04-17) 16 | 17 | Remove remaining bare `Incomplete`s (#11768) 18 | 19 | Enable Y065 20 | 21 | ## 2.0.0.20240324 (2024-03-24) 22 | 23 | [stubsabot] Bump requests-oauthlib to 2.0.* (#11649) 24 | 25 | Release: https://pypi.org/pypi/requests-oauthlib/2.0.0 26 | Homepage: https://github.com/requests/requests-oauthlib 27 | Repository: https://github.com/requests/requests-oauthlib 28 | Diff: https://github.com/requests/requests-oauthlib/compare/v1.4.0...v2.0.0 29 | 30 | Stubsabot analysis of the diff between the two releases: 31 | - 1 public Python file has been added: `tests/examples/__init__.py`. 32 | - 0 files included in typeshed's stubs have been deleted. 33 | - 1 file included in typeshed's stubs has been modified or renamed: `requests_oauthlib/__init__.py`. 34 | - Total lines of Python code added: 2. 35 | - Total lines of Python code deleted: 4. 36 | 37 | ## 1.4.0.20240315 (2024-03-15) 38 | 39 | Bump requests-oauthlib to 1.4.* (#11601) 40 | 41 | ## 1.3.0.20240311 (2024-03-11) 42 | 43 | Use PEP 570 syntax in third party stubs (#11554) 44 | 45 | ## 1.3.0.20240310 (2024-03-10) 46 | 47 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 48 | 49 | Co-authored-by: Alex Waygood 50 | 51 | ## 1.3.0.20240106 (2024-01-06) 52 | 53 | Update typing_extensions imports in third-party stubs (#11245) 54 | 55 | ## 1.3.0.1 (2023-10-13) 56 | 57 | Fix the type for `OAuth2Session.authorization_url` (#10878) 58 | 59 | fix the type for `OAuth2Session.authorization_url` 60 | 61 | ## 1.3.0.0 (2023-09-11) 62 | 63 | Add stubs for requests-oauthlib (#10658) 64 | 65 | -------------------------------------------------------------------------------- /data/changelogs/retry.md: -------------------------------------------------------------------------------- 1 | ## 0.9.9.20250322 (2025-03-22) 2 | 3 | Add `__all__` to `retry` (#13691) 4 | 5 | ## 0.9.9.20241221 (2024-12-21) 6 | 7 | Update to mypy 1.14 (#13272) 8 | 9 | ## 0.9.9.4 (2023-07-20) 10 | 11 | Add an upstream_repository field to METADATA.toml (#10487) 12 | 13 | Closes: #10478 14 | 15 | ## 0.9.9.3 (2023-03-28) 16 | 17 | Add defaults for third-party stubs Q-T (#9959) 18 | 19 | ## 0.9.9.2 (2023-02-21) 20 | 21 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 22 | 23 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 24 | 25 | ## 0.9.9.1 (2023-01-25) 26 | 27 | Fix some stubtest complaints before they happen (#9585) 28 | 29 | Add missing objects to various stubs 30 | 31 | ## 0.9.9 (2022-07-20) 32 | 33 | Allowlist useless modules (#8340) 34 | 35 | These are the ones I chose not to add from #8321 36 | 37 | Fixes most of #8339 38 | 39 | ## 0.9.8 (2022-06-26) 40 | 41 | Check missing definitions for several packages (#8167) 42 | 43 | Co-authored-by: hauntsaninja <> 44 | 45 | ## 0.9.7 (2022-05-07) 46 | 47 | Import generics from standard modules in all third-party stubs (#7791) 48 | 49 | ## 0.9.6 (2022-04-27) 50 | 51 | Drop Python 2 support in third-party stubs (#7703) 52 | 53 | ## 0.9.5 (2022-01-08) 54 | 55 | Use lowercase `type` everywhere (#6853) 56 | 57 | ## 0.9.3 (2021-12-28) 58 | 59 | Use PEP 585 syntax wherever possible (#6717) 60 | 61 | ## 0.9.2 (2021-10-15) 62 | 63 | Use lowercase tuple where possible (#6170) 64 | 65 | ## 0.9.1 (2021-10-12) 66 | 67 | Add star to all non-0.1 versions (#6146) 68 | 69 | ## 0.9.0 (2021-09-19) 70 | 71 | Update third-party package versions (#5996) 72 | 73 | -------------------------------------------------------------------------------- /data/changelogs/rfc3339-validator.md: -------------------------------------------------------------------------------- 1 | ## 0.1.0.20250322 (2025-03-22) 2 | 3 | Add stubs for `rfc3339-validator` (#13688) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/s2clientprotocol.md: -------------------------------------------------------------------------------- 1 | ## 5.0.0.20250506 (2025-05-06) 2 | 3 | Run Black on *_pb2 files (#13930) 4 | 5 | ## 5.0.0.20250503 (2025-05-03) 6 | 7 | Mention rerunning sync_protobuf scripts (#13924) 8 | 9 | ## 5.0.0.20241030 (2024-10-30) 10 | 11 | Bump tensorflow to ~=2.18.0 (#12916) 12 | 13 | * Tensorflow proto script update 14 | 15 | * Manual stubtest changes 16 | 17 | * Use Path for arg type 18 | 19 | ## 5.0.0.20241029 (2024-10-29) 20 | 21 | Use `lib/ts_utils` for `scripts/sync_protobuf` (#12913) 22 | 23 | - Simplified `download_file` error handling (400+ return codes already raised errors!) 24 | - Moved `update_metadata` from `scripts/sync_protobuf/_utils.py` to `lib/ts_utils/metadata.py` 25 | - Improved `update_metadata` to support any key (values unvalidated atm) and return the modified dictionary 26 | - Updated `scripts/stubsabot.py` to use `update_metadata` 27 | - Updated `scripts/sync_protobuf/*` to use `lib/ts_utils` 28 | - Updated `scripts/sync_protobuf/tensorflow.py` and `scripts/sync_protobuf/google_protobuf.py` to use the version directly from the `METADATA.toml` file 29 | 30 | ## 5.0.0.20240920 (2024-09-20) 31 | 32 | Rewrote protobuf generation scripts in Python (#12527) 33 | 34 | ## 5.0.0.20240423 (2024-04-23) 35 | 36 | Create script to generate s2clientprotocol protobuf stubs (#11772) 37 | 38 | Regenerate using mypy-protobuf 3.6 39 | 40 | ## 5.0.0.20240302 (2024-03-02) 41 | 42 | Add pyupgrade check outdated-version-block (UP036) (#11509) 43 | 44 | Co-authored-by: Alex Waygood 45 | 46 | ## 5.0.0.3 (2023-10-29) 47 | 48 | Enable ruff's isort rules on files generated using mypy-protobuf (#10939) 49 | 50 | Co-authored-by: AlexWaygood 51 | 52 | ## 5.0.0.2 (2023-10-23) 53 | 54 | Check `*_pb2.pyi` files again (#10909) 55 | 56 | ## 5.0.0.1 (2023-07-22) 57 | 58 | Add `upstream_repository` to metadata for `s2clientprotocol` (#10500) 59 | 60 | These stubs were added yesterday in #10372, and I forgot that we had just added this new metadata field 61 | 62 | ## 5.0.0.0 (2023-07-21) 63 | 64 | Add stubs for s2clientprotocol (#10372) 65 | 66 | -------------------------------------------------------------------------------- /data/changelogs/seaborn.md: -------------------------------------------------------------------------------- 1 | ## 0.13.2.20250516 (2025-05-16) 2 | 3 | Replace `Incomplete | None = None` in third party stubs (#14063) 4 | 5 | ## 0.13.2.20250111 (2025-01-11) 6 | 7 | Officially drop Python 3.8 support (#13386) 8 | 9 | ## 0.13.2.20241204 (2024-12-04) 10 | 11 | Fix todo in seaborn algorithms (#13186) 12 | 13 | ## 0.13.2.20241112 (2024-11-12) 14 | 15 | Remove numpy pins from several stubs (#12993) 16 | 17 | ## 0.13.2.20241003 (2024-10-03) 18 | 19 | Support environment markers in requires fields (#12711) 20 | 21 | ## 0.13.2.20240820 (2024-08-20) 22 | 23 | Pin numpy in various stubs (#12554) 24 | 25 | ## 0.13.2.20240813 (2024-08-13) 26 | 27 | Use Generator instead of Iterator for 3rd-party context managers (#12481) 28 | 29 | ## 0.13.2.20240804 (2024-08-04) 30 | 31 | Remove numpy version pin for several stubs(#12476) 32 | 33 | ## 0.13.2.20240618 (2024-06-18) 34 | 35 | Pin various stubs to numpy to < 2 (#12152) 36 | 37 | Fixes #12146 38 | 39 | ## 0.13.2.20240417 (2024-04-17) 40 | 41 | Remove remaining bare `Incomplete`s (#11768) 42 | 43 | Enable Y065 44 | 45 | ## 0.13.2.20240311 (2024-03-11) 46 | 47 | Use PEP 570 syntax in third party stubs (#11554) 48 | 49 | ## 0.13.2.20240310 (2024-03-10) 50 | 51 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 52 | 53 | Co-authored-by: Alex Waygood 54 | 55 | ## 0.13.2.20240205 (2024-02-05) 56 | 57 | A new shade of Black (#11362) 58 | 59 | ## 0.13.2.20240130 (2024-01-30) 60 | 61 | [stubsabot] Bump seaborn to 0.13.2 (#11317) 62 | 63 | ## 0.13.1.20240115 (2024-01-15) 64 | 65 | seaborn: Update and complete the relational module (#11214) 66 | 67 | ## 0.13.0.20240106 (2024-01-06) 68 | 69 | Update typing_extensions imports in third-party stubs (#11245) 70 | 71 | ## 0.13.0.20240101 (2024-01-01) 72 | 73 | Pin seaborn to 0.13.0 (#11213) 74 | 75 | Closes #11212 76 | 77 | ## 0.13.0.8 (2023-12-19) 78 | 79 | seaborn: Complete the categorical module (#11170) 80 | 81 | ## 0.13.0.7 (2023-12-11) 82 | 83 | seaborn: complete the distributions module (#11131) 84 | 85 | seaborn: mark simple deprecations (#11130) 86 | 87 | ## 0.13.0.6 (2023-12-05) 88 | 89 | seaborn: complete and fix axisgrid module (#11096) 90 | 91 | ## 0.13.0.5 (2023-11-24) 92 | 93 | Fix typos in docs and comments (#11064) 94 | 95 | Third-party stubs: remove unused `type: ignore`s (#11063) 96 | 97 | ## 0.13.0.4 (2023-11-22) 98 | 99 | seaborn: fix and complete `seaborn.regression` (#11043) 100 | 101 | ## 0.13.0.3 (2023-11-16) 102 | 103 | Complete `seaborn` stubs and mark as strict (#10974) 104 | 105 | ## 0.13.0.2 (2023-11-09) 106 | 107 | Bump flake8-pyi to 23.11.0 (#10997) 108 | 109 | ## 0.13.0.1 (2023-11-07) 110 | 111 | [seaborn] Add upstream_repository field (#10982) 112 | 113 | ## 0.13.0.0 (2023-10-29) 114 | 115 | Add seaborn stubs (#10721) 116 | 117 | -------------------------------------------------------------------------------- /data/changelogs/selenium.md: -------------------------------------------------------------------------------- 1 | ## 3.141.9 (2022-03-06) 2 | 3 | Upgrade to stubtest with dunder pos only reverted (#7442) 4 | 5 | ## 3.141.8 (2022-02-25) 6 | 7 | Mark selenium stubs as obsolete (#7383) 8 | 9 | ## 3.141.6 (2021-12-21) 10 | 11 | Fix return type of find_elements* (#6645) 12 | 13 | ## 3.141.5 (2021-12-21) 14 | 15 | Update Selenium webdriver with latest return types (#6565) 16 | 17 | ## 3.141.4 (2021-11-26) 18 | 19 | Add mypy error codes to '# type: ignore' comments (#6379) 20 | 21 | ## 3.141.3 (2021-10-12) 22 | 23 | Add star to all non-0.1 versions (#6146) 24 | 25 | -------------------------------------------------------------------------------- /data/changelogs/shapely.md: -------------------------------------------------------------------------------- 1 | ## 2.1.0.20250512 (2025-05-12) 2 | 3 | Fix annotations of shapely.constructive.make_valid (#13913) 4 | 5 | ## 2.1.0.20250418 (2025-04-18) 6 | 7 | Bump shapely to 2.1.* (#13847) 8 | 9 | ## 2.0.0.20250404 (2025-04-04) 10 | 11 | Enable Ruff flake8-todos (TD) (#13748) 12 | 13 | ## 2.0.0.20250326 (2025-03-26) 14 | 15 | Add `__all__` (#13704) 16 | 17 | ## 2.0.0.20250202 (2025-02-02) 18 | 19 | shapely: Fix tuple length of `CoordinateSequence` items (#13435) 20 | 21 | Closes #13422 22 | 23 | ## 2.0.0.20241221 (2024-12-21) 24 | 25 | Update to mypy 1.14 (#13272) 26 | 27 | ## 2.0.0.20241112 (2024-11-12) 28 | 29 | Remove numpy pins from several stubs (#12993) 30 | 31 | ## 2.0.0.20240820 (2024-08-20) 32 | 33 | Pin numpy in various stubs (#12554) 34 | 35 | ## 2.0.0.20240804 (2024-08-04) 36 | 37 | Remove numpy version pin for several stubs(#12476) 38 | 39 | ## 2.0.0.20240714 (2024-07-14) 40 | 41 | Fix stubtest for shapely (#12339) 42 | 43 | Fixes #12338 44 | 45 | ## 2.0.0.20240618 (2024-06-18) 46 | 47 | Pin various stubs to numpy to < 2 (#12152) 48 | 49 | Fixes #12146 50 | 51 | ## 2.0.0.20240613 (2024-06-13) 52 | 53 | Upgrade to latest 3.12 and 3.13 versions for stubtest (#12131) 54 | 55 | Bump flake8-pyi to 24.6.0 (#12132) 56 | 57 | ## 2.0.0.20240602 (2024-06-02) 58 | 59 | Update shapely enums (#12078) 60 | 61 | ## 2.0.0.20240527 (2024-05-27) 62 | 63 | Fix shapely SupportsRead protocol (#12038) 64 | 65 | ## 2.0.0.20240526 (2024-05-26) 66 | 67 | Add shapely stubs (#12033) 68 | 69 | -------------------------------------------------------------------------------- /data/changelogs/singledispatch.md: -------------------------------------------------------------------------------- 1 | ## 4.1.0.20250326 (2025-03-26) 2 | 3 | Add `__all__` (#13704) 4 | 5 | ## 4.1.0.20241221 (2024-12-21) 6 | 7 | Update to mypy 1.14 (#13272) 8 | 9 | ## 4.1.0.0 (2023-08-29) 10 | 11 | [stubsabot] Bump singledispatch to 4.1.* (#10624) 12 | 13 | Release: https://pypi.org/pypi/singledispatch/4.1.0 14 | Homepage: https://github.com/jaraco/singledispatch 15 | Repository: https://github.com/jaraco/singledispatch 16 | Diff: https://github.com/jaraco/singledispatch/compare/v4.0.0...v4.1.0 17 | 18 | Stubsabot analysis of the diff between the two releases: 19 | - Total lines of Python code added: 174. 20 | - Total lines of Python code deleted: 434. 21 | 22 | ## 4.0.0.2 (2023-07-20) 23 | 24 | Add an upstream_repository field to METADATA.toml (#10487) 25 | 26 | Closes: #10478 27 | 28 | ## 4.0.0.1 (2023-02-21) 29 | 30 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 31 | 32 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 33 | 34 | ## 4.0.0.0 (2023-01-03) 35 | 36 | [stubsabot] Bump singledispatch to 4.0.* (#9447) 37 | 38 | Release: https://pypi.org/pypi/singledispatch/4.0.0 39 | Homepage: https://github.com/jaraco/singledispatch 40 | Diff: https://github.com/jaraco/singledispatch/compare/v3.7.0...v4.0.0 41 | 42 | Stubsabot analysis of the diff between the two releases: 43 | - Total lines of Python code added: 381. 44 | - Total lines of Python code deleted: 266. 45 | 46 | If stubtest fails for this PR: 47 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 48 | - Fix stubtest failures in another PR, then close this PR 49 | 50 | Note that you will need to close and re-open the PR in order to trigger CI 51 | 52 | Co-authored-by: stubsabot <> 53 | 54 | ## 3.7.5.1 (2022-11-15) 55 | 56 | Complete singledispatch stub (#9201) 57 | 58 | ## 3.7.5 (2022-05-07) 59 | 60 | Import generics from standard modules in all third-party stubs (#7791) 61 | 62 | ## 3.7.4 (2022-04-27) 63 | 64 | Drop Python 2 support in third-party stubs (#7703) 65 | 66 | ## 3.7.3 (2022-02-12) 67 | 68 | singledispatch: fix lint (#7178) 69 | 70 | Co-authored-by: hauntsaninja <> 71 | 72 | Add singledispatchmethod to singledispatch (#6089) 73 | 74 | ## 3.7.1 (2021-10-12) 75 | 76 | Add star to all non-0.1 versions (#6146) 77 | 78 | ## 3.7.0 (2021-09-19) 79 | 80 | Update third-party package versions (#5996) 81 | 82 | -------------------------------------------------------------------------------- /data/changelogs/slumber.md: -------------------------------------------------------------------------------- 1 | ## 0.7.3.5 (2023-07-20) 2 | 3 | Add an upstream_repository field to METADATA.toml (#10487) 4 | 5 | Closes: #10478 6 | 7 | ## 0.7.3.4 (2023-03-28) 8 | 9 | Add defaults for third-party stubs Q-T (#9959) 10 | 11 | ## 0.7.3.3 (2023-02-21) 12 | 13 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 14 | 15 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 16 | 17 | ## 0.7.3.2 (2023-02-15) 18 | 19 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 20 | 21 | ## 0.7.3.1 (2022-11-21) 22 | 23 | Finish `slumber` annotations (#9237) 24 | 25 | ## 0.7.3 (2022-06-26) 26 | 27 | Check missing definitions for several packages (#8167) 28 | 29 | Co-authored-by: hauntsaninja <> 30 | 31 | ## 0.7.1 (2021-10-12) 32 | 33 | Add star to all non-0.1 versions (#6146) 34 | 35 | -------------------------------------------------------------------------------- /data/changelogs/stdlib-list.md: -------------------------------------------------------------------------------- 1 | ## 0.8.3.4 (2023-07-20) 2 | 3 | Add an upstream_repository field to METADATA.toml (#10487) 4 | 5 | Closes: #10478 6 | 7 | ## 0.8.3.3 (2023-06-23) 8 | 9 | [stubsabot] Mark stdlib-list as obsolete since 0.9.0 (#10348) 10 | 11 | Release: https://pypi.org/pypi/stdlib-list/0.9.0 12 | Homepage: https://pypi.org/project/stdlib-list/ 13 | Diff: https://github.com/pypi/stdlib-list/compare/v0.8.0...v0.9.0 14 | 15 | ## 0.8.3.2 (2023-03-28) 16 | 17 | Add defaults for third-party stubs Q-T (#9959) 18 | 19 | ## 0.8.3.1 (2023-02-21) 20 | 21 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 22 | 23 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 24 | 25 | ## 0.8.3 (2022-07-20) 26 | 27 | Allowlist useless modules (#8340) 28 | 29 | These are the ones I chose not to add from #8321 30 | 31 | Fixes most of #8339 32 | 33 | ## 0.8.2 (2022-07-19) 34 | 35 | Add missing third party modules (#8321) 36 | 37 | Co-authored-by: Alex Waygood 38 | Co-authored-by: hauntsaninja <> 39 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 40 | 41 | ## 0.8.1 (2022-06-26) 42 | 43 | Check missing definitions for several packages (#8167) 44 | 45 | Co-authored-by: hauntsaninja <> 46 | 47 | ## 0.8.0 (2022-04-08) 48 | 49 | Add stubs for stdlib-list (#7608) 50 | 51 | -------------------------------------------------------------------------------- /data/changelogs/str2bool.md: -------------------------------------------------------------------------------- 1 | ## 1.1.0.20240705 (2024-07-05) 2 | 3 | add stub library for str2bool (#12260) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/tabulate.md: -------------------------------------------------------------------------------- 1 | ## 0.9.0.20241207 (2024-12-07) 2 | 3 | Improve annotation for `tabular_data` parameter of `tabulate.tabulate` (#13178) 4 | 5 | ## 0.9.0.20240106 (2024-01-06) 6 | 7 | Update typing_extensions imports in third-party stubs (#11245) 8 | 9 | ## 0.9.0.3 (2023-07-20) 10 | 11 | Add an upstream_repository field to METADATA.toml (#10487) 12 | 13 | Closes: #10478 14 | 15 | ## 0.9.0.2 (2023-03-28) 16 | 17 | Add defaults for third-party stubs Q-T (#9959) 18 | 19 | ## 0.9.0.1 (2023-02-21) 20 | 21 | Add missing symbols to `tabulate` (#9781) 22 | 23 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 24 | 25 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 26 | 27 | ## 0.9.0.0 (2022-10-07) 28 | 29 | Bump tabulate to `0.9` version (#8865) 30 | 31 | ## 0.8.11 (2022-06-25) 32 | 33 | appdirs, tabulate, termcolor, xmltodict: check missing defs (#8156) 34 | 35 | complete termcolor, xmltodict 36 | 37 | ## 0.8.10 (2022-06-22) 38 | 39 | tabulate: Add maxcolwidths arguments (#8132) 40 | 41 | ## 0.8.9 (2022-05-07) 42 | 43 | Import generics from standard modules in all third-party stubs (#7791) 44 | 45 | ## 0.8.8 (2022-04-27) 46 | 47 | Drop Python 2 support in third-party stubs (#7703) 48 | 49 | ## 0.8.7 (2022-04-16) 50 | 51 | Use `TypeAlias` where possible for type aliases (#7630) 52 | 53 | ## 0.8.6 (2022-03-16) 54 | 55 | Use PEP 604 syntax wherever possible (#7493) 56 | 57 | ## 0.8.4 (2021-12-28) 58 | 59 | Use PEP 585 syntax wherever possible (#6717) 60 | 61 | ## 0.8.3 (2021-10-12) 62 | 63 | Add star to all non-0.1 versions (#6146) 64 | 65 | -------------------------------------------------------------------------------- /data/changelogs/termcolor.md: -------------------------------------------------------------------------------- 1 | ## 1.1.6.2 (2023-03-28) 2 | 3 | Add default values for termcolor (#9963) 4 | 5 | ## 1.1.6.1 (2023-02-21) 6 | 7 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 8 | 9 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 10 | 11 | ## 1.1.6 (2022-09-16) 12 | 13 | [stubsabot] Mark termcolor as obsolete since 2.0.0 (#8746) 14 | 15 | * [stubsabot] Mark termcolor as obsolete since 2.0.0 16 | 17 | Release: https://pypi.org/project/termcolor/2.0.1/ 18 | Homepage: https://github.com/termcolor/termcolor 19 | Changelog: https://github.com/termcolor/termcolor/releases 20 | Diff: https://github.com/termcolor/termcolor/compare/1.1.0...2.0.1 21 | 22 | Co-authored-by: Alex Waygood 23 | Co-authored-by: Sebastian Rittau 24 | 25 | ## 1.1.5 (2022-06-25) 26 | 27 | appdirs, tabulate, termcolor, xmltodict: check missing defs (#8156) 28 | 29 | complete termcolor, xmltodict 30 | 31 | ## 1.1.4 (2022-04-27) 32 | 33 | Drop support for Python 2 in termcolor (#7707) 34 | 35 | ## 1.1.2 (2021-10-12) 36 | 37 | Add star to all non-0.1 versions (#6146) 38 | 39 | -------------------------------------------------------------------------------- /data/changelogs/toml.md: -------------------------------------------------------------------------------- 1 | ## 0.10.8.20240310 (2024-03-10) 2 | 3 | Bump mypy to 1.9, add to json.encoder, small fixups (#11549) 4 | 5 | Co-authored-by: Alex Waygood 6 | 7 | ## 0.10.8.7 (2023-07-20) 8 | 9 | Add an upstream_repository field to METADATA.toml (#10487) 10 | 11 | Closes: #10478 12 | 13 | ## 0.10.8.6 (2023-03-28) 14 | 15 | Add defaults for third-party stubs Q-T (#9959) 16 | 17 | ## 0.10.8.5 (2023-02-21) 18 | 19 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 20 | 21 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 22 | 23 | ## 0.10.8.4 (2023-02-15) 24 | 25 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 26 | 27 | ## 0.10.8.3 (2023-02-07) 28 | 29 | Bump mypy to 1.0 (#9684) 30 | 31 | ## 0.10.8.2 (2023-02-02) 32 | 33 | Manual changes of `Any` union to `Incomplete` in stubs folder (#9566) 34 | 35 | - ClassVar[Any | None] 36 | - Missed previous changes due to alias 37 | - Manual review of leftover Any unions (`| Any` and `Any |`) 38 | 39 | ## 0.10.8.1 (2022-11-13) 40 | 41 | Mark `toml` as complete (#9185) 42 | 43 | ## 0.10.8 (2022-07-12) 44 | 45 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 46 | 47 | ## 0.10.7 (2022-05-07) 48 | 49 | Import generics from standard modules in all third-party stubs (#7791) 50 | 51 | ## 0.10.6 (2022-04-27) 52 | 53 | Remove Python 2 support from toml (#7713) 54 | 55 | ## 0.10.5 (2022-04-16) 56 | 57 | Use `TypeAlias` where possible for type aliases (#7630) 58 | 59 | ## 0.10.4 (2022-02-10) 60 | 61 | Improve `toml` typings (#7146) 62 | 63 | Co-authored-by: Akuli 64 | 65 | ## 0.10.3 (2022-01-08) 66 | 67 | Use lowercase `type` everywhere (#6853) 68 | 69 | ## 0.10.1 (2021-10-12) 70 | 71 | Add star to all non-0.1 versions (#6146) 72 | 73 | ## 0.10.0 (2021-09-19) 74 | 75 | Update third-party package versions (#5996) 76 | 77 | -------------------------------------------------------------------------------- /data/changelogs/toposort.md: -------------------------------------------------------------------------------- 1 | ## 1.10.0.20250401 (2025-04-01) 2 | 3 | Add `__all__` part 2 (#13719) 4 | 5 | --------- 6 | 7 | Co-authored-by: Avasam 8 | 9 | ## 1.10.0.20241221 (2024-12-21) 10 | 11 | Update to mypy 1.14 (#13272) 12 | 13 | ## 1.10.0.1 (2023-07-20) 14 | 15 | Add a few more upstream_repository URLs (#10489) 16 | 17 | ## 1.10.0.0 (2023-02-26) 18 | 19 | [stubsabot] Bump toposort to 1.10 (#9816) 20 | 21 | Release: https://pypi.org/pypi/toposort/1.10 22 | 23 | ## 1.9.0.1 (2023-02-21) 24 | 25 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 26 | 27 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 28 | 29 | ## 1.9.0.0 (2023-01-12) 30 | 31 | [stubsabot] Bump toposort to 1.9 (#9503) 32 | 33 | Release: https://pypi.org/pypi/toposort/1.9 34 | 35 | ## 1.8.0.0 (2023-01-11) 36 | 37 | Bump toposort to 1.8 (#9489) 38 | 39 | ## 1.7.4 (2022-06-25) 40 | 41 | ujson, pyfarmhash, toposort: check for missing definitions (#8153) 42 | 43 | Co-authored-by: hauntsaninja <> 44 | 45 | ## 1.7.3 (2022-04-16) 46 | 47 | Third-party stubs: import from `collections.abc` where possible (#7637) 48 | 49 | ## 1.7.1 (2021-12-17) 50 | 51 | Always import Protocol from typing in stubs (#6617) 52 | 53 | ## 1.7.0 (2021-12-07) 54 | 55 | toposort: Make argument types less restrictive (#6531) 56 | 57 | ## 1.6.1 (2021-10-12) 58 | 59 | Add star to all non-0.1 versions (#6146) 60 | 61 | ## 1.6.0 (2021-09-19) 62 | 63 | Create stubs for toposort (#6048) 64 | 65 | -------------------------------------------------------------------------------- /data/changelogs/translationstring.md: -------------------------------------------------------------------------------- 1 | ## 1.4.0.20240301 (2024-03-01) 2 | 3 | Fix invalid noqa comments and poorly formatted type ignores (#11497) 4 | 5 | ## 1.4.0.1 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 1.4.0.0 (2023-03-22) 12 | 13 | Add stubs for translationstring (#9918) 14 | 15 | -------------------------------------------------------------------------------- /data/changelogs/tree-sitter.md: -------------------------------------------------------------------------------- 1 | ## 0.20.1.20240311 (2024-03-11) 2 | 3 | Make stubtest pass on libsass/passlib/redis/tree-sitter if you're using Python 3.12 (#11561) 4 | 5 | Use PEP 570 syntax in third party stubs (#11554) 6 | 7 | ## 0.20.1.20240106 (2024-01-06) 8 | 9 | Update typing_extensions imports in third-party stubs (#11245) 10 | 11 | ## 0.20.1.6 (2023-11-15) 12 | 13 | [stubsabot] Mark tree-sitter as obsolete since 0.20.3 (#10681) 14 | 15 | ## 0.20.1.5 (2023-09-07) 16 | 17 | Pin `tree-sitter` to 0.20.1 (#10677) 18 | 19 | ## 0.20.1.4 (2023-07-20) 20 | 21 | Add an upstream_repository field to METADATA.toml (#10487) 22 | 23 | Closes: #10478 24 | 25 | ## 0.20.1.3 (2023-03-28) 26 | 27 | Add defaults for third-party stubs Q-T (#9959) 28 | 29 | ## 0.20.1.2 (2023-02-21) 30 | 31 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 32 | 33 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 34 | 35 | ## 0.20.1.1 (2022-10-24) 36 | 37 | Remove `tree-sitter` from `pyright`'s exclude (#8946) 38 | 39 | Co-authored-by: Akuli 40 | 41 | ## 0.20.1 (2022-09-06) 42 | 43 | tree-sitter: add missing members (#8693) 44 | 45 | ## 0.20.0 (2022-08-17) 46 | 47 | Add stubs for tree_sitter (#8533) 48 | 49 | Co-authored-by: Alex Waygood 50 | Co-authored-by: Jelle Zijlstra 51 | 52 | -------------------------------------------------------------------------------- /data/changelogs/ttkthemes.md: -------------------------------------------------------------------------------- 1 | ## 3.2.4.20250426 (2025-04-26) 2 | 3 | Complete `ttkthemes` (#13858) 4 | 5 | ## 3.2.4.6 (2023-07-20) 6 | 7 | Add an upstream_repository field to METADATA.toml (#10487) 8 | 9 | Closes: #10478 10 | 11 | ## 3.2.4.5 (2023-03-28) 12 | 13 | Add defaults for third-party stubs Q-T (#9959) 14 | 15 | ## 3.2.4.4 (2023-02-21) 16 | 17 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 18 | 19 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 20 | 21 | ## 3.2.4.3 (2023-01-18) 22 | 23 | Replace `Any` with `Incomplete` in many places (#9558) 24 | 25 | ## 3.2.4.2 (2022-11-13) 26 | 27 | Mark `ttkthemes` as complete (#9186) 28 | 29 | ## 3.2.4.1 (2022-11-09) 30 | 31 | Annotate known magic-method return types (#9131) 32 | 33 | ## 3.2.3 (2021-11-26) 34 | 35 | Add mypy error codes to '# type: ignore' comments (#6379) 36 | 37 | ## 3.2.2 (2021-10-12) 38 | 39 | Add star to all non-0.1 versions (#6146) 40 | 41 | ## 3.2.1 (2021-09-20) 42 | 43 | ttkthemes: allow constructing ThemedStyle with no arguments (#6046) 44 | 45 | ## 3.2.0 (2021-09-10) 46 | 47 | Stubs for ttkthemes (#6024) 48 | 49 | -------------------------------------------------------------------------------- /data/changelogs/uWSGI.md: -------------------------------------------------------------------------------- 1 | ## 2.0.0.20240516 (2024-05-16) 2 | 3 | uWSGI: Makes stubtest_allowlist_darwin more resilient against CI flakyness (#11819) 4 | 5 | ## 2.0.0.20240425 (2024-04-25) 6 | 7 | Bump pyright to v1.1.360 (#11810) 8 | 9 | Disable uwsgi, pyaudio, jack-client stubtest on macOS (#11821) 10 | 11 | ## 2.0.0.20240414 (2024-04-14) 12 | 13 | uwsgi: remove unused allowlist entry (#11754) 14 | 15 | Also wow, some of the logs that come from uwsgi are quite interesting 16 | 17 | ## 2.0.0.20240311 (2024-03-11) 18 | 19 | Use PEP 570 syntax in third party stubs (#11554) 20 | 21 | ## 2.0.0.20240106 (2024-01-06) 22 | 23 | Update typing_extensions imports in third-party stubs (#11245) 24 | 25 | ## 2.0.0.1 (2023-11-24) 26 | 27 | Third-party stubs: remove unused `type: ignore`s (#11063) 28 | 29 | ## 2.0.0.0 (2023-07-24) 30 | 31 | Adds stubs for uWSGI (#10432) 32 | 33 | This adds stubs for the uWSGI Python API. 34 | 35 | Similarly to GDB the Python API is only accessible within a uWSGI process, some parts of the API also only exist if certain configuration options are enabled. This makes running stubtest a bit of pain. 36 | 37 | Co-authored-by: Alex Waygood 38 | Co-authored-by: Jelle Zijlstra 39 | Co-authored-by: Akuli 40 | 41 | -------------------------------------------------------------------------------- /data/changelogs/unidiff.md: -------------------------------------------------------------------------------- 1 | ## 0.7.0.20240505 (2024-05-05) 2 | 3 | Add stubs for unidiff (#11860) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/untangle.md: -------------------------------------------------------------------------------- 1 | ## 1.2.0.4 (2023-09-23) 2 | 3 | stdlib/xml/sax: Add type annotations (#10606) 4 | 5 | * stdlib/xml/sax: Type annotations for commonly used methods. 6 | 7 | * stdlib/xml/sax: More annotations. 8 | 9 | It turns out SAX's definition of a "qname" is exactly the opposite of 10 | ElementTree's. With that understanding, let's annotate the Attributes*Impl 11 | classes too. 12 | 13 | * stdlib/xml/sax: I better understand what AttributesNSImpl is doing now. 14 | 15 | * Update third-party library stubs to agree with the new SAX annotations. 16 | 17 | ## 1.2.0.3 (2023-08-13) 18 | 19 | Fill in all missing `upstream_repository` fields (#10571) 20 | 21 | Co-authored-by: Alex Waygood 22 | 23 | ## 1.2.0.2 (2023-02-21) 24 | 25 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 26 | 27 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 28 | 29 | ## 1.2.0.1 (2023-02-15) 30 | 31 | Use `typing_extensions.Self` instead of `_typeshed.Self` (#9702) 32 | 33 | ## 1.2.0.0 (2022-12-23) 34 | 35 | Add stubs for untangle (#9402) 36 | 37 | Co-authored-by: Alex Waygood 38 | 39 | -------------------------------------------------------------------------------- /data/changelogs/usersettings.md: -------------------------------------------------------------------------------- 1 | ## 1.1.0.0 (2023-08-21) 2 | 3 | Add `usersettings` stub files (#10598) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/watchpoints.md: -------------------------------------------------------------------------------- 1 | ## 0.2.5.20250304 (2025-03-04) 2 | 3 | Add stubs for watchpoints (#13248) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/whatthepatch.md: -------------------------------------------------------------------------------- 1 | ## 1.0.2.20250401 (2025-04-01) 2 | 3 | Add `__all__` part 2 (#13719) 4 | 5 | --------- 6 | 7 | Co-authored-by: Avasam 8 | 9 | ## 1.0.2.20241221 (2024-12-21) 10 | 11 | Update to mypy 1.14 (#13272) 12 | 13 | ## 1.0.2.5 (2023-07-20) 14 | 15 | Add an upstream_repository field to METADATA.toml (#10487) 16 | 17 | Closes: #10478 18 | 19 | ## 1.0.2.4 (2023-03-28) 20 | 21 | Add defaults to third-party stubs U-Z (#9971) 22 | 23 | ## 1.0.2.3 (2023-02-21) 24 | 25 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 26 | 27 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 28 | 29 | ## 1.0.2.2 (2023-02-07) 30 | 31 | Bump mypy to 1.0 (#9684) 32 | 33 | ## 1.0.2.1 (2023-01-30) 34 | 35 | whatthepatch: add parse_git_binary_diff (#9616) 36 | 37 | Added in 1.0.4 38 | https://github.com/cscorley/whatthepatch/pull/whatthepatch 39 | 40 | Fixes #9615 41 | 42 | ## 1.0.2 (2022-07-12) 43 | 44 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 45 | 46 | ## 1.0.1 (2022-06-26) 47 | 48 | Check missing definitions for several packages (#8167) 49 | 50 | Co-authored-by: hauntsaninja <> 51 | 52 | ## 1.0.0 (2022-03-17) 53 | 54 | Add stubs for whatthepatch (#7492) 55 | 56 | Co-authored-by: Akuli 57 | 58 | -------------------------------------------------------------------------------- /data/changelogs/workalendar.md: -------------------------------------------------------------------------------- 1 | ## 17.0.0.20250602 (2025-06-02) 2 | 3 | Update mypy to 1.16.0 (#14194) 4 | 5 | Co-authored-by: Sebastian Rittau 6 | Co-authored-by: Alex Waygood 7 | 8 | ## 17.0.0.20250516 (2025-05-16) 9 | 10 | Replace `Incomplete | None = None` in third party stubs (#14063) 11 | 12 | ## 17.0.0.20250401 (2025-04-01) 13 | 14 | Add `__all__` part 2 (#13719) 15 | 16 | --------- 17 | 18 | Co-authored-by: Avasam 19 | 20 | ## 17.0.0.20241221 (2024-12-21) 21 | 22 | Update to mypy 1.14 (#13272) 23 | 24 | ## 17.0.0.0 (2023-08-25) 25 | 26 | Add stubs for workalendar (#10614) 27 | 28 | Co-authored-by: Akuli 29 | 30 | -------------------------------------------------------------------------------- /data/changelogs/wurlitzer.md: -------------------------------------------------------------------------------- 1 | ## 3.1.0.20240511 (2024-05-11) 2 | 3 | [stubsabot] Bump wurlitzer to 3.1.* (#11848) 4 | 5 | ## 3.0.0.20240311 (2024-03-11) 6 | 7 | Use PEP 570 syntax in third party stubs (#11554) 8 | 9 | ## 3.0.0.20240310 (2024-03-10) 10 | 11 | Add `wurlitzer` stubs (#11459) 12 | 13 | Co-authored-by: Alex Waygood 14 | Co-authored-by: Akuli 15 | 16 | -------------------------------------------------------------------------------- /data/changelogs/xdgenvpy.md: -------------------------------------------------------------------------------- 1 | ## 3.0.0.20240918 (2024-09-18) 2 | 3 | Bump xdgenvpy to 3.0.* (#12671) 4 | 5 | ## 2.4.0.20240905 (2024-09-05) 6 | 7 | Add stubs for `xdgenvpy` (#12615) 8 | 9 | -------------------------------------------------------------------------------- /data/changelogs/xlrd.md: -------------------------------------------------------------------------------- 1 | ## 2.0.0.20250326 (2025-03-26) 2 | 3 | Add stubs for `xlrd` (#13676) 4 | 5 | -------------------------------------------------------------------------------- /data/changelogs/xmltodict.md: -------------------------------------------------------------------------------- 1 | ## 0.14.0.20241009 (2024-10-09) 2 | 3 | [stubsabot] Bump xmltodict to 0.14.* (#12757) 4 | 5 | Release: https://pypi.org/pypi/xmltodict/0.14.0 6 | Homepage: https://github.com/martinblech/xmltodict 7 | Repository: https://github.com/martinblech/xmltodict 8 | Typeshed stubs: https://github.com/python/typeshed/tree/main/stubs/xmltodict 9 | Diff: https://github.com/martinblech/xmltodict/compare/v0.13.0...v0.14.0 10 | 11 | Stubsabot analysis of the diff between the two releases: 12 | - 1 public Python file has been added: `tests/__init__.py`. 13 | - 0 files included in typeshed's stubs have been deleted. 14 | - 1 file included in typeshed's stubs has been modified or renamed: `xmltodict.py`. 15 | - Total lines of Python code added: 76. 16 | - Total lines of Python code deleted: 60. 17 | 18 | If stubtest fails for this PR: 19 | - Leave this PR open (as a reminder, and to prevent stubsabot from opening another PR) 20 | - Fix stubtest failures in another PR, then close this PR 21 | 22 | Note that you will need to close and re-open the PR in order to trigger CI 23 | 24 | Co-authored-by: stubsabot <> 25 | 26 | ## 0.13.0.3 (2023-07-20) 27 | 28 | Add an upstream_repository field to METADATA.toml (#10487) 29 | 30 | Closes: #10478 31 | 32 | ## 0.13.0.2 (2023-02-21) 33 | 34 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 35 | 36 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 37 | 38 | ## 0.13.0.1 (2022-10-28) 39 | 40 | xmltodict: improve parse input types (#9018) 41 | 42 | ## 0.13.0 (2022-06-26) 43 | 44 | Bump xmltodict to 0.13.* (#8172) 45 | 46 | ## 0.12.2 (2022-06-25) 47 | 48 | appdirs, tabulate, termcolor, xmltodict: check missing defs (#8156) 49 | 50 | complete termcolor, xmltodict 51 | 52 | ## 0.12.1 (2022-04-16) 53 | 54 | Third-party stubs: import from `collections.abc` where possible (#7637) 55 | 56 | ## 0.12.0 (2022-03-11) 57 | 58 | Add xmltodict (#7472) 59 | 60 | Signed-off-by: Andrej Shadura 61 | 62 | -------------------------------------------------------------------------------- /data/changelogs/xxhash.md: -------------------------------------------------------------------------------- 1 | ## 3.0.5.2 (2023-02-21) 2 | 3 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 4 | 5 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 6 | 7 | ## 3.0.5.1 (2022-10-20) 8 | 9 | [stubsabot] Mark xxhash as obsolete since 3.1.0 (#8935) 10 | 11 | Release: https://pypi.org/pypi/xxhash/3.1.0 12 | Homepage: https://github.com/ifduyue/python-xxhash 13 | Diff: https://github.com/ifduyue/python-xxhash/compare/v3.0.0...v3.1.0 14 | 15 | Co-authored-by: stubsabot <> 16 | 17 | ## 3.0.5 (2022-09-27) 18 | 19 | Bump mypy to 0.981 (#8796) 20 | 21 | ## 3.0.4 (2022-07-20) 22 | 23 | Allowlist useless modules (#8340) 24 | 25 | These are the ones I chose not to add from #8321 26 | 27 | Fixes most of #8339 28 | 29 | ## 3.0.3 (2022-07-19) 30 | 31 | Add missing third party modules (#8321) 32 | 33 | Co-authored-by: Alex Waygood 34 | Co-authored-by: hauntsaninja <> 35 | Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 36 | 37 | ## 3.0.2 (2022-07-17) 38 | 39 | Make xxhash, editdistance into packages (#8320) 40 | 41 | This matches the runtime. Also see #8319 42 | 43 | ## 3.0.1 (2022-06-21) 44 | 45 | stubtest: per project --ignore-missing-stub (#8122) 46 | 47 | ## 3.0.0 (2022-06-08) 48 | 49 | Update xxhash (#8034) 50 | 51 | Co-authored-by: hauntsaninja <> 52 | 53 | ## 2.0.5 (2022-04-29) 54 | 55 | Delete python 2 branches from third-party stubs (#7741) 56 | 57 | Since #7703, we no longer have third-party stubs that support Python 2, so code like `if sys.version_info >= (3, 0)` can be simplified. 58 | 59 | ## 2.0.4 (2022-04-27) 60 | 61 | Drop Python 2 support in third-party stubs (#7703) 62 | 63 | ## 2.0.2 (2021-10-12) 64 | 65 | Add star to all non-0.1 versions (#6146) 66 | 67 | ## 2.0.1 (2021-09-14) 68 | 69 | Update the `xxhash` and `hashlib` stubs (#6031) 70 | 71 | * `name`, `block_size`, `digest_size` and `digestsize` attributes of hash objects were made read-only. 72 | * It is now a type-checking error to subclass `xxhash` classes, such as `xxhash.xxh32`. Previously it was an error only at runtime. 73 | * `xxhash` functions now accept strings as input and any object with `__index__()` method for `seed` (instead of requiring an integer). They also fail the type checking if no arguments are given. 74 | 75 | -------------------------------------------------------------------------------- /data/changelogs/zxcvbn.md: -------------------------------------------------------------------------------- 1 | ## 4.5.0.20250223 (2025-02-23) 2 | 3 | Bump zxcvbn to 4.5.* (#13521) 4 | 5 | ## 4.4.1.20240106 (2024-01-06) 6 | 7 | Update typing_extensions imports in third-party stubs (#11245) 8 | 9 | ## 4.4.1.6 (2023-07-20) 10 | 11 | Add an upstream_repository field to METADATA.toml (#10487) 12 | 13 | Closes: #10478 14 | 15 | ## 4.4.1.5 (2023-03-28) 16 | 17 | Add defaults to third-party stubs U-Z (#9971) 18 | 19 | ## 4.4.1.4 (2023-02-21) 20 | 21 | Stubtest settings: change `ignore_missing_stub` default to `false` (#9779) 22 | 23 | If you're reading about this commit from an autogenerated changelog entry, this should have no user-visible impact on how the stubs are interpreted by a type checker; it's just an internal change to how typeshed's tests work. 24 | 25 | ## 4.4.1.3 (2023-02-07) 26 | 27 | Bump mypy to 1.0 (#9684) 28 | 29 | ## 4.4.1.2 (2022-12-07) 30 | 31 | 3rd-party stubtest: run on Python 3.10 (#9342) 32 | 33 | ## 4.4.1.1 (2022-11-04) 34 | 35 | Mark `zxcvbn` as completed (#9088) 36 | 37 | ## 4.4.1 (2022-07-12) 38 | 39 | Import `Match` and `Pattern` from `re`, not `typing` (#8277) 40 | 41 | ## 4.4.0 (2022-06-21) 42 | 43 | Add types for zxcvbn (#8089) 44 | 45 | -------------------------------------------------------------------------------- /data/empty_package/setup.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | from setuptools import setup 4 | 5 | increment = os.environ["PACKAGE_VERSION_INCREMENT"] 6 | name = "types-tsbot-empty" 7 | description = "Empty typing stubs for testing typeshed/PyPI auto-upload" 8 | 9 | setup( 10 | name=name, 11 | version=f"0.1.{increment}", 12 | description=description, 13 | long_description=description, 14 | url="https://github.com/typeshed-internal/stub_uploader", 15 | install_requires=[], 16 | packages=[], 17 | classifiers=[ 18 | "Typing :: Stubs Only", 19 | ], 20 | ) 21 | -------------------------------------------------------------------------------- /data/last_typeshed_commit.sha1: -------------------------------------------------------------------------------- 1 | 42b13697ed734bb8792438b365a3b82d60269815 2 | -------------------------------------------------------------------------------- /data/test_typeshed/stubs/bogusfiles/METADATA.toml: -------------------------------------------------------------------------------- 1 | version = "0.1" 2 | -------------------------------------------------------------------------------- /data/test_typeshed/stubs/bogusfiles/bogusfile.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/bogusfiles/bogusfile.txt -------------------------------------------------------------------------------- /data/test_typeshed/stubs/bogusfiles/bogusfiles.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/bogusfiles/bogusfiles.pyi -------------------------------------------------------------------------------- /data/test_typeshed/stubs/multifilepkg/@tests/stubtest_allowlist.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/multifilepkg/@tests/stubtest_allowlist.txt -------------------------------------------------------------------------------- /data/test_typeshed/stubs/multifilepkg/METADATA.toml: -------------------------------------------------------------------------------- 1 | version = "0.1" 2 | requires = [] 3 | -------------------------------------------------------------------------------- /data/test_typeshed/stubs/multifilepkg/multifilepkg/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/multifilepkg/multifilepkg/__init__.pyi -------------------------------------------------------------------------------- /data/test_typeshed/stubs/multifilepkg/multifilepkg/a.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/multifilepkg/multifilepkg/a.pyi -------------------------------------------------------------------------------- /data/test_typeshed/stubs/multifilepkg/multifilepkg/b.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/multifilepkg/multifilepkg/b.pyi -------------------------------------------------------------------------------- /data/test_typeshed/stubs/multifilepkg/multifilepkg/c/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/multifilepkg/multifilepkg/c/__init__.pyi -------------------------------------------------------------------------------- /data/test_typeshed/stubs/multifilepkg/multifilepkg/c/d.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/multifilepkg/multifilepkg/c/d.pyi -------------------------------------------------------------------------------- /data/test_typeshed/stubs/multifilepkg/multifilepkg/c/e.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/multifilepkg/multifilepkg/c/e.pyi -------------------------------------------------------------------------------- /data/test_typeshed/stubs/nspkg/@tests/stubtest_allowlist.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/nspkg/@tests/stubtest_allowlist.txt -------------------------------------------------------------------------------- /data/test_typeshed/stubs/nspkg/METADATA.toml: -------------------------------------------------------------------------------- 1 | version = "0.1" 2 | requires = [] 3 | -------------------------------------------------------------------------------- /data/test_typeshed/stubs/nspkg/nspkg/innerpkg/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/nspkg/nspkg/innerpkg/__init__.pyi -------------------------------------------------------------------------------- /data/test_typeshed/stubs/singlefilepkg/@tests/stubtest_allowlist.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/singlefilepkg/@tests/stubtest_allowlist.txt -------------------------------------------------------------------------------- /data/test_typeshed/stubs/singlefilepkg/METADATA.toml: -------------------------------------------------------------------------------- 1 | version = "0.1" 2 | -------------------------------------------------------------------------------- /data/test_typeshed/stubs/singlefilepkg/singlefilepkg.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/data/test_typeshed/stubs/singlefilepkg/singlefilepkg.pyi -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | # scripts 2 | packaging 3 | requests < 2.30.0 4 | tomli 5 | 6 | # build and upload 7 | build 8 | setuptools >= 77.0.3 9 | twine 10 | 11 | # tests 12 | mypy 13 | pytest 14 | types-requests 15 | 16 | # formatting 17 | black >= 24.1.1, < 25 18 | -------------------------------------------------------------------------------- /stub_uploader/__init__.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | assert sys.version_info >= (3, 9) 4 | -------------------------------------------------------------------------------- /stub_uploader/const.py: -------------------------------------------------------------------------------- 1 | import pathlib 2 | 3 | THIRD_PARTY_NAMESPACE = "stubs" 4 | TESTS_NAMESPACE = "@tests" 5 | META = "METADATA.toml" 6 | TYPES_PREFIX = "types-" 7 | 8 | _ROOT = pathlib.Path(__file__).parent.parent 9 | CHANGELOG_PATH = (_ROOT / "data" / "changelogs").resolve() 10 | UPLOADED_PATH = str((_ROOT / "data" / "uploaded_packages.txt").resolve()) 11 | -------------------------------------------------------------------------------- /stub_uploader/get_changed.py: -------------------------------------------------------------------------------- 1 | """ 2 | A short script to list names of distributions modified since some 3 | typeshed commit. 4 | 5 | This is used by scheduled GitHub auto-upload action to only upload 6 | modified stub packages. 7 | """ 8 | 9 | import argparse 10 | import os 11 | import subprocess 12 | 13 | 14 | def main(typeshed_dir: str, commit: str) -> list[str]: 15 | """List all distributions that changed since commit.""" 16 | assert typeshed_dir.endswith(os.sep + "typeshed") 17 | git = subprocess.run( 18 | ["git", "diff", "--no-renames", "--name-only", "HEAD", commit], 19 | capture_output=True, 20 | text=True, 21 | cwd=typeshed_dir, 22 | check=True, 23 | ) 24 | changed = set() 25 | for file in git.stdout.splitlines(): 26 | # Third party stubs live in typeshed/stubs/... 27 | if file.startswith("stubs" + os.path.sep): 28 | _, distribution, *_ = file.split(os.path.sep) 29 | changed.add(distribution) 30 | return sorted(changed) 31 | 32 | 33 | if __name__ == "__main__": 34 | parser = argparse.ArgumentParser() 35 | parser.add_argument("typeshed_dir", help="Path to typeshed checkout directory") 36 | parser.add_argument( 37 | "previous_commit", help="Previous typeshed commit for which we performed upload" 38 | ) 39 | args = parser.parse_args() 40 | for distribution in main(args.typeshed_dir, args.previous_commit): 41 | print(distribution) 42 | -------------------------------------------------------------------------------- /stub_uploader/ts_data.py: -------------------------------------------------------------------------------- 1 | """ 2 | Information about typeshed. 3 | """ 4 | 5 | from __future__ import annotations 6 | 7 | import argparse 8 | from collections.abc import Iterable 9 | from dataclasses import dataclass, fields 10 | from pathlib import Path 11 | import re 12 | import subprocess 13 | 14 | from packaging.requirements import Requirement 15 | from packaging.version import Version 16 | from tomli import load as toml_load 17 | 18 | REQUIREMENTS = "requirements-tests.txt" 19 | PYPROJECT = "pyproject.toml" 20 | 21 | 22 | @dataclass 23 | class TypeshedData: 24 | typeshed_path: Path 25 | mypy_version: Version 26 | pyright_version: Version 27 | pytype_version: Version 28 | oldest_supported_python: str 29 | 30 | def read_current_commit(self) -> str: 31 | return subprocess.run( 32 | ["git", "rev-parse", "HEAD"], 33 | capture_output=True, 34 | text=True, 35 | cwd=self.typeshed_path, 36 | ).stdout.strip() 37 | 38 | 39 | def read_typeshed_data(typeshed_path: Path) -> TypeshedData: 40 | with (typeshed_path / PYPROJECT).open("rb") as f: 41 | pyproject = toml_load(f) 42 | with (typeshed_path / REQUIREMENTS).open() as f: 43 | requirements = parse_requirements(f) 44 | typeshed_table = pyproject["tool"]["typeshed"] 45 | if not re.match(r"^\d+\.\d+$", typeshed_table["oldest_supported_python"]): 46 | raise ValueError("Invalid oldest_supported_python in pyproject.toml") 47 | return TypeshedData( 48 | typeshed_path=typeshed_path, 49 | mypy_version=Version(requirements["mypy"]), 50 | pyright_version=Version(requirements["pyright"]), 51 | pytype_version=Version(requirements["pytype"]), 52 | oldest_supported_python=typeshed_table["oldest_supported_python"], 53 | ) 54 | 55 | 56 | def parse_requirements(stream: Iterable[str]) -> dict[str, str]: 57 | """Parse all exact requirements from a requirements.txt file. 58 | 59 | Only requirements that are pinned to a specific version are returned. 60 | """ 61 | requirements = {} 62 | for line in stream: 63 | line = line.strip() 64 | line = line.split("#")[0] # strip comments 65 | if not line.strip(): # skip empty lines 66 | continue 67 | req = Requirement(line.strip()) 68 | if len(req.specifier) != 1: 69 | continue 70 | spec = next(iter(req.specifier)) 71 | if spec.operator != "==": 72 | continue 73 | requirements[req.name] = spec.version 74 | return requirements 75 | 76 | 77 | if __name__ == "__main__": 78 | parser = argparse.ArgumentParser() 79 | parser.add_argument("typeshed_dir", help="Path to typeshed checkout directory") 80 | args = parser.parse_args() 81 | data = read_typeshed_data(Path(args.typeshed_dir)) 82 | for field in fields(data): 83 | print(f"{field.name}: {getattr(data, field.name)}") 84 | -------------------------------------------------------------------------------- /stub_uploader/upload.py: -------------------------------------------------------------------------------- 1 | from __future__ import annotations 2 | 3 | import subprocess 4 | 5 | from stub_uploader import build_wheel 6 | from stub_uploader.get_version import determine_stub_version 7 | from stub_uploader.update_changelog import update_changelog 8 | from stub_uploader.metadata import ( 9 | read_metadata, 10 | recursive_verify, 11 | sort_by_dependency, 12 | uploaded_packages, 13 | ) 14 | 15 | 16 | def upload( 17 | typeshed_dir: str, 18 | distributions: list[str], 19 | commit: str | None = None, 20 | *, 21 | dry_run: bool = False, 22 | ) -> None: 23 | to_upload = sort_by_dependency(typeshed_dir, distributions) 24 | print("Building and uploading stubs for:", ", ".join(distributions)) 25 | print() 26 | for distribution in to_upload: 27 | upload_distribution(typeshed_dir, distribution, commit, dry_run=dry_run) 28 | 29 | 30 | def upload_distribution( 31 | typeshed_dir: str, distribution: str, commit: str | None, *, dry_run: bool 32 | ) -> None: 33 | print(f"Building stubs for {distribution}... ", end="") 34 | metadata = read_metadata(typeshed_dir, distribution) 35 | recursive_verify(metadata, typeshed_dir) 36 | 37 | version = determine_stub_version(metadata) 38 | 39 | if commit: 40 | update_changelog(typeshed_dir, commit, distribution, version, dry_run=dry_run) 41 | 42 | temp_dir = build_wheel.main(typeshed_dir, distribution, version) 43 | print(f"ok, version {version}") 44 | 45 | print(f"Uploading stubs for {distribution}... ", end="") 46 | if dry_run or not metadata.upload: 47 | print("skipped") 48 | else: 49 | subprocess.run(["twine", "upload", str(temp_dir / "*")], check=True) 50 | uploaded_packages.add(distribution) 51 | print("ok") 52 | print() 53 | -------------------------------------------------------------------------------- /stub_uploader/upload_changed.py: -------------------------------------------------------------------------------- 1 | """ 2 | Entry point for scheduled GitHub auto-upload action. 3 | 4 | This does following things: 5 | * Reads the list of stub packages modified since last commit in typeshed 6 | * Checks what is the current stub version increment for each package on PyPI 7 | * Bumps the increment, builds and uploads (unless run with --dry-run) each 8 | new package to PyPI 9 | * Verifies validity of stub dependencies, and updates known dependencies if needed 10 | """ 11 | 12 | import argparse 13 | import os 14 | from stub_uploader import get_changed 15 | from stub_uploader.upload import upload 16 | 17 | 18 | def main(typeshed_dir: str, commit: str, dry_run: bool = False) -> None: 19 | """Upload stub typeshed packages modified since commit.""" 20 | changed = get_changed.main(typeshed_dir, commit) 21 | # Ignore those distributions that were completely deleted. 22 | current = set(os.listdir(os.path.join(typeshed_dir, "stubs"))) 23 | changed = [d for d in changed if d in current] 24 | upload(typeshed_dir, changed, commit, dry_run=dry_run) 25 | 26 | 27 | if __name__ == "__main__": 28 | parser = argparse.ArgumentParser() 29 | parser.add_argument("typeshed_dir", help="Path to typeshed checkout directory") 30 | parser.add_argument( 31 | "previous_commit", help="Previous typeshed commit for which we performed upload" 32 | ) 33 | parser.add_argument( 34 | "--dry-run", 35 | action="store_true", 36 | help="Should we perform a dry run (don't actually upload)", 37 | ) 38 | args = parser.parse_args() 39 | main(args.typeshed_dir, args.previous_commit, args.dry_run) 40 | -------------------------------------------------------------------------------- /stub_uploader/upload_some.py: -------------------------------------------------------------------------------- 1 | """ 2 | Entry point for manual GitHub upload action. 3 | 4 | This does following things: 5 | * Finds all distributions with names that match the pattern provided 6 | * Checks what is the current stub version increment for each package on PyPI 7 | * Bumps the increment, builds and uploads the each new package to PyPI 8 | * Verifies validity of stub dependencies, and updates known dependencies if needed 9 | """ 10 | 11 | import argparse 12 | import os 13 | import re 14 | 15 | from stub_uploader.upload import upload 16 | 17 | 18 | def main(typeshed_dir: str, pattern: str) -> None: 19 | """Force upload typeshed stub packages to PyPI.""" 20 | compiled = re.compile(f"^{pattern}$") # force exact matches 21 | matching = [ 22 | d 23 | for d in os.listdir(os.path.join(typeshed_dir, "stubs")) 24 | if re.match(compiled, d) 25 | ] 26 | # TODO: Update changelog by providing the "commit" argument 27 | upload(typeshed_dir, matching) 28 | 29 | 30 | if __name__ == "__main__": 31 | parser = argparse.ArgumentParser() 32 | parser.add_argument("typeshed_dir", help="Path to typeshed checkout directory") 33 | parser.add_argument( 34 | "pattern", help="Regular expression to select distributions for upload" 35 | ) 36 | args = parser.parse_args() 37 | main(args.typeshed_dir, args.pattern) 38 | -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typeshed-internal/stub_uploader/eaef4d7af6989dfbbfe3656f135fc068a3a1ca95/tests/__init__.py --------------------------------------------------------------------------------