Update GSoC authored by Gaba's avatar Gaba
......@@ -31,25 +31,23 @@ Tips:
# GOOGLE SUMMER OF CODE'S PROJECTS FOR 2025
1. Rewrite metrics-lib in Rust
Mentor: [Hiro](https://gitlab.torproject.org/hiro), [Sarthik](https://gitlab.torproject.org/sarthikg)
## 1. Rewrite metrics-lib in Rust
Mentors:
- [Hiro](https://gitlab.torproject.org/hiro)
- [Sarthik](https://gitlab.torproject.org/sarthikg)
Hours required: 350 hours
Skills required: Rust + some Java
Expected outcome: A library to process Tor network documents in Rust is available
Expected outcome: **A library to process Tor network documents in Rust is available.**
Difficulty: medium
## Background
### Background
Tor Metrics Library is a Java library to fetch and parse Tor descriptors.
Tor Metrics Library is a Java library that fetches and parses Tor descriptors.
Metrics lib provides an API in JAVA allowing processing Tor network data from the [CollecTor](https://collector.torproject.org) service for statistical analysis and for building services and applications.
Metrics lib provides a Java API for processing Tor network data from the [CollecTor](https://collector.torproject.org) service for statistical analysis and for building services and applications.
## Proposal
### Proposal
The metrics pipeline is being restructured and is slowly moving away from a mostly JAVA codebase to a rust and python tool belt.
......@@ -58,13 +56,10 @@ This project would involve a complete re-implementation of the Tor metrics libra
[Metrics-lib](https://metrics.torproject.org/metrics-lib.html) is a JAVA based API that is used to parse and validate Tor network documents. The rust rewrite should provide the same parsing and validation functionalities provided by metrics-lib and in addition allow exporting of the documents in some external storage, like parquet files to be saved into object storage or a table on a postgresql database.
_Resources:_
https://gitlab.torproject.org/tpo/network-health/metrics/library
https://metrics.torproject.org/metrics-lib.html
https://gitlab.torproject.org/tpo/network-health/metrics/descriptorParser/
https://gitlab.torproject.org/tpo/network-health/team/-/wikis/metrics/development/home
- https://gitlab.torproject.org/tpo/network-health/metrics/library
- https://metrics.torproject.org/metrics-lib.html
- https://gitlab.torproject.org/tpo/network-health/metrics/descriptorParser/
- https://gitlab.torproject.org/tpo/network-health/team/-/wikis/metrics/development/home
2.