web3 7.0.0b1__py3-none-any.whl → 7.0.0b3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. ens/async_ens.py +6 -8
  2. ens/ens.py +6 -6
  3. ens/utils.py +18 -16
  4. web3/_utils/abi.py +9 -15
  5. web3/_utils/events.py +15 -6
  6. web3/_utils/math.py +12 -14
  7. web3/_utils/method_formatters.py +7 -0
  8. web3/_utils/module_testing/eth_module.py +67 -6
  9. web3/_utils/module_testing/module_testing_utils.py +2 -2
  10. web3/_utils/request.py +1 -1
  11. web3/_utils/rpc_abi.py +1 -0
  12. web3/_utils/transactions.py +4 -0
  13. web3/contract/base_contract.py +1 -1
  14. web3/datastructures.py +7 -7
  15. web3/eth/async_eth.py +20 -2
  16. web3/eth/eth.py +13 -1
  17. web3/exceptions.py +11 -0
  18. web3/main.py +4 -30
  19. web3/manager.py +12 -13
  20. web3/middleware/__init__.py +9 -8
  21. web3/module.py +1 -1
  22. web3/providers/async_base.py +6 -6
  23. web3/providers/base.py +8 -8
  24. web3/providers/eth_tester/main.py +16 -20
  25. web3/providers/ipc.py +1 -1
  26. web3/providers/legacy_websocket.py +1 -1
  27. web3/providers/persistent/persistent.py +2 -2
  28. web3/providers/persistent/request_processor.py +3 -5
  29. web3/tools/benchmark/main.py +2 -2
  30. web3/types.py +4 -0
  31. web3/utils/caching.py +2 -4
  32. {web3-7.0.0b1.dist-info → web3-7.0.0b3.dist-info}/METADATA +3 -9
  33. web3-7.0.0b3.dist-info/RECORD +168 -0
  34. {web3-7.0.0b1.dist-info → web3-7.0.0b3.dist-info}/WHEEL +1 -1
  35. {web3-7.0.0b1.dist-info → web3-7.0.0b3.dist-info}/top_level.txt +0 -1
  36. ethpm/__init__.py +0 -20
  37. ethpm/_utils/__init__.py +0 -0
  38. ethpm/_utils/backend.py +0 -93
  39. ethpm/_utils/cache.py +0 -44
  40. ethpm/_utils/chains.py +0 -119
  41. ethpm/_utils/contract.py +0 -35
  42. ethpm/_utils/deployments.py +0 -145
  43. ethpm/_utils/ipfs.py +0 -116
  44. ethpm/_utils/protobuf/__init__.py +0 -0
  45. ethpm/_utils/protobuf/ipfs_file_pb2.py +0 -33
  46. ethpm/_utils/registry.py +0 -29
  47. ethpm/assets/__init__.py +0 -0
  48. ethpm/assets/ens/v3.json +0 -1
  49. ethpm/assets/escrow/with_bytecode_v3.json +0 -1
  50. ethpm/assets/ipfs_file.proto +0 -32
  51. ethpm/assets/owned/output_v3.json +0 -1
  52. ethpm/assets/owned/with_contract_type_v3.json +0 -1
  53. ethpm/assets/registry/contracts/Authority.sol +0 -156
  54. ethpm/assets/registry/contracts/IndexedOrderedSetLib.sol +0 -106
  55. ethpm/assets/registry/contracts/PackageDB.sol +0 -225
  56. ethpm/assets/registry/contracts/PackageRegistry.sol +0 -361
  57. ethpm/assets/registry/contracts/PackageRegistryInterface.sol +0 -97
  58. ethpm/assets/registry/contracts/ReleaseDB.sol +0 -309
  59. ethpm/assets/registry/contracts/ReleaseValidator.sol +0 -152
  60. ethpm/assets/registry/solc_input.json +0 -1
  61. ethpm/assets/registry/solc_output.json +0 -1
  62. ethpm/assets/registry/v3.json +0 -1
  63. ethpm/assets/safe-math-lib/v3-strict-no-deployments.json +0 -1
  64. ethpm/assets/simple-registry/contracts/Ownable.sol +0 -63
  65. ethpm/assets/simple-registry/contracts/PackageRegistry.sol +0 -373
  66. ethpm/assets/simple-registry/contracts/PackageRegistryInterface.sol +0 -96
  67. ethpm/assets/simple-registry/solc_input.json +0 -33
  68. ethpm/assets/simple-registry/solc_output.json +0 -1
  69. ethpm/assets/simple-registry/v3.json +0 -1
  70. ethpm/assets/standard-token/output_v3.json +0 -1
  71. ethpm/assets/standard-token/with_bytecode_v3.json +0 -1
  72. ethpm/assets/vyper_registry/0.1.0.json +0 -1
  73. ethpm/assets/vyper_registry/registry.vy +0 -216
  74. ethpm/assets/vyper_registry/registry_with_delete.vy +0 -244
  75. ethpm/backends/__init__.py +0 -0
  76. ethpm/backends/base.py +0 -43
  77. ethpm/backends/http.py +0 -108
  78. ethpm/backends/ipfs.py +0 -219
  79. ethpm/backends/registry.py +0 -154
  80. ethpm/constants.py +0 -17
  81. ethpm/contract.py +0 -187
  82. ethpm/dependencies.py +0 -58
  83. ethpm/deployments.py +0 -80
  84. ethpm/ethpm-spec/examples/escrow/1.0.0-pretty.json +0 -146
  85. ethpm/ethpm-spec/examples/escrow/1.0.0.json +0 -1
  86. ethpm/ethpm-spec/examples/escrow/contracts/Escrow.sol +0 -32
  87. ethpm/ethpm-spec/examples/escrow/contracts/SafeSendLib.sol +0 -20
  88. ethpm/ethpm-spec/examples/escrow/v3-pretty.json +0 -171
  89. ethpm/ethpm-spec/examples/escrow/v3.json +0 -1
  90. ethpm/ethpm-spec/examples/owned/1.0.0-pretty.json +0 -21
  91. ethpm/ethpm-spec/examples/owned/1.0.0.json +0 -1
  92. ethpm/ethpm-spec/examples/owned/contracts/Owned.sol +0 -12
  93. ethpm/ethpm-spec/examples/owned/v3-pretty.json +0 -27
  94. ethpm/ethpm-spec/examples/owned/v3.json +0 -1
  95. ethpm/ethpm-spec/examples/piper-coin/1.0.0-pretty.json +0 -31
  96. ethpm/ethpm-spec/examples/piper-coin/1.0.0.json +0 -1
  97. ethpm/ethpm-spec/examples/piper-coin/v3-pretty.json +0 -21
  98. ethpm/ethpm-spec/examples/piper-coin/v3.json +0 -1
  99. ethpm/ethpm-spec/examples/safe-math-lib/1.0.0-pretty.json +0 -85
  100. ethpm/ethpm-spec/examples/safe-math-lib/1.0.0.json +0 -1
  101. ethpm/ethpm-spec/examples/safe-math-lib/contracts/SafeMathLib.sol +0 -24
  102. ethpm/ethpm-spec/examples/safe-math-lib/v3-pretty.json +0 -117
  103. ethpm/ethpm-spec/examples/safe-math-lib/v3.json +0 -1
  104. ethpm/ethpm-spec/examples/standard-token/1.0.0-pretty.json +0 -55
  105. ethpm/ethpm-spec/examples/standard-token/1.0.0.json +0 -1
  106. ethpm/ethpm-spec/examples/standard-token/contracts/AbstractToken.sol +0 -20
  107. ethpm/ethpm-spec/examples/standard-token/contracts/StandardToken.sol +0 -84
  108. ethpm/ethpm-spec/examples/standard-token/v3-pretty.json +0 -460
  109. ethpm/ethpm-spec/examples/standard-token/v3.json +0 -1
  110. ethpm/ethpm-spec/examples/transferable/1.0.0-pretty.json +0 -21
  111. ethpm/ethpm-spec/examples/transferable/1.0.0.json +0 -1
  112. ethpm/ethpm-spec/examples/transferable/contracts/Transferable.sol +0 -14
  113. ethpm/ethpm-spec/examples/transferable/v3-pretty.json +0 -27
  114. ethpm/ethpm-spec/examples/transferable/v3.json +0 -1
  115. ethpm/ethpm-spec/examples/wallet/1.0.0-pretty.json +0 -120
  116. ethpm/ethpm-spec/examples/wallet/1.0.0.json +0 -1
  117. ethpm/ethpm-spec/examples/wallet/contracts/Wallet.sol +0 -41
  118. ethpm/ethpm-spec/examples/wallet/v3-pretty.json +0 -181
  119. ethpm/ethpm-spec/examples/wallet/v3.json +0 -1
  120. ethpm/ethpm-spec/examples/wallet-with-send/1.0.0-pretty.json +0 -135
  121. ethpm/ethpm-spec/examples/wallet-with-send/1.0.0.json +0 -1
  122. ethpm/ethpm-spec/examples/wallet-with-send/contracts/WalletWithSend.sol +0 -18
  123. ethpm/ethpm-spec/examples/wallet-with-send/v3-pretty.json +0 -207
  124. ethpm/ethpm-spec/examples/wallet-with-send/v3.json +0 -1
  125. ethpm/ethpm-spec/spec/package.spec.json +0 -379
  126. ethpm/ethpm-spec/spec/v3.spec.json +0 -483
  127. ethpm/exceptions.py +0 -68
  128. ethpm/package.py +0 -438
  129. ethpm/tools/__init__.py +0 -4
  130. ethpm/tools/builder.py +0 -930
  131. ethpm/tools/checker.py +0 -312
  132. ethpm/tools/get_manifest.py +0 -19
  133. ethpm/uri.py +0 -141
  134. ethpm/validation/__init__.py +0 -0
  135. ethpm/validation/manifest.py +0 -146
  136. ethpm/validation/misc.py +0 -39
  137. ethpm/validation/package.py +0 -80
  138. ethpm/validation/uri.py +0 -163
  139. web3/pm.py +0 -602
  140. web3/tools/__init__.py +0 -4
  141. web3/tools/pytest_ethereum/__init__.py +0 -0
  142. web3/tools/pytest_ethereum/_utils.py +0 -145
  143. web3/tools/pytest_ethereum/deployer.py +0 -48
  144. web3/tools/pytest_ethereum/exceptions.py +0 -22
  145. web3/tools/pytest_ethereum/linker.py +0 -128
  146. web3/tools/pytest_ethereum/plugins.py +0 -33
  147. web3-7.0.0b1.dist-info/RECORD +0 -280
  148. web3-7.0.0b1.dist-info/entry_points.txt +0 -2
  149. {web3-7.0.0b1.dist-info → web3-7.0.0b3.dist-info}/LICENSE +0 -0
