diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fd4eb98 --- /dev/null +++ b/.gitignore @@ -0,0 +1,28 @@ +# Logs +logs +*.log +npm-debug.log* + +# Runtime data +pids +*.pid +*.seed + +# Coverage directory used by tools like istanbul +coverage + +# node-waf configuration +.lock-wscript + +# Dependency directory +node_modules + +# Compiled JS directory +/dist/* +!/dist/iexec.js + +# Optional npm cache directory +.npm + +# Optional REPL history +.node_repl_history diff --git a/README.md b/README.md old mode 100644 new mode 100755 index fecb605..ee32f83 --- a/README.md +++ b/README.md @@ -1,13 +1,57 @@ -# iexec dapps samples +# Tensorflow on iExec +## Distributed Neural Net Calculation on iExec Blockchain +This dapp enables Tensorflow's distributed calculation codes on iExec sdk by which any programmer can make models in any amount of calculation. -This is the registry for sample iexec dapps, used by the iexec-sdk cli. +##MNIST Example Usage -Each branch name of this repo can be used as an argument to iexec init command. +###[CAUTION] +This is just a test program that executes mnist on iexec between 2 ip address. +There is neither scaling system nor managing system. -ex: +###Ethereum Environment Setup +(1) +geth -networkid "10" -nat "none" console +(2) +testrpc + +###Your commands +(1) change explanation/python/iexecsetting.py + do environment setting here + + +vi explanation/python/iexecsetting.py + +PS_HOST="IP:PORT" +WORDER="IP:PORT" +MODE="ps" +INDEX=0 + + +(2) execute manager program and deploy on iExec +iexec truffle test + +(3) Wait for workers. + +###Workers' commands +(1) change explanation/python/iexecsetting.py + do environment setting here + +PS_HOST="IP:PORT" +WORDER="IP:PORT" +MODE="worker" +INDEX=0 + +(2) execute the worker program +iexec truffle test + +###[CAUTION] +you don't have to command +iexec result +the result can be found in the result dump of Tensorflow. + +###[CAUTION] +You need to install python3 +the initial program "apps/Tensorflow" +is just commiting "python3 ../explanation/python3/task.py" in cmdline. +This is a compiled python code. -```bash -iexec init -iexec init factorial -iexec init echo -``` diff --git a/__pycache__/start_cmd.cpython-35.pyc b/__pycache__/start_cmd.cpython-35.pyc new file mode 100644 index 0000000..be419d7 Binary files /dev/null and b/__pycache__/start_cmd.cpython-35.pyc differ diff --git a/apps/Tensorflow b/apps/Tensorflow new file mode 100755 index 0000000..a548099 Binary files /dev/null and b/apps/Tensorflow differ diff --git a/build/contracts/Tensorflow.json b/build/contracts/Tensorflow.json new file mode 100755 index 0000000..33fc621 --- /dev/null +++ b/build/contracts/Tensorflow.json @@ -0,0 +1,443 @@ +{ + "contractName": "Tensorflow", + "abi": [ + { + "constant": false, + "inputs": [ + { + "name": "submitTxHash", + "type": "bytes32" + }, + { + "name": "user", + "type": "address" + }, + { + "name": "stdout", + "type": "string" + }, + { + "name": "uri", + "type": "string" + } + ], + "name": "iexecSubmitCallback", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "DAPP_PRICE", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "param", + "type": "string" + } + ], + "name": "iexecSubmit", + "outputs": [], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "DAPP_NAME", + "outputs": [ + { + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "_iexecOracleAddress", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "submitTxHash", + "type": "bytes32" + }, + { + "indexed": true, + "name": "user", + "type": "address" + }, + { + "indexed": false, + "name": "stdout", + "type": "string" + }, + { + "indexed": false, + "name": "uri", + "type": "string" + } + ], + "name": "IexecSubmitCallback", + "type": "event" + } + ], + "bytecode": "0x6060604052341561000f57600080fd5b60405160208061076c833981016040528080519060200190919050508060016040805190810160405280600681526020017f46666d70656700000000000000000000000000000000000000000000000000008152506000836000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff16635993ef5384846000604051602001526040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610162578082015181840152602081019050610147565b50505050905090810190601f16801561018f5780820380516001836020036101000a031916815260200191505b509350505050602060405180830381600087803b15156101ae57600080fd5b6102c65a03f115156101bf57600080fd5b5050506040518051905015156101d457600080fd5b5050505050610584806101e86000396000f300606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806310a9f201146100675780633c0aef301461014b5780638cd213b914610174578063c878f958146101c6575b600080fd5b341561007257600080fd5b61013160048080356000191690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610254565b604051808215151515815260200191505060405180910390f35b341561015657600080fd5b61015e6103ed565b6040518082815260200191505060405180910390f35b6101c4600480803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919050506103f2565b005b34156101d157600080fd5b6101d961051f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102195780820151818401526020810190506101fe565b50505050905090810190601f1680156102465780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156102b157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff167f68d2eaa37ea3e53bbe55f11eb038084f280086b8f4c4552dbca1b5692efeb9138685856040518084600019166000191681526020018060200180602001838103835285818151815260200191508051906020019080838360005b8381101561033e578082015181840152602081019050610323565b50505050905090810190601f16801561036b5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b838110156103a4578082015181840152602081019050610389565b50505050905090810190601f1680156103d15780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a260019050949350505050565b600181565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663d99a8dc334846000604051602001526040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156104aa57808201518184015260208101905061048f565b50505050905090810190601f1680156104d75780820380516001836020036101000a031916815260200191505b50925050506020604051808303818588803b15156104f457600080fd5b6125ee5a03f1151561050557600080fd5b5050505060405180519050151561051b57600080fd5b5050565b6040805190810160405280600681526020017f46666d7065670000000000000000000000000000000000000000000000000000815250815600a165627a7a72305820818051fc246634d2f40fe752a7c9636bbcfd0d5b1460ab48ade72b4de544f7e80029", + "deployedBytecode": "0x606060405260043610610062576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806310a9f201146100675780633c0aef301461014b5780638cd213b914610174578063c878f958146101c6575b600080fd5b341561007257600080fd5b61013160048080356000191690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610254565b604051808215151515815260200191505060405180910390f35b341561015657600080fd5b61015e6103ed565b6040518082815260200191505060405180910390f35b6101c4600480803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919050506103f2565b005b34156101d157600080fd5b6101d961051f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102195780820151818401526020810190506101fe565b50505050905090810190601f1680156102465780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156102b157600080fd5b8373ffffffffffffffffffffffffffffffffffffffff167f68d2eaa37ea3e53bbe55f11eb038084f280086b8f4c4552dbca1b5692efeb9138685856040518084600019166000191681526020018060200180602001838103835285818151815260200191508051906020019080838360005b8381101561033e578082015181840152602081019050610323565b50505050905090810190601f16801561036b5780820380516001836020036101000a031916815260200191505b50838103825284818151815260200191508051906020019080838360005b838110156103a4578082015181840152602081019050610389565b50505050905090810190601f1680156103d15780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a260019050949350505050565b600181565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663d99a8dc334846000604051602001526040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156104aa57808201518184015260208101905061048f565b50505050905090810190601f1680156104d75780820380516001836020036101000a031916815260200191505b50925050506020604051808303818588803b15156104f457600080fd5b6125ee5a03f1151561050557600080fd5b5050505060405180519050151561051b57600080fd5b5050565b6040805190810160405280600681526020017f46666d7065670000000000000000000000000000000000000000000000000000815250815600a165627a7a72305820818051fc246634d2f40fe752a7c9636bbcfd0d5b1460ab48ade72b4de544f7e80029", + "sourceMap": "86:248:0:-;;;221:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;282:19;160:1;313:9;;;;;;;;;;;;;;;;;;426:23:3;397:19;378:18;;:38;;;;;;;;;;;;;;;;;;464:18;;;;;;;;;;;426:57;;501:11;:35;;;537:9;547:8;501:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;493:64:3;;;;;;;;272:292;;;;221:110:0;86:248;;;;;;", + "deployedSourceMap": "86:248:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;761:252:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;126:35:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;570:185:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;167:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;761:252:3;870:4;907:18;;;;;;;;;;;893:32;;:10;:32;;;885:41;;;;;;;;969:4;936:49;;;956:12;974:6;981:3;936:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1002:4:3;995:11;;761:252;;;;;;:::o;126:35:0:-;160:1;126:35;:::o;570:185:3:-;630:23;668:18;;;;;;;;;;;630:57;;705:11;:18;;;730:9;741:5;705:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;697:51:3;;;;;;;;570:185;;:::o;167:43:0:-;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.11;\nimport \"iexec-oracle-contract/contracts/IexecOracleAPI.sol\";\ncontract Tensorflow is IexecOracleAPI{\n\n uint public constant DAPP_PRICE = 1;\n string public constant DAPP_NAME = \"Tensorflow\";\n \n function Tensorflow (address _iexecOracleAddress) IexecOracleAPI(_iexecOracleAddress,DAPP_PRICE,DAPP_NAME){\n\n }\n\n}\n", + "sourcePath": "/home/vagrant/iexecdev/iexec-tensorflow/contracts/Tensorflow.sol", + "ast": { + "attributes": { + "absolutePath": "/home/vagrant/iexecdev/iexec-tensorflow/contracts/Tensorflow.sol", + "exportedSymbols": { + "Tensorflow": [ + 22 + ] + } + }, + "children": [ + { + "attributes": { + "literals": [ + "solidity", + "^", + "0.4", + ".11" + ] + }, + "id": 1, + "name": "PragmaDirective", + "src": "0:24:0" + }, + { + "attributes": { + "SourceUnit": 795, + "absolutePath": "iexec-oracle-contract/contracts/IexecOracleAPI.sol", + "file": "iexec-oracle-contract/contracts/IexecOracleAPI.sol", + "scope": 23, + "symbolAliases": [ + null + ], + "unitAlias": "" + }, + "id": 2, + "name": "ImportDirective", + "src": "25:60:0" + }, + { + "attributes": { + "contractDependencies": [ + 794 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "linearizedBaseContracts": [ + 22, + 794 + ], + "name": "Tensorflow", + "scope": 23 + }, + "children": [ + { + "attributes": { + "arguments": [ + null + ] + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "IexecOracleAPI", + "referencedDeclaration": 794, + "type": "contract IexecOracleAPI" + }, + "id": 3, + "name": "UserDefinedTypeName", + "src": "105:14:0" + } + ], + "id": 4, + "name": "InheritanceSpecifier", + "src": "105:14:0" + }, + { + "attributes": { + "constant": true, + "name": "DAPP_PRICE", + "scope": 22, + "stateVariable": true, + "storageLocation": "default", + "type": "uint256", + "visibility": "public" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 5, + "name": "ElementaryTypeName", + "src": "126:4:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "31", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 1", + "value": "1" + }, + "id": 6, + "name": "Literal", + "src": "160:1:0" + } + ], + "id": 7, + "name": "VariableDeclaration", + "src": "126:35:0" + }, + { + "attributes": { + "constant": true, + "name": "DAPP_NAME", + "scope": 22, + "stateVariable": true, + "storageLocation": "default", + "type": "string memory", + "visibility": "public" + }, + "children": [ + { + "attributes": { + "name": "string", + "type": "string storage pointer" + }, + "id": 8, + "name": "ElementaryTypeName", + "src": "167:6:0" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "46666d706567", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Tensorflow\"", + "value": "Tensorflow" + }, + "id": 9, + "name": "Literal", + "src": "202:8:0" + } + ], + "id": 10, + "name": "VariableDeclaration", + "src": "167:43:0" + }, + { + "attributes": { + "constant": false, + "implemented": true, + "isConstructor": true, + "name": "Tensorflow", + "payable": false, + "scope": 22, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_iexecOracleAddress", + "scope": 21, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "type": "address" + }, + "id": 11, + "name": "ElementaryTypeName", + "src": "238:7:0" + } + ], + "id": 12, + "name": "VariableDeclaration", + "src": "238:27:0" + } + ], + "id": 13, + "name": "ParameterList", + "src": "237:29:0" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 19, + "name": "ParameterList", + "src": "323:0:0" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 794, + "type": "type(contract IexecOracleAPI)", + "value": "IexecOracleAPI" + }, + "id": 14, + "name": "Identifier", + "src": "267:14:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 12, + "type": "address", + "value": "_iexecOracleAddress" + }, + "id": 15, + "name": "Identifier", + "src": "282:19:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 7, + "type": "uint256", + "value": "DAPP_PRICE" + }, + "id": 16, + "name": "Identifier", + "src": "302:10:0" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 10, + "type": "string memory", + "value": "DAPP_NAME" + }, + "id": 17, + "name": "Identifier", + "src": "313:9:0" + } + ], + "id": 18, + "name": "ModifierInvocation", + "src": "267:56:0" + }, + { + "attributes": { + "statements": [ + null + ] + }, + "children": [], + "id": 20, + "name": "Block", + "src": "323:8:0" + } + ], + "id": 21, + "name": "FunctionDefinition", + "src": "221:110:0" + } + ], + "id": 22, + "name": "ContractDefinition", + "src": "86:248:0" + } + ], + "id": 23, + "name": "SourceUnit", + "src": "0:335:0" + }, + "compiler": { + "name": "solc", + "version": "0.4.18+commit.9cf6e910.Emscripten.clang" + }, + "networks": { + "3": { + "address": "0x928cf44589ee9c7df100d24d6731e22ef9e571d3" + }, + "4": { + "address": "0x17f2675c58a5c701cc6ab274b41bcbb919a88cd4" + } + }, + "schemaVersion": "1.0.1", + "updatedAt": "2017-12-20T10:31:45.165Z" +} \ No newline at end of file diff --git a/build/start_cmd/base_library.zip b/build/start_cmd/base_library.zip new file mode 100644 index 0000000..1577fb6 Binary files /dev/null and b/build/start_cmd/base_library.zip differ diff --git a/build/start_cmd/out00-Analysis.toc b/build/start_cmd/out00-Analysis.toc new file mode 100644 index 0000000..e6583df --- /dev/null +++ b/build/start_cmd/out00-Analysis.toc @@ -0,0 +1,232 @@ +(['/home/leo/iexec-dapp-samples/start_cmd.py'], + ['/home/leo/iexec-dapp-samples', '/home/leo/iexec-dapp-samples'], + ['codecs'], + [], + [], + [], + False, + False, + '3.5.2 (default, Nov 23 2017, 16:37:01) \n[GCC 5.4.0 20160609]', + [('start_cmd', '/home/leo/iexec-dapp-samples/start_cmd.py', 'PYSOURCE')], + [('posixpath', '/usr/lib/python3.5/posixpath.py', 'PYMODULE'), + ('_strptime', '/usr/lib/python3.5/_strptime.py', 'PYMODULE'), + ('datetime', '/usr/lib/python3.5/datetime.py', 'PYMODULE'), + ('stringprep', '/usr/lib/python3.5/stringprep.py', 'PYMODULE'), + ('_compat_pickle', '/usr/lib/python3.5/_compat_pickle.py', 'PYMODULE'), + ('pickle', '/usr/lib/python3.5/pickle.py', 'PYMODULE'), + ('__future__', '/usr/lib/python3.5/__future__.py', 'PYMODULE'), + ('argparse', '/usr/lib/python3.5/argparse.py', 'PYMODULE'), + ('difflib', '/usr/lib/python3.5/difflib.py', 'PYMODULE'), + ('ast', '/usr/lib/python3.5/ast.py', 'PYMODULE'), + ('imp', '/usr/lib/python3.5/imp.py', 'PYMODULE'), + ('inspect', '/usr/lib/python3.5/inspect.py', 'PYMODULE'), + ('cmd', '/usr/lib/python3.5/cmd.py', 'PYMODULE'), + ('bdb', '/usr/lib/python3.5/bdb.py', 'PYMODULE'), + ('opcode', '/usr/lib/python3.5/opcode.py', 'PYMODULE'), + ('dis', '/usr/lib/python3.5/dis.py', 'PYMODULE'), + ('codeop', '/usr/lib/python3.5/codeop.py', 'PYMODULE'), + ('code', '/usr/lib/python3.5/code.py', 'PYMODULE'), + ('glob', '/usr/lib/python3.5/glob.py', 'PYMODULE'), + ('shlex', '/usr/lib/python3.5/shlex.py', 'PYMODULE'), + ('importlib._bootstrap', + '/usr/lib/python3.5/importlib/_bootstrap.py', + 'PYMODULE'), + ('importlib._bootstrap_external', + '/usr/lib/python3.5/importlib/_bootstrap_external.py', + 'PYMODULE'), + ('importlib.machinery', + '/usr/lib/python3.5/importlib/machinery.py', + 'PYMODULE'), + ('importlib.util', '/usr/lib/python3.5/importlib/util.py', 'PYMODULE'), + ('importlib.abc', '/usr/lib/python3.5/importlib/abc.py', 'PYMODULE'), + ('importlib', '/usr/lib/python3.5/importlib/__init__.py', 'PYMODULE'), + ('pkgutil', '/usr/lib/python3.5/pkgutil.py', 'PYMODULE'), + ('ctypes._endian', '/usr/lib/python3.5/ctypes/_endian.py', 'PYMODULE'), + ('ctypes', '/usr/lib/python3.5/ctypes/__init__.py', 'PYMODULE'), + ('ctypes.wintypes', '/usr/lib/python3.5/ctypes/wintypes.py', 'PYMODULE'), + ('xml', '/usr/lib/python3.5/xml/__init__.py', 'PYMODULE'), + ('xml.sax.expatreader', + '/usr/lib/python3.5/xml/sax/expatreader.py', + 'PYMODULE'), + ('xml.sax.saxutils', '/usr/lib/python3.5/xml/sax/saxutils.py', 'PYMODULE'), + ('urllib.request', '/usr/lib/python3.5/urllib/request.py', 'PYMODULE'), + ('getpass', '/usr/lib/python3.5/getpass.py', 'PYMODULE'), + ('nturl2path', '/usr/lib/python3.5/nturl2path.py', 'PYMODULE'), + ('ftplib', '/usr/lib/python3.5/ftplib.py', 'PYMODULE'), + ('netrc', '/usr/lib/python3.5/netrc.py', 'PYMODULE'), + ('http.cookiejar', '/usr/lib/python3.5/http/cookiejar.py', 'PYMODULE'), + ('urllib.response', '/usr/lib/python3.5/urllib/response.py', 'PYMODULE'), + ('urllib.error', '/usr/lib/python3.5/urllib/error.py', 'PYMODULE'), + ('bisect', '/usr/lib/python3.5/bisect.py', 'PYMODULE'), + ('xml.sax', '/usr/lib/python3.5/xml/sax/__init__.py', 'PYMODULE'), + ('xml.sax.handler', '/usr/lib/python3.5/xml/sax/handler.py', 'PYMODULE'), + ('xml.sax._exceptions', + '/usr/lib/python3.5/xml/sax/_exceptions.py', + 'PYMODULE'), + ('xml.sax.xmlreader', '/usr/lib/python3.5/xml/sax/xmlreader.py', 'PYMODULE'), + ('xml.parsers', '/usr/lib/python3.5/xml/parsers/__init__.py', 'PYMODULE'), + ('xml.parsers.expat', '/usr/lib/python3.5/xml/parsers/expat.py', 'PYMODULE'), + ('plistlib', '/usr/lib/python3.5/plistlib.py', 'PYMODULE'), + ('platform', '/usr/lib/python3.5/platform.py', 'PYMODULE'), + ('urllib.parse', '/usr/lib/python3.5/urllib/parse.py', 'PYMODULE'), + ('tempfile', '/usr/lib/python3.5/tempfile.py', 'PYMODULE'), + ('tty', '/usr/lib/python3.5/tty.py', 'PYMODULE'), + ('pydoc_data', '/usr/lib/python3.5/pydoc_data/__init__.py', 'PYMODULE'), + ('pydoc_data.topics', '/usr/lib/python3.5/pydoc_data/topics.py', 'PYMODULE'), + ('textwrap', '/usr/lib/python3.5/textwrap.py', 'PYMODULE'), + ('html.entities', '/usr/lib/python3.5/html/entities.py', 'PYMODULE'), + ('html', '/usr/lib/python3.5/html/__init__.py', 'PYMODULE'), + ('ipaddress', '/usr/lib/python3.5/ipaddress.py', 'PYMODULE'), + ('ssl', '/usr/lib/python3.5/ssl.py', 'PYMODULE'), + ('http.client', '/usr/lib/python3.5/http/client.py', 'PYMODULE'), + ('mimetypes', '/usr/lib/python3.5/mimetypes.py', 'PYMODULE'), + ('socketserver', '/usr/lib/python3.5/socketserver.py', 'PYMODULE'), + ('http', '/usr/lib/python3.5/http/__init__.py', 'PYMODULE'), + ('http.server', '/usr/lib/python3.5/http/server.py', 'PYMODULE'), + ('uu', '/usr/lib/python3.5/uu.py', 'PYMODULE'), + ('quopri', '/usr/lib/python3.5/quopri.py', 'PYMODULE'), + ('email.feedparser', '/usr/lib/python3.5/email/feedparser.py', 'PYMODULE'), + ('email.parser', '/usr/lib/python3.5/email/parser.py', 'PYMODULE'), + ('email', '/usr/lib/python3.5/email/__init__.py', 'PYMODULE'), + ('optparse', '/usr/lib/python3.5/optparse.py', 'PYMODULE'), + ('calendar', '/usr/lib/python3.5/calendar.py', 'PYMODULE'), + ('email._parseaddr', '/usr/lib/python3.5/email/_parseaddr.py', 'PYMODULE'), + ('email.utils', '/usr/lib/python3.5/email/utils.py', 'PYMODULE'), + ('email.errors', '/usr/lib/python3.5/email/errors.py', 'PYMODULE'), + ('email.header', '/usr/lib/python3.5/email/header.py', 'PYMODULE'), + ('email._policybase', '/usr/lib/python3.5/email/_policybase.py', 'PYMODULE'), + ('email.base64mime', '/usr/lib/python3.5/email/base64mime.py', 'PYMODULE'), + ('email.encoders', '/usr/lib/python3.5/email/encoders.py', 'PYMODULE'), + ('email.charset', '/usr/lib/python3.5/email/charset.py', 'PYMODULE'), + ('base64', '/usr/lib/python3.5/base64.py', 'PYMODULE'), + ('email._encoded_words', + '/usr/lib/python3.5/email/_encoded_words.py', + 'PYMODULE'), + ('hashlib', '/usr/lib/python3.5/hashlib.py', 'PYMODULE'), + ('random', '/usr/lib/python3.5/random.py', 'PYMODULE'), + ('email.generator', '/usr/lib/python3.5/email/generator.py', 'PYMODULE'), + ('email.iterators', '/usr/lib/python3.5/email/iterators.py', 'PYMODULE'), + ('urllib', '/usr/lib/python3.5/urllib/__init__.py', 'PYMODULE'), + ('email._header_value_parser', + '/usr/lib/python3.5/email/_header_value_parser.py', + 'PYMODULE'), + ('email.headerregistry', + '/usr/lib/python3.5/email/headerregistry.py', + 'PYMODULE'), + ('email.quoprimime', '/usr/lib/python3.5/email/quoprimime.py', 'PYMODULE'), + ('email.contentmanager', + '/usr/lib/python3.5/email/contentmanager.py', + 'PYMODULE'), + ('email.policy', '/usr/lib/python3.5/email/policy.py', 'PYMODULE'), + ('email.message', '/usr/lib/python3.5/email/message.py', 'PYMODULE'), + ('gzip', '/usr/lib/python3.5/gzip.py', 'PYMODULE'), + ('tarfile', '/usr/lib/python3.5/tarfile.py', 'PYMODULE'), + ('bz2', '/usr/lib/python3.5/bz2.py', 'PYMODULE'), + ('_compression', '/usr/lib/python3.5/_compression.py', 'PYMODULE'), + ('lzma', '/usr/lib/python3.5/lzma.py', 'PYMODULE'), + ('py_compile', '/usr/lib/python3.5/py_compile.py', 'PYMODULE'), + ('zipfile', '/usr/lib/python3.5/zipfile.py', 'PYMODULE'), + ('shutil', '/usr/lib/python3.5/shutil.py', 'PYMODULE'), + ('socket', '/usr/lib/python3.5/socket.py', 'PYMODULE'), + ('webbrowser', '/usr/lib/python3.5/webbrowser.py', 'PYMODULE'), + ('pydoc', '/usr/lib/python3.5/pydoc.py', 'PYMODULE'), + ('copy', '/usr/lib/python3.5/copy.py', 'PYMODULE'), + ('struct', '/usr/lib/python3.5/struct.py', 'PYMODULE'), + ('token', '/usr/lib/python3.5/token.py', 'PYMODULE'), + ('tokenize', '/usr/lib/python3.5/tokenize.py', 'PYMODULE'), + ('gettext', '/usr/lib/python3.5/gettext.py', 'PYMODULE'), + ('getopt', '/usr/lib/python3.5/getopt.py', 'PYMODULE'), + ('pdb', '/usr/lib/python3.5/pdb.py', 'PYMODULE'), + ('unittest.util', '/usr/lib/python3.5/unittest/util.py', 'PYMODULE'), + ('unittest.result', '/usr/lib/python3.5/unittest/result.py', 'PYMODULE'), + ('logging', '/usr/lib/python3.5/logging/__init__.py', 'PYMODULE'), + ('pprint', '/usr/lib/python3.5/pprint.py', 'PYMODULE'), + ('unittest.case', '/usr/lib/python3.5/unittest/case.py', 'PYMODULE'), + ('unittest.suite', '/usr/lib/python3.5/unittest/suite.py', 'PYMODULE'), + ('fnmatch', '/usr/lib/python3.5/fnmatch.py', 'PYMODULE'), + ('unittest.loader', '/usr/lib/python3.5/unittest/loader.py', 'PYMODULE'), + ('unittest.runner', '/usr/lib/python3.5/unittest/runner.py', 'PYMODULE'), + ('unittest.main', '/usr/lib/python3.5/unittest/main.py', 'PYMODULE'), + ('unittest.signals', '/usr/lib/python3.5/unittest/signals.py', 'PYMODULE'), + ('unittest', '/usr/lib/python3.5/unittest/__init__.py', 'PYMODULE'), + ('doctest', '/usr/lib/python3.5/doctest.py', 'PYMODULE'), + ('stat', '/usr/lib/python3.5/stat.py', 'PYMODULE'), + ('genericpath', '/usr/lib/python3.5/genericpath.py', 'PYMODULE'), + ('string', '/usr/lib/python3.5/string.py', 'PYMODULE'), + ('ntpath', '/usr/lib/python3.5/ntpath.py', 'PYMODULE'), + ('warnings', '/usr/lib/python3.5/warnings.py', 'PYMODULE'), + ('enum', '/usr/lib/python3.5/enum.py', 'PYMODULE'), + ('signal', '/usr/lib/python3.5/signal.py', 'PYMODULE'), + ('contextlib', '/usr/lib/python3.5/contextlib.py', 'PYMODULE'), + ('_threading_local', '/usr/lib/python3.5/_threading_local.py', 'PYMODULE'), + ('threading', '/usr/lib/python3.5/threading.py', 'PYMODULE'), + ('selectors', '/usr/lib/python3.5/selectors.py', 'PYMODULE'), + ('_dummy_thread', '/usr/lib/python3.5/_dummy_thread.py', 'PYMODULE'), + ('dummy_threading', '/usr/lib/python3.5/dummy_threading.py', 'PYMODULE'), + ('os', '/usr/lib/python3.5/os.py', 'PYMODULE'), + ('subprocess', '/usr/lib/python3.5/subprocess.py', 'PYMODULE')], + [('libz.so.1', '/lib/x86_64-linux-gnu/libz.so.1', 'BINARY'), + ('libexpat.so.1', '/lib/x86_64-linux-gnu/libexpat.so.1', 'BINARY'), + ('resource', + '/usr/lib/python3.5/lib-dynload/resource.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_ssl', + '/usr/lib/python3.5/lib-dynload/_ssl.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_hk', + '/usr/lib/python3.5/lib-dynload/_codecs_hk.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_jp', + '/usr/lib/python3.5/lib-dynload/_codecs_jp.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_tw', + '/usr/lib/python3.5/lib-dynload/_codecs_tw.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_cn', + '/usr/lib/python3.5/lib-dynload/_codecs_cn.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_kr', + '/usr/lib/python3.5/lib-dynload/_codecs_kr.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_iso2022', + '/usr/lib/python3.5/lib-dynload/_codecs_iso2022.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_multibytecodec', + '/usr/lib/python3.5/lib-dynload/_multibytecodec.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_opcode', + '/usr/lib/python3.5/lib-dynload/_opcode.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('readline', + '/usr/lib/python3.5/lib-dynload/readline.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_ctypes', + '/usr/lib/python3.5/lib-dynload/_ctypes.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('termios', + '/usr/lib/python3.5/lib-dynload/termios.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_hashlib', + '/usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_bz2', + '/usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_lzma', + '/usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('libssl.so.1.0.0', '/lib/x86_64-linux-gnu/libssl.so.1.0.0', 'BINARY'), + ('libcrypto.so.1.0.0', '/lib/x86_64-linux-gnu/libcrypto.so.1.0.0', 'BINARY'), + ('libreadline.so.6', '/lib/x86_64-linux-gnu/libreadline.so.6', 'BINARY'), + ('libtinfo.so.5', '/lib/x86_64-linux-gnu/libtinfo.so.5', 'BINARY'), + ('libbz2.so.1.0', '/lib/x86_64-linux-gnu/libbz2.so.1.0', 'BINARY'), + ('liblzma.so.5', '/lib/x86_64-linux-gnu/liblzma.so.5', 'BINARY'), + ('libpython3.5m.so.1.0', + '/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0', + 'BINARY')], + [], + [], + [('base_library.zip', + '/home/leo/iexec-dapp-samples/build/start_cmd/base_library.zip', + 'DATA')], + []) diff --git a/build/start_cmd/out00-EXE.toc b/build/start_cmd/out00-EXE.toc new file mode 100644 index 0000000..bd567a8 --- /dev/null +++ b/build/start_cmd/out00-EXE.toc @@ -0,0 +1,97 @@ +('/home/leo/iexec-dapp-samples/dist/start_cmd', + True, + False, + False, + None, + None, + False, + False, + None, + True, + 'start_cmd.pkg', + [('out00-PYZ.pyz', + '/home/leo/iexec-dapp-samples/build/start_cmd/out00-PYZ.pyz', + 'PYZ'), + ('struct', '/usr/lib/python3.5/struct.pyo', 'PYMODULE'), + ('pyimod01_os_path', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyimod01_os_path.pyc', + 'PYMODULE'), + ('pyimod02_archive', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyimod02_archive.pyc', + 'PYMODULE'), + ('pyimod03_importers', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyimod03_importers.pyc', + 'PYMODULE'), + ('pyiboot01_bootstrap', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyiboot01_bootstrap.py', + 'PYSOURCE'), + ('start_cmd', '/home/leo/iexec-dapp-samples/start_cmd.py', 'PYSOURCE'), + ('libz.so.1', '/lib/x86_64-linux-gnu/libz.so.1', 'BINARY'), + ('libexpat.so.1', '/lib/x86_64-linux-gnu/libexpat.so.1', 'BINARY'), + ('resource', + '/usr/lib/python3.5/lib-dynload/resource.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_ssl', + '/usr/lib/python3.5/lib-dynload/_ssl.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_hk', + '/usr/lib/python3.5/lib-dynload/_codecs_hk.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_jp', + '/usr/lib/python3.5/lib-dynload/_codecs_jp.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_tw', + '/usr/lib/python3.5/lib-dynload/_codecs_tw.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_cn', + '/usr/lib/python3.5/lib-dynload/_codecs_cn.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_kr', + '/usr/lib/python3.5/lib-dynload/_codecs_kr.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_iso2022', + '/usr/lib/python3.5/lib-dynload/_codecs_iso2022.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_multibytecodec', + '/usr/lib/python3.5/lib-dynload/_multibytecodec.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_opcode', + '/usr/lib/python3.5/lib-dynload/_opcode.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('readline', + '/usr/lib/python3.5/lib-dynload/readline.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_ctypes', + '/usr/lib/python3.5/lib-dynload/_ctypes.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('termios', + '/usr/lib/python3.5/lib-dynload/termios.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_hashlib', + '/usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_bz2', + '/usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_lzma', + '/usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('libssl.so.1.0.0', '/lib/x86_64-linux-gnu/libssl.so.1.0.0', 'BINARY'), + ('libcrypto.so.1.0.0', '/lib/x86_64-linux-gnu/libcrypto.so.1.0.0', 'BINARY'), + ('libreadline.so.6', '/lib/x86_64-linux-gnu/libreadline.so.6', 'BINARY'), + ('libtinfo.so.5', '/lib/x86_64-linux-gnu/libtinfo.so.5', 'BINARY'), + ('libbz2.so.1.0', '/lib/x86_64-linux-gnu/libbz2.so.1.0', 'BINARY'), + ('liblzma.so.5', '/lib/x86_64-linux-gnu/liblzma.so.5', 'BINARY'), + ('libpython3.5m.so.1.0', + '/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0', + 'BINARY'), + ('base_library.zip', + '/home/leo/iexec-dapp-samples/build/start_cmd/base_library.zip', + 'DATA')], + [], + False, + False, + 1525164972, + [('run', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/bootloader/Linux-64bit/run', + 'EXECUTABLE')]) diff --git a/build/start_cmd/out00-PKG.pkg b/build/start_cmd/out00-PKG.pkg new file mode 100644 index 0000000..a82b723 Binary files /dev/null and b/build/start_cmd/out00-PKG.pkg differ diff --git a/build/start_cmd/out00-PKG.toc b/build/start_cmd/out00-PKG.toc new file mode 100644 index 0000000..707e31e --- /dev/null +++ b/build/start_cmd/out00-PKG.toc @@ -0,0 +1,90 @@ +('/home/leo/iexec-dapp-samples/build/start_cmd/out00-PKG.pkg', + {'BINARY': 1, + 'DATA': 1, + 'EXECUTABLE': 1, + 'EXTENSION': 1, + 'PYMODULE': 1, + 'PYSOURCE': 1, + 'PYZ': 0}, + [('out00-PYZ.pyz', + '/home/leo/iexec-dapp-samples/build/start_cmd/out00-PYZ.pyz', + 'PYZ'), + ('struct', '/usr/lib/python3.5/struct.pyo', 'PYMODULE'), + ('pyimod01_os_path', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyimod01_os_path.pyc', + 'PYMODULE'), + ('pyimod02_archive', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyimod02_archive.pyc', + 'PYMODULE'), + ('pyimod03_importers', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyimod03_importers.pyc', + 'PYMODULE'), + ('pyiboot01_bootstrap', + '/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyiboot01_bootstrap.py', + 'PYSOURCE'), + ('start_cmd', '/home/leo/iexec-dapp-samples/start_cmd.py', 'PYSOURCE'), + ('libz.so.1', '/lib/x86_64-linux-gnu/libz.so.1', 'BINARY'), + ('libexpat.so.1', '/lib/x86_64-linux-gnu/libexpat.so.1', 'BINARY'), + ('resource', + '/usr/lib/python3.5/lib-dynload/resource.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_ssl', + '/usr/lib/python3.5/lib-dynload/_ssl.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_hk', + '/usr/lib/python3.5/lib-dynload/_codecs_hk.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_jp', + '/usr/lib/python3.5/lib-dynload/_codecs_jp.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_tw', + '/usr/lib/python3.5/lib-dynload/_codecs_tw.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_cn', + '/usr/lib/python3.5/lib-dynload/_codecs_cn.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_kr', + '/usr/lib/python3.5/lib-dynload/_codecs_kr.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_codecs_iso2022', + '/usr/lib/python3.5/lib-dynload/_codecs_iso2022.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_multibytecodec', + '/usr/lib/python3.5/lib-dynload/_multibytecodec.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_opcode', + '/usr/lib/python3.5/lib-dynload/_opcode.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('readline', + '/usr/lib/python3.5/lib-dynload/readline.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_ctypes', + '/usr/lib/python3.5/lib-dynload/_ctypes.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('termios', + '/usr/lib/python3.5/lib-dynload/termios.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_hashlib', + '/usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_bz2', + '/usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('_lzma', + '/usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so', + 'EXTENSION'), + ('libssl.so.1.0.0', '/lib/x86_64-linux-gnu/libssl.so.1.0.0', 'BINARY'), + ('libcrypto.so.1.0.0', '/lib/x86_64-linux-gnu/libcrypto.so.1.0.0', 'BINARY'), + ('libreadline.so.6', '/lib/x86_64-linux-gnu/libreadline.so.6', 'BINARY'), + ('libtinfo.so.5', '/lib/x86_64-linux-gnu/libtinfo.so.5', 'BINARY'), + ('libbz2.so.1.0', '/lib/x86_64-linux-gnu/libbz2.so.1.0', 'BINARY'), + ('liblzma.so.5', '/lib/x86_64-linux-gnu/liblzma.so.5', 'BINARY'), + ('libpython3.5m.so.1.0', + '/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0', + 'BINARY'), + ('base_library.zip', + '/home/leo/iexec-dapp-samples/build/start_cmd/base_library.zip', + 'DATA')], + False, + False, + False) diff --git a/build/start_cmd/out00-PYZ.pyz b/build/start_cmd/out00-PYZ.pyz new file mode 100644 index 0000000..b7b399d Binary files /dev/null and b/build/start_cmd/out00-PYZ.pyz differ diff --git a/build/start_cmd/out00-PYZ.toc b/build/start_cmd/out00-PYZ.toc new file mode 100644 index 0000000..429f0a8 --- /dev/null +++ b/build/start_cmd/out00-PYZ.toc @@ -0,0 +1,158 @@ +('/home/leo/iexec-dapp-samples/build/start_cmd/out00-PYZ.pyz', + [('posixpath', '/usr/lib/python3.5/posixpath.py', 'PYMODULE'), + ('_strptime', '/usr/lib/python3.5/_strptime.py', 'PYMODULE'), + ('datetime', '/usr/lib/python3.5/datetime.py', 'PYMODULE'), + ('stringprep', '/usr/lib/python3.5/stringprep.py', 'PYMODULE'), + ('_compat_pickle', '/usr/lib/python3.5/_compat_pickle.py', 'PYMODULE'), + ('pickle', '/usr/lib/python3.5/pickle.py', 'PYMODULE'), + ('__future__', '/usr/lib/python3.5/__future__.py', 'PYMODULE'), + ('argparse', '/usr/lib/python3.5/argparse.py', 'PYMODULE'), + ('difflib', '/usr/lib/python3.5/difflib.py', 'PYMODULE'), + ('ast', '/usr/lib/python3.5/ast.py', 'PYMODULE'), + ('imp', '/usr/lib/python3.5/imp.py', 'PYMODULE'), + ('inspect', '/usr/lib/python3.5/inspect.py', 'PYMODULE'), + ('cmd', '/usr/lib/python3.5/cmd.py', 'PYMODULE'), + ('bdb', '/usr/lib/python3.5/bdb.py', 'PYMODULE'), + ('opcode', '/usr/lib/python3.5/opcode.py', 'PYMODULE'), + ('dis', '/usr/lib/python3.5/dis.py', 'PYMODULE'), + ('codeop', '/usr/lib/python3.5/codeop.py', 'PYMODULE'), + ('code', '/usr/lib/python3.5/code.py', 'PYMODULE'), + ('glob', '/usr/lib/python3.5/glob.py', 'PYMODULE'), + ('shlex', '/usr/lib/python3.5/shlex.py', 'PYMODULE'), + ('importlib._bootstrap', + '/usr/lib/python3.5/importlib/_bootstrap.py', + 'PYMODULE'), + ('importlib._bootstrap_external', + '/usr/lib/python3.5/importlib/_bootstrap_external.py', + 'PYMODULE'), + ('importlib.machinery', + '/usr/lib/python3.5/importlib/machinery.py', + 'PYMODULE'), + ('importlib.util', '/usr/lib/python3.5/importlib/util.py', 'PYMODULE'), + ('importlib.abc', '/usr/lib/python3.5/importlib/abc.py', 'PYMODULE'), + ('importlib', '/usr/lib/python3.5/importlib/__init__.py', 'PYMODULE'), + ('pkgutil', '/usr/lib/python3.5/pkgutil.py', 'PYMODULE'), + ('ctypes._endian', '/usr/lib/python3.5/ctypes/_endian.py', 'PYMODULE'), + ('ctypes', '/usr/lib/python3.5/ctypes/__init__.py', 'PYMODULE'), + ('ctypes.wintypes', '/usr/lib/python3.5/ctypes/wintypes.py', 'PYMODULE'), + ('xml', '/usr/lib/python3.5/xml/__init__.py', 'PYMODULE'), + ('xml.sax.expatreader', + '/usr/lib/python3.5/xml/sax/expatreader.py', + 'PYMODULE'), + ('xml.sax.saxutils', '/usr/lib/python3.5/xml/sax/saxutils.py', 'PYMODULE'), + ('urllib.request', '/usr/lib/python3.5/urllib/request.py', 'PYMODULE'), + ('getpass', '/usr/lib/python3.5/getpass.py', 'PYMODULE'), + ('nturl2path', '/usr/lib/python3.5/nturl2path.py', 'PYMODULE'), + ('ftplib', '/usr/lib/python3.5/ftplib.py', 'PYMODULE'), + ('netrc', '/usr/lib/python3.5/netrc.py', 'PYMODULE'), + ('http.cookiejar', '/usr/lib/python3.5/http/cookiejar.py', 'PYMODULE'), + ('urllib.response', '/usr/lib/python3.5/urllib/response.py', 'PYMODULE'), + ('urllib.error', '/usr/lib/python3.5/urllib/error.py', 'PYMODULE'), + ('bisect', '/usr/lib/python3.5/bisect.py', 'PYMODULE'), + ('xml.sax', '/usr/lib/python3.5/xml/sax/__init__.py', 'PYMODULE'), + ('xml.sax.handler', '/usr/lib/python3.5/xml/sax/handler.py', 'PYMODULE'), + ('xml.sax._exceptions', + '/usr/lib/python3.5/xml/sax/_exceptions.py', + 'PYMODULE'), + ('xml.sax.xmlreader', '/usr/lib/python3.5/xml/sax/xmlreader.py', 'PYMODULE'), + ('xml.parsers', '/usr/lib/python3.5/xml/parsers/__init__.py', 'PYMODULE'), + ('xml.parsers.expat', '/usr/lib/python3.5/xml/parsers/expat.py', 'PYMODULE'), + ('plistlib', '/usr/lib/python3.5/plistlib.py', 'PYMODULE'), + ('platform', '/usr/lib/python3.5/platform.py', 'PYMODULE'), + ('urllib.parse', '/usr/lib/python3.5/urllib/parse.py', 'PYMODULE'), + ('tempfile', '/usr/lib/python3.5/tempfile.py', 'PYMODULE'), + ('tty', '/usr/lib/python3.5/tty.py', 'PYMODULE'), + ('pydoc_data', '/usr/lib/python3.5/pydoc_data/__init__.py', 'PYMODULE'), + ('pydoc_data.topics', '/usr/lib/python3.5/pydoc_data/topics.py', 'PYMODULE'), + ('textwrap', '/usr/lib/python3.5/textwrap.py', 'PYMODULE'), + ('html.entities', '/usr/lib/python3.5/html/entities.py', 'PYMODULE'), + ('html', '/usr/lib/python3.5/html/__init__.py', 'PYMODULE'), + ('ipaddress', '/usr/lib/python3.5/ipaddress.py', 'PYMODULE'), + ('ssl', '/usr/lib/python3.5/ssl.py', 'PYMODULE'), + ('http.client', '/usr/lib/python3.5/http/client.py', 'PYMODULE'), + ('mimetypes', '/usr/lib/python3.5/mimetypes.py', 'PYMODULE'), + ('socketserver', '/usr/lib/python3.5/socketserver.py', 'PYMODULE'), + ('http', '/usr/lib/python3.5/http/__init__.py', 'PYMODULE'), + ('http.server', '/usr/lib/python3.5/http/server.py', 'PYMODULE'), + ('uu', '/usr/lib/python3.5/uu.py', 'PYMODULE'), + ('quopri', '/usr/lib/python3.5/quopri.py', 'PYMODULE'), + ('email.feedparser', '/usr/lib/python3.5/email/feedparser.py', 'PYMODULE'), + ('email.parser', '/usr/lib/python3.5/email/parser.py', 'PYMODULE'), + ('email', '/usr/lib/python3.5/email/__init__.py', 'PYMODULE'), + ('optparse', '/usr/lib/python3.5/optparse.py', 'PYMODULE'), + ('calendar', '/usr/lib/python3.5/calendar.py', 'PYMODULE'), + ('email._parseaddr', '/usr/lib/python3.5/email/_parseaddr.py', 'PYMODULE'), + ('email.utils', '/usr/lib/python3.5/email/utils.py', 'PYMODULE'), + ('email.errors', '/usr/lib/python3.5/email/errors.py', 'PYMODULE'), + ('email.header', '/usr/lib/python3.5/email/header.py', 'PYMODULE'), + ('email._policybase', '/usr/lib/python3.5/email/_policybase.py', 'PYMODULE'), + ('email.base64mime', '/usr/lib/python3.5/email/base64mime.py', 'PYMODULE'), + ('email.encoders', '/usr/lib/python3.5/email/encoders.py', 'PYMODULE'), + ('email.charset', '/usr/lib/python3.5/email/charset.py', 'PYMODULE'), + ('base64', '/usr/lib/python3.5/base64.py', 'PYMODULE'), + ('email._encoded_words', + '/usr/lib/python3.5/email/_encoded_words.py', + 'PYMODULE'), + ('hashlib', '/usr/lib/python3.5/hashlib.py', 'PYMODULE'), + ('random', '/usr/lib/python3.5/random.py', 'PYMODULE'), + ('email.generator', '/usr/lib/python3.5/email/generator.py', 'PYMODULE'), + ('email.iterators', '/usr/lib/python3.5/email/iterators.py', 'PYMODULE'), + ('urllib', '/usr/lib/python3.5/urllib/__init__.py', 'PYMODULE'), + ('email._header_value_parser', + '/usr/lib/python3.5/email/_header_value_parser.py', + 'PYMODULE'), + ('email.headerregistry', + '/usr/lib/python3.5/email/headerregistry.py', + 'PYMODULE'), + ('email.quoprimime', '/usr/lib/python3.5/email/quoprimime.py', 'PYMODULE'), + ('email.contentmanager', + '/usr/lib/python3.5/email/contentmanager.py', + 'PYMODULE'), + ('email.policy', '/usr/lib/python3.5/email/policy.py', 'PYMODULE'), + ('email.message', '/usr/lib/python3.5/email/message.py', 'PYMODULE'), + ('gzip', '/usr/lib/python3.5/gzip.py', 'PYMODULE'), + ('tarfile', '/usr/lib/python3.5/tarfile.py', 'PYMODULE'), + ('bz2', '/usr/lib/python3.5/bz2.py', 'PYMODULE'), + ('_compression', '/usr/lib/python3.5/_compression.py', 'PYMODULE'), + ('lzma', '/usr/lib/python3.5/lzma.py', 'PYMODULE'), + ('py_compile', '/usr/lib/python3.5/py_compile.py', 'PYMODULE'), + ('zipfile', '/usr/lib/python3.5/zipfile.py', 'PYMODULE'), + ('shutil', '/usr/lib/python3.5/shutil.py', 'PYMODULE'), + ('socket', '/usr/lib/python3.5/socket.py', 'PYMODULE'), + ('webbrowser', '/usr/lib/python3.5/webbrowser.py', 'PYMODULE'), + ('pydoc', '/usr/lib/python3.5/pydoc.py', 'PYMODULE'), + ('copy', '/usr/lib/python3.5/copy.py', 'PYMODULE'), + ('struct', '/usr/lib/python3.5/struct.py', 'PYMODULE'), + ('token', '/usr/lib/python3.5/token.py', 'PYMODULE'), + ('tokenize', '/usr/lib/python3.5/tokenize.py', 'PYMODULE'), + ('gettext', '/usr/lib/python3.5/gettext.py', 'PYMODULE'), + ('getopt', '/usr/lib/python3.5/getopt.py', 'PYMODULE'), + ('pdb', '/usr/lib/python3.5/pdb.py', 'PYMODULE'), + ('unittest.util', '/usr/lib/python3.5/unittest/util.py', 'PYMODULE'), + ('unittest.result', '/usr/lib/python3.5/unittest/result.py', 'PYMODULE'), + ('logging', '/usr/lib/python3.5/logging/__init__.py', 'PYMODULE'), + ('pprint', '/usr/lib/python3.5/pprint.py', 'PYMODULE'), + ('unittest.case', '/usr/lib/python3.5/unittest/case.py', 'PYMODULE'), + ('unittest.suite', '/usr/lib/python3.5/unittest/suite.py', 'PYMODULE'), + ('fnmatch', '/usr/lib/python3.5/fnmatch.py', 'PYMODULE'), + ('unittest.loader', '/usr/lib/python3.5/unittest/loader.py', 'PYMODULE'), + ('unittest.runner', '/usr/lib/python3.5/unittest/runner.py', 'PYMODULE'), + ('unittest.main', '/usr/lib/python3.5/unittest/main.py', 'PYMODULE'), + ('unittest.signals', '/usr/lib/python3.5/unittest/signals.py', 'PYMODULE'), + ('unittest', '/usr/lib/python3.5/unittest/__init__.py', 'PYMODULE'), + ('doctest', '/usr/lib/python3.5/doctest.py', 'PYMODULE'), + ('stat', '/usr/lib/python3.5/stat.py', 'PYMODULE'), + ('genericpath', '/usr/lib/python3.5/genericpath.py', 'PYMODULE'), + ('string', '/usr/lib/python3.5/string.py', 'PYMODULE'), + ('ntpath', '/usr/lib/python3.5/ntpath.py', 'PYMODULE'), + ('warnings', '/usr/lib/python3.5/warnings.py', 'PYMODULE'), + ('enum', '/usr/lib/python3.5/enum.py', 'PYMODULE'), + ('signal', '/usr/lib/python3.5/signal.py', 'PYMODULE'), + ('contextlib', '/usr/lib/python3.5/contextlib.py', 'PYMODULE'), + ('_threading_local', '/usr/lib/python3.5/_threading_local.py', 'PYMODULE'), + ('threading', '/usr/lib/python3.5/threading.py', 'PYMODULE'), + ('selectors', '/usr/lib/python3.5/selectors.py', 'PYMODULE'), + ('_dummy_thread', '/usr/lib/python3.5/_dummy_thread.py', 'PYMODULE'), + ('dummy_threading', '/usr/lib/python3.5/dummy_threading.py', 'PYMODULE'), + ('os', '/usr/lib/python3.5/os.py', 'PYMODULE'), + ('subprocess', '/usr/lib/python3.5/subprocess.py', 'PYMODULE')]) diff --git a/build/start_cmd/warnstart_cmd.txt b/build/start_cmd/warnstart_cmd.txt new file mode 100644 index 0000000..580ebc8 --- /dev/null +++ b/build/start_cmd/warnstart_cmd.txt @@ -0,0 +1,15 @@ +missing module named 'org.python' - imported by pickle, /home/leo/iexec-dapp-samples/start_cmd.py, xml.sax +excluded module named _frozen_importlib - imported by importlib, importlib.abc, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named _frozen_importlib_external - imported by importlib._bootstrap, importlib, importlib.abc, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named _winreg - imported by platform, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named _scproxy - imported by urllib.request +missing module named java - imported by platform, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named 'java.lang' - imported by platform, /home/leo/iexec-dapp-samples/start_cmd.py, xml.sax._exceptions +missing module named vms_lib - imported by platform, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named winreg - imported by platform, mimetypes, /home/leo/iexec-dapp-samples/start_cmd.py, urllib.request +missing module named org - imported by copy, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named nt - imported by os, ntpath, shutil, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named ce - imported by os, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named msvcrt - imported by subprocess, /home/leo/iexec-dapp-samples/start_cmd.py, getpass +missing module named _winapi - imported by subprocess, /home/leo/iexec-dapp-samples/start_cmd.py +missing module named _dummy_threading - imported by dummy_threading, /home/leo/iexec-dapp-samples/start_cmd.py diff --git a/build/start_cmd/xref-start_cmd.html b/build/start_cmd/xref-start_cmd.html new file mode 100644 index 0000000..6e65561 --- /dev/null +++ b/build/start_cmd/xref-start_cmd.html @@ -0,0 +1,8324 @@ + + + modulegraph cross reference for start_cmd.py + + + +

