| # |
| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. |
| # The ASF licenses this file to You under the Apache License, Version 2.0 |
| # (the "License"); you may not use this file except in compliance with |
| # the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| [tool.poetry] |
| name = "flagon-distill" |
| version = "0.1.0" |
| description = "An analytics framework for front-end UserALE data, enabling modeling, sequence analysis, and customization in Python." |
| authors = [] |
| license = "Apache-2.0" |
| readme = "README.rst" |
| documentation = "http://flagon.incubator.apache.org/distill/" |
| packages = [{ include = "distill" }] |
| classifiers = [ |
| 'Development Status :: 4 - Beta', |
| 'Intended Audience :: Developers', |
| 'Intended Audience :: Science/Research', |
| 'License :: OSI Approved :: Apache Software License', |
| 'Natural Language :: English', |
| 'Operating System :: OS Independent', |
| 'Programming Language :: Python', |
| 'Programming Language :: Python :: 3.8', |
| 'Environment :: Web Environment', |
| 'Framework :: Flask', |
| 'Topic :: Internet :: Log Analysis', |
| ] |
| |
| |
| # |
| # Dependencies |
| # |
| [tool.poetry.dependencies] |
| python = ">=3.8,<4.0" |
| networkx = "^2.5" |
| pandas = "^1.2.4" |
| plotly = "^5.5.0" |
| |
| [tool.poetry.group.docs] |
| optional = true |
| |
| [tool.poetry.group.docs.dependencies] |
| sphinx = "^4.5.0" |
| sphinx-rtd-theme = "^0.5.2" |
| |
| |
| [tool.poetry.group.test.dependencies] |
| pytest = "^6.2.3" |
| pytest-cov = "^4.0.0" |
| pytest-dotenv = "^0.5.2" |
| pytest-mock = "^3.10.0" |
| |
| [tool.poetry.group.codespell.dependencies] |
| codespell = "^2.2.0" |
| |
| [tool.poetry.group.lint.dependencies] |
| ruff = "^0.0.249" |
| types-toml = "^0.10.8.1" |
| black = "^23.1.0" |
| |
| [tool.poetry.group.typing.dependencies] |
| mypy = "^0.991" |
| types-pyyaml = "^6.0.12.2" |
| pandas-stubs = "^2.0.3.230814" |
| networkx-stubs = "^0.0.1" |
| |
| [tool.poetry.group.dev] |
| optional = true |
| |
| [tool.poetry.group.dev.dependencies] |
| setuptools = "^67.6.1" |
| pre-commit = "^3.3.3" |
| |
| |
| # |
| # Changelog, versioning, and commit management |
| # |
| [tool.commitizen] |
| name = "cz_conventional_commits" |
| tag_format = "v$version" |
| version_scheme = "semver" |
| version_provider = "poetry" |
| update_changelog_on_bump = true |
| major_version_zero = true |
| version = "0.1.0" |
| gpg_sign = true |
| version_files = ["pyproject.toml:version", "distill/__version__.py"] |
| |
| |
| # |
| # Scripts |
| # |
| [tool.poetry.scripts] |
| dev = "distill.server:dev_server" |
| |
| # |
| # Linting & Formatting |
| # |
| [tool.ruff] |
| select = [ |
| "E", # pycodestyle |
| "F", # pyflakes |
| "I", # isort |
| ] |
| exclude = ["tests/data/", ".github/", "docs/", "examples/"] |
| |
| [tool.black] |
| line-length = 88 |
| preview = true |
| |
| [tool.mypy] |
| ignore_missing_imports = "False" |
| disallow_untyped_defs = "False" |
| exclude = ["tests/data/", ".github/", "docs/", "examples/", "Dashboard"] |
| [[tool.mypy.overrides]] |
| module = "plotly." |
| ignore_errors = true |
| |
| # |
| # Testing |
| # |
| [tool.coverage.run] |
| omit = ["tests/*", "Dashboard/*", "docs/*", "examples/*"] |
| |
| [tool.pytest.ini_options] |
| # --strict-markers will raise errors on unknown marks. |
| # https://docs.pytest.org/en/7.1.x/how-to/mark.html#raising-errors-on-unknown-marks |
| # |
| # https://docs.pytest.org/en/7.1.x/reference/reference.html |
| # --strict-config any warnings encountered while parsing the `pytest` |
| # section of the configuration file raise errors. |
| # |
| # https://github.com/tophat/syrupy |
| # --snapshot-warn-unused Prints a warning on unused snapshots rather than fail the test suite. |
| addopts = "-s --strict-markers --ignore=build --ignore=dist --ignore=docs --junitxml=test-report.xml" |
| norecursedirs = "docs docker example build *.eggs *env* .git" |
| testpaths = "tests distill" |
| markers = [ |
| "unit: Unit tests are fast and only test a single module.", |
| "pylint: Run linter", |
| "integration: Integration tests integrate several modules or integrate with the OS.", |
| "interactive: Interactive tests require interaction with the user to complete.", |
| "requires_user_action: Test cannot run without user interaction.", |
| "requires_user_validation: Test cannot validate without user interaction, but can run for sanity.", |
| "only_interactive: This test can only be run in interactive mode.", |
| ] |
| |
| |
| [build-system] |
| requires = ["poetry-core"] |
| build-backend = "poetry.core.masonry.api" |