casync
bazel-remote
Our great sponsors
casync | bazel-remote | |
---|---|---|
17 | 4 | |
1,463 | 559 | |
0.8% | - | |
2.4 | 8.0 | |
4 months ago | 11 days ago | |
C | Go | |
- | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
casync
-
We reduced conda’s index fetch bandwidth by 99%
For arbitrary state changes however, it's better to use something like casync. Note that there are a lot of tunables, implicit and explicit; for package indexing I would particularly think about "how is the index sorted" and "what is the desired chunk size".
-
Intro to Content Defined Chunking
If you just want something practical to play with, see casync. Even if it doesn't fit your workflow, or if you think you can do better, chances are you're best off building on top of it or adding patches to it, not starting from scratch.
-
Tool to clone file structure without the large files themselves?
You probably want casync.
-
A Nibble of Content-Defined Chunking - How de-duplicated, incremental file transfer works
Obligatory link to casync, which implements this better than most alternatives.
-
LibSQL – a fork of SQLite that is both Open Source, and Open Contributions
(personally, I think more people need to be aware of casync for the update storage/distribution problem. It isn't perfect for every use case, but it's good enough that you're probably better off wrapping/forking it rather than reimplementing it badly from scratch)
-
improving download infra
Does something like casync (https://github.com/systemd/casync or https://github.com/folbricht/desync) serve any purpose or provide any advantage to propagating rpm changes over rsync?
-
Are there any true alternatives to Seafile? (Nextcloud is not an alternative in this context)
Software that comes to mind for syncing lots of small files: git (and other source versioning tools), casync (https://github.com/systemd/casync) and a go implementation (https://github.com/folbricht/desync). Not really an answer and I can't think of a way to shoehorn that into your workflow, but maybe it leads you down a useful road.
- Casync – A Content-Addressable Data Synchronization Tool
-
Hacker News top posts: Apr 23, 2022
Casync – A Content-Addressable Data Synchronization Tool\ (15 comments)
bazel-remote
-
Casync – A Content-Addressable Data Synchronization Tool
I did PoC experiments with compression, chunking, and IPFS here: https://github.com/SaveTheRbtz/bazel-cache
If you need a mature compression implementation for bazel I would recommend using recent bazel versions w/ gRPC-based bazel-remote: https://github.com/buchgr/bazel-remote
bazel nowadays supports end-to-end compression w/ `--experimental_remote_cache_compression`: https://github.com/bazelbuild/bazel/pull/14041
-
Honesty, how are people using bazel in CI
I would rather go with a standalone cache to utilize bazel inceremental builds. Take a look at bazel buildfarm or remote cache (https://github.com/buchgr/bazel-remote). Once you populate cache builds will be very fast.
- Exodus: Easily migrate your JVM code from Maven to Bazel
-
We Need Better than Gradle — Adam Erb
I do run bazel-remote at my home server for remote cache, though.
What are some alternatives?
kopia - Cross-platform backup tool for Windows, macOS & Linux with fast, incremental backups, client-side end-to-end encryption, compression and data deduplication. CLI and GUI included.
buildbuddy - BuildBuddy is an open source Bazel build event viewer, result store, remote cache, and remote build execution platform.
tarsnap - Command-line client code for Tarsnap.
CMake - Mirror of CMake upstream repository
desync - Alternative casync implementation
Bazel - a fast, scalable, multi-language and extensible build system
zstd - Zstandard - Fast real-time compression algorithm
rules_scala - Scala rules for Bazel
magic-trace - magic-trace collects and displays high-resolution traces of what a process is doing
bazel-cache - Minimal cloud oriented Bazel gRPC cache
BorgBackup - Deduplicating archiver with compression and authenticated encryption.
buildtools - A bazel BUILD file formatter and editor