API reference¶
neophile Package¶
The neophile service.
Variables¶
__version__ |
The application version string (PEP 440 / SemVer compatible). |
neophile.analysis.base Module¶
Base class for an analysis step.
Classes¶
BaseAnalyzer |
Base class for an analysis step. |
neophile.analysis.helm Module¶
Analysis of a repository for needed Helm updates.
Classes¶
HelmAnalyzer (scanner, inventory, *, …) |
Analyze a tree for needed Helm updates. |
neophile.analysis.kustomize Module¶
Analysis of a repository for needed Kustomize updates.
Classes¶
KustomizeAnalyzer (scanner, inventory) |
Analyze a tree for needed Kustomize updates. |
neophile.analysis.pre_commit Module¶
Analysis of a repository for needed pre-commit hook updates.
Classes¶
PreCommitAnalyzer (scanner, inventory) |
Analyze a tree for needed pre-commit hook updates. |
neophile.analysis.python Module¶
Analysis of a repository for needed Python updates.
Classes¶
PythonAnalyzer (root, virtualenv) |
Analyze a tree for needed Python frozen dependency updates. |
neophile.cli Module¶
Command-line interface.
neophile.config Module¶
Configuration for neophile.
Classes¶
Configuration |
Configuration for neophile. |
neophile.dependency.base Module¶
Base class for dependency information.
Classes¶
Dependency (path) |
Base class for a dependency returned by a scanner. |
neophile.dependency.helm Module¶
A Helm chart dependency.
Classes¶
HelmDependency (path, version, name, repository) |
Represents a single Helm dependency. |
neophile.dependency.kustomize Module¶
A Kustomize external dependency.
Classes¶
KustomizeDependency (path, url, owner, repo, …) |
Represents a single Kustomize dependency. |
neophile.dependency.pre_commit Module¶
A pre-commit hook dependency.
Classes¶
PreCommitDependency (path, repository, owner, …) |
Represents a single pre-commit dependency. |
neophile.exceptions Module¶
Exceptions for neophile.
Classes¶
DependencyNotFoundError |
The specified dependency was not found to update. |
PushError |
Pushing a branch to GitHub failed. |
UncommittedChangesError |
The repository contains uncommitted changes. |
neophile.factory Module¶
Factory for neophile components.
neophile.inventory.github Module¶
Inventory of available GitHub tags.
Classes¶
GitHubInventory (config, session) |
Inventory available tags of a GitHub repository. |
neophile.inventory.helm Module¶
Inventory of available Helm chart versions.
Classes¶
CachedHelmInventory (session, cache_path) |
Cache the inventory of versions from a Helm repository. |
HelmInventory (session) |
Inventory the versions available from a Helm repository. |
neophile.inventory.version Module¶
Version representation for inventories.
Notes
This is a bit more complicated than it should have to be to work around https://github.com/python/mypy/issues/5374. The mixins avoid the conflict between an abstract base class and a dataclass in mypy’s understanding of the Python type system.
Classes¶
MethodMixin |
Abstract methods for versions. |
PackagingVersion (parsed_version, Version], …) |
Represents a version string using packaging.version.Version . |
ParsedVersion () |
Abstract base class for versions. |
SemanticVersion (parsed_version, version) |
Represents a semantic version string. |
VersionMixin () |
Abstract dataclass for versions. |
neophile.pr Module¶
Construct a GitHub PR for a set of changes.
Classes¶
CommitMessage (changes, title) |
A Git commit message. |
PullRequester (path, config, session) |
Create GitHub pull requests. |
neophile.processor Module¶
Process a set of repositories for updates.
neophile.repository Module¶
Wrapper around a Git repository.
Classes¶
Repository (path) |
Wrapper around a Git repository to add some convenience functions. |
neophile.scanner.base Module¶
Base class for dependency scanners.
Classes¶
BaseScanner |
Base class for dependency scanners. |
neophile.scanner.helm Module¶
Helm dependency scanning.
Classes¶
HelmScanner (root) |
Scan a source tree for Helm version references. |
neophile.scanner.kustomize Module¶
Kustomize dependency scanning.
Classes¶
KustomizeScanner (root) |
Scan a source tree for Kustomize version references. |
neophile.scanner.pre_commit Module¶
pre-commit hook dependency scanning.
Classes¶
PreCommitScanner (root) |
Scan a source tree for pre-commit hook version references. |
neophile.scanner.util Module¶
Utilities for dependency scanning.
Functions¶
find_files (root, wanted_names) |
Scan a tree of files for files of a given set of names. |
neophile.update.base Module¶
Base class for dependency updates.
Notes
This is a bit more complicated than it should have to be to work around https://github.com/python/mypy/issues/5374. The mixins avoid the conflict between an abstract base class and a dataclass in mypy’s understanding of the Python type system.
Classes¶
MethodMixin |
Add the abstract methods for an update. |
Update (path, applied) |
Base class for a needed dependency version update. |
UpdateMixin (path, applied) |
Add the base data elements for Update . |
neophile.update.helm Module¶
Helm dependency update.
Classes¶
HelmUpdate (path, applied, name, current, latest) |
An update to a Helm chart dependency. |
neophile.update.kustomize Module¶
Kustomize dependency update.
Classes¶
KustomizeUpdate (path, applied, url, owner, …) |
An update to a Helm chart dependency. |
neophile.update.pre_commit Module¶
pre-commit dependency update.
Classes¶
PreCommitUpdate (path, applied, repository, …) |
An update to a Helm chart dependency. |
neophile.update.python Module¶
Python frozen dependency update.
Classes¶
PythonFrozenUpdate (path, applied, virtualenv) |
An update to Python frozen dependencies. |
neophile.virtualenv Module¶
Virtual environment handling.
Classes¶
VirtualEnv (path) |
Manage virtual environments. |