manual: revisions: add legend diagram from 1b2 (#4...
by whitequark 4 months 3 weeks
manual: revisions: add legend diagram from 1b2 (#418).
568e208d
pyproject.toml: fix spi-flashrom module name
by J. Neuschäfer 4 months 4 weeks
pyproject.toml: fix spi-flashrom module name

The module was temporarily called flashrom instead of spi_flashrom, but
this isn't the case anymore.
57cd1b45
manual: add links to the WebUSB port of the softwa...
by whitequark 4 months 4 weeks
7943521a
pyproject: constrain python-version in a less ambi...
by Austin Seipp 5 months 22 hours
pyproject: constrain python-version in a less ambiguous way

`uv` pointed this out to me while running glasgow; the `~=` operator
for dependency resolution is a bit subtle; it basically allows you to
"round up" the upper bound of a dependency but it does so based on the
least-sigificant-specified component of a version number.

Basically that means `~=3.11` is equal to "from any version 3.11 up-to
< 4.0" but `~3.11.0` means "from any version 3.11.0 up-to < 3.12.0".

We want the first, but it's apparently subtle enough that uv (probably
correctly, tbh) warns about it. Let's write it in a more unambiguous
way.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
3d58d712
applet.interface.spi_controller: fix mode parsing.
by Ahmed Charles 5 months 1 day
c8d9329b
support.usb.webusb: map `NetworkError` to `ErrorSt...
by whitequark 5 months 1 day
support.usb.webusb: map `NetworkError` to `ErrorStall`.

Disconnecting the device seems to produce a `NotFoundError` with
"The device was disconnected." in the message. This isn't a great
solution but I don't have anything better.
ec2f589f
software: add toolchain integration for Emscripten...
by whitequark 5 months 3 days
software: add toolchain integration for Emscripten.

This integration expects a global object like this:

globalThis.glasgowToolchain = {
packages: {
'yosys': '0.55',
'nextpnr-ice40': '0.8'
},
available(packageName) {
return packageName in this.packages;
},
version(packageName) {
return this.packages[packageName];
},
async build(files, scriptName, writeLine) {
writeLine("starting build...\n")
// ... do the build...
return {code: 0, files: ...};
}
}
58c9db37
hardware.device: request device during enumeration...
by whitequark 5 months 2 days
hardware.device: request device during enumeration.

Required for WebUSB backend.
f616eda9
cli: catch `SystemExit`.
by whitequark 5 months 2 days
cli: catch `SystemExit`.

Primarily useful for Emscripten port.
a4a68bc2
cli: allow `main` to be called multiple times.
by whitequark 5 months 2 days
cli: allow `main` to be called multiple times.

Primarily useful for the Emscripten port, but can also be used to
amortize startup latency in other cases.
ff5bf859
Report a bug