You're Invited:Meet the Socket Team at RSAC and BSidesSF 2026, March 23–26.RSVP
Socket
Book a DemoSign in
Socket

clustercron

Package Overview
Dependencies
Maintainers
1
Versions
42
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

clustercron - pypi Package Compare versions

Comparing version
0.6.12
to
0.6.14
+7
src/clustercron/etc/clustercron.ini
; clustercron.ini
; vim: ai et sts=4 ts=4 sw=4 fenc=UTF-8 ft=dosini
[Cache]
filename = /tmp/clustercron_cache.json
expire_time = 59
max_iter = 20
# clustercron/version.py
# vim: ai et ts=4 sw=4 sts=4 ft=python fileencoding=utf-8
def get_version():
version = None
try:
from importlib.metadata import PackageNotFoundError, version
except ImportError:
from pkg_resources import DistributionNotFound, get_distribution
try:
version = get_distribution("clustercron").version
except DistributionNotFound:
pass
else:
try:
version = version("clustercron")
except PackageNotFoundError:
pass
return version
+24
-0

@@ -61,1 +61,25 @@ ---

verbose: True
install-dev:
strategy:
matrix:
os:
- ubuntu-latest
- windows-latest
- macos-latest
name: Verify dev env
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Install dev deps in dev mode.
run: python -m pip install -e '.[dev]'
- name: Import package
run: python -c 'import clustercron'

@@ -0,1 +1,34 @@

# Created by https://www.toptal.com/developers/gitignore/api/python,macos
# Edit at https://www.toptal.com/developers/gitignore?templates=python,macos
### macOS ###
# General
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
### Python ###
# Byte-compiled / optimized / DLL files

@@ -139,1 +172,3 @@ __pycache__/

cython_debug/
# End of https://www.toptal.com/developers/gitignore/api/python,macos

@@ -7,2 +7,14 @@ .. :changelog:

0.6.14 (2021-09-12)
-------------------
* setuptools_scm (no more bumpversion).
0.6.13 (2021-09-10)
-------------------
* More dev env stuff: removed requirements files, all deps in `setup.cfg` now.
0.6.12 (2021-09-10)

@@ -9,0 +21,0 @@ -------------------

+35
-24

@@ -27,2 +27,4 @@ # Makefile

PACKAGE = clustercron
.PHONY: help

@@ -33,9 +35,11 @@ help:

.PHONY: clean
clean: clean-build clean-pyc clean-test clean-docs ## Remove all build, test, coverage, docs and Python artifacts
clean: ## Remove untracked files from the working tree (using `git clean`)
git clean --force -x -d
.PHONY: clean-build
clean-build: ## Remove build artifacts.
rm -fr dist/
rm -fr .eggs/
find . -name '*.egg-info' -exec rm -fr {} +
rm -rf build/
rm -rf dist/
rm -rf .eggs/
find . -name '*.egg-info' -exec rm -rf {} +
find . -name '*.egg' -exec rm -f {} +

@@ -48,9 +52,12 @@

find . -name '*~' -exec rm -f {} +
find . -name '__pycache__' -exec rm -fr {} +
find . -name '__pycache__' -exec rm -rf {} +
.PHONY: clean-test
clean-test: ## Remove test and coverage artifacts.
rm -fr .tox/
rm -f .coverage
rm -fr htmlcov/
rm -f coverage.xml
rm -rf .pytest_cache
rm -rf .tox/
rm -f .coverage
rm -rf htmlcov/

@@ -62,17 +69,17 @@ .PHONY: clean-docs

.PHONY: lint
lint: ## Check style with flake8.
tox -e lint
lint: ## Run all pre-commit hooks on all files
pre-commit run --all-files --show-diff-on-failure
.PHONY: test
test: ## Run tests quickly with the default Python.
pytest
pytest --cov=$(PACKAGE)
.PHONY: test-all
test-all: ## Run tests on every Python version with tox.
.PHONY: tox
tox: ## Run tests on every Python version with tox.
tox
.PHONY: coverage
coverage: ## Check code coverage quickly with the default Python.
coverage: clean-test ## Check code coverage quickly with the default Python.
coverage erase
coverage run --source clustercron -m pytest
coverage run --source $(PACKAGE) -m pytest
coverage report -m

