[Scummvm-git-logs] scummvm-sites director-buildbot -> cc947e2e32c94fbd62d04e714a0fc601e2997cb5
rvanlaar
noreply at scummvm.org
Tue Jan 3 23:05:34 UTC 2023
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm-sites' repo located at https://github.com/scummvm/scummvm-sites .
Summary:
69ecb1eceb Fix imports in lingo factory
cc947e2e32 Format codebase and sort imports
Commit: 69ecb1eceb594f72a936adefb7c9921eae480f5f
https://github.com/scummvm/scummvm-sites/commit/69ecb1eceb594f72a936adefb7c9921eae480f5f
Author: Roland van Laar (roland at rolandvanlaar.nl)
Date: 2023-01-04T00:02:03+01:00
Commit Message:
Fix imports in lingo factory
Import statement was removed when cleaning up unused imports by hand.
Changed paths:
director/lingo_factory.py
diff --git a/director/lingo_factory.py b/director/lingo_factory.py
index cb57eb2..16a3da4 100644
--- a/director/lingo_factory.py
+++ b/director/lingo_factory.py
@@ -1,4 +1,6 @@
from buildbot.plugins import util
+
+from .build_factory import (
build_factory,
checkout_step,
default_step_kwargs
Commit: cc947e2e32c94fbd62d04e714a0fc601e2997cb5
https://github.com/scummvm/scummvm-sites/commit/cc947e2e32c94fbd62d04e714a0fc601e2997cb5
Author: Roland van Laar (roland at rolandvanlaar.nl)
Date: 2023-01-04T00:03:43+01:00
Commit Message:
Format codebase and sort imports
Code base is formatted with black and sorted with isort.
Includes:
- isort as a dev dependency
- use new dev group naming dev packages in pyproject.toml
Changed paths:
director/build_factory.py
director/env.py
director/lingo_factory.py
director/scummvm_reporter.py
director/steps.py
director/vendor/buildmaster.py
director/vendor/reporter_utils.py
master.py
poetry.lock
pyproject.toml
diff --git a/director/build_factory.py b/director/build_factory.py
index f23b611..f31c779 100644
--- a/director/build_factory.py
+++ b/director/build_factory.py
@@ -29,7 +29,9 @@ def configure_has_not_been_run(step):
build_factory = util.BuildFactory()
# check out the source
checkout_step = steps.GitHub(
- repourl="https://github.com/scummvm/scummvm", mode="incremental", **default_step_kwargs,
+ repourl="https://github.com/scummvm/scummvm",
+ mode="incremental",
+ **default_step_kwargs,
)
build_factory.addStep(checkout_step)
diff --git a/director/env.py b/director/env.py
index dc437b8..568657f 100644
--- a/director/env.py
+++ b/director/env.py
@@ -7,7 +7,7 @@ from environs import Env
env = Env()
env.read_env()
-ENABLE_FORCE_SCHEDULER = False
+ENABLE_FORCE_SCHEDULER = False
default_vars = {
"DATABASE_URL": "sqlite:///state.sqlite",
"BUILDBOT_URL": "http://localhost:5000/",
@@ -20,7 +20,7 @@ default_vars = {
"REPOSITORY": "https://github.com/scummvm/scummvm",
# base directory which contains all the targets
"TARGETS_BASEDIR": "~/wb1/",
- "UI": False
+ "UI": False,
}
@@ -33,4 +33,5 @@ def get_env(key, default=""):
"""
return os.environ.get(key, dotenv.get(key, default))
+
env = {key: get_env(key, default) for key, default in default_vars.items()}
diff --git a/director/lingo_factory.py b/director/lingo_factory.py
index 16a3da4..c8a3e92 100644
--- a/director/lingo_factory.py
+++ b/director/lingo_factory.py
@@ -1,10 +1,6 @@
from buildbot.plugins import util
-from .build_factory import (
- build_factory,
- checkout_step,
- default_step_kwargs
-)
+from .build_factory import build_factory, checkout_step, default_step_kwargs
from .steps import GenerateStartMovieCommands, download_step
lingo_directory = "./engines/director/lingo/tests/"
diff --git a/director/scummvm_reporter.py b/director/scummvm_reporter.py
index 33af197..027a83d 100644
--- a/director/scummvm_reporter.py
+++ b/director/scummvm_reporter.py
@@ -1,7 +1,6 @@
from typing import Dict
-from buildbot.process.results import (CANCELLED, EXCEPTION, FAILURE, SUCCESS,
- WARNINGS)
+from buildbot.process.results import CANCELLED, EXCEPTION, FAILURE, SUCCESS, WARNINGS
from buildbot.reporters.message import MessageFormatter
from buildbot.reporters.notifier import NotifierBase
from buildbot.util import httpclientservice
@@ -249,10 +248,9 @@ class JSONMessageFormatter:
branch = ctx["build"]["properties"].get("branch", [None])[0]
if branch.startswith("refs/pull"):
# A PullRequest branch looks like: refs/pull/3062/head
- PR_number = branch.split('/')[2]
+ PR_number = branch.split("/")[2]
title = f"PR {PR_number}: {title}"
-
fields = []
if new_failures:
fields.append(
diff --git a/director/steps.py b/director/steps.py
index c214dd8..00da43e 100644
--- a/director/steps.py
+++ b/director/steps.py
@@ -1,5 +1,5 @@
-from typing import List, Optional, Any, Dict
import re
+from typing import Any, Dict, List, Optional
from buildbot import config
from buildbot.plugins import steps, util
@@ -7,33 +7,37 @@ from buildbot.process import buildstep, logobserver
from buildbot.process.results import FAILURE, worst_status
from twisted.internet import defer
-from .build_factory import master_file, worker_file, default_env
+from .build_factory import default_env, master_file, worker_file
download_step = steps.FileDownload(
- mastersrc=master_file, workerdest=worker_file, mode=0o0755,
+ mastersrc=master_file,
+ workerdest=worker_file,
+ mode=0o0755,
)
+
class ScummVMTest(steps.WarningCountingShellCommand):
renderables = [
- 'suppressionFile',
- 'suppressionList',
- 'errorPattern',
- 'warningPattern',
- 'directoryEnterPattern',
- 'directoryLeavePattern',
- 'maxWarnCount',
+ "suppressionFile",
+ "suppressionList",
+ "errorPattern",
+ "warningPattern",
+ "directoryEnterPattern",
+ "directoryLeavePattern",
+ "maxWarnCount",
]
errorCount = 0
- errorPattern = "^WARNING: ###################### LINGO: syntax error.*|^WARNING: BUILDBOT:.*"
+ errorPattern = (
+ "^WARNING: ###################### LINGO: syntax error.*|^WARNING: BUILDBOT:.*"
+ )
def __init__(self, errorPattern=None, **kwargs):
if errorPattern:
self.errorPattern = errorPattern
super().__init__(**kwargs)
self.addLogObserver(
- 'stdio',
- logobserver.LineConsumerLogObserver(self.errorLogConsumer)
+ "stdio", logobserver.LineConsumerLogObserver(self.errorLogConsumer)
)
def errorLogConsumer(self):
@@ -42,13 +46,11 @@ class ScummVMTest(steps.WarningCountingShellCommand):
ere = re.compile(ere)
directoryEnterRe = self.directoryEnterPattern
- if (directoryEnterRe is not None and
- isinstance(directoryEnterRe, str)):
+ if directoryEnterRe is not None and isinstance(directoryEnterRe, str):
directoryEnterRe = re.compile(directoryEnterRe)
directoryLeaveRe = self.directoryLeavePattern
- if (directoryLeaveRe is not None and
- isinstance(directoryLeaveRe, str)):
+ if directoryLeaveRe is not None and isinstance(directoryLeaveRe, str):
directoryLeaveRe = re.compile(directoryLeaveRe)
# Check if each line in the output from this command matched our
@@ -62,9 +64,11 @@ class ScummVMTest(steps.WarningCountingShellCommand):
if match:
self.directoryStack.append(match.group(1))
continue
- if (directoryLeaveRe and
- self.directoryStack and
- directoryLeaveRe.search(line)):
+ if (
+ directoryLeaveRe
+ and self.directoryStack
+ and directoryLeaveRe.search(line)
+ ):
self.directoryStack.pop()
continue
@@ -77,15 +81,17 @@ class ScummVMTest(steps.WarningCountingShellCommand):
def createSummary(self, log):
super().createSummary(log)
if self.errorCount:
- yield self.addCompleteLog(f"errors ({self.errorCount})",
- "\n".join(self.loggedErrors) + "\n")
+ yield self.addCompleteLog(
+ f"errors ({self.errorCount})", "\n".join(self.loggedErrors) + "\n"
+ )
- errors_stat = self.getStatistic('errors', 0)
- self.setStatistic('errors', errors_stat + self.errorCount)
+ errors_stat = self.getStatistic("errors", 0)
+ self.setStatistic("errors", errors_stat + self.errorCount)
old_count = self.getProperty("errors-count", 0)
self.setProperty(
- "errors-count", old_count + self.warnCount, "ScummVMShellCommand")
+ "errors-count", old_count + self.warnCount, "ScummVMShellCommand"
+ )
def evaluateCommand(self, cmd):
result = super().evaluateCommand(cmd)
diff --git a/director/vendor/buildmaster.py b/director/vendor/buildmaster.py
index ef34abc..5740544 100644
--- a/director/vendor/buildmaster.py
+++ b/director/vendor/buildmaster.py
@@ -6,6 +6,7 @@ Used to support giving the buildmaster a unique name.
from buildbot.master import BuildMaster as OriginalBuildMaster
+
class BuildMaster(OriginalBuildMaster):
"""
BuildMaster that accepts a unique name
@@ -13,6 +14,15 @@ class BuildMaster(OriginalBuildMaster):
The BuildMaster name is generated from the hostname and the path on the server.
This clashes because we run multiple masters from one directory.
"""
- def __init__(self, basedir, configFileName=None, umask=None, reactor=None, config_loader=None, master_name=None):
+
+ def __init__(
+ self,
+ basedir,
+ configFileName=None,
+ umask=None,
+ reactor=None,
+ config_loader=None,
+ master_name=None,
+ ):
super().__init__(basedir, configFileName, umask, reactor, config_loader)
self.name = master_name
diff --git a/director/vendor/reporter_utils.py b/director/vendor/reporter_utils.py
index 1a06ce3..8e3866e 100644
--- a/director/vendor/reporter_utils.py
+++ b/director/vendor/reporter_utils.py
@@ -28,7 +28,7 @@ def getPreviousBuild(master, build):
The scummvm reporter reports on changed between builds.
Comparing builds with the latest master makes it easier to
see changes based on the stable target, i.e. master.
-
+
It used to be that PRs could introduce c change that would
fail on a lot of tests.The next commit on master would show many
tests as fixed, even though that commit didn't touch them.
@@ -39,82 +39,107 @@ def getPreviousBuild(master, build):
prev = yield master.data.get(("builders", build["builderid"], "builds", n))
if prev:
buildproperties = yield master.data.get(
- ("builds", prev["buildid"], "properties"))
+ ("builds", prev["buildid"], "properties")
+ )
- if (prev["results"] != RETRY
- and buildproperties["branch"][0] == "master"
- ):
+ if prev["results"] != RETRY and buildproperties["branch"][0] == "master":
return prev
n -= 1
return None
@defer.inlineCallbacks
-def getDetailsForBuild(master, build, wantProperties=False, wantSteps=False,
- wantPreviousBuild=False, wantLogs=False):
+def getDetailsForBuild(
+ master,
+ build,
+ wantProperties=False,
+ wantSteps=False,
+ wantPreviousBuild=False,
+ wantLogs=False,
+):
"""Copied verbatim from buildbot.reporters.utils"""
- buildrequest = yield master.data.get(("buildrequests", build['buildrequestid']))
- buildset = yield master.data.get(("buildsets", buildrequest['buildsetid']))
- build['buildrequest'], build['buildset'] = buildrequest, buildset
- ret = yield getDetailsForBuilds(master, buildset, [build],
- wantProperties=wantProperties, wantSteps=wantSteps,
- wantPreviousBuild=wantPreviousBuild, wantLogs=wantLogs)
+ buildrequest = yield master.data.get(("buildrequests", build["buildrequestid"]))
+ buildset = yield master.data.get(("buildsets", buildrequest["buildsetid"]))
+ build["buildrequest"], build["buildset"] = buildrequest, buildset
+ ret = yield getDetailsForBuilds(
+ master,
+ buildset,
+ [build],
+ wantProperties=wantProperties,
+ wantSteps=wantSteps,
+ wantPreviousBuild=wantPreviousBuild,
+ wantLogs=wantLogs,
+ )
return ret
@defer.inlineCallbacks
-def getDetailsForBuilds(master, buildset, builds, wantProperties=False, wantSteps=False,
- wantPreviousBuild=False, wantLogs=False):
+def getDetailsForBuilds(
+ master,
+ buildset,
+ builds,
+ wantProperties=False,
+ wantSteps=False,
+ wantPreviousBuild=False,
+ wantLogs=False,
+):
"""Copied verbatim from buildbot.reporters.utils"""
- builderids = {build['builderid'] for build in builds}
+ builderids = {build["builderid"] for build in builds}
- builders = yield defer.gatherResults([master.data.get(("builders", _id))
- for _id in builderids])
+ builders = yield defer.gatherResults(
+ [master.data.get(("builders", _id)) for _id in builderids]
+ )
- buildersbyid = {builder['builderid']: builder
- for builder in builders}
+ buildersbyid = {builder["builderid"]: builder for builder in builders}
if wantProperties:
buildproperties = yield defer.gatherResults(
- [master.data.get(("builds", build['buildid'], 'properties'))
- for build in builds])
+ [
+ master.data.get(("builds", build["buildid"], "properties"))
+ for build in builds
+ ]
+ )
else: # we still need a list for the big zip
buildproperties = list(range(len(builds)))
if wantPreviousBuild:
prev_builds = yield defer.gatherResults(
- [getPreviousBuild(master, build) for build in builds if build is not None])
+ [getPreviousBuild(master, build) for build in builds if build is not None]
+ )
else: # we still need a list for the big zip
prev_builds = list(range(len(builds)))
if wantSteps:
buildsteps = yield defer.gatherResults(
- [master.data.get(("builds", build['buildid'], 'steps'))
- for build in builds])
+ [master.data.get(("builds", build["buildid"], "steps")) for build in builds]
+ )
if wantLogs:
for s in flatten(buildsteps, types=(list, UserList)):
- logs = yield master.data.get(("steps", s['stepid'], 'logs'))
- s['logs'] = list(logs)
- for l in s['logs']:
- l['content'] = yield master.data.get(("logs", l['logid'], 'contents'))
+ logs = yield master.data.get(("steps", s["stepid"], "logs"))
+ s["logs"] = list(logs)
+ for l in s["logs"]:
+ l["content"] = yield master.data.get(
+ ("logs", l["logid"], "contents")
+ )
else: # we still need a list for the big zip
buildsteps = list(range(len(builds)))
# a big zip to connect everything together
- for build, properties, steps, prev in zip(builds, buildproperties, buildsteps, prev_builds):
- build['builder'] = buildersbyid[build['builderid']]
- build['buildset'] = buildset
- build['url'] = getURLForBuild(
- master, build['builderid'], build['number'])
+ for build, properties, steps, prev in zip(
+ builds, buildproperties, buildsteps, prev_builds
+ ):
+ build["builder"] = buildersbyid[build["builderid"]]
+ build["buildset"] = buildset
+ build["url"] = getURLForBuild(master, build["builderid"], build["number"])
if wantProperties:
- build['properties'] = properties
+ build["properties"] = properties
if wantSteps:
- build['steps'] = list(steps)
+ build["steps"] = list(steps)
if wantPreviousBuild:
- build['prev_build'] = prev
+ build["prev_build"] = prev
diff --git a/master.py b/master.py
index 8b9dd46..2d73390 100644
--- a/master.py
+++ b/master.py
@@ -1,13 +1,13 @@
# -*- python -*-
# ex: set filetype=python:
-from typing import Any
from datetime import timedelta
+from typing import Any
from buildbot.changes.changes import Change
from buildbot.plugins import reporters, schedulers, util, worker
-from twisted.python import log
from environs import Env
+from twisted.python import log
from director.build_factory import build_factory
from director.lingo_factory import lingo_factory
@@ -49,7 +49,9 @@ if HAS_WORKER:
for worker_name in WORKER_NAMES:
c["workers"].append(
worker.Worker(
- worker_name, scummvm_builbot_password, max_builds=env.int("MAX_BUILDS", 12)
+ worker_name,
+ scummvm_builbot_password,
+ max_builds=env.int("MAX_BUILDS", 12),
)
)
elif IS_LOCAL_WORKER:
@@ -85,6 +87,7 @@ def file_is_director_related(change: Change) -> bool:
return True
return False
+
REPOSITORY = env("REPOSITORY", "https://github.com/scummvm/scummvm")
####### BUILDER NAMES
lingo_builder = "lingotests (D4)"
@@ -142,9 +145,7 @@ if HAS_WORKER or IS_LOCAL_WORKER:
)
)
- if env.bool(
- "FULL_BUILD", True
- ):
+ if env.bool("FULL_BUILD", True):
c["builders"].extend(
generate_builder(target, WORKER_NAMES) for target in test_targets
)
@@ -189,7 +190,6 @@ if WEB_UI:
"pullrequest_ref": "head",
}
-
github_token = env("GITHUB_TOKEN")
if github_token:
github_hook["token"] = github_token
@@ -207,12 +207,15 @@ if WEB_UI:
# the 'www' entry below, but with an externally-visible host name which the
# buildbot cannot figure out without some help.
- #c["buildbotURL"] = "https://john-test.scummvm.org/"
+ # c["buildbotURL"] = "https://john-test.scummvm.org/"
# minimalistic config to activate new web UI
c["www"] = dict(
port=env("WEB_UI_CONNECTION", "tcp:5000:interface=127.0.0.1"),
- plugins=dict(console_view={}, grid_view={},),
+ plugins=dict(
+ console_view={},
+ grid_view={},
+ ),
change_hook_dialects={"github": github_hook},
allowed_origins=["*"],
)
@@ -225,25 +228,27 @@ if WEB_UI:
)
c["www"]["authz"] = util.Authz(
- allowRules=[util.AnyControlEndpointMatcher(role="developers"),],
+ allowRules=[
+ util.AnyControlEndpointMatcher(role="developers"),
+ ],
roleMatchers=[util.RolesFromGroups(groupPrefix="scummvm/")],
)
- c['www']['ui_default_config'] = {
- 'Grid.buildFetchLimit': 200,
+ c["www"]["ui_default_config"] = {
+ "Grid.buildFetchLimit": 200,
}
c["configurators"] = [
util.JanitorConfigurator(logHorizon=timedelta(weeks=1), hour=23, dayOfWeek=0)
]
if env.bool("WAMP", False):
- c['mq'] = {
- 'type' : 'wamp',
- 'router_url': env("WAMP_URL", 'ws://localhost:8080/ws'),
- 'realm': 'realm1',
+ c["mq"] = {
+ "type": "wamp",
+ "router_url": env("WAMP_URL", "ws://localhost:8080/ws"),
+ "realm": "realm1",
# valid are: none, critical, error, warn, info, debug, trace
#'wamp_debug_level' : 'error'
- 'wamp_debug_level' : 'warn'
-}
+ "wamp_debug_level": "warn",
+ }
####### DB URL
@@ -261,15 +266,15 @@ c["buildbotNetUsageData"] = None
### Use internal caching
# https://docs.buildbot.net/2.8.4/manual/configuration/global.html#horizons
-c['caches'] = { # defaults
- 'Changes' : 30000, # 10 Have seen up to 17K changes be requested in one request.
- 'Builds' : 5000, # 15
- 'chdicts' : 30000, # 1
- 'BuildRequests' : 20, # 1
- 'SourceStamps' : 20, # 1
- 'ssdicts' : 20, # 20
- 'objectids' : 100, # 1
- 'usdicts' : 10, # 1
+c["caches"] = { # defaults
+ "Changes": 30000, # 10 Have seen up to 17K changes be requested in one request.
+ "Builds": 5000, # 15
+ "chdicts": 30000, # 1
+ "BuildRequests": 20, # 1
+ "SourceStamps": 20, # 1
+ "ssdicts": 20, # 20
+ "objectids": 100, # 1
+ "usdicts": 10, # 1
}
### Keeps only the latest 5000 changeids, i.e. git commits
diff --git a/poetry.lock b/poetry.lock
index 673493d..d32bdcc 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -18,8 +18,8 @@ python-versions = ">=3.5"
cffi = ">=1.0.0"
[package.extras]
-dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pytest", "sphinx", "furo", "wheel", "pre-commit"]
-docs = ["sphinx", "furo"]
+dev = ["coverage[toml] (>=5.0.2)", "furo", "hypothesis", "pre-commit", "pytest", "sphinx", "wheel"]
+docs = ["furo", "sphinx"]
tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pytest"]
[[package]]
@@ -32,6 +32,7 @@ python-versions = "~=3.6"
[package.dependencies]
lazy-object-proxy = ">=1.4.0"
+setuptools = ">=20.0"
typing-extensions = {version = ">=3.10", markers = "python_version < \"3.10\""}
wrapt = ">=1.11,<1.14"
@@ -44,10 +45,10 @@ optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
[package.extras]
-dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit"]
-docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"]
-tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface"]
-tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins"]
+dev = ["coverage[toml] (>=5.0.2)", "furo", "hypothesis", "mypy", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "six", "sphinx", "sphinx-notfound-page", "zope.interface"]
+docs = ["furo", "sphinx", "sphinx-notfound-page", "zope.interface"]
+tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "mypy", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "six", "zope.interface"]
+tests-no-zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "mypy", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "six"]
[[package]]
name = "autobahn"
@@ -82,15 +83,15 @@ ujson = {version = ">=4.0.2", optional = true, markers = "extra == \"serializati
[package.extras]
accelerate = ["wsaccel (>=0.6.3)"]
-all = ["zope.interface (>=5.2.0)", "twisted (>=20.3.0)", "attrs (>=20.3.0)", "wsaccel (>=0.6.3)", "python-snappy (>=0.6.0)", "msgpack (>=1.0.2)", "ujson (>=4.0.2)", "cbor2 (>=5.2.0)", "cbor (>=1.0.0)", "py-ubjson (>=0.16.1)", "flatbuffers (>=1.12)", "pyopenssl (>=20.0.1)", "service-identity (>=18.1.0)", "pynacl (>=1.4.0)", "pytrie (>=0.4.0)", "pyqrcode (>=1.2.1)", "cffi (>=1.14.5)", "argon2-cffi (>=20.1.0)", "passlib (>=1.7.4)", "xbr (>=21.2.1)", "zlmdb (>=21.2.1)", "web3 (>=5.16.0)", "jinja2 (>=2.11.3)", "rlp (>=2.0.1)", "py-eth-sig-utils (>=0.4.0)", "py-ecc (>=5.1.0)", "eth-abi (>=2.1.1)", "mnemonic (>=0.19)", "base58 (>=2.1.0)", "ecdsa (>=0.16.1)", "py-multihash (>=2.0.1)"]
+all = ["argon2-cffi (>=20.1.0)", "attrs (>=20.3.0)", "base58 (>=2.1.0)", "cbor (>=1.0.0)", "cbor2 (>=5.2.0)", "cffi (>=1.14.5)", "ecdsa (>=0.16.1)", "eth-abi (>=2.1.1)", "flatbuffers (>=1.12)", "jinja2 (>=2.11.3)", "mnemonic (>=0.19)", "msgpack (>=1.0.2)", "passlib (>=1.7.4)", "py-ecc (>=5.1.0)", "py-eth-sig-utils (>=0.4.0)", "py-multihash (>=2.0.1)", "py-ubjson (>=0.16.1)", "pynacl (>=1.4.0)", "pyopenssl (>=20.0.1)", "pyqrcode (>=1.2.1)", "python-snappy (>=0.6.0)", "pytrie (>=0.4.0)", "rlp (>=2.0.1)", "service-identity (>=18.1.0)", "twisted (>=20.3.0)", "ujson (>=4.0.2)", "web3 (>=5.16.0)", "wsaccel (>=0.6.3)", "xbr (>=21.2.1)", "zlmdb (>=21.2.1)", "zope.interface (>=5.2.0)"]
compress = ["python-snappy (>=0.6.0)"]
-dev = ["pep8-naming (>=0.3.3)", "flake8 (>=2.5.1)", "pyflakes (>=1.0.0)", "pytest (>=2.8.6,<3.3.0)", "twine (>=1.6.5)", "sphinx (>=1.2.3)", "sphinxcontrib-images (>=0.9.2)", "pyenchant (>=1.6.6)", "sphinxcontrib-spelling (>=2.1.2)", "sphinx-rtd-theme (>=0.1.9)", "awscli", "qualname", "passlib", "wheel", "pytest-asyncio (<0.6)", "pytest-aiohttp"]
-encryption = ["pyopenssl (>=20.0.1)", "service-identity (>=18.1.0)", "pynacl (>=1.4.0)", "pytrie (>=0.4.0)", "pyqrcode (>=1.2.1)"]
+dev = ["awscli", "flake8 (>=2.5.1)", "passlib", "pep8-naming (>=0.3.3)", "pyenchant (>=1.6.6)", "pyflakes (>=1.0.0)", "pytest (>=2.8.6,<3.3.0)", "pytest-aiohttp", "pytest-asyncio (<0.6)", "qualname", "sphinx (>=1.2.3)", "sphinx-rtd-theme (>=0.1.9)", "sphinxcontrib-images (>=0.9.2)", "sphinxcontrib-spelling (>=2.1.2)", "twine (>=1.6.5)", "wheel"]
+encryption = ["pynacl (>=1.4.0)", "pyopenssl (>=20.0.1)", "pyqrcode (>=1.2.1)", "pytrie (>=0.4.0)", "service-identity (>=18.1.0)"]
nvx = ["cffi (>=1.14.5)"]
-scram = ["cffi (>=1.14.5)", "argon2-cffi (>=20.1.0)", "passlib (>=1.7.4)"]
-serialization = ["msgpack (>=1.0.2)", "ujson (>=4.0.2)", "cbor2 (>=5.2.0)", "cbor (>=1.0.0)", "py-ubjson (>=0.16.1)", "flatbuffers (>=1.12)"]
-twisted = ["zope.interface (>=5.2.0)", "twisted (>=20.3.0)", "attrs (>=20.3.0)"]
-xbr = ["xbr (>=21.2.1)", "cbor2 (>=5.2.0)", "zlmdb (>=21.2.1)", "twisted (>=20.3.0)", "web3 (>=5.16.0)", "jinja2 (>=2.11.3)", "rlp (>=2.0.1)", "py-eth-sig-utils (>=0.4.0)", "py-ecc (>=5.1.0)", "eth-abi (>=2.1.1)", "mnemonic (>=0.19)", "base58 (>=2.1.0)", "ecdsa (>=0.16.1)", "py-multihash (>=2.0.1)"]
+scram = ["argon2-cffi (>=20.1.0)", "cffi (>=1.14.5)", "passlib (>=1.7.4)"]
+serialization = ["cbor (>=1.0.0)", "cbor2 (>=5.2.0)", "flatbuffers (>=1.12)", "msgpack (>=1.0.2)", "py-ubjson (>=0.16.1)", "ujson (>=4.0.2)"]
+twisted = ["attrs (>=20.3.0)", "twisted (>=20.3.0)", "zope.interface (>=5.2.0)"]
+xbr = ["base58 (>=2.1.0)", "cbor2 (>=5.2.0)", "ecdsa (>=0.16.1)", "eth-abi (>=2.1.1)", "jinja2 (>=2.11.3)", "mnemonic (>=0.19)", "py-ecc (>=5.1.0)", "py-eth-sig-utils (>=0.4.0)", "py-multihash (>=2.0.1)", "rlp (>=2.0.1)", "twisted (>=20.3.0)", "web3 (>=5.16.0)", "xbr (>=21.2.1)", "zlmdb (>=21.2.1)"]
[[package]]
name = "automat"
@@ -105,7 +106,7 @@ attrs = ">=19.2.0"
six = "*"
[package.extras]
-visualize = ["graphviz (>0.5.1)", "Twisted (>=16.1.1)"]
+visualize = ["Twisted (>=16.1.1)", "graphviz (>0.5.1)"]
[[package]]
name = "backcall"
@@ -156,7 +157,7 @@ regex = ">=2020.1.8"
tomli = ">=0.2.6,<2.0.0"
typing-extensions = [
{version = ">=3.10.0.0", markers = "python_version < \"3.10\""},
- {version = "!=3.10.0.1", markers = "python_version >= \"3.10\""},
+ {version = ">=3.10.0.0,<3.10.0.1 || >3.10.0.1", markers = "python_version >= \"3.10\""},
]
[package.extras]
@@ -185,6 +186,7 @@ Jinja2 = ">=2.1"
PyJWT = "*"
python-dateutil = ">=1.5"
pyyaml = "*"
+setuptools = ">=8.0"
sqlalchemy = ">=1.1.0"
sqlalchemy-migrate = ">=0.9"
Twisted = ">=17.9.0"
@@ -192,10 +194,10 @@ txaio = ">=2.2.2"
"zope.interface" = ">=4.1.1"
[package.extras]
-bundle = ["buildbot-www (==2.8.4)", "buildbot-worker (==2.8.4)", "buildbot-waterfall-view (==2.8.4)", "buildbot-console-view (==2.8.4)", "buildbot-grid-view (==2.8.4)"]
-docs = ["docutils (<0.13.0)", "sphinx (>1.4.0,<2.1.0)", "sphinxcontrib-blockdiag", "sphinxcontrib-spelling", "pyenchant", "docutils (>=0.8)", "sphinx-jinja", "towncrier"]
-test = ["setuptools-trial", "isort", "pylint (<1.7.0)", "pyenchant", "flake8 (>=2.6.0,<2.7.0)", "treq", "txrequests", "pyjade", "boto3", "moto", "mock (>=2.0.0)", "parameterized", "lz4"]
-tls = ["Twisted[tls] (>=17.9.0)", "pyopenssl (>=16.0.0)", "service-identity", "idna (>=0.6)"]
+bundle = ["buildbot-console-view (==2.8.4)", "buildbot-grid-view (==2.8.4)", "buildbot-waterfall-view (==2.8.4)", "buildbot-worker (==2.8.4)", "buildbot-www (==2.8.4)"]
+docs = ["docutils (<0.13.0)", "docutils (>=0.8)", "pyenchant", "sphinx (>1.4.0,<2.1.0)", "sphinx-jinja", "sphinxcontrib-blockdiag", "sphinxcontrib-spelling", "towncrier"]
+test = ["boto3", "flake8 (>=2.6.0,<2.7.0)", "isort", "lz4", "mock (>=2.0.0)", "moto", "parameterized", "pyenchant", "pyjade", "pylint (<1.7.0)", "setuptools-trial", "treq", "txrequests"]
+tls = ["Twisted[tls] (>=17.9.0)", "idna (>=0.6)", "pyopenssl (>=16.0.0)", "service-identity"]
[[package]]
name = "buildbot-console-view"
@@ -246,7 +248,7 @@ future = "*"
twisted = ">=17.9.0"
[package.extras]
-test = ["pep8", "pylint (>=1.4.0)", "pyenchant", "flake8 (>=2.6.0,<2.7.0)", "mock"]
+test = ["flake8 (>=2.6.0,<2.7.0)", "mock", "pep8", "pyenchant", "pylint (>=1.4.0)"]
[[package]]
name = "buildbot-www"
@@ -276,7 +278,7 @@ optional = false
python-versions = ">=3.6"
[package.extras]
-doc = ["sphinx-rtd-theme", "sphinx-autodoc-typehints (>=1.2.0)"]
+doc = ["sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"]
test = ["pytest", "pytest-cov"]
[[package]]
@@ -307,7 +309,7 @@ optional = false
python-versions = ">=3.5.0"
[package.extras]
-unicode_backport = ["unicodedata2"]
+unicode-backport = ["unicodedata2"]
[[package]]
name = "click"
@@ -377,6 +379,7 @@ pyyaml = ">=4.2b4"
sdnotify = ">=0.3.1"
service-identity = ">=17.0.0"
setproctitle = ">=1.1.10"
+setuptools = ">=36.2.7"
treq = ">=20.4.1"
txaio = ">=21.2.1"
txtorcon = ">=20.0.0"
@@ -388,7 +391,7 @@ zlmdb = ">=21.2.1"
"zope.interface" = ">=4.4.2"
[package.extras]
-dev = ["sphinx (==2.4.4)", "sphinxcontrib-images (==0.9.1)", "sphinx-rtd-theme (>=0.4.2)", "sphinxcontrib-spelling (>=4.2.0)", "sphinxcontrib-websupport (>=1.1.0)", "tox", "flake8", "mock", "wheel", "hashin", "coverage", "bandit", "towncrier", "pip (==19.3.1)", "pip-licenses", "pyenchant (>=2.0.0)", "pygments (>=2.2.0)", "scour (>=0.37)"]
+dev = ["bandit", "coverage", "flake8", "hashin", "mock", "pip (==19.3.1)", "pip-licenses", "pyenchant (>=2.0.0)", "pygments (>=2.2.0)", "scour (>=0.37)", "sphinx (==2.4.4)", "sphinx-rtd-theme (>=0.4.2)", "sphinxcontrib-images (==0.9.1)", "sphinxcontrib-spelling (>=4.2.0)", "sphinxcontrib-websupport (>=1.1.0)", "towncrier", "tox", "wheel"]
[[package]]
name = "cryptography"
@@ -402,12 +405,12 @@ python-versions = ">=3.6"
cffi = ">=1.12"
[package.extras]
-docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx-rtd-theme"]
-docstest = ["doc8", "pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"]
+docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx_rtd_theme"]
+docstest = ["doc8", "pyenchant (>=1.6.11)", "sphinxcontrib-spelling (>=4.0.1)", "twine (>=1.12.0)"]
pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"]
sdist = ["setuptools_rust (>=0.11.4)"]
ssh = ["bcrypt (>=3.1.5)"]
-test = ["pytest (>=6.2.0)", "pytest-cov", "pytest-subtests", "pytest-xdist", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"]
+test = ["hypothesis (>=1.11.4,!=3.79.2)", "iso8601", "pretend", "pytest (>=6.2.0)", "pytest-cov", "pytest-subtests", "pytest-xdist", "pytz"]
[[package]]
name = "decorator"
@@ -430,10 +433,10 @@ marshmallow = ">=3.0.0"
python-dotenv = "*"
[package.extras]
-dev = ["pytest", "dj-database-url", "dj-email-url", "django-cache-url", "flake8 (==3.9.2)", "flake8-bugbear (==21.4.3)", "mypy (==0.910)", "pre-commit (>=2.4,<3.0)", "tox"]
+dev = ["dj-database-url", "dj-email-url", "django-cache-url", "flake8 (==3.9.2)", "flake8-bugbear (==21.4.3)", "mypy (==0.910)", "pre-commit (>=2.4,<3.0)", "pytest", "tox"]
django = ["dj-database-url", "dj-email-url", "django-cache-url"]
lint = ["flake8 (==3.9.2)", "flake8-bugbear (==21.4.3)", "mypy (==0.910)", "pre-commit (>=2.4,<3.0)"]
-tests = ["pytest", "dj-database-url", "dj-email-url", "django-cache-url"]
+tests = ["dj-database-url", "dj-email-url", "django-cache-url", "pytest"]
[[package]]
name = "flatbuffers"
@@ -510,8 +513,8 @@ python-versions = ">=3.6"
zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""}
[package.extras]
-docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"]
-testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-black (>=0.3.7)", "pytest-mypy"]
+docs = ["jaraco.packaging (>=8.2)", "rst.linker (>=1.9)", "sphinx"]
+testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-flake8", "pytest-mypy"]
[[package]]
name = "incremental"
@@ -535,6 +538,7 @@ python-versions = ">=2.7"
[package.dependencies]
decorator = {version = "*", markers = "python_version > \"3.6\""}
ipython = {version = ">=7.17.0", markers = "python_version > \"3.6\""}
+setuptools = "*"
toml = {version = ">=0.10.2", markers = "python_version > \"3.6\""}
[[package]]
@@ -556,6 +560,7 @@ pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""}
pickleshare = "*"
prompt-toolkit = ">=2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.1.0"
pygments = "*"
+setuptools = ">=18.5"
traitlets = ">=4.2"
[package.extras]
@@ -564,24 +569,24 @@ doc = ["Sphinx (>=1.3)"]
kernel = ["ipykernel"]
nbconvert = ["nbconvert"]
nbformat = ["nbformat"]
-notebook = ["notebook", "ipywidgets"]
+notebook = ["ipywidgets", "notebook"]
parallel = ["ipyparallel"]
qtconsole = ["qtconsole"]
-test = ["nose (>=0.10.1)", "requests", "testpath", "pygments", "nbformat", "ipykernel", "numpy (>=1.17)"]
+test = ["ipykernel", "nbformat", "nose (>=0.10.1)", "numpy (>=1.17)", "pygments", "requests", "testpath"]
[[package]]
name = "isort"
-version = "5.9.3"
+version = "5.11.4"
description = "A Python utility / library to sort Python imports."
category = "dev"
optional = false
-python-versions = ">=3.6.1,<4.0"
+python-versions = ">=3.7.0"
[package.extras]
-pipfile_deprecated_finder = ["pipreqs", "requirementslib"]
-requirements_deprecated_finder = ["pipreqs", "pip-api"]
colors = ["colorama (>=0.4.3,<0.5.0)"]
+pipfile-deprecated-finder = ["pipreqs", "requirementslib"]
plugins = ["setuptools"]
+requirements-deprecated-finder = ["pip-api", "pipreqs"]
[[package]]
name = "jedi"
@@ -648,9 +653,9 @@ optional = false
python-versions = ">=3.6"
[package.extras]
-dev = ["pytest", "pytz", "simplejson", "mypy (==0.910)", "flake8 (==4.0.1)", "flake8-bugbear (==21.9.2)", "pre-commit (>=2.4,<3.0)", "tox"]
-docs = ["sphinx (==4.2.0)", "sphinx-issues (==1.2.0)", "alabaster (==0.7.12)", "sphinx-version-warning (==1.1.2)", "autodocsumm (==0.2.7)"]
-lint = ["mypy (==0.910)", "flake8 (==4.0.1)", "flake8-bugbear (==21.9.2)", "pre-commit (>=2.4,<3.0)"]
+dev = ["flake8 (==4.0.1)", "flake8-bugbear (==21.9.2)", "mypy (==0.910)", "pre-commit (>=2.4,<3.0)", "pytest", "pytz", "simplejson", "tox"]
+docs = ["alabaster (==0.7.12)", "autodocsumm (==0.2.7)", "sphinx (==4.2.0)", "sphinx-issues (==1.2.0)", "sphinx-version-warning (==1.1.2)"]
+lint = ["flake8 (==4.0.1)", "flake8-bugbear (==21.9.2)", "mypy (==0.910)", "pre-commit (>=2.4,<3.0)"]
tests = ["pytest", "pytz", "simplejson"]
[[package]]
@@ -752,7 +757,7 @@ python-versions = "*"
[package.extras]
argon2 = ["argon2-cffi (>=18.2.0)"]
bcrypt = ["bcrypt (>=3.1.0)"]
-build_docs = ["sphinx (>=1.6)", "sphinxcontrib-fulltoc (>=1.2.0)", "cloud-sptheme (>=1.10.1)"]
+build-docs = ["cloud-sptheme (>=1.10.1)", "sphinx (>=1.6)", "sphinxcontrib-fulltoc (>=1.2.0)"]
totp = ["cryptography"]
[[package]]
@@ -830,7 +835,7 @@ optional = false
python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
[package.extras]
-test = ["ipaddress", "mock", "unittest2", "enum34", "pywin32", "wmi"]
+test = ["enum34", "ipaddress", "mock", "pywin32", "unittest2", "wmi"]
[[package]]
name = "psycopg2cffi"
@@ -908,9 +913,9 @@ python-versions = ">=3.6"
[package.extras]
crypto = ["cryptography (>=3.3.1)"]
-dev = ["sphinx", "sphinx-rtd-theme", "zope.interface", "cryptography (>=3.3.1)", "pytest (>=6.0.0,<7.0.0)", "coverage[toml] (==5.0.4)", "mypy", "pre-commit"]
+dev = ["coverage[toml] (==5.0.4)", "cryptography (>=3.3.1)", "mypy", "pre-commit", "pytest (>=6.0.0,<7.0.0)", "sphinx", "sphinx-rtd-theme", "zope.interface"]
docs = ["sphinx", "sphinx-rtd-theme", "zope.interface"]
-tests = ["pytest (>=6.0.0,<7.0.0)", "coverage[toml] (==5.0.4)"]
+tests = ["coverage[toml] (==5.0.4)", "pytest (>=6.0.0,<7.0.0)"]
[[package]]
name = "pylint"
@@ -942,8 +947,8 @@ cffi = ">=1.4.1"
six = "*"
[package.extras]
-docs = ["sphinx (>=1.6.5)", "sphinx-rtd-theme"]
-tests = ["pytest (>=3.2.1,!=3.3.0)", "hypothesis (>=3.27.0)"]
+docs = ["sphinx (>=1.6.5)", "sphinx_rtd_theme"]
+tests = ["hypothesis (>=3.27.0)", "pytest (>=3.2.1,!=3.3.0)"]
[[package]]
name = "pyopenssl"
@@ -970,7 +975,7 @@ optional = false
python-versions = "*"
[package.extras]
-PNG = ["pypng (>=0.0.13)"]
+png = ["pypng (>=0.0.13)"]
[[package]]
name = "python-dateutil"
@@ -1002,9 +1007,6 @@ category = "main"
optional = false
python-versions = "*"
-[package.dependencies]
-cffi = ">=1.0.0"
-
[[package]]
name = "pytrie"
version = "0.4.0"
@@ -1048,7 +1050,7 @@ urllib3 = ">=1.21.1,<1.27"
[package.extras]
socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"]
-use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"]
+use-chardet-on-py3 = ["chardet (>=3.0.2,<5)"]
[[package]]
name = "sdnotify"
@@ -1073,7 +1075,7 @@ pyasn1 = "*"
pyasn1-modules = "*"
[package.extras]
-dev = ["coverage (>=4.2.0)", "pytest", "sphinx", "idna", "pyopenssl"]
+dev = ["coverage (>=4.2.0)", "idna", "pyOpenSSL", "pytest", "sphinx"]
docs = ["sphinx"]
idna = ["idna"]
tests = ["coverage (>=4.2.0)", "pytest"]
@@ -1089,6 +1091,18 @@ python-versions = ">=3.6"
[package.extras]
test = ["pytest (>=6.1,<6.2)"]
+[[package]]
+name = "setuptools"
+version = "57.5.0"
+description = "Easily download, build, install, upgrade, and uninstall Python packages"
+category = "main"
+optional = false
+python-versions = ">=3.6"
+
+[package.extras]
+docs = ["furo", "jaraco.packaging (>=8.2)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx", "sphinx-inline-tabs", "sphinxcontrib-towncrier"]
+testing = ["flake8-2020", "jaraco.envs", "jaraco.path (>=3.2.0)", "mock", "paver", "pip (>=19.1)", "pytest (>=4.6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-flake8", "pytest-mypy", "pytest-virtualenv (>=1.2.7)", "pytest-xdist", "sphinx", "virtualenv (>=13.0.0)", "wheel"]
+
[[package]]
name = "six"
version = "1.16.0"
@@ -1115,15 +1129,15 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
[package.extras]
mssql = ["pyodbc"]
-mssql_pymssql = ["pymssql"]
-mssql_pyodbc = ["pyodbc"]
+mssql-pymssql = ["pymssql"]
+mssql-pyodbc = ["pyodbc"]
mysql = ["mysqlclient"]
-oracle = ["cx-oracle"]
+oracle = ["cx_oracle"]
postgresql = ["psycopg2"]
-postgresql_pg8000 = ["pg8000 (<1.16.6)"]
-postgresql_psycopg2binary = ["psycopg2-binary"]
-postgresql_psycopg2cffi = ["psycopg2cffi"]
-pymysql = ["pymysql (<1)", "pymysql"]
+postgresql-pg8000 = ["pg8000 (<1.16.6)"]
+postgresql-psycopg2binary = ["psycopg2-binary"]
+postgresql-psycopg2cffi = ["psycopg2cffi"]
+pymysql = ["pymysql", "pymysql (<1)"]
[[package]]
name = "sqlalchemy-migrate"
@@ -1200,7 +1214,7 @@ requests = ">=2.1.0"
Twisted = {version = ">=18.7.0", extras = ["tls"]}
[package.extras]
-dev = ["pep8", "pyflakes", "httpbin (==0.5.0)"]
+dev = ["httpbin (==0.5.0)", "pep8", "pyflakes"]
docs = ["sphinx (>=1.4.8)"]
[[package]]
@@ -1225,19 +1239,19 @@ typing-extensions = ">=3.6.5"
"zope.interface" = ">=4.4.2"
[package.extras]
-all_non_platform = ["cython-test-exception-raiser (>=1.0,<2.0)", "PyHamcrest (>=1.9.0)", "pyopenssl (>=16.0.0)", "service-identity (>=18.1.0)", "idna (>=2.4)", "pyasn1", "cryptography (>=2.6)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "pyserial (>=3.0)", "h2 (>=3.0,<4.0)", "priority (>=1.1.0,<2.0)", "pywin32 (!=226)", "contextvars (>=2.4,<3)"]
-conch = ["pyasn1", "cryptography (>=2.6)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)"]
+all-non-platform = ["PyHamcrest (>=1.9.0)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "contextvars (>=2.4,<3)", "cryptography (>=2.6)", "cython-test-exception-raiser (>=1.0,<2.0)", "h2 (>=3.0,<4.0)", "idna (>=2.4)", "priority (>=1.1.0,<2.0)", "pyasn1", "pyopenssl (>=16.0.0)", "pyserial (>=3.0)", "pywin32 (!=226)", "service-identity (>=18.1.0)"]
+conch = ["appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "cryptography (>=2.6)", "pyasn1"]
contextvars = ["contextvars (>=2.4,<3)"]
-dev = ["towncrier (>=19.2,<20.0)", "sphinx-rtd-theme (>=0.5,<1.0)", "readthedocs-sphinx-ext (>=2.1,<3.0)", "sphinx (>=3.3,<4.0)", "pyflakes (>=2.2,<3.0)", "twistedchecker (>=0.7,<1.0)", "coverage (>=6b1,<7)", "python-subunit (>=1.4,<2.0)", "pydoctor (>=21.2.2,<21.3.0)"]
-dev_release = ["towncrier (>=19.2,<20.0)", "sphinx-rtd-theme (>=0.5,<1.0)", "readthedocs-sphinx-ext (>=2.1,<3.0)", "sphinx (>=3.3,<4.0)", "pydoctor (>=21.2.2,<21.3.0)"]
+dev = ["coverage (>=6b1,<7)", "pydoctor (>=21.2.2,<21.3.0)", "pyflakes (>=2.2,<3.0)", "python-subunit (>=1.4,<2.0)", "readthedocs-sphinx-ext (>=2.1,<3.0)", "sphinx (>=3.3,<4.0)", "sphinx-rtd-theme (>=0.5,<1.0)", "towncrier (>=19.2,<20.0)", "twistedchecker (>=0.7,<1.0)"]
+dev-release = ["pydoctor (>=21.2.2,<21.3.0)", "readthedocs-sphinx-ext (>=2.1,<3.0)", "sphinx (>=3.3,<4.0)", "sphinx-rtd-theme (>=0.5,<1.0)", "towncrier (>=19.2,<20.0)"]
http2 = ["h2 (>=3.0,<4.0)", "priority (>=1.1.0,<2.0)"]
-macos_platform = ["pyobjc-core", "pyobjc-framework-cfnetwork", "pyobjc-framework-cocoa", "cython-test-exception-raiser (>=1.0,<2.0)", "PyHamcrest (>=1.9.0)", "pyopenssl (>=16.0.0)", "service-identity (>=18.1.0)", "idna (>=2.4)", "pyasn1", "cryptography (>=2.6)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "pyserial (>=3.0)", "h2 (>=3.0,<4.0)", "priority (>=1.1.0,<2.0)", "pywin32 (!=226)", "contextvars (>=2.4,<3)"]
-mypy = ["mypy (==0.910)", "mypy-zope (==0.3.2)", "types-setuptools", "towncrier (>=19.2,<20.0)", "sphinx-rtd-theme (>=0.5,<1.0)", "readthedocs-sphinx-ext (>=2.1,<3.0)", "sphinx (>=3.3,<4.0)", "pyflakes (>=2.2,<3.0)", "twistedchecker (>=0.7,<1.0)", "coverage (>=6b1,<7)", "cython-test-exception-raiser (>=1.0,<2.0)", "PyHamcrest (>=1.9.0)", "pyopenssl (>=16.0.0)", "service-identity (>=18.1.0)", "idna (>=2.4)", "pyasn1", "cryptography (>=2.6)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "pyserial (>=3.0)", "h2 (>=3.0,<4.0)", "priority (>=1.1.0,<2.0)", "pywin32 (!=226)", "python-subunit (>=1.4,<2.0)", "contextvars (>=2.4,<3)", "pydoctor (>=21.2.2,<21.3.0)"]
-osx_platform = ["pyobjc-core", "pyobjc-framework-cfnetwork", "pyobjc-framework-cocoa", "cython-test-exception-raiser (>=1.0,<2.0)", "PyHamcrest (>=1.9.0)", "pyopenssl (>=16.0.0)", "service-identity (>=18.1.0)", "idna (>=2.4)", "pyasn1", "cryptography (>=2.6)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "pyserial (>=3.0)", "h2 (>=3.0,<4.0)", "priority (>=1.1.0,<2.0)", "pywin32 (!=226)", "contextvars (>=2.4,<3)"]
+macos-platform = ["PyHamcrest (>=1.9.0)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "contextvars (>=2.4,<3)", "cryptography (>=2.6)", "cython-test-exception-raiser (>=1.0,<2.0)", "h2 (>=3.0,<4.0)", "idna (>=2.4)", "priority (>=1.1.0,<2.0)", "pyasn1", "pyobjc-core", "pyobjc-framework-CFNetwork", "pyobjc-framework-Cocoa", "pyopenssl (>=16.0.0)", "pyserial (>=3.0)", "pywin32 (!=226)", "service-identity (>=18.1.0)"]
+mypy = ["PyHamcrest (>=1.9.0)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "contextvars (>=2.4,<3)", "coverage (>=6b1,<7)", "cryptography (>=2.6)", "cython-test-exception-raiser (>=1.0,<2.0)", "h2 (>=3.0,<4.0)", "idna (>=2.4)", "mypy (==0.910)", "mypy-zope (==0.3.2)", "priority (>=1.1.0,<2.0)", "pyasn1", "pydoctor (>=21.2.2,<21.3.0)", "pyflakes (>=2.2,<3.0)", "pyopenssl (>=16.0.0)", "pyserial (>=3.0)", "python-subunit (>=1.4,<2.0)", "pywin32 (!=226)", "readthedocs-sphinx-ext (>=2.1,<3.0)", "service-identity (>=18.1.0)", "sphinx (>=3.3,<4.0)", "sphinx-rtd-theme (>=0.5,<1.0)", "towncrier (>=19.2,<20.0)", "twistedchecker (>=0.7,<1.0)", "types-setuptools"]
+osx-platform = ["PyHamcrest (>=1.9.0)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "contextvars (>=2.4,<3)", "cryptography (>=2.6)", "cython-test-exception-raiser (>=1.0,<2.0)", "h2 (>=3.0,<4.0)", "idna (>=2.4)", "priority (>=1.1.0,<2.0)", "pyasn1", "pyobjc-core", "pyobjc-framework-CFNetwork", "pyobjc-framework-Cocoa", "pyopenssl (>=16.0.0)", "pyserial (>=3.0)", "pywin32 (!=226)", "service-identity (>=18.1.0)"]
serial = ["pyserial (>=3.0)", "pywin32 (!=226)"]
-test = ["cython-test-exception-raiser (>=1.0,<2.0)", "PyHamcrest (>=1.9.0)"]
-tls = ["pyopenssl (>=16.0.0)", "service-identity (>=18.1.0)", "idna (>=2.4)"]
-windows_platform = ["pywin32 (!=226)", "cython-test-exception-raiser (>=1.0,<2.0)", "PyHamcrest (>=1.9.0)", "pyopenssl (>=16.0.0)", "service-identity (>=18.1.0)", "idna (>=2.4)", "pyasn1", "cryptography (>=2.6)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "pyserial (>=3.0)", "h2 (>=3.0,<4.0)", "priority (>=1.1.0,<2.0)", "pywin32 (!=226)", "contextvars (>=2.4,<3)"]
+test = ["PyHamcrest (>=1.9.0)", "cython-test-exception-raiser (>=1.0,<2.0)"]
+tls = ["idna (>=2.4)", "pyopenssl (>=16.0.0)", "service-identity (>=18.1.0)"]
+windows-platform = ["PyHamcrest (>=1.9.0)", "appdirs (>=1.4.0)", "bcrypt (>=3.0.0)", "contextvars (>=2.4,<3)", "cryptography (>=2.6)", "cython-test-exception-raiser (>=1.0,<2.0)", "h2 (>=3.0,<4.0)", "idna (>=2.4)", "priority (>=1.1.0,<2.0)", "pyasn1", "pyopenssl (>=16.0.0)", "pyserial (>=3.0)", "pywin32 (!=226)", "pywin32 (!=226)", "service-identity (>=18.1.0)"]
[[package]]
name = "twisted-iocpsupport"
@@ -1256,9 +1270,9 @@ optional = false
python-versions = ">=3.6"
[package.extras]
-all = ["zope.interface (>=5.2.0)", "twisted (>=20.3.0)"]
-dev = ["wheel", "pytest (>=2.6.4)", "pytest-cov (>=1.8.1)", "pep8 (>=1.6.2)", "sphinx (>=1.2.3)", "pyenchant (>=1.6.6)", "sphinxcontrib-spelling (>=2.1.2)", "sphinx-rtd-theme (>=0.1.9)", "tox (>=2.1.1)", "mock (==1.3.0)", "twine (>=1.6.5)", "tox-gh-actions (>=2.2.0)"]
-twisted = ["zope.interface (>=5.2.0)", "twisted (>=20.3.0)"]
+all = ["twisted (>=20.3.0)", "zope.interface (>=5.2.0)"]
+dev = ["mock (==1.3.0)", "pep8 (>=1.6.2)", "pyenchant (>=1.6.6)", "pytest (>=2.6.4)", "pytest-cov (>=1.8.1)", "sphinx (>=1.2.3)", "sphinx-rtd-theme (>=0.1.9)", "sphinxcontrib-spelling (>=2.1.2)", "tox (>=2.1.1)", "tox-gh-actions (>=2.2.0)", "twine (>=1.6.5)", "wheel"]
+twisted = ["twisted (>=20.3.0)", "zope.interface (>=5.2.0)"]
[[package]]
name = "txtorcon"
@@ -1276,7 +1290,7 @@ Twisted = {version = ">=15.5.0", extras = ["tls"]}
"zope.interface" = ">=3.6.1"
[package.extras]
-dev = ["tox", "coverage (<5.0)", "cuvner", "setuptools (>=0.8.0)", "sphinx", "repoze.sphinx.autointerface (>=0.4)", "coveralls", "codecov", "wheel", "twine", "pyflakes", "pycodestyle", "mock", "ipaddress (>=1.0.16)", "geoip", "readme-renderer"]
+dev = ["Sphinx", "codecov", "coverage (<5.0)", "coveralls", "cuvner", "geoip", "ipaddress (>=1.0.16)", "mock", "pycodestyle", "pyflakes", "readme-renderer", "repoze.sphinx.autointerface (>=0.4)", "setuptools (>=0.8.0)", "tox", "twine", "wheel"]
[[package]]
name = "typing-extensions"
@@ -1311,7 +1325,7 @@ optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4"
[package.extras]
-secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"]
+secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)"]
socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
[[package]]
@@ -1344,6 +1358,17 @@ python-versions = ">=3.6"
[package.extras]
watchdog = ["watchdog"]
+[[package]]
+name = "wheel"
+version = "0.34.2"
+description = "A built-package format for Python"
+category = "main"
+optional = false
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+
+[package.extras]
+test = ["pytest (>=3.0.0)", "pytest-cov"]
+
[[package]]
name = "wrapt"
version = "1.13.2"
@@ -1361,8 +1386,8 @@ optional = false
python-versions = ">=3.6"
[package.extras]
-docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"]
-testing = ["pytest (>=4.6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "jaraco.itertools", "func-timeout", "pytest-black (>=0.3.7)", "pytest-mypy"]
+docs = ["jaraco.packaging (>=8.2)", "rst.linker (>=1.9)", "sphinx"]
+testing = ["func-timeout", "jaraco.itertools", "pytest (>=4.6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-flake8", "pytest-mypy"]
[[package]]
name = "zlmdb"
@@ -1391,15 +1416,18 @@ category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
+[package.dependencies]
+setuptools = "*"
+
[package.extras]
-docs = ["sphinx", "repoze.sphinx.autointerface"]
+docs = ["Sphinx", "repoze.sphinx.autointerface"]
test = ["coverage (>=5.0.3)", "zope.event", "zope.testing"]
testing = ["coverage (>=5.0.3)", "zope.event", "zope.testing"]
[metadata]
lock-version = "1.1"
python-versions = "^3.8.4"
-content-hash = "90b0fd634918ae04b8dbc8490a4df02d435d18d4a8b6034c06733b8676cd24b4"
+content-hash = "c9b063dc82e026007952f2c4ca587ed1c4e946d35b5309106c22b1ce501d0bfa"
[metadata.files]
appnope = [
@@ -1654,8 +1682,8 @@ ipython = [
{file = "ipython-7.28.0.tar.gz", hash = "sha256:2097be5c814d1b974aea57673176a924c4c8c9583890e7a5f082f547b9975b11"},
]
isort = [
- {file = "isort-5.9.3-py3-none-any.whl", hash = "sha256:e17d6e2b81095c9db0a03a8025a957f334d6ea30b26f9ec70805411e5c7c81f2"},
- {file = "isort-5.9.3.tar.gz", hash = "sha256:9c2ea1e62d871267b78307fe511c0838ba0da28698c5732d54e2790bf3ba9899"},
+ {file = "isort-5.11.4-py3-none-any.whl", hash = "sha256:c033fd0edb91000a7f09527fe5c75321878f98322a77ddcc81adbd83724afb7b"},
+ {file = "isort-5.11.4.tar.gz", hash = "sha256:6db30c5ded9815d813932c04c2f85a360bcdd35fed496f4d8f35495ef0a261b6"},
]
jedi = [
{file = "jedi-0.18.0-py2.py3-none-any.whl", hash = "sha256:18456d83f65f400ab0c2d3319e48520420ef43b23a086fdc05dff34132f0fb93"},
@@ -1970,34 +1998,12 @@ py-ubjson = [
{file = "py-ubjson-0.16.1.tar.gz", hash = "sha256:b9bfb8695a1c7e3632e800fb83c943bf67ed45ddd87cd0344851610c69a5a482"},
]
pyasn1 = [
- {file = "pyasn1-0.4.8-py2.4.egg", hash = "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"},
- {file = "pyasn1-0.4.8-py2.5.egg", hash = "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf"},
- {file = "pyasn1-0.4.8-py2.6.egg", hash = "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00"},
- {file = "pyasn1-0.4.8-py2.7.egg", hash = "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8"},
{file = "pyasn1-0.4.8-py2.py3-none-any.whl", hash = "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d"},
- {file = "pyasn1-0.4.8-py3.1.egg", hash = "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86"},
- {file = "pyasn1-0.4.8-py3.2.egg", hash = "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7"},
- {file = "pyasn1-0.4.8-py3.3.egg", hash = "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576"},
- {file = "pyasn1-0.4.8-py3.4.egg", hash = "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12"},
- {file = "pyasn1-0.4.8-py3.5.egg", hash = "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2"},
- {file = "pyasn1-0.4.8-py3.6.egg", hash = "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359"},
- {file = "pyasn1-0.4.8-py3.7.egg", hash = "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776"},
{file = "pyasn1-0.4.8.tar.gz", hash = "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba"},
]
pyasn1-modules = [
{file = "pyasn1-modules-0.2.8.tar.gz", hash = "sha256:905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e"},
- {file = "pyasn1_modules-0.2.8-py2.4.egg", hash = "sha256:0fe1b68d1e486a1ed5473f1302bd991c1611d319bba158e98b106ff86e1d7199"},
- {file = "pyasn1_modules-0.2.8-py2.5.egg", hash = "sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405"},
- {file = "pyasn1_modules-0.2.8-py2.6.egg", hash = "sha256:a99324196732f53093a84c4369c996713eb8c89d360a496b599fb1a9c47fc3eb"},
- {file = "pyasn1_modules-0.2.8-py2.7.egg", hash = "sha256:0845a5582f6a02bb3e1bde9ecfc4bfcae6ec3210dd270522fee602365430c3f8"},
{file = "pyasn1_modules-0.2.8-py2.py3-none-any.whl", hash = "sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74"},
- {file = "pyasn1_modules-0.2.8-py3.1.egg", hash = "sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d"},
- {file = "pyasn1_modules-0.2.8-py3.2.egg", hash = "sha256:b80486a6c77252ea3a3e9b1e360bc9cf28eaac41263d173c032581ad2f20fe45"},
- {file = "pyasn1_modules-0.2.8-py3.3.egg", hash = "sha256:65cebbaffc913f4fe9e4808735c95ea22d7a7775646ab690518c056784bc21b4"},
- {file = "pyasn1_modules-0.2.8-py3.4.egg", hash = "sha256:15b7c67fabc7fc240d87fb9aabf999cf82311a6d6fb2c70d00d3d0604878c811"},
- {file = "pyasn1_modules-0.2.8-py3.5.egg", hash = "sha256:426edb7a5e8879f1ec54a1864f16b882c2837bfd06eee62f2c982315ee2473ed"},
- {file = "pyasn1_modules-0.2.8-py3.6.egg", hash = "sha256:cbac4bc38d117f2a49aeedec4407d23e8866ea4ac27ff2cf7fb3e5b570df19e0"},
- {file = "pyasn1_modules-0.2.8-py3.7.egg", hash = "sha256:c29a5e5cc7a3f05926aff34e097e84f8589cd790ce0ed41b67aed6857b26aafd"},
]
pycparser = [
{file = "pycparser-2.20-py2.py3-none-any.whl", hash = "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"},
@@ -2137,6 +2143,13 @@ pyyaml = [
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"},
{file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"},
{file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"},
+ {file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"},
+ {file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"},
+ {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"},
+ {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"},
+ {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"},
+ {file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"},
+ {file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"},
{file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"},
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"},
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"},
@@ -2236,6 +2249,10 @@ setproctitle = [
{file = "setproctitle-1.2.2-cp39-cp39-win_amd64.whl", hash = "sha256:4fc5bebd34f451dc87d2772ae6093adea1ea1dc29afc24641b250140decd23bb"},
{file = "setproctitle-1.2.2.tar.gz", hash = "sha256:7dfb472c8852403d34007e01d6e3c68c57eb66433fb8a5c77b13b89a160d97df"},
]
+setuptools = [
+ {file = "setuptools-57.5.0-py3-none-any.whl", hash = "sha256:60d78588f15b048f86e35cdab73003d8b21dd45108ee61a6693881a427f22073"},
+ {file = "setuptools-57.5.0.tar.gz", hash = "sha256:d9d3266d50f59c6967b9312844470babbdb26304fe740833a5f8d89829ba3a24"},
+]
six = [
{file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
{file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
@@ -2289,6 +2306,7 @@ sqlparse = [
{file = "sqlparse-0.4.2.tar.gz", hash = "sha256:0c00730c74263a94e5a9919ade150dfc3b19c574389985446148402998287dae"},
]
tempita = [
+ {file = "Tempita-0.5.2-py3-none-any.whl", hash = "sha256:f4554840cb59c6b4a5df4fad27eea4e3cb47ca7089bfeefb5890ff1bb8af2117"},
{file = "Tempita-0.5.2.tar.gz", hash = "sha256:cacecf0baa674d356641f1d406b8bff1d756d739c46b869a54de515d08e6fc9c"},
]
toml = [
@@ -2425,6 +2443,10 @@ werkzeug = [
{file = "Werkzeug-2.0.2-py3-none-any.whl", hash = "sha256:63d3dc1cf60e7b7e35e97fa9861f7397283b75d765afcaefd993d6046899de8f"},
{file = "Werkzeug-2.0.2.tar.gz", hash = "sha256:aa2bb6fc8dee8d6c504c0ac1e7f5f7dc5810a9903e793b6f715a9f015bdadb9a"},
]
+wheel = [
+ {file = "wheel-0.34.2-py2.py3-none-any.whl", hash = "sha256:df277cb51e61359aba502208d680f90c0493adec6f0e848af94948778aed386e"},
+ {file = "wheel-0.34.2.tar.gz", hash = "sha256:8788e9155fe14f54164c1b9eb0a319d98ef02c160725587ad60f14ddc57b6f96"},
+]
wrapt = [
{file = "wrapt-1.13.2-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:3de7b4d3066cc610054e7aa2c005645e308df2f92be730aae3a47d42e910566a"},
{file = "wrapt-1.13.2-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:8164069f775c698d15582bf6320a4f308c50d048c1c10cf7d7a341feaccf5df7"},
diff --git a/pyproject.toml b/pyproject.toml
index 560cb47..70bf1b9 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -18,12 +18,16 @@ crossbar = "^21.3.1"
environs = "^9.3.4"
buildbot-worker = "2.8.4"
-[tool.poetry.dev-dependencies]
+[tool.poetry.group.dev.dependencies]
+isort = "^5.11.4"
pylint = "*"
black = "*"
mypy = "*"
ipdb = "*"
+[tool.isort]
+profile = "black"
+
[build-system]
requires = ["poetry>=0.12"]
build-backend = "poetry.masonry.api"
More information about the Scummvm-git-logs
mailing list