Open mradkov opened 2 years ago
Rust
: contract instance testing, cross-contract communication tests)JS
: run tests with the compiled contracts and test clients);
@egasimus:
import * from fadroma
, use *
;build
, deploy
etc. templates for instantiation
);cosmwasm_std
dependency in the main fadroma
crate itself.@aakamenov:
@denismaxim0v:
import *
is a bad practice - should explicitly import what you want, otherwise risk of name clashes;
import * from fadroma
import * as Fadroma from 'fadroma'
-> in TS it's still namespaced so no issue there.
use *
agreed (?) on:
use fadroma::* // includes cosmwasm_std
use fadroma::prelude::* // includes cosmwasm_std::*
risk of name clashes
imo the library's nomenclature shouldn't clash with the platform's either way and it doesn't, clash was downstream
Work item: dat big mysterious packages refactor.
@fadroma/deploy
(which is FS-bound) contains the ContractSlot
and TemplateSlot
classes which do the heavy lifting in the new (nearly declarative) deploys.TokenRegistry
(which is used downstream) would be a good addition to @fadroma/tokens
(which is isomorphic), but it depends on ContractSlot
and TemplateSlot
to deploy placeholder tokens on demand.TokenRegistry
(AssetRegistry
?) into @fadroma/tokens
(where it can be reused), it is necessary to move ContractSlot
and TokenRegistry
into @fadroma/client
.@fadroma/client
(which is overweight) already contains Template
and Client
. Adding the functionality of the deployment primitives TemplateSlot
and ContractSlot
onto the base clases looks to be a good way to reduce code complexity.
Operations:
;main
instead ofstable
anddev
instead ofunstable
stable
andunstable
which will serve purpose ofmain
anddev
release/x.x.x
branch tostable
(similar to gitflow)unstable
unstable
.editor.config
forJS
andRust
experimental
label and leave it aside from the main stable product until its usable and stable enough :D;Architecture:
Strategic discussion: