Red-DiscordBot/setup.cfg
Toby Harradine 461f56bca1
Kill Pipfile, update dependencies, and add dep bumping tools (#2806)
### Replacement for pipenv's environment setup
First of all, there's a new Make recipe for all devs and contributors on both Windows and Posix, `make setupenv`, which is kind of a replacement for `pipenv install --dev`. It creates a virtual environment in `.venv` using the inbuilt `venv` module, clearing out any existing virtual environment if needed first. Then it installs all dev dependencies using our new `dev-requirements.txt` file. `CONTRIBUTING.md` has been updated to reflect all of this.

### Dependency version bumping tool
Secondly, I've added a python script, `tools/bumpdeps.py` to help with bumping dependency versions. It has its own Make recipe too, `make bumpdeps`. This script won't work on Windows (yet). It reads the `tools/primary_deps.ini` file, which contains the primary requirements of Red and its extras with loose version specifiers, and outputs all pinned dependencies, in `setup.cfg` format. It's not a foolproof dependency resolver, it's quite simple, but it's bound to help out a lot. It'll try to give warnings if there might be a version conflict, but updating `setup.cfg` with its output and then doing `pip install -r dev-requirements.txt` will allow pip to issue warnings if something is conflicting.

So to add a new dependency, add it to `tools/primary_deps.ini` in the appropriate place, and either use `make bumpdeps` to completely update all dependencies, or simply add it to `setup.cfg` manually with its sub-dependencies, and all versions pinned.

### Sphinx 2.1.2 (docs changes)
The sphinx update brought along the ability to disable type annotations being rendered in function and method signatures, and I have gladly gone and done that. Type annotations should already be specified under the "Parameters" section, and the way sphinx renders them in function signatures makes them much harder to read.

Also, documented classes will now display what classes they inherit from.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-28 00:16:14 +10:00

124 lines
2.8 KiB
INI

[metadata]
name = Red-DiscordBot
version = attr: redbot.__version__
description = A highly customisable Discord bot
license = GPL-3.0
long_description = file: README.md
long_description_content_type = text/markdown; charset=UTF-8; variant=GFM
author = Cog-Creators
author_email = cogcreators@gmail.com
url = https://github.com/Cog-Creators/Red-DiscordBot
classifiers =
# List at https://pypi.org/pypi?%3Aaction=list_classifiers
Development Status :: 5 - Production/Stable
Framework :: AsyncIO
Framework :: Pytest
Intended Audience :: Developers
Intended Audience :: End Users/Desktop
License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Natural Language :: English
Operating System :: OS Independent
Programming Language :: Python :: 3.7
Topic :: Communications :: Chat
Topic :: Documentation :: Sphinx
[options]
packages = find_namespace:
python_requires = >=3.7
install_requires =
aiohttp==3.5.4
aiohttp-json-rpc==0.12.1
appdirs==1.4.3
async-timeout==3.0.1
attrs==19.1.0
chardet==3.0.4
Click==7.0
colorama==0.4.1
contextlib2==0.5.5
discord.py==1.2.3
distro==1.4.0; sys_platform == "linux"
fuzzywuzzy==0.17.0
idna==2.8
multidict==4.5.2
python-Levenshtein-wheels==0.13.1
PyYAML==5.1.1
Red-Lavalink==0.3.0
schema==0.7.0
tqdm==4.32.2
websockets==6.0
yarl==1.3.0
[options.extras_require]
docs =
alabaster==0.7.12
Babel==2.7.0
certifi==2019.6.16
docutils==0.14
imagesize==1.1.0
Jinja2==2.10.1
MarkupSafe==1.1.1
packaging==19.0
Pygments==2.4.2
pyparsing==2.4.0
pytz==2019.1
requests==2.22.0
six==1.12.0
snowballstemmer==1.2.1
Sphinx==2.1.2
sphinx-rtd-theme==0.4.3
sphinxcontrib-applehelp==1.0.1
sphinxcontrib-devhelp==1.0.1
sphinxcontrib-htmlhelp==1.0.2
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==1.0.2
sphinxcontrib-serializinghtml==1.1.3
sphinxcontrib-trio==1.1.0
urllib3==1.25.3
mongo =
dnspython==1.16.0
motor==2.0.0
pymongo==3.8.0
style =
black==19.3b0
toml==0.10.0
test =
astroid==2.2.5
atomicwrites==1.3.0
importlib-metadata==0.18
isort==4.3.21
lazy-object-proxy==1.4.1
mccabe==0.6.1
more-itertools==7.0.0
packaging==19.0
pluggy==0.12.0
py==1.8.0
pylint==2.3.1
pyparsing==2.4.0
pytest==4.6.3
pytest-asyncio==0.10.0
six==1.12.0
typed-ast==1.4.0
wcwidth==0.1.7
wrapt==1.11.2
zipp==0.5.1
[options.entry_points]
console_scripts =
redbot=redbot.__main__:main
redbot-setup=redbot.setup:cli
redbot-launcher=redbot.launcher:main
pytest11 =
red-discordbot=redbot.pytest
[options.packages.find]
include =
redbot
redbot.*
[options.package_data]
* =
locales/*.po
**/locales/*.po
data/*
data/**/*