spacedrive/crates/p2p
Consoli 26b6baffb6
Extend indexer rules with .gitignore when available (#2459)
* Extend indexer rules with `.gitignore` when available

* Make indexer accounts for valid git  repos when reading ignore files

* Ignore poorly formatted gitignore rules

* Reduce allocation in gitignore indexer rules

* Fix tests for gitignore indexer rules

* Remove code duplication

* Remove double call to git rules

* Improve doc for todo

* rustfmt

* Skip star rules that matches a negated pattern when parsing gitignore

* Skip conflicting glob rules

* Rename and remove print

* Make git ignore indexer consider multiple paths

* Use gix_ignore to handle gitignore rules

* Fix gitignore patterns relative to git repo

* Git indexer also consider nested repos

* Create a dedicated type for rules coming from git

* Consider every gitignore file inside a git repo

* Add IgnoredByGit to interface

* Add Gitignore system IndexerRule to allow front-end to toggle GitIgnoreRules
 - Make IndexerRules names unique
 - CLippy fmt

* Fix migration concat

---------

Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
2024-05-17 06:28:12 +00:00
..
crates P2P Docs (#2344) 2024-05-14 10:19:33 +00:00
src Extend indexer rules with .gitignore when available (#2459) 2024-05-17 06:28:12 +00:00
Cargo.toml Rename P2P crate (#2207) 2024-03-14 04:38:31 +00:00
README.md Rename P2P crate (#2207) 2024-03-14 04:38:31 +00:00

Spacedrive's P2P Crate

Functionality

This crate handles low-level P2P networking and the transferring of data between machines across a network.

Credits

We'd like to give credit towards both the libp2p developers/maintainers, as well as the Syncthing BEP Protocol's designers, developers and maintainers - our implementation was heavily inspired by the protocol and made our lives a lot easier. Thank you!