universal-sierra-compiler's People
universal-sierra-compiler's Issues
Validate compiler against real network
We should consider creating a script which will go through every contract on a network and will try to compile its sierra
Support sierra v1.5.0
Publish on crates.io
We should consider publishing this crate on crates.io, based on the preferred way of using the compiled binary
Support 2.5.0 Sierra
New version of sierra was introduced in 2.5.0
This needs to be supported in this crate/binary as well
Install defined (not latest) version with installation script
Maintain list of USC - Sierra compatibility versions
Preferably a table in README or in release descriptions
Enable setting (currently hardcoded) parameters
Please verify if there is more ๐
USC writeup on starknet forum
We should describe:
- what it does
- how it can be useful in scope of other tools
- how we use it in snfoundry
- how and when to upgrade it
Install script does not seem to properly add usc to PATH
Not sure what is the exact problem, but running install script on macos does seem to not always be adding usc to path, eg
https://github.com/foundry-rs/starknet-foundry/actions/runs/8173634078/job/22347462794
the same thing works fine for linux though
Provide information why this is a binary, not a library
I think many people will ponder this question:
Why is this a binary and not a regular Rust crate?
Especially as for some projects, it would be much easier to consume a Rust crate. I think I get why it is this like this, but it's completely not an obvious answer. I think the README is a fine place.
Facilitate compilation of plain sierra programs
We are using in forge the cairo_lang_sierra::program::Program
class and compiling it down to CASM with cairo_lang_sierra_to_casm::compiler::compile
.
This binary should be able to compile that artifact as well
Check if the serialization is necessary
Add publishing to `crates.io` in the CI
Add installation instruction to the README
Add a github action for setup
Add smoke tests
a nice idea would be to smoke-test here but it can be added later
Originally posted by @Arcticae in #8 (comment)
Create E2E tests
We should create a bunch of e2e tests to check the binary.
Those can be similar to sncasts' e2e tests
Publish as a crate on crates.io
We should expose some public API (if not already sufficient) and publish the crate on crates.io in order to facilitate use in other rust-based tools.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.