[project] name = "gasflux" dynamic = ["version", "dependencies", "optional-dependencies"] description = "A package to calculate gas emissions fluxes from natural and anthropogenic sources" authors = [{ name = "Jamie McQuilkin", email = "jamie.mcquilkin@gmail.com" }] license = { text = "AGPL-3.0" } readme = "README.md" requires-python = ">=3.10" [project.scripts] gasflux = "gasflux.cli:main_cli" [project.urls] "Homepage" = "https://gasflux.github.io" "Bug Tracker" = "https://github.com/gasflux/gasflux/issues" [build-system] requires = ["setuptools>=69.0", "wheel", "setuptools-scm>=8.0"] build-backend = "setuptools.build_meta" [tool.setuptools.dynamic] version = {attr = "gasflux.__version__"} dependencies = { file = ["requirements.txt"] } optional-dependencies = { dev = { file = ["dev-requirements.txt"] } } [tool.mypy] ignore_missing_imports = true check_untyped_defs = true [tool.ruff] line-length = 120 target-version = "py311" [tool.ruff.lint] ignore = [ "G004", # G004: Logging statement uses f-string "PD901", # PD901: Using "df" as a variable name is not recommended "ISC001", # ISC001: Use of implicit string concatenation ] select = [ "A", # prevent using keywords that clobber python builtins "B", # bugbear: security warnings "E", # pycodestyle "F", # pyflakes "ISC", # implicit string concatenation "UP", # alert you when better syntax is available in your python version "RUF", # the ruff developer's own rules ] [tool.ruff.lint.pydocstyle] convention = "google" [tool.semantic_release] assets = [] commit_message = "{version}\n\nAutomatically generated by python-semantic-release" commit_parser = "angular" logging_use_named_masks = false major_on_zero = true allow_zero_version = true tag_format = "v{version}" version_variables = ["src/gasflux/__init__.py:__version__"] [tool.semantic_release.branches.main] match = "(main|master)" prerelease_token = "rc" prerelease = false [tool.semantic_release.changelog] # template_dir = "templates" changelog_file = "CHANGELOG.md" exclude_commit_patterns = ["ci", "test", "chore", "docs", "style", "refactor"] [tool.semantic_release.changelog.environment] block_start_string = "{%" block_end_string = "%}" variable_start_string = "{{" variable_end_string = "}}" comment_start_string = "{#" comment_end_string = "#}" trim_blocks = false lstrip_blocks = false newline_sequence = "\n" keep_trailing_newline = false extensions = [] autoescape = true [tool.semantic_release.commit_author] env = "GIT_COMMIT_AUTHOR" default = "semantic-release " [tool.semantic_release.commit_parser_options] allowed_tags = [ "build", "chore", "ci", "docs", "feat", "fix", "perf", "style", "refactor", "test", ] minor_tags = ["feat"] patch_tags = ["fix", "perf"] default_bump_level = 0 [tool.semantic_release.remote] name = "origin" type = "github" ignore_token_for_push = false [tool.semantic_release.remote.token] env = "GH_TOKEN" [tool.semantic_release.publish] dist_glob_patterns = ["dist/*"] upload_to_vcs_release = true