{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "This is the Python core library of the Ethereum project.\n\nFor the python based command line client see:\nhttps://github.com/ethereum/pyethapp\n\nInstallation:\n-------------\n\n``sudo apt-get install libssl-dev build-essential automake pkg-config libtool libffi-dev libgmp-dev``\n\n``git clone https://github.com/ethereum/pyethereum/``\n\n``cd pyethereum``\n\n``python setup.py install``\n\nComponents\n----------\n\nethereum.pow.chain\n~~~~~~~~~~~~~~~~~~\n\nContains the Chain class, which can be used to manage a blockchain. Main\nmethods are:\n\n- ``__init__(genesis=None, env=None, new_head_cb=None, reset_genesis=False, localtime=None)``\n - initializes with the given genesis. ``env`` specifies the\n *environment* (including chain config and database), ``new_head_cb``\n is a callback called when a new head is added, and ``localtime`` is\n what the chain assumes is the current timestamp. The genesis can be:\n\n - None - in which case it assumes ``env`` is given, and creates a\n Chain object with the data saved in ``env.db``. If\n ``reset_genesis`` is set, it re-initializes the chain.\n - A ``State`` object\n - A genesis declaration\n - A state snapshot (``State.snapshot()``)\n - An allocation (ie. dict\n ``{address: {balance: 1, nonce: 2, code: b'\\x03\\x04\\x05', storage: {\"0x06\": \"0x07\"}}}``)\n\n- ``add_block(block)`` - adds a block to the chain\n- ``process_time_queue(timestamp)`` - tells the chain that the current\n time has increased to the new timestamp. The chain will then process\n any blocks that were unprocessed because they appeared too \"early\"\n- ``get_blockhash_by_number(num)`` - get the block hash of a block at\n the given block number\n- ``get_block(hash)`` - gets the block with the given blockhash\n- ``get_block_by_number(num)`` - equivalent to\n ``get_block(get_blockhash_by_number(num))``\n- ``get_parent(block)`` - gets the parent of a block\n- ``get_children(block)`` - gets the children of a block\n- ``head`` (property) - gets the block at the head of the chain\n- ``state`` (property) - gets the state at the head of the chain\n- ``mk_poststate_of_blockhash(hash)`` - creates a state object after a\n given block\n- ``has_block(block)`` - is that block in the chain? Returns True/False\n- ``get_chain(from, to)`` - roughly equivalent to\n ``[get_block_by_number(i) for i in range(from, to)]``, though\n automatically stops if it reaches the head. ``from`` can be elided to\n start from genesis, ``to`` can be elided to go up to the head.\n- ``get_tx_position(tx)`` - if the transaction is in the chain, returns\n ``(blknum, index)`` where ``blknum`` is the block number of the block\n that contains the transaction and ``index`` is its position in the\n block\n\nethereum.state\n~~~~~~~~~~~~~~\n\nContains the State class, which is used to manage a state. Main methods\nare:\n\n- ``__init__(root_hash, env, **kwargs)`` - initializes a state with the\n given root hash, the given env (which includes a config and database)\n and the given auxiliary arguments. These include:\n\n - ``txindex`` - the transaction index\n - ``gas_used`` - amount of gas used\n - ``gas_limit`` - block gas limit\n - ``block_number`` - block number\n - ``block_coinbase`` - block coinbase address\n - ``block_difficulty`` - block difficulty\n - ``timestamp`` - timestamp\n - ``logs`` - logs created so far\n - ``receipts`` - receipts created so far (from previous transactions\n in the current block)\n - ``bloom`` - the bloom filter\n - ``suicides`` - suicides (or selfdestructs, the newer more\n politically correct synonym)\n - ``recent_uncles`` - recent uncle blocks in the chain\n - ``prev_headers`` - previous block headers\n - ``refunds`` - suicide/selfdestruct refund counter\n\nPyethereum follows a **maximally state-centric model**; the ONLY\ninformation needed to process a transaction or a block is located within\nthe state itself, allowing the actual state transition logic to be a\nvery clean ``apply_transaction(state, tx)`` and\n``apply_block(state, block)``.\n\n- ``get_balance``- gets the balance of an account\n- ``get_code`` - gets the code of an account\n- ``get_storage_data(addr, k)`` - gets the storage at the given key of\n the given address. Expects a key in **numerical** form (eg. b\"cow\" or\n \"0x636f77\" is represented as 6516599).\n- ``to_snapshot(root_only=False, no_prevblocks=False)`` - creates a\n snapshot for the current state. If ``root_only`` is set, only adds\n the state root, not the entire state. If ``no_prevblocks`` is set,\n does not add previous headers and uncles. Setting either of those\n flags means that the same database would be required to recover from\n the snapshot.\n- ``from_snapshot(snapshot, env)`` (classmethod) - creates a state from\n the given snapshot with the given ``env``.\n- ``ephemeral_clone()`` - creates a clone of the state that you can\n work with without affecting the original\n\nThere are also many methods that modify the state, eg. ``set_code``,\n``set_storage_data``, but it is generally recommended to avoid using\nthese, and instead modify the state ONLY through ``apply_transaction``\nand ``apply_block``.\n\nethereum.meta\n~~~~~~~~~~~~~\n\nThis file contains two functions:\n\n- ``apply_block(state, block)`` - takes a state and processes a block\n onto that state\n- ``make_head_candidate(chain, txqueue=None, parent=None, timestamp, coinbase, extra_data, min_gasprice=0)``\n - creates a candidate block for the chain on top of the given parent\n block (default: head of the chain). Gets transactions from the given\n ``txqueue`` object with the given ``mingasprice`` (otherwise does not\n add transactions). ``timestamp``, ``coinbase`` and ``extra_data`` can\n be used to specify those parameters in the block; otherwise defaults\n are used\n\nethereum.messages\n~~~~~~~~~~~~~~~~~\n\nThe main function that should be called from here is\n``apply_transaction(state, tx)``.\n\nethereum.utils\n~~~~~~~~~~~~~~\n\nContains a bunch of utility functions, including:\n\nNumerical and hex conversions\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n- ``encode_int(i)`` - converts an integer into big-endian binary\n representation\n- ``zpad(data, length)`` - pads the data up to the desired length by\n adding zero bytes on the left\n- ``encode_int32(i)`` - equivalent to ``zpad(encode_int(i), 32)`` but\n faster\n- ``big_endian_to_int(d)`` - converts binary data into an integer\n- ``encode_hex(b)`` - converts bytes to hex\n- ``decode_hex(h)`` - converts hex to bytes\n- ``int_to_addr(i)`` - converts integer to address\n- ``is_numeric(i)`` - returns True if the value is int or long,\n otherwise False\n\nCryptography\n^^^^^^^^^^^^\n\n- ``sha3(data)`` - computes the SHA3 (or more precisely, keccak256)\n hash\n- ``ecrecover_to_pub(hash, v, r, s)`` - recovers the public key that\n made the signature as a 64-byte binary blob of\n ``encode_int32(x) + encode_int32(y)``. Hashing this and taking the\n last 20 bytes gives the *address* that signed a message.\n- ``ecsign(hash, key)`` - returns the v, r, s values of a signature\n- ``normalize_key(key)`` - converts a key from many formats into\n 32-byte binary\n- ``privtoaddr(key)`` - converts a key to an address\n\nAddresses\n^^^^^^^^^\n\n- ``normalize_address(addr)`` - converts an address into 20-byte binary\n form\n- ``check_checksum(addr)`` - returns True if the address checksum\n passes, otherwise False\n- ``checksum_encode(addr)`` - converts an address into hex form with a\n checksum\n- ``mk_contract_address(addr, nonce)`` - creates the address of a\n contract created by the given address with the given nonce\n\nMiscellaneous\n^^^^^^^^^^^^^\n\n- ``denoms`` - contains the denominations of ether, eg.\n ``denoms.finney = 10**15``, ``denoms.shannon = 10**9``,\n ``denoms.gwei = 10**9``\n\nethereum.block\n~~~~~~~~~~~~~~\n\nContains the ``Block`` and ``BlockHeader`` classes. Generally\nrecommended to avoid creating blocks and block headers directly, instead\nusing ``mk_head_candidate``. The member variables are straightforward:\n\n- ``block.transactions`` - transactions in a block\n- ``block.uncles`` - uncles in a block\n- ``block.header`` - header of a block\n\nAnd in the header:\n\n- ``header.hash`` - the hash (also the block hash)\n- ``header.mining_hash`` - the hash used for proof of work mining\n- ``header.to_dict()`` - serializes into a human-readable dict\n- ``header.prevhash`` - previous block hash\n- ``header.uncles_hash`` - hash of the uncle list\n- ``header.coinbase`` - coinbase (miner) address\n- ``header.state_root`` - root hash of the post-state\n- ``header.tx_list_root`` - hash of the transactions in the block\n- ``header.receipts_root`` - hash of the receipt trie\n- ``header.bloom`` - bloom filter\n- ``header.difficulty`` - block difficulty\n- ``header.number`` - block number\n- ``header.gas_limit`` - gas limit\n- ``header.gas_used`` - gas used\n- ``header.timestamp`` - timestamp\n- ``header.extra_data`` - block extra data\n- ``header.mixhash`` and ``header.nonce`` - Ethash proof of work values\n\nethereum.transactions\n~~~~~~~~~~~~~~~~~~~~~\n\nContains the Transaction class, with the following methods and values:\n\n- ``__init__(nonce, gasprice, startgas, to, value, data, (v, r, s optional))``\n - constructor\n- ``sign(key, network_id=None)`` - signs the transaction with the given\n key, and with the given EIP155 chain ID (leaving as None will create\n a pre-EIP155 tx, be warned of replay attacks if you do this!)\n- ``sender`` - the sender address of the transaction\n- ``network_id`` - the EIP155 chain ID of the transaction\n- ``hash`` - the hash of the transaction\n- ``to_dict()`` - serializes into a human-readable dict\n- ``intrinsic_gas_used`` - the amount of gas consumed by the\n transaction, including the cost of the tx data\n- ``creates`` - if the transaction creates a contract, returns the\n contract address\n- ``nonce``, ``gasprice``, ``startgas``, ``to``, ``value``, ``data``,\n ``v``, ``r``, ``s`` - parameters in the transaction\n\nethereum.tools.keys\n~~~~~~~~~~~~~~~~~~~\n\nCreates encrypted private key storaes\n\n- ``decode_keystore_json(jsondata, password)`` - returns the private\n key from an encrypted keystore object. NOTE: if you are loading from\n a file, the most convenient way to do this is\n ``import json; key = decode_keystore_json(json.load(open('filename.json')), 'password')``\n- ``make_keystore_json(key, pw, kdf='pbkdf2', cipher='aes-128-ctr')`` -\n creates an encrypted keystore object for the key. Keeping ``kdf`` and\n ``cipher`` at their default values is recommended.\n\nethereum.abi\n~~~~~~~~~~~~\n\nMost compilers for HLLs (solidity, serpent, viper, etc) on top of\nEthereum have the option to output an ABI declaration for a program.\nThis is a json object that looks something like this:\n\n::\n\n [{\"name\": \"ecrecover(uint256,uint256,uint256,uint256)\", \"type\": \"function\", \"constant\": false,\n \"inputs\": [{\"name\": \"h\", \"type\": \"uint256\"}, {\"name\": \"v\", \"type\": \"uint256\"}, {\"name\": \"r\", \"type\": \"uint256\"}, {\"name\": \"s\", \"type\": \"uint256\"}],\n \"outputs\": [{\"name\": \"out\", \"type\": \"int256[]\"}]},\n {\"name\": \"PubkeyTripleLogEvent(uint256,uint256,uint256)\", \"type\": \"event\",\n \"inputs\": [{\"name\": \"x\", \"type\": \"uint256\", \"indexed\": false}, {\"name\": \"y\", \"type\": \"uint256\", \"indexed\": false}, {\"name\": \"z\", \"type\": \"uint256\", \"indexed\": false}]}]\n\nYou can initialize an ``abi.ContractTranslator`` object to encode and\ndecode data for contracts as follows:\n\n::\n\n true, false = True, False \n ct = abi.ContractTranslator() \n txdata = ct.encode('function_name', [arg1, arg2, arg3]) \n\nYou can also call ``ct.decode_event([topic1, topic2...], logdata)`` to\ndecode a log.\n\nRLP encoding and decoding\n~~~~~~~~~~~~~~~~~~~~~~~~~\n\nFor any transaction or block, you can simply do:\n\n::\n\n import rlp \n bindata = rlp.encode() \n\nTo decode:\n\n::\n\n import rlp \n from ethereum.transactions import Transaction \n rlp.decode(blob, Transaction) \n\nOr:\n\n::\n\n import rlp \n from ethereum.blocks import Block \n rlp.decode(blob, Block) \n\nConsensus abstraction\n~~~~~~~~~~~~~~~~~~~~~\n\nThe pyethereum codebase is designed to be maximally friendly for use\nacross many different consensus algorithms. If you want to add a new\nconsensus algo, you'll need to take the following steps:\n\n- Add a directory alongside ``pow``, and in it create a ``chain.py``\n class that implements a ``Chain`` module. This may have a totally\n different fork choice rule for proof of work (GHOST, signature\n counting, Casper, etc).\n- Add an entry to ``consensus_strategy.py``. You will need to\n implement:\n\n - ``check_seal`` - check that a block is correctly \"sealed\" (mined,\n signed, etc)\n - ``validate_uncles(state, block)`` - check that uncles are valid\n - ``initialize(state, block)`` - called in ``apply_block`` before\n transactions are processed\n - ``finalize(state, block)`` - called in ``apply_block`` after\n transactions are processed\n - ``get_uncle_candidates(chain, state)`` - called in\n ``mk_head_candidate`` to include uncles in a block\n\n- Create a chain config with the ``CONSENSUS_STRATEGY`` set to whatever\n you named your new consensus strategy\n\nTester module\n-------------\n\nSee https://github.com/ethereum/pyethereum/wiki/Using-pyethereum.tester\n\nTests\n-----\n\nRun ``python3.6 -m pytest ethereum/tests/`` for any .py file\nin that directory. Currently all tests are passing except for a few\nMetropolis-specific state tests and block tests.\n\nTo make your own state tests, use the tester module as follows:\n\n::\n\n from ethereum.tools import tester as t \n import json \n c = t.Chain() \n x = c.contract(, language=) \n pre = t.mk_state_test_prefill(c) \n x.foo() \n post = t.mk_state_test_postfill(c, pre) \n open('output.json', 'w').write(json.dumps(post, indent=4)) \n\nTo make a test filler file instead, do\n``post = t.mk_state_test_postfill(c, pre, True)``.\n\nLicense\n-------\n\nSee `LICENSE `_\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ethereum/pyethereum/", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "ethereum-augur-temp", "package_url": "https://pypi.org/project/ethereum-augur-temp/", "platform": "", "project_url": "https://pypi.org/project/ethereum-augur-temp/", "project_urls": { "Homepage": "https://github.com/ethereum/pyethereum/" }, "release_url": "https://pypi.org/project/ethereum-augur-temp/2.1.10/", "requires_dist": null, "requires_python": "", "summary": "Next generation cryptocurrency network", "version": "2.1.10" }, "last_serial": 3247229, "releases": { "2.0.4": [ { "comment_text": "", "digests": { "md5": "148f965c15397eeb48cdf310c488b425", "sha256": "aee28cfe600502632c1dc6c05c528e47923612a63c5c9e802c67e1f49536de06" }, "downloads": -1, "filename": "ethereum_augur_temp-2.0.4-py2-none-any.whl", "has_sig": false, "md5_digest": "148f965c15397eeb48cdf310c488b425", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 166125, "upload_time": "2017-07-12T07:04:48", "url": "https://files.pythonhosted.org/packages/2c/5a/d98857e6f95f1587e18d57760882427c4be35c875015b989a2fac3b5b144/ethereum_augur_temp-2.0.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7df63e713f64832d88be17e76a8ae6cc", "sha256": "ff52939c9c8017eb8f12cdf0e5a5387872ac4ed2d3959ccf728813ba1e3c8b70" }, "downloads": -1, "filename": "ethereum-augur-temp-2.0.4.tar.gz", "has_sig": false, "md5_digest": "7df63e713f64832d88be17e76a8ae6cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 133791, "upload_time": "2017-07-12T07:04:46", "url": "https://files.pythonhosted.org/packages/52/97/9110ffdbee5d1d0f07531ae785897db2193b2440e0af014fe3c0263ecec1/ethereum-augur-temp-2.0.4.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "6b742d9706c80902da551821c0e79d93", "sha256": "b9f6cf31f1bd481d12fcaf350418d817ea31d37d9f34e6abd4a76f158609de31" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "6b742d9706c80902da551821c0e79d93", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 166423, "upload_time": "2017-07-17T20:47:50", "url": "https://files.pythonhosted.org/packages/05/10/df002ddfa468fa5f93491371825716883ec7c4bab6a230f803f18d269e53/ethereum_augur_temp-2.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2dc64365b6a49f18ccffa4de354618a9", "sha256": "827ad94db213e32c3cbbae78ad2af98949d4617d5fcb3b7f04ed57e79c472d5d" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.0.tar.gz", "has_sig": false, "md5_digest": "2dc64365b6a49f18ccffa4de354618a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 134072, "upload_time": "2017-07-17T20:47:47", "url": "https://files.pythonhosted.org/packages/63/52/a92aa90365db2df7803a06a6a918d98a4d156ed3ec260554faf6a46ae789/ethereum-augur-temp-2.1.0.tar.gz" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "dccec3dda145e07273d0e22d8db21f26", "sha256": "17e8b19dcdc6fff984307567f77881caa0042c8f7c4918bbffc69b1305203b2f" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "dccec3dda145e07273d0e22d8db21f26", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 166184, "upload_time": "2017-10-01T04:25:16", "url": "https://files.pythonhosted.org/packages/f2/bb/767e70794ffc80dce3dc581839d0786f721f1413391666c6dfd1274d5fbd/ethereum_augur_temp-2.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a728a0297e5218ee91725017be3245f", "sha256": "bde8c1c2788ac063a48c481b9031819ca53fdad6880cbd62a646f2b68461811a" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.1.tar.gz", "has_sig": false, "md5_digest": "1a728a0297e5218ee91725017be3245f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 133647, "upload_time": "2017-10-01T04:25:13", "url": "https://files.pythonhosted.org/packages/20/28/0c8888c339c39c0281055da9bb19f3db7f795c47d3001be3d9dc5b160f7a/ethereum-augur-temp-2.1.1.tar.gz" } ], "2.1.10": [ { "comment_text": "", "digests": { "md5": "fd5f744fdf3fc3e7bf19d9a61c52516b", "sha256": "0e26ea749b75ca9229eb2f59797cb21d9a4d29b41f11a2e3ce455f6a615bd64c" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.10-py2-none-any.whl", "has_sig": false, "md5_digest": "fd5f744fdf3fc3e7bf19d9a61c52516b", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 185126, "upload_time": "2017-10-13T07:46:43", "url": "https://files.pythonhosted.org/packages/37/6b/aa68d071159e5d78eaea61f9810d8e8341f02802bc7fc970aafdee6aac6f/ethereum_augur_temp-2.1.10-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0fe1ca0d7bd45c95564644a84bfe2980", "sha256": "4646d56cea895e0c2f3491954fa2cbd86c41765bb086ed5a121a30e5ff53f7f0" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.10.tar.gz", "has_sig": false, "md5_digest": "0fe1ca0d7bd45c95564644a84bfe2980", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 150189, "upload_time": "2017-10-13T07:46:39", "url": "https://files.pythonhosted.org/packages/fc/73/295575e884e3610f4469bf87efac840327e4ac1b4804a4b0d4c80380949b/ethereum-augur-temp-2.1.10.tar.gz" } ], "2.1.2": [ { "comment_text": "", "digests": { "md5": "6fa29a16950a0fb5abae12d9b807d4dd", "sha256": "d39193c60b65b54c380c60a070d793ff077f2585c1ab668206365e55bc21d36a" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.2-py2-none-any.whl", "has_sig": false, "md5_digest": "6fa29a16950a0fb5abae12d9b807d4dd", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 166201, "upload_time": "2017-10-01T06:39:24", "url": "https://files.pythonhosted.org/packages/1f/77/0e0275178ddf1c46483f5a4db69110116d84225fc836c6b1fe904c636d72/ethereum_augur_temp-2.1.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a505dea2b8be495991aa423dd7bc74e9", "sha256": "b115916a6a510759dd6ce7211b2dd8f01a8d1383c6bb784ec4c9af96c8719753" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.2.tar.gz", "has_sig": false, "md5_digest": "a505dea2b8be495991aa423dd7bc74e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 133690, "upload_time": "2017-10-01T06:39:22", "url": "https://files.pythonhosted.org/packages/a1/29/db9dae63cb3d975b0bb94d0514986368672ec2eb28d5238dea41c73e8fdb/ethereum-augur-temp-2.1.2.tar.gz" } ], "2.1.3": [ { "comment_text": "", "digests": { "md5": "da7db65b61381cf01e6dcb9ff803ba4b", "sha256": "9476d9971e933bbdad09077bcf2951b33e6205c3b950423c17c9271fa1d35896" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.3-py2-none-any.whl", "has_sig": false, "md5_digest": "da7db65b61381cf01e6dcb9ff803ba4b", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 169645, "upload_time": "2017-10-04T19:01:17", "url": "https://files.pythonhosted.org/packages/38/64/b8403a026f94262578fe04c5284ae7f71914592e158c57c63ed8a18c35aa/ethereum_augur_temp-2.1.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "83e36dc253a8710a37da0abe89b939d3", "sha256": "9b3012ee26eb0009280cedb5fbec0bcd870cb8bc01ce3c7cfef061c6732200ec" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.3.tar.gz", "has_sig": false, "md5_digest": "83e36dc253a8710a37da0abe89b939d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 137157, "upload_time": "2017-10-04T19:01:15", "url": "https://files.pythonhosted.org/packages/a2/ce/24364cca283b9c4ec41bf6116b3c003eedd4cbc9bfd05059be9feacf4d67/ethereum-augur-temp-2.1.3.tar.gz" } ], "2.1.4": [ { "comment_text": "", "digests": { "md5": "93979520604e9cda991db499f78875ac", "sha256": "340aa3c6379ef27a77c68ad15339aadafaaebf11dd32dafc44f2b5886885eea4" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.4-py2-none-any.whl", "has_sig": false, "md5_digest": "93979520604e9cda991db499f78875ac", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 169668, "upload_time": "2017-10-05T18:18:52", "url": "https://files.pythonhosted.org/packages/84/eb/86d2afe46e207b15e22c6bd2efdcb7d7640d946d4cf6f3a675a202eac2a4/ethereum_augur_temp-2.1.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cfb909a19a0e8adb65139a5084bc4d42", "sha256": "216279e2d58a104187f35e532f550694417571b3da11d17c85aadbec1a7f69e5" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.4.tar.gz", "has_sig": false, "md5_digest": "cfb909a19a0e8adb65139a5084bc4d42", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 137133, "upload_time": "2017-10-05T18:18:49", "url": "https://files.pythonhosted.org/packages/d7/29/9c88e7435749b0230dd7e2bc00bf7b1feaff6edc3e73d2b255a5cfa81a8b/ethereum-augur-temp-2.1.4.tar.gz" } ], "2.1.5": [ { "comment_text": "", "digests": { "md5": "630073a7bcb2921a4515a344903d64d7", "sha256": "55936c23c8b8407c72f2a126b8daa34b16ce257a024a283951f51e97acc54855" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.5-py2-none-any.whl", "has_sig": false, "md5_digest": "630073a7bcb2921a4515a344903d64d7", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 170167, "upload_time": "2017-10-10T05:02:42", "url": "https://files.pythonhosted.org/packages/9d/9c/e149aa4bce0c25ef7a1f2ff7304f0489050da87129de4b3aded721e00183/ethereum_augur_temp-2.1.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3f5bbe11c05c9a24fd3ca07f53c3f686", "sha256": "d80154136317d7590c248ebd8b430e79f57999edd43abc5ceccadcf9f6a0bf0f" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.5.tar.gz", "has_sig": false, "md5_digest": "3f5bbe11c05c9a24fd3ca07f53c3f686", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 137397, "upload_time": "2017-10-10T05:02:38", "url": "https://files.pythonhosted.org/packages/b3/09/b8c3cd4d5e4cccbdbf6f557da8f6cae3531ebfd1de15f387dc8fa91345e6/ethereum-augur-temp-2.1.5.tar.gz" } ], "2.1.6": [ { "comment_text": "", "digests": { "md5": "8ac1e70bc6579e1fcf886011d297ce75", "sha256": "fc33cb1936a58aba9b402290b13365fbc4b8274de1e1dc56d5f218829f7e404a" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.6-py2-none-any.whl", "has_sig": false, "md5_digest": "8ac1e70bc6579e1fcf886011d297ce75", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 185098, "upload_time": "2017-10-11T03:05:47", "url": "https://files.pythonhosted.org/packages/22/fc/e5ffbea22660abc2e5926efd6525247a57cfe143a485b8cf2f72ca121c5d/ethereum_augur_temp-2.1.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "519851876e09075118fcd244ca9d773e", "sha256": "37af1df65fabb422409c613c3f0e0f9a060a8667ee83c5ac1f9c6f499185b78b" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.6.tar.gz", "has_sig": false, "md5_digest": "519851876e09075118fcd244ca9d773e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 150161, "upload_time": "2017-10-11T03:05:42", "url": "https://files.pythonhosted.org/packages/99/50/7c215e74705f3fed4d268373a8cb08ad7e5d0ca56049461e625f62f12682/ethereum-augur-temp-2.1.6.tar.gz" } ], "2.1.7": [ { "comment_text": "", "digests": { "md5": "53bd6718c34884ac3e8746e85db4454a", "sha256": "5cfe8b0197c5543b37b5536243d52bfa7b18787e5dfde383a8ef1e3b1b22f4fd" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.7-py2-none-any.whl", "has_sig": false, "md5_digest": "53bd6718c34884ac3e8746e85db4454a", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 185109, "upload_time": "2017-10-11T03:24:27", "url": "https://files.pythonhosted.org/packages/6a/0c/5ebb10365b3ea2fc8187e1f969fd568288acd5020436aa8268ee3fefe059/ethereum_augur_temp-2.1.7-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "62d3c9f0132e170aab78c4eaeabd702a", "sha256": "d900feb7e776bfeb784c326164c4cf902b8a41bb22633efc3ffc5470c71870c0" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.7.tar.gz", "has_sig": false, "md5_digest": "62d3c9f0132e170aab78c4eaeabd702a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 150177, "upload_time": "2017-10-11T03:24:23", "url": "https://files.pythonhosted.org/packages/e3/fc/ec571a23b57d89260485fadb564aa7d9c4fcaf315ede213a9aecb0d2f8c6/ethereum-augur-temp-2.1.7.tar.gz" } ], "2.1.8": [ { "comment_text": "", "digests": { "md5": "b12fdde8310fe38ee1002afd34058c94", "sha256": "9d3a64c12cd45e3389a0415edee63b5aeee67f2eb266712d6f1f0897e6538b08" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.8-py2-none-any.whl", "has_sig": false, "md5_digest": "b12fdde8310fe38ee1002afd34058c94", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 185114, "upload_time": "2017-10-11T04:36:48", "url": "https://files.pythonhosted.org/packages/b2/f7/eed13158c929cf4c6c28eefd75c76a1d8ac20637cb42a9edf2be50e42b0f/ethereum_augur_temp-2.1.8-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1bee12995d8da54aadb15e4a12552aaf", "sha256": "23a2b3f4a8f041c9c26208d7328f394c7a2a370b9d2df7f1d17a543f55ea5956" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.8.tar.gz", "has_sig": false, "md5_digest": "1bee12995d8da54aadb15e4a12552aaf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 150183, "upload_time": "2017-10-11T04:36:44", "url": "https://files.pythonhosted.org/packages/c0/5c/482864a8a4b18c2badaf5f002dab38a459863b1a35c9c5b5a2a9e9f1f14a/ethereum-augur-temp-2.1.8.tar.gz" } ], "2.1.9": [ { "comment_text": "", "digests": { "md5": "2f85512286e4421389c6a706240ff611", "sha256": "ceb7bf06262cda0249dbc1638700489c453ae47634673207a1d86e513d04f590" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.9-py2-none-any.whl", "has_sig": false, "md5_digest": "2f85512286e4421389c6a706240ff611", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 185114, "upload_time": "2017-10-13T06:40:59", "url": "https://files.pythonhosted.org/packages/5c/e2/b0146aad5678716770ec34a55fc526d911c149028caab0ec5c49c193b3c2/ethereum_augur_temp-2.1.9-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e8b443d29163c0be2975e30a4aa6c363", "sha256": "f21fa52cda28cf335dde7f7bc8e999a4093d55687d4d917b0ec413abc370f0f0" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.9.tar.gz", "has_sig": false, "md5_digest": "e8b443d29163c0be2975e30a4aa6c363", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 150187, "upload_time": "2017-10-13T06:40:54", "url": "https://files.pythonhosted.org/packages/8b/a1/c4d7115236eb90a352d725e9285ce2cb60b54798b5f75a7f963bb8ba54ec/ethereum-augur-temp-2.1.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fd5f744fdf3fc3e7bf19d9a61c52516b", "sha256": "0e26ea749b75ca9229eb2f59797cb21d9a4d29b41f11a2e3ce455f6a615bd64c" }, "downloads": -1, "filename": "ethereum_augur_temp-2.1.10-py2-none-any.whl", "has_sig": false, "md5_digest": "fd5f744fdf3fc3e7bf19d9a61c52516b", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 185126, "upload_time": "2017-10-13T07:46:43", "url": "https://files.pythonhosted.org/packages/37/6b/aa68d071159e5d78eaea61f9810d8e8341f02802bc7fc970aafdee6aac6f/ethereum_augur_temp-2.1.10-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0fe1ca0d7bd45c95564644a84bfe2980", "sha256": "4646d56cea895e0c2f3491954fa2cbd86c41765bb086ed5a121a30e5ff53f7f0" }, "downloads": -1, "filename": "ethereum-augur-temp-2.1.10.tar.gz", "has_sig": false, "md5_digest": "0fe1ca0d7bd45c95564644a84bfe2980", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 150189, "upload_time": "2017-10-13T07:46:39", "url": "https://files.pythonhosted.org/packages/fc/73/295575e884e3610f4469bf87efac840327e4ac1b4804a4b0d4c80380949b/ethereum-augur-temp-2.1.10.tar.gz" } ] }