{ "info": { "author": "Jeremiah C Leary", "author_email": "jeremiah.c.leary@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Natural Language :: English", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3", "Topic :: System :: Archiving :: Packaging" ], "description": "HDL Component Manager (HCM)\n===========================\n\nManage HDL code as components so they can shared as IP.\n\n.. image:: https://img.shields.io/github/tag/jeremiah-c-leary/hdl-component-manager.svg?style=flat-square\n :target: https://github.com/jeremiah-c-leary/hdl-component-manager\n :alt: Github Release\n.. image:: https://img.shields.io/pypi/v/hcm.svg?style=flat-square\n :target: https://pypi.python.org/pypi/hcm\n :alt: PyPI Version\n.. image:: https://img.shields.io/travis/jeremiah-c-leary/hdl-component-manager/master.svg?style=flat-square\n :target: https://travis-ci.org/jeremiah-c-leary/hcm-component-manager\n :alt: Build Status\n.. image:: https://img.shields.io/codecov/c/github/jeremiah-c-leary/hdl-component-manager/master.svg?style=flat-square\n :target: https://codecov.io/github/jeremiah-c-leary/hdl-component-manager\n :alt: Test Coverage\n.. image:: https://img.shields.io/readthedocs/vsg.svg?style=flat-square\n :target: http://hdl-component-manager.readthedocs.io/en/latest/index.html\n :alt: Read The Docs\n.. image:: https://api.codacy.com/project/badge/Grade/42744dca97544824b93cfc99e8030063\n :target: https://www.codacy.com/app/jeremiah-c-leary/hdl-component-manager?utm_source=github.com&utm_medium=referral&utm_content=jeremiah-c-leary/hdl-component-manager&utm_campaign=Badge_Grade\n :alt: Codacy\n.. image:: https://api.codeclimate.com/v1/badges/97a72b806d6919dbcfa9/maintainability\n :target: https://codeclimate.com/github/jeremiah-c-leary/hdl-component-manager/maintainability\n :alt: Maintainability\n\n.. image:: docs/img/hcm_overview.gif\n\nTable of Contents\n-----------------\n\n* `Overview`_\n* `Key Benefits`_\n* `Key Features`_\n* `Installation`_\n* `Usage`_\n* `Documentation`_\n* `Contributing`_\n\nOverview\n--------\n\nHCM was created after a frustrating attempt to merge changes from one program to another.\nEven after carefully performing the merge, there were issues.\n\nIt was turning into a nightmare just to pass updates between multiple concurrently running programs.\nI was inspired by PIP, and how easy it is to install python packages.\nI wanted to bring that same level of ease to HDL design.\n\nKey Benefits\n------------\n\n* Provides a method to control versions of IP\n* Controls the distribution of HDL code\n* Follows the Major.Minor.Patch method of version control\n* Language independent (VHDL, Verilog, System Verilog)\n* Can be used to control vendor IP\n\nKey Features\n------------\n\n* Works with SVN repositories\n* Automates publishing of code to a central location\n* Automates installing and upgrading of code\n* Supports multiple IP repositories\n* Supports dependencies between components\n\nInstallation\n------------\n\nYou can get the latest released version of HCM via **pip**.\n\n.. code-block:: bash\n\n pip install hcm\n\nThe latest development version can be cloned...\n\n.. code-block:: bash\n\n git clone https://github.com/jeremiah-c-leary/hdl-component-manager.git\n\n...and then installed locally...\n\n.. code-block:: bash\n\n python setup.py install\n\n\nUsage\n-----\n\nHCM can be invoked by issuing **hcm** at the command line prompt:\n\n.. code-block:: bash\n\n $ hcm\n usage: hcm [-h]\n {browse,create,download,install,uninstall,list,publish,show,validate,version}\n ...\n \n Provides configuration management for HDL components.\n \n positional arguments:\n {browse,create,download,install,uninstall,list,publish,show,validate,version}\n browse List components available for installation.\n create Creates a component repo\n download Downloads components without installing them.\n install Adds a component from the component repo\n uninstall Removes installed components\n list Lists components and their versions\n publish Adds components to the component repo\n show Displays information about installed components\n validate Verifies manifest of installed component\n version Displays HCM version information\n \n optional arguments:\n -h, --help show this help message and exit\n\nHCM has eight subcommands: browse, create, install, uninstall, list, publish, show, and validate.\n\nbrowse\n~~~~~~\n\nUse the **browse** subcommand to list components available for installation.\n\n.. image:: docs/img/hcm_browse_subcommand.gif\n\nThe arguments for the subcommand can be listed using the *-h* option:\n\n.. code-block:: bash\n\n $ hcm browse -h\n usage: hcm browse [-h] [component]\n \n positional arguments:\n component Component to browse\n \n optional arguments:\n -h, --help show this help message and exit\n\n\ncreate\n~~~~~~\n\nUse the **create** subcommand to create a component directory in the repository.\n\n.. image:: docs/img/hcm_create_subcommand.gif\n\nThe arguments for the subcommand can be listed using the *-h* option:\n\n.. code-block:: bash\n\n $ hcm create -h\n usage: hcm create [-h] url\n \n positional arguments:\n url location to create the base component repo\n \n optional arguments:\n -h, --help show this help message and exit\n\ndownload\n~~~~~~~~\n\nUse the **download** subcommand to pull a version from the repository without installing it.\n\n.. image:: docs/img/hcm_download_subcommand.gif\n\ninstall\n~~~~~~~\n\nUse the **install** subcommand to add or upgrade a component from a repository.\n\n.. image:: docs/img/hcm_install_subcommand.gif\n\nThe arguments for the subcommand can be listed using the *-h* option:\n\n.. code-block:: bash\n\n $ bin/hcm install -h\n usage: hcm install [-h] [--version VERSION] [--url URL] [--force] [--external]\n [--dependencies] [--upgrade]\n component\n \n positional arguments:\n component Component name to install\n \n optional arguments:\n -h, --help show this help message and exit\n --version VERSION Major.Minor.Patch version of component to install.\n --url URL location of component directory in repo\n --force Install component ignoring any local changes\n --external Install as an external\n --dependencies Install dependencies\n --upgrade Upgrade dependencies to latest version\n\nuninstall\n---------\n\nUse the **uninstall** subcommand to remove installed components.\n\n.. image:: docs/img/hcm_uninstall_subcommand.gif\n\nThe arguments for the subcommand can be listed using the *-h* option:\n\n.. code-block:: bash\n\n $ hcm uninstall -h\n usage: hcm uninstall [-h] component\n \n positional arguments:\n component Installed Component name to install\n \n optional arguments:\n -h, --help show this help message and exit\n\nlist\n~~~~\n\nUse the **list** subcommand to check the versions of components you have installed.\n\n.. image:: docs/img/hcm_list_subcommand.gif\n\nThe arguments for the subcommand can be listed using the *-h* option:\n\n.. code-block:: bash\n\n $ hcm list -h\n usage: hcm list [-h] [--all]\n \n optional arguments:\n -h, --help show this help message and exit\n --all Includes directories that are not under HCM control\n\npublish\n~~~~~~~\n\nUse the **publish** subcommand to push a version of a component to a repository.\n\n.. image:: docs/img/hcm_publish_subcommand.gif\n\nThe arguments for the subcommand can be listed using the *-h* option:\n\n.. code-block:: bash\n\n $ hcm publish -h\n usage: hcm publish [-h] (-m M | -f F) [--url URL] component version\n \n positional arguments:\n component Component name to publish\n version Major.Minor.Patch version to publish\n \n optional arguments:\n -h, --help show this help message and exit\n -m M Commit message\n -f F File to use as commit message\n --url URL Base URL of the component repository\n\nshow\n~~~~\n\nUse the **show** subcommand to display information about an installed component.\n\n.. image:: docs/img/hcm_show_subcommand.gif\n\nThe arguments for the subcommand can be listed using the *-h* options:\n\n.. code-block:: bash\n\n $ hcm show -h\n usage: hcm show [-h] [--manifest] [--upgrades] [--updates] [--modifications]\n component\n \n positional arguments:\n component Component to display information\n \n optional arguments:\n -h, --help show this help message and exit\n --manifest Displays manifest for all files in component\n --upgrades Lists upgrade versions and their log entries\n --updates Lists versions with newer publishes and their log entries\n --modifications Lists committed modifications for component\n\nvalidate\n--------\n\nUse the **validate** subcommand to compare the component manifest against what is currently installed.\n\n.. image:: docs/img/hcm_validate_subcommand.gif\n\nThe arguments for the subcommand can be listed using the *-h* options:\n\n.. code-block:: bash\n\n $ hcm validate -h\n usage: hcm validate [-h] [--report] component\n \n positional arguments:\n component Component to display information\n \n optional arguments:\n -h, --help show this help message and exit\n --report Reports differences\n\nEnvironment Variables\n~~~~~~~~~~~~~~~~~~~~~\n\nHCM will use the **HCM_URL_PATHS** environment variable as a replacement for the **--url** command line option.\nHCM uses the paths in the variable to know which component repositories to interact with.\n\nDocumentation\n-------------\n\nAll documentation for HCM is hosted at `read-the-docs `_.\n\nContributing\n------------\n\nI welcome any contributions to this project.\nNo matter how small or large.\n\nThere are several ways to contribute:\n\n* Bug reports\n* Code base improvements\n* Feature requests\n* Pull requests\n\nPlease refer to the documentation hosted at `read-the-docs `_ for more details on contributing.\n", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/jeremiah-c-leary/hdl-component-manager", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jeremiah-c-leary/hdl-component-manager", "keywords": "vhdl", "license": "GNU General Public License", "maintainer": "", "maintainer_email": "", "name": "hcm", "package_url": "https://pypi.org/project/hcm/", "platform": "", "project_url": "https://pypi.org/project/hcm/", "project_urls": { "Download": "https://github.com/jeremiah-c-leary/hdl-component-manager", "Homepage": "https://github.com/jeremiah-c-leary/hdl-component-manager" }, "release_url": "https://pypi.org/project/hcm/0.14/", "requires_dist": null, "requires_python": "", "summary": "HDL Component Manager", "version": "0.14" }, "last_serial": 5662213, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "a1411682d704bb5985bbaca2e6a942b5", "sha256": "bc3c7c5a83f6e8404d2f8046452b5b953c238552dbe6e8f0dec1dfd5c5d462b2" }, "downloads": -1, "filename": "hcm-0.1.tar.gz", "has_sig": false, "md5_digest": "a1411682d704bb5985bbaca2e6a942b5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8715, "upload_time": "2019-05-27T16:56:10", "url": "https://files.pythonhosted.org/packages/7c/5e/6c5da97310c51050d9ee85b037523900eec2d1118cba13cf0bfbbc66f584/hcm-0.1.tar.gz" } ], "0.10": [ { "comment_text": "", "digests": { "md5": "1aca746f60ef616c027828d91f9f0b78", "sha256": "f64c1330c740d7eda56f53e0f47277d3a1ed6648d0a8933bf02fb24c84793179" }, "downloads": -1, "filename": "hcm-0.10.tar.gz", "has_sig": false, "md5_digest": "1aca746f60ef616c027828d91f9f0b78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23036, "upload_time": "2019-07-08T00:49:02", "url": "https://files.pythonhosted.org/packages/6e/aa/63a41a293ff59aa34c84a10eb6ec529a1b45710227bc35f87efa7c67cca8/hcm-0.10.tar.gz" } ], "0.11": [ { "comment_text": "", "digests": { "md5": "a84079c070b9f51ca5a7c0eb9111e770", "sha256": "579c2414373560dc7b021e801d2723777ef4be6a8350dea72c0a5747f815f498" }, "downloads": -1, "filename": "hcm-0.11.tar.gz", "has_sig": false, "md5_digest": "a84079c070b9f51ca5a7c0eb9111e770", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24185, "upload_time": "2019-07-12T12:23:16", "url": "https://files.pythonhosted.org/packages/a2/09/d1eb02b77a854cf9a188c15561b83d1268d01bdbd5b603abbb98fb4bb9ab/hcm-0.11.tar.gz" } ], "0.12": [ { "comment_text": "", "digests": { "md5": "28eda0c68b4605bb63b146142bb645e4", "sha256": "8b7f5154979e2f44420cf2be50fad4f8552bdc65bff5f4093167a749679921fc" }, "downloads": -1, "filename": "hcm-0.12.tar.gz", "has_sig": false, "md5_digest": "28eda0c68b4605bb63b146142bb645e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25062, "upload_time": "2019-07-18T00:22:33", "url": "https://files.pythonhosted.org/packages/bf/48/b3640aadfb7365256b95d544f35a29b4a7cf9461f6830082c65ad1818741/hcm-0.12.tar.gz" } ], "0.13": [ { "comment_text": "", "digests": { "md5": "5be51edc21d7c4f4fcc99db2a9b6fd37", "sha256": "92eaac41d96adee61f93e138aaa15e5e34e5695ce18552b1eafdb7cb906ce03e" }, "downloads": -1, "filename": "hcm-0.13.tar.gz", "has_sig": false, "md5_digest": "5be51edc21d7c4f4fcc99db2a9b6fd37", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25975, "upload_time": "2019-07-28T19:55:20", "url": "https://files.pythonhosted.org/packages/5a/8b/93dfb30495839330fdd82c5008518a0f5a446b6e01b863a412d5161c227f/hcm-0.13.tar.gz" } ], "0.14": [ { "comment_text": "", "digests": { "md5": "9937569b10aebccd82c09e132e3c5235", "sha256": "d37dd6590a96e774d58a557bdb5175b3e669c43ca7aaba2e3faba7e1578f70c7" }, "downloads": -1, "filename": "hcm-0.14.tar.gz", "has_sig": false, "md5_digest": "9937569b10aebccd82c09e132e3c5235", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26926, "upload_time": "2019-08-11T14:02:13", "url": "https://files.pythonhosted.org/packages/45/d7/e1facbf3c2f6e6f0c4effd0ae20642db64a2f4d8c975f709c4690f072be9/hcm-0.14.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "f68795b2c6e21f0062f1d92616c6767f", "sha256": "83c45114f0fd42612be554c1d79f7a1e94a784a22880c5d2204f5a97e524f3bd" }, "downloads": -1, "filename": "hcm-0.2.tar.gz", "has_sig": false, "md5_digest": "f68795b2c6e21f0062f1d92616c6767f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9039, "upload_time": "2019-05-29T01:00:38", "url": "https://files.pythonhosted.org/packages/d6/c9/e4fb1aa46fe55c023dd71c059b2f6123fbe9d46271bf6f0ff7630c281a69/hcm-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "4fc8268670a325888937d0a13b1294f2", "sha256": "3abb1bf62623bdf90eb22eaf080c3673917b67b8329ec5218d99270ed10af342" }, "downloads": -1, "filename": "hcm-0.3.tar.gz", "has_sig": false, "md5_digest": "4fc8268670a325888937d0a13b1294f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9770, "upload_time": "2019-05-30T12:31:57", "url": "https://files.pythonhosted.org/packages/15/de/ce0f41160fe1fd5c89cbfa361768997b53f8fb7a9f8a604bca66a27f2326/hcm-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "abaad85f26a0ec20eb06943d4b6a46e8", "sha256": "90bd89258a818fed61c990c107be454c3a6e3807d4ee07f39ca5a63b5a6d5b28" }, "downloads": -1, "filename": "hcm-0.4.tar.gz", "has_sig": false, "md5_digest": "abaad85f26a0ec20eb06943d4b6a46e8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13865, "upload_time": "2019-06-02T01:58:06", "url": "https://files.pythonhosted.org/packages/07/f0/cf6c10925865033a121476b00cf14679701d07f4ecb48fc5af2141995f92/hcm-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "2f9f40e8b6cbdd1c11e4ec2bec1848ea", "sha256": "aa6cbec78fe818cb8ad859f203c98553ab8078929a4e12e0a61497ce6cd8db0c" }, "downloads": -1, "filename": "hcm-0.5.tar.gz", "has_sig": false, "md5_digest": "2f9f40e8b6cbdd1c11e4ec2bec1848ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15364, "upload_time": "2019-06-08T01:45:48", "url": "https://files.pythonhosted.org/packages/18/e7/9eaacb66c1479e046d0fc3fdba5a96535765941164415c825281ae2d3330/hcm-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "869ec6413b5fdbddba283f8da6e9448c", "sha256": "442c8c0f8ddd37b7439de40192e9b0e2b025afd21dc9d647118e2f7ba8d5d7f4" }, "downloads": -1, "filename": "hcm-0.6.tar.gz", "has_sig": false, "md5_digest": "869ec6413b5fdbddba283f8da6e9448c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16964, "upload_time": "2019-06-14T03:09:54", "url": "https://files.pythonhosted.org/packages/b4/58/32528049f33d14ef496daf8df7505e1cbb9a9c07940f0a947c94b073db77/hcm-0.6.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "fa2ce21d8cc6bdc34782a82d9c4e53e2", "sha256": "b07cea27e40224c9faf9e189a0244e665e911d5e994cd333e45af944325d1048" }, "downloads": -1, "filename": "hcm-0.7.tar.gz", "has_sig": false, "md5_digest": "fa2ce21d8cc6bdc34782a82d9c4e53e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18403, "upload_time": "2019-06-16T22:00:18", "url": "https://files.pythonhosted.org/packages/1b/f1/793fe7a1f97c3a4dcfbf3aa477aaa94f2884acbd565ea1fc694435ab2c67/hcm-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "1ec7c0f95ad5d4f5fb96c70c828a6461", "sha256": "8543f9f4c16087eeae28a29d590722ee86d4183f750ab735134107de9d425f6c" }, "downloads": -1, "filename": "hcm-0.8.tar.gz", "has_sig": false, "md5_digest": "1ec7c0f95ad5d4f5fb96c70c828a6461", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20873, "upload_time": "2019-06-20T11:20:22", "url": "https://files.pythonhosted.org/packages/98/30/3c3d07d49b9be84bfde83d3a6b87739f462ab6037d97663ddb13c04bcf23/hcm-0.8.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "662b319b7f3dca6726596f8480d48ae9", "sha256": "64892f20c6b782a978572b63b49d17d29a571a2d244c2b185ef97582bed79728" }, "downloads": -1, "filename": "hcm-0.9.tar.gz", "has_sig": false, "md5_digest": "662b319b7f3dca6726596f8480d48ae9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21249, "upload_time": "2019-06-21T11:29:52", "url": "https://files.pythonhosted.org/packages/8d/95/301f6e6844abc325b4aae481937b6487b51145d63c4d9b534daeefb808c3/hcm-0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9937569b10aebccd82c09e132e3c5235", "sha256": "d37dd6590a96e774d58a557bdb5175b3e669c43ca7aaba2e3faba7e1578f70c7" }, "downloads": -1, "filename": "hcm-0.14.tar.gz", "has_sig": false, "md5_digest": "9937569b10aebccd82c09e132e3c5235", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26926, "upload_time": "2019-08-11T14:02:13", "url": "https://files.pythonhosted.org/packages/45/d7/e1facbf3c2f6e6f0c4effd0ae20642db64a2f4d8c975f709c4690f072be9/hcm-0.14.tar.gz" } ] }