pycolt


Namepycolt JSON
Version 0.6.0 PyPI version JSON
download
home_pagehttps://github.com/mfsjmenger/colt
SummaryCommand Line Tool for Python
upload_time2023-03-23 11:31:17
maintainer
docs_urlNone
authorMaximilian F.S.J. Menger
requires_python>=3.6
licenseApache License v2.0
keywords pycolt
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            =======================
COLT: COmmand Line Tool
=======================

Simple, extensible tool to create out of the box input files and commandline
interfaces for Python, that are type validated.
For the input file the `ini` file-format is used around Python's configparser_.


|PyPI version fury.io|
|PyPI download month|  
|PyPI license|
|PyPI implementation|

.. |PyPI implementation| image:: https://img.shields.io/pypi/implementation/pycolt.svg
   :target: https://pypi.python.org/pypi/pycolt/

.. |PyPI download month| image:: https://img.shields.io/pypi/dm/pycolt.svg
   :target: https://pypi.python.org/pypi/pycolt/
  

.. |PyPI version fury.io| image:: https://badge.fury.io/py/pycolt.svg
   :target: https://pypi.python.org/pypi/pycolt/


.. |PyPI license| image:: https://img.shields.io/pypi/l/pycolt.svg
   :target: https://pypi.python.org/pypi/pycolt/

Features
--------

1. Build simple commandline interfaces using the FromCommandline-decorator

.. code:: python

   # examples/commandline_xrange.py
   from colt import from_commandline


   @from_commandline("""
   # start of the range
   xstart = :: int :: >0
   # end of the range
   xstop = :: int :: >1
   # step size
   step = 1 :: int 
   """)
   def x_range(xstart, xstop, step):
      for i in range(xstart, xstop, step):
         print(i)

   if __name__ == '__main__':
      x_range()

.. code:: python

   usage: commandline_xrange.py [-h] [-step step] xstart xstop

   positional arguments:
      xstart      int, Range(>0)
                  start of the range
      xstop       int, Range(>1)
                  end of the range

   optional arguments:
      -h, --help  show this help message and exit
      -step step  int,
                  step size


Credits
-------

This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
.. _configparser: https://docs.python.org/3/library/configparser.html


=======
History
=======

0.4.0 (2021-6-9)
------------------
 * New commandline parser instead of argparse:
    * correct handling of multiple subparser
    * correct parsing of infinit arguments using the `list(typ)` syntax
    * fully customizable help settings

0.1.0 (2020-8-1)
------------------

* First release on PyPI.





            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mfsjmenger/colt",
    "name": "pycolt",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "pycolt",
    "author": "Maximilian F.S.J. Menger",
    "author_email": "m.f.s.j.menger@rug.nl",
    "download_url": "https://files.pythonhosted.org/packages/59/56/c491c8b7ab8268eade6b4c272f3db9b8f7a8231a935958c8e9c0f220bbe9/pycolt-0.6.0.tar.gz",
    "platform": null,
    "description": "=======================\nCOLT: COmmand Line Tool\n=======================\n\nSimple, extensible tool to create out of the box input files and commandline\ninterfaces for Python, that are type validated.\nFor the input file the `ini` file-format is used around Python's configparser_.\n\n\n|PyPI version fury.io|\n|PyPI download month|  \n|PyPI license|\n|PyPI implementation|\n\n.. |PyPI implementation| image:: https://img.shields.io/pypi/implementation/pycolt.svg\n   :target: https://pypi.python.org/pypi/pycolt/\n\n.. |PyPI download month| image:: https://img.shields.io/pypi/dm/pycolt.svg\n   :target: https://pypi.python.org/pypi/pycolt/\n  \n\n.. |PyPI version fury.io| image:: https://badge.fury.io/py/pycolt.svg\n   :target: https://pypi.python.org/pypi/pycolt/\n\n\n.. |PyPI license| image:: https://img.shields.io/pypi/l/pycolt.svg\n   :target: https://pypi.python.org/pypi/pycolt/\n\nFeatures\n--------\n\n1. Build simple commandline interfaces using the FromCommandline-decorator\n\n.. code:: python\n\n   # examples/commandline_xrange.py\n   from colt import from_commandline\n\n\n   @from_commandline(\"\"\"\n   # start of the range\n   xstart = :: int :: >0\n   # end of the range\n   xstop = :: int :: >1\n   # step size\n   step = 1 :: int \n   \"\"\")\n   def x_range(xstart, xstop, step):\n      for i in range(xstart, xstop, step):\n         print(i)\n\n   if __name__ == '__main__':\n      x_range()\n\n.. code:: python\n\n   usage: commandline_xrange.py [-h] [-step step] xstart xstop\n\n   positional arguments:\n      xstart      int, Range(>0)\n                  start of the range\n      xstop       int, Range(>1)\n                  end of the range\n\n   optional arguments:\n      -h, --help  show this help message and exit\n      -step step  int,\n                  step size\n\n\nCredits\n-------\n\nThis package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n.. _configparser: https://docs.python.org/3/library/configparser.html\n\n\n=======\nHistory\n=======\n\n0.4.0 (2021-6-9)\n------------------\n * New commandline parser instead of argparse:\n    * correct handling of multiple subparser\n    * correct parsing of infinit arguments using the `list(typ)` syntax\n    * fully customizable help settings\n\n0.1.0 (2020-8-1)\n------------------\n\n* First release on PyPI.\n\n\n\n\n",
    "bugtrack_url": null,
    "license": "Apache License v2.0",
    "summary": "Command Line Tool for Python",
    "version": "0.6.0",
    "split_keywords": [
        "pycolt"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "47e2286575ddf339d8fbcf5729fbc4f34c65abdf8cd3b63dac5fa456e238a7c3",
                "md5": "8375f0684654e433987b00e9b2c9ba63",
                "sha256": "40ece25771876d9d3123c45adf87959cbe6fa54a9b083989a7e66d2edbc34f95"
            },
            "downloads": -1,
            "filename": "pycolt-0.6.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8375f0684654e433987b00e9b2c9ba63",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.6",
            "size": 66442,
            "upload_time": "2023-03-23T11:31:14",
            "upload_time_iso_8601": "2023-03-23T11:31:14.285412Z",
            "url": "https://files.pythonhosted.org/packages/47/e2/286575ddf339d8fbcf5729fbc4f34c65abdf8cd3b63dac5fa456e238a7c3/pycolt-0.6.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5956c491c8b7ab8268eade6b4c272f3db9b8f7a8231a935958c8e9c0f220bbe9",
                "md5": "3bf544b75381590085e7a01edd625928",
                "sha256": "0baf234160e65556477207cad09000bf360694470de1ca2aad4065aa569ef57a"
            },
            "downloads": -1,
            "filename": "pycolt-0.6.0.tar.gz",
            "has_sig": false,
            "md5_digest": "3bf544b75381590085e7a01edd625928",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 69389,
            "upload_time": "2023-03-23T11:31:17",
            "upload_time_iso_8601": "2023-03-23T11:31:17.182637Z",
            "url": "https://files.pythonhosted.org/packages/59/56/c491c8b7ab8268eade6b4c272f3db9b8f7a8231a935958c8e9c0f220bbe9/pycolt-0.6.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-03-23 11:31:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "mfsjmenger",
    "github_project": "colt",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "tox": true,
    "lcname": "pycolt"
}
        
Elapsed time: 0.08061s