[tool.poetry] name = "jrnl" version = "v3.0-beta" description = "Collect your thoughts and notes without leaving the command line." authors = [ "jrnl contributors ", "Manuel Ebert ", "Jonathan Wren ", "Micah Ellison " ] maintainers = [ "Jonathan Wren and Micah Ellison ", ] license = "GPL-3.0-only" readme = "README.md" homepage = "https://jrnl.sh" repository = "https://github.com/jrnl-org/jrnl" classifiers = [ "Topic :: Office/Business :: News/Diary", "Environment :: Console", "Operating System :: OS Independent" ] [tool.poetry.urls] "Documentation" = "https://jrnl.sh" "Issue Tracker" = "https://github.com/jrnl-org/jrnl/issues" "Funding" = "https://opencollective.com/jrnl" [tool.poetry.dependencies] python = ">=3.9.0, <3.12" ansiwrap = "^0.8.4" colorama = ">=0.4" # https://github.com/tartley/colorama/blob/master/CHANGELOG.rst cryptography = ">=3.0" # https://cryptography.io/en/latest/api-stability.html keyring = ">=21.0" # https://github.com/jaraco/keyring#integration parsedatetime = ">=2.6" python-dateutil = "^2.8" # https://github.com/dateutil/dateutil/blob/master/RELEASING pyxdg = ">=0.27.0" "ruamel.yaml" = "^0.17.21" rich = "^12.2.0" # dayone-only deps pytz = ">=2020" # https://pythonhosted.org/pytz/#issues-limitations tzlocal = ">2.0, <3.0" # https://github.com/regebro/tzlocal/blob/master/CHANGES.txt [tool.poetry.dev-dependencies] mkdocs = ">=1.0,<1.3" black = { version = ">=21.5b2", allow-prereleases = true } toml = ">=0.10" pytest = ">=6.2" pytest-bdd = ">=4.0.1" ipdb = "*" poethepoet = "*" pytest-clarity = "*" pyproject-flake8 = "*" yq = "*" tox = "*" [tool.poetry.extras] testing = [ "pytest", "pytest-bdd", "toml" ] [tool.poetry.scripts] jrnl = 'jrnl.cli:cli' [tool.poe.tasks] format = "black ." format-check = "black --check --diff ." format-version = "black --version" style-check = "pflake8 jrnl tests" style-version = "pflake8 --version" docs = "mkdocs serve" test-unit = "tox -q -e unit --" test-bdd = "tox -q -e bdd --" test-all = "tox -e py --" installer-check = "poetry check" installer-version = "poetry --version" # Groups of tasks lint = [ "installer-check", "style-check", "format-check", ] test = [ "lint", "test-unit", "test-bdd", ] ci-lint = [ "installer-version", "installer-check", "style-version", "style-check", "format-version", "format-check", ] ci-test = [ "test-all", ] [tool.isort] multi_line_output = 7 force_single_line = true line_length = 88 known_first_party = ["jrnl"] force_sort_within_sections = true [tool.pytest.ini_options] minversion = "6.0" required_plugins = [ "pytest-bdd" ] markers = [ "todo", "skip_win", "skip_posix", "on_win", "on_posix", ] addopts = [ "--pdbcls=IPython.terminal.debugger:Pdb" ] filterwarnings = [ "ignore::DeprecationWarning", "ignore:Flag style will be deprecated in.*", "ignore:[WinError 32].*", "ignore:[WinError 5].*" ] [tool.flake8] # ignore formatting warnings and errors because we use Black to autoformat extend-ignore = "E101,E111,E114,E115,E116,E117,E12,E13,E2,E3,E401,E5,E70,W1,W2,W3,W5" [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" [tool.tox] # see: https://tox.wiki/en/latest/example/basic.html legacy_tox_ini = """ [tox] envlist = py-{unit,bdd} isolated_build = True [testenv] deps = pytest >= 6.2 pytest-bdd >=4.0.1 toml >=0.10 commands = pytest --junitxml=reports/pytest/results.xml {posargs} passenv = HOME [testenv:unit] commands = pytest tests/unit {posargs} [testenv:bdd] commands = pytest tests/bdd --gherkin-terminal-reporter --tb=native {posargs} """