Open 0xaatif opened 1 month ago
A few notes:
plonky2-foo
repos were initially part of the plonky2
workspace and then moved away into individual crates, though mostly outdated / unmaintained as of today.CircleStark
is unrelated to plonky2
, could eventually be moved to Plonky3
github org (cc @dlubarov)Just to add a few other notes:
eth_trie_utils
ended up becoming mpt_trie
in this repo, so yeah we can archive this.eth_trie_tools
may have been partially integrated into zk_evm
(have all 3
tools been moved over?).
Here's a table of all the Rust repos we have in our org. I think this surface area is too big. If we have active code, let's keep it in our active repos, where we can keep it current, tested, audited etc. Otherwise let's archive it. e.g
smt_utils
,eth_trie_tools
should actually just be (crates or modules) in the zk_evm repo, where there's already trie diffing stuff.Here's a strawman proposal
eth_trie_utils
.Bootstrapping script
```python #!/usr/bin/env python import json import subprocess import sys from datetime import datetime from dateutil.rrule import rrule, MONTHLY from dateutil.parser import parse as parse_date from typing import TypedDict, Literal def eprintln(s: str): print(s, file = sys.stderr) class Repo(TypedDict): description: str isArchived: bool isFork: bool isMirror: bool name: str pushedAt: str url: str visibility: Literal["PUBLIC"] | Literal["PRIVATE"] | Literal["INTERNAL"] completed = subprocess.run( [ "gh", "repo", "list", "0xPolygonZero", "--json", "description,isArchived,isFork,isMirror,name,primaryLanguage,pushedAt,url,visibility", "--jq", '[ .[] | select(.primaryLanguage.name == "Rust") | del(.primaryLanguage) ]' ], check=True, capture_output=True, ) now = datetime.now() repos: list[Repo] = json.loads(completed.stdout) eprintln(f"{len(repos)=}") print("| repo | stale (months) | description |") print("|------|----------------|-------------|") for repo in repos: name = " ".join([ f"[{repo['name']}]({repo['url']})", "".join([ "📥" if repo["isArchived"] else "", "🍴" if repo["isFork"] else "", "🪞" if repo["isMirror"] else "", "🔒" if repo["visibility"] in ("PRIVATE, INTERNAL") else "", ]) ]) months = sum(1 for _ in rrule(MONTHLY, dtstart=parse_date(repo["pushedAt"]).date(), until=now.date())) description = repo["description"] print(f"| {name}| {months} | {description} |") ```Clone all repos
```bash #/usr/bin/env bash set -euxo pipefail pushd 0xPolygonZero gh repo list 0xPolygonZero \ --limit 1000 \ --json 'sshUrl,primaryLanguage' \ --jq '.[] | select(.primaryLanguage.name == "Rust") | .sshUrl' \ | while read -r ssh_url _; do git clone "$ssh_url" & done wait popd ```