cairo-lang 0.10.3__zip → 0.11.0__zip

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (534) hide show
  1. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/PKG-INFO +3 -3
  2. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/README.md +2 -2
  3. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/cairo_lang.egg-info/PKG-INFO +3 -3
  4. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/cairo_lang.egg-info/SOURCES.txt +79 -3
  5. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/cairo_lang.egg-info/requires.txt +3 -3
  6. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/requirements.txt +3 -3
  7. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/api/feeder_gateway/feeder_gateway_client.py +8 -2
  8. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/api/gateway/gateway_client.py +2 -2
  9. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/api/gateway/transaction.py +15 -1
  10. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/business_logic/internal_transaction.py +14 -7
  11. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/business_logic/state.py +4 -0
  12. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/definitions/fields.py +6 -2
  13. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/external_api/client.py +143 -8
  14. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/external_api/has_uri_prefix.py +6 -2
  15. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/setup.py +8 -0
  16. cairo-lang-0.11.0/starkware/cairo/common/builtin_keccak/keccak.cairo +364 -0
  17. cairo-lang-0.11.0/starkware/cairo/common/builtin_poseidon/poseidon.cairo +102 -0
  18. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_builtins.cairo +7 -0
  19. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_function_runner.py +21 -3
  20. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_keccak/keccak.cairo +26 -106
  21. cairo-lang-0.11.0/starkware/cairo/common/cairo_keccak/keccak_utils.py +1 -0
  22. cairo-lang-0.11.0/starkware/cairo/common/cairo_secp/secp256r1_utils.py +3 -0
  23. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_secp/signature.cairo +2 -2
  24. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/dict.py +2 -2
  25. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/hash_state.cairo +20 -8
  26. cairo-lang-0.11.0/starkware/cairo/common/hash_state_poseidon.cairo +54 -0
  27. cairo-lang-0.11.0/starkware/cairo/common/keccak_utils/keccak_utils.cairo +77 -0
  28. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/patricia.cairo +10 -23
  29. cairo-lang-0.11.0/starkware/cairo/common/patricia_utils.cairo +23 -0
  30. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/patricia_utils.py +17 -10
  31. cairo-lang-0.11.0/starkware/cairo/common/patricia_with_poseidon.cairo +34 -0
  32. cairo-lang-0.11.0/starkware/cairo/common/patricia_with_sponge.cairo +543 -0
  33. cairo-lang-0.11.0/starkware/cairo/common/poseidon_hash.py +73 -0
  34. cairo-lang-0.11.0/starkware/cairo/common/poseidon_state.cairo +6 -0
  35. cairo-lang-0.11.0/starkware/cairo/common/poseidon_utils.py +113 -0
  36. cairo-lang-0.11.0/starkware/cairo/common/sponge_as_hash.cairo +33 -0
  37. cairo-lang-0.11.0/starkware/cairo/lang/VERSION +1 -0
  38. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/all_builtins.py +2 -0
  39. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/bitwise/instance_def.py +3 -1
  40. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/ec/ec_op_builtin_runner.py +9 -3
  41. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/ec/instance_def.py +2 -1
  42. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/hash/instance_def.py +2 -1
  43. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/keccak/instance_def.py +3 -2
  44. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/keccak/keccak_builtin_runner.py +10 -9
  45. cairo-lang-0.11.0/starkware/cairo/lang/builtins/poseidon/instance_def.py +22 -0
  46. cairo-lang-0.11.0/starkware/cairo/lang/builtins/poseidon/poseidon_builtin_runner.py +75 -0
  47. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/range_check/instance_def.py +3 -1
  48. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/signature/instance_def.py +3 -1
  49. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/signature/signature_builtin_runner.py +1 -1
  50. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/const_expr_checker.py +4 -0
  51. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/preprocessor.py +2 -2
  52. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/type_casts.py +1 -1
  53. cairo-lang-0.11.0/starkware/cairo/lang/dynamic_layout_params.py +16 -0
  54. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/instances.py +165 -16
  55. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/tracer.py +1 -1
  56. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/air_public_input.py +2 -1
  57. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/builtin_runner.py +12 -6
  58. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/cairo_run.py +14 -15
  59. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/cairo_runner.py +72 -38
  60. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/crypto.py +7 -0
  61. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/memory_segments.py +2 -3
  62. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/security.py +11 -3
  63. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/utils.py +1 -1
  64. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/vm_consts.py +26 -7
  65. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/sharp/config.json +1 -1
  66. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/sharp/sharp_client.py +1 -1
  67. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/crypto/signature/signature.py +50 -10
  68. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/eth/eth_test_utils.py +51 -14
  69. cairo-lang-0.11.0/starkware/python/fixed_point.py +121 -0
  70. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/python/math_utils.py +13 -1
  71. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/python/utils.py +41 -16
  72. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/python/utils_stub_module.py +2 -1
  73. cairo-lang-0.11.0/starkware/starknet/builtins/segment_arena/segment_arena_builtin_runner.py +39 -0
  74. cairo-lang-0.11.0/starkware/starknet/business_logic/execution/execute_entry_point.py +594 -0
  75. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/execution/execute_entry_point_base.py +12 -11
  76. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/execution/gas_usage.py +8 -8
  77. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/execution/objects.py +99 -8
  78. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/execution/os_resources.json +36 -31
  79. cairo-lang-0.11.0/starkware/starknet/business_logic/fact_state/contract_class_objects.py +110 -0
  80. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/fact_state/contract_state_objects.py +14 -34
  81. cairo-lang-0.11.0/starkware/starknet/business_logic/fact_state/patricia_state.py +142 -0
  82. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/fact_state/state.py +141 -40
  83. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/state/state.py +190 -103
  84. cairo-lang-0.11.0/starkware/starknet/business_logic/state/state_api.py +232 -0
  85. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/state/state_api_objects.py +1 -1
  86. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/transaction/fee.py +4 -2
  87. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/transaction/objects.py +339 -157
  88. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/transaction/state_objects.py +26 -6
  89. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/utils.py +77 -33
  90. cairo-lang-0.11.0/starkware/starknet/cli/class_hash.py +56 -0
  91. cairo-lang-0.10.3/starkware/starknet/cli/class_hash.py → cairo-lang-0.11.0/starkware/starknet/cli/compiled_class_hash.py +12 -7
  92. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/cli/starknet_cli.py +252 -370
  93. cairo-lang-0.11.0/starkware/starknet/cli/starknet_cli_utils.py +620 -0
  94. cairo-lang-0.11.0/starkware/starknet/common/new_syscalls.cairo +163 -0
  95. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/common/storage.cairo +2 -2
  96. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/common/syscalls.cairo +19 -0
  97. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/compile.py +19 -15
  98. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/data_encoder.py +0 -1
  99. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/external_wrapper.py +1 -1
  100. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/starknet_preprocessor.py +1 -1
  101. cairo-lang-0.11.0/starkware/starknet/compiler/v1/bin/starknet-compile +0 -0
  102. cairo-lang-0.11.0/starkware/starknet/compiler/v1/bin/starknet-sierra-compile +0 -0
  103. cairo-lang-0.11.0/starkware/starknet/compiler/v1/compile.py +139 -0
  104. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/array.cairo +139 -0
  105. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/box.cairo +25 -0
  106. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/clone.cairo +9 -0
  107. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/debug.cairo +85 -0
  108. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/dict.cairo +38 -0
  109. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/ec.cairo +157 -0
  110. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/ecdsa.cairo +102 -0
  111. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/gas.cairo +9 -0
  112. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/hash.cairo +125 -0
  113. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/integer.cairo +1072 -0
  114. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/internal.cairo +1 -0
  115. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/lib.cairo +451 -0
  116. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/nullable.cairo +14 -0
  117. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/option.cairo +47 -0
  118. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/result.cairo +63 -0
  119. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/serde.cairo +231 -0
  120. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/starknet/class_hash.cairo +59 -0
  121. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/starknet/contract_address.cairo +59 -0
  122. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/starknet/info.cairo +63 -0
  123. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/starknet/storage_access.cairo +218 -0
  124. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/starknet/syscalls.cairo +79 -0
  125. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/starknet/testing.cairo +7 -0
  126. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/starknet.cairo +81 -0
  127. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/test.cairo +914 -0
  128. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/testing.cairo +1 -0
  129. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/traits.cairo +87 -0
  130. cairo-lang-0.11.0/starkware/starknet/compiler/v1/corelib/src/zeroable.cairo +24 -0
  131. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/core/os/block_hash/block_hash.py +1 -0
  132. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/core/os/contract_address/contract_address.py +8 -4
  133. cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/class_hash.py +41 -0
  134. cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/class_hash_utils.py +117 -0
  135. cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/compiled_class.cairo +253 -0
  136. cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/compiled_class_hash.py +43 -0
  137. cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/compiled_class_hash_utils.py +113 -0
  138. cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/contract_class.cairo +83 -0
  139. cairo-lang-0.10.3/starkware/starknet/core/os/class_hash.py → cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/deprecated_class_hash.py +43 -48
  140. cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/deprecated_compiled_class.cairo +230 -0
  141. cairo-lang-0.11.0/starkware/starknet/core/os/contract_class/utils.py +33 -0
  142. cairo-lang-0.11.0/starkware/starknet/core/os/os_utils.py +149 -0
  143. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/core/os/segment_utils.py +2 -2
  144. cairo-lang-0.11.0/starkware/starknet/core/os/starknet_new_syscalls.json +409 -0
  145. cairo-lang-0.11.0/starkware/starknet/core/os/starknet_os_compiled.json +297492 -0
  146. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/core/os/starknet_syscalls.json +339 -2
  147. cairo-lang-0.11.0/starkware/starknet/core/os/syscall_handler.py +1620 -0
  148. cairo-lang-0.11.0/starkware/starknet/core/os/syscall_utils.py +230 -0
  149. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/core/os/transaction_hash/transaction_hash.py +39 -3
  150. cairo-lang-0.11.0/starkware/starknet/core/test_contract/delegate_proxy.json +6951 -0
  151. cairo-lang-0.11.0/starkware/starknet/core/test_contract/dummy_account.json +8747 -0
  152. cairo-lang-0.11.0/starkware/starknet/core/test_contract/test_utils.py +42 -0
  153. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/definitions/constants.py +64 -4
  154. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/definitions/error_codes.py +32 -1
  155. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/definitions/fields.py +138 -22
  156. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/definitions/general_config.py +21 -5
  157. cairo-lang-0.11.0/starkware/starknet/definitions/general_config.yml +16 -0
  158. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/definitions/transaction_type.py +2 -0
  159. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/public/abi.py +1 -1
  160. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/cairo_secp.json +134 -0
  161. cairo-lang-0.11.0/starkware/starknet/security/whitelists/latest.json +960 -0
  162. cairo-lang-0.11.0/starkware/starknet/services/api/contract_class/contract_class.py +327 -0
  163. cairo-lang-0.11.0/starkware/starknet/services/api/contract_class/contract_class_utils.py +64 -0
  164. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/services/api/feeder_gateway/feeder_gateway_client.py +72 -13
  165. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/services/api/feeder_gateway/request_objects.py +3 -5
  166. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/services/api/feeder_gateway/response_objects.py +71 -20
  167. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/services/api/gateway/transaction.py +99 -49
  168. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/services/api/gateway/transaction_utils.py +24 -12
  169. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/services/utils/sequencer_api_utils.py +54 -11
  170. cairo-lang-0.11.0/starkware/starknet/storage/starknet_storage.py +116 -0
  171. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/testing/MockStarknetMessaging.json +15 -14
  172. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/testing/contract.py +9 -97
  173. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/testing/contract_utils.py +127 -11
  174. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/testing/starknet.py +91 -15
  175. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/testing/state.py +14 -10
  176. cairo-lang-0.11.0/starkware/starknet/testing/test_utils.py +94 -0
  177. cairo-lang-0.11.0/starkware/starknet/third_party/__init__.py +1 -0
  178. cairo-lang-0.11.0/starkware/starknet/third_party/open_zeppelin/__init__.py +1 -0
  179. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/third_party/open_zeppelin/account.json +465 -408
  180. cairo-lang-0.11.0/starkware/starknet/third_party/open_zeppelin/starknet_contracts.py +9 -0
  181. cairo-lang-0.11.0/starkware/starknet/utils/__init__.py +1 -0
  182. cairo-lang-0.11.0/starkware/starknet/wallets/__init__.py +1 -0
  183. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/wallets/account.py +21 -1
  184. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/wallets/open_zeppelin.py +66 -5
  185. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/wallets/starknet_context.py +1 -1
  186. cairo-lang-0.11.0/starkware/starkware_utils/__init__.py +1 -0
  187. cairo-lang-0.11.0/starkware/starkware_utils/commitment_tree/__init__.py +1 -0
  188. cairo-lang-0.11.0/starkware/starkware_utils/commitment_tree/leaf_fact_utils.py +59 -0
  189. cairo-lang-0.11.0/starkware/starkware_utils/commitment_tree/merkle_tree/__init__.py +1 -0
  190. cairo-lang-0.11.0/starkware/starkware_utils/commitment_tree/patricia_tree/__init__.py +1 -0
  191. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/error_handling.py +9 -1
  192. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/field_validators.py +49 -8
  193. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/marshmallow_dataclass_fields.py +47 -6
  194. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/marshmallow_fields_metadata.py +7 -7
  195. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/validated_dataclass.py +2 -2
  196. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/validated_fields.py +83 -53
  197. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/storage/gated_storage.py +5 -1
  198. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/storage/storage.py +12 -2
  199. cairo-lang-0.10.3/starkware/cairo/lang/VERSION +0 -1
  200. cairo-lang-0.10.3/starkware/starknet/business_logic/execution/execute_entry_point.py +0 -368
  201. cairo-lang-0.10.3/starkware/starknet/business_logic/fact_state/patricia_state.py +0 -90
  202. cairo-lang-0.10.3/starkware/starknet/business_logic/state/state_api.py +0 -149
  203. cairo-lang-0.10.3/starkware/starknet/core/os/contracts.cairo +0 -224
  204. cairo-lang-0.10.3/starkware/starknet/core/os/os_utils.py +0 -89
  205. cairo-lang-0.10.3/starkware/starknet/core/os/starknet_os_compiled.json +0 -162488
  206. cairo-lang-0.10.3/starkware/starknet/core/os/syscall_utils.py +0 -1095
  207. cairo-lang-0.10.3/starkware/starknet/definitions/general_config.yml +0 -14
  208. cairo-lang-0.10.3/starkware/starknet/services/api/contract_class.py +0 -103
  209. cairo-lang-0.10.3/starkware/starknet/storage/starknet_storage.py +0 -397
  210. cairo-lang-0.10.3/starkware/starknet/third_party/open_zeppelin/starknet_contracts.py +0 -7
  211. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/MANIFEST.in +0 -0
  212. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/cairo_lang.egg-info/dependency_links.txt +0 -0
  213. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/cairo_lang.egg-info/top_level.txt +0 -0
  214. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/__init__.py +0 -0
  215. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/__init__.py +0 -0
  216. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/api/__init__.py +0 -0
  217. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/api/feeder_gateway/__init__.py +0 -0
  218. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/api/feeder_gateway/response_objects.py +0 -0
  219. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/api/gateway/__init__.py +0 -0
  220. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/api/gateway/transaction_type.py +0 -0
  221. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/business_logic/__init__.py +0 -0
  222. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/business_logic/state_api.py +0 -0
  223. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/business_logic/transaction_execution_objects.py +0 -0
  224. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/definitions/__init__.py +0 -0
  225. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/definitions/constants.py +0 -0
  226. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/everest/definitions/general_config.py +0 -0
  227. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/external_api/__init__.py +0 -0
  228. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/external_api/eth_gas_constants.py +0 -0
  229. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/services/external_api/utils.py +0 -0
  230. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/setup.cfg +0 -0
  231. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/__init__.py +0 -0
  232. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/__init__.py +0 -0
  233. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/bootloaders/__init__.py +0 -0
  234. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/bootloaders/compute_fact.py +0 -0
  235. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/bootloaders/fact_topology.py +0 -0
  236. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/bootloaders/generate_fact.py +0 -0
  237. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/bootloaders/hash_program.py +0 -0
  238. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/bootloaders/program_hash_test_utils.py +0 -0
  239. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/__init__.py +0 -0
  240. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/alloc.cairo +0 -0
  241. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/bitwise.cairo +0 -0
  242. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/bool.cairo +0 -0
  243. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_blake2s/__init__.py +0 -0
  244. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_blake2s/blake2s.cairo +0 -0
  245. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_blake2s/blake2s_utils.py +0 -0
  246. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_blake2s/packed_blake2s.cairo +0 -0
  247. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_keccak/__init__.py +0 -0
  248. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_keccak/packed_keccak.cairo +0 -0
  249. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_secp/__init__.py +0 -0
  250. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_secp/bigint.cairo +0 -0
  251. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_secp/constants.cairo +0 -0
  252. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_secp/ec.cairo +0 -0
  253. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_secp/field.cairo +0 -0
  254. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_secp/secp_utils.py +0 -0
  255. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_sha256/__init__.py +0 -0
  256. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/cairo_sha256/sha256_utils.py +0 -0
  257. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/default_dict.cairo +0 -0
  258. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/dict.cairo +0 -0
  259. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/dict_access.cairo +0 -0
  260. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/ec.cairo +0 -0
  261. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/ec_point.cairo +0 -0
  262. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/find_element.cairo +0 -0
  263. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/hash.cairo +0 -0
  264. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/hash_chain.cairo +0 -0
  265. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/hash_chain.py +0 -0
  266. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/hash_state.py +0 -0
  267. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/invoke.cairo +0 -0
  268. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/keccak.cairo +0 -0
  269. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/keccak_state.cairo +0 -0
  270. {cairo-lang-0.10.3/starkware/cairo/lang → cairo-lang-0.11.0/starkware/cairo/common/keccak_utils}/__init__.py +0 -0
  271. {cairo-lang-0.10.3/starkware/cairo/common/cairo_keccak → cairo-lang-0.11.0/starkware/cairo/common/keccak_utils}/keccak_utils.py +0 -0
  272. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/math.cairo +0 -0
  273. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/math_cmp.cairo +0 -0
  274. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/math_utils.py +0 -0
  275. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/memcpy.cairo +0 -0
  276. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/memset.cairo +0 -0
  277. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/merkle_multi_update.cairo +0 -0
  278. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/merkle_update.cairo +0 -0
  279. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/pow.cairo +0 -0
  280. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/registers.cairo +0 -0
  281. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/segments.cairo +0 -0
  282. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/serialize.cairo +0 -0
  283. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/set.cairo +0 -0
  284. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/signature.cairo +0 -0
  285. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/small_merkle_tree.cairo +0 -0
  286. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/small_merkle_tree.py +0 -0
  287. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/squash_dict.cairo +0 -0
  288. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/structs.py +0 -0
  289. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/uint256.cairo +0 -0
  290. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/common/usort.cairo +0 -0
  291. {cairo-lang-0.10.3/starkware/cairo/lang/builtins → cairo-lang-0.11.0/starkware/cairo/lang}/__init__.py +0 -0
  292. {cairo-lang-0.10.3/starkware/cairo/lang/builtins/bitwise → cairo-lang-0.11.0/starkware/cairo/lang/builtins}/__init__.py +0 -0
  293. {cairo-lang-0.10.3/starkware/cairo/lang/builtins/ec → cairo-lang-0.11.0/starkware/cairo/lang/builtins/bitwise}/__init__.py +0 -0
  294. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/bitwise/bitwise_builtin_runner.py +0 -0
  295. {cairo-lang-0.10.3/starkware/cairo/lang/builtins/hash → cairo-lang-0.11.0/starkware/cairo/lang/builtins/ec}/__init__.py +0 -0
  296. {cairo-lang-0.10.3/starkware/cairo/lang/builtins/keccak → cairo-lang-0.11.0/starkware/cairo/lang/builtins/hash}/__init__.py +0 -0
  297. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/hash/hash_builtin_runner.py +0 -0
  298. {cairo-lang-0.10.3/starkware/cairo/lang/builtins/range_check → cairo-lang-0.11.0/starkware/cairo/lang/builtins/keccak}/__init__.py +0 -0
  299. {cairo-lang-0.10.3/starkware/cairo/lang/builtins/signature → cairo-lang-0.11.0/starkware/cairo/lang/builtins/poseidon}/__init__.py +0 -0
  300. {cairo-lang-0.10.3/starkware/cairo/lang/migrators → cairo-lang-0.11.0/starkware/cairo/lang/builtins/range_check}/__init__.py +0 -0
  301. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/builtins/range_check/range_check_builtin_runner.py +0 -0
  302. {cairo-lang-0.10.3/starkware/cairo/lang/tracer → cairo-lang-0.11.0/starkware/cairo/lang/builtins/signature}/__init__.py +0 -0
  303. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/cairo_constants.py +0 -0
  304. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/__init__.py +0 -0
  305. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/assembler.py +0 -0
  306. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/__init__.py +0 -0
  307. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/aliased_identifier.py +0 -0
  308. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/arguments.py +0 -0
  309. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/ast_objects_test_utils.py +0 -0
  310. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/bool_expr.py +0 -0
  311. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/cairo_types.py +0 -0
  312. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/code_elements.py +0 -0
  313. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/expr.py +0 -0
  314. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/expr_func_call.py +0 -0
  315. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/formatting_utils.py +0 -0
  316. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/instructions.py +0 -0
  317. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/module.py +0 -0
  318. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/node.py +0 -0
  319. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/notes.py +0 -0
  320. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/parentheses_expr_wrapper.py +0 -0
  321. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/particle.py +0 -0
  322. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/rvalue.py +0 -0
  323. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/types.py +0 -0
  324. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/ast/visitor.py +0 -0
  325. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/cairo.ebnf +0 -0
  326. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/cairo_compile.py +0 -0
  327. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/cairo_format.py +0 -0
  328. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/constants.py +0 -0
  329. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/debug_info.py +0 -0
  330. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/encode.py +0 -0
  331. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/error_handling.py +0 -0
  332. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/expression_evaluator.py +0 -0
  333. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/expression_simplifier.py +0 -0
  334. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/expression_transformer.py +0 -0
  335. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/fields.py +0 -0
  336. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/filter_unused_identifiers.py +0 -0
  337. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/identifier_definition.py +0 -0
  338. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/identifier_manager.py +0 -0
  339. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/identifier_manager_field.py +0 -0
  340. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/identifier_utils.py +0 -0
  341. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/import_loader.py +0 -0
  342. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/injector.py +0 -0
  343. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/instruction.py +0 -0
  344. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/instruction_builder.py +0 -0
  345. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/lib/registers.cairo +0 -0
  346. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/location_utils.py +0 -0
  347. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/module_reader.py +0 -0
  348. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/offset_reference.py +0 -0
  349. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/parser.py +0 -0
  350. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/parser_transformer.py +0 -0
  351. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/__init__.py +0 -0
  352. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/auxiliary_info_collector.py +0 -0
  353. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/bool_expr/__init__.py +0 -0
  354. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/bool_expr/errors.py +0 -0
  355. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/bool_expr/lowering.py +0 -0
  356. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/bool_expr/lowering_test_utils.py +0 -0
  357. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/compound_expressions.py +0 -0
  358. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/default_pass_manager.py +0 -0
  359. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/dependency_graph.py +0 -0
  360. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/directives.py +0 -0
  361. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/flow.py +0 -0
  362. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/identifier_aware_visitor.py +0 -0
  363. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/identifier_collector.py +0 -0
  364. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/if_labels.py +0 -0
  365. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/local_variables.py +0 -0
  366. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/memento.py +0 -0
  367. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/pass_manager.py +0 -0
  368. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/preprocess_codes.py +0 -0
  369. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/preprocessor_error.py +0 -0
  370. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/preprocessor_test_utils.py +0 -0
  371. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/preprocessor_utils.py +0 -0
  372. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/reg_tracking.py +0 -0
  373. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/preprocessor/struct_collector.py +0 -0
  374. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/program.py +4 -4
  375. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/proxy_identifier_manager.py +0 -0
  376. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/references.py +0 -0
  377. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/resolve_search_result.py +0 -0
  378. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/scoped_name.py +0 -0
  379. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/substitute_identifiers.py +0 -0
  380. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/test_utils.py +0 -0
  381. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/type_system.py +0 -0
  382. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/type_system_visitor.py +0 -0
  383. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/type_utils.py +0 -0
  384. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/compiler/unique_name_provider.py +0 -0
  385. {cairo-lang-0.10.3/starkware/cairo/lang/tracer/third_party → cairo-lang-0.11.0/starkware/cairo/lang/migrators}/__init__.py +0 -0
  386. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/migrators/migrator.py +0 -0
  387. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/migrators/migrator_grammar.ebnf +0 -0
  388. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/scripts/cairo-compile +0 -0
  389. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/scripts/cairo-format +0 -0
  390. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/scripts/cairo-hash-program +0 -0
  391. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/scripts/cairo-migrate +0 -0
  392. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/scripts/cairo-reconstruct-traceback +0 -0
  393. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/scripts/cairo-run +0 -0
  394. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/scripts/cairo-sharp +0 -0
  395. {cairo-lang-0.10.3/starkware/cairo/lang/vm → cairo-lang-0.11.0/starkware/cairo/lang/tracer}/__init__.py +0 -0
  396. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/favicon.png +0 -0
  397. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/index.html +0 -0
  398. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/profile.py +0 -0
  399. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/profiler.py +0 -0
  400. {cairo-lang-0.10.3/starkware/cairo/sharp → cairo-lang-0.11.0/starkware/cairo/lang/tracer/third_party}/__init__.py +0 -0
  401. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/third_party/profile_pb2.py +0 -0
  402. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/tracer.css +0 -0
  403. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/tracer.js +0 -0
  404. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/tracer/tracer_data.py +0 -0
  405. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/version.py +0 -0
  406. {cairo-lang-0.10.3/starkware/crypto → cairo-lang-0.11.0/starkware/cairo/lang/vm}/__init__.py +0 -0
  407. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/cairo_pie.py +0 -0
  408. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/memory_dict.py +0 -0
  409. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/memory_dict_backend.py +0 -0
  410. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/output_builtin_runner.py +0 -0
  411. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/reconstruct_traceback.py +0 -0
  412. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/relocatable.py +0 -0
  413. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/relocatable_fields.py +0 -0
  414. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/trace_entry.py +0 -0
  415. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/validated_memory_dict.py +0 -0
  416. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/virtual_machine_base.py +0 -0
  417. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/vm.py +0 -0
  418. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/vm_core.py +0 -0
  419. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/lang/vm/vm_exceptions.py +0 -0
  420. {cairo-lang-0.10.3/starkware/crypto/signature → cairo-lang-0.11.0/starkware/cairo/sharp}/__init__.py +0 -0
  421. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/sharp/client_lib.py +0 -0
  422. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/cairo/sharp/fact_checker.py +0 -0
  423. {cairo-lang-0.10.3/starkware/eth → cairo-lang-0.11.0/starkware/crypto}/__init__.py +0 -0
  424. {cairo-lang-0.10.3/starkware/python → cairo-lang-0.11.0/starkware/crypto/signature}/__init__.py +0 -0
  425. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/crypto/signature/fast_pedersen_hash.py +0 -0
  426. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/crypto/signature/math_utils.py +0 -0
  427. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/crypto/signature/nothing_up_my_sleeve_gen.py +0 -0
  428. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/crypto/signature/pedersen_params.json +0 -0
  429. {cairo-lang-0.10.3/starkware/solidity → cairo-lang-0.11.0/starkware/eth}/__init__.py +0 -0
  430. {cairo-lang-0.10.3/starkware/starknet → cairo-lang-0.11.0/starkware/python}/__init__.py +0 -0
  431. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/python/async_subprocess.py +0 -0
  432. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/python/expression_string.py +0 -0
  433. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/python/merkle_tree.py +0 -0
  434. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/python/object_utils.py +0 -0
  435. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/python/python_dependencies.py +0 -0
  436. {cairo-lang-0.10.3/starkware/starknet/business_logic → cairo-lang-0.11.0/starkware/solidity}/__init__.py +0 -0
  437. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/solidity/utils.py +0 -0
  438. {cairo-lang-0.10.3/starkware/starknet/business_logic/execution → cairo-lang-0.11.0/starkware/starknet}/__init__.py +0 -0
  439. {cairo-lang-0.10.3/starkware/starknet/business_logic/fact_state → cairo-lang-0.11.0/starkware/starknet/builtins}/__init__.py +0 -0
  440. {cairo-lang-0.10.3/starkware/starknet/business_logic/state → cairo-lang-0.11.0/starkware/starknet/builtins/segment_arena}/__init__.py +0 -0
  441. {cairo-lang-0.10.3/starkware/starknet/business_logic/transaction → cairo-lang-0.11.0/starkware/starknet/business_logic}/__init__.py +0 -0
  442. {cairo-lang-0.10.3/starkware/starknet/cli → cairo-lang-0.11.0/starkware/starknet/business_logic/execution}/__init__.py +0 -0
  443. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/execution/os_usage.py +0 -0
  444. {cairo-lang-0.10.3/starkware/starknet/compiler → cairo-lang-0.11.0/starkware/starknet/business_logic/fact_state}/__init__.py +0 -0
  445. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/business_logic/fact_state/utils.py +0 -0
  446. {cairo-lang-0.10.3/starkware/starknet/core → cairo-lang-0.11.0/starkware/starknet/business_logic/state}/__init__.py +0 -0
  447. {cairo-lang-0.10.3/starkware/starknet/core/os → cairo-lang-0.11.0/starkware/starknet/business_logic/transaction}/__init__.py +0 -0
  448. {cairo-lang-0.10.3/starkware/starknet/core/os/block_hash → cairo-lang-0.11.0/starkware/starknet/cli}/__init__.py +0 -0
  449. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/cli/reconstruct_starknet_traceback.py +0 -0
  450. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/common/constants.cairo +0 -0
  451. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/common/eth_utils.cairo +0 -0
  452. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/common/messages.cairo +0 -0
  453. {cairo-lang-0.10.3/starkware/starknet/core/os/contract_address → cairo-lang-0.11.0/starkware/starknet/compiler}/__init__.py +0 -0
  454. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/contract_interface.py +0 -0
  455. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/event.py +0 -0
  456. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/starknet_pass_manager.py +1 -1
  457. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/storage_var.py +0 -0
  458. {cairo-lang-0.10.3/starkware/starknet/core/os/transaction_hash → cairo-lang-0.11.0/starkware/starknet/compiler/v1}/__init__.py +0 -0
  459. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/compiler/validation_utils.py +0 -0
  460. {cairo-lang-0.10.3/starkware/starknet/definitions → cairo-lang-0.11.0/starkware/starknet/core}/__init__.py +0 -0
  461. {cairo-lang-0.10.3/starkware/starknet/public → cairo-lang-0.11.0/starkware/starknet/core/os}/__init__.py +0 -0
  462. {cairo-lang-0.10.3/starkware/starknet/security → cairo-lang-0.11.0/starkware/starknet/core/os/block_hash}/__init__.py +0 -0
  463. {cairo-lang-0.10.3/starkware/starknet/services → cairo-lang-0.11.0/starkware/starknet/core/os/contract_address}/__init__.py +0 -0
  464. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/core/os/contract_address/contract_address.cairo +0 -0
  465. {cairo-lang-0.10.3/starkware/starknet/services/api → cairo-lang-0.11.0/starkware/starknet/core/os/contract_class}/__init__.py +0 -0
  466. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/core/os/os_program.py +0 -0
  467. {cairo-lang-0.10.3/starkware/starknet/services/api/feeder_gateway → cairo-lang-0.11.0/starkware/starknet/core/os/transaction_hash}/__init__.py +0 -0
  468. {cairo-lang-0.10.3/starkware/starknet/services/api/gateway → cairo-lang-0.11.0/starkware/starknet/core/test_contract}/__init__.py +0 -0
  469. {cairo-lang-0.10.3/starkware/starknet/services/utils → cairo-lang-0.11.0/starkware/starknet/definitions}/__init__.py +0 -0
  470. {cairo-lang-0.10.3/starkware/starknet/storage → cairo-lang-0.11.0/starkware/starknet/public}/__init__.py +0 -0
  471. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/public/abi_structs.py +0 -0
  472. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/scripts/starknet +0 -0
  473. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/scripts/starknet-class-hash +0 -0
  474. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/scripts/starknet-compile +0 -0
  475. {cairo-lang-0.10.3/starkware/starknet/testing → cairo-lang-0.11.0/starkware/starknet/security}/__init__.py +0 -0
  476. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/hints_whitelist.py +0 -0
  477. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/secure_hints.py +0 -0
  478. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/simple_references.py +0 -0
  479. /cairo-lang-0.10.3/starkware/starknet/security/whitelists/latest.json → /cairo-lang-0.11.0/starkware/starknet/security/whitelists/0.10.3.json +0 -0
  480. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/0.6.0.json +0 -0
  481. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/0.8.2.json +0 -0
  482. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/384_bit_prime_field.json +0 -0
  483. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/cairo_blake2s.json +0 -0
  484. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/cairo_keccak.json +0 -0
  485. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/cairo_sha256.json +0 -0
  486. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/cairo_sha256_arbitrary_input_length.json +0 -0
  487. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/ec_bigint.json +0 -0
  488. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/ec_recover.json +0 -0
  489. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/encode_packed.json +0 -0
  490. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/uint256_improvements.json +0 -0
  491. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/security/whitelists/vrf.json +0 -0
  492. {cairo-lang-0.10.3/starkware/starknet/third_party → cairo-lang-0.11.0/starkware/starknet/services}/__init__.py +0 -0
  493. {cairo-lang-0.10.3/starkware/starknet/third_party/open_zeppelin → cairo-lang-0.11.0/starkware/starknet/services/api}/__init__.py +0 -0
  494. {cairo-lang-0.10.3/starkware/starknet/utils → cairo-lang-0.11.0/starkware/starknet/services/api/contract_class}/__init__.py +0 -0
  495. {cairo-lang-0.10.3/starkware/starknet/wallets → cairo-lang-0.11.0/starkware/starknet/services/api/feeder_gateway}/__init__.py +0 -0
  496. {cairo-lang-0.10.3/starkware/starkware_utils → cairo-lang-0.11.0/starkware/starknet/services/api/gateway}/__init__.py +0 -0
  497. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/services/api/gateway/gateway_client.py +0 -0
  498. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/services/api/messages.py +0 -0
  499. {cairo-lang-0.10.3/starkware/starkware_utils/commitment_tree → cairo-lang-0.11.0/starkware/starknet/services/utils}/__init__.py +0 -0
  500. {cairo-lang-0.10.3/starkware/starkware_utils/commitment_tree/merkle_tree → cairo-lang-0.11.0/starkware/starknet/storage}/__init__.py +0 -0
  501. {cairo-lang-0.10.3/starkware/starkware_utils/commitment_tree/patricia_tree → cairo-lang-0.11.0/starkware/starknet/testing}/__init__.py +0 -0
  502. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/testing/contracts.py +0 -0
  503. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/testing/objects.py +0 -0
  504. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/testing/postman.py +0 -0
  505. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starknet/utils/api_utils.py +0 -0
  506. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/binary_fact_tree.py +0 -0
  507. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/binary_fact_tree_da_utils.py +0 -0
  508. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/binary_fact_tree_node.py +0 -0
  509. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/calculation.py +0 -0
  510. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/inner_node_fact.py +0 -0
  511. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/leaf_fact.py +0 -0
  512. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/merkle_tree/traverse_tree.py +0 -0
  513. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/patricia_tree/nodes.py +0 -0
  514. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/patricia_tree/patricia_tree.py +0 -0
  515. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/patricia_tree/virtual_calculation_node.py +0 -0
  516. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/patricia_tree/virtual_patricia_node.py +0 -0
  517. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/commitment_tree/update_tree.py +0 -0
  518. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/config_base.py +0 -0
  519. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/custom_raising_dict.py +0 -0
  520. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/executor.py +0 -0
  521. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/one_of_schema_tracker.py +0 -0
  522. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/serializable.py +0 -0
  523. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/serializable_dataclass.py +0 -0
  524. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/subsequence.py +0 -0
  525. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/time/__init__.py +0 -0
  526. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/time/fastforward.py +0 -0
  527. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/time/synchronous_executor.py +0 -0
  528. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/starkware_utils/time/time.py +0 -0
  529. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/storage/__init__.py +0 -0
  530. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/storage/dict_storage.py +0 -0
  531. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/storage/imm_storage.py +0 -0
  532. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/storage/metrics.py +0 -0
  533. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/storage/names.py +0 -0
  534. {cairo-lang-0.10.3 → cairo-lang-0.11.0}/starkware/storage/storage_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cairo-lang
