asyncdbus 0.7.2__tar.gz → 0.8.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/Makefile +1 -3
  2. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/PKG-INFO +7 -23
  3. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/__init__.py +1 -1
  4. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/message_bus.py +8 -8
  5. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/service.py +3 -4
  6. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/signature.py +9 -0
  7. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus.egg-info/PKG-INFO +7 -23
  8. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus.egg-info/SOURCES.txt +1 -1
  9. asyncdbus-0.8.0/asyncdbus.egg-info/requires.txt +1 -0
  10. asyncdbus-0.8.0/pyproject.toml +44 -0
  11. asyncdbus-0.7.2/asyncdbus.egg-info/requires.txt +0 -1
  12. asyncdbus-0.7.2/setup.py +0 -71
  13. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/.flake8 +0 -0
  14. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/.gitignore +0 -0
  15. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/.style.yapf +0 -0
  16. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/.travis.yml +0 -0
  17. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/CHANGELOG.md +0 -0
  18. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/Dockerfile +0 -0
  19. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/LICENSE +0 -0
  20. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/MANIFEST.in +0 -0
  21. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/README.md +0 -0
  22. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/_private/__init__.py +0 -0
  23. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/_private/address.py +0 -0
  24. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/_private/constants.py +0 -0
  25. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/_private/marshaller.py +0 -0
  26. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/_private/unmarshaller.py +0 -0
  27. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/_private/util.py +0 -0
  28. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/auth.py +0 -0
  29. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/constants.py +0 -0
  30. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/errors.py +0 -0
  31. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/introspection.py +0 -0
  32. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/message.py +0 -0
  33. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/proxy_object.py +0 -0
  34. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/py.typed +0 -0
  35. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus/validators.py +0 -0
  36. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus.egg-info/dependency_links.txt +0 -0
  37. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/asyncdbus.egg-info/top_level.txt +0 -0
  38. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/bench/unmarshall.py +0 -0
  39. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/dbus_next/glib/message_bus.py +0 -0
  40. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/Makefile +0 -0
  41. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/_static/.gitignore +0 -0
  42. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/_templates/.gitignore +0 -0
  43. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/authentication.rst +0 -0
  44. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/conf.py +0 -0
  45. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/constants.rst +0 -0
  46. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/errors.rst +0 -0
  47. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/high-level-client/index.rst +0 -0
  48. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/high-level-client/proxy-interface.rst +0 -0
  49. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/high-level-client/proxy-object.rst +0 -0
  50. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/high-level-service/index.rst +0 -0
  51. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/high-level-service/service-interface.rst +0 -0
  52. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/index.rst +0 -0
  53. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/introspection.rst +0 -0
  54. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/low-level-interface/index.rst +0 -0
  55. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/low-level-interface/message.rst +0 -0
  56. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/message-bus/index.rst +0 -0
  57. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/message-bus/message-bus.rst +0 -0
  58. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/type-system/index.rst +0 -0
  59. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/type-system/signature-tree.rst +0 -0
  60. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/type-system/signature-type.rst +0 -0
  61. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/type-system/variant.rst +0 -0
  62. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/docs/validators.rst +0 -0
  63. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/examples/aio-list-names.py +0 -0
  64. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/examples/aio-tcp-notification.py +0 -0
  65. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/examples/dbus-name.py +0 -0
  66. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/examples/dbus-next-send.py +0 -0
  67. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/examples/example-service.py +0 -0
  68. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/examples/mpris.py +0 -0
  69. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/pytest.ini +0 -0
  70. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/requirements-dev.txt +0 -0
  71. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/requirements.txt +0 -0
  72. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/setup.cfg +0 -0
  73. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/__init__.py +0 -0
  74. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/client/test_methods.py +0 -0
  75. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/client/test_properties.py +0 -0
  76. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/client/test_signals.py +0 -0
  77. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/conftest.py +0 -0
  78. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/data/introspection.xml +0 -0
  79. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/data/messages.json +0 -0
  80. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/service/__init__.py +0 -0
  81. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/service/test_decorators.py +0 -0
  82. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/service/test_export.py +0 -0
  83. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/service/test_methods.py +0 -0
  84. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/service/test_properties.py +0 -0
  85. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/service/test_signals.py +0 -0
  86. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/service/test_standard_interfaces.py +0 -0
  87. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_address_parser.py +0 -0
  88. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_aio_low_level.py +0 -0
  89. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_big_message.py +0 -0
  90. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_disconnect.py +0 -0
  91. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_fd_passing.py +0 -0
  92. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_introspection.py +0 -0
  93. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_marshaller.py +0 -0
  94. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_request_name.py +0 -0
  95. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_signature.py +0 -0
  96. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_tcp_address.py +0 -0
  97. {asyncdbus-0.7.2 → asyncdbus-0.8.0}/test/test_validators.py +0 -0
