qmonnet / rbpf

Rust virtual machine and JIT compiler for eBPF programs
Apache License 2.0
919 stars 234 forks source link

Tag a new crate version and push it to crates.io #32

Closed qmonnet closed 5 years ago

qmonnet commented 6 years ago

We want to tag a new version and update the crate available for download on crates.io.

ETA: end of this month.

There have been quite some changes since last version, although I'm not sure the current version is stable enough to deserve 1.0.0. Therefore I consider bumping version number to 0.1.0.

Things we want to fix and complete before that:

jackcmay commented 5 years ago

@qmonnet Anything left after #39 and #40 are merged?

qmonnet commented 5 years ago

Hmm maybe just one minor nit. I liked the type you declared for a verifier:

pub type Verifier = fn(prog: &[u8]) -> Result<(), Error>;

Do you think it would be worth doing the same for the helpers? So that instead of:

pub fn register_helper(&mut self,
                       key: u32,
                       function: fn (u64, u64, u64, u64, u64) -> u64) 
                       -> Result<(), Error>

... we'd have something like:

pub fn register_helper(&mut self,
                       key: u32,
                       function: Helper) -> Result<(), Error>

(EbpfHelper or Helper, I don't really know what sounds best. Maybe just Helper if people call that with the rbpf:: prefix already?)

I'm not trying to give you more work and can do it if you want :).

Apart from that, I can't think of anything in particular from my side.

jackcmay commented 5 years ago

Sure, I'll take a crack at it

jackcmay commented 5 years ago

@qmonnet Can you provide an ETA of when this can be pushed to crates.io?

qmonnet commented 5 years ago

Just published it now :).

jackcmay commented 5 years ago

Thanks! https://github.com/solana-labs/solana/blob/24b513c3c7cd5bc022391b2bdcfbf304c87483e6/programs/native/bpf_loader/Cargo.toml#L13