[build-system] requires = ["setuptools"] build-backend = "setuptools.build_meta" [project] name = "eumetsat.chartepssg" authors = [ {name = "EUMETSAT", email = "sgs_sae@eumetsat.int"}, ] description = "European Polar System Second Generation timeseries analysis tool" readme = "README.rst" requires-python = ">=3.6" keywords = ["chart", "satellite", "telemetry", "meteosat", "epssg"] # license = {file = "LICENSE.rst"} classifiers = [ "Programming Language :: Python :: 3", ] dependencies = [ "eumetsat.chart", ] dynamic = ["version"] [project.urls] homepage = "https://confluence.eumetsat.int/display/SAE/CHART+EPS-SG" repository = "https://gitlab.eumetsat.int/chart/chartepssg" [tool.setuptools] # this package will read some included files in runtime, avoid installing it as .zip # zip-safe = false packages = ["chartepssg"] [tool.pydocstyle] # D105: Missing docstring in magic method # D107: Missing docstring in __init__ # D202 : No blank lines allowed after function docstring # D213: Multi-line docstring summary should start at the second line # D203: 1 blank line required before class docstring (found 0) # D206: Spaces to indent docstrings # D407: Mising dashed underline after section ('Yields') <- pydocstyle doesn't # yet fully support Google style docstrings # D406: Section name should end with a newline <- again, incomplete Google style ignore = ["D105","D107","D213","D203","D206","D407","D406"] [tool.pytest] filterwarnings = ["ignore::DeprecationWarning"] testpaths = ["tests"] norecursedirs = ["legacy"] doctest_optionflags = ["NORMALIZE_WHITESPACE", "IGNORE_EXCEPTION_DETAIL", "NUMBER"] junit_family = ["xunit2"] # These markers are only needed for quickly running server, web or database tests # They will automatically disable themselves if the server or database information # is not given on the command line # markers =\ # webserver: Mark a test as testing a webserver by sending requests to it # webbrowser: Tests that simulate a browser # web: Combine webserver and webbrowser # database: Tests against the content of a database addopts = "--project=chartmtg" # [tool:mypy] # mypy_suppress_stub_warnings = true # [tool:coverage] # omit=/usr # source = chart # data_file = "/.coverage" # parallel = true [tool.pylint.MASTER] # see old setup.cfg and .pylintrc files from repo for older and more detailed versions # Propogate changes back to chart/pyproject.toml to apply to all CHART projects # Hide VCS files ignore = '.git' # Maximum lines in a module max-module-lines = 2000 # Always allow these variable names good-names=["i","j","k","ex","x","y","e"] [tool.pylint."MESSAGES CONTROL"] disable = ["consider-using-f-string"] [tool.pylint.REPORTS] reports = 'no' score = 'no' [tool.pylint.LOGGING] logging-modules = 'logging' [tool.pylint.SPELLING] spelling-ignore-words = '' max-spelling-suggestions = 4 spelling-private-dict-file = '' [tool.pylint.format] max-line-length = 100 indent-string = '\t' [tool.pylint.similarities] ignore-comments = 'yes' ignore-docstrings = 'yes' ignore-imports = 'no' min-similarity-lines = 4 [tool.pylint.BASIC] argument-naming-style = 'snake_case' attr-naming-style = 'snake_case' class-attribute-naming-style = 'any' class-naming-style = 'PascalCase' const-naming-style = 'UPPER_CASE' function-naming-style = 'snake_case' method-naming-style = 'snake_case' module-naming-style = 'snake_case' variable-naming-style = 'snake_case' [tool.pycodestyle] exclude = ["rdr.py", "dynatree_server.py"] max-line-length = 100 # W191: indentation contains tabs # E101: indentation contains mixed spaces and tabs # E501: line too long (fixed at 80 chars) # E225: missing whitespace around operator (too strict) # E203: whitespace before ':' (problem: raw_ints[cur.rowcount, :]) # E116: unexpected indentation (comment) # E121: indentation is not a multiple of four # E122: missing indentation or outdented # E123: closing bracket does not match indentation of opening bracket's line # E124: closing bracket does not match visual indentation # E125: continuation line does not distinguish itself from next logical line # E126: continuation line over-indented for hanging indent # E127: over-indented for visual indent # E128: continuation line under-indented for visual indent # E117: over-indented (this looks like a bug in tab detection in pycodestyle 2.5) # W504: line break after binary operator ignore = "W191,E101,E121,E122,E123,E124,E125,E126,E127,E128,E116,E117,W504" # repeat=True