mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-22 03:41:28 +08:00
Add an upstream_repository field to METADATA.toml (#10487)
Closes: #10478
This commit is contained in:
@@ -184,6 +184,7 @@ supported:
|
||||
* `stub_distribution` (optional): Distribution name to be uploaded to PyPI.
|
||||
This defaults to `types-<distribution>` and should only be set in special
|
||||
cases.
|
||||
* `upstream_repository` (recommended): The URL of the upstream repository.
|
||||
* `obsolete_since` (optional): This field is part of our process for
|
||||
[removing obsolete third-party libraries](#third-party-library-removal-policy).
|
||||
It contains the first version of the corresponding library that ships
|
||||
|
||||
@@ -246,8 +246,9 @@ async def get_github_repo_info(session: aiohttp.ClientSession, pypi_info: PypiIn
|
||||
|
||||
Else, return None.
|
||||
"""
|
||||
project_urls = pypi_info.info.get("project_urls", {}).values()
|
||||
for project_url in project_urls:
|
||||
# project_urls can be None in the downloaded JSON.
|
||||
project_url_dict = pypi_info.info.get("project_urls") or {}
|
||||
for project_url in project_url_dict.values():
|
||||
assert isinstance(project_url, str)
|
||||
split_url = urllib.parse.urlsplit(project_url)
|
||||
if split_url.netloc == "github.com" and not split_url.query and not split_url.fragment:
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
version = "2.0.*"
|
||||
upstream_repository = "https://github.com/thombashi/DateTimeRange"
|
||||
requires = ["types-python-dateutil"]
|
||||
obsolete_since = "2.1.0" # Released on 2023-02-19
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "1.2.*"
|
||||
upstream_repository = "https://github.com/tantale/deprecated"
|
||||
requires = []
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "3.0.*"
|
||||
upstream_repository = "https://github.com/ianare/exif-py"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "4.0.*"
|
||||
upstream_repository = "https://github.com/corydolphin/flask-cors"
|
||||
# Requires a version of flask with a `py.typed` file
|
||||
requires = ["Flask>=2.0.0"]
|
||||
partial_stub = true
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "4.0.*"
|
||||
upstream_repository = "https://github.com/miguelgrinberg/flask-migrate"
|
||||
# Requires versions of flask and Flask-SQLAlchemy with `py.typed` files
|
||||
requires = ["Flask>=2.0.0", "Flask-SQLAlchemy>=3.0.1"]
|
||||
partial_stub = true
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "3.4.*"
|
||||
upstream_repository = "https://github.com/Python-Markdown/markdown"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "10.0.*"
|
||||
upstream_repository = "https://github.com/python-pillow/Pillow"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "0.9.*"
|
||||
upstream_repository = "https://github.com/asweigart/pyautogui"
|
||||
requires = ["types-Pillow", "types-PyScreeze"]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.1.*"
|
||||
upstream_repository = "https://github.com/PyMySQL/PyMySQL"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "0.1.*"
|
||||
upstream_repository = "https://github.com/asweigart/pyscreeze"
|
||||
requires = ["types-Pillow"]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "6.0.*"
|
||||
upstream_repository = "https://github.com/yaml/pyyaml"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.15.*"
|
||||
upstream_repository = "https://github.com/pygments/pygments"
|
||||
requires = ["types-docutils", "types-setuptools"]
|
||||
partial_stub = true
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.8.*"
|
||||
upstream_repository = "https://github.com/arsenetar/send2trash"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "23.1.*"
|
||||
upstream_repository = "https://github.com/Tinche/aiofiles"
|
||||
|
||||
[tool.stubtest]
|
||||
# linux and darwin are equivalent
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.12.*"
|
||||
upstream_repository = "https://github.com/aws/aws-xray-sdk-python"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.11.*"
|
||||
upstream_repository = "https://github.com/python-babel/babel"
|
||||
requires = ["types-pytz", "types-setuptools"]
|
||||
obsolete_since = "2.12.1" # Released on 2023-02-28
|
||||
partial_stub = true
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "6.0.*"
|
||||
upstream_repository = "https://github.com/mozilla/bleach"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "23.0.*"
|
||||
upstream_repository = "https://github.com/mahmoud/boltons"
|
||||
|
||||
[tool.stubtest]
|
||||
ignore_missing_stub = false
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.49.*"
|
||||
upstream_repository = "https://github.com/boto/boto"
|
||||
requires = []
|
||||
partial_stub = true
|
||||
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "5.3.*"
|
||||
upstream_repository = "https://github.com/tkem/cachetools"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.3.*"
|
||||
upstream_repository = "https://github.com/python-caldav/caldav"
|
||||
# also types-lxml and types-icalendar when those stubs are added
|
||||
requires = ["types-requests", "types-vobject"]
|
||||
partial_stub = true
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
version = "0.14.*"
|
||||
upstream_repository = "https://github.com/noahmorrison/chevron"
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.1.*"
|
||||
upstream_repository = "https://github.com/click-contrib/click-spinner"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "0.4.*"
|
||||
upstream_repository = "https://github.com/tartley/colorama"
|
||||
|
||||
[tool.stubtest]
|
||||
platforms = ["linux", "win32"]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "0.9.*"
|
||||
upstream_repository = "https://github.com/rtfd/commonmark.py"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.8.*"
|
||||
upstream_repository = "https://github.com/aegirhall/console-menu"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.4.*"
|
||||
upstream_repository = "https://github.com/kiorky/croniter"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.1.*"
|
||||
upstream_repository = "https://github.com/scrapinghub/dateparser"
|
||||
|
||||
[tool.stubtest]
|
||||
extras = ["fasttext", "langdetect"]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "5.1.*"
|
||||
upstream_repository = "https://github.com/micheles/decorator"
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "1.3.*"
|
||||
upstream_repository = "https://github.com/jazzband/dj-database-url"
|
||||
obsolete_since = "2.0.0" # Released on 2023-04-27
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "2.0.*"
|
||||
upstream_repository = "https://github.com/containerbuildsystem/dockerfile-parse"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.4.*"
|
||||
upstream_repository = "https://github.com/takluyver/entrypoints"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "2.0.*"
|
||||
upstream_repository = "https://github.com/hynek/first"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.8.*"
|
||||
upstream_repository = "https://github.com/asottile/flake8-2020"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "23.7.10"
|
||||
upstream_repository = "https://github.com/PyCQA/flake8-bugbear"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.1.*"
|
||||
upstream_repository = "https://github.com/gforcada/flake8-builtins"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.7.*"
|
||||
upstream_repository = "https://github.com/pycqa/flake8-docstrings"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.3.*"
|
||||
upstream_repository = "https://github.com/afonasev/flake8-plugin-utils"
|
||||
partial_stub = true
|
||||
obsolete_since = "1.3.3" # Released on 2023-06-26
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "0.3.*"
|
||||
upstream_repository = "https://github.com/peterjc/flake8-rst-docstrings"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "0.20.*"
|
||||
upstream_repository = "https://github.com/MartinThoma/flake8-simplify"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.14.*"
|
||||
upstream_repository = "https://github.com/asottile/flake8-typing-imports"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.7.4"
|
||||
upstream_repository = "https://github.com/PyFPDF/fpdf2"
|
||||
requires = ["types-Pillow>=9.2.0"]
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.1.*"
|
||||
upstream_repository = "https://github.com/googleapis/python-ndb"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.1.*"
|
||||
upstream_repository = "https://github.com/html5lib/html5lib-python"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.22.*"
|
||||
upstream_repository = "https://github.com/httplib2/httplib2"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.36.*"
|
||||
upstream_repository = "https://github.com/influxdata/influxdb-client-python"
|
||||
requires = ["types-urllib3"]
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.0.*"
|
||||
upstream_repository = "https://github.com/pyinvoke/invoke"
|
||||
obsolete_since = "2.1.2" # Released on 2023-05-15
|
||||
partial_stub = true
|
||||
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.0.*"
|
||||
upstream_repository = "https://github.com/jmespath/jmespath.py"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "4.17.*"
|
||||
upstream_repository = "https://github.com/python-jsonschema/jsonschema"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "0.13.*"
|
||||
upstream_repository = "https://github.com/boppreh/keyboard"
|
||||
|
||||
# [tool.stubtest]
|
||||
# While the stubs slightly differ on Windows vs Linux.
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.9.*"
|
||||
upstream_repository = "https://github.com/cannatag/ldap3"
|
||||
requires = ["types-pyasn1"]
|
||||
partial_stub = true
|
||||
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "5.1.*"
|
||||
upstream_repository = "https://github.com/testing-cabal/mock"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.0.*"
|
||||
upstream_repository = "https://github.com/python/mypy_extensions"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.2.*"
|
||||
upstream_repository = "https://github.com/PyMySQL/mysqlclient"
|
||||
|
||||
[tool.stubtest]
|
||||
apt_dependencies = ["libmariadb-dev"]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.8.*"
|
||||
upstream_repository = "https://github.com/drkjam/netaddr"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "3.2.*"
|
||||
upstream_repository = "https://github.com/oauthlib/oauthlib"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.4.*"
|
||||
upstream_repository = "https://github.com/opentracing/opentracing-python"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "3.2.*"
|
||||
upstream_repository = "https://github.com/paramiko/paramiko"
|
||||
# Requires a version of cryptography where cryptography.hazmat.primitives.ciphers.Cipher is generic
|
||||
requires = ["cryptography>=37.0.0"]
|
||||
partial_stub = true
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.10.*"
|
||||
upstream_repository = "https://github.com/erikrose/parsimonious"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.0.*"
|
||||
upstream_repository = "https://github.com/bfrascher/passpy"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "3.16.*"
|
||||
upstream_repository = "https://github.com/coleifer/peewee"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "0.13.*"
|
||||
upstream_repository = "https://github.com/PyCQA/pep8-naming"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.3.*"
|
||||
upstream_repository = "https://github.com/pika/pika"
|
||||
stub_distribution = "types-pika-ts" # https://github.com/python/typeshed/issues/9246
|
||||
extra_description = """\
|
||||
The `types-pika` package contains alternate, more complete type stubs, that \
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.3.*"
|
||||
upstream_repository = "https://github.com/TaylorSMarks/playsound"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.2.0"
|
||||
upstream_repository = "https://github.com/pytest-dev/pluggy"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.2.*"
|
||||
upstream_repository = "https://github.com/izimobil/polib"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "5.9.*"
|
||||
upstream_repository = "https://github.com/giampaolo/psutil"
|
||||
|
||||
[tool.stubtest]
|
||||
platforms = ["darwin", "linux", "win32"]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.9.*"
|
||||
upstream_repository = "https://github.com/psycopg/psycopg2"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "23.2.*"
|
||||
upstream_repository = "https://github.com/pyca/pyopenssl"
|
||||
# Requires a version of cryptography with a `py.typed` file
|
||||
requires = ["cryptography>=35.0.0"]
|
||||
partial_stub = true
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.1"
|
||||
upstream_repository = "https://github.com/kurtraschke/pyRFC3339"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.4.*"
|
||||
upstream_repository = "https://github.com/pyasn1/pyasn1"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "2.0.*"
|
||||
upstream_repository = "https://github.com/ppwwyyxx/cocoapi"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.3.*"
|
||||
upstream_repository = "https://github.com/veelion/python-farmhash"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "3.0.*"
|
||||
upstream_repository = "https://github.com/PyCQA/pyflakes"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "5.13.*"
|
||||
upstream_repository = "https://github.com/pyinstaller/pyinstaller"
|
||||
requires = ["types-setuptools"]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.7.*"
|
||||
upstream_repository = "https://github.com/moses-palmer/pynput"
|
||||
|
||||
[tool.stubtest]
|
||||
platforms = ["darwin", "linux", "win32"]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "3.5.*"
|
||||
upstream_repository = "https://github.com/pyserial/pyserial"
|
||||
|
||||
[tool.stubtest]
|
||||
platforms = ["darwin", "linux", "win32"]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.6.*"
|
||||
upstream_repository = "https://github.com/tvorog/pytest-lazy-fixture"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "1.5.*"
|
||||
upstream_repository = "https://github.com/nickmaccarthy/python-datemath"
|
||||
# Requires a version of arrow with a `py.typed` file
|
||||
requires = ["arrow>=1.0.1"]
|
||||
partial_stub = true
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.8.*"
|
||||
upstream_repository = "https://github.com/dateutil/dateutil"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "3.1.*"
|
||||
upstream_repository = "https://github.com/google/python-gflags"
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "3.3.*"
|
||||
upstream_repository = "https://github.com/mpdavis/python-jose"
|
||||
requires = ["types-pyasn1"] # excluding pyrsa, cryptography until typing is available
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "8.0.*"
|
||||
upstream_repository = "https://github.com/un33k/python-slugify"
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "0.33.*"
|
||||
upstream_repository = "https://github.com/python-xlib/python-xlib"
|
||||
requires = ["types-Pillow"]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "8.0.0.*"
|
||||
upstream_repository = "https://github.com/vmware/pyvmomi"
|
||||
partial_stub = true
|
||||
obsolete_since = "8.0.1.0.1" # Released on 2023-05-25
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "306.*"
|
||||
upstream_repository = "https://github.com/mhammond/pywin32"
|
||||
|
||||
[tool.stubtest]
|
||||
platforms = ["win32"]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "7.4.*"
|
||||
upstream_repository = "https://github.com/lincolnloop/python-qrcode"
|
||||
|
||||
[tool.stubtest]
|
||||
extras = ["lxml"]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "4.6.0"
|
||||
upstream_repository = "https://github.com/redis/redis-py"
|
||||
# Requires a version of cryptography with a `py.typed` file
|
||||
requires = ["cryptography>=35.0.0", "types-pyOpenSSL"]
|
||||
partial_stub = true
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "2023.6.3"
|
||||
upstream_repository = "https://github.com/mrabarnett/mrab-regex"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "2.31.*"
|
||||
upstream_repository = "https://github.com/psf/requests"
|
||||
requires = ["types-urllib3"]
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "0.9.*"
|
||||
upstream_repository = "https://github.com/invl/retry"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "68.0.*"
|
||||
upstream_repository = "https://github.com/pypa/setuptools"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "3.19.*"
|
||||
upstream_repository = "https://github.com/simplejson/simplejson"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "4.0.*"
|
||||
upstream_repository = "https://github.com/jaraco/singledispatch"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
version = "1.16.*"
|
||||
upstream_repository = "https://github.com/benjaminp/six"
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "0.7.*"
|
||||
upstream_repository = "https://github.com/samgiles/slumber"
|
||||
requires = ["types-requests"]
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
version = "0.8.*"
|
||||
upstream_repository = "https://github.com/pypi/stdlib-list"
|
||||
obsolete_since = "0.9.0" # Released on 2023-06-22
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
version = "3.5.*"
|
||||
upstream_repository = "https://github.com/stripe/stripe-python"
|
||||
partial_stub = true
|
||||
|
||||
[tool.stubtest]
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user