3
- Version: 0.10.3
3
+ Version: 0.11.0
4
4
  Summary: Compiler and runner for the Cairo language
5
5
  Home-page: https://cairo-lang.org/
6
6
  Author: Starkware
@@ -24,7 +24,7 @@ We recommend starting from [Setting up the environment](https://cairo-lang.org/d
24
24
  # Installation instructions
25
25
 
26
26
  You should be able to download the python package zip file directly from
27
- [github](https://github.com/starkware-libs/cairo-lang/releases/tag/v0.10.3)
27
+ [github](https://github.com/starkware-libs/cairo-lang/releases/tag/v0.11.0)
28
28
  and install it using ``pip``.
29
29
  See [Setting up the environment](https://cairo-lang.org/docs/quickstart.html).
30
30
 
@@ -66,7 +66,7 @@ Once the docker image is built, you can fetch the python package zip file using:
66
66
 
67
67
  ```bash
68
68
  > container_id=$(docker create cairo)
69
- > docker cp ${container_id}:/app/cairo-lang-0.10.3.zip .
69
+ > docker cp ${container_id}:/app/cairo-lang-0.11.0.zip .
70
70
  > docker rm -v ${container_id}
71
71
  ```
72
72
 
@@ -12,7 +12,7 @@ We recommend starting from [Setting up the environment](https://cairo-lang.org/d
12
12
  # Installation instructions
13
13
 
14
14
  You should be able to download the python package zip file directly from
15
- [github](https://github.com/starkware-libs/cairo-lang/releases/tag/v0.10.3)
15
+ [github](https://github.com/starkware-libs/cairo-lang/releases/tag/v0.11.0)
16
16
  and install it using ``pip``.
17
17
  See [Setting up the environment](https://cairo-lang.org/docs/quickstart.html).
18
18
 
@@ -54,7 +54,7 @@ Once the docker image is built, you can fetch the python package zip file using:
54
54
 
55
55
  ```bash
56
56
  > container_id=$(docker create cairo)
57
- > docker cp ${container_id}:/app/cairo-lang-0.10.3.zip .
57
+ > docker cp ${container_id}:/app/cairo-lang-0.11.0.zip .
58
58
  > docker rm -v ${container_id}
59
59
  ```
60
60
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cairo-lang
3
- Version: 0.10.3
3
+ Version: 0.11.0
4
4
  Summary: Compiler and runner for the Cairo language
5
5
  Home-page: https://cairo-lang.org/
6
6
  Author: Starkware
@@ -24,7 +24,7 @@ We recommend starting from [Setting up the environment](https://cairo-lang.org/d
24
24
  # Installation instructions
25
25
 
26
26
  You should be able to download the python package zip file directly from
27
- [github](https://github.com/starkware-libs/cairo-lang/releases/tag/v0.10.3)
27
+ [github](https://github.com/starkware-libs/cairo-lang/releases/tag/v0.11.0)
28
28
  and install it using ``pip``.
29
29
  See [Setting up the environment](https://cairo-lang.org/docs/quickstart.html).
30
30
 
@@ -66,7 +66,7 @@ Once the docker image is built, you can fetch the python package zip file using:
66
66
 
67
67
  ```bash
68
68
  > container_id=$(docker create cairo)
69
- > docker cp ${container_id}:/app/cairo-lang-0.10.3.zip .
69
+ > docker cp ${container_id}:/app/cairo-lang-0.11.0.zip .
70
70
  > docker rm -v ${container_id}
71
71
  ```
72
72
 
@@ -57,6 +57,7 @@ starkware/cairo/common/hash_chain.cairo
57
57
  starkware/cairo/common/hash_chain.py
58
58
  starkware/cairo/common/hash_state.cairo
59
59
  starkware/cairo/common/hash_state.py
60
+ starkware/cairo/common/hash_state_poseidon.cairo
60
61
  starkware/cairo/common/invoke.cairo
61
62
  starkware/cairo/common/keccak.cairo
62
63
  starkware/cairo/common/keccak_state.cairo
@@ -68,7 +69,13 @@ starkware/cairo/common/memset.cairo
68
69
  starkware/cairo/common/merkle_multi_update.cairo
69
70
  starkware/cairo/common/merkle_update.cairo
70
71
  starkware/cairo/common/patricia.cairo
72
+ starkware/cairo/common/patricia_utils.cairo
71
73
  starkware/cairo/common/patricia_utils.py
74
+ starkware/cairo/common/patricia_with_poseidon.cairo
75
+ starkware/cairo/common/patricia_with_sponge.cairo
76
+ starkware/cairo/common/poseidon_hash.py
77
+ starkware/cairo/common/poseidon_state.cairo
78
+ starkware/cairo/common/poseidon_utils.py
72
79
  starkware/cairo/common/pow.cairo
73
80
  starkware/cairo/common/registers.cairo
74
81
  starkware/cairo/common/segments.cairo
@@ -77,10 +84,13 @@ starkware/cairo/common/set.cairo
77
84
  starkware/cairo/common/signature.cairo
78
85
  starkware/cairo/common/small_merkle_tree.cairo
79
86
  starkware/cairo/common/small_merkle_tree.py
87
+ starkware/cairo/common/sponge_as_hash.cairo
80
88
  starkware/cairo/common/squash_dict.cairo
81
89
  starkware/cairo/common/structs.py
82
90
  starkware/cairo/common/uint256.cairo
83
91
  starkware/cairo/common/usort.cairo
92
+ starkware/cairo/common/builtin_keccak/keccak.cairo
93
+ starkware/cairo/common/builtin_poseidon/poseidon.cairo
84
94
  starkware/cairo/common/cairo_blake2s/__init__.py
85
95
  starkware/cairo/common/cairo_blake2s/blake2s.cairo
86
96
  starkware/cairo/common/cairo_blake2s/blake2s_utils.py
@@ -94,13 +104,18 @@ starkware/cairo/common/cairo_secp/bigint.cairo
94
104
  starkware/cairo/common/cairo_secp/constants.cairo
95
105
  starkware/cairo/common/cairo_secp/ec.cairo
96
106
  starkware/cairo/common/cairo_secp/field.cairo
107
+ starkware/cairo/common/cairo_secp/secp256r1_utils.py
97
108
  starkware/cairo/common/cairo_secp/secp_utils.py
98
109
  starkware/cairo/common/cairo_secp/signature.cairo
99
110
  starkware/cairo/common/cairo_sha256/__init__.py
100
111
  starkware/cairo/common/cairo_sha256/sha256_utils.py
112
+ starkware/cairo/common/keccak_utils/__init__.py
113
+ starkware/cairo/common/keccak_utils/keccak_utils.cairo
114
+ starkware/cairo/common/keccak_utils/keccak_utils.py
101
115
  starkware/cairo/lang/VERSION
102
116
  starkware/cairo/lang/__init__.py
103
117
  starkware/cairo/lang/cairo_constants.py
118
+ starkware/cairo/lang/dynamic_layout_params.py
104
119
  starkware/cairo/lang/instances.py
105
120
  starkware/cairo/lang/version.py
106
121
  starkware/cairo/lang/builtins/__init__.py
@@ -117,6 +132,9 @@ starkware/cairo/lang/builtins/hash/instance_def.py
117
132
  starkware/cairo/lang/builtins/keccak/__init__.py
118
133
  starkware/cairo/lang/builtins/keccak/instance_def.py
119
134
  starkware/cairo/lang/builtins/keccak/keccak_builtin_runner.py
135
+ starkware/cairo/lang/builtins/poseidon/__init__.py
136
+ starkware/cairo/lang/builtins/poseidon/instance_def.py
137
+ starkware/cairo/lang/builtins/poseidon/poseidon_builtin_runner.py
120
138
  starkware/cairo/lang/builtins/range_check/__init__.py
121
139
  starkware/cairo/lang/builtins/range_check/instance_def.py
122
140
  starkware/cairo/lang/builtins/range_check/range_check_builtin_runner.py
@@ -268,6 +286,7 @@ starkware/eth/eth_test_utils.py
268
286
  starkware/python/__init__.py
269
287
  starkware/python/async_subprocess.py
270
288
  starkware/python/expression_string.py
289
+ starkware/python/fixed_point.py
271
290
  starkware/python/math_utils.py
272
291
  starkware/python/merkle_tree.py
273
292
  starkware/python/object_utils.py
@@ -277,6 +296,9 @@ starkware/python/utils_stub_module.py
277
296
  starkware/solidity/__init__.py
278
297
  starkware/solidity/utils.py
279
298
  starkware/starknet/__init__.py
299
+ starkware/starknet/builtins/__init__.py
300
+ starkware/starknet/builtins/segment_arena/__init__.py
301
+ starkware/starknet/builtins/segment_arena/segment_arena_builtin_runner.py
280
302
  starkware/starknet/business_logic/__init__.py
281
303
  starkware/starknet/business_logic/utils.py
282
304
  starkware/starknet/business_logic/execution/__init__.py
@@ -287,6 +309,7 @@ starkware/starknet/business_logic/execution/objects.py
287
309
  starkware/starknet/business_logic/execution/os_resources.json
288
310
  starkware/starknet/business_logic/execution/os_usage.py
289
311
  starkware/starknet/business_logic/fact_state/__init__.py
312
+ starkware/starknet/business_logic/fact_state/contract_class_objects.py
290
313
  starkware/starknet/business_logic/fact_state/contract_state_objects.py
291
314
  starkware/starknet/business_logic/fact_state/patricia_state.py
292
315
  starkware/starknet/business_logic/fact_state/state.py
@@ -301,11 +324,14 @@ starkware/starknet/business_logic/transaction/objects.py
301
324
  starkware/starknet/business_logic/transaction/state_objects.py
302
325
  starkware/starknet/cli/__init__.py
303
326
  starkware/starknet/cli/class_hash.py
327
+ starkware/starknet/cli/compiled_class_hash.py
304
328
  starkware/starknet/cli/reconstruct_starknet_traceback.py
305
329
  starkware/starknet/cli/starknet_cli.py
330
+ starkware/starknet/cli/starknet_cli_utils.py
306
331
  starkware/starknet/common/constants.cairo
307
332
  starkware/starknet/common/eth_utils.cairo
308
333
  starkware/starknet/common/messages.cairo
334
+ starkware/starknet/common/new_syscalls.cairo
309
335
  starkware/starknet/common/storage.cairo
310
336
  starkware/starknet/common/syscalls.cairo
311
337
  starkware/starknet/compiler/__init__.py
@@ -318,23 +344,68 @@ starkware/starknet/compiler/starknet_pass_manager.py
318
344
  starkware/starknet/compiler/starknet_preprocessor.py
319
345
  starkware/starknet/compiler/storage_var.py
320
346
  starkware/starknet/compiler/validation_utils.py
347
+ starkware/starknet/compiler/v1/__init__.py
348
+ starkware/starknet/compiler/v1/compile.py
349
+ starkware/starknet/compiler/v1/bin/starknet-compile
350
+ starkware/starknet/compiler/v1/bin/starknet-sierra-compile
351
+ starkware/starknet/compiler/v1/corelib/src/array.cairo
352
+ starkware/starknet/compiler/v1/corelib/src/box.cairo
353
+ starkware/starknet/compiler/v1/corelib/src/clone.cairo
354
+ starkware/starknet/compiler/v1/corelib/src/debug.cairo
355
+ starkware/starknet/compiler/v1/corelib/src/dict.cairo
356
+ starkware/starknet/compiler/v1/corelib/src/ec.cairo
357
+ starkware/starknet/compiler/v1/corelib/src/ecdsa.cairo
358
+ starkware/starknet/compiler/v1/corelib/src/gas.cairo
359
+ starkware/starknet/compiler/v1/corelib/src/hash.cairo
360
+ starkware/starknet/compiler/v1/corelib/src/integer.cairo
361
+ starkware/starknet/compiler/v1/corelib/src/internal.cairo
362
+ starkware/starknet/compiler/v1/corelib/src/lib.cairo
363
+ starkware/starknet/compiler/v1/corelib/src/nullable.cairo
364
+ starkware/starknet/compiler/v1/corelib/src/option.cairo
365
+ starkware/starknet/compiler/v1/corelib/src/result.cairo
366
+ starkware/starknet/compiler/v1/corelib/src/serde.cairo
367
+ starkware/starknet/compiler/v1/corelib/src/starknet.cairo
368
+ starkware/starknet/compiler/v1/corelib/src/test.cairo
369
+ starkware/starknet/compiler/v1/corelib/src/testing.cairo
370
+ starkware/starknet/compiler/v1/corelib/src/traits.cairo
371
+ starkware/starknet/compiler/v1/corelib/src/zeroable.cairo
372
+ starkware/starknet/compiler/v1/corelib/src/starknet/class_hash.cairo
373
+ starkware/starknet/compiler/v1/corelib/src/starknet/contract_address.cairo
374
+ starkware/starknet/compiler/v1/corelib/src/starknet/info.cairo
375
+ starkware/starknet/compiler/v1/corelib/src/starknet/storage_access.cairo
376
+ starkware/starknet/compiler/v1/corelib/src/starknet/syscalls.cairo
377
+ starkware/starknet/compiler/v1/corelib/src/starknet/testing.cairo
321
378
  starkware/starknet/core/__init__.py
322
379
  starkware/starknet/core/os/__init__.py
323
- starkware/starknet/core/os/class_hash.py
324
- starkware/starknet/core/os/contracts.cairo
325
380
  starkware/starknet/core/os/os_program.py
326
381
  starkware/starknet/core/os/os_utils.py
327
382
  starkware/starknet/core/os/segment_utils.py
383
+ starkware/starknet/core/os/starknet_new_syscalls.json
328
384
  starkware/starknet/core/os/starknet_os_compiled.json
329
385
  starkware/starknet/core/os/starknet_syscalls.json
386
+ starkware/starknet/core/os/syscall_handler.py
330
387
  starkware/starknet/core/os/syscall_utils.py
331
388
  starkware/starknet/core/os/block_hash/__init__.py
332
389
  starkware/starknet/core/os/block_hash/block_hash.py
333
390
  starkware/starknet/core/os/contract_address/__init__.py
334
391
  starkware/starknet/core/os/contract_address/contract_address.cairo
335
392
  starkware/starknet/core/os/contract_address/contract_address.py
393
+ starkware/starknet/core/os/contract_class/__init__.py
394
+ starkware/starknet/core/os/contract_class/class_hash.py
395
+ starkware/starknet/core/os/contract_class/class_hash_utils.py
396
+ starkware/starknet/core/os/contract_class/compiled_class.cairo
397
+ starkware/starknet/core/os/contract_class/compiled_class_hash.py
398
+ starkware/starknet/core/os/contract_class/compiled_class_hash_utils.py
399
+ starkware/starknet/core/os/contract_class/contract_class.cairo
400
+ starkware/starknet/core/os/contract_class/deprecated_class_hash.py
401
+ starkware/starknet/core/os/contract_class/deprecated_compiled_class.cairo
402
+ starkware/starknet/core/os/contract_class/utils.py
336
403
  starkware/starknet/core/os/transaction_hash/__init__.py
337
404
  starkware/starknet/core/os/transaction_hash/transaction_hash.py
405
+ starkware/starknet/core/test_contract/__init__.py
406
+ starkware/starknet/core/test_contract/delegate_proxy.json
407
+ starkware/starknet/core/test_contract/dummy_account.json
408
+ starkware/starknet/core/test_contract/test_utils.py
338
409
  starkware/starknet/definitions/__init__.py
339
410
  starkware/starknet/definitions/constants.py
340
411
  starkware/starknet/definitions/error_codes.py
@@ -352,6 +423,7 @@ starkware/starknet/security/__init__.py
352
423
  starkware/starknet/security/hints_whitelist.py
353
424
  starkware/starknet/security/secure_hints.py
354
425
  starkware/starknet/security/simple_references.py
426
+ starkware/starknet/security/whitelists/0.10.3.json
355
427
  starkware/starknet/security/whitelists/0.6.0.json
356
428
  starkware/starknet/security/whitelists/0.8.2.json
357
429
  starkware/starknet/security/whitelists/384_bit_prime_field.json
@@ -368,8 +440,10 @@ starkware/starknet/security/whitelists/uint256_improvements.json
368
440
  starkware/starknet/security/whitelists/vrf.json
369
441
  starkware/starknet/services/__init__.py
370
442
  starkware/starknet/services/api/__init__.py
371
- starkware/starknet/services/api/contract_class.py
372
443
  starkware/starknet/services/api/messages.py
444
+ starkware/starknet/services/api/contract_class/__init__.py
445
+ starkware/starknet/services/api/contract_class/contract_class.py
446
+ starkware/starknet/services/api/contract_class/contract_class_utils.py
373
447
  starkware/starknet/services/api/feeder_gateway/__init__.py
374
448
  starkware/starknet/services/api/feeder_gateway/feeder_gateway_client.py
375
449
  starkware/starknet/services/api/feeder_gateway/request_objects.py
@@ -391,6 +465,7 @@ starkware/starknet/testing/objects.py
391
465
  starkware/starknet/testing/postman.py
392
466
  starkware/starknet/testing/starknet.py
393
467
  starkware/starknet/testing/state.py
468
+ starkware/starknet/testing/test_utils.py
394
469
  starkware/starknet/third_party/__init__.py
395
470
  starkware/starknet/third_party/open_zeppelin/__init__.py
396
471
  starkware/starknet/third_party/open_zeppelin/account.json
@@ -422,6 +497,7 @@ starkware/starkware_utils/commitment_tree/binary_fact_tree_node.py
422
497
  starkware/starkware_utils/commitment_tree/calculation.py
423
498
  starkware/starkware_utils/commitment_tree/inner_node_fact.py
424
499
  starkware/starkware_utils/commitment_tree/leaf_fact.py
500
+ starkware/starkware_utils/commitment_tree/leaf_fact_utils.py
425
501
  starkware/starkware_utils/commitment_tree/update_tree.py
426
502
  starkware/starkware_utils/commitment_tree/merkle_tree/__init__.py
427
503
  starkware/starkware_utils/commitment_tree/merkle_tree/traverse_tree.py
@@ -3,7 +3,7 @@ cachetools
3
3
  ecdsa
4
4
  eth-hash[pycryptodome]
5
5
  fastecdsa
6
- frozendict==1.2
6
+ frozendict
7
7
  lark
8
8
  marshmallow-dataclass>=7.1.0
9
9
  marshmallow-enum
@@ -16,6 +16,6 @@ prometheus-client
16
16
  pytest
17
17
  pytest-asyncio
18
18
  PyYAML
19
+ typeguard<3.0.0
19
20
  sympy
20
- typeguard
21
- Web3
21
+ Web3<6.0.0
@@ -3,7 +3,7 @@ cachetools
3
3
  ecdsa
4
4
  eth-hash[pycryptodome]
5
5
  fastecdsa
6
- frozendict==1.2
6
+ frozendict
7
7
  lark
8
8
  marshmallow-dataclass>=7.1.0
9
9
  marshmallow-enum
@@ -16,6 +16,6 @@ prometheus-client
16
16
  pytest
17
17
  pytest-asyncio
18
18
  PyYAML
19
+ typeguard<3.0.0
19
20
  sympy
20
- typeguard
21
- Web3
21
+ Web3<6.0.0
@@ -1,10 +1,10 @@
1
1
  import json
2
2
  from typing import ClassVar
3
3
 
4
- from services.external_api.client import ClientBase
4
+ from services.external_api.client import BaseRestClient
5
5
 
6
6
 
7
- class EverestFeederGatewayClient(ClientBase):
7
+ class EverestFeederGatewayClient(BaseRestClient):
8
8
  """
9
9
  Base class to FeederGatewayClient classes.
10
10
  """
@@ -18,3 +18,9 @@ class EverestFeederGatewayClient(ClientBase):
18
18
  async def get_l1_blockchain_id(self) -> int:
19
19
  raw_response = await self._send_request(send_method="GET", uri="/get_l1_blockchain_id")
20
20
  return json.loads(raw_response)
21
+
22
+ async def get_previous_batch_id(self, batch_id: int) -> int:
23
+ raw_response = await self._send_request(
24
+ send_method="GET", uri=f"/get_prev_batch_id?batch_id={batch_id}"
25
+ )
26
+ return json.loads(raw_response)
@@ -2,10 +2,10 @@ import json
2
2
  from typing import ClassVar, Dict
3
3
 
4
4
  from services.everest.api.gateway.transaction import EverestAddTransactionRequest
5
- from services.external_api.client import ClientBase
5
+ from services.external_api.client import BaseRestClient
6
6
 
7
7
 
8
- class EverestGatewayClient(ClientBase):
8
+ class EverestGatewayClient(BaseRestClient):
9
9
  """
10
10
  Base class to GatewayClient classes.
11
11
  """
@@ -1,7 +1,9 @@
1
- from typing import Callable, ClassVar, Type
1
+ from abc import abstractmethod
2
+ from typing import Callable, ClassVar, Type, TypeVar
2
3
 
3
4
  import marshmallow_oneofschema
4
5
 
6
+ from services.everest.api.gateway.transaction_type import TransactionTypeBase
5
7
  from starkware.starkware_utils.validated_dataclass import ValidatedMarshmallowDataclass
6
8
 
7
9
 
@@ -13,6 +15,15 @@ class EverestTransaction(ValidatedMarshmallowDataclass):
13
15
 
14
16
  Schema: ClassVar[Type[marshmallow_oneofschema.OneOfSchema]]
15
17
 
18
+ @property
19
+ @classmethod
20
+ @abstractmethod
21
+ def tx_type(cls) -> TransactionTypeBase:
22
+ """
23
+ Returns the corresponding TransactionType enum, used in Schema.
24
+ Subclasses should define it as a class variable.
25
+ """
26
+
16
27
  def log_additional_data(self, logger: Callable[[str], None]) -> None:
17
28
  """
18
29
  Logs additional data that isn't present in the __repr__ or __str__ functions.
@@ -23,3 +34,6 @@ class EverestTransaction(ValidatedMarshmallowDataclass):
23
34
  class EverestAddTransactionRequest(ValidatedMarshmallowDataclass):
24
35
  tx: EverestTransaction
25
36
  tx_id: int
37
+
38
+
39
+ TEverestTransaction = TypeVar("TEverestTransaction", bound=EverestTransaction)
@@ -1,9 +1,8 @@
1
- import functools
2
- import operator
3
1
  from abc import abstractmethod
4
2
  from typing import Iterable, Iterator, Optional, Type
5
3
 
6
4
  from services.everest.api.gateway.transaction import EverestTransaction
5
+ from services.everest.api.gateway.transaction_type import TransactionTypeBase
7
6
  from services.everest.business_logic.state import StateSelectorBase
8
7
  from services.everest.business_logic.state_api import StateProxy
9
8
  from services.everest.business_logic.transaction_execution_objects import (
@@ -56,11 +55,10 @@ class EverestInternalStateTransaction(SubclassSchemaTracker):
56
55
  general_config: Config,
57
56
  state_selector_cls: Type[StateSelectorBase],
58
57
  ) -> StateSelectorBase:
59
- return functools.reduce(
60
- operator.__or__,
61
- (tx.get_state_selector(general_config=general_config) for tx in txs),
62
- state_selector_cls.empty(),
63
- )
58
+ state_selector = state_selector_cls.empty()
59
+ for tx in txs:
60
+ state_selector.update(other=tx.get_state_selector(general_config=general_config))
61
+ return state_selector
64
62
 
65
63
 
66
64
  class EverestInternalTransaction(EverestInternalStateTransaction):
@@ -70,6 +68,15 @@ class EverestInternalTransaction(EverestInternalStateTransaction):
70
68
  and be converted from/to an external transaction.
71
69
  """
72
70
 
71
+ @property
72
+ @classmethod
73
+ @abstractmethod
74
+ def tx_type(cls) -> TransactionTypeBase:
75
+ """
76
+ Returns the corresponding TransactionType enum. Used in TransactionSchema.
77
+ Subclasses should define it as a class variable.
78
+ """
79
+
73
80
  @property
74
81
  @classmethod
75
82
  @abstractmethod
@@ -52,6 +52,10 @@ class StateSelectorBase(ABC, ValidatedDataclass):
52
52
  def __le__(self: TStateSelector, other: TStateSelector) -> bool:
53
53
  pass
54
54
 
55
+ @abstractmethod
56
+ def update(self: TStateSelector, other: TStateSelector):
57
+ pass
58
+
55
59
 
56
60
  class CarriedStateBase(StateProxy):
57
61
  """
@@ -14,7 +14,7 @@ from starkware.python.utils import initialize_random
14
14
  from starkware.starkware_utils.error_handling import StarkErrorCode
15
15
  from starkware.starkware_utils.field_validators import validate_non_negative
16
16
  from starkware.starkware_utils.marshmallow_dataclass_fields import StrictRequiredInteger
17
- from starkware.starkware_utils.validated_fields import Field, RangeValidatedField
17
+ from starkware.starkware_utils.validated_fields import RangeValidatedField, ValidatedField
18
18
 
19
19
  # Fields data: validation data, dataclass metadata.
20
20
  tx_id_marshmallow_field = StrictRequiredInteger(validate=validate_non_negative("tx_id"))
@@ -22,7 +22,7 @@ tx_id_field_metadata = dict(marshmallow_field=tx_id_marshmallow_field)
22
22
 
23
23
 
24
24
  # Fact Registry Address.
25
- class EthAddressTypeField(Field[str]):
25
+ class EthAddressTypeField(ValidatedField[str]):
26
26
  """
27
27
  A field representation of an Ethereum address.
28
28
  """
@@ -102,3 +102,7 @@ def felt(name_in_error_message: str) -> RangeValidatedField:
102
102
 
103
103
  def felt_metadata(name_in_error_message: str) -> Dict[str, Any]:
104
104
  return felt(name_in_error_message=name_in_error_message).metadata()
105
+
106
+
107
+ def format_felt_list(felts: List[int]) -> str:
108
+ return f"[{', '.join([FeltField.format(felt) for felt in felts])}]"
@@ -3,8 +3,9 @@ import dataclasses
3
3
  import logging
4
4
  import os
5
5
  import ssl
6
+ from abc import abstractmethod
6
7
  from http import HTTPStatus
7
- from typing import Any, Dict, Optional, Sequence, Union
8
+ from typing import Any, Dict, List, NamedTuple, Optional, Sequence, Union
8
9
  from urllib.parse import urljoin
9
10
 
10
11
  import aiohttp
@@ -15,6 +16,58 @@ from starkware.starkware_utils.validated_dataclass import ValidatedDataclass
15
16
 
16
17
  logger = logging.getLogger(__name__)
17
18
  JsonObject = Dict[str, Any]
19
+ FlexibleJsonObject = Union[str, List[Any], JsonObject]
20
+
21
+
22
+ class JrpcOk(NamedTuple):
23
+ """
24
+ Result object of a successful JRPC query.
25
+ """
26
+
27
+ result: Any
28
+ response_id: Any
29
+
30
+
31
+ class JrpcError(NamedTuple):
32
+ """
33
+ Error object of a failed JRPC query.
34
+ """
35
+
36
+ code: int
37
+ message: str
38
+ data: Any
39
+ response_id: Any
40
+
41
+
42
+ TJrpcResult = Union[JrpcOk, JrpcError]
43
+
44
+
45
+ def to_jrpc_result_single(response: JsonObject) -> TJrpcResult:
46
+ """
47
+ Parses a single dictionary into a JRPC result.
48
+ """
49
+ return (
50
+ JrpcOk(result=response["result"], response_id=response["id"])
51
+ if "result" in response
52
+ else JrpcError(
53
+ code=response["error"]["code"],
54
+ message=response["error"]["message"],
55
+ data=response["error"].get("data"),
56
+ response_id=response["id"],
57
+ )
58
+ )
59
+
60
+
61
+ def to_jrpc_result(
62
+ response: Union[JsonObject, List[JsonObject]]
63
+ ) -> Union[TJrpcResult, List[TJrpcResult]]:
64
+ """
65
+ Parses the JSON response of a JRPC request into result(s). If a list of dicts is provided, each
66
+ element in the list is treated as a different result and is parsed separately.
67
+ """
68
+ if isinstance(response, list):
69
+ return [to_jrpc_result_single(response=resp) for resp in response]
70
+ return to_jrpc_result_single(response=response)
18
71
 
19
72
 
20
73
  class BadRequest(Exception):
@@ -86,8 +139,27 @@ class ClientBase(HasUriPrefix):
86
139
  def __repr__(self) -> str:
87
140
  return generic_object_repr(obj=self)
88
141
 
142
+ @abstractmethod
143
+ async def _parse_response(
144
+ self,
145
+ request_url: str,
146
+ request_data: Optional[FlexibleJsonObject],
147
+ response: aiohttp.ClientResponse,
148
+ ) -> str:
149
+ """
150
+ Parses the request response and returns a string.
151
+ """
152
+
153
+ @abstractmethod
154
+ def _prepare_data(
155
+ self, data: Optional[FlexibleJsonObject]
156
+ ) -> Optional[Union[FlexibleJsonObject, aiohttp.payload.JsonPayload]]:
157
+ """
158
+ Performs conversions of data before sending the request.
159
+ """
160
+
89
161
  async def _send_request(
90
- self, send_method: str, uri: str, data: Optional[Union[str, Dict[str, Any]]] = None
162
+ self, send_method: str, uri: str, data: Optional[FlexibleJsonObject] = None
91
163
  ) -> str:
92
164
  """
93
165
  Sends an HTTP request to the target URI.
@@ -110,13 +182,13 @@ class ClientBase(HasUriPrefix):
110
182
  async with aiohttp.TCPConnector(ssl=self.ssl_context) as connector:
111
183
  async with aiohttp.ClientSession(connector=connector) as session:
112
184
  async with session.request(
113
- method=send_method, url=url, data=data
185
+ method=send_method, url=url, data=self._prepare_data(data=data)
114
186
  ) as response:
115
- text = await response.text()
116
- if response.status != HTTPStatus.OK:
117
- raise BadRequest(status_code=response.status, text=text)
118
-
119
- return text
187
+ return await self._parse_response(
188
+ request_url=url,
189
+ request_data=data,
190
+ response=response,
191
+ )
120
192
  except aiohttp.ClientError as exception:
121
193
  error_message = f"Got {type(exception).__name__} while trying to access {url}."
122
194
 
@@ -145,3 +217,66 @@ class ClientBase(HasUriPrefix):
145
217
 
146
218
  async def is_alive(self) -> str:
147
219
  return await self._send_request(send_method="GET", uri="/is_alive")
220
+
221
+
222
+ class BaseRestClient(ClientBase):
223
+ async def _parse_response(
224
+ self,
225
+ request_url: str,
226
+ request_data: Optional[FlexibleJsonObject],
227
+ response: aiohttp.ClientResponse,
228
+ ) -> str:
229
+ text = await response.text()
230
+ if response.status != HTTPStatus.OK:
231
+ raise BadRequest(status_code=response.status, text=text)
232
+
233
+ return text
234
+
235
+ def _prepare_data(
236
+ self, data: Optional[FlexibleJsonObject]
237
+ ) -> Optional[Union[FlexibleJsonObject, aiohttp.payload.JsonPayload]]:
238
+ return data
239
+
240
+
241
+ class BaseJRPCClient(ClientBase):
242
+ async def _parse_response(
243
+ self,
244
+ request_url: str,
245
+ request_data: Optional[FlexibleJsonObject],
246
+ response: aiohttp.ClientResponse,
247
+ ) -> str:
248
+ """
249
+ Parses and returns the result (or results) JSON string of the JRPC query.
250
+ If the single response is an error, or if multiple responses are given and at least one of
251
+ them is an error response, raises a BadRequest exception.
252
+ """
253
+ response_json = await response.json()
254
+ if response_json is None:
255
+ raise BadRequest(
256
+ status_code=response.status,
257
+ text=(
258
+ f"Response JSON is empty for {response}. Request: {request_url}, "
259
+ f"json={request_data}."
260
+ ),
261
+ )
262
+ parsed = to_jrpc_result(response=response_json)
263
+ if isinstance(parsed, list):
264
+ result = []
265
+ for single_result in parsed:
266
+ if isinstance(single_result, JrpcError):
267
+ raise BadRequest(status_code=response.status, text=single_result.message)
268
+ assert isinstance(single_result, JrpcOk)
269
+ result += [single_result.result]
270
+ else:
271
+ if isinstance(parsed, JrpcError):
272
+ raise BadRequest(status_code=response.status, text=parsed.message)
273
+ assert isinstance(parsed, JrpcOk)
274
+ result = parsed.result
275
+ return str(result)
276
+
277
+ def _prepare_data(
278
+ self, data: Optional[FlexibleJsonObject]
279
+ ) -> Optional[Union[FlexibleJsonObject, aiohttp.payload.JsonPayload]]:
280
+ if data is None:
281
+ return None
282
+ return aiohttp.payload.JsonPayload(data)