Modern Software 2025 Edition

4 months ago 7

Back in the olden times, software was hard to build and hard to use, but remarkable improvements have been made, and entire ecosystems of ergonomic languages are now available. I happen to think the old ways still have some merit, but don’t want to spend all my time staring at the cave walls.

Gleam v1.11.0 was released today, so let’s give it a whirl.

vivo:~/work/gleam-1.11.0> make grep: repetition-operator operand invalid

Off to a great start. I can follow instructions, however, and run the install command as directed.

vivo:~/work/gleam-1.11.0> make install cd gleam-bin && cargo install --path . --force --locked Installing gleam v1.11.0 (/home/tedu/work/gleam-1.11.0/gleam-bin) Updating crates.io index thread 'main' panicked at src/tools/cargo/src/cargo/sources/registry/http_remote.rs:288:9: assertion `left == right` failed left: 384 right: 385 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace *** Error 101 in /home/tedu/work/gleam-1.11.0 (Makefile:15 'install')

Sweet. I will do as instructed.

vivo:~/work/gleam-1.11.0> env RUST_BACKTRACE=1 make install cd gleam-bin && cargo install --path . --force --locked Installing gleam v1.11.0 (/home/tedu/work/gleam-1.11.0/gleam-bin) Updating crates.io index thread 'main' panicked at src/tools/cargo/src/cargo/sources/registry/http_remote.rs:288:9: assertion `left == right` failed left: 384 right: 385 stack backtrace: note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace. *** Error 101 in /home/tedu/work/gleam-1.11.0 (Makefile:15 'install')

Progress! I am happy to continue towards the light.

vivo:~/work/gleam-1.11.0> env RUST_BACKTRACE=full make install cd gleam-bin && cargo install --path . --force --locked Installing gleam v1.11.0 (/home/tedu/work/gleam-1.11.0/gleam-bin) Updating crates.io index thread 'main' panicked at src/tools/cargo/src/cargo/sources/registry/http_remote.rs:288:9: assertion `left == right` failed left: 384 right: 385 stack backtrace: 0: 0x84cc513d27e - <unknown> 1: 0x84cc516a601 - <unknown> 2: 0x84cc5128b94 - <unknown> 3: 0x84cc513d0c7 - <unknown> 4: 0x84cc514a8fd - <unknown> 5: 0x84cc514a7b4 - <unknown> 6: 0x84cc514b02b - <unknown> 7: 0x84cc513d7ab - <unknown> 8: 0x84cc513d4dd - <unknown> 9: 0x84cc514ab31 - <unknown> 10: 0x84cc51716a4 - <unknown> 11: 0x84cc5171a1e - <unknown> 12: 0x84cc51718d1 - <unknown> 13: 0x84cc451a2b3 - <unknown> 14: 0x84cc469eca1 - <unknown> 15: 0x84cc4418666 - <unknown> 16: 0x84cc446e275 - <unknown> 17: 0x84cc47b57b6 - <unknown> 18: 0x84cc47b911a - <unknown> 19: 0x84cc3f7de24 - <unknown> 20: 0x84cc3f9fd4b - <unknown> 21: 0x84cc3f9ca93 - <unknown> 22: 0x84cc3f8db31 - <unknown> 23: 0x84cc3ec589a - <unknown> 24: 0x84cc3f86360 - <unknown> 25: 0x84cc51543f8 - <unknown> 26: 0x84cc3f92281 - <unknown> 27: 0x84cc3eaef2b - <unknown> *** Error 101 in /home/tedu/work/gleam-1.11.0 (Makefile:15 'install')

Having examined the tea leaves, I decide that the answer is to run make build instead of make install.

vivo:~/work/gleam-1.11.0> make build cargo build --release Updating crates.io index Downloaded anstyle-parse v0.2.4 Downloaded asn1-rs-derive v0.4.0 Downloaded matchers v0.0.1 Downloaded 335 crates (23.8MiB) in 4.05s (largest was `age` at 1.4MiB) Compiling proc-macro2 v1.0.95 Compiling unicode-ident v1.0.12 Compiling gleam-wasm v1.11.0 (/home/tedu/work/gleam-1.11.0/compiler-wasm) Finished `release` profile [optimized] target(s) in 6m 13s

This works just fine. I now have a gleam binary in the targets directory.

vivo:/tmp> gleam new hi Your Gleam project hi has been successfully created. The project can be compiled and tested by running these commands: cd hi gleam test vivo:/tmp> cd hi /tmp/hi vivo:/tmp/hi> ls README.md gleam.toml src/ test/

Success! It works.

vivo:/tmp/hi> gleam test Resolving versions Downloading packages Downloaded 2 packages in 0.16s Compiling gleam_stdlib Illegal instruction

Ah, well. Back to the cave.

Posted 03 Jun 2025 02:42 by tedu Updated: 03 Jun 2025 02:42
Tagged: rants software

Read Entire Article