Commit Graph

771 Commits

Author SHA1 Message Date
Prakxo 316265befb Add Animal Forest (Doubutsu no Mori) preset (#684) 2023-02-20 17:52:12 +09:00
Ethan Roseman d02588f54a Dep updates (#682)
* Dep updates

* trying to fix issue
2023-02-16 23:10:42 +09:00
Simon Lindholm 65cc254662 Add jlabel macro for MIPS platforms (#681) 2023-02-16 22:37:02 +09:00
Derek Hensley 08502ccffe Update IDO recomp to v0.5 (#679)
Update IDO
2023-02-13 00:16:35 -05:00
Alex Bates e275eabb11 fix problems panel not scrolling far enough (#676) 2023-02-10 14:37:42 +09:00
Alex Bates 8d3131795b remove api.getCached (#677) 2023-02-10 14:36:15 +09:00
Alex Bates b1cb1485d9 remove $ from dev env SECRET_KEYs to avoid expansion inconsistencies 2023-02-09 22:43:39 +00:00
Eidan Garcia 319d435154 Added Margin top to 'Create Scratch' button (#675)
Slapped a `className="mt-2"` to the "Create scratch" AsyncButton.
2023-02-07 13:03:54 +09:00
LLONSIT a00411aee7 Adding an AeroGauge JP Kiosk Demo preset (#672)
* Adding a Wave Race 64 Preset

* Update compilers.py

Adding an AeroGauge JP Kiosk Demo preset

* Update compilers.py
2023-02-07 02:04:22 +09:00
EpochFlame a5c21d9a7b support newer assembly macros for GCN/Wii (#671)
allows for ease-of-making-scratches for repos using @encounter 's macros
2023-02-05 07:11:26 +09:00
LLONSIT e9f6528891 Adding a Wave Race 64 Preset (#670) 2023-02-03 10:53:50 +09:00
Gh0stBlade 7a8c0c1cb7 Update LoK: SR compiler version and flags (#668) 2023-02-02 02:58:56 +09:00
Ethan Roseman 6efceba430 Update dependencies and black (#669) 2023-02-02 02:05:31 +09:00
Ethan Roseman 4df3ff8121 sentry 2023-01-30 19:39:35 +09:00
Ethan Roseman 8c54237768 fix to gcc2.6.3-mipsel 2023-01-30 15:20:47 +09:00
Kartik e1ff8828fa Add preset for Ikachan 3ds (#666)
* Add preset for Ikachan 3ds

* Oops
2023-01-30 14:04:03 +09:00
Fruityloops 91baa59f66 Update compiler flags for Super Mario 3D Land preset (#667) 2023-01-29 12:11:21 +09:00
Ethan Roseman 6889302d76 more fixules 2023-01-27 20:19:18 +09:00
Ethan Roseman 002b300d68 mispel 2023-01-27 20:07:48 +09:00
triph 5ec67ba5dc Add PS2 EE GCC 2.9 and 3.2 compilers (#661)
* Add PS2 EE GCC 2.9-990721 and 3.2-001003-1 compilers

* Add PS2 compilers to download script

* Hash download script for CI compiler cache
2023-01-26 13:20:49 +09:00
Anghelo Carvajal 1211f7e382 Change egcs defaults and add two presets (#662)
* change egcs defaults and add presets for libultra ique and drmario ique

* whoopsie

* CN -> iQue

* Add version defines
2023-01-24 14:51:10 +09:00
Seth Barberee 226139065f Add Pokemon Mystery Dungeon: Red Rescue Team preset (#660)
backend/compilers: add pmd_red preset
2023-01-23 12:07:14 +09:00
ConorB 906aa4a8a8 Switch timeout mechanism to subprocess.run (#659)
* Switch to subprocess.run for timeouts

* [experiment] Set CI TIMEOUT_SCALE_FACTOR to 1

* supress parameterized.expand error in event of no compilers, change TIMEOUT_SCALE_FACTOR in CI to 2

* Exempt dummy compilers from nsjail bind mounts, disable nsjail time limits

* Don't run timeout test on windows

* Decouple test_compiler_timeout's timeout from global timeout settings, reset TIMEOUT_SCALE_FACTOR to 10

* Have DummyLongRunningCompiler subclass DummyCompiler

* Have a timeout of zero disable timeouts entirely

* Skip test_zero_timeout on windows

* black

Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
2023-01-21 03:04:27 +09:00
Anghelo Carvajal 37ea60b962 Add EGCS 1.1.2-4 compiler (#658)
* Add EGCS1124 to compilers.py

* add to allcompilers

* add download link

* 4
2023-01-17 12:03:17 +09:00
ConorB 721a08ccdf Make exception_on_timeout production-compatible, add more timeouts (#653)
* Force exception_on_timeout to use spawn to make gunicorn happy

* black

* Have test_fpr_reg_names_output and test_giant_compilation test for success as opposed to a lack of output

* Refactor timeouts for:
- compiling
- decompiling
- assembling
- disassembling

* Move m2c timeout wrapper to prevent interfering with StringIO

* Increase default timeouts by an order of magnitude to investigate failing CI tests

* Add timeout scale factor, have CI timeouts be 10x default

Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
2023-01-15 01:28:48 +09:00
LLONSIT 114d4325d2 Add IDO5.3 Pascal (#657)
* adding and AeroGauge preset

* Update backend/coreapp/compilers.py

Co-authored-by: EllipticEllipsis <elliptic.ellipsis@gmail.com>

* Update compilers.py

* IDO5.3 pascal

* Version bump

* Changing str order

* updating

* Another version bump

* cache

* Updating

* update download.py

Co-authored-by: LLONSIT <LLONSIT@gmail.com>
Co-authored-by: EllipticEllipsis <elliptic.ellipsis@gmail.com>
Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2023-01-14 13:35:03 +09:00
Ethan Roseman 84bf408295 Update backend deps 2023-01-14 03:15:22 +09:00
Ethan Roseman 6d4b9b1b0a A few things (#656)
* A few things:
Make logs more brief by hiding the PATH from compile commands
Hopefully prevent the frontend server from making tons of anonymous profiles
Add a scroll bar to the problems window
Restore the old look of ScoreBadge

* black
2023-01-10 22:04:57 +09:00
Prakxo 3f8111e45b Add Animal Crossing preset (#654) 2023-01-10 21:50:32 +09:00
1superchip a123f2ed04 Add Ty the Tasmanian Tiger Preset (#647) 2023-01-08 00:29:38 +09:00
Alex Bates c501603582 Add family page back in tab form (#649)
* GhostButton: don't use <button> if not clickable

* change matched score text to "MATCH"

* add family tab to scratch editor

* use '?' for null userlinks

* fix issue where matched functions are sorted to the bottom of the list instead of the top

* fix loading spinner size

* grey out scratches worse than current

* show raw score value on hover only
2023-01-07 22:14:32 +09:00
Alex Bates aa2c458e9d disable vercel bot commenting on github 2023-01-05 19:00:39 +00:00
Seil Weiss bb61b351a8 Update Battle for Bikini Bottom preset (#645) 2023-01-06 03:03:21 +09:00
Seil Weiss 65be50b257 Add Ratatouille Prototype presets (#646) 2023-01-06 03:03:13 +09:00
Alex Bates 31fc40c12c disable compilation problem wrapping
Fixes a bug reported by @DavidSM54 where IDO's problem `---^` arrows wrapped onto the next line, if it was too long, and was therefore not useful.

Link to report on Discord: https://discord.com/channels/897066363951128586/1060319113781719184/1060319116730318938
2023-01-05 00:10:57 +00:00
Alex Bates ceac0a0b20 fix scratch page render failure when parent scratch is unclaimed 2023-01-04 16:19:13 +00:00
Alex Bates 3bd4742878 exception_on_timeout: dont thread if timeout <= 0 2023-01-04 16:17:58 +00:00
Alex Bates ac3b0ad163 disable dark reader for app directory
See #557 for more information
2023-01-04 12:27:59 +00:00
Alex Bates c33a3af4f5 fix new scratch form aborting submit by reloading
The default behavior of <form> when there is a <button> inside (through AsyncButon) is for the form to be submitted, and as we provided no override it effectively just refreshed the page. This aborts the actual new scratch creation request!
2023-01-04 12:21:20 +00:00
Alex Bates 4cf3e416e5 Use Next.js 13 app directory & Tailwind CSS (#626)
- Use Next.js 13 app directory for all routes except projects
- Add Tailwind (resolves #619) and use it for most components
- New footer
- Adjust navbar (logotype, buttons moved to right)
- Improve the styling of the search box
- New /settings/account page
- /credits grabs contributors list for this repo from GitHub's API
- Resolve #634
- New welcome page header with scrolling platform icons
2023-01-03 12:41:05 +00:00
TakaRikka bd03dee535 add tp rel / dolphin presets (#643)
presets for twilight princess RELs and the dolphin lib
2022-12-31 20:50:38 +09:00
Amber Brault 2265c4d938 Update xenoblade compiler flags (again) (#641)
This should be the last time in a bit that I change the flags. I think I
have them pretty much figured out.
2022-12-30 21:39:38 +09:00
Alex Bates 3ee5b6e8c2 Use m2c/asm-differ dependencies instead subrepos (#624) 2022-12-30 11:55:03 +00:00
ConorB 560a3d4455 Implement timeouts for m2c and compiler invocations (#628)
As this title suggests, this PR caps the runtime for all compiler / m2c
calls. Currently, the timeout is five seconds for both.

There may well be a better place to put the compile timeout; as ever,
happy to change :)

Co-authored-by: ConorBobbleHat <ConorBobbleHat>
2022-12-26 19:44:44 +09:00
Dylan Ascencio a696b3b0bc Add preliminary compiler options for Luigi's Mansion (#638)
This PR adds a preset for Luigi's Mansion. However, I am babby, so the
compiler options included are the bare minimum used while matching
isolated functions. They will probably need to be updated once the full
pool of options is found.
2022-12-26 08:55:46 +09:00
Alex Bates 5459c556ca Add xmas hat to frog.svg (#637) 2022-12-25 12:10:42 +00:00
Anghelo Carvajal 8c9ccc8483 Checkbox for disabling pseudo instructions for MIPS (#635)
Adds a new checkbox for disabling pseudo instructions on MIPS scratches
by passing the `-Mno-aliases` flag to `objdump`. This is disabled by
default.

![image](https://user-images.githubusercontent.com/7416381/209376892-47209728-6791-49ad-89c8-19abe7903ecf.png)

### Why is this useful?

Because GAS likes using the same pseudo instruction for multiple
instructions, which sometimes leads to confusion of "why this doesn't
match if it is the same instruction". Complains about this usually
happen with the `li` pseudo instruction.

Example ("both are `li`s, why it doesn't match?!?!?"):

![image](https://user-images.githubusercontent.com/7416381/209378149-b89c339b-2d29-4fb4-a0ff-0f17a2957ff2.png)
Disabling pseudos ("oh, they actually are different instructions"):

![image](https://user-images.githubusercontent.com/7416381/209378326-2bdb6544-a78c-418e-b69d-e7c727ca0b1f.png)

### Disadvantages

Some pseudos are clearer as pseudos than their actual raw instruction;
like for example the `nop`, which gets disassembled as `sll, zero, zero,
0x0`. `move` is also an example of this (even if the underlying
instruction changes depending on the assembler).
There doesn't seem to be any option in `objdump` to only allow some
pseudos.

`asm-differ` seems to have custom logic for handling `nop`s which gets
lost when disabling them, this can be seen in this screenshot:

![image](https://user-images.githubusercontent.com/7416381/209380469-cd14e671-4fd6-4a2b-aefe-a2dbd21646c6.png)
A workaround for this could be made in the `asm-differ` repo.


### Other

I also allowed passing the other objdump flags to PS1 and PS2.
2022-12-25 14:02:43 +09:00
Alex Bates f4165248ca Cache CI (#631)
Adds caching to a bunch of dependency installs we're doing in CI to
reduce the runtime. Future:

- `Install apt dependencies (initial)` could definitely be made quicker
- `Build decompme_backend image` is 6min, perhaps we could use
[cached-docker-build](https://github.com/marketplace/actions/cached-docker-build)

(These are fine for now I think- I don't want to touch them much because
I didn't write them & CI has always been brittle.)
2022-12-22 13:46:53 +09:00
Ethan Roseman 369761daef m2c / asm-differ updates (#622)
Addresses half of #612
2022-12-19 23:42:11 +09:00
Alex Bates 04a5a32c07 Upgrade to Next.js 13 (#618)
Resolves #610.
2022-12-19 23:11:57 +09:00