Commit Graph

829 Commits

Author SHA1 Message Date
Jeff Epler 3d66ed27ce
oofatfs: enable use of random volume IDs
This may help address #7409 if the underlying cause is the deterministic
volume ID. However, not all boards have working urandom (samd21
at least does not) so a couple of fallbacks are attempted when it fails.

I verified that on a pico_w, each `storage.erase_filesystem()` gives
a distinct 32-bit volume ID (pico_w's urandom can never fail)
2023-01-03 17:18:29 -06:00
Pontus Oldberg 14417a21d1
Merge branch 'adafruit:main' into main 2023-01-03 09:31:49 +01:00
Dan Halbert cc92ce4820 Use memory fence when disabling cache to avoid -O2 problems 2022-12-29 19:49:40 -05:00
Pontus Oldberg 9f266c361b Initializing external flash SPI speed to SPI_FLASH_MAX_BAUDRATE, instead of using driver default speed (32MHz), before probing JEDEC identifier. 2022-12-21 16:33:06 +01:00
Scott Shawcroft f8ac1d9261
Rework the coproc API
It is now a generic `memorymap` API and an ESP specific `espulp` module.

Fixes #7218. Fixes #3234. Fixes #7300.
2022-12-19 14:08:38 -05:00
Jeff Epler 808161eaab
fix missing sentinel in call 2022-12-12 19:09:57 -06:00
Jeff Epler 3620d14542
Pass string length when enabling radio 2022-12-12 17:04:03 -06:00
Jeff Epler 1b15985783
Fix web workflow builds 2022-12-12 09:20:56 -06:00
Jeff Epler 44f15d563d
Rename "environ" errors to "getenv" errors 2022-12-09 14:14:53 -06:00
Jeff Epler 3a92c079fc
Finish renaming os_environ_get_key to os_getenv
.. for consistency.
2022-12-09 14:07:23 -06:00
Jeff Epler 3459fe322b
Withdraw the _environ module
This existed solely for testing, so expose it a different way during
the unix coverage build

Also turn off os.getenv support on samd21.
2022-12-08 15:33:10 -06:00
Jeff Epler 47339d4248
make a settings.toml file on boards that support the feature 2022-12-08 12:56:24 -06:00
Jeff Epler ef2bfdb5db
dotenv becomes settings.toml 2022-12-08 12:44:20 -06:00
Scott Shawcroft b354cec8cb
Three small ESP web workflow fixes
* Set nonblock on all accepted sockets. Not just ones for user code.
* Close an open websocket if another is accepted.
* Set debug level to INFO rather than DEBUG because DEBUG crashes
  on ESP32-S3 USB OTG.
2022-12-06 11:49:04 -08:00
Jeff Epler 9c6c25ae57
Merge pull request #7286 from tannewt/fix_web_workflow_write
Fix writing files from web workflow
2022-12-01 08:30:47 -06:00
Scott Shawcroft 65e913ecd6
Fix writing files from web workflow
Pico W changes assumed that f_write could handle a NULL fourth
argument. It can't.
2022-11-30 14:22:46 -08:00
Jeff Epler fb66a6bfe5
Don't use "offset" as an identifier 2022-11-30 14:39:54 -06:00
Jeff Epler d16c9515b7
Compact the characters of certain translations, so they fit in uint8_t
This saves a few hundred bytes on the affected translations, such
as `el` which shrunk from 186152 to 185588 bytes (564 bytes saved).
2022-11-30 14:39:53 -06:00
Scott Shawcroft c13ca95da1
Add MDNS support to Pico W
This adds both cpy-MAC.local and circuitpython.local support.

Fixes #7214
2022-11-28 16:15:28 -08:00
Scott Shawcroft ad2d190507
Merge pull request #7247 from tannewt/picow_web_workflow
Enable* web workflow for Pico W
2022-11-28 14:19:42 -08:00
Scott Shawcroft c3a96a63c0
Enable* web workflow for Pico W
* Except for circuitpython.local which depends on MDNS and will be
done in a follow up PR.

Progress on #7214
2022-11-21 16:24:05 -08:00
Dan Halbert 0f6c708cb1
Merge pull request #7227 from jepler/serial-break-is-interrupt
Allow serial "break" to trigger KeyboardInterrupt
2022-11-18 19:26:17 -05:00
Jeff Epler afca4cef6d
This code can only be active if USB CDC is enabled. 2022-11-18 16:05:46 -06:00
Jeff Epler 406e46f46b
Allow serial "break" to trigger KeyboardInterrupt
When the USB serial buffer is full, the Ctrl-C code to send
KeyboardInterrupt can't be sent, which creates a problem if you've
pasted code or otherwise filled the buffer and need to recover.
A similar problem affects advanced UIs that interact with CircuitPython
and may send characters when they're unexpected, such as mu when it
tries to move the cursor based on the user clicking on the screen.

The main way forward seems to be to use some kind of message that can
still reach CircuitPython when its internal serial recieve buffer is full.
RS232 defines a "break" signal, in which the transmitting device holds its
data line in the "space" state for many entire character times. This still
exists in the world of USB serial.

This does work, sort of, except that your host computer software will need
to properly handle blocking serial writes; tio can send a break with
the **ctrl-c b** sequence, but this only works if it hasn't yet written
too much data, so it doesn't actually help in most situations :-/
2022-11-18 14:35:06 -06:00
MicroDev dd01fc97e5
Merge pull request #7223 from jepler/issue7222
supervisor_start_terminal: don't crash if display is tiny
2022-11-18 09:34:26 +05:30
Jeff Epler b0d0fcbabc
supervisor_start_terminal: don't crash if display is tiny
Closes: #7222
2022-11-17 12:03:33 -06:00
Scott Shawcroft 93ee54a2fb
Fix PWM status LED never_reset
It doesn't need never reset because the status LED is only active
when user code isn't.

This also fixes PWM never reset on espressif so that deinit will
undo it.

Fixes #6223
2022-11-15 16:14:31 -08:00
Matthew McGowan ad9db01f5f Implements PDMIn for STM32L4 using the SAI peripheral and decimation/filtering in software. 2022-11-04 17:27:08 -07:00
Neradoc 8f82db5b22 define out the safe mode message if none 2022-10-30 03:55:59 +01:00
Neradoc 0aa41fa92e change BOARD_USER_SAFE_MODE_ACTION into a separate sentence 2022-10-30 01:55:42 +02:00
Dan Halbert 7e4b2a09eb
Merge pull request #7000 from MicroDev1/storage-extend
Add Storage Extension Support
2022-10-13 10:05:55 -04:00
Dan Halbert 844cd17f03 delay first serial write by 50ms 2022-10-11 23:02:14 -04:00
microDev b0ef35d50b
update storage extension implementation 2022-10-06 09:19:56 +05:30
Dan Halbert 1c2d2c9be4
Merge pull request #6980 from MicroDev1/supervisor
Implement certain supervisor functions as properties
2022-10-04 08:54:11 -04:00
Jonathan Myers db28605add Fix mask for minutes field when computing modified_ns 2022-10-02 18:29:07 -07:00
microDev 17ed2a6898
implement certain supervisor functions as properties
- disable_ble_workflow
- set_next_stack_limit
- set_rgb_status_brightness
2022-10-01 23:44:22 +05:30
Dan Halbert db065a299f
Merge pull request #6933 from jepler/🥧🐮
Implement a useful subset of `wifi` and `socketpool` modules on 🥧🐮
2022-09-28 18:09:24 -04:00
Jeff Epler 346fff2e7c
cyw43 basic gpio support, hwaddr in boot_out 2022-09-28 10:06:33 -05:00
Dan Halbert 0cd37376a0 finish status bar internal simplification 2022-09-27 15:14:40 -04:00
Dan Halbert e5f2f0be25 simplify suppressing status bar writes 2022-09-25 00:00:37 -04:00
Dan Halbert 9aca092900 squeeze the usb identification code; manufacturer was being copied to product 2022-09-20 20:23:17 -04:00
Dan Halbert daf415d9c7 squeeze the usb identification code 2022-09-20 20:08:16 -04:00
Dan Halbert adf15faa8f merge from main; throw NotImplementedError if CIRCUITPY_USB not set 2022-09-20 13:18:32 -04:00
Patrick c271a421bf
Update supervisor/shared/web_workflow/static/directory.html 2022-09-09 16:34:11 -07:00
Patrick b50bafa22c
Update supervisor/shared/web_workflow/static/directory.html 2022-09-09 16:31:11 -07:00
Patrick c5f014f2a6
web workflow file system page
Fixes #6884
2022-09-09 15:40:02 -07:00
Dan Halbert dd37c81136
Merge pull request #6847 from dhalbert/status-bar-control
Allow enabling and disabling of status bar
2022-09-08 10:48:36 -04:00
Dan Halbert 4cb69a51d5 Use MP_WEAK for default board.c routines 2022-09-08 07:36:50 -04:00
Dan Halbert 2c42a48962 Clear stale exception in _exec_result; more status_bar fixups 2022-09-01 19:29:32 -04:00
Melissa LeBlanc-Williams 8be2d650c7 Add info and link for Web Workflow /code/ page 2022-09-01 12:26:33 -07:00
Dan Halbert 2fa671c0f8 avoid status bar updates immediately after hard restart 2022-08-30 22:33:29 -04:00
Dan Halbert 52080e24eb status bar control 2022-08-30 15:23:44 -04:00
Melissa LeBlanc-Williams 1ae4d881fd Allow Move/Rename to be called from localhost 2022-08-24 14:50:42 -07:00
Neradoc dfd6fa2114 add serial number to version.json, UID like in boot_out.txt 2022-08-21 04:09:44 +02:00
Scott Shawcroft 802cff2286
Fix scroll area shift with scale > 1
Fixes #6775
2022-08-19 11:20:47 -07:00
Dan Halbert 05d2013b45
Merge pull request #6778 from tannewt/fix_s2_bootloop
Guard against workflow background happening early
2022-08-18 07:18:57 -04:00
Scott Shawcroft 3e60ec3a3e
Merge pull request #6770 from tannewt/upload_folder
Add uploading a directory and its contents
2022-08-17 16:09:56 -07:00
Scott Shawcroft 704ecc34fb
Guard against workflow background happening early
Fixes #6756 because the ringbuf size is zero and the empty check
does % which leads to division by zero error.
2022-08-17 15:44:07 -07:00
Melissa LeBlanc-Williams 79628a7c41 Add offline message to web workflow /code/ page 2022-08-17 13:57:20 -07:00
Scott Shawcroft b7a2a3d724
Fix arm builds 2022-08-17 13:52:13 -07:00
Scott Shawcroft 3aa5f60cb9
Merge remote-tracking branch 'adafruit/main' into upload_folder 2022-08-17 13:15:37 -07:00
Scott Shawcroft 9a5f00a093
Remove upload button and fix mkdir parents 2022-08-17 11:31:11 -07:00
Scott Shawcroft 1287d9c22d
Merge pull request #6769 from tannewt/ww_move
Add file and directory renaming
2022-08-16 22:11:59 -07:00
Scott Shawcroft 3493be7757
Fix recursive delete, add upload labels and progress 2022-08-16 17:03:09 -07:00
Scott Shawcroft e570349034
Edit .env and ignore canceled renames 2022-08-16 16:02:55 -07:00
Scott Shawcroft 525eb711c1
Add /code/ for online editing 2022-08-16 15:44:58 -07:00
Scott Shawcroft b6e24230cf
Add uploading a directory and its contents
This only works for one top level directory at a time.
2022-08-16 14:41:10 -07:00
Scott Shawcroft 85b0be83bf
Add file and directory renaming
Internally this is done with a MOVE HTTP verb. It is modeled after
WebDAV MOVE but not exact to keep the Destination header shorter
and have more consistent response codes.

Fixes #6647
2022-08-16 13:51:40 -07:00
Scott Shawcroft 5823bcc744
Merge branch 'main' into c3_short_send 2022-08-11 12:45:02 -07:00
Scott Shawcroft f1053fb963
Introduce port_yield()
This allows the web workflow send code to yield briefly when
waiting for more room to send in a socket. Waiting for an "interrupt"
could wait forever because the select task only waits for read and
error. Adding wait on write is tricky because much of the time we
don't care if the sockets are ready to write. Using yield avoids
this trickiness.
2022-08-11 11:25:34 -07:00
Scott Shawcroft 471053c315
Merge remote-tracking branch 'adafruit/main' into c3_short_send 2022-08-11 11:12:51 -07:00
Scott Shawcroft f9d724c09e
Fix retries after successful connection.
We may have set retries to 0 to enforce a timeout but the connect
succeeded. When it succeeds, we want to allow retries later in
case we lose signal briefly. (The callback will do this too but
the connect function will override it after.)

Also, remove extra code from websocket that is leftover from
debugging.
2022-08-10 15:24:08 -07:00
Scott Shawcroft 0b098f5013
Retry send if only some bytes sent
Fixes #6654 and fixes #6689
2022-08-10 11:34:49 -07:00
Scott Shawcroft b423520eb3
Merge pull request #6693 from RetiredWizard/sort_filemanager
Add filename sort to web workflow file manager
2022-08-10 11:29:39 -07:00
Dan Halbert a1d48e9978
Merge pull request #6729 from tannewt/websocket_ctrl_c
Read websocket in background to look for ctrl-c
2022-08-10 13:16:09 -04:00
Dan Halbert 08e3133435
Merge pull request #6731 from tannewt/ww_unicode
Decode percent encoded file paths and set charset
2022-08-10 13:13:53 -04:00
RetiredWizard 0b286b7e7e
does pre-commit not like split lines? 2022-08-10 10:44:06 -04:00
Neradoc 9f4e8efd2e new icons for web workflow with actual emojis 2022-08-10 02:12:07 +02:00
Scott Shawcroft e0fb308972
Decode percent encoded file paths and set charset
Also, fix multiple file uploads from directory browser.

Fixes #6646
2022-08-09 16:36:57 -07:00
RetiredWizard c8a5149560
Sort json data rather than index of table data 2022-08-09 17:13:18 -04:00
Scott Shawcroft 51b65cbea5
Read websocket in background to look for ctrl-c
Otherwise busy Python code that isn't reading input characters
won't be interruptible.

Fixes #6707
2022-08-09 13:57:03 -07:00
Scott Shawcroft 401c269758
Request a title bar update on USB cdc connect
This ensures that the USB serial connection gets a copy of the
latest title bar.

Fixes #6703
2022-08-08 14:29:45 -07:00
RetiredWizard a87dcf201b
Don't need a variable to identify 'Path' column 2022-08-05 22:35:57 -04:00
RetiredWizard 328fe4d2ea
minor cleanup 2022-08-05 22:07:22 -04:00
RetiredWizard b7d3ee174a
Move sort from table class to async function 2022-08-05 21:49:18 -04:00
Scott Shawcroft 207311b02a
Merge branch 'main' into title_execution_status 2022-08-05 13:42:58 -07:00
Dan Halbert 8c10e09ba0
Merge pull request #6667 from jepler/esp-reserve-heap-for-idf
Add ability to reserve psram
2022-08-05 15:06:44 -04:00
Dan Halbert 7ab8a66cda
Merge pull request #6695 from tannewt/always_circuitpy
Get CIRCUITPY FATFS directly.
2022-08-05 11:51:35 -04:00
RetiredWizard ed6f9eac04
Unnecessary handler removed 2022-08-05 02:06:45 -04:00
RetiredWizard 85d959b953
A little bit more cleanup.... 2022-08-05 01:42:59 -04:00
RetiredWizard 9eb32f4dd1
Ascending sort without mouse click 2022-08-05 01:23:01 -04:00
RetiredWizard 98fbaa8ff9
Sorts ascending without mouse click 2022-08-05 00:58:57 -04:00
Scott Shawcroft 167108a91f
Fix builds with displayio but not terminalio 2022-08-04 16:34:25 -07:00
Scott Shawcroft eb7ddf52e6
Fix BLE workflow and add boot_out.txt UID
Fixes #6621
2022-08-04 16:33:10 -07:00
Scott Shawcroft 83cbbc9946
Add BLE status to title bar 2022-08-04 16:33:10 -07:00
Scott Shawcroft 3a2bcbc5c7
Enable title bar on all builds
* Tweak scroll area position so last line is complete and top is
  under the title bar.
* Pick Blinka size based on the font to minimize unused space in
  title bar. Related to #2791
* Update the title bar after terminal is started. Fixes #6078

Fixes #6668
2022-08-04 16:33:10 -07:00
Scott Shawcroft 577d53dda4
Add execution status into title bar 2022-08-04 16:33:09 -07:00
Scott Shawcroft 185d3e19ec
Switch to temporary redirect for cp.local
This prevents browsers from caching it. Thanks to MakerMelissa for
the suggestion.
2022-08-04 16:25:50 -07:00
Scott Shawcroft 125b276af0
Get CIRCUITPY FATFS directly.
Otherwise, you may actually get a non-root filesystem.

Fixes #6575
2022-08-04 16:06:27 -07:00
RetiredWizard 9e2f6dfc13
Turn off edit links when not editable 2022-08-03 17:56:43 -04:00
Jeff Epler 82be75adb5 Add ability to reserve psram
.. the primary user of which will be the camera, since the framebuffers
must be allocated via esp-idf allocation function and never from the
gc heap.

A board can have a default value, and the value can also be set in the
/.env file using the key CIRCUITPY_RESERVED_PSRAM with the value being
the reserved size in bytes.

Co-authored-by: Dan Halbert <halbert@adafruit.com>
2022-08-03 16:19:40 -05:00
RetiredWizard f3db5709c3
Add filename sort to web workflow file manager 2022-08-03 16:33:13 -04:00
Dan Halbert 291994b7d6
Merge pull request #6686 from andywarburton/main
WebWorkFlow CSS Tweaks for edit.html
2022-08-02 21:36:37 -04:00
Dan Halbert 524cc5e274
Merge pull request #6685 from tannewt/esp32_ww
Enable Web Workflow on Feather ESP32 V2
2022-08-02 21:30:23 -04:00
Andy Warburton 019fbb1cb9 Merge branch 'main' of https://github.com/andywarburton/circuitpython 2022-08-02 21:10:46 +01:00
Andy Warburton b67f3585e8 css tweaks for edit.html
added remote css support to webworkflow edit.html and moved in page css out to the external stylesheet.
2022-08-02 21:10:39 +01:00
Scott Shawcroft b38109c488
Merge pull request #6682 from andywarburton/main
added remote CSS links to web work flow
2022-08-02 11:03:42 -07:00
Scott Shawcroft f8c183bf3a
Merge pull request #6683 from Neradoc/nera-web-workflow-2
Add Authorization to Allow-Headers in web workflow
2022-08-02 11:02:30 -07:00
Neradoc 063e168810 Add Authorization to Allow-Headers in web workflow
Makes Safari happy
2022-08-02 18:40:10 +02:00
Andy Warburton 5d653772cd added version number to file name
added version number to file name
2022-08-02 16:43:40 +01:00
Andy Warburton 1448bcab6b added remote CSS links to web work flow
added remote css URL to pull additional CSS from the circuitpython.org site (apologies for the  black background - this is temporary, I'll send an update to the CP.org css *very* shortly that will undo this)
2022-08-02 16:36:20 +01:00
foamyguy da8451b7cc fix edit URL for files inside of directories 2022-08-01 21:56:11 -05:00
Scott Shawcroft 9661d3256c
Add more ESP32 boards and enable web workflow 2022-08-01 15:52:08 -07:00
Scott Shawcroft 462eb71570
Merge pull request #6611 from FoamyGuy/webflow_edit_page
Webflow edit page
2022-07-29 16:30:53 -07:00
Dan Halbert 8b2f061563
Merge pull request #6666 from tannewt/fix_web_paste
Lots of web workflow, C3 and title bar fixes
2022-07-29 17:10:46 -04:00
Scott Shawcroft 312e298890
Fix other ESP builds and arduino_nano_33_iot 2022-07-29 11:02:35 -07:00
Scott Shawcroft 51006f5eeb
Merge branch 'main' into webflow_edit_page 2022-07-29 10:03:07 -07:00
Scott Shawcroft 96e870dc77
Merge pull request #6662 from andywarburton/main
Added css support to web workflow
2022-07-29 09:42:13 -07:00
Scott Shawcroft d6344812e8
Lots of web workflow, C3 and title bar fixes
* Fixes #6221 - C3 hang on `import wifi`. Enabling the WiFi PHY was
  disabling USB. Now boards that use it set CONFIG_ESP_PHY_ENABLE_USB
  explicitly.
* Fixes #6655 - Allows pasting into the web serial page. Fixes reading
  more than 0xf bytes at a time.
* Fixes #6653 - Fixes web socket encoding of payloads >125 bytes. Can
  happen when printing a long string.
* Fixes C3 responsiveness when waiting for key to enter REPL. (It
  now correctly stops sleeping.)
* Disables title bar updates when in raw REPL. Related to #6548.
* Adds version to title bar.
2022-07-28 16:06:56 -07:00
Scott Shawcroft c4c15206e7
Merge pull request #6608 from tannewt/web_workflow_port
Allow for dynamic reconfigure including port
2022-07-28 12:59:31 -07:00
Scott Shawcroft 35797ff3f0
Remove trailing spaces 2022-07-28 12:52:41 -07:00
Scott Shawcroft b11eb12da5
Fix modified time. Use snprintf for uint64_t printing. 2022-07-28 11:00:26 -07:00
Andy Warburton ac53e7e439 further refinements 2022-07-28 16:57:02 +01:00
Scott Shawcroft babd4ee618
Tweaks based on review comments 2022-07-28 08:43:36 -07:00
Scott Shawcroft 8b6e4cc4e8
Delete trailing spaces 2022-07-28 08:18:52 -07:00
Scott Shawcroft df14f95398
Delete trailing spaces 2022-07-28 08:16:51 -07:00
Scott Shawcroft 1332bb6534
Add newline 2022-07-28 08:16:16 -07:00
Andy Warburton ccd6063284 Update welcome.html
Made html more semantic.
2022-07-28 16:08:05 +01:00
Andy Warburton 2a0e4f7ee2 added css support to web workflow
Added a bare minimum css implementation to web workflow to improve readability
2022-07-28 12:03:22 +01:00
Scott Shawcroft 931757f4a9
Improve web workflow responsiveness
1. Run the socket select task at the same priority as CP. This is
  needed because it queues up the background work. Without it, CP
  needed to sleep to let the lower priority task go.
2. Close the active socket on disconnect. This prevents looping
  over a disconnected but not closed socket.

Fixes #6610. Fixes #6613
2022-07-26 15:29:49 -07:00
Scott Shawcroft f9cc4ec61b
Fix print chunk 2022-07-26 11:51:10 -07:00
Scott Shawcroft 1a7082ff1d
Add newline for pre-commit 2022-07-26 08:37:33 -07:00
foamyguy 0ef6871a93 save with ctrl-s 2022-07-25 19:30:44 -05:00
foamyguy d0782b60cb Merge branch 'main' into webflow_edit_page
# Conflicts:
#	supervisor/shared/web_workflow/web_workflow.c
2022-07-25 19:20:05 -05:00
foamyguy a33985a73f change to basic <textarea> version 2022-07-25 19:15:43 -05:00
Scott Shawcroft f4927dd2d6
Use mp_printf instead of snprintf 2022-07-25 16:58:54 -07:00
Scott Shawcroft 6d6234443d
Merge remote-tracking branch 'adafruit/main' into web_workflow_port 2022-07-25 15:57:58 -07:00
Neradoc 09915ab0b9 compare all static ok hosts with port, add 127.0.0.1 and localhost to it
use strncmp rather than memcmp, one of the strings coul be smaller than the other
2022-07-24 15:15:10 +02:00
Neradoc 6575598ae6 HTTP headers and methods are not case sensitive
had the issue where Firefox would send "authorization" in lower case
2022-07-24 14:28:01 +02:00
Neradoc 9a6c3884a7 do options unauthenticated first, fix testing localhost 2022-07-24 14:28:01 +02:00
Neradoc 40cb0aac7c CORS preflight: allow OPTIONS without authentication
check for 127.0.0.1 without a port specified
2022-07-24 14:28:01 +02:00
foamyguy 541e448100 set the href for edit links in the directory list 2022-07-15 19:56:29 -05:00
foamyguy 584e27139e add back /edit/ handler and specify ES6 quote chars for jsmin 2022-07-15 19:49:03 -05:00
Scott Shawcroft 78b4159448
Allow for dynamic reconfigure including port 2022-07-15 16:33:12 -07:00
foamyguy a46a44db26 adding edit page 2022-07-15 16:25:57 -05:00
Scott Shawcroft e9dd254127
Add socket select task to wake CP
This fixes the web workflow on boards without a display.

Fixes #6552
2022-07-13 17:35:35 -07:00
Scott Shawcroft ac460dd1e1
Merge branch 'main' into esp32 2022-07-13 15:30:53 -07:00
Scott Shawcroft 031c124a81
Tweak serial page to work better in Chrome 2022-07-12 14:12:39 -07:00
Scott Shawcroft 15fe386457
Fix build and minify html and js 2022-07-12 11:13:17 -07:00
Scott Shawcroft 425a0efeca
A bit more cleanup 2022-07-11 14:53:20 -07:00