🚀 Infrarust V2 is now in alpha! Check out the new documentation. V1 will be archived once V2 is released.
Skip to content

Contribuer ​

N'hésitez pas à ajouter ou modifier le code source. Sur GitHub, la meilleure façon de le faire est de forker ce dépôt, puis de cloner votre fork avec Git sur votre système local. Après avoir ajouté ou modifié le code source, poussez-le vers votre fork et ouvrez une pull request dans ce dépôt.

Outils Requis ​

  • DĂ©veloppement
    • Rust (dernière version stable)
    • Cargo (fourni avec Rust)
    • rustfmt (pour le formatage du code)
    • clippy (pour l'analyse statique)
  • Outils Optionnels

Structure du Projet ​

C#
rust/
├── src/
│   ├── bin/           # Exécutables binaires
│   ├── core/          # Fonctionnalités principales
│   ├── network/       # Code réseau
│   ├── protocol/      # Implémentation du protocole Minecraft
│   └── proxy_modes/   # Implémentations des différents modes de proxy
├── tests/             # Tests d'intégration // TODO
├── Cargo.toml         # Dépendances et métadonnées du projet
└── Cargo.lock         # Verrouillage des dépendances

Plus de détails seront ajoutés dans la documentation du site web

Style de Code ​

  • Suivez le Guide de Style Rust officiel
  • Utilisez cargo fmt avant de commiter pour assurer un formatage cohĂ©rent
  • ExĂ©cutez cargo clippy pour dĂ©tecter les erreurs courantes et amĂ©liorer la qualitĂ© du code

Messages de Commit ​

Lorsque vous contribuez à ce projet, veuillez suivre la spécification Conventional Commits.

Exemples en franças :

  • feat: ajout du support pour la version de protocole 1.19.4
  • fix: gestion correcte du seuil de compression
  • docs: mise Ă  jour du README avec les nouvelles options de configuration
  • test: ajout de tests unitaires pour la gestion des paquets

Plus d'exemples ici https://www.conventionalcommits.org/fr/v1.0.0/#exemples

Attention

Bien que le projet soit un projet français, pour permettre a plus de personne de participer merci de rédiger vos messages de commits en Anglais

Compilation et Tests ​

bash
# Compiler le projet
cargo build

# Exécuter les tests
cargo test

# Exécuter avec des fonctionnalités spécifiques
cargo run --bin infrarust -- --config-path custom_config.yaml --proxies-path proxies_path_foler

Versionnement ​

Nous suivons le Versionnement Sémantique :

  • Version MAJEURE (MAJOR) pour des changements d'API incompatibles
  • Version MINEURE (MINOR) pour l'ajout de fonctionnalitĂ©s compatibles
  • Version CORRECTIVE (PATCH) pour les corrections de bugs compatibles

Released under the AGPL-3.0 License.