@@ -30,7 +30,7 @@ clean:
30
30
  rm -rf `find -type d -name __pycache__`
31
31
 
32
32
  publish:
33
- python3 setup.py sdist
33
+ python3 -m build --sdist
34
34
  twine upload dist/${PYPI}-$(shell git describe --tags --exact-match).tar.gz
35
35
  #python3 -m twine upload --repository-url https://upload.pypi.org/legacy/ dist/*
36
36
 
@@ -45,8 +45,6 @@ all: format lint test
45
45
  pypi: tagged
46
46
  if test -f dist/${PYPI}-$(shell git describe --tags --exact-match).tar.gz ; then \
47
47
  echo "Source package exists."; \
48
- elif test -f setup.py ; then \
49
- python3 setup.py sdist bdist_wheel ; \
50
48
  else \
51
49
  python3 -mbuild -snw ; \
52
50
  fi
@@ -1,43 +1,27 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: asyncdbus
3
- Version: 0.7.2
3
+ Version: 0.8.0
4
4
  Summary: A zero-dependency async DBus library
5
- Home-page: https://github.com/M-o-a-T/asyncdbus
6
- Author: Matthias Urlichs
7
- Author-email: matthias@urlichs.de
8
- License: MIT
9
- Classifier: Development Status :: 3 - Alpha
5
+ Author-email: Matthias Urlichs <matthias@urlichs.de>
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/M-o-a-T/asyncdbus
8
+ Classifier: Development Status :: 4 - Beta
10
9
  Classifier: Environment :: X11 Applications
11
10
  Classifier: Environment :: X11 Applications :: Gnome
12
11
  Classifier: Topic :: Desktop Environment :: Gnome
13
12
  Classifier: Topic :: Software Development :: Embedded Systems
14
13
  Classifier: Framework :: AsyncIO
15
14
  Classifier: Framework :: Trio
16
- Classifier: License :: OSI Approved :: MIT License
17
15
  Classifier: Programming Language :: Python
18
16
  Classifier: Programming Language :: Python :: 3
19
- Classifier: Programming Language :: Python :: 3.7
20
- Classifier: Programming Language :: Python :: 3.8
21
- Classifier: Programming Language :: Python :: 3.9
22
17
  Classifier: Programming Language :: Python :: Implementation :: CPython
23
18
  Classifier: Programming Language :: Python :: Implementation :: PyPy
24
19
  Classifier: Typing :: Typed
25
- Requires-Python: >=3.7.0
20
+ Requires-Python: >=3.10
26
21
  Description-Content-Type: text/markdown
27
22
  License-File: LICENSE
28
- Requires-Dist: anyio>=3
29
- Dynamic: author
30
- Dynamic: author-email
31
- Dynamic: classifier
32
- Dynamic: description
33
- Dynamic: description-content-type
34
- Dynamic: home-page
35
- Dynamic: license
23
+ Requires-Dist: anyio>=4
36
24
  Dynamic: license-file
37
- Dynamic: requires-dist
38
- Dynamic: requires-python
39
- Dynamic: summary
40
-
41
25
 
42
26
  # asyncdbus
43
27
 
@@ -10,7 +10,7 @@ from .message import Message
10
10
  from .message_bus import MessageBus
11
11
  from .proxy_object import ProxyObject, ProxyInterface
12
12
  from . import service
13
- from .signature import SignatureType, SignatureTree, Variant
13
+ from .signature import SignatureType, SignatureTree, Variant, DbusType
14
14
  from .validators import (is_bus_name_valid, is_object_path_valid, is_interface_name_valid,
15
15
  is_member_name_valid, assert_bus_name_valid, assert_object_path_valid,
16
16
  assert_interface_name_valid, assert_member_name_valid)
@@ -994,7 +994,7 @@ class MessageBus:
994
994
  sock.setblocking(False)
995
995
  sock.connect(filename)
996
996
  except (BlockingIOError, InterruptedError):
997
- await anyio.wait_socket_writable(sock)
997
+ await anyio.wait_writable(sock)
998
998
  e = sock.getsockopt(socket.SOL_SOCKET, socket.SO_ERROR)
999
999
  if e:
1000
1000
  if err is None:
