###
 # Package index source declarations.
 # Where to get python packages from.
 ##
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"


###
 # General packages, installed via `pipenv sync`.
 ##
[packages]
django = "*"                    # Core Django package.


###
 # Development and testing packages, installed via `pipenv sync --dev`.
 ##
[dev-packages]
# Syntax formatting and checking dependencies.
black="*"                       # "Uncompromising" Python code formatter.
pylint = "*"                    # Linter for Python syntax. Must be run in console via "pylint" command.
pylint-django = "*"             # Improves code analysis for Django projects.

# Testing/Pytest dependencies.
colorama = "*"                  # Console coloring package. Used for additional functionality in below ETC package.
coverage = "*"                  # Outputs testing coverage data.
coverage_enable_subprocess = "*"    # Required to run coverage in pytest while muti-threaded.
django-expanded-test-cases = "*"    # Utilities for easier testing.
pytest = "*"                    # Base Pytest package. Current preferred testing method.
pytest-cov = "*"                # Additional Pytest logic for multithreaded coverage support.
pytest-django = "*"             # Additional Pytest logic for Django support.
pytest-subtests = "*"           # Additional Pytest logic for SubTest support.
pytest-xdist = "*"              # Additional Pytest features, such as multithreading and looping.

# Docs build dependencies.
sphinx = "*"                    # Core package to build project docs.
sphinx-autobuild = "*"          # Additional Sphinx logic to autobuild from project code documentation.
sphinx-rtd-theme = "*"          # Additional Sphinx logic for building with standard ReadTheDocs theme.

# Docs syntax-checking dependencies.
doc8="*"                        # Checks reStructuredText (aka Sphinx) syntax.
rstcheck = "~=3.5.0"            # Checks reStructuredText (aka Sphinx) syntax.

# Project pypi dependencies.
flit = "*"                        # Simple way to build and put Python packages on PyPI.
twine = "*"                       # For pushing/publishing packages.