@@ -84,19 +91,23 @@ coverage html

docs: clean-docs ## Generate Sphinx HTML documentation, including API docs.
rm -f docs/clustercron.rst
rm -f docs/$(PACKAGE).rst
rm -f docs/modules.rst
sphinx-apidoc -o docs/ src/clustercron
sphinx-apidoc -o docs/ src/$(PACKAGE)
$(MAKE) -C docs html
$(BROWSER) docs/_build/html/index.html
.PHONY: servedocs
servedocs: docs ## Compile the docs watching for changes.
watchmedo shell-command -p '*.rst' -c '$(MAKE) -C docs html' -R -D .
.PHONY: release
release: clean test build ## Package and upload a release.
.PHONY: upload
upload: ## Upload package to Python Package Index (PyPI).
twine upload dist/*
.PHONY: build
build: clean-build ## Builds source and wheel package.
build: clean ## Builds source and wheel package.
python -m build
ls -l dist
python -m twine check --strict dist/*
.PHONY: devenv
devenv: ## Install package development mode + dependencies.
pip install -U pip wheel setuptools
pip install -e ".[dev]"
.PHONY: release
release: clean tox build upload ## Release package: test, build and upload to PyPI.
Metadata-Version: 2.1
Name: clustercron
Version: 0.6.12
Version: 0.6.14
Summary: Cron job wrapper that ensures a script gets run from one node in the cluster.

@@ -27,2 +27,5 @@ Home-page: https://github.com/maartenq/clustercron

Description-Content-Type: text/x-rst
Provides-Extra: dev
Provides-Extra: docs
Provides-Extra: test
License-File: LICENSE.txt

@@ -34,3 +37,3 @@

|pypi| |docs| |pre-commit| |workflow-ci|
|pypi| |docs| |pre-commit| |workflow-ci| |codecov|

@@ -70,2 +73,6 @@ **Clustercron** is cronjob wrapper that tries to ensure that a script gets run

.. |codecov| image:: https://codecov.io/gh/maartenq/clustercron/branch/master/graph/badge.svg?token=O0YWMFHJBG
:alt: Codecov
:target: https://codecov.io/gh/maartenq/clustercron
# pyproject.toml
[build-system]
requires = [
"setuptools>=42",
"wheel"
]
requires = ["setuptools>=44", "wheel", "setuptools_scm>=5.0.2"]
build-backend = "setuptools.build_meta"

@@ -13,1 +10,6 @@

skip-string-normalization = true
[tool.isort]
profile = "black"
[tool.setuptools_scm]

@@ -5,3 +5,3 @@ ===========

|pypi| |docs| |pre-commit| |workflow-ci|
|pypi| |docs| |pre-commit| |workflow-ci| |codecov|

@@ -40,1 +40,5 @@ **Clustercron** is cronjob wrapper that tries to ensure that a script gets run

:target: https://github.com/maartenq/clustercron/actions?workflow=ci
.. |codecov| image:: https://codecov.io/gh/maartenq/clustercron/branch/master/graph/badge.svg?token=O0YWMFHJBG
:alt: Codecov
:target: https://codecov.io/gh/maartenq/clustercron
[metadata]
name = clustercron
version = 0.6.12
description = Cron job wrapper that ensures a script gets run from one node in the cluster.

@@ -29,2 +28,3 @@ long_description = file: README.rst

Changelog = https://github.com/maartenq/clustercron/blob/main/HISTORY.rst
use_scm_version = True,

@@ -43,7 +43,2 @@ [options]

test_suite = tests
tests_require =
pytest
pytest-cov
responses
tox
zip_safe = False

@@ -58,2 +53,23 @@

[options.extras_require]
dev =
Sphinx
black
build
flake8
pre-commit
pytest
pytest-cov
responses
sphinx-rtd-theme
tox
twine
docs =
Sphinx
sphinx-rtd-theme
test =
pytest
pytest-cov
responses
[bdist_wheel]

@@ -60,0 +76,0 @@ universal = 1

Metadata-Version: 2.1
Name: clustercron
Version: 0.6.12
Version: 0.6.14
Summary: Cron job wrapper that ensures a script gets run from one node in the cluster.

@@ -27,2 +27,5 @@ Home-page: https://github.com/maartenq/clustercron

Description-Content-Type: text/x-rst
Provides-Extra: dev
Provides-Extra: docs
Provides-Extra: test
License-File: LICENSE.txt

@@ -34,3 +37,3 @@

|pypi| |docs| |pre-commit| |workflow-ci|
|pypi| |docs| |pre-commit| |workflow-ci| |codecov|

@@ -70,2 +73,6 @@ **Clustercron** is cronjob wrapper that tries to ensure that a script gets run

.. |codecov| image:: https://codecov.io/gh/maartenq/clustercron/branch/master/graph/badge.svg?token=O0YWMFHJBG
:alt: Codecov
:target: https://codecov.io/gh/maartenq/clustercron
boto
boto3
[dev]
Sphinx
black
build
flake8
pre-commit
pytest
pytest-cov
responses
sphinx-rtd-theme
tox
twine
[docs]
Sphinx
sphinx-rtd-theme
[test]
pytest
pytest-cov
responses

@@ -1,2 +0,1 @@

.bumpversion.cfg
.editorconfig

@@ -13,7 +12,3 @@ .flake8

README.rst
clustercron.ini
pyproject.toml
requirements.txt
requirements_dev.txt
requirements_py27.txt
setup.cfg

@@ -45,2 +40,3 @@ setup.py

src/clustercron/main.py
src/clustercron/version.py
src/clustercron.egg-info/PKG-INFO

@@ -53,3 +49,4 @@ src/clustercron.egg-info/SOURCES.txt

src/clustercron.egg-info/top_level.txt
src/clustercron/etc/clustercron.ini
tests/__init__.py
tests/test_main.py

@@ -6,2 +6,1 @@ # -*- coding: utf-8 -*-

__email__ = 'ikmaarten@gmail.com'
__version__ = '0.6.12'

@@ -20,3 +20,4 @@ # clustercron/clustercron.py

from . import __version__, cache, config
from . import cache, config
from .version import get_version

@@ -198,3 +199,3 @@ # general libary logging

if optarg.args['version']:
print(__version__)
print(get_version())
exitcode = 2

@@ -201,0 +202,0 @@ elif optarg.args['lb_type'] and optarg.args['name']:

@@ -12,5 +12,4 @@ [tox]

BOTO_CONFIG = /dev/null
deps =
pytest
pytest-cov
extras =
test
commands =

@@ -31,5 +30,4 @@ pytest --cov=clustercron

basepython = python3.9
deps =
Sphinx
sphinx-rtd-theme
extras =
docs
changedir = docs/

@@ -46,3 +44,3 @@ commands =

python -m build
python -m twine check dist/*
python -m twine check --strict dist/*

@@ -49,0 +47,0 @@ [gh-actions]

[bumpversion]
current_version = 0.6.12
commit = True
tag = True
[bumpversion:file:setup.cfg]
[bumpversion:file:src/clustercron/__init__.py]
search = __version__ = '{current_version}'
replace = __version__ = '{new_version}'
; clustercron.ini
; vim: ai et sts=4 ts=4 sw=4 fenc=UTF-8 ft=dosini
[Cache]
filename = /tmp/clustercron_cache.json
expire_time = 59
max_iter = 20
# requirements_dev.txt
-r requirements.txt
black
build
bumpversion
coverage
flake8
pytest
pytest-cov
responses
Sphinx
sphinx-rtd-theme
tox
twine
# requirements.txt
-i https://pypi.org/simple
boto3==1.17.112
botocore==1.20.112
docutils==0.17.1
jmespath==0.10.0
python-dateutil==2.8.2
s3transfer==0.4.2
six==1.16.0
urllib3==1.26.6
# requirements.txt
-i https://pypi.org/simple
boto==2.49.0
boto3==1.18.36
docutils==0.17.1
jmespath==0.10.0
python-dateutil==2.8.2
s3transfer==0.5.0
six==1.16.0
urllib3==1.26.6