modulegraph cross reference for start_cmd.py

+ +
+ + start_cmd.py +Script
+imports: + 'java.lang' + • 'org.python' + • __future__ + • _ast + • _bootlocale + • _bz2 + • _codecs + • _codecs_cn + • _codecs_hk + • _codecs_iso2022 + • _codecs_jp + • _codecs_kr + • _codecs_tw + • _collections + • _collections_abc + • _compat_pickle + • _compression + • _ctypes + • _datetime + • _dummy_thread + • _dummy_threading + • _frozen_importlib + • _frozen_importlib_external + • _functools + • _hashlib + • _heapq + • _imp + • _io + • _locale + • _lzma + • _md5 + • _multibytecodec + • _opcode + • _operator + • _pickle + • _posixsubprocess + • _random + • _sha1 + • _sha256 + • _sha512 + • _signal + • _socket + • _sre + • _ssl + • _stat + • _string + • _strptime + • _struct + • _thread + • _threading_local + • _warnings + • _weakref + • _weakrefset + • _winapi + • _winreg + • abc + • argparse + • ast + • atexit + • base64 + • bdb + • binascii + • builtins + • bz2 + • calendar + • ce + • cmd + • code + • codecs + • codeop + • collections + • collections.__main__ + • collections.abc + • contextlib + • copy + • copyreg + • ctypes + • ctypes._endian + • ctypes.wintypes + • datetime + • difflib + • dis + • doctest + • dummy_threading + • email + • email._encoded_words + • email._header_value_parser + • email._parseaddr + • email._policybase + • email.base64mime + • email.charset + • email.contentmanager + • email.encoders + • email.errors + • email.feedparser + • email.generator + • email.header + • email.headerregistry + • email.iterators + • email.message + • email.parser + • email.policy + • email.quoprimime + • email.utils + • encodings + • encodings.aliases + • encodings.ascii + • encodings.base64_codec + • encodings.big5 + • encodings.big5hkscs + • encodings.bz2_codec + • encodings.charmap + • encodings.cp037 + • encodings.cp1006 + • encodings.cp1026 + • encodings.cp1125 + • encodings.cp1140 + • encodings.cp1250 + • encodings.cp1251 + • encodings.cp1252 + • encodings.cp1253 + • encodings.cp1254 + • encodings.cp1255 + • encodings.cp1256 + • encodings.cp1257 + • encodings.cp1258 + • encodings.cp273 + • encodings.cp424 + • encodings.cp437 + • encodings.cp500 + • encodings.cp65001 + • encodings.cp720 + • encodings.cp737 + • encodings.cp775 + • encodings.cp850 + • encodings.cp852 + • encodings.cp855 + • encodings.cp856 + • encodings.cp857 + • encodings.cp858 + • encodings.cp860 + • encodings.cp861 + • encodings.cp862 + • encodings.cp863 + • encodings.cp864 + • encodings.cp865 + • encodings.cp866 + • encodings.cp869 + • encodings.cp874 + • encodings.cp875 + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hex_codec + • encodings.hp_roman8 + • encodings.hz + • encodings.idna + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.iso8859_1 + • encodings.iso8859_10 + • encodings.iso8859_11 + • encodings.iso8859_13 + • encodings.iso8859_14 + • encodings.iso8859_15 + • encodings.iso8859_16 + • encodings.iso8859_2 + • encodings.iso8859_3 + • encodings.iso8859_4 + • encodings.iso8859_5 + • encodings.iso8859_6 + • encodings.iso8859_7 + • encodings.iso8859_8 + • encodings.iso8859_9 + • encodings.johab + • encodings.koi8_r + • encodings.koi8_t + • encodings.koi8_u + • encodings.kz1048 + • encodings.latin_1 + • encodings.mac_arabic + • encodings.mac_centeuro + • encodings.mac_croatian + • encodings.mac_cyrillic + • encodings.mac_farsi + • encodings.mac_greek + • encodings.mac_iceland + • encodings.mac_latin2 + • encodings.mac_roman + • encodings.mac_romanian + • encodings.mac_turkish + • encodings.mbcs + • encodings.palmos + • encodings.ptcp154 + • encodings.punycode + • encodings.quopri_codec + • encodings.raw_unicode_escape + • encodings.rot_13 + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • encodings.tis_620 + • encodings.undefined + • encodings.unicode_escape + • encodings.unicode_internal + • encodings.utf_16 + • encodings.utf_16_be + • encodings.utf_16_le + • encodings.utf_32 + • encodings.utf_32_be + • encodings.utf_32_le + • encodings.utf_7 + • encodings.utf_8 + • encodings.utf_8_sig + • encodings.uu_codec + • encodings.zlib_codec + • enum + • errno + • fnmatch + • functools + • gc + • genericpath + • getopt + • gettext + • glob + • grp + • gzip + • hashlib + • heapq + • html + • html.entities + • http + • http.client + • http.server + • imp + • importlib + • importlib._bootstrap + • importlib._bootstrap_external + • importlib.abc + • importlib.machinery + • importlib.util + • inspect + • io + • ipaddress + • itertools + • java + • keyword + • linecache + • locale + • logging + • lzma + • marshal + • math + • mimetypes + • msvcrt + • nt + • ntpath + • opcode + • operator + • optparse + • org + • os + • pdb + • pickle + • pkgutil + • platform + • plistlib + • posix + • posixpath + • posixpath + • pprint + • pwd + • py_compile + • pydoc + • pydoc_data + • pydoc_data.topics + • pyexpat + • quopri + • random + • re + • readline + • reprlib + • resource + • select + • selectors + • shlex + • shutil + • signal + • socket + • socketserver + • sre_compile + • sre_constants + • sre_parse + • ssl + • stat + • string + • stringprep + • struct + • subprocess + • sys + • tarfile + • tempfile + • termios + • textwrap + • threading + • time + • token + • tokenize + • traceback + • tty + • types + • unicodedata + • unittest + • unittest.case + • unittest.loader + • unittest.main + • unittest.result + • unittest.runner + • unittest.signals + • unittest.suite + • unittest.util + • urllib + • urllib.parse + • uu + • vms_lib + • warnings + • weakref + • webbrowser + • winreg + • xml + • xml.parsers + • xml.parsers.expat + • zipfile + • zipimport + • zlib + +
+ +
+ +
+ + 'java.lang' +MissingModule
+imported by: + platform + • start_cmd.py + • xml.sax._exceptions + +
+ +
+ +
+ + 'org.python' +MissingModule
+imported by: + pickle + • start_cmd.py + • xml.sax + +
+ +
+ +
+ + __future__ +SourceModule
+imported by: + codeop + • doctest + • start_cmd.py + +
+ +
+ +
+ + _ast (builtin module)
+imported by: + ast + • start_cmd.py + +
+ +
+ +
+ + _bisect (builtin module)
+imported by: + bisect + +
+ +
+ +
+ + _bootlocale +SourceModule
+imports: + _locale + • locale + • sys + +
+
+imported by: + locale + • start_cmd.py + +
+ +
+ +
+ + _bz2 /usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so
+imported by: + bz2 + • start_cmd.py + +
+ +
+ +
+ + _codecs (builtin module)
+imported by: + codecs + • start_cmd.py + +
+ +
+ +
+ + _codecs_cn /usr/lib/python3.5/lib-dynload/_codecs_cn.cpython-35m-x86_64-linux-gnu.so
+imported by: + encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hz + • start_cmd.py + +
+ +
+ +
+ + _codecs_hk /usr/lib/python3.5/lib-dynload/_codecs_hk.cpython-35m-x86_64-linux-gnu.so
+imported by: + encodings.big5hkscs + • start_cmd.py + +
+ +
+ +
+ + _codecs_iso2022 /usr/lib/python3.5/lib-dynload/_codecs_iso2022.cpython-35m-x86_64-linux-gnu.so
+imported by: + encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • start_cmd.py + +
+ +
+ +
+ + _codecs_jp /usr/lib/python3.5/lib-dynload/_codecs_jp.cpython-35m-x86_64-linux-gnu.so
+imported by: + encodings.cp932 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • start_cmd.py + +
+ +
+ +
+ + _codecs_kr /usr/lib/python3.5/lib-dynload/_codecs_kr.cpython-35m-x86_64-linux-gnu.so
+imported by: + encodings.cp949 + • encodings.euc_kr + • encodings.johab + • start_cmd.py + +
+ +
+ +
+ + _codecs_tw /usr/lib/python3.5/lib-dynload/_codecs_tw.cpython-35m-x86_64-linux-gnu.so
+imported by: + encodings.big5 + • encodings.cp950 + • start_cmd.py + +
+ +
+ +
+ + _collections (builtin module)
+imported by: + collections + • start_cmd.py + • threading + +
+ +
+ +
+ + _collections_abc +SourceModule
+imports: + abc + • sys + +
+
+imported by: + collections + • collections.abc + • os + • random + • start_cmd.py + +
+ +
+ +
+ + _compat_pickle +SourceModule
+imported by: + _pickle + • pickle + • start_cmd.py + +
+ +
+ +
+ + _compression +SourceModule
+imports: + io + +
+
+imported by: + bz2 + • gzip + • lzma + • start_cmd.py + +
+ +
+ +
+ + _ctypes /usr/lib/python3.5/lib-dynload/_ctypes.cpython-35m-x86_64-linux-gnu.so
+imported by: + ctypes + • start_cmd.py + +
+ +
+ +
+ + _datetime (builtin module)
+imports: + _strptime + • time + +
+
+imported by: + datetime + • start_cmd.py + +
+ +
+ +
+ + _dummy_thread +SourceModule
+imports: + time + • traceback + +
+
+imported by: + _strptime + • dummy_threading + • reprlib + • start_cmd.py + • tempfile + +
+ +
+ +
+ + _dummy_threading +MissingModule
+imported by: + dummy_threading + • start_cmd.py + +
+ +
+ +
+ + _frozen_importlib +ExcludedModule
+imported by: + importlib + • importlib.abc + • start_cmd.py + +
+ +
+ +
+ + _frozen_importlib_external +MissingModule
+imported by: + importlib + • importlib._bootstrap + • importlib.abc + • start_cmd.py + +
+ +
+ +
+ + _functools (builtin module)
+imported by: + functools + • start_cmd.py + +
+ +
+ +
+ + _hashlib /usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so
+imported by: + hashlib + • start_cmd.py + +
+ +
+ +
+ + _heapq (builtin module)
+imported by: + heapq + • start_cmd.py + +
+ +
+ +
+ + _imp (builtin module)
+imported by: + imp + • importlib + • importlib.machinery + • start_cmd.py + +
+ +
+ +
+ + _io (builtin module)
+imported by: + io + • start_cmd.py + +
+ +
+ +
+ + _locale (builtin module)
+imported by: + _bootlocale + • locale + • re + • start_cmd.py + +
+ +
+ +
+ + _lzma /usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so
+imported by: + lzma + • start_cmd.py + +
+ +
+ +
+ + _md5 (builtin module)
+imported by: + hashlib + • start_cmd.py + +
+ +
+ +
+ + _multibytecodec /usr/lib/python3.5/lib-dynload/_multibytecodec.cpython-35m-x86_64-linux-gnu.so
+imported by: + encodings.big5 + • encodings.big5hkscs + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hz + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.johab + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • start_cmd.py + +
+ +
+ +
+ + _opcode /usr/lib/python3.5/lib-dynload/_opcode.cpython-35m-x86_64-linux-gnu.so
+imported by: + opcode + • start_cmd.py + +
+ +
+ +
+ + _operator (builtin module)
+imported by: + operator + • start_cmd.py + +
+ +
+ +
+ + _pickle (builtin module)
+imports: + _compat_pickle + • codecs + • copyreg + +
+
+imported by: + pickle + • start_cmd.py + +
+ +
+ +
+ + _posixsubprocess (builtin module)
+imports: + gc + +
+
+imported by: + start_cmd.py + • subprocess + +
+ +
+ +
+ + _random (builtin module)
+imported by: + random + • start_cmd.py + +
+ +
+ +
+ + _scproxy +MissingModule
+imported by: + urllib.request + +
+ +
+ +
+ + _sha1 (builtin module)
+imported by: + hashlib + • start_cmd.py + +
+ +
+ +
+ + _sha256 (builtin module)
+imported by: + hashlib + • start_cmd.py + +
+ +
+ +
+ + _sha512 (builtin module)
+imported by: + hashlib + • start_cmd.py + +
+ +
+ +
+ + _signal (builtin module)
+imported by: + signal + • start_cmd.py + +
+ +
+ +
+ + _socket (builtin module)
+imported by: + socket + • start_cmd.py + +
+ +
+ +
+ + _sre (builtin module)
+imports: + copy + • re + +
+
+imported by: + sre_compile + • sre_constants + • start_cmd.py + +
+ +
+ +
+ + _ssl /usr/lib/python3.5/lib-dynload/_ssl.cpython-35m-x86_64-linux-gnu.so
+imports: + socket + +
+
+imported by: + ssl + • start_cmd.py + +
+ +
+ +
+ + _stat (builtin module)
+imported by: + start_cmd.py + • stat + +
+ +
+ +
+ + _string (builtin module)
+imported by: + start_cmd.py + • string + +
+ +
+ +
+ + _strptime +SourceModule
+imports: + _dummy_thread + • _thread + • calendar + • datetime + • locale + • re + • time + +
+
+imported by: + _datetime + • datetime + • start_cmd.py + • time + +
+ +
+ +
+ + _struct (builtin module)
+imported by: + start_cmd.py + • struct + +
+ +
+ +
+ + _thread (builtin module)
+imported by: + _strptime + • functools + • reprlib + • start_cmd.py + • tempfile + • threading + +
+ +
+ +
+ + _threading_local +SourceModule
+imports: + contextlib + • threading + • weakref + +
+
+imported by: + start_cmd.py + • threading + +
+ +
+ +
+ + _warnings (builtin module)
+imported by: + start_cmd.py + • warnings + +
+ +
+ +
+ + _weakref (builtin module)
+imported by: + _weakrefset + • collections + • start_cmd.py + • weakref + • xml.sax.expatreader + +
+ +
+ +
+ + _weakrefset +SourceModule
+imports: + _weakref + +
+
+imported by: + abc + • start_cmd.py + • threading + • weakref + +
+ +
+ +
+ + _winapi +MissingModule
+imported by: + start_cmd.py + • subprocess + +
+ +
+ +
+ + _winreg +MissingModule
+imported by: + platform + • start_cmd.py + +
+ +
+ +
+ + abc +SourceModule
+imports: + _weakrefset + +
+
+imported by: + _collections_abc + • email._policybase + • functools + • importlib.abc + • io + • selectors + • start_cmd.py + +
+ +
+ +
+ + argparse +SourceModule
+imports: + collections + • copy + • gettext + • os + • re + • sys + • textwrap + +
+
+imported by: + code + • dis + • doctest + • http.server + • inspect + • pickle + • start_cmd.py + • tarfile + • tokenize + • unittest.main + +
+ +
+ +
+ + ast +SourceModule
+imports: + _ast + • collections + • inspect + +
+
+imported by: + inspect + • start_cmd.py + +
+ +
+ +
+ + atexit (builtin module)
+imported by: + logging + • start_cmd.py + • weakref + +
+ +
+ +
+ + base64 +SourceModule
+imports: + binascii + • getopt + • re + • struct + • sys + • warnings + +
+
+imported by: + email._encoded_words + • email.base64mime + • email.encoders + • encodings.base64_codec + • http.server + • ssl + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + bdb +SourceModule
+imports: + fnmatch + • inspect + • linecache + • os + • reprlib + • sys + +
+
+imported by: + pdb + • start_cmd.py + +
+ +
+ +
+ + binascii (builtin module)
+imported by: + base64 + • email._encoded_words + • email.base64mime + • email.contentmanager + • email.header + • encodings.hex_codec + • encodings.uu_codec + • http.server + • plistlib + • quopri + • start_cmd.py + • uu + • zipfile + +
+ +
+ +
+ + bisect +SourceModule
+imports: + _bisect + +
+
+imported by: + urllib.request + +
+ +
+ +
+ + builtins (builtin module)
+imported by: + bz2 + • codecs + • copy + • doctest + • gettext + • gzip + • inspect + • locale + • lzma + • operator + • pydoc + • reprlib + • start_cmd.py + • subprocess + • tarfile + • tokenize + +
+ +
+ +
+ + bz2 +SourceModule
+imports: + _bz2 + • _compression + • builtins + • dummy_threading + • io + • threading + • warnings + +
+
+imported by: + encodings.bz2_codec + • shutil + • start_cmd.py + • tarfile + • zipfile + +
+ +
+ +
+ + calendar +SourceModule
+imports: + datetime + • locale + • optparse + • sys + +
+
+imported by: + _strptime + • email._parseaddr + • http.cookiejar + • ssl + • start_cmd.py + +
+ +
+ +
+ + ce +MissingModule
+imported by: + os + • start_cmd.py + +
+ +
+ +
+ + cmd +SourceModule
+imports: + readline + • string + • sys + +
+
+imported by: + pdb + • start_cmd.py + +
+ +
+ +
+ + code +SourceModule
+imports: + argparse + • codeop + • readline + • sys + • traceback + +
+
+imported by: + pdb + • start_cmd.py + +
+ +
+ +
+ + codecs +SourceModule
+imports: + _codecs + • builtins + • encodings + • sys + +
+
+imported by: + _pickle + • encodings + • encodings.ascii + • encodings.base64_codec + • encodings.big5 + • encodings.big5hkscs + • encodings.bz2_codec + • encodings.charmap + • encodings.cp037 + • encodings.cp1006 + • encodings.cp1026 + • encodings.cp1125 + • encodings.cp1140 + • encodings.cp1250 + • encodings.cp1251 + • encodings.cp1252 + • encodings.cp1253 + • encodings.cp1254 + • encodings.cp1255 + • encodings.cp1256 + • encodings.cp1257 + • encodings.cp1258 + • encodings.cp273 + • encodings.cp424 + • encodings.cp437 + • encodings.cp500 + • encodings.cp65001 + • encodings.cp720 + • encodings.cp737 + • encodings.cp775 + • encodings.cp850 + • encodings.cp852 + • encodings.cp855 + • encodings.cp856 + • encodings.cp857 + • encodings.cp858 + • encodings.cp860 + • encodings.cp861 + • encodings.cp862 + • encodings.cp863 + • encodings.cp864 + • encodings.cp865 + • encodings.cp866 + • encodings.cp869 + • encodings.cp874 + • encodings.cp875 + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hex_codec + • encodings.hp_roman8 + • encodings.hz + • encodings.idna + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.iso8859_1 + • encodings.iso8859_10 + • encodings.iso8859_11 + • encodings.iso8859_13 + • encodings.iso8859_14 + • encodings.iso8859_15 + • encodings.iso8859_16 + • encodings.iso8859_2 + • encodings.iso8859_3 + • encodings.iso8859_4 + • encodings.iso8859_5 + • encodings.iso8859_6 + • encodings.iso8859_7 + • encodings.iso8859_8 + • encodings.iso8859_9 + • encodings.johab + • encodings.koi8_r + • encodings.koi8_t + • encodings.koi8_u + • encodings.kz1048 + • encodings.latin_1 + • encodings.mac_arabic + • encodings.mac_centeuro + • encodings.mac_croatian + • encodings.mac_cyrillic + • encodings.mac_farsi + • encodings.mac_greek + • encodings.mac_iceland + • encodings.mac_latin2 + • encodings.mac_roman + • encodings.mac_romanian + • encodings.mac_turkish + • encodings.mbcs + • encodings.palmos + • encodings.ptcp154 + • encodings.punycode + • encodings.quopri_codec + • encodings.raw_unicode_escape + • encodings.rot_13 + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • encodings.tis_620 + • encodings.undefined + • encodings.unicode_escape + • encodings.unicode_internal + • encodings.utf_16 + • encodings.utf_16_be + • encodings.utf_16_le + • encodings.utf_32 + • encodings.utf_32_be + • encodings.utf_32_le + • encodings.utf_7 + • encodings.utf_8 + • encodings.utf_8_sig + • encodings.uu_codec + • encodings.zlib_codec + • pickle + • plistlib + • start_cmd.py + • tokenize + • xml.sax.saxutils + +
+ +
+ +
+ + codeop +SourceModule
+imports: + __future__ + +
+
+imported by: + code + • start_cmd.py + +
+ +
+ +
+ + collections +Package
+imports: + _collections + • _collections_abc + • _weakref + • copy + • heapq + • itertools + • keyword + • operator + • reprlib + • sys + • warnings + +
+
+imported by: + argparse + • ast + • collections.__main__ + • collections.abc + • contextlib + • difflib + • dis + • doctest + • email._header_value_parser + • email.feedparser + • enum + • functools + • http.client + • inspect + • locale + • logging + • platform + • pprint + • pydoc + • selectors + • shlex + • shutil + • ssl + • start_cmd.py + • string + • threading + • tokenize + • traceback + • unittest.case + • unittest.util + • urllib.parse + • urllib.request + • weakref + +
+ +
+ +
+ + collections.__main__ +SourceModule
+imports: + collections + • doctest + • pickle + +
+
+imported by: + start_cmd.py + +
+ +
+ +
+ + collections.abc +SourceModule
+imports: + _collections_abc + • collections + +
+
+imported by: + inspect + • start_cmd.py + • types + +
+ +
+ +
+ + contextlib +SourceModule
+imports: + collections + • functools + • sys + +
+
+imported by: + _threading_local + • getpass + • importlib.util + • plistlib + • start_cmd.py + • unittest.case + • urllib.request + +
+ +
+ +
+ + copy +SourceModule
+imports: + builtins + • copyreg + • org + • types + • weakref + +
+
+imported by: + _sre + • argparse + • collections + • email.generator + • gettext + • http.cookiejar + • http.server + • start_cmd.py + • tarfile + • weakref + • webbrowser + +
+ +
+ +
+ + copyreg +SourceModule
+imported by: + _pickle + • copy + • pickle + • re + • start_cmd.py + +
+ +
+ +
+ + ctypes +Package
+imports: + _ctypes + • ctypes._endian + • os + • struct + • sys + +
+
+imported by: + ctypes._endian + • ctypes.wintypes + • platform + • start_cmd.py + +
+ +
+ +
+ + ctypes._endian +SourceModule
+imports: + ctypes + • sys + +
+
+imported by: + ctypes + • start_cmd.py + +
+ +
+ +
+ + ctypes.wintypes +SourceModule
+imports: + ctypes + +
+
+imported by: + platform + • start_cmd.py + +
+ +
+ +
+ + datetime +SourceModule
+imports: + _datetime + • _strptime + • math + • time + +
+
+imported by: + _strptime + • calendar + • email.utils + • http.cookiejar + • plistlib + • start_cmd.py + +
+ +
+ +
+ + difflib +SourceModule
+imports: + collections + • difflib + • doctest + • heapq + • re + +
+
+imported by: + difflib + • doctest + • start_cmd.py + • unittest.case + +
+ +
+ +
+ + dis +SourceModule
+imports: + argparse + • collections + • io + • opcode + • sys + • types + +
+
+imported by: + inspect + • pdb + • start_cmd.py + +
+ +
+ +
+ + doctest +SourceModule
+imports: + __future__ + • argparse + • builtins + • collections + • difflib + • inspect + • io + • linecache + • os + • pdb + • re + • sys + • traceback + • unittest + +
+
+imported by: + collections.__main__ + • difflib + • heapq + • pickle + • start_cmd.py + +
+ +
+ +
+ + dummy_threading +SourceModule
+imports: + _dummy_thread + • _dummy_threading + • sys + • threading + +
+
+imported by: + bz2 + • http.cookiejar + • socketserver + • start_cmd.py + • subprocess + • zipfile + +
+ +
+ +
+ + email +Package
+imports: + email._header_value_parser + • email.errors + • email.header + • email.message + • email.parser + • email.utils + +
+
+imported by: + email._encoded_words + • email._header_value_parser + • email._parseaddr + • email._policybase + • email.base64mime + • email.charset + • email.contentmanager + • email.encoders + • email.errors + • email.feedparser + • email.generator + • email.header + • email.headerregistry + • email.iterators + • email.message + • email.parser + • email.policy + • email.quoprimime + • email.utils + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + email._encoded_words +SourceModule
+imports: + base64 + • binascii + • email + • email.errors + • functools + • re + • string + +
+
+imported by: + email._header_value_parser + • email.message + • start_cmd.py + +
+ +
+ +
+ + email._header_value_parser +SourceModule
+imports: + collections + • email + • email._encoded_words + • email.errors + • email.utils + • operator + • re + • string + • urllib + +
+
+imported by: + email + • email.headerregistry + • start_cmd.py + +
+ +
+ +
+ + email._parseaddr +SourceModule
+imports: + calendar + • email + • time + +
+
+imported by: + email.utils + • start_cmd.py + +
+ +
+ +
+ + email._policybase +SourceModule
+imports: + abc + • email + • email.charset + • email.header + • email.utils + +
+
+imported by: + email.feedparser + • email.message + • email.parser + • email.policy + • start_cmd.py + +
+ +
+ +
+ + email.base64mime +SourceModule
+imports: + base64 + • binascii + • email + +
+
+imported by: + email.charset + • email.header + • start_cmd.py + +
+ +
+ +
+ + email.charset +SourceModule
+imports: + email + • email.base64mime + • email.encoders + • email.errors + • email.quoprimime + • functools + +
+
+imported by: + email._policybase + • email.contentmanager + • email.header + • email.message + • email.utils + • start_cmd.py + +
+ +
+ +
+ + email.contentmanager +SourceModule
+imports: + binascii + • email + • email.charset + • email.errors + • email.message + • email.quoprimime + +
+
+imported by: + email.policy + • start_cmd.py + +
+ +
+ +
+ + email.encoders +SourceModule
+imports: + base64 + • email + • quopri + +
+
+imported by: + email.charset + • start_cmd.py + +
+ +
+ +
+ + email.errors +SourceModule
+imports: + email + +
+
+imported by: + email + • email._encoded_words + • email._header_value_parser + • email.charset + • email.contentmanager + • email.feedparser + • email.header + • email.headerregistry + • email.message + • start_cmd.py + +
+ +
+ +
+ + email.feedparser +SourceModule
+imports: + collections + • email + • email._policybase + • email.errors + • email.message + • re + +
+
+imported by: + email.parser + • start_cmd.py + +
+ +
+ +
+ + email.generator +SourceModule
+imports: + copy + • email + • email.utils + • io + • random + • re + • sys + • time + +
+
+imported by: + email.message + • start_cmd.py + +
+ +
+ +
+ + email.header +SourceModule
+imports: + binascii + • email + • email.base64mime + • email.charset + • email.errors + • email.quoprimime + • re + +
+
+imported by: + email + • email._policybase + • start_cmd.py + +
+ +
+ +
+ + email.headerregistry +SourceModule
+imports: + email + • email._header_value_parser + • email.errors + • email.utils + • types + +
+
+imported by: + email.policy + • start_cmd.py + +
+ +
+ +
+ + email.iterators +SourceModule
+imports: + email + • io + • sys + +
+
+imported by: + email.message + • start_cmd.py + +
+ +
+ +
+ + email.message +SourceModule
+imports: + email + • email._encoded_words + • email._policybase + • email.charset + • email.errors + • email.generator + • email.iterators + • email.policy + • email.utils + • io + • quopri + • re + • uu + • warnings + +
+
+imported by: + email + • email.contentmanager + • email.feedparser + • http.client + • pydoc + • start_cmd.py + +
+ +
+ +
+ + email.parser +SourceModule
+imports: + email + • email._policybase + • email.feedparser + • io + +
+
+imported by: + email + • http.client + • start_cmd.py + +
+ +
+ +
+ + email.policy +SourceModule
+imports: + email + • email._policybase + • email.contentmanager + • email.headerregistry + • email.utils + +
+
+imported by: + email.message + • start_cmd.py + +
+ +
+ +
+ + email.quoprimime +SourceModule
+imports: + email + • re + • string + +
+
+imported by: + email.charset + • email.contentmanager + • email.header + • start_cmd.py + +
+ +
+ +
+ + email.utils +SourceModule
+imports: + datetime + • email + • email._parseaddr + • email.charset + • os + • random + • re + • socket + • time + • urllib.parse + +
+
+imported by: + email + • email._header_value_parser + • email._policybase + • email.generator + • email.headerregistry + • email.message + • email.policy + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + encodings +Package
+imports: + codecs + • encodings + • encodings.aliases + • encodings.ascii + • encodings.base64_codec + • encodings.big5 + • encodings.big5hkscs + • encodings.bz2_codec + • encodings.charmap + • encodings.cp037 + • encodings.cp1006 + • encodings.cp1026 + • encodings.cp1125 + • encodings.cp1140 + • encodings.cp1250 + • encodings.cp1251 + • encodings.cp1252 + • encodings.cp1253 + • encodings.cp1254 + • encodings.cp1255 + • encodings.cp1256 + • encodings.cp1257 + • encodings.cp1258 + • encodings.cp273 + • encodings.cp424 + • encodings.cp437 + • encodings.cp500 + • encodings.cp65001 + • encodings.cp720 + • encodings.cp737 + • encodings.cp775 + • encodings.cp850 + • encodings.cp852 + • encodings.cp855 + • encodings.cp856 + • encodings.cp857 + • encodings.cp858 + • encodings.cp860 + • encodings.cp861 + • encodings.cp862 + • encodings.cp863 + • encodings.cp864 + • encodings.cp865 + • encodings.cp866 + • encodings.cp869 + • encodings.cp874 + • encodings.cp875 + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hex_codec + • encodings.hp_roman8 + • encodings.hz + • encodings.idna + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.iso8859_1 + • encodings.iso8859_10 + • encodings.iso8859_11 + • encodings.iso8859_13 + • encodings.iso8859_14 + • encodings.iso8859_15 + • encodings.iso8859_16 + • encodings.iso8859_2 + • encodings.iso8859_3 + • encodings.iso8859_4 + • encodings.iso8859_5 + • encodings.iso8859_6 + • encodings.iso8859_7 + • encodings.iso8859_8 + • encodings.iso8859_9 + • encodings.johab + • encodings.koi8_r + • encodings.koi8_t + • encodings.koi8_u + • encodings.kz1048 + • encodings.latin_1 + • encodings.mac_arabic + • encodings.mac_centeuro + • encodings.mac_croatian + • encodings.mac_cyrillic + • encodings.mac_farsi + • encodings.mac_greek + • encodings.mac_iceland + • encodings.mac_latin2 + • encodings.mac_roman + • encodings.mac_romanian + • encodings.mac_turkish + • encodings.mbcs + • encodings.palmos + • encodings.ptcp154 + • encodings.punycode + • encodings.quopri_codec + • encodings.raw_unicode_escape + • encodings.rot_13 + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • encodings.tis_620 + • encodings.undefined + • encodings.unicode_escape + • encodings.unicode_internal + • encodings.utf_16 + • encodings.utf_16_be + • encodings.utf_16_le + • encodings.utf_32 + • encodings.utf_32_be + • encodings.utf_32_le + • encodings.utf_7 + • encodings.utf_8 + • encodings.utf_8_sig + • encodings.uu_codec + • encodings.zlib_codec + +
+
+imported by: + codecs + • encodings + • encodings.aliases + • encodings.ascii + • encodings.base64_codec + • encodings.big5 + • encodings.big5hkscs + • encodings.bz2_codec + • encodings.charmap + • encodings.cp037 + • encodings.cp1006 + • encodings.cp1026 + • encodings.cp1125 + • encodings.cp1140 + • encodings.cp1250 + • encodings.cp1251 + • encodings.cp1252 + • encodings.cp1253 + • encodings.cp1254 + • encodings.cp1255 + • encodings.cp1256 + • encodings.cp1257 + • encodings.cp1258 + • encodings.cp273 + • encodings.cp424 + • encodings.cp437 + • encodings.cp500 + • encodings.cp65001 + • encodings.cp720 + • encodings.cp737 + • encodings.cp775 + • encodings.cp850 + • encodings.cp852 + • encodings.cp855 + • encodings.cp856 + • encodings.cp857 + • encodings.cp858 + • encodings.cp860 + • encodings.cp861 + • encodings.cp862 + • encodings.cp863 + • encodings.cp864 + • encodings.cp865 + • encodings.cp866 + • encodings.cp869 + • encodings.cp874 + • encodings.cp875 + • encodings.cp932 + • encodings.cp949 + • encodings.cp950 + • encodings.euc_jis_2004 + • encodings.euc_jisx0213 + • encodings.euc_jp + • encodings.euc_kr + • encodings.gb18030 + • encodings.gb2312 + • encodings.gbk + • encodings.hex_codec + • encodings.hp_roman8 + • encodings.hz + • encodings.idna + • encodings.iso2022_jp + • encodings.iso2022_jp_1 + • encodings.iso2022_jp_2 + • encodings.iso2022_jp_2004 + • encodings.iso2022_jp_3 + • encodings.iso2022_jp_ext + • encodings.iso2022_kr + • encodings.iso8859_1 + • encodings.iso8859_10 + • encodings.iso8859_11 + • encodings.iso8859_13 + • encodings.iso8859_14 + • encodings.iso8859_15 + • encodings.iso8859_16 + • encodings.iso8859_2 + • encodings.iso8859_3 + • encodings.iso8859_4 + • encodings.iso8859_5 + • encodings.iso8859_6 + • encodings.iso8859_7 + • encodings.iso8859_8 + • encodings.iso8859_9 + • encodings.johab + • encodings.koi8_r + • encodings.koi8_t + • encodings.koi8_u + • encodings.kz1048 + • encodings.latin_1 + • encodings.mac_arabic + • encodings.mac_centeuro + • encodings.mac_croatian + • encodings.mac_cyrillic + • encodings.mac_farsi + • encodings.mac_greek + • encodings.mac_iceland + • encodings.mac_latin2 + • encodings.mac_roman + • encodings.mac_romanian + • encodings.mac_turkish + • encodings.mbcs + • encodings.palmos + • encodings.ptcp154 + • encodings.punycode + • encodings.quopri_codec + • encodings.raw_unicode_escape + • encodings.rot_13 + • encodings.shift_jis + • encodings.shift_jis_2004 + • encodings.shift_jisx0213 + • encodings.tis_620 + • encodings.undefined + • encodings.unicode_escape + • encodings.unicode_internal + • encodings.utf_16 + • encodings.utf_16_be + • encodings.utf_16_le + • encodings.utf_32 + • encodings.utf_32_be + • encodings.utf_32_le + • encodings.utf_7 + • encodings.utf_8 + • encodings.utf_8_sig + • encodings.uu_codec + • encodings.zlib_codec + • locale + • start_cmd.py + +
+ +
+ +
+ + encodings.aliases +SourceModule
+imports: + encodings + +
+
+imported by: + encodings + • locale + • start_cmd.py + +
+ +
+ +
+ + encodings.ascii +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.base64_codec +SourceModule
+imports: + base64 + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.big5 +SourceModule
+imports: + _codecs_tw + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.big5hkscs +SourceModule
+imports: + _codecs_hk + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.bz2_codec +SourceModule
+imports: + bz2 + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.charmap +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp037 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1006 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1026 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1125 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1140 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1250 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1251 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1252 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1253 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1254 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1255 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1256 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1257 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp1258 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp273 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp424 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp437 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp500 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp65001 +SourceModule
+imports: + codecs + • encodings + • functools + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp720 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp737 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp775 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp850 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp852 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp855 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp856 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp857 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp858 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp860 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp861 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp862 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp863 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp864 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp865 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp866 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp869 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp874 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp875 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp932 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp949 +SourceModule
+imports: + _codecs_kr + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.cp950 +SourceModule
+imports: + _codecs_tw + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.euc_jis_2004 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.euc_jisx0213 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.euc_jp +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.euc_kr +SourceModule
+imports: + _codecs_kr + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.gb18030 +SourceModule
+imports: + _codecs_cn + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.gb2312 +SourceModule
+imports: + _codecs_cn + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.gbk +SourceModule
+imports: + _codecs_cn + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.hex_codec +SourceModule
+imports: + binascii + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.hp_roman8 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.hz +SourceModule
+imports: + _codecs_cn + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.idna +SourceModule
+imports: + codecs + • encodings + • re + • stringprep + • unicodedata + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso2022_jp +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso2022_jp_1 +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso2022_jp_2 +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso2022_jp_2004 +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso2022_jp_3 +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso2022_jp_ext +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso2022_kr +SourceModule
+imports: + _codecs_iso2022 + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_1 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_10 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_11 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_13 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_14 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_15 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_16 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_2 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_3 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_4 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_5 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_6 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_7 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_8 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.iso8859_9 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.johab +SourceModule
+imports: + _codecs_kr + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.koi8_r +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.koi8_t +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.koi8_u +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.kz1048 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.latin_1 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_arabic +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_centeuro +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_croatian +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_cyrillic +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_farsi +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_greek +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_iceland +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_latin2 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_roman +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_romanian +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mac_turkish +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.mbcs +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.palmos +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.ptcp154 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.punycode +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.quopri_codec +SourceModule
+imports: + codecs + • encodings + • io + • quopri + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.raw_unicode_escape +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.rot_13 +SourceModule
+imports: + codecs + • encodings + • sys + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.shift_jis +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.shift_jis_2004 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.shift_jisx0213 +SourceModule
+imports: + _codecs_jp + • _multibytecodec + • codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.tis_620 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.undefined +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.unicode_escape +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.unicode_internal +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_16 +SourceModule
+imports: + codecs + • encodings + • sys + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_16_be +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_16_le +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_32 +SourceModule
+imports: + codecs + • encodings + • sys + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_32_be +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_32_le +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_7 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_8 +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.utf_8_sig +SourceModule
+imports: + codecs + • encodings + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.uu_codec +SourceModule
+imports: + binascii + • codecs + • encodings + • io + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + encodings.zlib_codec +SourceModule
+imports: + codecs + • encodings + • zlib + +
+
+imported by: + encodings + • start_cmd.py + +
+ +
+ +
+ + enum +SourceModule
+imports: + collections + • sys + • types + +
+
+imported by: + http + • inspect + • plistlib + • signal + • socket + • ssl + • start_cmd.py + +
+ +
+ +
+ + errno (builtin module)
+imported by: + gettext + • gzip + • os + • shutil + • socket + • socketserver + • ssl + • start_cmd.py + • subprocess + • tempfile + +
+ +
+ +
+ + fnmatch +SourceModule
+imports: + functools + • os + • posixpath + • re + +
+
+imported by: + bdb + • glob + • shutil + • start_cmd.py + • unittest.loader + • urllib.request + +
+ +
+ +
+ + ftplib +SourceModule
+imports: + netrc + • os + • re + • socket + • ssl + • sys + • warnings + +
+
+imported by: + urllib.request + +
+ +
+ +
+ + functools +SourceModule
+imports: + _functools + • _thread + • abc + • collections + • types + • weakref + +
+
+imported by: + contextlib + • email._encoded_words + • email.charset + • encodings.cp65001 + • fnmatch + • importlib.util + • inspect + • ipaddress + • linecache + • locale + • operator + • pkgutil + • signal + • start_cmd.py + • tempfile + • types + • unittest.case + • unittest.loader + • unittest.result + • unittest.signals + +
+ +
+ +
+ + gc (builtin module)
+imports: + time + +
+
+imported by: + _posixsubprocess + • start_cmd.py + • weakref + +
+ +
+ +
+ + genericpath +SourceModule
+imports: + os + • stat + +
+
+imported by: + ntpath + • posixpath + • start_cmd.py + +
+ +
+ +
+ + getopt +SourceModule
+imports: + gettext + • os + • sys + +
+
+imported by: + base64 + • mimetypes + • pdb + • pydoc + • quopri + • start_cmd.py + • webbrowser + +
+ +
+ +
+ + getpass +SourceModule
+imports: + contextlib + • io + • msvcrt + • os + • pwd + • sys + • termios + • warnings + +
+
+imported by: + urllib.request + +
+ +
+ +
+ + gettext +SourceModule
+imports: + builtins + • copy + • errno + • io + • locale + • os + • re + • struct + • sys + • token + • tokenize + +
+
+imported by: + argparse + • getopt + • optparse + • start_cmd.py + +
+ +
+ +
+ + glob +SourceModule
+imports: + fnmatch + • os + • re + +
+
+imported by: + pdb + • start_cmd.py + • webbrowser + +
+ +
+ +
+ + grp (builtin module)
+imported by: + shutil + • start_cmd.py + • tarfile + +
+ +
+ +
+ + gzip +SourceModule
+imports: + _compression + • builtins + • errno + • io + • os + • struct + • sys + • time + • warnings + • zlib + +
+
+imported by: + start_cmd.py + • tarfile + +
+ +
+ +
+ + hashlib +SourceModule
+imports: + _hashlib + • _md5 + • _sha1 + • _sha256 + • _sha512 + • logging + +
+
+imported by: + random + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + heapq +SourceModule
+imports: + _heapq + • doctest + +
+
+imported by: + collections + • difflib + • start_cmd.py + +
+ +
+ +
+ + html +Package
+imports: + html.entities + • re + +
+
+imported by: + html.entities + • http.server + • start_cmd.py + +
+ +
+ +
+ + html.entities +SourceModule
+imports: + html + +
+
+imported by: + html + • start_cmd.py + +
+ +
+ +
+ + http +Package
+imports: + enum + +
+
+imported by: + http.client + • http.cookiejar + • http.server + • start_cmd.py + +
+ +
+ +
+ + http.client +SourceModule
+imports: + collections + • email.message + • email.parser + • http + • io + • os + • re + • socket + • ssl + • urllib.parse + +
+
+imported by: + http.cookiejar + • http.server + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + http.cookiejar +SourceModule
+imports: + calendar + • copy + • datetime + • dummy_threading + • http + • http.client + • io + • logging + • re + • threading + • time + • traceback + • urllib.parse + • urllib.request + • warnings + +
+
+imported by: + urllib.request + +
+ +
+ +
+ + http.server +SourceModule
+imports: + argparse + • base64 + • binascii + • copy + • html + • http + • http.client + • io + • mimetypes + • os + • posixpath + • pwd + • select + • shutil + • socket + • socketserver + • subprocess + • sys + • time + • urllib.parse + +
+
+imported by: + pydoc + • start_cmd.py + +
+ +
+ +
+ + imp +SourceModule
+imports: + _imp + • importlib + • importlib._bootstrap + • importlib._bootstrap_external + • importlib.machinery + • importlib.util + • os + • sys + • tokenize + • types + • warnings + +
+
+imported by: + inspect + • start_cmd.py + +
+ +
+ +
+ + importlib +Package
+imports: + _frozen_importlib + • _frozen_importlib_external + • _imp + • importlib + • importlib._bootstrap + • importlib._bootstrap_external + • importlib.abc + • importlib.util + • sys + • types + • warnings + +
+
+imported by: + imp + • importlib + • importlib._bootstrap + • importlib._bootstrap_external + • importlib.abc + • importlib.machinery + • importlib.util + • inspect + • pkgutil + • start_cmd.py + +
+ +
+ +
+ + importlib._bootstrap +SourceModule
+imports: + _frozen_importlib_external + • importlib + +
+
+imported by: + imp + • importlib + • importlib.abc + • importlib.machinery + • importlib.util + • pydoc + • start_cmd.py + +
+ +
+ +
+ + importlib._bootstrap_external +SourceModule
+imports: + importlib + • tokenize + +
+
+imported by: + imp + • importlib + • importlib.abc + • importlib.machinery + • importlib.util + • py_compile + • pydoc + • start_cmd.py + +
+ +
+ +
+ + importlib.abc +SourceModule
+imports: + _frozen_importlib + • _frozen_importlib_external + • abc + • importlib + • importlib._bootstrap + • importlib._bootstrap_external + • importlib.machinery + +
+
+imported by: + importlib + • importlib.util + • start_cmd.py + +
+ +
+ +
+ + importlib.machinery +SourceModule
+imports: + _imp + • importlib + • importlib._bootstrap + • importlib._bootstrap_external + +
+
+imported by: + imp + • importlib.abc + • inspect + • pkgutil + • py_compile + • pydoc + • start_cmd.py + +
+ +
+ +
+ + importlib.util +SourceModule
+imports: + contextlib + • functools + • importlib + • importlib._bootstrap + • importlib._bootstrap_external + • importlib.abc + • sys + • types + • warnings + +
+
+imported by: + imp + • importlib + • pkgutil + • py_compile + • pydoc + • start_cmd.py + • zipfile + +
+ +
+ +
+ + inspect +SourceModule
+imports: + argparse + • ast + • builtins + • collections + • collections.abc + • dis + • enum + • functools + • imp + • importlib + • importlib.machinery + • itertools + • linecache + • operator + • os + • re + • sys + • token + • tokenize + • types + • warnings + +
+
+imported by: + ast + • bdb + • doctest + • pdb + • pkgutil + • pydoc + • start_cmd.py + +
+ +
+ +
+ + io +SourceModule
+imports: + _io + • abc + +
+
+imported by: + _compression + • bz2 + • dis + • doctest + • email.generator + • email.iterators + • email.message + • email.parser + • encodings.quopri_codec + • encodings.uu_codec + • getpass + • gettext + • gzip + • http.client + • http.cookiejar + • http.server + • logging + • lzma + • os + • pickle + • plistlib + • pprint + • pydoc + • quopri + • shlex + • socket + • socketserver + • start_cmd.py + • subprocess + • tarfile + • tempfile + • tokenize + • unittest.result + • urllib.request + • xml.sax + • xml.sax.saxutils + • zipfile + +
+ +
+ +
+ + ipaddress +SourceModule
+imports: + functools + +
+
+imported by: + ssl + • start_cmd.py + +
+ +
+ +
+ + itertools (builtin module)
+imported by: + collections + • inspect + • pickle + • plistlib + • reprlib + • start_cmd.py + • threading + • tokenize + • traceback + • weakref + +
+ +
+ +
+ + java +MissingModule
+imported by: + platform + • start_cmd.py + +
+ +
+ +
+ + keyword +SourceModule
+imports: + re + • sys + +
+
+imported by: + collections + • start_cmd.py + +
+ +
+ +
+ + linecache +SourceModule
+imports: + functools + • os + • sys + • tokenize + +
+
+imported by: + bdb + • doctest + • inspect + • pdb + • start_cmd.py + • traceback + • warnings + +
+ +
+ +
+ + locale +SourceModule
+imports: + _bootlocale + • _locale + • builtins + • collections + • encodings + • encodings.aliases + • functools + • os + • re + • sys + +
+
+imported by: + _bootlocale + • _strptime + • calendar + • gettext + • start_cmd.py + +
+ +
+ +
+ + logging +Package
+imports: + atexit + • collections + • io + • os + • string + • sys + • threading + • time + • traceback + • warnings + • weakref + +
+
+imported by: + hashlib + • http.cookiejar + • start_cmd.py + • unittest.case + +
+ +
+ +
+ + lzma +SourceModule
+imports: + _compression + • _lzma + • builtins + • io + +
+
+imported by: + shutil + • start_cmd.py + • tarfile + • zipfile + +
+ +
+ +
+ + marshal (builtin module)
+imported by: + pkgutil + • start_cmd.py + +
+ +
+ +
+ + math (builtin module)
+imported by: + datetime + • random + • selectors + • start_cmd.py + +
+ +
+ +
+ + mimetypes +SourceModule
+imports: + getopt + • os + • posixpath + • sys + • urllib.parse + • winreg + +
+
+imported by: + http.server + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + msvcrt +MissingModule
+imported by: + getpass + • start_cmd.py + • subprocess + +
+ +
+ +
+ + netrc +SourceModule
+imports: + os + • pwd + • shlex + • stat + +
+
+imported by: + ftplib + +
+ +
+ +
+ + nt +MissingModule
+imported by: + ntpath + • os + • shutil + • start_cmd.py + +
+ +
+ +
+ + ntpath +SourceModule
+imports: + genericpath + • nt + • os + • stat + • string + • sys + • warnings + +
+
+imported by: + os + • start_cmd.py + +
+ +
+ +
+ + nturl2path +SourceModule
+imports: + string + • urllib.parse + +
+
+imported by: + urllib.request + +
+ +
+ +
+ + opcode +SourceModule
+imports: + _opcode + +
+
+imported by: + dis + • start_cmd.py + +
+ +
+ +
+ + operator +SourceModule
+imports: + _operator + • builtins + • functools + +
+
+imported by: + collections + • email._header_value_parser + • inspect + • start_cmd.py + +
+ +
+ +
+ + optparse +SourceModule
+imports: + gettext + • os + • sys + • textwrap + +
+
+imported by: + calendar + • start_cmd.py + • uu + +
+ +
+ +
+ + org +MissingModule
+imported by: + copy + • start_cmd.py + +
+ +
+ +
+ + os +SourceModule
+imports: + _collections_abc + • ce + • errno + • io + • nt + • ntpath + • posix + • posixpath + • posixpath + • stat + • subprocess + • sys + • warnings + +
+
+imported by: + argparse + • bdb + • ctypes + • doctest + • email.utils + • fnmatch + • ftplib + • genericpath + • getopt + • getpass + • gettext + • glob + • gzip + • http.client + • http.server + • imp + • inspect + • linecache + • locale + • logging + • mimetypes + • netrc + • ntpath + • optparse + • pdb + • pkgutil + • platform + • plistlib + • posixpath + • posixpath + • py_compile + • pydoc + • random + • shlex + • shutil + • socket + • socketserver + • ssl + • start_cmd.py + • subprocess + • tarfile + • tempfile + • unittest.loader + • unittest.main + • urllib.request + • uu + • webbrowser + • xml.sax + • xml.sax.saxutils + • zipfile + +
+ +
+ +
+ + pdb +SourceModule
+imports: + bdb + • cmd + • code + • dis + • getopt + • glob + • inspect + • linecache + • os + • pdb + • pprint + • pydoc + • re + • readline + • shlex + • signal + • sys + • traceback + +
+
+imported by: + doctest + • pdb + • start_cmd.py + +
+ +
+ +
+ + pickle +SourceModule
+imports: + 'org.python' + • _compat_pickle + • _pickle + • argparse + • codecs + • copyreg + • doctest + • io + • itertools + • pprint + • re + • struct + • sys + • types + +
+
+imported by: + collections.__main__ + • start_cmd.py + +
+ +
+ +
+ + pkgutil +SourceModule
+imports: + functools + • importlib + • importlib.machinery + • importlib.util + • inspect + • marshal + • os + • posixpath + • sys + • types + • warnings + • zipimport + +
+
+imported by: + pydoc + • start_cmd.py + +
+ +
+ +
+ + platform +SourceModule
+imports: + 'java.lang' + • _winreg + • collections + • ctypes + • ctypes.wintypes + • java + • os + • plistlib + • re + • socket + • struct + • subprocess + • sys + • vms_lib + • warnings + • winreg + +
+
+imported by: + pydoc + • start_cmd.py + +
+ +
+ +
+ + plistlib +SourceModule
+imports: + binascii + • codecs + • contextlib + • datetime + • enum + • io + • itertools + • os + • re + • struct + • warnings + • xml.parsers.expat + +
+
+imported by: + platform + • start_cmd.py + +
+ +
+ +
+ + posix (builtin module)
+imports: + resource + +
+
+imported by: + os + • start_cmd.py + +
+ +
+ +
+ + posixpath +AliasNode
+imports: + os + • posixpath + +
+
+imported by: + os + • pkgutil + • py_compile + • start_cmd.py + • unittest + • unittest.util + +
+ +
+ +
+ + posixpath +SourceModule
+imports: + genericpath + • os + • pwd + • re + • stat + • sys + +
+
+imported by: + fnmatch + • http.server + • mimetypes + • os + • posixpath + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + pprint +SourceModule
+imports: + collections + • io + • re + • sys + • time + • types + +
+
+imported by: + pdb + • pickle + • start_cmd.py + • unittest.case + +
+ +
+ +
+ + pwd (builtin module)
+imported by: + getpass + • http.server + • netrc + • posixpath + • shutil + • start_cmd.py + • tarfile + • webbrowser + +
+ +
+ +
+ + py_compile +SourceModule
+imports: + importlib._bootstrap_external + • importlib.machinery + • importlib.util + • os + • posixpath + • sys + • traceback + +
+
+imported by: + start_cmd.py + • zipfile + +
+ +
+ +
+ + pydoc +SourceModule
+imports: + builtins + • collections + • email.message + • getopt + • http.server + • importlib._bootstrap + • importlib._bootstrap_external + • importlib.machinery + • importlib.util + • inspect + • io + • os + • pkgutil + • platform + • pydoc_data.topics + • re + • reprlib + • select + • subprocess + • sys + • tempfile + • textwrap + • threading + • time + • tokenize + • traceback + • tty + • urllib.parse + • warnings + • webbrowser + +
+
+imported by: + pdb + • start_cmd.py + +
+ +
+ +
+ + pydoc_data +Package
+imported by: + pydoc_data.topics + • start_cmd.py + +
+ +
+ +
+ + pydoc_data.topics +SourceModule
+imports: + pydoc_data + +
+
+imported by: + pydoc + • start_cmd.py + +
+ +
+ +
+ + pyexpat (builtin module)
+imported by: + start_cmd.py + • xml.parsers.expat + +
+ +
+ +
+ + quopri +SourceModule
+imports: + binascii + • getopt + • io + • sys + +
+
+imported by: + email.encoders + • email.message + • encodings.quopri_codec + • start_cmd.py + +
+ +
+ +
+ + random +SourceModule
+imports: + _collections_abc + • _random + • hashlib + • math + • os + • time + • types + • warnings + +
+
+imported by: + email.generator + • email.utils + • start_cmd.py + • tempfile + +
+ +
+ +
+ + re +SourceModule
+imports: + _locale + • copyreg + • sre_compile + • sre_constants + • sre_parse + • sys + +
+
+imported by: + _sre + • _strptime + • argparse + • base64 + • difflib + • doctest + • email._encoded_words + • email._header_value_parser + • email.feedparser + • email.generator + • email.header + • email.message + • email.quoprimime + • email.utils + • encodings.idna + • fnmatch + • ftplib + • gettext + • glob + • html + • http.client + • http.cookiejar + • inspect + • keyword + • locale + • pdb + • pickle + • platform + • plistlib + • posixpath + • pprint + • pydoc + • shlex + • ssl + • start_cmd.py + • string + • tarfile + • textwrap + • token + • tokenize + • unittest.case + • unittest.loader + • urllib.parse + • urllib.request + • warnings + • zipfile + +
+ +
+ +
+ + readline /usr/lib/python3.5/lib-dynload/readline.cpython-35m-x86_64-linux-gnu.so
+imported by: + cmd + • code + • pdb + • start_cmd.py + +
+ +
+ +
+ + reprlib +SourceModule
+imports: + _dummy_thread + • _thread + • builtins + • itertools + +
+
+imported by: + bdb + • collections + • pydoc + • start_cmd.py + +
+ +
+ +
+ + resource /usr/lib/python3.5/lib-dynload/resource.cpython-35m-x86_64-linux-gnu.so
+imported by: + posix + • start_cmd.py + +
+ +
+ +
+ + select (builtin module)
+imported by: + http.server + • pydoc + • selectors + • start_cmd.py + • subprocess + +
+ +
+ +
+ + selectors +SourceModule
+imports: + abc + • collections + • math + • select + • sys + +
+
+imported by: + socket + • socketserver + • start_cmd.py + • subprocess + +
+ +
+ +
+ + shlex +SourceModule
+imports: + collections + • io + • os + • re + • sys + +
+
+imported by: + netrc + • pdb + • start_cmd.py + • webbrowser + +
+ +
+ +
+ + shutil +SourceModule
+imports: + bz2 + • collections + • errno + • fnmatch + • grp + • lzma + • nt + • os + • pwd + • stat + • sys + • tarfile + • zipfile + +
+
+imported by: + http.server + • start_cmd.py + • tarfile + • tempfile + • webbrowser + • zipfile + +
+ +
+ +
+ + signal +SourceModule
+imports: + _signal + • enum + • functools + +
+
+imported by: + pdb + • start_cmd.py + • subprocess + • unittest.signals + +
+ +
+ +
+ + socket +SourceModule
+imports: + _socket + • enum + • errno + • io + • os + • selectors + • sys + +
+
+imported by: + _ssl + • email.utils + • ftplib + • http.client + • http.server + • platform + • socketserver + • ssl + • start_cmd.py + • urllib.request + • webbrowser + +
+ +
+ +
+ + socketserver +SourceModule
+imports: + dummy_threading + • errno + • io + • os + • selectors + • socket + • threading + • time + • traceback + +
+
+imported by: + http.server + • start_cmd.py + +
+ +
+ +
+ + sre_compile +SourceModule
+imports: + _sre + • sre_constants + • sre_parse + +
+
+imported by: + re + • start_cmd.py + +
+ +
+ +
+ + sre_constants +SourceModule
+imports: + _sre + +
+
+imported by: + re + • sre_compile + • sre_parse + • start_cmd.py + +
+ +
+ +
+ + sre_parse +SourceModule
+imports: + sre_constants + • warnings + +
+
+imported by: + re + • sre_compile + • start_cmd.py + +
+ +
+ +
+ + ssl +SourceModule
+imports: + _ssl + • base64 + • calendar + • collections + • enum + • errno + • ipaddress + • os + • re + • socket + • sys + • textwrap + • time + • warnings + +
+
+imported by: + ftplib + • http.client + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + stat +SourceModule
+imports: + _stat + +
+
+imported by: + genericpath + • netrc + • ntpath + • os + • posixpath + • shutil + • start_cmd.py + • tarfile + • tempfile + • zipfile + +
+ +
+ +
+ + string +SourceModule
+imports: + _string + • collections + • re + • warnings + +
+
+imported by: + cmd + • email._encoded_words + • email._header_value_parser + • email.quoprimime + • logging + • ntpath + • nturl2path + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + stringprep +SourceModule
+imports: + unicodedata + +
+
+imported by: + encodings.idna + • start_cmd.py + +
+ +
+ +
+ + struct +SourceModule
+imports: + _struct + +
+
+imported by: + base64 + • ctypes + • gettext + • gzip + • pickle + • platform + • plistlib + • start_cmd.py + • tarfile + • zipfile + +
+ +
+ +
+ + subprocess +SourceModule
+imports: + _posixsubprocess + • _winapi + • builtins + • dummy_threading + • errno + • io + • msvcrt + • os + • select + • selectors + • signal + • sys + • threading + • time + • warnings + +
+
+imported by: + http.server + • os + • platform + • pydoc + • start_cmd.py + • webbrowser + +
+ +
+ +
+ + sys (builtin module)
+imported by: + _bootlocale + • _collections_abc + • argparse + • base64 + • bdb + • calendar + • cmd + • code + • codecs + • collections + • contextlib + • ctypes + • ctypes._endian + • dis + • doctest + • dummy_threading + • email.generator + • email.iterators + • encodings.rot_13 + • encodings.utf_16 + • encodings.utf_32 + • enum + • ftplib + • getopt + • getpass + • gettext + • gzip + • http.server + • imp + • importlib + • importlib.util + • inspect + • keyword + • linecache + • locale + • logging + • mimetypes + • ntpath + • optparse + • os + • pdb + • pickle + • pkgutil + • platform + • posixpath + • pprint + • py_compile + • pydoc + • quopri + • re + • selectors + • shlex + • shutil + • socket + • ssl + • start_cmd.py + • subprocess + • tarfile + • tempfile + • threading + • token + • tokenize + • traceback + • types + • unittest.case + • unittest.loader + • unittest.main + • unittest.result + • unittest.runner + • unittest.suite + • urllib.parse + • urllib.request + • uu + • warnings + • weakref + • webbrowser + • xml.parsers.expat + • xml.sax + • xml.sax._exceptions + • xml.sax.expatreader + • xml.sax.saxutils + • zipfile + +
+ +
+ +
+ + tarfile +SourceModule
+imports: + argparse + • builtins + • bz2 + • copy + • grp + • gzip + • io + • lzma + • os + • pwd + • re + • shutil + • stat + • struct + • sys + • time + • warnings + • zlib + +
+
+imported by: + shutil + • start_cmd.py + +
+ +
+ +
+ + tempfile +SourceModule
+imports: + _dummy_thread + • _thread + • errno + • functools + • io + • os + • random + • shutil + • stat + • sys + • warnings + • weakref + +
+
+imported by: + pydoc + • start_cmd.py + • urllib.request + • urllib.response + • webbrowser + +
+ +
+ +
+ + termios /usr/lib/python3.5/lib-dynload/termios.cpython-35m-x86_64-linux-gnu.so
+imported by: + getpass + • start_cmd.py + • tty + +
+ +
+ +
+ + textwrap +SourceModule
+imports: + re + +
+
+imported by: + argparse + • optparse + • pydoc + • ssl + • start_cmd.py + • zipfile + +
+ +
+ +
+ + threading +SourceModule
+imports: + _collections + • _thread + • _threading_local + • _weakrefset + • collections + • itertools + • sys + • time + • traceback + +
+
+imported by: + _threading_local + • bz2 + • dummy_threading + • http.cookiejar + • logging + • pydoc + • socketserver + • start_cmd.py + • subprocess + • zipfile + +
+ +
+ +
+ + time (builtin module)
+imports: + _strptime + +
+
+imported by: + _datetime + • _dummy_thread + • _strptime + • datetime + • email._parseaddr + • email.generator + • email.utils + • gc + • gzip + • http.cookiejar + • http.server + • logging + • pprint + • pydoc + • random + • socketserver + • ssl + • start_cmd.py + • subprocess + • tarfile + • threading + • unittest.runner + • urllib.request + • zipfile + +
+ +
+ +
+ + token +SourceModule
+imports: + re + • sys + +
+
+imported by: + gettext + • inspect + • start_cmd.py + • tokenize + +
+ +
+ +
+ + tokenize +SourceModule
+imports: + argparse + • builtins + • codecs + • collections + • io + • itertools + • re + • sys + • token + +
+
+imported by: + gettext + • imp + • importlib._bootstrap_external + • inspect + • linecache + • pydoc + • start_cmd.py + +
+ +
+ +
+ + traceback +SourceModule
+imports: + collections + • itertools + • linecache + • sys + +
+
+imported by: + _dummy_thread + • code + • doctest + • http.cookiejar + • logging + • pdb + • py_compile + • pydoc + • socketserver + • start_cmd.py + • threading + • unittest.case + • unittest.loader + • unittest.result + +
+ +
+ +
+ + tty +SourceModule
+imports: + termios + +
+
+imported by: + pydoc + • start_cmd.py + +
+ +
+ +
+ + types +SourceModule
+imports: + collections.abc + • functools + • sys + +
+
+imported by: + copy + • dis + • email.headerregistry + • enum + • functools + • imp + • importlib + • importlib.util + • inspect + • pickle + • pkgutil + • pprint + • random + • start_cmd.py + • unittest.loader + +
+ +
+ +
+ + unicodedata (builtin module)
+imported by: + encodings.idna + • start_cmd.py + • stringprep + +
+ +
+ +
+ + unittest +Package
+imports: + posixpath + • unittest + • unittest.case + • unittest.loader + • unittest.main + • unittest.result + • unittest.runner + • unittest.signals + • unittest.suite + • unittest.util + +
+
+imported by: + doctest + • start_cmd.py + • unittest + • unittest.case + • unittest.loader + • unittest.main + • unittest.result + • unittest.runner + • unittest.signals + • unittest.suite + • unittest.util + +
+ +
+ +
+ + unittest.case +SourceModule
+imports: + collections + • contextlib + • difflib + • functools + • logging + • pprint + • re + • sys + • traceback + • unittest + • unittest.result + • unittest.util + • warnings + +
+
+imported by: + start_cmd.py + • unittest + • unittest.loader + • unittest.suite + +
+ +
+ +
+ + unittest.loader +SourceModule
+imports: + fnmatch + • functools + • os + • re + • sys + • traceback + • types + • unittest + • unittest.case + • unittest.suite + • unittest.util + • warnings + +
+
+imported by: + start_cmd.py + • unittest + • unittest.main + +
+ +
+ +
+ + unittest.main +SourceModule
+imports: + argparse + • os + • sys + • unittest + • unittest.loader + • unittest.runner + • unittest.signals + +
+
+imported by: + start_cmd.py + • unittest + +
+ +
+ +
+ + unittest.result +SourceModule
+imports: + functools + • io + • sys + • traceback + • unittest + • unittest.util + +
+
+imported by: + start_cmd.py + • unittest + • unittest.case + • unittest.runner + +
+ +
+ +
+ + unittest.runner +SourceModule
+imports: + sys + • time + • unittest + • unittest.result + • unittest.signals + • warnings + +
+
+imported by: + start_cmd.py + • unittest + • unittest.main + +
+ +
+ +
+ + unittest.signals +SourceModule
+imports: + functools + • signal + • unittest + • weakref + +
+
+imported by: + start_cmd.py + • unittest + • unittest.main + • unittest.runner + +
+ +
+ +
+ + unittest.suite +SourceModule
+imports: + sys + • unittest + • unittest.case + • unittest.util + +
+
+imported by: + start_cmd.py + • unittest + • unittest.loader + +
+ +
+ +
+ + unittest.util +SourceModule
+imports: + collections + • posixpath + • unittest + +
+
+imported by: + start_cmd.py + • unittest + • unittest.case + • unittest.loader + • unittest.result + • unittest.suite + +
+ +
+ +
+ + urllib +Package
+imported by: + email._header_value_parser + • start_cmd.py + • urllib.error + • urllib.parse + • urllib.request + • urllib.response + +
+ +
+ +
+ + urllib.error +SourceModule
+imports: + urllib + • urllib.response + +
+
+imported by: + urllib.request + +
+ +
+ +
+ + urllib.parse +SourceModule
+imports: + collections + • re + • sys + • urllib + +
+
+imported by: + email.utils + • http.client + • http.cookiejar + • http.server + • mimetypes + • nturl2path + • pydoc + • start_cmd.py + • urllib.request + • xml.sax.saxutils + +
+ +
+ +
+ + urllib.request +SourceModule
+imports: + _scproxy + • base64 + • bisect + • collections + • contextlib + • email + • email.utils + • fnmatch + • ftplib + • getpass + • hashlib + • http.client + • http.cookiejar + • io + • mimetypes + • nturl2path + • os + • posixpath + • re + • socket + • ssl + • string + • sys + • tempfile + • time + • urllib + • urllib.error + • urllib.parse + • urllib.response + • warnings + • winreg + +
+
+imported by: + http.cookiejar + • xml.sax.saxutils + +
+ +
+ +
+ + urllib.response +SourceModule
+imports: + tempfile + • urllib + +
+
+imported by: + urllib.error + • urllib.request + +
+ +
+ +
+ + uu +SourceModule
+imports: + binascii + • optparse + • os + • sys + +
+
+imported by: + email.message + • start_cmd.py + +
+ +
+ +
+ + vms_lib +MissingModule
+imported by: + platform + • start_cmd.py + +
+ +
+ +
+ + warnings +SourceModule
+imports: + _warnings + • linecache + • re + • sys + +
+
+imported by: + base64 + • bz2 + • collections + • email.message + • ftplib + • getpass + • gzip + • http.cookiejar + • imp + • importlib + • importlib.util + • inspect + • logging + • ntpath + • os + • pkgutil + • platform + • plistlib + • pydoc + • random + • sre_parse + • ssl + • start_cmd.py + • string + • subprocess + • tarfile + • tempfile + • unittest.case + • unittest.loader + • unittest.runner + • urllib.request + • zipfile + +
+ +
+ +
+ + weakref +SourceModule
+imports: + _weakref + • _weakrefset + • atexit + • collections + • copy + • gc + • itertools + • sys + +
+
+imported by: + _threading_local + • copy + • functools + • logging + • start_cmd.py + • tempfile + • unittest.signals + • xml.sax.expatreader + +
+ +
+ +
+ + webbrowser +SourceModule
+imports: + copy + • getopt + • glob + • os + • pwd + • shlex + • shutil + • socket + • subprocess + • sys + • tempfile + +
+
+imported by: + pydoc + • start_cmd.py + +
+ +
+ +
+ + winreg +MissingModule
+imported by: + mimetypes + • platform + • start_cmd.py + • urllib.request + +
+ +
+ +
+ + xml +Package
+imports: + xml.sax.expatreader + • xml.sax.xmlreader + +
+
+imported by: + start_cmd.py + • xml.parsers + • xml.sax + +
+ +
+ +
+ + xml.parsers +Package
+imports: + xml + +
+
+imported by: + start_cmd.py + • xml.parsers.expat + • xml.sax.expatreader + +
+ +
+ +
+ + xml.parsers.expat +SourceModule
+imports: + pyexpat + • sys + • xml.parsers + +
+
+imported by: + plistlib + • start_cmd.py + • xml.sax.expatreader + +
+ +
+ +
+ + xml.sax +Package
+imports: + 'org.python' + • io + • os + • sys + • xml + • xml.sax + • xml.sax._exceptions + • xml.sax.expatreader + • xml.sax.handler + • xml.sax.saxutils + • xml.sax.xmlreader + +
+
+imported by: + xml.sax + • xml.sax._exceptions + • xml.sax.expatreader + • xml.sax.handler + • xml.sax.saxutils + • xml.sax.xmlreader + +
+ +
+ +
+ + xml.sax._exceptions +SourceModule
+imports: + 'java.lang' + • sys + • xml.sax + +
+
+imported by: + xml.sax + • xml.sax.expatreader + • xml.sax.xmlreader + +
+ +
+ +
+ + xml.sax.expatreader +SourceModule
+imports: + _weakref + • sys + • weakref + • xml.parsers + • xml.parsers.expat + • xml.sax + • xml.sax._exceptions + • xml.sax.handler + • xml.sax.saxutils + • xml.sax.xmlreader + +
+
+imported by: + xml + • xml.sax + +
+ +
+ +
+ + xml.sax.handler +SourceModule
+imports: + xml.sax + +
+
+imported by: + xml.sax + • xml.sax.expatreader + • xml.sax.saxutils + • xml.sax.xmlreader + +
+ +
+ +
+ + xml.sax.saxutils +SourceModule
+imports: + codecs + • io + • os + • sys + • urllib.parse + • urllib.request + • xml.sax + • xml.sax.handler + • xml.sax.xmlreader + +
+
+imported by: + xml.sax + • xml.sax.expatreader + • xml.sax.xmlreader + +
+ +
+ +
+ + xml.sax.xmlreader +SourceModule
+imports: + xml.sax + • xml.sax._exceptions + • xml.sax.handler + • xml.sax.saxutils + +
+
+imported by: + xml + • xml.sax + • xml.sax.expatreader + • xml.sax.saxutils + +
+ +
+ +
+ + zipfile +SourceModule
+imports: + binascii + • bz2 + • dummy_threading + • importlib.util + • io + • lzma + • os + • py_compile + • re + • shutil + • stat + • struct + • sys + • textwrap + • threading + • time + • warnings + • zlib + +
+
+imported by: + shutil + • start_cmd.py + +
+ +
+ +
+ + zipimport (builtin module)
+imports: + zlib + +
+
+imported by: + pkgutil + • start_cmd.py + +
+ +
+ +
+ + zlib (builtin module)
+imported by: + encodings.zlib_codec + • gzip + • start_cmd.py + • tarfile + • zipfile + • zipimport + +
+ +
+ + + diff --git a/contracts/Migrations.sol b/contracts/Migrations.sol new file mode 100755 index 0000000..7e7fe8d --- /dev/null +++ b/contracts/Migrations.sol @@ -0,0 +1,23 @@ +pragma solidity ^0.4.4; + +contract Migrations { + address public owner; + uint public last_completed_migration; + + modifier restricted() { + if (msg.sender == owner) _; + } + + function Migrations() { + owner = msg.sender; + } + + function setCompleted(uint completed) restricted { + last_completed_migration = completed; + } + + function upgrade(address new_address) restricted { + Migrations upgraded = Migrations(new_address); + upgraded.setCompleted(last_completed_migration); + } +} diff --git a/contracts/MyContract.sol b/contracts/MyContract.sol deleted file mode 100644 index 5382017..0000000 --- a/contracts/MyContract.sol +++ /dev/null @@ -1,9 +0,0 @@ -pragma solidity ^0.4.11; -import "./IexecOracleAPI.sol"; -contract MyContract is IexecOracleAPI{ - - function MyContract (address _iexecOracleAddress) IexecOracleAPI(_iexecOracleAddress){ - - } - -} \ No newline at end of file diff --git a/contracts/Tensorflow.sol b/contracts/Tensorflow.sol new file mode 100755 index 0000000..cc36042 --- /dev/null +++ b/contracts/Tensorflow.sol @@ -0,0 +1,12 @@ +pragma solidity ^0.4.11; +import "iexec-oracle-contract/contracts/IexecOracleAPI.sol"; +contract Tensorflow is IexecOracleAPI{ + + uint public constant DAPP_PRICE = 0; + string public constant DAPP_NAME = "Tensorflow"; + + function Tensorflow (address _iexecOracleAddress) IexecOracleAPI(_iexecOracleAddress,DAPP_PRICE,DAPP_NAME){ + + } + +} diff --git a/explanation/component.png b/explanation/component.png new file mode 100755 index 0000000..fc0efea Binary files /dev/null and b/explanation/component.png differ diff --git a/explanation/python/__pycache__/iexecsetting.cpython-35.pyc b/explanation/python/__pycache__/iexecsetting.cpython-35.pyc new file mode 100644 index 0000000..2c249c4 Binary files /dev/null and b/explanation/python/__pycache__/iexecsetting.cpython-35.pyc differ diff --git a/explanation/python/iexecsetting.py b/explanation/python/iexecsetting.py new file mode 100644 index 0000000..0b338ac --- /dev/null +++ b/explanation/python/iexecsetting.py @@ -0,0 +1,4 @@ +PS_HOST = "192.168.1.1:2222" +WORKER = "192.168.1.1:2222" +MODE = "ps" +INDEX= 0 diff --git a/explanation/python/task.py b/explanation/python/task.py new file mode 100755 index 0000000..7d4323a --- /dev/null +++ b/explanation/python/task.py @@ -0,0 +1,236 @@ +import tensorflow as tf +from tensorflow.examples.tutorials.mnist import input_data +import numpy as np +import time, json, os, logging +import sys +from iexecsetting import PS_HOST,WORKER,MODE,INDEX + +flags = tf.app.flags +FLAGS = flags.FLAGS +flags.DEFINE_integer('batch_size', 100, + 'Batch size. Must divide evenly into the dataset sizes.') +flags.DEFINE_integer('max_steps', 10000, 'Number of steps to run trainer.') +flags.DEFINE_integer('checkpoint', 100, 'Interval steps to save checkpoint.') +flags.DEFINE_string('log_dir', '/tmp/logs', + 'Directory to store checkpoints and summary logs') +flags.DEFINE_string('model_dir', '/tmp/model', + 'Directory to store trained model') + + +# Global flags +BATCH_SIZE = FLAGS.batch_size +MODEL_DIR = FLAGS.model_dir +LOG_DIR = FLAGS.log_dir +MAX_STEPS = FLAGS.max_steps +CHECKPOINT = FLAGS.checkpoint + + +def get_model(x, keep_prob, training=True): + num_filters1 = 32 + num_filters2 = 64 + + with tf.name_scope('cnn'): + with tf.name_scope('convolution1'): + x_image = tf.reshape(x, [-1,28,28,1]) + + W_conv1 = tf.Variable(tf.truncated_normal([5,5,1,num_filters1], + stddev=0.1)) + h_conv1 = tf.nn.conv2d(x_image, W_conv1, + strides=[1,1,1,1], padding='SAME') + + b_conv1 = tf.Variable(tf.constant(0.1, shape=[num_filters1])) + h_conv1_cutoff = tf.nn.relu(h_conv1 + b_conv1) + + h_pool1 = tf.nn.max_pool(h_conv1_cutoff, ksize=[1,2,2,1], + strides=[1,2,2,1], padding='SAME') + + with tf.name_scope('convolution2'): + W_conv2 = tf.Variable( + tf.truncated_normal([5,5,num_filters1,num_filters2], + stddev=0.1)) + h_conv2 = tf.nn.conv2d(h_pool1, W_conv2, + strides=[1,1,1,1], padding='SAME') + + b_conv2 = tf.Variable(tf.constant(0.1, shape=[num_filters2])) + h_conv2_cutoff = tf.nn.relu(h_conv2 + b_conv2) + + h_pool2 = tf.nn.max_pool(h_conv2_cutoff, ksize=[1,2,2,1], + strides=[1,2,2,1], padding='SAME') + + with tf.name_scope('fully-connected'): + h_pool2_flat = tf.reshape(h_pool2, [-1, 7*7*num_filters2]) + num_units1 = 7*7*num_filters2 + num_units2 = 1024 + w2 = tf.Variable(tf.truncated_normal([num_units1, num_units2])) + b2 = tf.Variable(tf.constant(0.1, shape=[num_units2])) + hidden2 = tf.nn.relu(tf.matmul(h_pool2_flat, w2) + b2) + + with tf.name_scope('output'): + if training: + hidden2_drop = tf.nn.dropout(hidden2, keep_prob) + else: + hidden2_drop = hidden2 + w0 = tf.Variable(tf.zeros([num_units2, 10])) + b0 = tf.Variable(tf.zeros([10])) + p = tf.nn.softmax(tf.matmul(hidden2_drop, w0) + b0) + + tf.summary.histogram("conv_filters1", W_conv1) + tf.summary.histogram("conv_filters2", W_conv2) + + return p + + +def get_trainer(p, t, global_step): + with tf.name_scope('optimizer'): + loss = -tf.reduce_sum(t * tf.log(p), name='loss') + train_step = tf.train.AdamOptimizer(0.0001).minimize(loss, global_step=global_step) + + with tf.name_scope('evaluator'): + correct_prediction = tf.equal(tf.argmax(p, 1), tf.argmax(t, 1)) + accuracy = tf.reduce_mean(tf.cast(correct_prediction, + tf.float32), name='accuracy') + + return train_step, loss, accuracy + +def export_model(last_checkpoint): + # create a session with a new graph. + with tf.Session(graph=tf.Graph()) as sess: + x = tf.placeholder(tf.float32, [None, 784]) + p = get_model(x, None, training=False) + + # Define key elements + input_key = tf.placeholder(tf.int64, [None,]) + output_key = tf.identity(input_key) + + # Define API inputs/outpus object + inputs = {'key': input_key.name, 'image': x.name} + outputs = {'key': output_key.name, 'scores': p.name} + tf.add_to_collection('inputs', json.dumps(inputs)) + tf.add_to_collection('outputs', json.dumps(outputs)) + + init_op = tf.global_variables_initializer() + sess.run(init_op) + + # Restore the latest checkpoint and save the model + saver = tf.train.Saver() + saver.restore(sess, last_checkpoint) + saver.export_meta_graph(filename=MODEL_DIR + '/export.meta') + saver.save(sess, MODEL_DIR + '/export', + write_meta_graph=False) + + +def run_training(): + # Get cluster and node info + #cluster_info = env.get('cluster', None) + cluster_info = {"ps": [PS_HOST], + "worker":[WORKER]} + + cluster_spec = tf.train.ClusterSpec(cluster_info) + task_info = {"type":MODE,"index":INDEX} + + job_name, task_index = task_info['type'], task_info['index'] + + device_fn = tf.train.replica_device_setter( + cluster=cluster_spec, + worker_device="/job:%s/task:%d" % (job_name, task_index) + ) + + logging.info('Start job:%s, index:%d' % (job_name, task_index)) + + # Create server + server = tf.train.Server(cluster_spec, + job_name=job_name, task_index=task_index) + + if job_name == "ps": # Parameter server + server.join() + + if job_name == "master" or job_name == "worker": # Worker node + is_chief = (job_name == "master") + + with tf.Graph().as_default() as graph: + with tf.device(device_fn): + + # Prepare training data + mnist_data = input_data.read_data_sets("/tmp/data/", one_hot=True) + + # Create placeholders + x = tf.placeholder_with_default( + tf.zeros([BATCH_SIZE, 784], tf.float32), shape=[None, 784]) + t = tf.placeholder_with_default( + tf.zeros([BATCH_SIZE, 10], tf.float32), shape=[None, 10]) + keep_prob = tf.placeholder_with_default( + tf.zeros([], tf.float32), shape=[]) + global_step = tf.Variable(0, trainable=False) + + # Add test loss and test accuracy to summary + test_loss = tf.placeholder_with_default( + tf.zeros([], tf.float32), shape=[]) + test_accuracy = tf.placeholder_with_default( + tf.zeros([], tf.float32), shape=[]) + tf.summary.scalar("Test_loss", test_loss) + tf.summary.scalar("Test_accuracy", test_accuracy) + + # Define a model + p = get_model(x, keep_prob, training=True) + train_step, loss, accuracy = get_trainer(p, t, global_step) + + init_op = tf.global_variables_initializer() + saver = tf.train.Saver() + summary = tf.summary.merge_all() + + # Create a supervisor + sv = tf.train.Supervisor(is_chief=is_chief, logdir=LOG_DIR, + init_op=init_op, saver=saver, summary_op=None, + global_step=global_step, save_model_secs=0) + + # Create a session and run training loops + with sv.managed_session(server.target) as sess: + reports, step = 0, 0 + start_time = time.time() + while not sv.should_stop() and step < MAX_STEPS: + images, labels = mnist_data.train.next_batch(BATCH_SIZE) + feed_dict = {x:images, t:labels, keep_prob:0.5} + _, loss_val, step = sess.run([train_step, loss, global_step], + feed_dict=feed_dict) + if step > CHECKPOINT * reports: + reports += 1 + logging.info("Step: %d, Train loss: %f" % (step, loss_val)) + if is_chief: + # Save checkpoint + sv.saver.save(sess, sv.save_path, global_step=step) + + # Evaluate the test loss and test accuracy + loss_vals, acc_vals = [], [] + for _ in range(len(mnist_data.test.labels) // BATCH_SIZE): + images, labels = mnist_data.test.next_batch(BATCH_SIZE) + feed_dict = {x:images, t:labels, keep_prob:1.0} + loss_val, acc_val = sess.run([loss, accuracy], + feed_dict=feed_dict) + loss_vals.append(loss_val) + acc_vals.append(acc_val) + loss_val, acc_val = np.sum(loss_vals), np.mean(acc_vals) + + # Save summary + feed_dict = {test_loss:loss_val, test_accuracy:acc_val} + sv.summary_computed(sess, + sess.run(summary, feed_dict=feed_dict), step) + sv.summary_writer.flush() + + logging.info("Time elapsed: %d" % (time.time() - start_time)) + logging.info("Step: %d, Test loss: %f, Test accuracy: %f" % + (step, loss_val, acc_val)) + + # Finish training + if is_chief: # Export the final model + sv.saver.save(sess, sv.save_path, global_step=sess.run(global_step)) + export_model(tf.train.latest_checkpoint(LOG_DIR)) + + sv.stop() + + +def main(_): + run_training() + +if __name__ == '__main__': + logging.basicConfig(level=logging.INFO) + tf.app.run() diff --git a/explanation/sequence.png b/explanation/sequence.png new file mode 100755 index 0000000..d57b9ce Binary files /dev/null and b/explanation/sequence.png differ diff --git a/iexec.js b/iexec.js index ddb3c67..d65ce16 100644 --- a/iexec.js +++ b/iexec.js @@ -1,6 +1,12 @@ module.exports = { - name: 'MyContract', - constructorArgs: ['0xb34406538112bd2b3036b2c417c7cff827777a11'], // oracle v0.1.2 ropsten - // constructorArgs: ['0x98275d4b6511ef05ed063d127dd82b72588326c9'], // oracle v0.1.2 rinkeby - // constructorArgs: ['0xb81d38d843cb526a3d0c3130d568fe09799135aa'], // oracle v0.1.2 kovan -}; \ No newline at end of file + name: 'Tensorflow', + data: { + type: 'BINARY', + cpu: 'AMD64', + os: 'LINUX', + }, + work: { + cmdline:'', + dirinuri:'', + } +}; diff --git a/migrations/1_initial_migration.js b/migrations/1_initial_migration.js new file mode 100755 index 0000000..8f32628 --- /dev/null +++ b/migrations/1_initial_migration.js @@ -0,0 +1,5 @@ +var Migrations = artifacts.require("./Migrations.sol"); + +module.exports = function(deployer) { + deployer.deploy(Migrations, {gas: 500000}); +}; diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..daa1bed --- /dev/null +++ b/package-lock.json @@ -0,0 +1,11 @@ +{ + "name": "iexec-dapp-init", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "iexec-oracle-contract": { + "version": "github:iExecBlockchainComputing/iexec-oracle-contract#64d31fa289acdd1a1f4a4c1d9426b9f610134a94" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..5d77a84 --- /dev/null +++ b/package.json @@ -0,0 +1,19 @@ +{ + "name": "iexec-dapp-tensorflow", + "version": "1.0.0", + "description": "This is the registry for sample iexec dapps, used by the iexec-sdk cli.", + "main": "iexec.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/iExecBlockchainComputing/iexec-dapp-samples.git" + }, + "author": "", + "license": "ISC", + "bugs": { + "url": "https://github.com/iExecBlockchainComputing/iexec-dapp-samples/issues" + }, + "homepage": "https://github.com/iExecBlockchainComputing/iexec-dapp-samples#readme" +} diff --git a/test/tensorflow.js b/test/tensorflow.js new file mode 100755 index 0000000..73df895 --- /dev/null +++ b/test/tensorflow.js @@ -0,0 +1,173 @@ +var IexecOracle = artifacts.require("./IexecOracle.sol"); +var IexecOracleEscrow = artifacts.require("./IexecOracleEscrow.sol"); +var Tensorflow = artifacts.require("./Tensorflow.sol"); +var RLC = artifacts.require("../node_modules/rlc-token//contracts/RLC.sol"); + +const Promise = require("bluebird"); +//extensions.js : credit to : https://github.com/coldice/dbh-b9lab-hackathon/blob/development/truffle/utils/extensions.js +const Extensions = require("../utils/extensions.js"); +const addEvmFunctions = require("../utils/evmFunctions.js"); +addEvmFunctions(web3); +Promise.promisifyAll(web3.eth, { + suffix: "Promise" +}); +Promise.promisifyAll(web3.version, { + suffix: "Promise" +}); +Promise.promisifyAll(web3.evm, { + suffix: "Promise" +}); +Extensions.init(web3, assert); + +contract('Tensorflow', function(accounts) { + + var dappProvider, dappUser, bridge, rlcCreator; + var amountGazProvided = 4000000; + let isTestRPC; + let testTimemout = 0; + let aRLCInstance; + let aIexecOracleEscrowInstance; + let aTensorflowInstance; + + IexecOracle.Status = { + UNSET: 0, + UNAVAILABLE: 1, + PENDING: 2, + RUNNING: 3, + COMPLETED: 4, + ERROR: 5 + }; + + before("should prepare accounts and check TestRPC Mode", function() { + assert.isAtLeast(accounts.length, 4, "should have at least 4 accounts"); + dappProvider = accounts[0]; + dappUser = accounts[1]; + bridge = accounts[2]; + rlcCreator = accounts[3]; + + return Extensions.makeSureAreUnlocked( + [dappProvider, dappUser, bridge, rlcCreator]) + .then(() => web3.eth.getBalancePromise(dappProvider)) + .then(balance => assert.isTrue( + web3.toWei(web3.toBigNumber(40), "ether").lessThan(balance), + "dappProvider should have at least 40 ether, not " + web3.fromWei(balance, "ether"))) + .then(() => Extensions.refillAccount(dappProvider, dappUser, 10)) + .then(() => Extensions.refillAccount(dappProvider, bridge, 10)) + .then(() => Extensions.refillAccount(dappProvider, rlcCreator, 10)) + .then(() => web3.version.getNodePromise()) + .then(node => isTestRPC = node.indexOf("EthereumJS TestRPC") >= 0) + .then(() => { + return RLC.new({ + from: rlcCreator, + gas: amountGazProvided + }); + }) + .then(instance => { + aRLCInstance = instance; + console.log("aRLCInstance.address is "); + console.log(aRLCInstance.address); + return aRLCInstance.unlock({ + from: rlcCreator, + gas: amountGazProvided + }); + }) + .then(txMined => { + assert.isBelow(txMined.receipt.gasUsed, amountGazProvided, "should not use all gas"); + return IexecOracleEscrow.new(aRLCInstance.address, { + from: bridge + }); + }) + .then(instance => { + aIexecOracleEscrowInstance = instance; + console.log("aIexecOracleEscrowInstance.address is "); + console.log(aIexecOracleEscrowInstance.address); + return IexecOracle.new(aIexecOracleEscrowInstance.address, 0, { + from: bridge + }); + }) + .then(instance => { + aIexecOracleInstance = instance; + console.log("aIexecOracleInstance.address is "); + console.log(aIexecOracleInstance.address); + return Tensorflow.new(aIexecOracleInstance.address, { + from: dappProvider + }); + }) + .then(instance => { + aTensorflowInstance = instance; + console.log("aTensorflowInstance.address is "); + console.log(aTensorflowInstance.address); + }); + }); + + it("Geth mode example : test only launch when geth is used", function() { + if (isTestRPC) this.skip("This test is only for geth"); + }); + + it("TestRPC mode example : test only launch when testrpc is used", function() { + if (!isTestRPC) this.skip("This test is only for TestRPC"); + }); + + + + it("Test iexecSubmit function", function() { + let previousBlockNumber; + let submitTxHash; + return Extensions.getCurrentBlockNumber() + .then(block => { + previousBlockNumber = block; + return aTensorflowInstance.iexecSubmit("{ \"cmdline\": \"-i small.mp4 small.avi\", \"dirinuri\": \"http://techslides.com/demos/sample-videos/small.mp4\" }", { + from: dappUser, + gas: amountGazProvided + }); + }) + .then(txMined => { + submitTxHash = txMined.tx; + assert.isBelow(txMined.receipt.gasUsed, amountGazProvided, "should not use all gas"); + return Extensions.getEventsPromise(aIexecOracleInstance.Submit({}, { + fromBlock: previousBlockNumber + })); + }) + .then(events => { + //check event Submit for off-chain computing is well triggered + //the Log is composed of : Submit(tx.origin, msg.sender,dappRegistry[msg.sender].provider, param); + assert.strictEqual(events[0].args.user, dappUser, "dapp user address is wrong"); + assert.strictEqual(events[0].args.dapp, aTensorflowInstance.address, "dapp address is wrong"); + assert.strictEqual(events[0].args.provider, dappProvider, "dappProvider address is wrong "); + assert.strictEqual(events[0].args.args, "{ \"cmdline\": \"-i small.mp4 small.avi\", \"dirinuri\": \"http://techslides.com/demos/sample-videos/small.mp4\" }", "submit task params"); + //simulate bridge callback after off-chain computation done + // function submitCallback(bytes32 submitTxHash, address user, address dapp, IexecLib.StatusEnum status, string stdout, string stderr, string uri) stopInEmergency public { + return aIexecOracleInstance.submitCallback(submitTxHash, dappUser, aTensorflowInstance.address, IexecOracle.Status.COMPLETED, "", "", "uri_with_the_result_to_download", { + from: bridge, + gas: amountGazProvided + }); + }) + .then(txMined => { + assert.isBelow(txMined.receipt.gasUsed, amountGazProvided, "should not use all gas"); + return Extensions.getEventsPromise(aIexecOracleInstance.SubmitCallback({}, { + fromBlock: previousBlockNumber + })); + }) + .then(events => { + //check event IexecSubmitCallback is well triggered in IexecOracle + // the Log is composed of : SubmitCallback(submitTxHash,user,stdout,uri); + assert.strictEqual(events[0].args.submitTxHash, submitTxHash, "submitTxHash is wrong"); + assert.strictEqual(events[0].args.user, dappUser, "dappUser address is wrong"); + assert.strictEqual(events[0].args.stdout, "", " "); + assert.strictEqual(events[0].args.uri, "uri_with_the_result_to_download", "uri_with_the_result_to_download"); + return Extensions.getEventsPromise(aTensorflowInstance.IexecSubmitCallback({}, { + fromBlock: previousBlockNumber + })); + }) + .then(events => { + //check event IexecSubmitCallback is well triggered in the dapp aTensorflowInstance + // the Log is composed of : IexecSubmitCallback(submitTxHash,user,stdout,uri); + assert.strictEqual(events[0].args.submitTxHash, submitTxHash, "submitTxHash is wrong"); + assert.strictEqual(events[0].args.user, dappUser, "dappUser address is wrong"); + assert.strictEqual(events[0].args.stdout, "", " "); + assert.strictEqual(events[0].args.uri, "uri_with_the_result_to_download", "uri_with_the_result_to_download"); + }); + }); + + +}); diff --git a/truffle.js b/truffle.js index 87b347c..0b6891f 100644 --- a/truffle.js +++ b/truffle.js @@ -1,31 +1,12 @@ module.exports = { - networks: { - development: { - host: "http://localhost:8545", - port: 8545, - network_id: "*" // Match any network id - }, - ropsten: { - host: "https://ropsten.infura.io/berv5GTB5cSdOJPPnqOq", - port: 8545, - network_id: "3", - iexecOracleAddress: "0xb34406538112bd2b3036b2c417c7cff827777a11", // oracle v0.1.2 ropsten - // gasPriceMultiplier: 2, // use factor 2 of the network estimated gasPrice - // gasLimitMultiplier: 4, // use factor 4 of the network estimated gasLimit - // gasPrice: 21000000000 // manually set the gasPrice in gwei. Prefer "gasPriceMultiplier" - // gas: 400000 // manually set the gas limit in gwei. Prefer "gasLimitMultiplier" - }, - rinkeby: { - host: "https://rinkeby.infura.io/berv5GTB5cSdOJPPnqOq", - port: 8545, - network_id: "4", - iexecOracleAddress: "0x98275d4b6511ef05ed063d127dd82b72588326c9",// oracle v0.1.2 rinkeby - }, - kovan: { - host: "https://kovan.infura.io/berv5GTB5cSdOJPPnqOq", - port: 8545, - network_id: "42", - iexecOracleAddress: "0xb81d38d843cb526a3d0c3130d568fe09799135aa",// oracle v0.1.2 kovan - }, + name: 'Tensorflow', + data: { + type: 'BINARY', + cpu: 'AMD64', + os: 'LINUX', + }, + work: { + cmdline:'-i small.mp4 small.avi', + dirinuri:'http://techslides.com/demos/sample-videos/small.mp4', } }; diff --git a/utils/evmFunctions.js b/utils/evmFunctions.js new file mode 100755 index 0000000..1d29c8f --- /dev/null +++ b/utils/evmFunctions.js @@ -0,0 +1,71 @@ +"use strict"; +//Credit to https://github.com/b9lab/play-with-time/blob/master/utils/evmFunctions.js +module.exports = function(web3) { + web3.evm = web3.evm ? web3.evm : {}; + + if (typeof web3.evm.snapshot === "undefined") { + /** + * @param {!function} callback - Node-type callback: error, hex number as string. + */ + web3.evm.snapshot = function(callback) { + web3.currentProvider.sendAsync( + { + jsonrpc: "2.0", + method: "evm_snapshot", + params: [], + id: new Date().getTime() + }, + (error, result) => callback(error, error ? result : result.result)); + }; + } + + if (typeof web3.evm.revert === "undefined") { + /** + * @param {!number} snapshotId. The snapshot to revert. + * @param {!function} callback - Node-type callback: error, boolean. + */ + web3.evm.revert = function(snapshotId, callback) { + web3.currentProvider.sendAsync( + { + jsonrpc: "2.0", + method: "evm_revert", + params: [ snapshotId ], + id: new Date().getTime() + }, + (error, result) => callback(error, error ? result : result.result)); + }; + } + + if (typeof web3.evm.increaseTime === "undefined") { + /** + * @param {!number} offset. Time in milliseconds by which to advance the EVM. + * @param {!function} callback - Node-type callback: error, cumulative increase since start. + */ + web3.evm.increaseTime = function(offset, callback) { + web3.currentProvider.sendAsync( + { + jsonrpc: "2.0", + method: "evm_increaseTime", + params: [ offset ], + id: new Date().getTime() + }, + (error, result) => callback(error, error ? result : result.result)); + }; + } + + if (typeof web3.evm.mine === "undefined") { + /** + * @param {!function} callback - Node-type callback: error only. + */ + web3.evm.mine = function(callback) { + web3.currentProvider.sendAsync( + { + jsonrpc: "2.0", + method: "evm_mine", + params: [], + id: new Date().getTime() + }, + (error, result) => callback(error, error ? result : result.result)); + }; + } +}; diff --git a/utils/extensions.js b/utils/extensions.js new file mode 100755 index 0000000..ba16285 --- /dev/null +++ b/utils/extensions.js @@ -0,0 +1,261 @@ +// credit to : https://github.com/coldice/dbh-b9lab-hackathon/blob/development/truffle/utils/extensions.js +var _ = require("lodash"); +module.exports = { + + init: function(web3, assert) { + // From https://gist.github.com/xavierlepretre/88682e871f4ad07be4534ae560692ee6 + web3.eth.getTransactionReceiptMined = function(txnHash, interval) { + var transactionReceiptAsync; + interval = interval ? interval : 500; + transactionReceiptAsync = function(txnHash, resolve, reject) { + try { + web3.eth.getTransactionReceiptPromise(txnHash) + .then(function(receipt) { + if (receipt == null) { + setTimeout(function() { + transactionReceiptAsync(txnHash, resolve, reject); + }, interval); + } else { + resolve(receipt); + } + }); + } catch (e) { + reject(e); + } + }; + + if (Array.isArray(txnHash)) { + var promises = []; + txnHash.forEach(function(oneTxHash) { + promises.push(web3.eth.getTransactionReceiptMined(oneTxHash, interval)); + }); + return Promise.all(promises); + } else { + return new Promise(function(resolve, reject) { + transactionReceiptAsync(txnHash, resolve, reject); + }); + } + }; + + assert.isTxHash = function(txnHash, message) { + assert(typeof txnHash === "string", + 'expected #{txnHash} to be a string', + 'expected #{txnHash} to not be a string'); + assert(txnHash.length === 66, + 'expected #{txnHash} to be a 66 character transaction hash (0x...)', + 'expected #{txnHash} to not be a 66 character transaction hash (0x...)'); + + // Convert txnHash to a number. Make sure it's not zero. + // Controversial: Technically there is that edge case where + // all zeroes could be a valid address. But: This catches all + // those cases where Ethereum returns 0x0000... if something fails. + var number = web3.toBigNumber(txnHash, 16); + assert(number.equals(0) === false, + 'expected address #{txnHash} to not be zero', + 'you shouldn\'t ever see this.'); + }; + }, + assertEvent: function(contract, filter) { + return new Promise((resolve, reject) => { + var event = contract[filter.event](); + event.watch(); + event.get((error, logs) => { + var log = _.filter(logs, filter); + if (log && log.length > 0) { + resolve(log); + } else { + throw Error("Failed to find filtered event for " + filter.event); + } + }); + event.stopWatching(); + }); + }, + // From https://gist.github.com/xavierlepretre/afab5a6ca65e0c52eaf902b50b807401 + getEventsPromise: function(myFilter, count, timeOut) { + timeOut = timeOut ? timeOut : 80000; + var promise = new Promise(function(resolve, reject) { + count = (typeof count !== "undefined") ? count : 1; + var results = []; + var toClear = setTimeout(function() { + myFilter.stopWatching(); + reject(new Error("Timed out")); + }, timeOut); + myFilter.watch(function(error, result) { + if (error) { + clearTimeout(toClear); + reject(error); + } else { + count--; + results.push(result); + } + if (count <= 0) { + clearTimeout(toClear); + myFilter.stopWatching(); + resolve(results); + } + }); + }); + if (count == 0) { + promise = promise + .then(function(events) { + throw "Expected to have no event"; + }) + .catch(function(error) { + if (error.message != "Timed out") { + throw error; + } + }); + } + return promise; + }, + + // From https://gist.github.com/xavierlepretre/d5583222fde52ddfbc58b7cfa0d2d0a9 + expectedExceptionPromise: function(action, gasToUse, timeOut) { + timeOut = timeOut ? timeOut : 5000; + var promise = new Promise(function(resolve, reject) { + try { + resolve(action()); + } catch (e) { + reject(e); + } + }) + .then(function(txObject) { + // We are in Geth + console.log("Geth mode : run out of gas. throw expected ?"); + assert.equal(txObject.receipt.gasUsed, gasToUse, "should have used all the gas"); + }) + .catch(function(e) { + if ((e + "").indexOf("invalid JUMP") > -1 || (e + "").indexOf("out of gas") > -1) { + // We are in TestRPC + console.log("TestRPC mode : invalid JUMP or out of gas detected") + } else if ((e + "").indexOf("please check your gas amount") > -1) { + // We are in Geth for a deployment + console.log("Geth mode : deployment in progress ...") + } else if ((e + "").indexOf("Error: VM Exception while processing transaction: invalid opcode") > -1) { + //see issue : https://github.com/trufflesuite/truffle/issues/498 + console.log("TestRPC mode : Error: VM Exception. throw expected ?"); + } else { + throw e; + } + }); + + return promise; + }, + waitPromise: function(timeOut, toPassOn) { + timeOut = timeOut ? timeOut : 1000; + return new Promise(function(resolve, reject) { + setTimeout(function() { + resolve(toPassOn); + }, timeOut); + }); + }, + signMessage: function(author, text) { + /* + * Sign a string and return (hash, v, r, s) used by ecrecover to regenerate the coinbase address; + */ + let sha = web3.sha3(text); + return web3.eth.signPromise(author, sha) + .then(signPromise => { + + sig = signPromise.substr(2, signPromise.length); + let r = '0x' + sig.substr(0, 64); + let s = '0x' + sig.substr(64, 64); + let v = web3.toDecimal(sig.substr(128, 2)) + 27; + return { + sha, + v, + r, + s + }; + }); + }, + makeSureAreUnlocked: function(accounts) { + var requests = []; + accounts.forEach(function(account, index) { + requests.push(web3.eth.signPromise( + account, + "0x0000000000000000000000000000000000000000000000000000000000000000") + .catch(function(error) { + if (error.message == "account is locked") { + throw Error("account " + account + " at index " + index + " is locked"); + } else { + throw error; + } + })); + }); + return Promise.all(requests); + }, + gasTxUsedCost: function(txMined) { + var gasUsed = txMined.receipt.gasUsed; + return web3.eth.getTransactionPromise(txMined.tx) + .then(tx => (tx.gasPrice * gasUsed)); + }, + getCurrentBlockTime: function() { + return web3.eth.getBlockNumberPromise() + .then(blockNumber => web3.eth.getBlockPromise(blockNumber)) + .then(block => block.timestamp); + }, + getCurrentBlockNumber: function() { + return web3.eth.getBlockNumberPromise() + .then(blockNumber => blockNumber); + }, + sleep: function(time) { + console.log("wait " + time + " burning cpu") + var d1 = new Date(); + var d2 = new Date(); + while (d2.valueOf() < d1.valueOf() + time) { + d2 = new Date(); + } + }, + iexecOperationId: function(user,provider,id) { + let providerWithout0x = web3.toHex(provider).replace('0x', ''); + let idWithout0x = web3.toHex(id).replace('0x', ''); + return web3.sha3(user + providerWithout0x + idWithout0x, { + encoding: 'hex' + }); + }, + refillAccount: function(giver, receiver, minimalEtherNeeded) { + return web3.eth.getBalancePromise(receiver) + .then(balance => { + if (balance.lessThan(web3.toWei(web3.toBigNumber(minimalEtherNeeded), "ether"))) { + return web3.eth.sendTransactionPromise({ + from: giver, + to: receiver, + value: web3.toWei(web3.toBigNumber(minimalEtherNeeded), "ether") + }); + } + }) + .then(txSent => { + if (txSent) { + return web3.eth.getTransactionReceiptMined(txSent); + } + }) + .then(txMined => { + if (txMined) { + console.log("refill " + web3.toBigNumber(minimalEtherNeeded) + " ether to " + receiver); + } + }); + }, + isAddress: function(address) { + if (!/^(0x)?[0-9a-f]{40}$/i.test(address)) { + // check if it has the basic requirements of an address + return false; + } else if (/^(0x)?[0-9a-f]{40}$/.test(address) || /^(0x)?[0-9A-F]{40}$/.test(address)) { + // If it's all small caps or all all caps, return true + return true; + } else { + // Otherwise check each case + address = address.replace('0x', ''); + var addressHash = web3.sha3(address.toLowerCase()); + + for (var i = 0; i < 40; i++) { + // the nth letter should be uppercase if the nth digit of casemap is 1 + if ((parseInt(addressHash[i], 16) > 8 && address[i].toUpperCase() != address[i]) || (parseInt(addressHash[i], 16) <= 8 && address[i].toLowerCase() != address[i])) { + return false; + } + } + return true; + } + } + +};