Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Avoid redundant recompilation on Reset/Play in C++ exercises

Aperta
#282 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
cpp, python

Direzione di ricerca

Traccia gli handler Reset e Play e l’invocazione di build descritti nell’issue. Verifica che il codice sorgente C++ invariato riutilizzi l’eseguibile esistente, mentre il codice sorgente modificato venga comunque ricompilato; il lavoro è completato quando Reset seguito da Play salta la compilazione in assenza di modifiche al codice sorgente e ricompila dopo le modifiche.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement

Description:
Currently, in the C++ exercises, hitting "Reset" followed by "Play" always triggers a full recompilation of the code. While the recent fix for the pause/resume functionality is great, this recompilation worsens the user experience.

The Problem:
We frequently use the "Reset" button just to restore the robot's initial position and reset the simulation world. Having to wait ~30 seconds for the code to recompile - even when no changes have been made to the source files - significantly slows down the testing workflow and degrades the user experience.

Expected Behavior:
The system should launch the existing executable without recompiling if the user's code hasn't been modified since the last build.

Proposed Solutions:

  • Smart Compilation: Implement a check (e.g., file modification timestamps or hashes) to see if the user's code has changed. Only trigger the build process if changes are detected; otherwise, just run the existing executable.

  • Dedicated Compile Button: Decouple the actions by adding a specific "Compile" button, leaving the "Play" button strictly for execution.

Lingua principale
Python
Stelle
11
Fork
33
Merge medio
2m
PR unite (30g)
1

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di JdeRobot/RoboticsApplicationManager

Tutte le issue di JdeRobot/RoboticsApplicationManager

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.