clickable


Nameclickable JSON
Version 1.8 PyPI version JSON
download
home_pagehttps://github.com/lalmeras/clickable
SummaryHelper scripts to write click applications development's environment
upload_time2023-10-27 21:27:32
maintainer
docs_urlNone
authorLaurent Almeras
requires_python>=3.6
licenseBSD license
keywords clickable
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            # clickable helper scripts

Helper scripts to write click applications development's environment


* Free software: BSD license


## Features

Clickable allows to easily write python and shell-based tools for your projects.

Clickable is based on the following building-blocks:

* a bootstrap.py standalone script that installs a conda based python environment,
  that allows to initialize an isolated python environment.
  (https://github.com/lalmeras/clickable_bootstrap)

* a bootstrap.py's post-install callback that uses poetry to install:

  * your project-related command(s)
  * by python dependencies mechanism, clickable and any optional dependencies

* clickable python library, that provides a clickables.py/clickables.yml file
  loading mechanism

* clickable extensions that provide helpers for writing sphinx, ansible, ...
  commands

Clickable is heavily based on Python, Conda, Poetry and Click projects.


## Release

Stable branch is `master`; development branch is `dev`. Usual release steps are :

```
# install dev tools and switch in pipenv
pipenv install --dev
pipenv shell

# if needed, update Pipfile.lock and commit changes
pipenv lock --clear
pipenv install --dev

# prepare dev branch for release...
# update version
# increase version; may be launch multiple time to cycle dev, rc, ...
bump2version --verbose prerel [--allow-dirty] [--no-commit] [--no-tag]

# merge on main
git checkout main
git pull
git merge dev

# prepare next development version (+1dev0)
git checkout dev
bump2version --verbose --no-tag minor

# push all (launch with --dry-run to check before actual update)
# delete (git tag -d <tag> unneeded tags - dev, rc)
git push --all
git push --tag

# publish (pypi credentials required)
git checkout tag
pipenv shell
python setup.py clean --all
rm -rf dist/*
python setup.py sdist
python setup.py bdist_wheel
# fake upload
# run pypi-server in another shell
mkdir -p /tmp/packages && pypi-server -P . -a . /tmp/packages/
twine upload  -u "" -p "" --repository-url http://localhost:8080/ dist/*.whl dist/*.tar.gz

# real upload
twine upload dist/*.whl dist/*.tar.gz
```


# 1.8 (2023-10-27)

Fix installation (cython 3.0 issue with pyyaml)

# 1.5 (2021-12-25)

Fix packaging.

# v1.4 (2021-12-24)

Publishing procedure update.

# v1.3 (2021-09-24)

Fix subprocess import in syncing module.

# v1.2 (2021-09-24)

Fix subprocess import in sphinx module.

# v1.1 (2021-08-31)

Fix virtualenv syntax issues:

```
AttributeError: 'str' object has no attribute 'decode'
```

```
Uncaught error during execution: name 'e' is not defined
```


# 1.0 (2021-08-31)

* cleaned build system
* tests reworked
* updated dependencies
* updated versioning scheme (major/minor)
* python requirement: mandatory 3.6+ (previously 2.7+)
* ruamel.yaml replaced by PyYAML


# 0.3.0 (2018-12)

* remove clickable.bootstrap module
* clickable.click use 'main' as default function when searching
  an entry-point in clickables.py
* tasks.py renamed to clickables.yml
* added an helper to load base configuration from clickables.yml
  (clickables.utils.load_config)
* python3 support


# 0.2.0 (2018-12-26)

(delayed release, used from @dev branch for 6 months)

* added clickable.bootstrap
* added helpers for sphinx commands
* added workaround for selinux and virtualenv

# 0.1.1 (2018-02-10)

* fix rsync ``options`` arg behavior


# 0.1.0 (2018-02-10)

* added rsync handler


# 0.0.3 (2017-10-17)

* correctly handle clear_env in sphinx:sphinx_script
* update cryptography, tox, sphinx, wheel


# 0.0.1 (2017-09-10)

* First release on PyPI.


# 0.0.2.dev4 (2017-09-10)

* Fixed ignored excludes in lftp_sync

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/lalmeras/clickable",
    "name": "clickable",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "clickable",
    "author": "Laurent Almeras",
    "author_email": "lalmeras@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/41/1b/172427fc467e20a748640a79af7956783353b4f118c52650ddbb4f05bf22/clickable-1.8.tar.gz",
    "platform": null,
    "description": "# clickable helper scripts\n\nHelper scripts to write click applications development's environment\n\n\n* Free software: BSD license\n\n\n## Features\n\nClickable allows to easily write python and shell-based tools for your projects.\n\nClickable is based on the following building-blocks:\n\n* a bootstrap.py standalone script that installs a conda based python environment,\n  that allows to initialize an isolated python environment.\n  (https://github.com/lalmeras/clickable_bootstrap)\n\n* a bootstrap.py's post-install callback that uses poetry to install:\n\n  * your project-related command(s)\n  * by python dependencies mechanism, clickable and any optional dependencies\n\n* clickable python library, that provides a clickables.py/clickables.yml file\n  loading mechanism\n\n* clickable extensions that provide helpers for writing sphinx, ansible, ...\n  commands\n\nClickable is heavily based on Python, Conda, Poetry and Click projects.\n\n\n## Release\n\nStable branch is `master`; development branch is `dev`. Usual release steps are :\n\n```\n# install dev tools and switch in pipenv\npipenv install --dev\npipenv shell\n\n# if needed, update Pipfile.lock and commit changes\npipenv lock --clear\npipenv install --dev\n\n# prepare dev branch for release...\n# update version\n# increase version; may be launch multiple time to cycle dev, rc, ...\nbump2version --verbose prerel [--allow-dirty] [--no-commit] [--no-tag]\n\n# merge on main\ngit checkout main\ngit pull\ngit merge dev\n\n# prepare next development version (+1dev0)\ngit checkout dev\nbump2version --verbose --no-tag minor\n\n# push all (launch with --dry-run to check before actual update)\n# delete (git tag -d <tag> unneeded tags - dev, rc)\ngit push --all\ngit push --tag\n\n# publish (pypi credentials required)\ngit checkout tag\npipenv shell\npython setup.py clean --all\nrm -rf dist/*\npython setup.py sdist\npython setup.py bdist_wheel\n# fake upload\n# run pypi-server in another shell\nmkdir -p /tmp/packages && pypi-server -P . -a . /tmp/packages/\ntwine upload  -u \"\" -p \"\" --repository-url http://localhost:8080/ dist/*.whl dist/*.tar.gz\n\n# real upload\ntwine upload dist/*.whl dist/*.tar.gz\n```\n\n\n# 1.8 (2023-10-27)\n\nFix installation (cython 3.0 issue with pyyaml)\n\n# 1.5 (2021-12-25)\n\nFix packaging.\n\n# v1.4 (2021-12-24)\n\nPublishing procedure update.\n\n# v1.3 (2021-09-24)\n\nFix subprocess import in syncing module.\n\n# v1.2 (2021-09-24)\n\nFix subprocess import in sphinx module.\n\n# v1.1 (2021-08-31)\n\nFix virtualenv syntax issues:\n\n```\nAttributeError: 'str' object has no attribute 'decode'\n```\n\n```\nUncaught error during execution: name 'e' is not defined\n```\n\n\n# 1.0 (2021-08-31)\n\n* cleaned build system\n* tests reworked\n* updated dependencies\n* updated versioning scheme (major/minor)\n* python requirement: mandatory 3.6+ (previously 2.7+)\n* ruamel.yaml replaced by PyYAML\n\n\n# 0.3.0 (2018-12)\n\n* remove clickable.bootstrap module\n* clickable.click use 'main' as default function when searching\n  an entry-point in clickables.py\n* tasks.py renamed to clickables.yml\n* added an helper to load base configuration from clickables.yml\n  (clickables.utils.load_config)\n* python3 support\n\n\n# 0.2.0 (2018-12-26)\n\n(delayed release, used from @dev branch for 6 months)\n\n* added clickable.bootstrap\n* added helpers for sphinx commands\n* added workaround for selinux and virtualenv\n\n# 0.1.1 (2018-02-10)\n\n* fix rsync ``options`` arg behavior\n\n\n# 0.1.0 (2018-02-10)\n\n* added rsync handler\n\n\n# 0.0.3 (2017-10-17)\n\n* correctly handle clear_env in sphinx:sphinx_script\n* update cryptography, tox, sphinx, wheel\n\n\n# 0.0.1 (2017-09-10)\n\n* First release on PyPI.\n\n\n# 0.0.2.dev4 (2017-09-10)\n\n* Fixed ignored excludes in lftp_sync\n",
    "bugtrack_url": null,
    "license": "BSD license",
    "summary": "Helper scripts to write click applications development's environment",
    "version": "1.8",
    "project_urls": {
        "Homepage": "https://github.com/lalmeras/clickable"
    },
    "split_keywords": [
        "clickable"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0257102cb8a5155a54e3c7951f675fc8464ffa23e74d38878a0bf588da6ade9d",
                "md5": "fd2cfe403b6653bc62f7ad61b09c41d1",
                "sha256": "4dda4e98631d1a251d6b5d28d550a730bbc4ed2d705354be641f1aa676f4833c"
            },
            "downloads": -1,
            "filename": "clickable-1.8-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fd2cfe403b6653bc62f7ad61b09c41d1",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 12734,
            "upload_time": "2023-10-27T21:27:30",
            "upload_time_iso_8601": "2023-10-27T21:27:30.494349Z",
            "url": "https://files.pythonhosted.org/packages/02/57/102cb8a5155a54e3c7951f675fc8464ffa23e74d38878a0bf588da6ade9d/clickable-1.8-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "411b172427fc467e20a748640a79af7956783353b4f118c52650ddbb4f05bf22",
                "md5": "57e47a541fe791dbc998f7f6b7e52ce1",
                "sha256": "38625ded585de5f1f925245d02ef90b56b046ba24ca5ce526b1bc495deca4454"
            },
            "downloads": -1,
            "filename": "clickable-1.8.tar.gz",
            "has_sig": false,
            "md5_digest": "57e47a541fe791dbc998f7f6b7e52ce1",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 23441,
            "upload_time": "2023-10-27T21:27:32",
            "upload_time_iso_8601": "2023-10-27T21:27:32.027024Z",
            "url": "https://files.pythonhosted.org/packages/41/1b/172427fc467e20a748640a79af7956783353b4f118c52650ddbb4f05bf22/clickable-1.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-10-27 21:27:32",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "lalmeras",
    "github_project": "clickable",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "tox": true,
    "lcname": "clickable"
}
        
Elapsed time: 0.12809s