{ "info": { "author": "Counterparty Developers", "author_email": "dev@counterparty.io", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: Financial and Insurance Industry", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Programming Language :: Python :: 3 :: Only", "Topic :: Office/Business :: Financial", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Distributed Computing" ], "description": "|Build Status Travis| |Build Status Circle| |Coverage Status| |Latest\nVersion| |License| |Slack Status| |Docker Pulls|\n\nDescription\n===========\n\n``counterparty-lib`` is the reference implementation of the\n`Counterparty Protocol `__.\n\n**Note:** for the command-line interface to ``counterparty-lib``, see\n```counterparty-cli`` `__.\n\nInstallation\n============\n\nFor a simple Docker-based install of the Counterparty software stack,\nsee `this guide `__.\n\nManual installation\n===================\n\nDownload the newest `patched Bitcoin\nCore `__ and create a\n``bitcoin.conf`` file with the following options:\n\n::\n\n rpcuser=bitcoinrpc\n rpcpassword=rpc\n server=1\n txindex=1\n addrindex=1\n rpctimeout=300\n\n**Note:** you can and should replace the RPC credentials. Remember to\nuse the changed RPC credentials throughout this document.\n\nThen, download and install ``counterparty-lib``:\n\n::\n\n $ git clone https://github.com/CounterpartyXCP/counterparty-lib.git\n $ cd counterparty-lib\n $ sudo pip3 install --upgrade -r requirements.txt\n $ sudo python3 setup.py install\n\nFollowed by ``counterparty-cli``:\n\n::\n\n $ git clone https://github.com/CounterpartyXCP/counterparty-cli.git\n $ cd counterparty-cli\n $ sudo pip3 install --upgrade -r requirements.txt\n $ sudo python3 setup.py install\n\nNote on **sudo**: both counterparty-lib and counterparty-server can be\ninstalled by non-sudoers. Please refer to external documentation for\ninstructions on using pip without root access and other information\nrelated to custom install locations.\n\nThen, launch the daemon via:\n\n::\n\n $ counterparty-server bootstrap\n $ counterparty-server --backend-password=rpc start\n\nBasic Usage\n===========\n\nVia command-line\n----------------\n\n(Requires ``counterparty-cli`` to be installed.)\n\n- The first time you run the server, you may bootstrap the local\n database with: ``$ counterparty-server bootstrap``\n\n- Start the server with: ``$ counterparty-server start``\n\n- Check the status of the server with:\n ``$ counterparty-client getinfo``\n\n- For additional command-line arguments and options:\n ``$ counterparty-server --help`` ``$ counterparty-client --help``\n\nVia Python\n----------\n\nBare usage from Python is also possible, without installing\n``counterparty-cli``:\n\n::\n\n $ python3\n >>> from counterpartylib import server\n >>> db = server.initialise()\n >>> server.start_all(db)\n\nConfiguration and Operation\n===========================\n\nThe paths to the **configuration** files, **log** files and **database**\nfiles are printed to the screen when starting the server in \u2018verbose\u2019\nmode: ``$ counterparty-server --verbose start``\n\nBy default, the **configuration files** are named ``server.conf`` and\n``client.conf`` and located in the following directories:\n\n- Linux: ``~/.config/counterparty/``\n- Windows: ``%APPDATA%\\Counterparty\\``\n\nClient and Server log files are named\n``counterparty.client.[testnet.]log`` and\n``counterparty.server.[testnet.]log``, and located in the following\ndirectories:\n\n- Linux: ``~/.cache/counterparty/log/``\n- Windows: ``%APPDATA%\\Local\\Counterparty\\counterparty\\Logs``\n\nCounterparty API activity is logged in ``server.[testnet.]api.log`` and\n``client.[testnet.]api.log``.\n\nCounterparty database files are by default named\n``counterparty.[testnet.]db`` and located in the following directories:\n\n- Linux: ``~/.local/share/counterparty``\n- Windows: ``%APPDATA%\\Roaming\\Counterparty\\counterparty``\n\nConfiguration File Format\n-------------------------\n\nManual configuration is not necessary for most use cases. \"back-end\" and\n\"wallet\" are used to access Bitcoin server RPC.\n\nA ``counterparty-server`` configuration file looks like this:\n\n::\n\n [Default]\n backend-name = addrindex\n backend-user = \n backend-password = \n rpc-host = 0.0.0.0\n rpc-user = \n rpc-password = \n\nThe ``force`` argument can be used either in the server configuration\nfile or passed at runtime to make the server keep running in the case it\nloses connectivity with the Internet and falls behind the back-end\ndatabase. This may be useful for *non-production* Counterparty servers\nthat need to maintain RPC service availability even when the backend or\ncounterparty server has no Internet connectivity.\n\nA ``counterparty-client`` configuration file looks like this:\n\n::\n\n [Default]\n wallet-name = bitcoincore\n wallet-connect = localhost\n wallet-user = \n wallet-password = \n counterparty-rpc-connect = localhost\n counterparty-rpc-user = \n counterparty-rpc-password = \n\nDeveloper notes\n===============\n\nVersioning\n----------\n\n- Major version changes require a full (automatic) rebuild of the\n database.\n- Minor version changes require a(n automatic) database reparse.\n- All protocol changes are retroactive on testnet.\n\nContinuous integration\n----------------------\n\n- TravisCI is setup to run all tests with 1 command and generate a\n coverage report and let ``python-coveralls`` parse and upload it. It\n does runs with ``--skiptestbook=all`` so it will not do the reparsing\n of the bootstrap files.\n- CircleCI is setup to split the tests as much as possible to make it\n easier to read the error reports. It also runs the\n ``integration_test.test_book`` tests, which reparse the bootstrap\n files.\n\nFurther Reading\n===============\n\n- `Official Project Documentation `__\n\n.. |Build Status Travis| image:: https://travis-ci.org/CounterpartyXCP/counterparty-lib.svg?branch=develop\n :target: https://travis-ci.org/CounterpartyXCP/counterparty-lib\n.. |Build Status Circle| image:: https://circleci.com/gh/CounterpartyXCP/counterparty-lib.svg?&style=shield\n :target: https://circleci.com/gh/CounterpartyXCP/counterparty-lib\n.. |Coverage Status| image:: https://coveralls.io/repos/CounterpartyXCP/counterparty-lib/badge.png?branch=develop\n :target: https://coveralls.io/r/CounterpartyXCP/counterparty-lib?branch=develop\n.. |Latest Version| image:: https://pypip.in/version/counterparty-lib/badge.svg\n :target: https://pypi.python.org/pypi/counterparty-lib/\n.. |License| image:: https://pypip.in/license/counterparty-lib/badge.svg\n :target: https://pypi.python.org/pypi/counterparty-lib/\n.. |Slack Status| image:: http://slack.counterparty.io/badge.svg\n :target: http://slack.counterparty.io\n.. |Docker Pulls| image:: https://img.shields.io/docker/pulls/counterparty/counterparty-server.svg?maxAge=2592000\n :target: https://hub.docker.com/r/counterparty/counterparty-server/\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/CounterpartyXCP/counterparty-lib/releases/tag/9.55.4", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://counterparty.io", "keywords": "counterparty", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "counterparty-lib", "package_url": "https://pypi.org/project/counterparty-lib/", "platform": "", "project_url": "https://pypi.org/project/counterparty-lib/", "project_urls": { "Download": "https://github.com/CounterpartyXCP/counterparty-lib/releases/tag/9.55.4", "Homepage": "http://counterparty.io" }, "release_url": "https://pypi.org/project/counterparty-lib/9.55.4/", "requires_dist": null, "requires_python": "", "summary": "Counterparty Protocol Reference Implementation", "version": "9.55.4" }, "last_serial": 3295172, "releases": { "9.49.4": [ { "comment_text": "", "digests": { "md5": "aee1fa803797d4cc8243a510b0d96610", "sha256": "63273e43f7b0aa3af6536000e22864ec932fc99ece72717fa5c357aa1cbf7200" }, "downloads": -1, "filename": "counterparty-lib-9.49.4.0.tar.gz", "has_sig": true, "md5_digest": "aee1fa803797d4cc8243a510b0d96610", "packagetype": "bdist_egg", "python_version": "3.4", "requires_python": null, "size": 293953, "upload_time": "2015-02-05T20:08:37", "url": "https://files.pythonhosted.org/packages/9a/bb/d823d93d8dcb57274d84ce7f68afd0b40262a2b03bb5e45e5be31345e3ff/counterparty-lib-9.49.4.0.tar.gz" } ], "9.49.4rc3": [ { "comment_text": "", "digests": { "md5": "8dc0d320a4853efe655f3fb5ed7395e8", "sha256": "d3693cbc17ae4a082361d199cd6b7edc8aecd366149d66dc610251caca0fc53f" }, "downloads": -1, "filename": "counterparty-lib-9.49.4rc3.tar.gz", "has_sig": false, "md5_digest": "8dc0d320a4853efe655f3fb5ed7395e8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 293073, "upload_time": "2015-01-26T04:02:48", "url": "https://files.pythonhosted.org/packages/61/ab/da3132554924ed9593e926692e6f64a7365b40173e7eb8c5c3e423424dfc/counterparty-lib-9.49.4rc3.tar.gz" } ], "9.49.4rc4": [ { "comment_text": "", "digests": { "md5": "dac0826f9bfd7e385a6fd815967724ed", "sha256": "cfa75d2403fb76bf47b752af3dc392079862b687cf16ca0a6f0b126e8306efa9" }, "downloads": -1, "filename": "counterparty-lib-9.49.4rc4.tar.gz", "has_sig": true, "md5_digest": "dac0826f9bfd7e385a6fd815967724ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 294079, "upload_time": "2015-01-26T16:47:14", "url": "https://files.pythonhosted.org/packages/6d/cb/c220356445450939fd0373c38af8859afbb491a876e115f4c65f216e1a55/counterparty-lib-9.49.4rc4.tar.gz" } ], "9.49.4rc5": [ { "comment_text": "", "digests": { "md5": "ad23478ce289e84a7e02772acf3f2939", "sha256": "3e91b4f5b5789521c48aad81f8a4820d745071643906cc5d002c0f322d918c59" }, "downloads": -1, "filename": "counterparty-lib-9.49.4rc5.tar.gz", "has_sig": true, "md5_digest": "ad23478ce289e84a7e02772acf3f2939", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 294737, "upload_time": "2015-01-29T23:46:40", "url": "https://files.pythonhosted.org/packages/ea/40/26e9ad58dd7673235f8932ef4082551f2822b58efd7f50f8d9fe808a044c/counterparty-lib-9.49.4rc5.tar.gz" } ], "9.49.4rc6": [ { "comment_text": "", "digests": { "md5": "03608d958b4b98d140dd0bedd491b87b", "sha256": "6fe25285d38410e52c688b6bf1e52578c1aee2615c4146dd34ffb7e8032507c9" }, "downloads": -1, "filename": "counterparty-lib-9.49.4rc6.tar.gz", "has_sig": true, "md5_digest": "03608d958b4b98d140dd0bedd491b87b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 294627, "upload_time": "2015-01-31T15:40:57", "url": "https://files.pythonhosted.org/packages/bd/8b/e943fd3c033179c7ae2c43e98a19380ad3f07ab8fe9134c35895565d7dad/counterparty-lib-9.49.4rc6.tar.gz" } ], "9.49.4rc7": [ { "comment_text": "", "digests": { "md5": "edc374f8298252eab36aa938df78bba4", "sha256": "5e4a26d9b56d15e2071c31a4633ca25142938f1fde4b5dd96586c1dbdf36e484" }, "downloads": -1, "filename": "counterparty-lib-9.49.4rc7.tar.gz", "has_sig": true, "md5_digest": "edc374f8298252eab36aa938df78bba4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 293890, "upload_time": "2015-02-02T17:21:57", "url": "https://files.pythonhosted.org/packages/14/b4/112c8ee7fc1d7dd42101d861f82bd4b7c21ced781aac10b80234f5eb241c/counterparty-lib-9.49.4rc7.tar.gz" } ], "9.50.0": [ { "comment_text": "", "digests": { "md5": "49d0d7e3e369656a1f1ec3b49d12763a", "sha256": "e193c14e0aca71bdba03dacc636511478f263c7076df1c91e1b80cfb64b30819" }, "downloads": -1, "filename": "counterparty-lib-9.50.0.tar.gz", "has_sig": true, "md5_digest": "49d0d7e3e369656a1f1ec3b49d12763a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 293098, "upload_time": "2015-03-18T12:40:54", "url": "https://files.pythonhosted.org/packages/ae/d6/0f25e0f07470e60885e99255ede8159d67ea59b96c772e1e3840c89aedcc/counterparty-lib-9.50.0.tar.gz" } ], "9.51.0": [ { "comment_text": "", "digests": { "md5": "6d1c27540e761ac0a9c393f5bc90157d", "sha256": "8c4c618a75c2bb83466283eea2a2956c6f4c8e6ff529a52ada2b7bee726d2a5e" }, "downloads": -1, "filename": "counterparty-lib-9.51.0.tar.gz", "has_sig": true, "md5_digest": "6d1c27540e761ac0a9c393f5bc90157d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 298821, "upload_time": "2015-04-01T14:01:26", "url": "https://files.pythonhosted.org/packages/4c/bf/9f37595ed8902db3b2f5c687dfdf39317cfd275c618fb588be5976d0c498/counterparty-lib-9.51.0.tar.gz" } ], "9.51.1": [ { "comment_text": "", "digests": { "md5": "5518009e7263709035cf346b0ed9dd1c", "sha256": "9178c45c49edd4fa13d5aca4ce33178c70a402c5f9bf30d61e88785a38d2ba17" }, "downloads": -1, "filename": "counterparty-lib-9.51.1.tar.gz", "has_sig": true, "md5_digest": "5518009e7263709035cf346b0ed9dd1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 300313, "upload_time": "2015-04-20T15:05:47", "url": "https://files.pythonhosted.org/packages/e7/b6/be039cb24860c01be8294eb004759db320a1a81c2d26f07b8a9f9f56d3f0/counterparty-lib-9.51.1.tar.gz" } ], "9.51.2": [ { "comment_text": "", "digests": { "md5": "185beadbf381f41579b4dbd1d7a475bb", "sha256": "67d8c55cb1f4dca853091c01b2a94a15109c85ee909cb4144154bb3fb88d56da" }, "downloads": -1, "filename": "counterparty-lib-9.51.2.tar.gz", "has_sig": true, "md5_digest": "185beadbf381f41579b4dbd1d7a475bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 300296, "upload_time": "2015-04-23T21:40:30", "url": "https://files.pythonhosted.org/packages/c7/9d/b1ee52ad9e24940c6d48f53d8cacc2a8865b0d96d8f679846b94f4870c7b/counterparty-lib-9.51.2.tar.gz" } ], "9.51.3": [ { "comment_text": "", "digests": { "md5": "2b98eccc6cda9a2d700fe9eaa3ee69e1", "sha256": "403af000a8811643b1d4fe5da6d0d79ca9e00724d41a423ce9ceb156f035a218" }, "downloads": -1, "filename": "counterparty-lib-9.51.3.tar.gz", "has_sig": true, "md5_digest": "2b98eccc6cda9a2d700fe9eaa3ee69e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 300534, "upload_time": "2015-05-13T13:30:33", "url": "https://files.pythonhosted.org/packages/b6/57/4269a73d45286251afd71199a978ad9fdac4f1f2f90398d2b3bf71e71bcd/counterparty-lib-9.51.3.tar.gz" } ], "9.51.4": [ { "comment_text": "", "digests": { "md5": "e0cb801f97bf9d11b881dc54a54ffa0f", "sha256": "6e635cf9de7d950abb9cc5ac7b5c4990cd7f19642e632235008c3a4a4c93d766" }, "downloads": -1, "filename": "counterparty-lib-9.51.4.tar.gz", "has_sig": false, "md5_digest": "e0cb801f97bf9d11b881dc54a54ffa0f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 303105, "upload_time": "2015-09-27T11:28:01", "url": "https://files.pythonhosted.org/packages/bc/05/58abdfa60798d4c8419bfb50550ec5d827eb432df2117e52906528a4c486/counterparty-lib-9.51.4.tar.gz" } ], "9.52.0": [ { "comment_text": "", "digests": { "md5": "89980bb97ec9962fe304f6a92f241e24", "sha256": "dc3e47dbc1c5d1a855041655d3d643ff66bc1c0c3a03e989a504a383acbacff2" }, "downloads": -1, "filename": "counterparty-lib-9.52.0.tar.gz", "has_sig": true, "md5_digest": "89980bb97ec9962fe304f6a92f241e24", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 306814, "upload_time": "2015-11-05T18:17:19", "url": "https://files.pythonhosted.org/packages/2c/a0/5b3f726d818af6e0901ac6db67c92f5d0b918b44bb0befd2dd2c9163d044/counterparty-lib-9.52.0.tar.gz" } ], "9.54.0": [ { "comment_text": "", "digests": { "md5": "bb0c891f7eed84e6fe1e5cf9f572a6d3", "sha256": "849f9e74425e6d4e4f892834e74667913c43cbaff0b601c3b92e6ab99279d4ed" }, "downloads": -1, "filename": "counterparty-lib-9.54.0.tar.gz", "has_sig": true, "md5_digest": "bb0c891f7eed84e6fe1e5cf9f572a6d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 308750, "upload_time": "2016-03-05T23:25:17", "url": "https://files.pythonhosted.org/packages/4f/b5/6b87ccbe00816db1cf1cbb27e7dee39cf9d850b113961e42ec9c30828481/counterparty-lib-9.54.0.tar.gz" } ], "9.55.0": [ { "comment_text": "", "digests": { "md5": "59b525f7d2499e194842ae235478420a", "sha256": "99051ae575f42580cbf64414be447e559d2bee1e3a815038eea9b41ae1e8c777" }, "downloads": -1, "filename": "counterparty-lib-9.55.0.tar.gz", "has_sig": true, "md5_digest": "59b525f7d2499e194842ae235478420a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 358888, "upload_time": "2016-07-11T22:57:30", "url": "https://files.pythonhosted.org/packages/ce/d8/2a00519904e9d4793be2fd15ba0c9ab9a3c3ac17180584c6d73c9dfa42d2/counterparty-lib-9.55.0.tar.gz" } ], "9.55.1": [ { "comment_text": "", "digests": { "md5": "c5761ab9ca83e379dc0c7c7e2d3c8869", "sha256": "ac94ffc7c968a4559f6bd89952922b14cc7e65094893509664e023b6b20b0710" }, "downloads": -1, "filename": "counterparty-lib-9.55.1.tar.gz", "has_sig": true, "md5_digest": "c5761ab9ca83e379dc0c7c7e2d3c8869", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 359625, "upload_time": "2016-12-03T15:04:53", "url": "https://files.pythonhosted.org/packages/9c/2c/878f308a395aec94520f3ef9f90b32b9dbce6b46a3c6a8f0b26c7d07df59/counterparty-lib-9.55.1.tar.gz" } ], "9.55.2": [], "9.55.3": [ { "comment_text": "", "digests": { "md5": "0b7eabf56541420d039dee5062a54399", "sha256": "07bae8635fc095f4b098eb0ffe330a915d89f166bcd3d26c4e13665ec50c9117" }, "downloads": -1, "filename": "counterparty-lib-9.55.3.tar.gz", "has_sig": false, "md5_digest": "0b7eabf56541420d039dee5062a54399", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 379016, "upload_time": "2017-09-28T14:43:10", "url": "https://files.pythonhosted.org/packages/42/68/ee396470eb4d5f94c3c47d3f88754d22fc8f62b25bc620dcade572369717/counterparty-lib-9.55.3.tar.gz" } ], "9.55.4": [ { "comment_text": "", "digests": { "md5": "7add05fb4c16f8f26df59137950630d0", "sha256": "91ddb455b9cefae7d32da31db2696b6169cf6f697259d3ffe79f5f5bb0c84296" }, "downloads": -1, "filename": "counterparty-lib-9.55.4.tar.gz", "has_sig": false, "md5_digest": "7add05fb4c16f8f26df59137950630d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 379155, "upload_time": "2017-10-31T18:46:29", "url": "https://files.pythonhosted.org/packages/de/d0/eee01d7ade5117fce0a817f39d55ab90436abc24ea0269355d19b84a1d52/counterparty-lib-9.55.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7add05fb4c16f8f26df59137950630d0", "sha256": "91ddb455b9cefae7d32da31db2696b6169cf6f697259d3ffe79f5f5bb0c84296" }, "downloads": -1, "filename": "counterparty-lib-9.55.4.tar.gz", "has_sig": false, "md5_digest": "7add05fb4c16f8f26df59137950630d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 379155, "upload_time": "2017-10-31T18:46:29", "url": "https://files.pythonhosted.org/packages/de/d0/eee01d7ade5117fce0a817f39d55ab90436abc24ea0269355d19b84a1d52/counterparty-lib-9.55.4.tar.gz" } ] }