Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documentation for exported APIs #859

Open
anorth opened this issue Nov 18, 2022 · 5 comments · May be fixed by #1210
Open

Documentation for exported APIs #859

anorth opened this issue Nov 18, 2022 · 5 comments · May be fixed by #1210

Comments

@anorth
Copy link
Member

anorth commented Nov 18, 2022

There's no direct documentation of the built-in actors exported APIs. There's only little documentation of any API, but that's been tolerable to date because the set of users is small and generally has high context already.

We should develop some kind of decent quality documentation of the syntax and semantics of APIs callable by other actors or smart contracts. Immediate motivation for this comes from EVM developers, but there's nothing EVM-specific about this documentation (I'd expect EVM library authors could derive much of their documentation from ours, though).

It's not immediately obvious what the best way to do this is.

  • Standard Rust doc tooling would include all Rust-visible methods, which is too much
  • Maintaining it separately will add some development burden and duplication
  • Custom tooling to generate it from our code structures and patterns could be good, but high effort

FYI @arajasek @raulk @ZenGround0

@jennijuju jennijuju moved this to 📋 Backlog in Network v18 Nov 25, 2022
@jennijuju jennijuju moved this from 📋 Nice To Haves to 🌟 In Scope in Network v18 Dec 7, 2022
@scotthconner
Copy link

YAGNI suggests that may be we just do it by hand for launch, and then figure out where the pain is later and determine where and how we want to put the effort into maintaining it.

@jennijuju
Copy link
Member

longfei is working on it

@jennijuju jennijuju moved this from 🌟 In Scope to 🏗 In progress in Network v18 Dec 16, 2022
@anorth anorth moved this from 🏗 In progress to 🌟 In Scope in Network v18 Jan 11, 2023
@jennijuju
Copy link
Member

@TippyFlitsUK could you please help move https://github.com/longfeiWan9/BuiltIn-Actor-API to here can be in a folder actors/docs

@anorth
Copy link
Member Author

anorth commented Feb 9, 2023

Hold on, can we discuss this?

I've had a brief look at those docs. They look like they could be mostly generated from the code by some automation? Were they?

  • If the docs contain information that's not already in the code as comments, that info should probably move there
  • If the docs are not generated by tooling, they will go out of date. Without automation, adding them here requires an explicit agreement from maintainers to manually maintain these docs (or agreement that we don't care they go out of date periodically).

@TippyFlitsUK
Copy link

@TippyFlitsUK could you please help move https://github.com/longfeiWan9/BuiltIn-Actor-API to here can be in a folder actors/docs

#1190

@jennijuju jennijuju linked a pull request Feb 14, 2023 that will close this issue
6 tasks
@anorth anorth moved this from 🌟 In Scope to 🏗 In progress in Network v18 Feb 15, 2023
@anorth anorth moved this from 🏗 In progress to 👀 In review in Network v18 Feb 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Status: 👀 In review
4 participants