* Replace 'docker-compose' with 'docker compose'
* Use 'printf' approach to COMPILER_FLAGS for n64 egcs compiler
* Use 'ubuntu-22.04' instead of 'ubuntu-latest'
* 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
* Use custom powerpc-eabi binutils for GC/Wii
* sudo
* --build-arg ENABLE_GC_WII_SUPPORT=YES
---------
Co-authored-by: Mark Street <streetster@gmail.com>
* x86: Update asm-differ and fix some incorrect objdump output by using mingw instead of msdosdjgpp.
* Fix spelling mistake
* Fix oversight in diff_wrapper
* 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
* 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
* 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>
* 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>
* 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
* 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>
* 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
* 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
* 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>
- 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
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.)