Commit Graph

87 Commits

Author SHA1 Message Date
Gilles Siberlin
7fc66435bb [WIP] Add Borland 3.1 compiler to MS-DOS platform (#1419)
* Add Borland 3.1 compiler to MS-DOS platform

* Fix formatting

* Remove useless "rm"

* Update asm-differ
2025-01-28 21:00:44 +00:00
Mark Street
c364a685ad Allow quotes for n64 egcs (#1407)
* Replace 'docker-compose' with 'docker compose'

* Use 'printf' approach to COMPILER_FLAGS for n64 egcs compiler

* Use 'ubuntu-22.04' instead of 'ubuntu-latest'
2025-01-21 14:32:30 +00:00
Ethan Roseman
a5249f922c Update deps (#1387)
* Backend updates

* frontend updates
2024-12-09 01:28:54 +09:00
Mark Street
1c90e90cd0 Remove hack that mounted /dev/shm with exec, dosemu2 no longer needs it (#1334) 2024-08-27 01:03:00 +09:00
Ethan Roseman
d01bbbda1a Remove delete wording from issue template 2024-08-09 20:52:46 +09:00
Mark Street
a0caef8070 Add registry hack for msvc8.0 (#1309) 2024-08-01 20:59:57 +01:00
Exant64
bd7dac639b SHC/Dreamcast support (#1276)
* SHC support

* fixed platform icon order

* remove unnecessary ARG in dockerfile

* tidied up dreamcast CC, moved some flags to settings

* enable dreamcast support in CI

* fixed formatting

* cleaned up cc even more as per mkst's advice
2024-06-10 12:38:13 +01:00
Alex Bates
17decaff57 Create CODEOWNERS (#1267)
create CODEOWNERS
2024-06-03 23:57:04 +09:00
Mark Street
861aad81ee Add '--no-root' to poetry install ci commands (#1196) 2024-04-07 21:22:39 +01:00
Gilles Siberlin
c888c4ee05 Update to latest binutils-mips-ps2-decompals (#1185) 2024-04-01 11:38:25 +01:00
Gilles Siberlin
bffc76a921 Use custom mips binutils for PS2 (#1172) 2024-03-29 03:33:01 +09:00
Mark Street
58fdf489cf Node 20 (#1162)
* Try node 20

* Try node 20 (2)

* thanks alex
2024-03-24 10:57:01 +00:00
Ethan Roseman
23d2a1019a Fix the last-updated tag of some endpoints & remove win32 hack (#1110)
* Fix the last-updated tag of some endpoints

* remove hack

* mypy
2024-03-06 03:36:43 +09:00
Luke Street
813bb41789 Use custom powerpc-eabi binutils for GC/Wii (#1107)
* Use custom powerpc-eabi binutils for GC/Wii

* sudo

* --build-arg ENABLE_GC_WII_SUPPORT=YES

---------

Co-authored-by: Mark Street <streetster@gmail.com>
2024-03-03 21:08:02 +09:00
Christian
4fe7304547 x86: Update asm-differ and fix some incorrect objdump output by using mingw instead of msdosdjgpp. (#1104)
* x86: Update asm-differ and fix some incorrect objdump output by using mingw instead of msdosdjgpp.

* Fix spelling mistake

* Fix oversight in diff_wrapper
2024-02-28 03:59:42 +09:00
Ethan Roseman
36d92ce40e Rename Windows 9x platform to Windows (9x/NT) (#1103)
* win9x -> win32

* migration

* Change display name to Windows (9x/NT)
2024-02-26 00:33:32 +09:00
Mark Street
7e479ea62b Fix dosemu2 (#1101)
* Fix dosemu2

* mount /dev/shm with exec
2024-02-22 22:12:10 +09:00
Mark Street
2f206fd084 Add PSP platform (#958)
* Add PSP platform

* black

* Add credits for font used in PSP logo

* Switch wine for wibo + bump version

* use wine again for pspsnc.exe

* bump asm-differ
2024-02-15 23:17:26 +09:00
Mark Street
a915c8721a Bump ci due to node 16 deprecations (#961) 2024-02-11 17:32:32 +00:00
Ethan Roseman
da7869adf6 Update to Django 5 (#931)
* Update to Django 5

* Ah yes, the classic yaml number problem

* Typechecking issues
2023-12-17 20:56:07 +09:00
Mark Street
897a5cf582 Update issue templates (#930) 2023-12-16 18:54:47 +09:00
Mark Street
808894c2a4 Add issue template for adding compiler preset (#929)
* Add issue template for adding compiler preset

* tweaks

* tweak 2
2023-12-16 18:48:24 +09:00
Mark Street
324a1fd28d Bump wibo to 0.6.10 (#919) 2023-12-01 01:21:47 +09:00
Ethan Roseman
4ae89872e2 Presets in the DB (#897)
* Organize tests, update settings, backend deps

* Remove project import code from backend

* Remove some frontent project code

* more progress, project cleanup

* more preset work

* .

* upd8z

* Admins can delete scratches & preset migration

* bye, source presets

* fixes & changes

* Preset in admin panel & rename migration

* mypy

* Fix perset viewset & tests

* Change compilers hash files

* test annotations so Windows doesn't run them

* Mark nits

* Preset auto ID field

* scratch as reference (1/?)

* backend fixes to preset (2/3)

* Use preset ID instead of name in frontend

* update frogger preset

* I broke one of the ten commandments of react

* finishing touches (3/3 lol)

* Update serializers.py
2023-10-27 23:40:59 +09:00
Mark Street
a800b1e087 Use wibo for NDS (#902) 2023-10-26 23:27:25 +09:00
Mark Street
4deeb335dc Use wibo for N3DS (#894)
* Use wibo for N3DS

* Enable N3DS by default in Docker

* Update wibo
2023-10-24 05:54:35 +09:00
Mark Street
d944afee8f Devkitpro be gone (#888)
* Remove devkitpro

* whitespace woops
2023-10-22 06:32:18 -04:00
Mark Street
f055b8c82b Use wibo for ps1 compilers (#885)
* Use wibo for ps1 compilers

* Update ci
2023-10-10 00:37:14 +09:00
Mark Street
da37f18eb8 Fixup 'NDS' vs 'NDS_ARM9' platform id for Docker (#880)
* Fixup 'NDS' vs 'NDS_ARM9' platform id for Docker

* Add missing platform environment vars to Docker

* Update wibo
2023-10-09 02:33:24 +09:00
Robin Lambertz
d0a85112d7 No podman in compilers download (#874)
* Update poetry to 1.6.1

* Don't use podman/docker to download compilers

* Fixup docker test

* Actually fix docker tests

* Use debug level when failing to get image manifest

---------

Co-authored-by: Mark Street <22226349+mkst@users.noreply.github.com>
2023-10-04 10:04:09 +09:00
Robin Lambertz
e1c33d47d3 Support libraries in decomp.me (#843)
* Add script to download libraries, and download directx

* Add libraries endpoint

* Allow compiling with a library

* Add new libraries tab in frontend

* Add libraries support in CI

* Better look for the libraries

* Give pretty names to libraries

* Move Libraries to live under CompilerOpts

* typechecking hackery

* Make libraries trigger autorecomp and set the unsaved flag

* Fix libraryVersions

* Add new libraries download script to CI, docker and docs

---------

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2023-09-30 14:54:40 +09:00
Mark Street
4a2eabb345 Overhaul download py (#855)
* Add translations for ps1/maspsx compiler set

* Tell clang to compile and not link to remove need for lld binary

* Assume msdos assembler lives on PATH

* Overhaul download.py

* Attempt to fix docker ci

* Appease black

* Whoops, don't forget to detach

* Fix path to download.py

* fix perms (hack?)

* Add --platforms and --compilers args to download.py

* Try out --compiler dir arg for docker in ci

* Try to ignore that 500 error about image manifests

* it's --compilerS-dir

* Try again

* Try building our own podman (fallback to vfs when rootless)

* install distro 'podman' to get configuration (fixes fuse)

* mount /dev/fuse in ci

* dumb bugfix, .download_cache

* split compilers config out of download.py

* update poetry.lock

* Add psyq3.3 + psyq4.4 and migrate psyq4.3 scratches to psyq4.4

* docker_entrypoint.sh cleanup

* Try to protect against 'locating item named "manifest" for image with ID'

* better podman sanity check

* appease black

* use 'requests.get()' to grab remote image digest

* Update compilers repo to 'decompme/compilers'

* Fix description for psyq3.6
2023-09-20 16:37:35 +09:00
Mark Street
bda794ede3 Update wibo to 0.5.2 (docker) (#853)
* Update wibo to 0.5.2 (docker)

* Update wibo to 0.5.2 (ci)
2023-09-14 15:59:04 +01:00
Ethan Roseman
caa803c661 Compiler refactor (#849)
* Initial commit of organizing things

* some bugs

* anudder

* smores

* fix bug?

* oopth

* strings
2023-09-12 06:40:08 +09:00
OmniBlade
7c2f37512c Implement Win 9x platform and msvc compilers. (#802)
* Implement Win 9x platform and msvc compilers.

* Add credit info for Windows icon.

* Solve issue with read only temp dir for MSVC.

* Update armcc.zip link

* Add new dep to backend ci

---------

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2023-09-04 07:12:07 +09:00
Mark Street
b523916486 Fix poetry install script in Dockerfile, bump wibo (#780)
* Fix poetry install script in Dockerfile, bump wibo

* bump wibo version in ci too
2023-06-04 01:01:32 +09:00
Ethan Roseman
15f717ead3 Backend updates (motivated by m2c) (#767)
* Backend updates (motivated by m2c)

* try to fix CI
2023-05-18 14:06:04 +09:00
Ethan Roseman
796a5f4746 Updates, problems panel bugfix (#745)
* Backend updates, mypy fixes

* new migration (oops), some fixes

* Frontend updates

* cleanup

* Prevent problems panel from starting open if there are no problems

(fixes #703)

* update again

* oopz

* stylelint

* Update checkout version

* Fix test

* Fix test - device.ts still being used on the server :/

* fix cod
2023-05-08 23:56:45 +09:00
sozud
d61a6ea952 Initial Saturn support (#728)
* Saturn support

* linter issues

* Fix black formatting issues

* Try fixing ci

* Try 3.10.0

* Try 3.9

* Update asm-differ hash

---------

Co-authored-by: sozud <sozud@users.noreply.github.com>
2023-04-09 13:27:01 +09:00
Luciano Ciccariello
8a5de1d2f0 Add PSY-Q 3.5 and PSY-Q 3.6 compilers for PlayStation 1 (#651)
* Download PSY-Q 3.x compilers

* Add PSY-Q 3.3 and PSY-Q 3.6 PlayStation 1 compilers

* Remove gcc2.6.3-mipsel for good

* Actually install compilers

* Clean-up psyq-msdos folder after downloading it

* Map /proc to allow dosemu2 to run

* Allow to compile with PSY-Q 3.6

* Remove debugging stuff

* Add PSY-Q 3.5 and remove 3.3

* Let ASPSX to be quiet

* Completely replace PSY-Q 3.3 with 3.5

* Modify Castlevania preset

* Add migration from gcc2.6.3-mipsel to psyq3.6

* clean-up

* Typo

* Install DOSEMU in the CI

* Group ENABLE_PS1_SUPPORT set-up

* fix migration script

* Unset the HOME directory globally

* New line

* undo more auto-formatting

* Remove unnecessary comment

* fix

* More autoformatting shenanigans

* Try to fix CI pipeline

* Fix download script

* lint

* lint

* Fix dosemu setup

* Speed-up PSYQ MSDOS compiler

* debugging stuff for the tests

this commit will be reverted

* testing sandbox thingie

* Revert "debugging stuff for the tests"

This reverts commit 6d026b9214.

* Trimming down what Sandbox mounts

* Mount all /dev but read only
2023-02-24 21:40:31 +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
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
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
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
ca28dd7714 Attempt to catch up to github's changes to their runners (#591) 2022-12-01 02:26:04 +09:00
Mark Street
795022c7af Freeze lockfile in CI (#547) 2022-09-18 12:34:38 -10:00
Alex Bates
594e91cad1 Merge branch 'main' of github.com:decompme/decomp.me 2022-09-14 11:58:32 +01:00
Alex Bates
9c8404e90a add frontend lint ci job 2022-09-14 11:58:29 +01:00