19 Commits

Author SHA1 Message Date
Luke Street 0a64331e4b Experimental objdiff-web integration 2025-03-06 23:07:52 -07: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
ConorB 962af205a5 Add django-session-timeout (#690)
* Add django-session-timeout

* Copy default SESSION_COOKIE_AGE into .env

---------

Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
2023-02-25 11:18:40 +09:00
Alex Bates b1cb1485d9 remove $ from dev env SECRET_KEYs to avoid expansion inconsistencies 2023-02-09 22:43:39 +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
Alex Bates 290c3217f7 disable next-pwa in .env (#604) 2022-12-14 23:04:23 +09:00
Alex Bates 2e96373ac7 Projects list, creation, settings pages (#542)
* add projects list

* new project page

* mypy

* allow '.' in github identifiers

* implement project create

* project settings

* disallow anons from being project members

* uploadable project icon

* docker attempt

* fix tests

* add tests

* add description form

* refactor to add useEntity and FieldSet

* move FieldSet out of subdirectory

* use same page for project tabs

* scroll up to UnderlineNav when tab changes

* stylelint

* configure vscode mypy extension

* mypy

* fix mypy and dmypy

dmypy does not support follow_imports=silent. Instead we explicitly
disable most checks for asm_differ and m2c, which
has the same effect

* remove redundant mypy flags

* FieldSet style tweaks

* give UnderlineNav horiz padding

* fix swr mutate of project header

* few tweaks to help docker (#550)

* eth changes

* use POST/DELETE rather than PUT for project members

* add migration

* fix pr creation

* simplify project platform derivation

Co-authored-by: Mark Street <22226349+mkst@users.noreply.github.com>
Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-10-07 20:12:18 +09:00
Ethan Roseman 0f3b9676c2 USE_SANDBOX_JAIL off by default 2022-02-16 11:57:28 +09:00
MonsterDruide1 d43fdfd5e6 Remove FRONTEND_BASE (#352) 2022-02-11 02:46:20 +09:00
Alex Bates b96dd0315d ScratchViewSet + search box (#285)
* initial scratch viewset impl

* use scratch2 on frontend

* todo

* viewset

* permissions

* fix mypy

* add TerseScratchSerializer

* mypy

* add FRONTEND_BASE

* add search box

* use get_html_url

* scratch default name

* always show search icon

* oops

* add platform icon to search results

* very oops

* improve searchbox stability

* fix requirements

* don't autosave on compiler change

* add Search to ScratchToolbar

* Nav frog padding tweak

* frog hover state

* click away bug

* fix weird search result click bugs

* recompile on visit another scratch
2022-01-04 03:00:12 +09:00
Ethan Roseman f929174399 Dummy compiler + better error handling and reporting (#246)
* Initial work on dummy compiler + better exception / error stuff

* mypy

* Add more dummy functionality, fix some error handling, and organize views

* Imports, suggestion

* force include the dummy compiler

* attempt to fix issues

* Fix docker?

* undo dumb

* suggestion

* sugg2

* Turn off sandbox on winders

* oops

* PR suggestions, a new test, cleanup

* mypy

* Front-end dummy compiler, logging fix

* new prod option that removes dummy

* Cleanup, fixes

* cleanup

* more cleanin

* PROD -> DUMMY_COMPILER, move dummy config out of fs

* DJANGO_LOG_LEVEL as environ setting

* fix Dockerfile

* suggestion

* dummy off
2021-12-26 20:30:21 +09:00
Ethan Roseman 16485ffd6c Fix 2 bugs (#200)
* fix source_code null issue for non-mips

* fix preset setting not changing opts

* CompilerPreset type

* try to fix gh actions

* libprotobuf-dev

* protobuf-compiler

* libnl-route-3-dev

* oopth
2021-11-13 22:48:24 +09:00
alex c7e4d1150d disable nsjail by default 2021-09-02 22:13:34 +01:00
alex 3797395d3a add GitHub login 2021-08-27 18:01:21 +01:00
Zach Banks 9959e4850d Remove SANDBOX_NSJAIL_BIN_PATH from .env 2021-08-11 14:19:41 -04:00
Zach Banks e3f92a5fc5 Make sandbox easier to configure
- Read `USE_SANDBOX_JAIL` from `.env`
- Rename `SandboxWrapper` -> `Sandbox`
- Remove `--user`/`--group` from `nsjail` wrapper
- Refactor `Dockerfile` to build nsjail
2021-08-11 13:52:39 -04:00
alex 6af9775972 use sqlite by default 2021-08-04 16:54:39 +01:00
alex 89254bc7fb load API_BASE from .env 2021-08-04 08:55:21 +01:00
Ethan Roseman 93454f5c1f fix #22, don't show the diff still if there are compile errors 2021-08-03 19:15:32 +09:00