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

Add support for loading dynamic contracts #1255

Closed
8 tasks done
jackcmay opened this issue Sep 18, 2018 · 4 comments
Closed
8 tasks done

Add support for loading dynamic contracts #1255

jackcmay opened this issue Sep 18, 2018 · 4 comments
Assignees
Milestone

Comments

@jackcmay
Copy link
Contributor

jackcmay commented Sep 18, 2018

This issue tracks the incremental steps needed to support loading dynamic contracts in Pillbox. Future enhancements are tracked by #1564

Design of dynamic contracts is being tracked by a couple of different issues (#943, #940, #1133)

Native refers to loading platform modules (e.g. MacOs uses x86-64 Mach-0 modules). These modules are loaded from files on the machine running Solana. Their intent is for proof of concept and potentially longer-term testing of dynamic contracts. Long-term dynamic contracts will use Berkeley Packet Filter (BPF) based modules which allows them to be run on a virtual machine and are more easily validated that they are constrained and deterministic.

  • Add dynamic contracts to the bank
  • Add example native dynamic contracts and corresponding workspace changes
  • Add support for generating transactions to dynamic contracts
  • Fix clippy and general cleanup of BPF loader/jitter
  • Mainline rBPF changes to the parent repository
  • Add support for generating BPF modules to build system
  • Add BPF module loading support to dynamic contracts
  • Integrate dynamic programs with the bank
@jackcmay
Copy link
Contributor Author

#1462
#1514
#1520
#1521
#1533

@mvines
Copy link
Member

mvines commented Oct 25, 2018

Mainline rBPF changes to the parent repository

@jackcmay this is done right? And if so, this issue is too?

@jackcmay
Copy link
Contributor Author

jackcmay commented Oct 25, 2018

All of the changes we need have been mainlined as of this week (no panics, customizable verifier, etc...). Waiting for the rbpf crate owner to push a new version so we can switch back to crates.io. He has given us confirmation that it will be done by the end of the month and he has been actively involved in code review, etc... so I don't have any reason to doubt it will be done. Waiting on an exact date he expects that to happen. Once pushed and we switch over to crates.io I plan to close this issue.

@jackcmay
Copy link
Contributor Author

Woot, rbp 0.1.0 released
#1605

joncinque pushed a commit to joncinque/solana that referenced this issue May 16, 2024
This makes the slot subcommand use the same output method as bigtable
block to output blocks (-vv). Doing so creates consistency between the
two commands as well as removing a duplicate implementation in the
ledger-tool code. The shared type also supports json output which the
ledger-tool implementation did not.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants