diff --git a/INSTALL.md b/INSTALL.md index a80992cd..caadab3f 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -136,7 +136,7 @@ is better suited to work on *Glow* itself and can be unstable), use: docker run -it --mount type=volume,src=glow-home,dst=/root mukn/glow:devel bash You can build your own using `scripts/make-docker-image.ss` from -[gerbil-utils](https://github.com/fare/gerbil-utils). +[gerbil-utils](https://github.com/mighty-gerbils/gerbil-utils). Note that the `--mount` option is there to help you persist your working state between sessions of running *Glow* inside docker. @@ -227,11 +227,12 @@ Assuming for now you won't be modifying their source code, just install them with `gxpkg install` and `gxpkg build`. ``` -DEPS=(github.com/fare/gerbil-utils - github.com/fare/gerbil-poo - github.com/fare/gerbil-crypto - github.com/fare/gerbil-persist - github.com/fare/gerbil-ethereum +DEPS=(github.com/mighty-gerbils/gerbil-leveldb + github.com/mighty-gerbils/gerbil-utils + github.com/mighty-gerbils/gerbil-poo + github.com/mighty-gerbils/gerbil-crypto + github.com/mighty-gerbils/gerbil-persist + github.com/mighty-gerbils/gerbil-ethereum github.com/drewc/gerbil-swank github.com/drewc/drewc-r7rs-swank github.com/drewc/smug-gerbil @@ -256,11 +257,12 @@ after possibly editing the script to adjust the `SRCDIR` shell variable to adjust where you'll install those dependencies: ``` -DEPS=(github.com/fare/gerbil-utils - github.com/fare/gerbil-poo - github.com/fare/gerbil-crypto - github.com/fare/gerbil-persist - github.com/fare/gerbil-ethereum +DEPS=(github.com/mighty-gerbils/gerbil-leveldb + github.com/mighty-gerbils/gerbil-utils + github.com/mighty-gerbils/gerbil-poo + github.com/mighty-gerbils/gerbil-crypto + github.com/mighty-gerbils/gerbil-persist + github.com/mighty-gerbils/gerbil-ethereum github.com/drewc/gerbil-swank github.com/drewc/drewc-r7rs-swank github.com/drewc/smug-gerbil @@ -321,8 +323,8 @@ And you can run our integration tests with: However, mind that integration tests require you to have a local private [`geth`](https://geth.ethereum.org/) running -(typically using the [`script/run-ethereum-test-net.ss`](https://github.com/fare/gerbil-ethereum/blob/master/scripts/run-ethereum-test-net.ss) -from [gerbil-ethereum](https://github.com/fare/gerbil-ethereum)) +(typically using the [`script/run-ethereum-test-net.ss`](https://github.com/mighty-gerbils/gerbil-ethereum/blob/master/scripts/run-ethereum-test-net.ss) +from [gerbil-ethereum](https://github.com/mighty-gerbils/gerbil-ethereum)) and may maintain state in a `run` directory that you might have to wipe with `rm -rf run` each time you restart `geth`, shortly *before* said restart diff --git a/all-glow.ss b/all-glow.ss index bd588c5b..ad68d263 100644 --- a/all-glow.ss +++ b/all-glow.ss @@ -10,20 +10,51 @@ (import ;; Gerbil - (only-in :gerbil/gambit/os time) - :gerbil/expander :std/interactive - :gerbil/gambit/bytes :gerbil/gambit/exact :gerbil/gambit/threads :gerbil/gambit/ports - :scheme/base-impl :scheme/char - :std/actor :std/assert :std/coroutine - :std/debug/heap :std/debug/memleak :std/debug/threads - :std/error :std/format :std/getopt :std/iter :std/logger - :std/misc/bytes :std/misc/deque :std/misc/hash :std/misc/list :std/misc/number - :std/misc/ports :std/misc/process :std/misc/queue :std/misc/repr :std/misc/string - :std/net/request :std/net/websocket - :std/pregexp :std/sort - :std/srfi/1 :std/srfi/13 (except-in :std/srfi/19 time) ;; :std/srfi/43 + :gerbil/gambit + :gerbil/expander + + :std/interactive + :std/actor + :std/assert + :std/coroutine + :std/debug/heap + :std/debug/memleak + :std/debug/threads + :std/error + :std/format + :std/getopt + :std/io + :std/iter + :std/logger + :std/misc/bytes + :std/misc/decimal + :std/misc/deque + :std/misc/hash + :std/misc/list + :std/misc/number + :std/misc/path + :std/misc/ports + :std/misc/process + :std/misc/queue + :std/misc/repr + :std/misc/string + :std/net/request + :std/pregexp + :std/sort + :std/source + :std/srfi/1 + :std/srfi/13 + (except-in :std/srfi/19 time) + ;; :std/srfi/43 + :std/srfi/141 + :std/stxutil :std/sugar - :std/text/csv :std/text/hex :std/text/json + :std/text/basic-parsers + :std/text/basic-printers + :std/text/char-set + :std/text/csv + :std/text/hex + :std/text/json :std/test ;; swank @@ -31,60 +62,123 @@ ;; use https://github.com/fare-patches/r7rs-swank as your checkout ;; :ecraven/gerbil-swank - ;; Clan Utilities - :clan/net/json-rpc :clan/net/s3 :clan/net/simple-http-client :clan/net/websocket - :clan/assert :clan/base :clan/basic-parsers :clan/basic-printers - #;:clan/call-limiter :clan/cli :clan/concurrency :clan/config - :clan/debug :clan/decimal :clan/diceware - :clan/error :clan/exit - :clan/failure :clan/ffi :clan/files :clan/filesystem - :clan/generator :clan/git-fu :clan/hash - :clan/json :clan/list :clan/logger - :clan/maybe :clan/memo :clan/multicall :clan/number :clan/option :clan/order - :clan/path :clan/path-config :clan/peekable-iterator :clan/ports + ;; gerbil-utils + :clan/net/tcp + :clan/net/s3 + :clan/net/websocket + :clan/net/whois + :clan/assert + :clan/base + #;:clan/call-limiter + :clan/cli + :clan/concurrency + :clan/config + :clan/debug + :clan/diceware + :clan/error + :clan/exit + :clan/failure + :clan/ffi + :clan/files + :clan/filesystem + :clan/generator + :clan/git-fu + :clan/hash + :clan/json + :clan/list + :clan/logger + :clan/maybe + :clan/memo + :clan/multicall + :clan/option + :clan/order + :clan/path-config + :clan/peekable-iterator + :clan/ports :clan/random - :clan/shell :clan/simple-rpc-client :clan/source - :clan/stateful-avl-map :clan/string :clan/subprocess :clan/syntax - :clan/temporary-files :clan/timestamp - :clan/vector :clan/versioning :clan/watch :clan/with-id - :clan/persist/db :clan/persist/persist :clan/persist/content-addressing - - ;; POO - :clan/poo/object :clan/poo/io :clan/poo/debug :clan/poo/cli - (prefix-in :clan/poo/mop poo.) (prefix-in :clan/poo/type poo.) + :clan/shell + :clan/simple-actor-client + :clan/source + :clan/stateful-avl-map + :clan/string + :clan/syntax + :clan/temporary-files + :clan/timestamp + :clan/vector + :clan/versioning + :clan/watch + + ;; gerbil-poo + :clan/poo/cli + :clan/poo/debug + :clan/poo/object + :clan/poo/io + :clan/poo/trie + (prefix-in :clan/poo/mop poo.) + (prefix-in :clan/poo/type poo.) (only-in :clan/poo/mop Type Type. Class Class. Slot Lens Function Fun .defgeneric .method proto validate element? slot-lens sexp<-) (only-in :clan/poo/number Number Real JsInt IntSet) - :clan/poo/trie + ;; gerbil-crypto + :clan/crypto/keccak + :clan/crypto/secp256k1 + + ;; gerbil-persist + :clan/persist/content-addressing + :clan/persist/db + :clan/persist/persist + + ;; gerbil-ethereum + :clan/ethereum/abi + :clan/ethereum/assembly + :clan/ethereum/assets + :clan/ethereum/cli + :clan/ethereum/contract-config + :clan/ethereum/erc20 + :clan/ethereum/ethereum + :clan/ethereum/evm-runtime + :clan/ethereum/hex + :clan/ethereum/json-rpc + :clan/ethereum/logger + :clan/ethereum/network-config + :clan/ethereum/nonce-tracker + :clan/ethereum/known-addresses + :clan/ethereum/meta-create2 + :clan/ethereum/rlp + :clan/ethereum/transaction + :clan/ethereum/simple-apps + :clan/ethereum/tx-tracker + :clan/ethereum/types + :clan/ethereum/watch +#| ;; Glow - :mukn/glow/version - :mukn/glow/path-config - :mukn/glow/compiler/syntax-context - :mukn/glow/compiler/passes :mukn/glow/compiler/multipass :mukn/glow/compiler/common - :mukn/glow/compiler/alpha-convert/symbolnat :mukn/glow/compiler/alpha-convert/fresh + :mukn/glow/cli/contacts + :mukn/glow/cli/ethereum + :mukn/glow/cli/identities + :mukn/glow/cli/interaction :mukn/glow/compiler/alpha-convert/alpha-convert + :mukn/glow/compiler/alpha-convert/symbolnat + :mukn/glow/compiler/alpha-convert/fresh + :mukn/glow/compiler/anf/anf + ;;:mukn/glow/compiler/checkpointify/checkpointify + :mukn/glow/compiler/common :mukn/glow/compiler/desugar/desugar + :mukn/glow/compiler/multipass + :mukn/glow/compiler/passes + :mukn/glow/compiler/syntax-context :mukn/glow/compiler/typecheck/typecheck - :mukn/glow/compiler/anf/anf - :mukn/glow/runtime/participant-runtime + :mukn/glow/path-config :mukn/glow/runtime/consensus-code-generator :mukn/glow/runtime/glow-path - :mukn/glow/cli/interaction :mukn/glow/cli/contacts :mukn/glow/cli/identities :mukn/glow/cli/ethereum - - ;;:mukn/glow/compiler/checkpointify/checkpointify - :clan/crypto/keccak :clan/crypto/secp256k1 - :mukn/ethereum/hex :mukn/ethereum/abi :mukn/ethereum/types :mukn/ethereum/ethereum - :mukn/ethereum/rlp :mukn/ethereum/known-addresses :mukn/ethereum/logger - :mukn/ethereum/network-config :mukn/ethereum/json-rpc :mukn/ethereum/transaction :mukn/ethereum/watch - :mukn/ethereum/assembly :mukn/ethereum/contract-config :mukn/ethereum/evm-runtime - :mukn/ethereum/nonce-tracker :mukn/ethereum/tx-tracker :mukn/ethereum/simple-apps - :mukn/ethereum/assets :mukn/ethereum/erc20 :mukn/ethereum/cli :mukn/ethereum/meta-create2 + :mukn/glow/runtime/participant-runtime + :mukn/glow/version ;; Testing Glow :mukn/glow/t/common -) +|# + ) (import :clan/poo/brace) diff --git a/build.ss b/build.ss index faa85214..5d3dc143 100755 --- a/build.ss +++ b/build.ss @@ -27,7 +27,7 @@ (init-build-environment! name: "Glow" ;; NB: missing versions for drewc/smug-gerbil and vyzo/libp2p - deps: '("clan" "clan/crypto" "clan/poo" "clan/persist" "mukn/ethereum") + deps: '("clan" "clan/crypto" "clan/poo" "clan/persist" "clan/ethereum") spec: files) ;; TODO: create version files for all overridden dependencies, too @@ -41,5 +41,5 @@ [(map (cut string-append <> "-unstable") '("gambit" "gerbil")) ... (map (cut string-append "gerbilPackages-unstable." <>) '("gerbil-utils" "gerbil-poo" "gerbil-crypto" "gerbil-persist" "gerbil-ethereum" - "gerbil-libp2p" "smug-gerbil")) ... + "gerbil-libp2p" "smug-gerbil" "ftw")) ... "glow-lang"]) diff --git a/cardano/haskell-types/client.ss b/cardano/haskell-types/client.ss index 6fa8a68c..b7efd6a5 100644 --- a/cardano/haskell-types/client.ss +++ b/cardano/haskell-types/client.ss @@ -2,7 +2,7 @@ (import :clan/poo/object (except-in :clan/poo/number Int) :clan/poo/mop :clan/poo/type - (only-in :mukn/ethereum/types delay-type) + (only-in :clan/ethereum/types delay-type) ../poo-extensions) diff --git a/cardano/haskell-types/data.ss b/cardano/haskell-types/data.ss index e41bb8bc..612f72b4 100644 --- a/cardano/haskell-types/data.ss +++ b/cardano/haskell-types/data.ss @@ -2,7 +2,7 @@ (import :clan/poo/object (except-in :clan/poo/number Int) :clan/poo/mop :clan/poo/type - (only-in :mukn/ethereum/types delay-type) + (only-in :clan/ethereum/types delay-type) ../poo-extensions) diff --git a/cardano/smart-contract-backend.ss b/cardano/smart-contract-backend.ss index e6be4b7f..5003ccca 100644 --- a/cardano/smart-contract-backend.ss +++ b/cardano/smart-contract-backend.ss @@ -5,7 +5,7 @@ (import :clan/exception :clan/logger - :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/net/request :std/text/json :std/misc/ports :std/misc/process :std/misc/repr :clan/poo/object :clan/poo/brace ./util ./haskell-types/client) diff --git a/cardano/wallet.ss b/cardano/wallet.ss index 101369fc..b0bc64c5 100644 --- a/cardano/wallet.ss +++ b/cardano/wallet.ss @@ -4,7 +4,7 @@ (import :clan/json :clan/logger - :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/logger :std/misc/ports :std/misc/shuffle :std/net/request :std/srfi/1 :std/text/json ./util) diff --git a/cli/contacts.ss b/cli/contacts.ss index 55f78c19..7c90f807 100644 --- a/cli/contacts.ss +++ b/cli/contacts.ss @@ -1,11 +1,38 @@ (export #t) (import - :std/format :std/getopt :std/iter :std/misc/hash :std/misc/number :std/sort :std/srfi/13 :std/sugar - :clan/config :clan/crypto/secp256k1 :clan/files :clan/json :clan/multicall :clan/path :clan/syntax - :clan/poo/brace :clan/poo/cli :clan/poo/io :clan/poo/mop :clan/poo/object :clan/poo/type + ;; gerbil + :std/format + :std/getopt + :std/iter + :std/misc/hash + :std/misc/number + :std/misc/path + :std/sort + :std/srfi/13 + :std/sugar + ;; gerbil-utils + :clan/config + :clan/files + :clan/json + :clan/multicall + :clan/syntax + ;; gerbil-poo + :clan/poo/brace + :clan/poo/cli + :clan/poo/io + :clan/poo/mop (only-in :clan/poo/number Nat) - :mukn/ethereum/cli :mukn/ethereum/hex :mukn/ethereum/ethereum :mukn/ethereum/known-addresses + :clan/poo/object + :clan/poo/type + ;; gerbil-crypto + :clan/crypto/secp256k1 + ;; gerbil-ethereum + :clan/ethereum/cli + :clan/ethereum/hex + :clan/ethereum/ethereum + :clan/ethereum/known-addresses + ;; glow :mukn/glow/cli/utils (only-in ./identities Identity) (rename-in ../contacts/db (add-contact add-contact.db) (list-contacts list-contacts.db))) diff --git a/cli/ethereum.ss b/cli/ethereum.ss index e66cdd01..e1afab9e 100644 --- a/cli/ethereum.ss +++ b/cli/ethereum.ss @@ -2,17 +2,19 @@ (import :gerbil/expander - :std/format :std/getopt :std/iter :std/misc/hash + :std/format :std/getopt :std/iter + :std/misc/decimal :std/misc/hash :std/sort :std/srfi/13 :std/sugar - :clan/basic-parsers :clan/cli :clan/decimal :clan/exit + :std/net/json-rpc + :std/text/basic-parsers + :clan/cli :clan/exit :clan/hash :clan/json :clan/list :clan/multicall :clan/path-config - :clan/net/json-rpc :clan/poo/object :clan/poo/brace :clan/poo/cli :clan/poo/debug :clan/persist/db - :mukn/ethereum/network-config :mukn/ethereum/types :mukn/ethereum/hex - :mukn/ethereum/ethereum :mukn/ethereum/known-addresses - :mukn/ethereum/json-rpc :mukn/ethereum/transaction :mukn/ethereum/cli - :mukn/ethereum/testing :mukn/ethereum/erc20 + :clan/ethereum/network-config :clan/ethereum/types :clan/ethereum/hex + :clan/ethereum/ethereum :clan/ethereum/known-addresses + :clan/ethereum/json-rpc :clan/ethereum/transaction :clan/ethereum/cli + :clan/ethereum/testing :clan/ethereum/erc20 ./contacts ./identities) (define-entry-point (transfer @@ -81,7 +83,7 @@ (json-rpc faucetUrl "faucet_sendFunds" (vector to) result-decoder: bytes<-0x param-encoder: (.@ (Tuple Address) .json<-) - timeout: 15 log: write-json-ln)) + log: write-json-ln)) (def tx (eth_getTransactionByHash txHash)) (printf "Transaction:\n ~s\nWaiting for confirmation...\n" (sexp<- TransactionInformation tx)) (def receipt (debug-confirm-tx tx)) @@ -132,8 +134,7 @@ (set! erc20 (parse-address (or erc20 (error "Missing recipient. Please use option --erc20")))) (set! value (with-catch (lambda _ (error "Missing or invalid value. Please use option --value")) - (cut call-with-input-string - value (lambda (port) (begin0 (expect-natural port) (expect-eof port)))))) + (cut parse-string (parse-to-eof parse-natural) value))) (printf "\nSending ~a tokens from ~a to ~a on ERC20 contract ~a on network ~a...\n" value (0x<-address from) (0x<-address to) (0x<-address to) network) ;; TODO: use a function to correctly print with the right number of decimals, diff --git a/cli/identities.ss b/cli/identities.ss index fcb025f7..0a49af06 100644 --- a/cli/identities.ss +++ b/cli/identities.ss @@ -1,12 +1,41 @@ (export #t) (import - :std/crypto :std/getopt :std/format :std/iter :std/misc/hash :std/srfi/13 :std/sugar :std/text/hex - :clan/base :clan/files :clan/hash :clan/json :clan/multicall :clan/path :clan/syntax - :clan/crypto/random :clan/crypto/secp256k1 - :clan/poo/brace :clan/poo/cli :clan/poo/io :clan/poo/mop :clan/poo/object :clan/poo/type - :mukn/ethereum/cli :mukn/ethereum/hex :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/network-config - :mukn/ethereum/json-rpc + ;; gerbil + :std/crypto + :std/getopt + :std/format + :std/iter + :std/misc/hash + :std/misc/path + :std/srfi/13 + :std/sugar + :std/text/hex + ;; gerbil-utils + :clan/base + :clan/files + :clan/hash + :clan/json + :clan/multicall + :clan/syntax + ;; gerbil-crypto + :clan/crypto/random + :clan/crypto/secp256k1 + ;; gerbil-poo + :clan/poo/brace + :clan/poo/cli + :clan/poo/io + :clan/poo/mop + :clan/poo/object + :clan/poo/type + ;; gerbil-ethereum + :clan/ethereum/cli + :clan/ethereum/hex + :clan/ethereum/ethereum + :clan/ethereum/known-addresses + :clan/ethereum/network-config + :clan/ethereum/json-rpc + ;; glow (rename-in ../contacts/db (add-contact add-contact.db) (add-identity add-identity.db)) (only-in ../contacts/keys decrypt-secret-key encrypt-secret-key secret-key-cipher)) diff --git a/cli/interaction.ss b/cli/interaction.ss index 426622de..98f53e7d 100644 --- a/cli/interaction.ss +++ b/cli/interaction.ss @@ -1,21 +1,65 @@ (export #t) (import - :gerbil/expander :gerbil/gambit/threads :gerbil/gambit/ports - :std/format :std/generic :std/getopt :std/iter :std/misc/hash :std/misc/repr :std/misc/string :std/pregexp - :std/sort :std/srfi/1 :std/srfi/13 :std/sugar :std/text/json - :clan/base :clan/cli :clan/config :clan/exit :clan/filesystem :clan/hash :clan/json - :clan/multicall :clan/path :clan/path-config :clan/string :clan/syntax - :clan/poo/brace :clan/poo/cli :clan/poo/debug :clan/poo/object - :clan/persist/db :clan/persist/content-addressing :clan/versioning :clan/pure/dict/symdict - :mukn/ethereum/assets :mukn/ethereum/cli :mukn/ethereum/ethereum :mukn/ethereum/network-config - :mukn/ethereum/types :mukn/ethereum/json-rpc :mukn/ethereum/known-addresses - :mukn/ethereum/test-contracts ; TODO: should this be more "dynamic", only imported when the network is known to be pet? - :mukn/glow/runtime/participant-runtime :mukn/glow/runtime/reify-contract-parameters - :mukn/glow/runtime/program :mukn/glow/runtime/terminal-codes :mukn/glow/runtime/glow-path + ;; gerbil + :gerbil/expander + :gerbil/gambit + :std/format + :std/generic + :std/getopt + :std/iter + :std/misc/hash + :std/misc/path + :std/misc/repr + :std/misc/string + :std/pregexp + :std/sort + :std/srfi/1 + :std/srfi/13 + (only-in :std/stxutil symbolify) + :std/sugar + :std/text/json + ;; gerbil-utils + :clan/base + :clan/cli + :clan/config + :clan/exit + :clan/filesystem + :clan/hash + :clan/json + :clan/multicall + :clan/path-config + :clan/string + ;; gerbil-poo + :clan/poo/brace + :clan/poo/cli + :clan/poo/debug + :clan/poo/object + :clan/persist/db + :clan/persist/content-addressing + :clan/versioning + :clan/pure/dict/symdict + ;; gerbil-ethereum + :clan/ethereum/assets + :clan/ethereum/cli + :clan/ethereum/ethereum + :clan/ethereum/network-config + :clan/ethereum/types + :clan/ethereum/json-rpc + :clan/ethereum/known-addresses + :clan/ethereum/test-contracts ; TODO: should this be more "dynamic", only imported when the network is known to be pet? + ;; glow + :mukn/glow/runtime/participant-runtime + :mukn/glow/runtime/reify-contract-parameters + :mukn/glow/runtime/program + :mukn/glow/runtime/terminal-codes + :mukn/glow/runtime/glow-path (only-in :mukn/glow/compiler/alpha-convert/alpha-convert init-syms) - :mukn/glow/compiler/passes :mukn/glow/compiler/multipass :mukn/glow/compiler/syntax-context - :mukn/glow/cli/contacts :mukn/glow/cli/identities + :mukn/glow/compiler/passes + :mukn/glow/compiler/multipass + :mukn/glow/compiler/syntax-context + :mukn/glow/cli/contacts + :mukn/glow/cli/identities ./utils) (def (ask-option name options) diff --git a/cli/utils.ss b/cli/utils.ss index ab395a24..18421a65 100644 --- a/cli/utils.ss +++ b/cli/utils.ss @@ -2,7 +2,7 @@ ;; TODO the contents of this file should be upstreamed to gerbil-utils/cli ;; Not upstreamed yet because there is a dependency on ;; :glow/runtime/terminal-codes (which should be upstreamed eventually as well). -(import :clan/base :gerbil/gambit/ports :mukn/glow/runtime/terminal-codes) +(import :clan/base :gerbil/gambit :mukn/glow/runtime/terminal-codes) (def (display-prompt name) (displayln CYAN name) diff --git a/compiler/checkpointify/checkpointify.ss b/compiler/checkpointify/checkpointify.ss index 27c51841..b6570862 100644 --- a/compiler/checkpointify/checkpointify.ss +++ b/compiler/checkpointify/checkpointify.ss @@ -3,6 +3,7 @@ (import :std/format :std/iter :std/misc/list :std/srfi/1 + :std/values (for-template :mukn/glow/compiler/syntax-context) :mukn/glow/compiler/syntax-context :mukn/glow/compiler/alpha-convert/fresh diff --git a/compiler/common.ss b/compiler/common.ss index 00078369..3299d9eb 100644 --- a/compiler/common.ss +++ b/compiler/common.ss @@ -1,6 +1,6 @@ (export #t) -(import :gerbil/gambit/bytes :gerbil/gambit/hash +(import :gerbil/gambit :std/misc/repr :std/format :std/iter :std/misc/list :std/misc/hash @@ -41,7 +41,7 @@ ;; stx-atomic-literal? : Any -> Bool (def (stx-atomic-literal? stx) (def e (stx-e stx)) - (or (integer? e) (string? e) (bytes? e) (boolean? e) (stx-unit? e))) + (or (integer? e) (string? e) (u8vector? e) (boolean? e) (stx-unit? e))) (def (stx-unit? stx) (syntax-case stx (@tuple) diff --git a/compiler/method-resolve/method-resolve.ss b/compiler/method-resolve/method-resolve.ss index 2ec41461..e1dda479 100644 --- a/compiler/method-resolve/method-resolve.ss +++ b/compiler/method-resolve/method-resolve.ss @@ -14,17 +14,13 @@ methods-id-back-table=?) -(import :gerbil/gambit/exact - :gerbil/gambit/bytes - :gerbil/gambit/exceptions +(import :gerbil/gambit :std/format :std/iter :std/misc/list :std/misc/repr :std/misc/hash :std/srfi/1 - (only-in :gerbil/gambit/ports output-port-readtable output-port-readtable-set!) - (only-in :gerbil/gambit/readtables readtable-sharing-allowed?-set) :clan/base :clan/pure/dict/symdict :mukn/glow/compiler/syntax-context diff --git a/compiler/multipass.ss b/compiler/multipass.ss index 1f1ebcd5..b2256db2 100644 --- a/compiler/multipass.ss +++ b/compiler/multipass.ss @@ -18,10 +18,23 @@ ;; to describe how it relates to the "main" data. (import - :std/format :std/iter :std/misc/ports :std/misc/string - :std/srfi/1 :std/srfi/13 :std/sugar - :clan/base :clan/files :clan/path :clan/path-config - :mukn/glow/compiler/common :mukn/glow/path-config :mukn/glow/runtime/glow-path) + ;; gerbil + :std/format + :std/iter + :std/misc/path + :std/misc/ports + :std/misc/string + :std/srfi/1 + :std/srfi/13 + :std/sugar + ;; gerbil-utils + :clan/base + :clan/files + :clan/path-config + ;; glow + :mukn/glow/compiler/common + :mukn/glow/path-config + :mukn/glow/runtime/glow-path) ;; A "layer" of language has a name, a reader and a writer. ;; - The name, a symbol, is also the file extension of corresponding source files (e.g. 'glow => ".glow"). diff --git a/compiler/parse/expressions.ss b/compiler/parse/expressions.ss index f4304c0b..1cbc323b 100644 --- a/compiler/parse/expressions.ss +++ b/compiler/parse/expressions.ss @@ -1,4 +1,8 @@ -(import :drewc/smug :mukn/glow/compiler/parse/lexical :std/iter :std/misc/list) +(import + :std/iter + :std/misc/list + :drewc/smug + :mukn/glow/compiler/parse/lexical) (export #t) diff --git a/compiler/parse/lexical.ss b/compiler/parse/lexical.ss index 8c701dea..0e28af3b 100644 --- a/compiler/parse/lexical.ss +++ b/compiler/parse/lexical.ss @@ -1,8 +1,8 @@ (export #t) (import - :std/generic - :drewc/smug - :std/srfi/13) + :std/generic + :std/srfi/13 + :drewc/smug) ;; TODO: Upstream to :drewc/smug-gerbil (def (sat-token-reader? p (reader token-value)) diff --git a/compiler/participantify/participantify.ss b/compiler/participantify/participantify.ss index 205b8fc7..52891af3 100644 --- a/compiler/participantify/participantify.ss +++ b/compiler/participantify/participantify.ss @@ -1,6 +1,6 @@ (export #t) -(import :std/format :std/iter +(import :std/format :std/iter :std/values :std/misc/list :std/srfi/1 :std/misc/repr :clan/debug ;; DEBUG diff --git a/compiler/project/runtime-2.ss b/compiler/project/runtime-2.ss index 4c8b220b..cbdff232 100644 --- a/compiler/project/runtime-2.ss +++ b/compiler/project/runtime-2.ss @@ -3,16 +3,16 @@ :std/assert :std/misc/channel :std/sugar - :gerbil/gambit/threads + :gerbil/gambit :clan/base :clan/poo/object :clan/poo/type :clan/concurrency :clan/crypto/random :clan/crypto/secp256k1 - :mukn/ethereum/types - :mukn/ethereum/ethereum - :mukn/ethereum/known-addresses)) + :clan/ethereum/types + :clan/ethereum/ethereum + :clan/ethereum/known-addresses)) (import :std/assert :std/format @@ -22,9 +22,8 @@ :std/misc/channel :std/sugar :std/text/json - :gerbil/gambit/threads - (only-in :gerbil/gambit/ports output-port-readtable output-port-readtable-set! read-u8) - (only-in :gerbil/gambit/readtables readtable-sharing-allowed?-set) + (only-in :gerbil/gambit output-port-readtable output-port-readtable-set! read-u8 + readtable-sharing-allowed?-set) :clan/base :clan/pure/dict/assq :clan/concurrency @@ -36,9 +35,9 @@ (only-in :clan/poo/type Sum define-sum-constructors) :clan/pure/dict/dicteq :mukn/glow/compiler/syntax-context - :mukn/ethereum/types - :mukn/ethereum/ethereum - :mukn/ethereum/known-addresses) + :clan/ethereum/types + :clan/ethereum/ethereum + :clan/ethereum/known-addresses) (def (set-caddr! p v) (set-car! (cddr p) v)) (def (set-cadddr! p v) (set-car! (cdddr p) v)) @@ -305,7 +304,7 @@ ;; get-balance : Address -> Nat (def (get-balance p) - ; TODO: (eth_getBalance p 'pending) from :mukn/ethereum/json-rpc + ; TODO: (eth_getBalance p 'pending) from :clan/ethereum/json-rpc 1) ;; get-balances : [Listof Address] -> [Dicteqof Address Nat] diff --git a/compiler/project/t/project-test.ss b/compiler/project/t/project-test.ss index afbe011f..618c22fb 100755 --- a/compiler/project/t/project-test.ss +++ b/compiler/project/t/project-test.ss @@ -7,8 +7,7 @@ (import :std/test :mukn/glow/t/common - :gerbil/gambit/exceptions - :gerbil/gambit/continuations + :gerbil/gambit :std/format :std/iter :std/pregexp diff --git a/compiler/typecheck/t/typecheck-test.ss b/compiler/typecheck/t/typecheck-test.ss index a1ceaccf..959b5cc0 100755 --- a/compiler/typecheck/t/typecheck-test.ss +++ b/compiler/typecheck/t/typecheck-test.ss @@ -5,8 +5,7 @@ (export #t) (import :std/test - :gerbil/gambit/exceptions - :gerbil/gambit/continuations + :gerbil/gambit :std/iter :std/format :std/misc/list diff --git a/compiler/typecheck/typecheck.ss b/compiler/typecheck/typecheck.ss index fee3b1da..f0cd214e 100644 --- a/compiler/typecheck/typecheck.ss +++ b/compiler/typecheck/typecheck.ss @@ -8,9 +8,7 @@ :mukn/glow/compiler/typecheck/variance :mukn/glow/compiler/typecheck/type)) -(import :gerbil/gambit/exact - :gerbil/gambit/bytes - :gerbil/gambit/exceptions +(import :gerbil/gambit :std/format :std/iter @@ -1191,7 +1189,7 @@ (else type:Nat))) ; Nat when non-negative, more specific ((boolean? e) type:Bool) ((string? e) type:Bytes) ; represent as bytess using UTF-8 - ((bytes? e) type:Bytes) + ((u8vector? e) type:Bytes) ((and (pair? e) (length=n? e 1) (equal? (stx-e (car e)) '@tuple)) type:Unit) (else (error 'tc-literal "unrecognized literal")))) @@ -1202,7 +1200,7 @@ (cond ((exact-integer? e) type:Int) ; never Nat, Int is more permissive ((boolean? e) type:Bool) ((string? e) type:Bytes) - ((bytes? e) type:Bytes) + ((u8vector? e) type:Bytes) (else (error 'tc-pat-literal "unrecognized literal")))) ;; tc-switch-cases : MPart Env TypingScheme [Listof SwitchCaseStx] -> TypingScheme diff --git a/contacts/db.ss b/contacts/db.ss index b90e25de..aa7ac7a7 100644 --- a/contacts/db.ss +++ b/contacts/db.ss @@ -6,24 +6,29 @@ get-identities add-identity delete-identity-by-address delete-identity-by-nickname) (import - (only-in :clan/base vector->values) - (only-in :clan/config xdg-config-home) - (only-in :clan/list remove-duplicates) - (only-in :clan/path path-parent) - (only-in :clan/poo/object .@ with-slots) - (only-in :gerbil/gambit/os file-size) - :std/crypto - :std/db/dbi - (only-in :std/db/sqlite sqlite-open) - (only-in :std/iter for for/collect) - (only-in :std/misc/hash hash-ref-set!) - (only-in :std/sort sort) - (only-in :std/srfi/1 append-map first) - :std/sugar - :std/text/json - (only-in :mukn/ethereum/assets asset-table) - (only-in :mukn/ethereum/network-config ethereum-networks) - (only-in ./keys secret-key-ciphers)) + ;; gerbil + (only-in :gerbil/gambit file-size) + (only-in :std/misc/path path-parent) + :std/crypto + :std/db/dbi + (only-in :std/db/sqlite sqlite-open) + (only-in :std/iter for for/collect) + (only-in :std/misc/hash hash-ref-set!) + (only-in :std/sort sort) + (only-in :std/srfi/1 append-map first) + :std/sugar + :std/text/json + (only-in :std/values vector->values) + ;; gerbil-utils + (only-in :clan/base vector->values) + (only-in :clan/config xdg-config-home) + (only-in :clan/list remove-duplicates) + (only-in :clan/poo/object .@ with-slots) + ;; gerbil-ethereum + (only-in :clan/ethereum/assets asset-table) + (only-in :clan/ethereum/network-config ethereum-networks) + ;; glow + (only-in ./keys secret-key-ciphers)) ;; The global contacts database connection handle. (def contact-db #f) diff --git a/contacts/keys.ss b/contacts/keys.ss index 19c1252d..8b09094c 100644 --- a/contacts/keys.ss +++ b/contacts/keys.ss @@ -4,9 +4,12 @@ (export #t) (import - :gerbil/gambit/bytes :gerbil/gambit/os + ;; gerbil + :gerbil/gambit :std/crypto - :clan/config) + ;; gerbil-utils + :clan/config + :clan/io) ;; The key used to encrypt all secret keys. (def global-key #f) @@ -24,13 +27,6 @@ (map (lambda (cipher) (cons (cipher-name cipher) cipher)) [cipher::aes-256-ctr]))) -;; Read some random bytes from the operating system. -;; These bytes are used directly as secret keys and IVs, -;; so they had better have high entropy. -(def (read-random-bytes n-bytes) - (call-with-input-file "/dev/urandom" - (cut read-bytes n-bytes <>))) - ;; Read or create a global key, stored as raw bytes on disk. ;; TODO: Obtain key from an OS-level key management service. (def (ensure-global-key!) @@ -40,15 +36,13 @@ (cond ((file-exists? key-path) (if (= key-length (file-size key-path)) (set! global-key (call-with-input-file key-path - (cut read-bytes key-length <>))) + (cut unmarshal-n-u8 key-length <>))) (error "Global key length does not match secret key cipher" (cipher-name secret-key-cipher)))) (else - (set! global-key (read-random-bytes key-length)) - (with-output-to-file [path: (global-key-path) - permissions: #o600] - (lambda () - (write-bytes global-key))))))) + (set! global-key (random-bytes key-length)) + (call-with-output-file [path: (global-key-path) permissions: #o600] + (cut write-u8vector global-key <>)))))) global-key) ;; Encrypt a secret key with the global key and a random IV (nonce). @@ -56,7 +50,7 @@ (let* ((cipher (and secret-key secret-key-cipher (make-cipher secret-key-cipher))) (iv (and cipher - (read-random-bytes (cipher-iv-length cipher))))) + (random-bytes (cipher-iv-length cipher))))) (if (and cipher iv secret-key) (values (encrypt cipher (ensure-global-key!) iv secret-key) iv) (values #f #f)))) diff --git a/contacts/server.ss b/contacts/server.ss index 117ccbf0..aee93a88 100644 --- a/contacts/server.ss +++ b/contacts/server.ss @@ -2,16 +2,23 @@ (export #t) +;; FIX FTW AND UNCOMMENT +#| (import (only-in :clan/config xdg-config-home) - (only-in :gerbil/gambit path-expand) - (only-in :gerbil/gambit/exceptions error-exception?) - (only-in :gerbil/gambit/threads thread-join! thread-state thread-state-running?) + (only-in :gerbil/gambit path-expand error-exception?) + ;;(only-in :gerbil/gambit thread-join! thread-state thread-state-running?) (only-in :std/srfi/1 first) (only-in :std/srfi/13 string-trim) - :clan/multicall + (only-in :clan/multicall define-entry-point) :drewc/ftw - :std/format :std/getopt :std/iter :std/misc/hash :std/net/uri :std/sugar :std/text/json + :std/format + :std/getopt + :std/iter + :std/misc/hash + :std/net/uri + :std/sugar + :std/text/json ./db ./transactions ../compiler/multipass ../runtime/glow-path) @@ -209,3 +216,4 @@ (printf "Glow contacts server running at ~a~%" address)) ;; TODO: Deamonize. (thread-join! server))) +|# diff --git a/contacts/transactions.ss b/contacts/transactions.ss index b355f4ff..d5efa6e1 100644 --- a/contacts/transactions.ss +++ b/contacts/transactions.ss @@ -4,8 +4,7 @@ (import :clan/ffi - :gerbil/gambit/ports - :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/db/dbi :std/format diff --git a/env.sh b/env.sh index f7b913b0..1f5ef42a 100644 --- a/env.sh +++ b/env.sh @@ -21,12 +21,12 @@ GERBIL_PACKAGE=gerbil-unstable #srcdir="$(realpath "$GLOW_SRC/..")" ### export GERBIL_LOADPATH=$GLOW_SRC:$srcdir/gerbil-utils # Don't change the GERBIL_LOADPATH, instead configure your gxpkg with: -# gxpkg link github.com/fare/gerbil-utils $srcdir/gerbil-utils +# gxpkg link github.com/mighty-gerbils/gerbil-utils $srcdir/gerbil-utils # # Then you can use this, which assumes the clan utilities were installed via gxpkg: -. "${GERBIL_PATH:-${HOME}/.gerbil}/pkg/github.com/fare/gerbil-utils/gerbil-nix-env.sh" +. "${GERBIL_PATH:-${HOME}/.gerbil}/pkg/github.com/mighty-gerbils/gerbil-utils/gerbil-nix-env.sh" -export GERBIL_ETHEREUM_SRC="${GERBIL_PATH:-${HOME}/.gerbil}/pkg/github.com/fare/gerbil-ethereum" +export GERBIL_ETHEREUM_SRC="${GERBIL_PATH:-${HOME}/.gerbil}/pkg/github.com/mighty-gerbils/gerbil-ethereum" export GERBIL_LOADPATH="${GLOW_SRC}:${GERBIL_LOADPATH}:${GERBIL_ETHEREUM_SRC}" diff --git a/gerbil.pkg b/gerbil.pkg index 71fbcf45..76d74fd6 100644 --- a/gerbil.pkg +++ b/gerbil.pkg @@ -2,7 +2,7 @@ (package: mukn/glow depend: ("github.com/vyzo/gerbil-libp2p" "github.com/drewc/smug-gerbil" - "github.com/drewc/ftw" + #;"github.com/drewc/ftw" "github.com/fare/gerbil-utils" "github.com/fare/gerbil-crypto" "github.com/fare/gerbil-poo" diff --git a/ggxi b/ggxi index 5390c5e2..e12d9d40 100755 --- a/ggxi +++ b/ggxi @@ -11,18 +11,14 @@ here=$(dirname "$this") . "$here/env.sh" +# After #936 it should be just gxi -L "${here}/all-glow.ss\" "$@" + +exprs="(load\"${here}/all-glow.ss\")" case "${1-}" in - --swank) swank=(-e "(spawn/name'swank\`,start-swank)") ; shift ;; + --swank) exprs="$expr(spawn/name'swank\`,start-swank)" ; shift ;; *) swank=() ;; esac if [ $# = 0 ] ; then - #gerbil_home=${GERBIL_HOME:-$(gxi -e '(display __gx#default-gerbil-home)')} - #interaction=("$gerbil_home/lib/init.ss" -) - interaction=(-e '(load (path-expand "lib/init.ss" (getenv "GERBIL_HOME" __gx#default-gerbil-home)))' -) + exprs="$exprs(gerbil/main#init-interactive!)(##repl-debug\`,#f\`,#f\`,#t)" fi -command=( - gxi - "${here}/all-glow.ss" - "${swank[@]}" "${interaction[@]}" "$@") - -exec "${command[@]}" +exec gxi -e "(begin$exprs)" diff --git a/main.ss b/main.ss index fcab8642..bc511e06 100755 --- a/main.ss +++ b/main.ss @@ -7,7 +7,7 @@ :clan/path-config :clan/multicall :clan/versioning :clan/crypto/secp256k1 - :mukn/ethereum/ethereum :mukn/ethereum/types + :clan/ethereum/ethereum :clan/ethereum/types :mukn/glow/all-glow :mukn/glow/compiler/syntax-context :mukn/glow/t/common :mukn/glow/cli/contacts :mukn/glow/cli/interaction :mukn/glow/cli/identities :mukn/glow/contacts/server diff --git a/path-config.ss b/path-config.ss index 26fef169..69d59e2b 100644 --- a/path-config.ss +++ b/path-config.ss @@ -1,9 +1,13 @@ (export #t) (import - :gerbil/gambit/system - :clan/base :clan/source :clan/filesystem - :clan/path :clan/path-config) + ;; gerbil + :gerbil/gambit + :std/misc/path + :std/source + ;; gerbil-utils + :clan/filesystem + :clan/path-config) ;; TODO: nix: use ${pkgs.gerbilPackages-unstable.glow-lang.src} ? ;; TODO: no nix: use gxpkg's ${GERBIL_PATH:-$HOME/.gerbil}/pkg/github.com/Glow-Lang/glow ? diff --git a/runtime/block-ctx.ss b/runtime/block-ctx.ss index 04da5d3b..8da987f5 100644 --- a/runtime/block-ctx.ss +++ b/runtime/block-ctx.ss @@ -4,7 +4,7 @@ :std/misc/list :clan/base :clan/pure/dict/assq :clan/poo/object :clan/poo/brace :clan/poo/io - :mukn/ethereum/types :mukn/ethereum/assets) + :clan/ethereum/types :clan/ethereum/assets) ;; The state for the "monad" of consensual computations, with two variants, ;; depending on whether the current participant is active or passive diff --git a/runtime/consensus-code-generator.ss b/runtime/consensus-code-generator.ss index 004c4685..c02b064c 100644 --- a/runtime/consensus-code-generator.ss +++ b/runtime/consensus-code-generator.ss @@ -1,15 +1,15 @@ (export #t) (import - :std/assert :std/iter - :std/misc/hash :std/misc/list :std/misc/number + :std/assert :std/iter :std/stxutil + :std/misc/bytes :std/misc/hash :std/misc/list :std/misc/number :std/sort :std/srfi/1 :std/sugar - :clan/base :clan/number :clan/syntax + :clan/base :clan/poo/io :clan/poo/object :clan/poo/brace :clan/poo/debug - :mukn/ethereum/ethereum :mukn/ethereum/assembly :mukn/ethereum/evm-runtime - :mukn/ethereum/assets :mukn/ethereum/types + :clan/ethereum/ethereum :clan/ethereum/assembly :clan/ethereum/evm-runtime + :clan/ethereum/assets :clan/ethereum/types (only-in :mukn/glow/compiler/common hash-kref) ./program) @@ -435,7 +435,7 @@ ((<= len 32) ;; TODO: have a more general notion of immediate vs boxed type? (if (symbol? expr) (load-immediate-variable self function-name expr type) ;; reading a variable - (nat<-bytes (bytes<- type expr)))) ;; constant + (u8vector->nat (bytes<- type expr)))) ;; constant (else (if (symbol? expr) (lookup-variable-offset self function-name expr) ;; referring to a variable by offset @@ -481,7 +481,7 @@ (def (compute-variable-offsets self code-block-label) (assert! (symbol? code-block-label)) (def frame-variables (make-hash-table)) - ;; Initial offset computed by global registers, see :mukn/ethereum/evm-runtime + ;; Initial offset computed by global registers, see :clan/ethereum/evm-runtime (def frame-size params-start@) (def live-variables (lookup-live-variables (.@ self program) (.@ self name) code-block-label)) (for-each diff --git a/runtime/glow-path.ss b/runtime/glow-path.ss index 16a08f7f..4ade7b16 100644 --- a/runtime/glow-path.ss +++ b/runtime/glow-path.ss @@ -1,13 +1,26 @@ (export #t) (import - :std/assert :std/getopt :std/iter - :std/misc/hash :std/misc/string + ;; gerbil + :std/assert + :std/getopt + :std/iter + :std/misc/hash + :std/misc/path + :std/misc/string :std/sort :std/srfi/13 :std/sugar - :clan/cli :clan/config :clan/filesystem :clan/hash :clan/multicall - :clan/config :clan/path :clan/path-config :clan/string + ;; gerbil-utils + :clan/cli + :clan/config + :clan/filesystem + :clan/hash + :clan/multicall + :clan/config + :clan/path-config + :clan/string + ;; gerbil-poo :clan/poo/cli) (def glow-install-path (source-path)) diff --git a/runtime/p2p.ss b/runtime/p2p.ss index 39746323..8e39b5a0 100644 --- a/runtime/p2p.ss +++ b/runtime/p2p.ss @@ -1,19 +1,18 @@ ;; ~~~~~~~~ p2p.ss ~~~~~~~~~ ;; p2p communication methods for glow - +#| TODO: fix me, uncomment (export #t) (import :std/iter - :std/net/bio +#; :std/net/bio :std/srfi/13 :std/misc/channel - :mukn/ethereum/ethereum - :gerbil/gambit/threads + :clan/ethereum/ethereum :clan/concurrency - :vyzo/libp2p - :vyzo/libp2p/client - :vyzo/libp2p/daemon) +#; :vyzo/libp2p +#; :vyzo/libp2p/client +#; :vyzo/libp2p/daemon) (def POLL_MAX_WINDOW 10) @@ -178,3 +177,4 @@ (pubsub-subscribe boot-c "chat") (values boot-c boot-d))) +|# diff --git a/runtime/participant-runtime.ss b/runtime/participant-runtime.ss index 4a6e8b4c..aa50e218 100644 --- a/runtime/participant-runtime.ss +++ b/runtime/participant-runtime.ss @@ -1,30 +1,72 @@ (export #t) (import - :clan/debug - :gerbil/gambit/bits :gerbil/gambit/bytes :gerbil/gambit/threads :gerbil/gambit/ports :std/net/bio - :gerbil/gambit - :std/assert :std/crypto :std/format :std/iter + ;; gerbil + (for-syntax :std/stxutil) + (only-in :gerbil/runtime load-module) + (only-in :std/assert assert!) ;; TODO: use std/error#check-argument instead + :std/crypto + :std/format + :std/iter + :std/misc/channel + :std/misc/hash + :std/misc/list + :std/misc/number + :std/misc/path :std/misc/threads - :std/misc/hash :std/misc/list :std/misc/number :std/misc/uuid :std/misc/channel :std/text/utf8 :std/text/base64 - :std/os/pid :std/os/signal + :std/misc/uuid + :std/text/base64 + :std/text/utf8 + :std/os/pid + :std/os/signal :std/pregexp :std/sort - :std/srfi/1 :std/srfi/13 + :std/srfi/1 + :std/srfi/13 + :std/source :std/sugar - :std/text/base64 :std/text/json :std/text/csv :std/db/sqlite :std/db/dbi :std/iter - (for-syntax :std/stxutil) - :gerbil/gambit/exceptions - :clan/base :clan/exception :clan/io :clan/json :clan/net/tcp :clan/number :clan/pure/dict/assq - :clan/path :clan/path-config :clan/ports :clan/syntax :clan/timestamp - :clan/poo/object :clan/poo/brace :clan/poo/io :clan/poo/debug :clan/debug :clan/crypto/random - :clan/persist/content-addressing :clan/shell - :mukn/ethereum/hex :mukn/ethereum/ethereum :mukn/ethereum/network-config :mukn/ethereum/json-rpc - :mukn/ethereum/transaction :mukn/ethereum/tx-tracker :mukn/ethereum/watch :mukn/ethereum/assets - :mukn/ethereum/evm-runtime :mukn/ethereum/contract-config :mukn/ethereum/assembly :mukn/ethereum/types - :mukn/ethereum/nonce-tracker + :std/text/base64 + :std/text/csv + :std/text/json + :std/db/sqlite + :std/db/dbi + :std/iter + ;; gerbil-utils + :clan/base + :clan/debug + :clan/exception + :clan/io + :clan/json + :clan/net/tcp + :clan/pure/dict/assq + :clan/path-config + :clan/ports + :clan/shell + :clan/timestamp + ;; gerbil-poo + :clan/poo/object + :clan/poo/brace + :clan/poo/io + :clan/poo/debug + ;; gerbil-crypto + :clan/crypto/random + ;; gerbil-persist + :clan/persist/content-addressing + ;; gerbil-ethereum + (only-in :clan/ethereum/assets Asset native-asset?) + (only-in :clan/ethereum/contract-config verify-contract-config + contract-config<-creation-receipt ContractConfig) + :clan/ethereum/evm-runtime + :clan/ethereum/hex + :clan/ethereum/network-config + :clan/ethereum/nonce-tracker + :clan/ethereum/transaction + :clan/ethereum/tx-tracker + :clan/ethereum/types + :clan/ethereum/watch + ;; :vyzo/libp2p + ;; glow (only-in :mukn/glow/compiler/common hash-kref) - :vyzo/libp2p (only-in ../compiler/alpha-convert/env symbol-refer) ./program ./block-ctx ./consensus-code-generator ./terminal-codes ./pb/private-key @@ -452,7 +494,7 @@ (.@ self current-code-block-label) (.@ self role))) (def frame-variable-bytes (marshal-product-f frame-variables)) - (def frame-length (bytes-length frame-variable-bytes)) + (def frame-length (u8vector-length frame-variable-bytes)) (marshal UInt16 frame-length out) (marshal-product-to frame-variables out)) @@ -511,7 +553,7 @@ value))) ((boolean? expression) expression) ((string? expression) (string->bytes expression)) - ((bytes? expression) expression) + ((u8vector? expression) expression) ((integer? expression) expression) ;; TODO: reduce other trivial expressions (else @@ -996,6 +1038,7 @@ (.call io-channel .close) (.call tcp-channel .close)) })) +#; ;; FIX P2P AND UNCOMMENT (define-type (Libp2pChannel @ []) .make: (lambda (my-nickname host-address contacts circuit-relay-address pubsub-node) (let () @@ -1051,7 +1094,6 @@ ;; Get and Broadcast identity (def self (libp2p-identify libp2p-client)) (for (p (peer-info->string* self)) - (displayln "I am " p)) ;; Find your Blockchain Addr from your Nickname @@ -1189,6 +1231,7 @@ (let () (def tcp-options (hash-ref options 'tcp-options)) (.call TcpChannel .make tcp-options))) + #; ;; FIX P2P AND UNCOMMENT ('libp2p (let () (def my-nickname (hash-ref options 'my-nickname)) (def host-address (hash-ref options 'host-address)) diff --git a/runtime/program.ss b/runtime/program.ss index 5802fcb6..a5758943 100644 --- a/runtime/program.ss +++ b/runtime/program.ss @@ -4,8 +4,8 @@ :std/iter :std/sugar :std/misc/list :std/srfi/1 :clan/base :clan/pure/dict/symdict :clan/poo/object :clan/poo/io :clan/poo/object :clan/poo/brace :clan/poo/debug - :mukn/ethereum/types - :mukn/ethereum/ethereum + :clan/ethereum/types + :clan/ethereum/ethereum (only-in ../compiler/common hash-kref) (only-in ../compiler/alpha-convert/alpha-convert init-syms) ../compiler/typecheck/type diff --git a/runtime/reify-contract-parameters.ss b/runtime/reify-contract-parameters.ss index 79ec176a..2147dfd9 100644 --- a/runtime/reify-contract-parameters.ss +++ b/runtime/reify-contract-parameters.ss @@ -1,11 +1,13 @@ (export run) +(def (run . _) (error "FIX ME")) ;; FIX and uncomment +#| (import :std/format :std/iter :std/pregexp :std/misc/string :std/text/json :clan/debug :clan/ffi :clan/json :clan/poo/object :clan/poo/mop :clan/poo/debug :clan/path-config :clan/pure/dict/symdict - :gerbil/gambit/ports - :mukn/ethereum/network-config :mukn/ethereum/json-rpc + :gerbil/gambit + :clan/ethereum/network-config :clan/ethereum/json-rpc :mukn/glow/compiler/syntax-context :mukn/glow/compiler/multipass :mukn/glow/compiler/passes (only-in ../compiler/alpha-convert/env symbol-refer) (only-in ../compiler/common hash-kref) @@ -60,3 +62,4 @@ (.@ runtime current-debug-label)) (program-environment-type-value-pairs program (.@ runtime environment)))) +|# diff --git a/runtime/t/consensus-code-generator-integrationtest.ss b/runtime/t/consensus-code-generator-integrationtest.ss index 056dfa90..f537b196 100644 --- a/runtime/t/consensus-code-generator-integrationtest.ss +++ b/runtime/t/consensus-code-generator-integrationtest.ss @@ -4,9 +4,9 @@ :std/test :clan/assert :clan/poo/object - :mukn/ethereum/json-rpc - :mukn/ethereum/assets - :mukn/ethereum/test-contracts + :clan/ethereum/json-rpc + :clan/ethereum/assets + :clan/ethereum/test-contracts ../../compiler/multipass ../consensus-code-generator ../glow-path diff --git a/runtime/terminal-codes.ss b/runtime/terminal-codes.ss index 56badd79..37883823 100644 --- a/runtime/terminal-codes.ss +++ b/runtime/terminal-codes.ss @@ -1,6 +1,6 @@ (export #t) -(import :gerbil/gambit/os) +(import :gerbil/gambit) (def TTY (tty? (current-output-port))) (def END (if TTY "\033[0m" "")) diff --git a/scripts/ci.ss b/scripts/ci.ss index bfaa9fc9..02ad2f74 100755 --- a/scripts/ci.ss +++ b/scripts/ci.ss @@ -3,12 +3,30 @@ ;;;; Run build and test in CI -- see glow/.github/workflows/ci.yml (import - :gerbil/gambit/exceptions :gerbil/gambit/ports - :std/format :std/getopt :std/misc/ports :std/misc/process :std/srfi/1 :std/sugar - :clan/base :clan/exit :clan/debug :clan/files :clan/git-fu :clan/json - :clan/multicall :clan/path :clan/path-config :clan/source :clan/versioning + ;; gerbil + :gerbil/gambit + :std/format + :std/getopt + :std/misc/path + :std/misc/ports + :std/misc/process + :std/srfi/1 + :std/sugar + ;; gerbil-utils + :clan/base + :clan/exit + :clan/debug + :clan/files + :clan/git-fu + :clan/json + :clan/multicall + :clan/path-config + :clan/source + :clan/versioning + ;; gerbil-poo :clan/poo/cli - :mukn/ethereum/version) + ;; gerbil-ethereum + :clan/ethereum/version) ;; Initialize paths from the environment (def here (path-directory (path-maybe-normalize (this-source-file)))) diff --git a/t/asset-swap-integrationtest.ss b/t/asset-swap-integrationtest.ss index 425596a2..deb496e6 100644 --- a/t/asset-swap-integrationtest.ss +++ b/t/asset-swap-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/bits :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/hash :std/misc/ports :std/srfi/1 @@ -14,10 +14,10 @@ :clan/persist/content-addressing :clan/persist/db :clan/versioning :clan/assert - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing :mukn/ethereum/test-contracts + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing :clan/ethereum/test-contracts ../compiler/passes ../compiler/multipass ../compiler/syntax-context diff --git a/t/buy-sig-integrationtest.ss b/t/buy-sig-integrationtest.ss index b5b36b66..6e6bf517 100644 --- a/t/buy-sig-integrationtest.ss +++ b/t/buy-sig-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/ports :std/misc/process :std/srfi/1 @@ -13,10 +13,10 @@ :clan/crypto/keccak :clan/crypto/secp256k1 :clan/persist/content-addressing :clan/persist/db :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/ethereum :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/ethereum :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing ../compiler/passes ../compiler/multipass ../compiler/syntax-context diff --git a/t/buy-sig-libp2p-both-generate-integrationtest.ss b/t/buy-sig-libp2p-both-generate-integrationtest.ss index 039a6f0c..cf80c51a 100644 --- a/t/buy-sig-libp2p-both-generate-integrationtest.ss +++ b/t/buy-sig-libp2p-both-generate-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/ports :std/misc/process :std/srfi/1 @@ -13,10 +13,10 @@ :clan/crypto/keccak :clan/crypto/secp256k1 :clan/persist/content-addressing :clan/persist/db :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/ethereum :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/ethereum :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing :vyzo/libp2p ../compiler/passes ../compiler/multipass diff --git a/t/buy-sig-libp2p-integrationtest.ss b/t/buy-sig-libp2p-integrationtest.ss index 59942536..a7245cf3 100644 --- a/t/buy-sig-libp2p-integrationtest.ss +++ b/t/buy-sig-libp2p-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/ports :std/misc/process :std/srfi/1 @@ -13,10 +13,10 @@ :clan/crypto/keccak :clan/crypto/secp256k1 :clan/persist/content-addressing :clan/persist/db :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/ethereum :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/ethereum :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing :vyzo/libp2p ../compiler/passes ../compiler/multipass diff --git a/t/buy-sig-libp2p-without-wait-for-agreement-integrationtest.ss b/t/buy-sig-libp2p-without-wait-for-agreement-integrationtest.ss index 09863278..e53a3f15 100644 --- a/t/buy-sig-libp2p-without-wait-for-agreement-integrationtest.ss +++ b/t/buy-sig-libp2p-without-wait-for-agreement-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/ports :std/misc/process :std/srfi/1 :std/srfi/13 @@ -13,10 +13,10 @@ :clan/crypto/keccak :clan/crypto/secp256k1 :clan/persist/content-addressing :clan/persist/db :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/ethereum :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/ethereum :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing :vyzo/libp2p ../compiler/passes ../compiler/multipass diff --git a/t/buy-sig-short-timeout-integrationtest.ss b/t/buy-sig-short-timeout-integrationtest.ss index cc181c0a..54086539 100644 --- a/t/buy-sig-short-timeout-integrationtest.ss +++ b/t/buy-sig-short-timeout-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/ports :std/misc/process :std/srfi/1 @@ -13,10 +13,10 @@ :clan/crypto/keccak :clan/crypto/secp256k1 :clan/persist/content-addressing :clan/persist/db :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/ethereum :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/ethereum :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing ../compiler/passes ../compiler/multipass ../compiler/syntax-context diff --git a/t/buy-sig-tcp-integrationtest.ss b/t/buy-sig-tcp-integrationtest.ss index 5e3852fa..687e9c19 100644 --- a/t/buy-sig-tcp-integrationtest.ss +++ b/t/buy-sig-tcp-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/ports :std/misc/process :std/srfi/1 @@ -14,10 +14,10 @@ :clan/persist/content-addressing :clan/persist/db :clan/timestamp :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/ethereum :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/ethereum :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing ../compiler/passes ../compiler/multipass ../compiler/syntax-context diff --git a/t/buy-sig.ss b/t/buy-sig.ss index c5763a63..7be2d19b 100644 --- a/t/buy-sig.ss +++ b/t/buy-sig.ss @@ -14,11 +14,11 @@ :clan/poo/object :clan/poo/io :clan/poo/brace :clan/crypto/keccak :clan/persist/content-addressing :clan/persist/db - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/network-config :mukn/ethereum/json-rpc + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/network-config :clan/ethereum/json-rpc :mukn/glow/runtime/participant-runtime :mukn/glow/runtime/reify-contract-parameters ;; TODO: make sure there's a one-stop-shop to all bindings required for the runtime to work. - :mukn/ethereum/assets + :clan/ethereum/assets :mukn/glow/compiler/syntax-context ) diff --git a/t/cli-integration.ss b/t/cli-integration.ss index 891bb023..0ed4fc43 100644 --- a/t/cli-integration.ss +++ b/t/cli-integration.ss @@ -13,7 +13,7 @@ ;; should instead use programmatic interfaces directly). (import - :gerbil/gambit/ports + :gerbil/gambit :std/format :std/misc/hash :std/misc/list :std/pregexp :clan/exit) diff --git a/t/coin-flip-integrationtest.ss b/t/coin-flip-integrationtest.ss index e80f3586..a1a93705 100644 --- a/t/coin-flip-integrationtest.ss +++ b/t/coin-flip-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/bits :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/hash :std/misc/ports :std/srfi/1 @@ -13,10 +13,10 @@ :clan/crypto/keccak :clan/persist/content-addressing :clan/persist/db :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing ../compiler/passes ../compiler/multipass ../compiler/syntax-context diff --git a/t/common.ss b/t/common.ss index 213078ba..91562e91 100644 --- a/t/common.ss +++ b/t/common.ss @@ -1,16 +1,29 @@ (export #t) (import - :gerbil/gambit/misc + ;; gerbil + :gerbil/gambit :gerbil/expander - :std/getopt :std/iter :std/sort - :clan/base :clan/exit :clan/filesystem :clan/multicall :clan/path :clan/path-config + :std/getopt + :std/iter + :std/misc/path + :std/sort + ;; gerbil-utils + :clan/base + :clan/exit + :clan/filesystem + :clan/multicall + :clan/path-config + ;; gerbil-poo :clan/poo/cli + ;; gerbil-persist :clan/persist/content-addressing - :mukn/ethereum/hex - :mukn/glow/path-config + ;; gerbil-ethereum + :clan/ethereum/hex + ;; glow :mukn/glow/compiler/multipass :mukn/glow/compiler/passes + :mukn/glow/path-config :mukn/glow/runtime/glow-path) ;; dapps-dir diff --git a/t/escrow-timeout-integrationtest.ss b/t/escrow-timeout-integrationtest.ss index caabec3b..a81965d1 100644 --- a/t/escrow-timeout-integrationtest.ss +++ b/t/escrow-timeout-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/bits :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/hash :std/misc/ports :std/srfi/1 @@ -13,10 +13,10 @@ :clan/crypto/keccak :clan/persist/content-addressing :clan/persist/db :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing ../compiler/passes ../compiler/multipass ../compiler/syntax-context diff --git a/t/rps-simple-integrationtest.ss b/t/rps-simple-integrationtest.ss index 52b0839e..04ca5832 100644 --- a/t/rps-simple-integrationtest.ss +++ b/t/rps-simple-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/bits :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/hash :std/misc/ports :std/srfi/1 @@ -13,10 +13,10 @@ :clan/crypto/keccak :clan/persist/content-addressing :clan/persist/db :clan/versioning - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing ../compiler/passes ../compiler/multipass ../compiler/syntax-context diff --git a/t/transfer-integrationtest.ss b/t/transfer-integrationtest.ss index dc1083c9..d1b47d85 100644 --- a/t/transfer-integrationtest.ss +++ b/t/transfer-integrationtest.ss @@ -1,7 +1,7 @@ (export #t) (import - :gerbil/gambit/bits :gerbil/gambit/os :gerbil/gambit/ports :gerbil/gambit/threads + :gerbil/gambit :std/assert :std/format :std/iter :std/misc/hash :std/misc/ports :std/srfi/1 @@ -14,10 +14,10 @@ :clan/persist/content-addressing :clan/persist/db :clan/versioning :clan/assert - :mukn/ethereum/types :mukn/ethereum/ethereum :mukn/ethereum/known-addresses :mukn/ethereum/json-rpc - :mukn/ethereum/simple-apps :mukn/ethereum/network-config :mukn/ethereum/assets - :mukn/ethereum/hex :mukn/ethereum/transaction :mukn/ethereum/types - :mukn/ethereum/testing :mukn/ethereum/test-contracts + :clan/ethereum/types :clan/ethereum/ethereum :clan/ethereum/known-addresses :clan/ethereum/json-rpc + :clan/ethereum/simple-apps :clan/ethereum/network-config :clan/ethereum/assets + :clan/ethereum/hex :clan/ethereum/transaction :clan/ethereum/types + :clan/ethereum/testing :clan/ethereum/test-contracts ../compiler/passes ../compiler/multipass ../compiler/syntax-context diff --git a/t/utils.ss b/t/utils.ss index b4e993e2..65d67b2f 100644 --- a/t/utils.ss +++ b/t/utils.ss @@ -3,8 +3,8 @@ (import :clan/debug :clan/persist/db - :mukn/ethereum/json-rpc - :mukn/ethereum/testing + :clan/ethereum/json-rpc + :clan/ethereum/testing ../runtime/participant-runtime) (def (setup-test-env) diff --git a/unit-tests.ss b/unit-tests.ss index 5f2be455..000a93df 100755 --- a/unit-tests.ss +++ b/unit-tests.ss @@ -7,7 +7,7 @@ (import :clan/path-config :clan/crypto/secp256k1 - :mukn/ethereum/types :mukn/ethereum/ethereum + :clan/ethereum/types :clan/ethereum/ethereum :mukn/glow/all-glow :mukn/glow/version :mukn/glow/t/common :mukn/glow/compiler/syntax-context :mukn/glow/cli/interaction :mukn/glow/cli/ethereum :mukn/glow/cli/contacts :mukn/glow/cli/identities :mukn/glow/runtime/glow-path)