Now pinocchio releases include a changelog, so it is easier to track what is new. 😊
The latest one includes excellent contributions from @publicqi , @BasedOrion_ , @L0STE_ and @deanmlittle:
- Efficient Instructions sysvar access
- SPL Memo client
What if we had a crate specifically designed to write on-chain Solana programs? A crate with zero-dependencies, so it does not get in the way of coding the program. Started working on this idea and got to the point of having a functional crate: pinocchio.
We need a better non-fungible standard on Solana. There is no good reason to require multiple accounts to represent a digital asset; we should have flexibility to store as little or as much data on-chain; use minimal compute; it should be composable, easy to use.
@metafrost and
pinocchio-log: lightweight log formatting for Solana programs
[tl;dr]
* Zero dependencies and no_std crate
* Independent of SDK (i.e., works with pinocchio, solana-program or anchor)
* Support for &str, unsigned and signed integer types
* log! macro to facilitate formatting
It turns out we can do better – asset transfer using ~1k CU.
This is using a custom entrypoint (nitrate) based on @cavemanloverboy's solana-nostd-entrypoint plus a few tweaks. The savings in compute are correlated with the number of accounts that the instruction receives – more
We reimagined the way of building extensible Solana programs.
Introducing Proxy - a pattern to define program interfaces. No need for "hooks" or "third-party" extensions. Proxy allows extending the behaviour of a program in a simple and non-intrusive way without adding more
Some Raffle Stats:
Tickets Sold: 51,994
Total Unique Wallets: 5706
Total Winning Entries: 240
Unique Winning Wallets: 236
Truly humbling | As @topo_g said:
Art First, No Roadmap, No Utility
489 Total Spots in a Web3 Gang 🫡