anza-xyz / anza-xyz/solana-sdk

[solana-bn254] Refactor out `solana-bn254` into `solana-bn254` and `solana-bn254-syscall`

Aberta
#714 0 comentários 0 reações 1 responsável Reivindicada por @samkim-crypto Ver no GitHub
Linguagem predominante
Rust
Estrelas
256
Forks
250
Merge médio
2d 3h
PRs com merge (30d)
39

Descrição

#### Problem

Currently, the `solana-bn254` crate contains both:
- agave runtime functions: invoked by the agave client for the bn254 curve syscalls.
- on-chain program functions: invoked by on-chain Solana programs.

This makes the crate cluttered and harder to update. The on-chain program functions need frequent updates, while the agave runtime functions need infrequent updates. Every time we update the on-chain program functions, we must cut a new version of the `solana-bn254` crate. This then requires a version bump in the agave repo, which adds the overhead of double-checking for breaking changes.

#### Proposed Solution

Refactor out the agave runtime functions into a separate crate called `solana-bn254-syscall`, which can live in the `agave/cryptography` repo. The `solana-bn254` crate in the SDK should then only contain the on-chain program functions.

cc @LStan

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.