google / google/codeworld

Show the Share button even when the code isn't running

Aperta
#1,410 7 commenti 0 reazioni 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
Haskell
Stelle
1.3k
Fork
201
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Suggested by @jbash in #1409. There should still be a Share button to share code even when the code isn't running.

In terms of implementation, this means that the code will have to be sent to the server when Share is clicked, since it hasn't been sent yet. Currently the only way to do that is to invoke `/compile` on the server. That is wasteful, though, so I should probably add a new server-side endpoint to store code without trying to compile it.

Open questions:

1. What if the current code has been modified since the program was run? Currently, we show a warning, and offer to re-run the program (which will then cause Share to share the latest code as well). Instead, if users shouldn't think of sharing as connected to running, maybe we should just ask them which they intended to share.
2. If this might cause more shares of incomplete code, should we stop users from accidentally sharing code that hasn't been run without source access? My sense is probably no... but it's worth considering if this would be confusing. The risk is that students will share something that they think works without testing, and then the person they are sharing with only sees a white box, and the student is frustrated because they never saw the error message.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia tracciando l’azione Share esistente e l’endpoint /compile per capire come viene inviato e memorizzato il codice. Decidi come deve comportarsi la condivisione di codice non eseguito o modificato, quindi implementa il comportamento concordato lato client e lato server in modo che Share sia disponibile quando il codice non è in esecuzione e che sia possibile condividere il codice previsto senza compilazioni non necessarie.

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

Valutazione

Stack tecnologico
haskell
Ambito
full-stack
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.