@@ -1,207 +0,0 @@
1
- {
2
- "manifest": "ethpm/3",
3
- "version": "1.0.0",
4
- "name": "wallet-with-send",
5
- "sources": {
6
- "WalletWithSend.sol": {
7
- "type": "solidity",
8
- "installPath": "./WalletWithSend.sol",
9
- "urls": [
10
- "ipfs://QmQmKim8MpVGgkaJzHCAWkAJnr3hPLrUXmaz5Ao1gWjxNY"
11
- ]
12
- }
13
- },
14
- "compilers": [
15
- {
16
- "contractTypes": [
17
- "WalletWithSend"
18
- ],
19
- "name": "solc",
20
- "version": "0.6.8+commit.0bbfe453",
21
- "settings": {
22
- "optimize": false
23
- }
24
- }
25
- ],
26
- "contractTypes": {
27
- "WalletWithSend": {
28
- "sourceId": "WalletWithSend.sol",
29
- "deploymentBytecode": {
30
- "bytecode": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506105e1806100606000396000f3fe608060405234801561001057600080fd5b50600436106100505760003560e01c8063095ea7b3146100535780632e1a7d4d146100b9578063c577ff8b146100ff578063d0679d341461014d57610051565b5b005b61009f6004803603604081101561006957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506101b3565b604051808215151515815260200191505060405180910390f35b6100e5600480360360208110156100cf57600080fd5b810190808035906020019092919050505061025c565b604051808215151515815260200191505060405180910390f35b61014b6004803603604081101561011557600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103bb565b005b6101996004803603604081101561016357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610513565b604051808215151515815260200191505060405180910390f35b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461020e57600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205473000000000000000000000000000000000000000063a293d1e89091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156102f657600080fd5b505af415801561030a573d6000803e3d6000fd5b505050506040513d602081101561032057600080fd5b8101908080519060200190929190505050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050506103b257600080fd5b60019050919050565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205473000000000000000000000000000000000000000063a293d1e89091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561045357600080fd5b505af4158015610467573d6000803e3d6000fd5b505050506040513d602081101561047d57600080fd5b8101908080519060200190929190505050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505061050f57600080fd5b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461056e57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505090509291505056fea2646970667358221220b3e9d35017f06ad00bdc4a7887a8d810719509dbab16e308d48e0a800d95d90e64736f6c63430006080033",
31
- "linkReferences": [
32
- {
33
- "offsets": [
34
- 768,
35
- 1117
36
- ],
37
- "length": 20,
38
- "name": "wallet:safe-math-lib:SafeMathLib"
39
- }
40
- ]
41
- },
42
- "runtimeBytecode": {
43
- "bytecode": "0x608060405234801561001057600080fd5b50600436106100505760003560e01c8063095ea7b3146100535780632e1a7d4d146100b9578063c577ff8b146100ff578063d0679d341461014d57610051565b5b005b61009f6004803603604081101561006957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506101b3565b604051808215151515815260200191505060405180910390f35b6100e5600480360360208110156100cf57600080fd5b810190808035906020019092919050505061025c565b604051808215151515815260200191505060405180910390f35b61014b6004803603604081101561011557600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103bb565b005b6101996004803603604081101561016357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610513565b604051808215151515815260200191505060405180910390f35b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461020e57600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205473000000000000000000000000000000000000000063a293d1e89091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156102f657600080fd5b505af415801561030a573d6000803e3d6000fd5b505050506040513d602081101561032057600080fd5b8101908080519060200190929190505050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050506103b257600080fd5b60019050919050565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205473000000000000000000000000000000000000000063a293d1e89091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561045357600080fd5b505af4158015610467573d6000803e3d6000fd5b505050506040513d602081101561047d57600080fd5b8101908080519060200190929190505050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505061050f57600080fd5b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461056e57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505090509291505056fea2646970667358221220b3e9d35017f06ad00bdc4a7887a8d810719509dbab16e308d48e0a800d95d90e64736f6c63430006080033",
44
- "linkReferences": [
45
- {
46
- "offsets": [
47
- 672,
48
- 1021
49
- ],
50
- "length": 20,
51
- "name": "wallet:safe-math-lib:SafeMathLib"
52
- }
53
- ]
54
- },
55
- "abi": [
56
- {
57
- "stateMutability": "nonpayable",
58
- "type": "fallback"
59
- },
60
- {
61
- "inputs": [
62
- {
63
- "internalType": "address",
64
- "name": "recipient",
65
- "type": "address"
66
- },
67
- {
68
- "internalType": "uint256",
69
- "name": "value",
70
- "type": "uint256"
71
- }
72
- ],
73
- "name": "approve",
74
- "outputs": [
75
- {
76
- "internalType": "bool",
77
- "name": "",
78
- "type": "bool"
79
- }
80
- ],
81
- "stateMutability": "nonpayable",
82
- "type": "function"
83
- },
84
- {
85
- "inputs": [
86
- {
87
- "internalType": "uint256",
88
- "name": "value",
89
- "type": "uint256"
90
- },
91
- {
92
- "internalType": "address payable",
93
- "name": "to",
94
- "type": "address"
95
- }
96
- ],
97
- "name": "approvedSend",
98
- "outputs": [],
99
- "stateMutability": "nonpayable",
100
- "type": "function"
101
- },
102
- {
103
- "inputs": [
104
- {
105
- "internalType": "address payable",
106
- "name": "recipient",
107
- "type": "address"
108
- },
109
- {
110
- "internalType": "uint256",
111
- "name": "value",
112
- "type": "uint256"
113
- }
114
- ],
115
- "name": "send",
116
- "outputs": [
117
- {
118
- "internalType": "bool",
119
- "name": "",
120
- "type": "bool"
121
- }
122
- ],
123
- "stateMutability": "nonpayable",
124
- "type": "function"
125
- },
126
- {
127
- "inputs": [
128
- {
129
- "internalType": "uint256",
130
- "name": "value",
131
- "type": "uint256"
132
- }
133
- ],
134
- "name": "withdraw",
135
- "outputs": [
136
- {
137
- "internalType": "bool",
138
- "name": "",
139
- "type": "bool"
140
- }
141
- ],
142
- "stateMutability": "nonpayable",
143
- "type": "function"
144
- }
145
- ],
146
- "devdoc": {
147
- "author": "Piper Merriam <pipermerriam@gmail.com>",
148
- "methods": {
149
- "approve(address,uint256)": {
150
- "details": "Sets recipient to be approved to withdraw the specified amount"
151
- },
152
- "send(address,uint256)": {
153
- "details": "Sends the recipient the specified amount"
154
- },
155
- "approvedSend(uint256,address)": {
156
- "details": "Sends funds that have been approved to the specified address"
157
- },
158
- "withdraw(uint256)": {
159
- "details": "Lets caller withdraw up to their approved amount"
160
- }
161
- },
162
- "title": "Wallet contract with simple send and approval spending functionality"
163
- },
164
- "userdoc": {
165
- "methods": {
166
- "approve(address,uint256)": {
167
- "notice": "This will set the recipient to be approved to withdraw the specified amount."
168
- },
169
- "send(address,uint256)": {
170
- "notice": "This will send the reciepient the specified amount."
171
- },
172
- "approvedSend(uint256,address)": {
173
- "notice": "This will send the reciepient the specified amount."
174
- },
175
- "withdraw(uint256)": {
176
- "notice": "This will withdraw provided value, deducting it from your total allowance."
177
- }
178
- }
179
- }
180
- }
181
- },
182
- "deployments": {
183
- "blockchain://41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d/block/b6d0d43f61e5e36d20eb3d5caca12220b024ed2861a814795d1fd6596fe041bf": {
184
- "Wallet": {
185
- "contractType": "WalletWithSend",
186
- "address": "0x4308223cdec48F8a396Ba206025b39caD11cacE6",
187
- "transaction": "0xc1bdfc5eeb517aabb3b65cb24f8d0cd3fd4b8d71f94f90f3e76250cbb96b5369",
188
- "block": "0x48ed49ff47ecf433d7c8f1847ddae8c1250ad948fda22342f78f732823534780",
189
- "runtimeBytecode": {
190
- "linkDependencies": [
191
- {
192
- "offsets": [
193
- 672,
194
- 1021
195
- ],
196
- "type": "reference",
197
- "value": "wallet:safe-math-lib:SafeMathLib"
198
- }
199
- ]
200
- }
201
- }
202
- }
203
- },
204
- "buildDependencies": {
205
- "wallet": "ipfs://QmRALeFkttSr6DLmPiNtAqLcMJYXu4BK3SjZGVgW8VASnm"
206
- }
207
- }
@@ -1 +0,0 @@
1
- {"buildDependencies":{"wallet":"ipfs://QmRALeFkttSr6DLmPiNtAqLcMJYXu4BK3SjZGVgW8VASnm"},"compilers":[{"contractTypes":["WalletWithSend"],"name":"solc","settings":{"optimize":false},"version":"0.6.8+commit.0bbfe453"}],"contractTypes":{"WalletWithSend":{"abi":[{"stateMutability":"nonpayable","type":"fallback"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"address payable","name":"to","type":"address"}],"name":"approvedSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"recipient","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"send","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"withdraw","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}],"deploymentBytecode":{"bytecode":"0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506105e1806100606000396000f3fe608060405234801561001057600080fd5b50600436106100505760003560e01c8063095ea7b3146100535780632e1a7d4d146100b9578063c577ff8b146100ff578063d0679d341461014d57610051565b5b005b61009f6004803603604081101561006957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506101b3565b604051808215151515815260200191505060405180910390f35b6100e5600480360360208110156100cf57600080fd5b810190808035906020019092919050505061025c565b604051808215151515815260200191505060405180910390f35b61014b6004803603604081101561011557600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103bb565b005b6101996004803603604081101561016357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610513565b604051808215151515815260200191505060405180910390f35b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461020e57600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205473000000000000000000000000000000000000000063a293d1e89091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156102f657600080fd5b505af415801561030a573d6000803e3d6000fd5b505050506040513d602081101561032057600080fd5b8101908080519060200190929190505050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050506103b257600080fd5b60019050919050565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205473000000000000000000000000000000000000000063a293d1e89091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561045357600080fd5b505af4158015610467573d6000803e3d6000fd5b505050506040513d602081101561047d57600080fd5b8101908080519060200190929190505050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505061050f57600080fd5b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461056e57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505090509291505056fea2646970667358221220b3e9d35017f06ad00bdc4a7887a8d810719509dbab16e308d48e0a800d95d90e64736f6c63430006080033","linkReferences":[{"length":20,"name":"wallet:safe-math-lib:SafeMathLib","offsets":[768,1117]}]},"devdoc":{"author":"Piper Merriam <pipermerriam@gmail.com>","methods":{"approve(address,uint256)":{"details":"Sets recipient to be approved to withdraw the specified amount"},"approvedSend(uint256,address)":{"details":"Sends funds that have been approved to the specified address"},"send(address,uint256)":{"details":"Sends the recipient the specified amount"},"withdraw(uint256)":{"details":"Lets caller withdraw up to their approved amount"}},"title":"Wallet contract with simple send and approval spending functionality"},"runtimeBytecode":{"bytecode":"0x608060405234801561001057600080fd5b50600436106100505760003560e01c8063095ea7b3146100535780632e1a7d4d146100b9578063c577ff8b146100ff578063d0679d341461014d57610051565b5b005b61009f6004803603604081101561006957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506101b3565b604051808215151515815260200191505060405180910390f35b6100e5600480360360208110156100cf57600080fd5b810190808035906020019092919050505061025c565b604051808215151515815260200191505060405180910390f35b61014b6004803603604081101561011557600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506103bb565b005b6101996004803603604081101561016357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610513565b604051808215151515815260200191505060405180910390f35b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461020e57600080fd5b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205473000000000000000000000000000000000000000063a293d1e89091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156102f657600080fd5b505af415801561030a573d6000803e3d6000fd5b505050506040513d602081101561032057600080fd5b8101908080519060200190929190505050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050506103b257600080fd5b60019050919050565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205473000000000000000000000000000000000000000063a293d1e89091846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561045357600080fd5b505af4158015610467573d6000803e3d6000fd5b505050506040513d602081101561047d57600080fd5b8101908080519060200190929190505050600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505061050f57600080fd5b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461056e57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505090509291505056fea2646970667358221220b3e9d35017f06ad00bdc4a7887a8d810719509dbab16e308d48e0a800d95d90e64736f6c63430006080033","linkReferences":[{"length":20,"name":"wallet:safe-math-lib:SafeMathLib","offsets":[672,1021]}]},"sourceId":"WalletWithSend.sol","userdoc":{"methods":{"approve(address,uint256)":{"notice":"This will set the recipient to be approved to withdraw the specified amount."},"approvedSend(uint256,address)":{"notice":"This will send the reciepient the specified amount."},"send(address,uint256)":{"notice":"This will send the reciepient the specified amount."},"withdraw(uint256)":{"notice":"This will withdraw provided value, deducting it from your total allowance."}}}}},"deployments":{"blockchain://41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d/block/b6d0d43f61e5e36d20eb3d5caca12220b024ed2861a814795d1fd6596fe041bf":{"Wallet":{"address":"0x4308223cdec48F8a396Ba206025b39caD11cacE6","block":"0x48ed49ff47ecf433d7c8f1847ddae8c1250ad948fda22342f78f732823534780","contractType":"WalletWithSend","runtimeBytecode":{"linkDependencies":[{"offsets":[672,1021],"type":"reference","value":"wallet:safe-math-lib:SafeMathLib"}]},"transaction":"0xc1bdfc5eeb517aabb3b65cb24f8d0cd3fd4b8d71f94f90f3e76250cbb96b5369"}}},"manifest":"ethpm/3","name":"wallet-with-send","sources":{"WalletWithSend.sol":{"installPath":"./WalletWithSend.sol","type":"solidity","urls":["ipfs://QmQmKim8MpVGgkaJzHCAWkAJnr3hPLrUXmaz5Ao1gWjxNY"]}},"version":"1.0.0"}
@@ -1,379 +0,0 @@
1
- {
2
- "title": "Package Manifest",
3
- "description": "EthPM Manifest Specification",
4
- "type": "object",
5
- "required": [
6
- "manifest_version",
7
- "package_name",
8
- "version"
9
- ],
10
- "version": "2",
11
- "properties": {
12
- "manifest_version": {
13
- "type": "string",
14
- "title": "Manifest Version",
15
- "description": "EthPM Manifest Version",
16
- "default": "2",
17
- "enum": ["2"]
18
- },
19
- "package_name": {
20
- "title": "Package Name",
21
- "description": "The name of the package that this release is for",
22
- "type": "string",
23
- "pattern": "^[a-z][-a-z0-9]{0,255}$"
24
- },
25
- "meta": {
26
- "$ref": "#/definitions/PackageMeta"
27
- },
28
- "version": {
29
- "title": "Version",
30
- "type": "string"
31
- },
32
- "sources": {
33
- "title": "Sources",
34
- "type": "object",
35
- "patternProperties": {
36
- "\\.\\/.*": {
37
- "anyOf": [
38
- {
39
- "title": "Source code",
40
- "type": "string"
41
- },
42
- {
43
- "$ref": "#/definitions/ContentURI"
44
- }
45
- ]
46
- }
47
- }
48
- },
49
- "contract_types": {
50
- "title": "Contract Types",
51
- "description": "The contract types included in this release",
52
- "type": "object",
53
- "patternProperties": {
54
- "[a-zA-Z][-a-zA-Z0-9_]{0,255}(?:\\[[-a-zA-Z0-9]{1,256}\\])?$": {
55
- "$ref": "#/definitions/ContractType"
56
- }
57
- }
58
- },
59
- "deployments": {
60
- "title": "Deployments",
61
- "description": "The deployed contract instances in this release",
62
- "type": "object",
63
- "patternProperties": {
64
- "^blockchain\\://[0-9a-zA-Z]{64}/block/[0-9a-zA-Z]{64}$": {
65
- "$ref": "#/definitions/Deployment"
66
- }
67
- }
68
- },
69
- "build_dependencies": {
70
- "title": "Build Dependencies",
71
- "type": "object",
72
- "patternProperties": {
73
- "^[a-z][-a-z0-9]{0,255}$": {
74
- "$ref": "#/definitions/ContentURI"
75
- }
76
- }
77
- }
78
- },
79
- "definitions": {
80
- "PackageMeta": {
81
- "title": "Package Meta",
82
- "description": "Metadata about the package",
83
- "type": "object",
84
- "properties": {
85
- "authors": {
86
- "title": "Authors",
87
- "description": "Authors of this package",
88
- "type": "array",
89
- "items": {
90
- "type": "string"
91
- }
92
- },
93
- "license": {
94
- "title": "License",
95
- "description": "The license that this package and it's source are released under",
96
- "type": "string"
97
- },
98
- "description": {
99
- "title": "Description",
100
- "description": "Description of this package",
101
- "type": "string"
102
- },
103
- "keywords": {
104
- "title": "Keywords",
105
- "description": "Keywords that apply to this package",
106
- "type": "array",
107
- "items": {
108
- "type": "string"
109
- }
110
- },
111
- "links": {
112
- "title": "Links",
113
- "descriptions": "URIs for resources related to this package",
114
- "type": "object",
115
- "additionalProperties": {
116
- "type": "string",
117
- "format": "uri"
118
- }
119
- }
120
- }
121
- },
122
- "ContractType": {
123
- "title": "Contract Type",
124
- "description": "Data for a contract type included in this package",
125
- "type": "object",
126
- "properties":{
127
- "contract_name": {
128
- "title": "Contract Name",
129
- "description": "The name for this contract type as found in the project source code.",
130
- "type": "string",
131
- "pattern": "[a-zA-Z][a-zA-Z0-9_]{0,255}"
132
- },
133
- "deployment_bytecode": {
134
- "$ref": "#/definitions/BytecodeObject"
135
- },
136
- "runtime_bytecode": {
137
- "$ref": "#/definitions/BytecodeObject"
138
- },
139
- "abi": {
140
- "title": "ABI",
141
- "description": "The ABI for this contract type",
142
- "type": "array"
143
- },
144
- "natspec": {
145
- "title": "NatSpec",
146
- "description": "The combined user-doc and dev-doc for this contract",
147
- "type": "object"
148
- },
149
- "compiler": {
150
- "$ref": "#/definitions/CompilerInformation"
151
- }
152
- }
153
- },
154
- "ContractInstance": {
155
- "title": "Contract Instance",
156
- "description": "Data for a deployed instance of a contract",
157
- "type": "object",
158
- "required": [
159
- "contract_type",
160
- "address"
161
- ],
162
- "properties": {
163
- "contract_type": {
164
- "title": "Contract Type Name",
165
- "description": "The contract type of this contract instance",
166
- "type": "string",
167
- "pattern": "^(?:[a-z][-a-z0-9]{0,255}\\:)?[a-zA-Z][-a-zA-Z0-9_]{0,255}(?:\\[[-a-zA-Z0-9]{1,256}\\])?$"
168
- },
169
- "address": {
170
- "$ref": "#/definitions/Address"
171
- },
172
- "transaction": {
173
- "$ref": "#/definitions/TransactionHash"
174
- },
175
- "block": {
176
- "$ref": "#/definitions/BlockHash"
177
- },
178
- "runtime_bytecode": {
179
- "$ref": "#/definitions/BytecodeObject"
180
- },
181
- "compiler": {
182
- "$ref": "#/definitions/CompilerInformation"
183
- },
184
- "link_dependencies": {
185
- "title": "Link Dependencies",
186
- "description": "The values for the link references found within this contract instances runtime bytecode",
187
- "type": "array",
188
- "items": {
189
- "$ref": "#/definitions/LinkValue"
190
- }
191
- }
192
- }
193
- },
194
- "ByteString": {
195
- "title": "Byte String",
196
- "description": "0x-prefixed hexadecimal string representing bytes",
197
- "type": "string",
198
- "pattern": "^0x([0-9a-fA-F]{2})*$"
199
- },
200
- "BytecodeObject": {
201
- "title": "Bytecode Object",
202
- "type": "object",
203
- "anyOf": [
204
- {"required": ["bytecode"]},
205
- {"required": ["link_dependencies"]}
206
- ],
207
- "properties": {
208
- "bytecode": {
209
- "$ref": "#/definitions/ByteString"
210
- },
211
- "link_references": {
212
- "type": "array",
213
- "items": {
214
- "$ref": "#/definitions/LinkReference"
215
- }
216
- },
217
- "link_dependencies": {
218
- "type": "array",
219
- "items": {
220
- "$ref": "#/definitions/LinkValue"
221
- }
222
- }
223
- }
224
- },
225
- "LinkReference": {
226
- "title": "Link Reference",
227
- "description": "A defined location in some bytecode which requires linking",
228
- "type": "object",
229
- "required": [
230
- "offsets",
231
- "length",
232
- "name"
233
- ],
234
- "properties": {
235
- "offsets": {
236
- "type": "array",
237
- "items": {
238
- "type": "integer",
239
- "minimum": 0
240
- }
241
- },
242
- "length": {
243
- "type": "integer",
244
- "minimum": 1
245
- },
246
- "name": {
247
- "$ref": "#/definitions/Identifier"
248
- }
249
- }
250
- },
251
- "LinkValue": {
252
- "title": "Link Value",
253
- "description": "A value for an individual link reference in a contract's bytecode",
254
- "type": "object",
255
- "required": [
256
- "offsets",
257
- "type",
258
- "value"
259
- ],
260
- "properties": {
261
- "offsets": {
262
- "type": "array",
263
- "items": {
264
- "type": "integer",
265
- "minimum": 0
266
- }
267
- },
268
- "type": {
269
- "description": "The type of link value",
270
- "type": "string"
271
- },
272
- "value": {
273
- "description": "The value for the link reference"
274
- }
275
- },
276
- "oneOf": [{
277
- "properties": {
278
- "type": {
279
- "enum": ["literal"]
280
- },
281
- "value": {
282
- "$ref": "#/definitions/ByteString"
283
- }
284
- }
285
- }, {
286
- "properties": {
287
- "type": {
288
- "enum": ["reference"]
289
- },
290
- "value": {
291
- "anyOf": [
292
- {"$ref": "#/definitions/ContractInstanceName"},
293
- {"$ref": "#/definitions/PackageContractInstanceName"}
294
- ]
295
- }
296
- }
297
- }]
298
- },
299
- "Identifier": {
300
- "title": "Identifier",
301
- "type": "string",
302
- "pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,255}$"
303
- },
304
- "ContractInstanceName": {
305
- "title": "Contract Instance Name",
306
- "description": "The name of the deployed contract instance",
307
- "type": "string",
308
- "pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,255}$"
309
- },
310
- "Deployment": {
311
- "title": "Deployment",
312
- "type": "object",
313
- "patternProperties": {
314
- "^[a-zA-Z][a-zA-Z0-9_]{0,255}$": {
315
- "$ref": "#/definitions/ContractInstance"
316
- }
317
- }
318
- },
319
- "PackageContractInstanceName": {
320
- "title": "Package Contract Instance Name",
321
- "description": "The path to a deployed contract instance somewhere down the dependency tree",
322
- "type": "string",
323
- "pattern": "^([a-z][-a-z0-9]{0,255}\\:)+[a-zA-Z][a-zA-Z0-9_]{0,255}$"
324
- },
325
- "CompilerInformation": {
326
- "title": "Compiler Information",
327
- "description": "Information about the software that was used to compile a contract type or instance",
328
- "type": "object",
329
- "required": [
330
- "name",
331
- "version"
332
- ],
333
- "properties": {
334
- "name": {
335
- "description": "The name of the compiler",
336
- "type": "string"
337
- },
338
- "version": {
339
- "description": "The version string for the compiler",
340
- "type": "string"
341
- },
342
- "settings": {
343
- "description": "The settings used for compilation",
344
- "type": "object"
345
- }
346
- }
347
- },
348
- "Address": {
349
- "title": "Address",
350
- "description": "An Ethereum address",
351
- "allOf": [
352
- { "$ref": "#/definitions/ByteString" },
353
- { "minLength": 42, "maxLength": 42 }
354
- ]
355
- },
356
- "TransactionHash": {
357
- "title": "Transaction Hash",
358
- "description": "An Ethereum transaction hash",
359
- "allOf": [
360
- { "$ref": "#/definitions/ByteString" },
361
- { "minLength": 66, "maxLength": 66 }
362
- ]
363
- },
364
- "BlockHash": {
365
- "title": "Block Hash",
366
- "description": "An Ethereum block hash",
367
- "allOf": [
368
- { "$ref": "#/definitions/ByteString" },
369
- { "minLength": 66, "maxLength": 66 }
370
- ]
371
- },
372
- "ContentURI": {
373
- "title": "Content URI",
374
- "description": "An content addressable URI",
375
- "type": "string",
376
- "format": "uri"
377
- }
378
- }
379
- }