Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,14 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [26.8.1]

### Fixed

- Updated the T1 Inventory Findings module to appropriately handle the passed attributes #1019
- Corrected the comparison type mismatch in the scrub utility. #1018
- Updated dependencies #1011, #1012, #1017 in lockfile.

## [26.6.1]

### Fixed
Expand Down
191 changes: 88 additions & 103 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,106 +1,95 @@
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"

requires = ["setuptools"]
build-backend = "setuptools.build_meta"

[project]
requires-python = ">=3.11"
dynamic = ["version"]
readme = "README.rst"
name = "pyTenable"
description = "Python library to interface into Tenable's products and applications"
authors = [
{name = "Tenable, Inc."},
{name = "Steve McGrath", email = "smcgrath@tenable.com"}
dynamic = ["version"]
readme = "README.rst"
name = "pyTenable"
description = "Python library to interface into Tenable's products and applications"
authors = [
{ name = "Tenable, Inc." },
{ name = "Steve McGrath", email = "smcgrath@tenable.com" }
]
license = {text = "MIT License"}
keywords = [
"tenable",
"tenable vulnerability management",
"tenable security center",
"tenable securitycenter",
"tenable.io",
"tenable.sc",
"tenable.cs",
"tenable cloud security",
"tenable container security",
"tenable.ot",
"tenable ot security",
"tenable one",
"tenable cloud",
license = { text = "MIT License" }
keywords = [
"tenable",
"tenable vulnerability management",
"tenable security center",
"tenable securitycenter",
"tenable.io",
"tenable.sc",
"tenable.cs",
"tenable cloud security",
"tenable container security",
"tenable.ot",
"tenable ot security",
"tenable one",
"tenable cloud",
]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Topic :: Software Development",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Application Frameworks",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",

classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Topic :: Software Development",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Application Frameworks",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
dependencies = [
"requests>=2.33",
"python-dateutil>=2.6",
"semver>=2.10.0",
"marshmallow>=3.8",
"python-box>=4.0",
"defusedxml>=0.5.0",
"urllib3>=1.26.20",
"typing-extensions>=4.0.1",
"requests-toolbelt>=1.0.0",
"gql>=4.0.0",
"graphql-core>=3.2.6",
"pydantic>=2.5.3",
"pydantic-extra-types>=2.3.0",
"arrow>=1.4.0",
dependencies = [
"requests>=2.33",
"python-dateutil>=2.6",
"semver>=2.10.0",
"marshmallow>=3.8",
"python-box>=4.0",
"defusedxml>=0.5.0",
"urllib3>=1.26.20",
"typing-extensions>=4.0.1",
"requests-toolbelt>=1.0.0",
"gql>=4.0.0",
"graphql-core>=3.2.6",
"pydantic>=2.5.3",
"pydantic-extra-types>=2.3.0",
"arrow>=1.4.0",
]


[project.optional-dependencies]
pkcs12 = ["cryptography>=43.0.1"]
all = ["pytenable[pkcs12]"]

pkcs12 = ["cryptography>=43.0.1"]
all = ["pytenable[pkcs12]"]

[project.urls]
Homepage = "https://pytenable.readthedocs.io"
Repository = "https://github.com/tenable/pytenable"
Issues = "https://github.com/tenable/pytenable/issues"
Changelog = "https://github.com/tenable/pytenable/blob/master/CHANGELOG.md"

Homepage = "https://pytenable.readthedocs.io"
Repository = "https://github.com/tenable/pytenable"
Issues = "https://github.com/tenable/pytenable/issues"
Changelog = "https://github.com/tenable/pytenable/blob/master/CHANGELOG.md"

[tool.setuptools.dynamic]
version = {attr = "tenable.version.version"}

version = { attr = "tenable.version.version" }

[tool.setuptools.packages.find]
include = ["tenable*"]

include = ["tenable*"]

[tool.setuptools.package-data]
"tenable.cloudsecurity.queries" = ["*.graphql"]


[tool.ruff]
line-length = 88
indent-width = 4
exclude = [
".nova",
".github",
".git",
".pytest_cache",
"__pycache__"
]

exclude = [".nova", ".github", ".git", ".pytest_cache", "__pycache__"]

[tool.ruff.lint]
select = ["E4", "E7", "E9", "F", "B"]
fixable = [ "ALL" ]
unfixable = [ "B" ]
fixable = ["ALL"]
unfixable = ["B"]

[tool.ruff.lint.per-file-ignores]
"__init__.py" = ["E402", "F401"]
"tenable/vm.py" = ["F401"]
"**/{tests,docs,tools}/*" = ["E402"]

[tool.ruff.format]
quote-style = "single"
Expand All @@ -110,40 +99,36 @@ line-ending = "lf"
docstring-code-format = false
docstring-code-line-length = "dynamic"


[tool.ruff.lint.per-file-ignores]
"__init__.py" = ["E402", "F401"]
"tenable/vm.py" = ["F401"]
"**/{tests,docs,tools}/*" = ["E402"]

[tool.bandit]
exclude_dirs = [".venv", "tests"]

[tool.pytest.ini_options]
addopts = "--cov-report term-missing:skip-covered --cov=tenable"
testpaths = ['tests']
addopts = "--cov-report term-missing:skip-covered --cov=tenable"
testpaths = ["tests"]
filterwarnings = [
"ignore::DeprecationWarning:tenable.*",
"ignore:::tenable",
"ignore::DeprecationWarning:tenable.*",
"ignore:::tenable",
]

[dependency-groups]
docs = [
"autodoc-pydantic>=2.2.0",
"furo==2024.5.6",
"sphinx-argparse>=0.5.2",
"autodoc-pydantic>=2.2.0",
"furo==2024.5.6",
"sphinx-argparse>=0.5.2",
]
dev = [
"bpython>=0.24",
"mock>=5.1.0",
"pytest-cov>=4.1.0",
"pytest-datafiles>=3.0.0",
"pytest>=8,<9",
"responses>=0.23.3",
"ruff>=0.6.4",
"rich>=13.8.1",
"urllib3>=1.26.18,<2", # Required until VCR is no longer needed.
"ptpython>=3.0.29",
"typer>=0.20.0",
"mypy>=1.18.2",
"rust-just>=1.51.0",
"pytest-vcr>=1.0.2",
"bpython>=0.24",
"mock>=5.1.0",
"pytest-cov>=4.1.0",
"pytest-datafiles>=3.0.0",
"pytest>=8,<9",
"responses>=0.23.3",
"ruff>=0.6.4",
"rich>=13.8.1",
"urllib3>=1.26.18,<2", # Required until VCR is no longer needed.
"ptpython>=3.0.29",
"typer>=0.20.0",
"mypy>=1.18.2",
"rust-just>=1.51.0",
"pytest-vcr>=1.0.2",
]
2 changes: 1 addition & 1 deletion tenable/version.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
version = '26.6.1'
version = '26.8.1'
version_info = tuple(int(d) for d in version.split('-')[0].split('.'))
Loading
Loading