{ "info": { "author": "Fabien Arcellier", "author_email": "fabien.arcellier@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)", "Topic :: Software Development :: Build Tools", "Topic :: Text Processing :: Markup" ], "description": "Motivation\r\n----------\r\n\r\nI need to generate a changelog based on git content. I want to controle\r\nthe structure of the changelog but I don't want to manage the git\r\ncontent.\r\n\r\n.. code:: text\r\n\r\n ### from 2016-01 to 2016-05\r\n\r\n We implements feature activation ...\r\n\r\n * 2016-04-13 : Fabien Arcellier : feat: activate ...\r\n * 2016-04-10 : Fabien Arcellier : feat: add index ...\r\n * 2016-04-10 : Fabien Arcellier : feat: add search ...\r\n * ...\r\n\r\nI need to manage the format and the place of content myself and let git\r\ngenerate some contents from a file ``CHANGELOG.md.in``\r\n\r\n.. code:: text\r\n\r\n ### from 2016-01 to 2016-05\r\n\r\n We implements feature activation ...\r\n\r\n * @tsincluder git log --date=short --pretty=format:'%ad : %aN : %s' --abbrev-commit --since=\"1/1/2016\" --until=\"4/31/2016\" | grep feat\r\n\r\nTo generate ``CHANGELOG.md``, run\r\n\r\n.. code:: bash\r\n\r\n tsincluder CHANGELOG.md.in > CHANGELOG.md\r\n\r\nSynopsis\r\n--------\r\n\r\n``tsincluder`` means Text Script Inclusion Manager. ``tsincluder`` is a\r\n``cli`` and a ``library`` you can call from a python script that will\r\nreplace a markup as ``@tsincluder echo hello world`` by ``hello world``.\r\n\r\nIt keep the content that prefix the markup to generate a valid format as\r\nmarkdown and add it on all the lines if tsincluder generate many lines.\r\n\r\nThe latest version\r\n------------------\r\n\r\nYou can find the latest version to ...\r\n\r\n::\r\n\r\n git clone https://github.com/FabienArcellier/tsincluder.git\r\n\r\nUsage\r\n-----\r\n\r\nrun tsincluder to replace the markers @tsinclude (text script include)\r\nby the content generate by the command on stdout\r\n\r\n.. code:: python\r\n\r\n python -m tsincluder file.in\r\n\r\nto use it as a library\r\n\r\n.. code:: python\r\n\r\n from tsincluder import Processor\r\n\r\n line = \" * @tsincluder git log --date=short --pretty=format:'%ad : %aN : %s' --abbrev-commit --since=\"1/1/2016\" --until=\"4/31/2016\" | grep feat\"\r\n processor = Processor()\r\n content = processor.process(line)\r\n print(content)\r\n\r\nAs tsincluder executes a subprocess command, the script can configure\r\nthe working directory and markup\r\n\r\n.. code:: python\r\n\r\n from tsincluder import Processor\r\n\r\n processor = Processor(working_directory=\"/tmp\", markup=\"@other_markup\")\r\n\r\nInstallation\r\n------------\r\n\r\nInstall tsincluder using PyPi\r\n\r\n.. code:: bash\r\n\r\n pip install tsincluder\r\n\r\nInstall tsincluder from the source\r\n\r\n.. code:: bash\r\n\r\n python setup.py install\r\n\r\nTests\r\n-----\r\n\r\nUse make to execute unit tests.\r\n\r\n::\r\n\r\n make tests\r\n\r\nContributors\r\n------------\r\n\r\n- Fabien Arcellier\r\n\r\nLicense\r\n-------\r\n\r\n::\r\n\r\n This Source Code Form is subject to the terms of the Mozilla Public\r\n License, v. 2.0. If a copy of the MPL was not distributed with this\r\n file, You can obtain one at http://mozilla.org/MPL/2.0/.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/FabienArcellier/tsincluder", "keywords": "", "license": "Mozilla Public License, v. 2.0", "maintainer": "", "maintainer_email": "", "name": "tsincluder", "package_url": "https://pypi.org/project/tsincluder/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/tsincluder/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/FabienArcellier/tsincluder" }, "release_url": "https://pypi.org/project/tsincluder/0.1.1/", "requires_dist": null, "requires_python": null, "summary": "Text Script Inclusions Manager generate contents from any text file based on shell instructions", "version": "0.1.1" }, "last_serial": 2282260, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "448eeb03f63a024b2ca540970f78bc82", "sha256": "3b2f53d81e6d21d7d0ba8e90a18c212b5b7dd2bf78dea312e905a2dc1cc3201b" }, "downloads": -1, "filename": "tsincluder-0.1.tar.gz", "has_sig": false, "md5_digest": "448eeb03f63a024b2ca540970f78bc82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3228, "upload_time": "2016-08-15T14:22:31", "url": "https://files.pythonhosted.org/packages/75/44/1f711889b1c07c4480ebe08e3f64829f6be30ced1bd51e52ae72800f0ab6/tsincluder-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "daaabf86f67b188d65a938ba6c71a4a2", "sha256": "21ef4413172356633653e33001090d2f1fde02d65eb9c64f9f3015b4def4a2c5" }, "downloads": -1, "filename": "tsincluder-0.1.1.tar.gz", "has_sig": false, "md5_digest": "daaabf86f67b188d65a938ba6c71a4a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3248, "upload_time": "2016-08-15T14:27:01", "url": "https://files.pythonhosted.org/packages/bd/58/e2f007ff2eebfdfb35bc37f66ca29b51d4f0fac4338d9e269fb39583e022/tsincluder-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "daaabf86f67b188d65a938ba6c71a4a2", "sha256": "21ef4413172356633653e33001090d2f1fde02d65eb9c64f9f3015b4def4a2c5" }, "downloads": -1, "filename": "tsincluder-0.1.1.tar.gz", "has_sig": false, "md5_digest": "daaabf86f67b188d65a938ba6c71a4a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3248, "upload_time": "2016-08-15T14:27:01", "url": "https://files.pythonhosted.org/packages/bd/58/e2f007ff2eebfdfb35bc37f66ca29b51d4f0fac4338d9e269fb39583e022/tsincluder-0.1.1.tar.gz" } ] }