Conversation
|
This pull request has been mentioned on Polkadot Forum. There might be relevant details there: |
liamaharon
left a comment
There was a problem hiding this comment.
I really like this idea.
w.r.t. the concern that we'll have too many 'minor' versions: is there a reason that we'd need to roll a new release/version every commit? what if instead, once or twice a week we took the current master and rolled a release from that, allowing us to pack multiple breaking changes into a single bump. the intermediary commits could optionally be released under a beta/rc version.
|
If we're going for lots of convenience, we might want to take another look at typical |
|
This is a cool effort. I'm glad to see you trying this. I remember Ben dreaming of a similar re-export crate several years ago.
Maybe
When I read this, alarms go off in my head. Why two sets of docs? Why not make the existing docs better and use the good ones in both places (ideally without copy-pasting if possible). What if a design change is made to frame and the developer only updates the docs in one place. What if someone stumbles upon the not-as-good docs and decides to make them better? All just things to think about. Again I like this idea overall. If you are so inclined you can look at the |
Co-authored-by: Bastian Köcher <git@kchr.de>
Co-authored-by: Bastian Köcher <git@kchr.de>
|
bot fmt |
|
@kianenigma https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/3201202 was started for your command Comment |
|
@kianenigma Command |
|
The CI pipeline was cancelled due to failure one of the required jobs. |
| sc-cli = { path = "../../../client/cli" } | ||
| sc-executor = { path = "../../../client/executor" } | ||
| sc-network = { path = "../../../client/network" } | ||
| sc-service = { path = "../../../client/service" } | ||
| sc-telemetry = { path = "../../../client/telemetry" } | ||
| sc-transaction-pool = { path = "../../../client/transaction-pool" } | ||
| sc-transaction-pool-api = { path = "../../../client/transaction-pool/api" } | ||
| sc-consensus = { path = "../../../client/consensus/common" } |
There was a problem hiding this comment.
Just thinking if there should be actual substrate::client and/or substrate::primitives namespaces?
Re-exporting everything from the substrate crate could work, but not sure if its a good or horrible idea 😆
|
Hey, is anyone still working on this? Due to the inactivity this issue has been automatically marked as stale. It will be closed if no further activity occurs. Thank you for your contributions. |
This brings in a new crate that is a mere re-export of common FRAME APIs into a new crate, and re-exports them, with better documentation.
This is WIP experiment. My initial goal is to build paritytech/polkadot-sdk-docs#3 using only this crate.
Whether it would be feasible to actually build things with it, I am not sure. Consider this an experiment for now. As a next step, I can re-build
node-template/palletsusing this crate.An end-goal is something along the lines of:
frame = { version = "X" }is the umbrella crate with which you should be a frame palletframe = { version = "X", feature = "runtime" }is the umbrella crate to build a frame-based runtime.sp_ioandsp_coredirectly.frame.frameitself, with a matching version.substrate-nodeshould be the umbrella crate for all thingssc-*related.parachain-sdkorcumulus(name tbd) should be the umbrella crate for turning both of the above into a parachain PVF and Collator, as opposed to a normal runtime and node respectively.You can see an example pallet built with this method here, and an example runtime here.
frame-macrosto work without needingframe-support,frame-systemand such being in scope. polkadot-sdk#173impl_runtime_apisdoes not work ifsp-apiis not in scope #14145frame-api?