@@ -1020,7 +1020,7 @@ class MessageBus:
1020
1020
  sock = socket.create_connection((ip_addr, ip_port))
1021
1021
  sock.setblocking(False)
1022
1022
  except (BlockingIOError, InterruptedError):
1023
- await anyio.wait_socket_writable(sock)
1023
+ await anyio.wait_writable(sock)
1024
1024
  e = sock.getsockopt(socket.SOL_SOCKET, socket.SO_ERROR)
1025
1025
  if e:
1026
1026
  if err is None:
@@ -1136,7 +1136,7 @@ class MessageBus:
1136
1136
  task_status.started()
1137
1137
  while True:
1138
1138
  # data = await self._sock.receive()
1139
- await anyio.wait_socket_readable(self._sock)
1139
+ await anyio.wait_readable(self._sock)
1140
1140
  if self._sock is None:
1141
1141
  return
1142
1142
  data, aux, *_ = self._sock.recvmsg(8192, 4096)
@@ -1154,7 +1154,7 @@ class MessageBus:
1154
1154
  buf = memoryview(buf)
1155
1155
  done = 0
1156
1156
  while done < len(buf) or (unix_fds and self._negotiate_unix_fd):
1157
- await anyio.wait_socket_writable(self._sock)
1157
+ await anyio.wait_writable(self._sock)
1158
1158
  if self._sock is None:
1159
1159
  raise EOFError
1160
1160
  if unix_fds and self._negotiate_unix_fd:
@@ -1171,7 +1171,7 @@ class MessageBus:
1171
1171
  async def _auth_readline(self):
1172
1172
  buf = b''
1173
1173
  while buf[-2:] != b'\r\n':
1174
- await anyio.wait_socket_readable(self._sock)
1174
+ await anyio.wait_readable(self._sock)
1175
1175
  data = self._sock.recv(1024)
1176
1176
  if not data:
1177
1177
  raise EOFError
@@ -1179,7 +1179,7 @@ class MessageBus:
1179
1179
  return buf[:-2].decode()
1180
1180
 
1181
1181
  async def _authenticate(self):
1182
- await anyio.wait_socket_writable(self._sock)
1182
+ await anyio.wait_writable(self._sock)
1183
1183
  done = self._sock.send(b'\0')
1184
1184
  if not done:
1185
1185
  raise EOFError
@@ -1189,13 +1189,13 @@ class MessageBus:
1189
1189
  if first_line is not None:
1190
1190
  if not isinstance(first_line, str):
1191
1191
  raise AuthError('authenticator response is %r not str' % (first_line))
1192
- await anyio.wait_socket_writable(self._sock)
1192
+ await anyio.wait_writable(self._sock)
1193
1193
  done = self._sock.send(Authenticator._format_line(first_line))
1194
1194
 
1195
1195
  while True:
1196
1196
  response = self._auth._receive_line(await self._auth_readline())
1197
1197
  if response is not None:
1198
- await anyio.wait_socket_writable(self._sock)
1198
+ await anyio.wait_writable(self._sock)
1199
1199
  done = self._sock.send(Authenticator._format_line(response))
1200
1200
  if response == 'BEGIN':
1201
1201
  break
@@ -6,7 +6,7 @@ from ._private.util import signature_contains_type, replace_fds_with_idx, replac
6
6
 
7
7
  from functools import wraps
8
8
  import inspect
9
- from typing import no_type_check_decorator, Dict, List, Any
9
+ from typing import Dict, List, Any
10
10
  import copy
11
11
 
12
12
 
@@ -30,6 +30,8 @@ class _Method:
30
30
  sig = param.annotation
31
31
  if hasattr(sig, 'tree'):
32
32
  sig = sig.tree.signature
33
+ if sig.startswith("DbusType[") and sig[-1]=="]":
34
+ sig= sig[9:-1]
33
35
  if sig and sig[0] in "'\"":
34
36
  sig = sig[1:-1]
35
37
  in_signature += sig
@@ -88,7 +90,6 @@ def method(name: str = None, disabled: bool = False):
88
90
  if type(disabled) is not bool:
89
91
  raise TypeError('disabled must be a bool')
90
92
 
91
- @no_type_check_decorator
92
93
  def decorator(fn):
93
94
  @wraps(fn)
94
95
  def wrapped(*args, **kwargs):
@@ -163,7 +164,6 @@ def signal(name: str = None, disabled: bool = False):
163
164
  if type(disabled) is not bool:
164
165
  raise TypeError('disabled must be a bool')
165
166
 
166
- @no_type_check_decorator
167
167
  def decorator(fn):
