Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move ANSI HTML-ifying to the site #478

Closed
Xyene opened this issue Sep 15, 2019 · 1 comment
Closed

Move ANSI HTML-ifying to the site #478

Xyene opened this issue Sep 15, 2019 · 1 comment

Comments

@Xyene
Copy link
Member

Xyene commented Sep 15, 2019

The judge formats compiler ANSI codes as HTML, which are then sent to the site, where they rendered as "safe" (unescaped).

Some problems with this were recognized from the start, but the ease of implementation all those years ago outweighed doing it right. In particular,

  • Judges have to be trusted to not output things like script tags into the compiler output section
  • There is no future control over the mapping from ANSI code to color; this makes wishlist items like a dark mode significantly harder to implement
  • There is some (small) database bloat from storing HTML tags rather than ANSI codes

Moving forward, we should fix this. A possible solution is to write a migration that strips HTML tags from old compiler outputs, and start sending ANSI codes instead.

@Xyene Xyene added this to the 1.5.0 milestone Sep 15, 2019
Xyene added a commit that referenced this issue Sep 16, 2019
Ninjaclasher added a commit to Ninjaclasher/site that referenced this issue Sep 17, 2019
Ninjaclasher added a commit to Ninjaclasher/site that referenced this issue Sep 17, 2019
Xyene added a commit that referenced this issue Sep 17, 2019
Xyene added a commit that referenced this issue Sep 17, 2019
Ninjaclasher added a commit to Ninjaclasher/site that referenced this issue Sep 17, 2019
Xyene added a commit that referenced this issue Sep 17, 2019
Xyene added a commit that referenced this issue Sep 17, 2019
Ninjaclasher added a commit to Ninjaclasher/site that referenced this issue Sep 18, 2019
Ninjaclasher added a commit to Ninjaclasher/site that referenced this issue Sep 28, 2019
Ninjaclasher added a commit to Ninjaclasher/site that referenced this issue Sep 29, 2019
Ninjaclasher added a commit to Ninjaclasher/site that referenced this issue Sep 29, 2019
Xyene added a commit that referenced this issue Sep 29, 2019
Xyene added a commit that referenced this issue Sep 29, 2019
Xyene added a commit that referenced this issue Sep 29, 2019
Xyene added a commit that referenced this issue Sep 29, 2019
Xyene added a commit that referenced this issue Sep 29, 2019
Xyene pushed a commit to DMOJ/online-judge that referenced this issue Sep 29, 2019
Xyene added a commit to DMOJ/online-judge that referenced this issue Sep 29, 2019
Xyene added a commit to DMOJ/online-judge that referenced this issue Sep 29, 2019
@Xyene
Copy link
Member Author

Xyene commented Sep 29, 2019

This is complete and live.

@Xyene Xyene closed this as completed Sep 29, 2019
malbareda pushed a commit to malbareda/JOEL-web that referenced this issue Jan 4, 2024
malbareda pushed a commit to malbareda/JOEL-web that referenced this issue Jan 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant