25 Commits

Author SHA1 Message Date
Alex Bates aa2c458e9d disable vercel bot commenting on github 2023-01-05 19:00:39 +00: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
Mark Street 6e82f7f476 Move docker env vars from docker-compose.yaml to docker.dev.env (#546) 2022-09-18 23:37:58 +01:00
Simon Lindholm 15205aa183 React error fixes (#435)
* Use keys for FormatDiffText
* Fix React errors due to unused useCombobox props
* Use <select value> instead of <option selected>
2022-04-12 13:03:55 +01:00
alex a3e3f6ed7b Frontend fixes (#429)
* fix decompile modal  codemirror height

* bump browserslist

* fix scrollbars

* remove storybook, update things

* fix editor styling

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-04-02 22:00:43 +09:00
Ethan Roseman 36d1f1d706 Poetry (#366)
* Trying to set up poetry

* oops

* mypy python 3.9

* mark

* blah

* attempt to fix stuff

* .

* fixies

* try winders again

* doqqer

* tomorrow for sure!

* attempt to install poetry as user

* help

* docker fix?

* ?

* try thing

* oh god

* the path to victory

* meowp

* srob

* try to do it manually on windows, install on docker

* try to do it manually on windows, install on docker: the sequel

* winders

* drf extensions

* winders 2

* use pip to install poetry on winders

* execute 'poetry install' at runtime, same as yarn install (#377)

Co-authored-by: Mark Street <22226349+mkst@users.noreply.github.com>
2022-02-20 22:46:00 +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 Bates 0e8b01841a Frontend improvements + Docker updates (#167, #169)
Co-authored-by: Mark Street <22226349+mkst@users.noreply.github.com>
2021-10-14 12:52:28 +01:00
alex 7757386396 Migrate to Next.js + big style update (#154)
* Backend changes to diff from label rather than 0, also possibly fix #109

* implement diff_label frontend & fix assemble_asm

* Log stack trace if asm-differ fails

* don't return { obj } from api

* slight change in stub func code

* GET /compilers returns arches for compilers

* GET /compilers returns arches for compilers

* keep compiler_ids

* Obtain ido from download script, add comment for permuter api support

* Clean m2c wrapper code, add left pointer style, add test

* fix 3 tests

* list arches from api

* fix cookies in DEBUG

SameSite=None is incompatible with Secure, and this causes some browsers
to ignore the cookie altogether.

* fix test

Regression due to changing API to not return { "user": User } but
rather just the User object itself.

* fix create scratch without glabel

This works around a backend bug

* add label select on scratch creation

* show compilers/presets for current arch only

- fixes #92
- fixes #132

* fix mypy issues

* use react instead of preact

* hold pages in src/pages/

This matches NextJS file structure; the names of files reflect their routing paths.

* migrate to NextJS

* use next-pwa

* statically generate user page

* fix github login

* add loading progress bar

* arch on scratch

* nav redesign

* use .env.local instead of local.env

* fix unset compiler not considering arch

* add discord server to readme

* big styling update

* add footer

* move compiler dir into components

* use lib dir

* fix ts error

* describe deployment

* dont use NEXT_PUBLIC_* in .env

* add storybook

* document storybook

* make AsyncButton loading state pretty

* remove sharp

* custom monaco editor react component

* ci: build frontend

* allow nextjs to build despite ignored typescript errors

* ci

* remove react-loading-skeleton

* oops

* don't request public_repo github scope

* give AsyncButton error popup its arrow back

* try fix monaco problem

* oops

* fix monaco red bg for real this time

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2021-10-13 00:49:23 +09:00
alex 4e8b07efaa Diff from label (#151)
* Backend changes to diff from label rather than 0, also possibly fix #109

* implement diff_label frontend & fix assemble_asm

* Log stack trace if asm-differ fails

* don't return { obj } from api

* slight change in stub func code

* GET /compilers returns arches for compilers

* GET /compilers returns arches for compilers

* keep compiler_ids

* Obtain ido from download script, add comment for permuter api support

* Clean m2c wrapper code, add left pointer style, add test

* fix 3 tests

* list arches from api

* fix cookies in DEBUG

SameSite=None is incompatible with Secure, and this causes some browsers
to ignore the cookie altogether.

* fix test

Regression due to changing API to not return { "user": User } but
rather just the User object itself.

* fix create scratch without glabel

This works around a backend bug

* add label select on scratch creation

* show compilers/presets for current arch only

- fixes #92
- fixes #132

* fix mypy issues

* arch on scratch

* use .env.local instead of local.env

* fix unset compiler not considering arch

* fix compiler opts not displaying on first load if compiler is not gcc 2.8.1

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2021-10-12 00:59:33 +09:00
alex 537eff9a95 Merge branch 'main' into dotenv 2021-09-23 13:25:54 +01:00
alex 5f33326703 update readme and read from local.env 2021-09-17 17:10:06 +01:00
alex 884a292f91 rewrite scratch component 2021-09-04 15:10:25 +01: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 e9f7849950 icons 2021-08-06 03:05:43 +01:00
alex 6af9775972 use sqlite by default 2021-08-04 16:54:39 +01:00
Mark Street c369e860dc Adding docker-compose.yaml 2021-08-03 19:14:06 +01:00
Ethan Roseman b4879c9fb2 refactoring to get diff.py integration working 2021-08-01 02:29:21 +09:00
Alex Bates 85e29b2080 use preact 2021-07-05 20:05:42 +01:00
Alex Bates a4124f61d8 explain frontend dir 2021-07-04 09:14:30 +01:00
Alex Bates 4274c782f2 basic scratchpad layout 2021-07-04 09:05:24 +01:00
Alex Bates dbeeda42a2 initial frontend commit 2021-07-03 15:24:33 +01:00
Ethan Roseman 57819051a8 Initial progress on django stuff + README 2021-07-02 15:01:26 +09:00
Ethan Roseman 455d002c2f removing prototype 2021-07-01 12:03:10 +09:00
octorock d758f46693 Init 2021-06-28 00:22:40 +02:00