168
168
  fn_name = name if name else fn.__name__
169
169
  signal = _Signal(fn, fn_name, disabled)
@@ -296,7 +296,6 @@ def dbus_property(access: PropertyAccess = PropertyAccess.READWRITE,
296
296
  if type(disabled) is not bool:
297
297
  raise TypeError('disabled must be a bool')
298
298
 
299
- @no_type_check_decorator
300
299
  def decorator(fn):
301
300
  options = {'name': name, 'access': access, 'disabled': disabled}
302
301
  return _Property(fn, options=options)
@@ -5,6 +5,13 @@ from typing import Any, List as _List, Union, Tuple as _Tuple, Dict as _Dict, Ge
5
5
  from functools import lru_cache
6
6
 
7
7
 
8
+ class DbusType:
9
+ """
10
+ A wrapper so our signatures work with the rest of Python's typing
11
+ infrastructure.
12
+ """
13
+ pass
14
+
8
15
  class SignatureType:
9
16
  """A class that represents a single complete type within a signature.
10
17
 
@@ -59,6 +66,8 @@ class SignatureType:
59
66
  def _parse_next(signature):
60
67
  if not signature or signature in ('""',"''"):
61
68
  return (None, '')
69
+ if signature.startswith("DbusType[") and signature[-1]=="]":
70
+ signature = signature[9:-1]
62
71
  if signature[0] in "'\"":
63
72
  signature = signature[1:-1]
64
73
 
@@ -1,43 +1,27 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: asyncdbus
3
- Version: 0.7.2
3
+ Version: 0.8.0
4
4
  Summary: A zero-dependency async DBus library
5
- Home-page: https://github.com/M-o-a-T/asyncdbus
6
- Author: Matthias Urlichs
7
- Author-email: matthias@urlichs.de
8
- License: MIT
9
- Classifier: Development Status :: 3 - Alpha
5
+ Author-email: Matthias Urlichs <matthias@urlichs.de>
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/M-o-a-T/asyncdbus
8
+ Classifier: Development Status :: 4 - Beta
10
9
  Classifier: Environment :: X11 Applications
11
10
  Classifier: Environment :: X11 Applications :: Gnome
12
11
  Classifier: Topic :: Desktop Environment :: Gnome
13
12
  Classifier: Topic :: Software Development :: Embedded Systems
14
13
  Classifier: Framework :: AsyncIO
15
14
  Classifier: Framework :: Trio
16
- Classifier: License :: OSI Approved :: MIT License
17
15
  Classifier: Programming Language :: Python
18
16
  Classifier: Programming Language :: Python :: 3
19
- Classifier: Programming Language :: Python :: 3.7
20
- Classifier: Programming Language :: Python :: 3.8
21
- Classifier: Programming Language :: Python :: 3.9
22
17
  Classifier: Programming Language :: Python :: Implementation :: CPython
23
18
  Classifier: Programming Language :: Python :: Implementation :: PyPy
24
19
  Classifier: Typing :: Typed
25
- Requires-Python: >=3.7.0
20
+ Requires-Python: >=3.10
26
21
  Description-Content-Type: text/markdown
27
22
  License-File: LICENSE
28
- Requires-Dist: anyio>=3
29
- Dynamic: author
30
- Dynamic: author-email
31
- Dynamic: classifier
32
- Dynamic: description
33
- Dynamic: description-content-type
34
- Dynamic: home-page
35
- Dynamic: license
23
+ Requires-Dist: anyio>=4
36
24
  Dynamic: license-file
37
- Dynamic: requires-dist
38
- Dynamic: requires-python
39
- Dynamic: summary
40
-
41
25
 
42
26
  # asyncdbus
43
27
 
@@ -8,10 +8,10 @@ LICENSE
8
8
  MANIFEST.in
9
9
  Makefile
10
10
  README.md
11
+ pyproject.toml
11
12
  pytest.ini
12
13
  requirements-dev.txt
13
14
  requirements.txt
14
- setup.py
15
15
  asyncdbus/__init__.py
16
16
  asyncdbus/auth.py
17
17
  asyncdbus/constants.py
@@ -0,0 +1 @@
1
+ anyio>=4
@@ -0,0 +1,44 @@
1
+ [build-system]
2
+ requires = ["setuptools>=77", "setuptools-scm>=8"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "asyncdbus"
7
+ description = "A zero-dependency async DBus library"
8
+ readme = "README.md"
9
+ license = "MIT"
10
+ license-files = ["LICENSE"]
11
+ authors = [{ name = "Matthias Urlichs", email = "matthias@urlichs.de" }]
12
+ requires-python = ">=3.10"
13
+ dependencies = ["anyio >= 4"]
14
+ dynamic = ["version"]
15
+ classifiers = [
16
+ "Development Status :: 4 - Beta",
17
+ "Environment :: X11 Applications",
18
+ "Environment :: X11 Applications :: Gnome",
19
+ "Topic :: Desktop Environment :: Gnome",
20
+ "Topic :: Software Development :: Embedded Systems",
21
+ "Framework :: AsyncIO",
22
+ "Framework :: Trio",
23
+ "Programming Language :: Python",
24
+ "Programming Language :: Python :: 3",
25
+ "Programming Language :: Python :: Implementation :: CPython",
26
+ "Programming Language :: Python :: Implementation :: PyPy",
27
+ "Typing :: Typed",
28
+ ]
29
+
30
+ [project.urls]
31
+ Homepage = "https://github.com/M-o-a-T/asyncdbus"
32
+
33
+ [tool.setuptools]
34
+ include-package-data = true
35
+
36
+ [tool.setuptools.packages.find]
37
+ include = ["asyncdbus*"]
38
+
39
+ [tool.setuptools.package-data]
40
+ asyncdbus = ["py.typed"]
41
+
42
+ [tool.setuptools_scm]
43
+ version_scheme = "guess-next-dev"
44
+ local_scheme = "dirty-tag"
@@ -1 +0,0 @@
1
- anyio>=3
asyncdbus-0.7.2/setup.py DELETED
@@ -1,71 +0,0 @@
1
- #!/usr/bin/env python3
2
- # -*- coding: utf-8 -*-
3
-
4
- import io
5
- import os
6
-
7
- from setuptools import setup
8
-
9
- # Package meta-data.
10
- DESCRIPTION = 'A zero-dependency async DBus library'
11
- REQUIRES_PYTHON = '>=3.7.0'
12
-
13
- # What packages are required for this module to be executed?
14
- REQUIRED = ["anyio>=3"]
15
-
16
- # What packages are optional?
17
- EXTRAS = {}
18
-
19
- # The rest you shouldn't have to touch too much :)
20
- # ------------------------------------------------
21
- # Except, perhaps the License and Trove Classifiers!
22
- # If you do change the License, remember to change the Trove Classifier for that!
23
-
24
- here = os.path.abspath(os.path.dirname(__file__))
25
-
26
- __title__ = 'asyncdbus'
27
- __description__ = 'A zero-dependency async DBus library'
28
- __url__ = 'https://github.com/M-o-a-T/asyncdbus'
29
- __author__ = 'Matthias Urlichs'
30
- __author_email__ = 'matthias@urlichs.de'
31
- __license__ = 'MIT'
32
- __copyright__ = 'Copyright 2019 Tony Crisci, 2021 Matthias Urlichs'
33
-
34
- with io.open(os.path.join(here, 'README.md'), encoding='utf-8') as f:
35
- long_description = '\n' + f.read()
36
-
37
- setup(
38
- name=__title__,
39
- use_scm_version={"version_scheme": "guess-next-dev", "local_scheme": "dirty-tag"},
40
- setup_requires=["setuptools_scm"],
41
- description=DESCRIPTION,
42
- long_description=long_description,
43
- long_description_content_type='text/markdown',
44
- author=__author__,
45
- author_email=__author_email__,
46
- python_requires=REQUIRES_PYTHON,
47
- url=__url__,
48
- packages=["asyncdbus"],
49
- install_requires=REQUIRED,
50
- extras_require=EXTRAS,
51
- include_package_data=True,
52
- license='MIT',
53
- classifiers=[
54
- # Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers
55
- 'Development Status :: 3 - Alpha',
56
- 'Environment :: X11 Applications',
57
- 'Environment :: X11 Applications :: Gnome',
58
- 'Topic :: Desktop Environment :: Gnome',
59
- 'Topic :: Software Development :: Embedded Systems',
60
- 'Framework :: AsyncIO',
61
- 'Framework :: Trio',
62
- 'License :: OSI Approved :: MIT License',
63
- 'Programming Language :: Python',
64
- 'Programming Language :: Python :: 3',
65
- 'Programming Language :: Python :: 3.7',
66
- 'Programming Language :: Python :: 3.8',
67
- 'Programming Language :: Python :: 3.9',
68
- 'Programming Language :: Python :: Implementation :: CPython',
69
- 'Programming Language :: Python :: Implementation :: PyPy',
70
- 'Typing :: Typed'
71
- ])
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes