chiark / gitweb /
otter.git
4 years agodaemon: Fix many errors (OER rather than OE)
Ian Jackson [Sat, 30 Jan 2021 23:46:14 +0000 (23:46 +0000)]
daemon: Fix many errors (OER rather than OE)

Firstly, all these functions shuuld throw OER which is the thing which
implements the Rocket Responder trait, so that the error actually goes
back to the client.

Secondly, they all need ?.  Without that, these functions all always
succeed and always return Result::Ok(some Result<, OE[R]>).
Surprisingly this is accepted, because Result<> impl Responder
and apparently Result<Result<..>> does too!

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoRemove a space
Ian Jackson [Sat, 30 Jan 2021 14:58:15 +0000 (14:58 +0000)]
Remove a space

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agocargo: Update to lazy_init 0.5
Ian Jackson [Sat, 30 Jan 2021 14:43:19 +0000 (14:43 +0000)]
cargo: Update to lazy_init 0.5

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agodaemon Cargo.toml: Fix dependency versions
Ian Jackson [Sat, 30 Jan 2021 14:11:24 +0000 (14:11 +0000)]
daemon Cargo.toml: Fix dependency versions

We fixed this for src/ but daemon's Cargo.toml was resurrected from an
earlier state so missed it.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoMakefile: pass cargo --workspace, (nearly) always
Ian Jackson [Sat, 30 Jan 2021 14:33:39 +0000 (14:33 +0000)]
Makefile: pass cargo --workspace, (nearly) always

This seems to work around
  https://github.com/rust-lang/cargo/issues/9114
  https://github.com/rust-lang/cargo/issues/9114

The WASM call doesn't have it because (i) we want that to be minimal
(ii) there's only the one call to cargo for that architecture.

Build times:

  touch src/updates.rs; (time make -j12 wdt) 2>&1 |ts -s %.s
    before 26s    after 19s

  touch src/updates.rs; (time make -j12) 2>&1 |ts -s %.s
    before 33s    after 27s

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoDrop thirtyfour_sync from Cargo.nail, our MR was merged
Ian Jackson [Sat, 30 Jan 2021 01:56:36 +0000 (01:56 +0000)]
Drop thirtyfour_sync from Cargo.nail, our MR was merged

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agocargo update
Ian Jackson [Sat, 30 Jan 2021 01:49:54 +0000 (01:49 +0000)]
cargo update

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Apply test! to wdt-altergame
Ian Jackson [Sat, 30 Jan 2021 01:31:23 +0000 (01:31 +0000)]
wdt: Apply test! to wdt-altergame

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Provide ActionChainExt::move_pc for convenience
Ian Jackson [Sat, 30 Jan 2021 01:25:32 +0000 (01:25 +0000)]
wdt: Provide ActionChainExt::move_pc for convenience

And use it in one place.  NFC.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt-simple: conflict: establish our preconditions
Ian Jackson [Sat, 30 Jan 2021 01:18:33 +0000 (01:18 +0000)]
wdt-simple: conflict: establish our preconditions

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Tidy up test selection etc.
Ian Jackson [Sat, 30 Jan 2021 01:13:18 +0000 (01:13 +0000)]
wdt: Tidy up test selection etc.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Allow test name argument
Ian Jackson [Sat, 30 Jan 2021 01:09:55 +0000 (01:09 +0000)]
wdt: Allow test name argument

Currently only for wdt-simple, and not complete yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: conflict test actually tests, and passes, yay!
Ian Jackson [Fri, 29 Jan 2021 23:22:00 +0000 (23:22 +0000)]
wdt: conflict test actually tests, and passes, yay!

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoutils: Improve ensure_eq! so it always takes references
Ian Jackson [Fri, 29 Jan 2021 23:21:12 +0000 (23:21 +0000)]
utils: Improve ensure_eq! so it always takes references

That saves some minorly annoying & typing

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: wdt-simple: get client into gots
Ian Jackson [Fri, 29 Jan 2021 22:55:32 +0000 (22:55 +0000)]
wdt: wdt-simple: get client into gots

Not used yet

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Provide WindowGuard::client()
Ian Jackson [Fri, 29 Jan 2021 22:55:16 +0000 (22:55 +0000)]
wdt: Provide WindowGuard::client()

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: wdt-simple: Remove an unused variable
Ian Jackson [Fri, 29 Jan 2021 22:54:55 +0000 (22:54 +0000)]
wdt: wdt-simple: Remove an unused variable

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: remove some silly lifetime annotations nfc
Ian Jackson [Fri, 29 Jan 2021 22:54:35 +0000 (22:54 +0000)]
wdt: remove some silly lifetime annotations nfc

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: import OnceCell into scope nfc
Ian Jackson [Fri, 29 Jan 2021 22:53:43 +0000 (22:53 +0000)]
wdt: import OnceCell into scope nfc

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdates: Clean up an obsolete type alias
Ian Jackson [Fri, 29 Jan 2021 22:31:34 +0000 (22:31 +0000)]
updates: Clean up an obsolete type alias

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: clean up conflict check
Ian Jackson [Fri, 29 Jan 2021 21:15:08 +0000 (21:15 +0000)]
wdt: clean up conflict check

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdates, errors: Completely revamp error handling
Ian Jackson [Sat, 30 Jan 2021 00:36:53 +0000 (00:36 +0000)]
updates, errors: Completely revamp error handling

There were multiple bugs here.  We weren't coherent about what to send
to whom, and whether to update the piece generation, if there was an
error (including a conflict or a partially processed API op).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdates: Formatting fix (nfc)
Ian Jackson [Sat, 30 Jan 2021 00:36:40 +0000 (00:36 +0000)]
updates: Formatting fix (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdates: Break out some sub-functiosn
Ian Jackson [Sat, 30 Jan 2021 00:22:47 +0000 (00:22 +0000)]
updates: Break out some sub-functiosn

We're going to want to reuse this.

Broken out of a portmanteau commit.  NFC.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdates, errors: Add some missing Clone impls (nfc)
Ian Jackson [Sat, 30 Jan 2021 00:07:58 +0000 (00:07 +0000)]
updates, errors: Add some missing Clone impls (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdates, errors: Break out PUE_Piece::json_len (nfc)
Ian Jackson [Sat, 30 Jan 2021 00:05:54 +0000 (00:05 +0000)]
updates, errors: Break out PUE_Piece::json_len (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdates, errors: Reformat IsResponseToClientOp (nfc)
Ian Jackson [Sat, 30 Jan 2021 00:04:53 +0000 (00:04 +0000)]
updates, errors: Reformat IsResponseToClientOp (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdates, errors: Add a doc comment
Ian Jackson [Sat, 30 Jan 2021 00:04:00 +0000 (00:04 +0000)]
updates, errors: Add a doc comment

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Use w.piece_held()
Ian Jackson [Fri, 29 Jan 2021 18:21:37 +0000 (18:21 +0000)]
wdt: Use w.piece_held()

Rather than the clone-and-hack copy.  Tidying up, NFC.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: conflict test, further wip
Ian Jackson [Thu, 28 Jan 2021 18:09:09 +0000 (18:09 +0000)]
wdt: conflict test, further wip

Not a complete test yet.

There are bugs to fix here.  In particular, right now, it seems that
both clients get a conflict ?

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: conflict test, further wip
Ian Jackson [Wed, 27 Jan 2021 01:52:24 +0000 (01:52 +0000)]
wdt: conflict test, further wip

Not a complete test yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: wip test selection
Ian Jackson [Fri, 29 Jan 2021 19:09:22 +0000 (19:09 +0000)]
wdt: wip test selection

This is very incomplete but it doesn't cause any *trouble* per se.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoscript: Add a log message for error piece update
Ian Jackson [Fri, 29 Jan 2021 19:45:13 +0000 (19:45 +0000)]
script: Add a log message for error piece update

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: drag off: synch before chk
Ian Jackson [Fri, 29 Jan 2021 19:36:11 +0000 (19:36 +0000)]
wdt: drag off: synch before chk

Otherwise we can see the client's uncorrected view of things.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoapi: Add some extra debug for api op processing
Ian Jackson [Fri, 29 Jan 2021 18:21:47 +0000 (18:21 +0000)]
api: Add some extra debug for api op processing

This helps debug the conflict protocol (PROTOCOL.md).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoutils: Improve display_as_debug! so it can pass generic params
Ian Jackson [Mon, 25 Jan 2021 19:26:53 +0000 (19:26 +0000)]
utils: Improve display_as_debug! so it can pass generic params

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agointroduce TransmitUpdateEntry_Piece (nfc)
Ian Jackson [Mon, 25 Jan 2021 18:44:21 +0000 (18:44 +0000)]
introduce TransmitUpdateEntry_Piece (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agointroduce PreparedUpdateEntry_Piece (nfc)
Ian Jackson [Sun, 24 Jan 2021 11:47:43 +0000 (11:47 +0000)]
introduce PreparedUpdateEntry_Piece (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Break out w.piece_held()
Ian Jackson [Thu, 28 Jan 2021 17:45:25 +0000 (17:45 +0000)]
wdt: Break out w.piece_held()

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Fix unselect test to actually work
Ian Jackson [Thu, 28 Jan 2021 17:39:34 +0000 (17:39 +0000)]
wdt: Fix unselect test to actually work

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Tidy up new facilities
Ian Jackson [Thu, 28 Jan 2021 17:37:32 +0000 (17:37 +0000)]
wdt: Tidy up new facilities

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Use new facilities
Ian Jackson [Thu, 28 Jan 2021 17:10:47 +0000 (17:10 +0000)]
wdt: Use new facilities

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: new move_pos extension method
Ian Jackson [Thu, 28 Jan 2021 17:05:06 +0000 (17:05 +0000)]
wdt: new move_pos extension method

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Use new w_move extension method
Ian Jackson [Thu, 28 Jan 2021 16:54:44 +0000 (16:54 +0000)]
wdt: Use new w_move extension method

This necessitates using our branch of thirtyfour_sync until
  Make action_chain module pub
  https://github.com/stevepryde/thirtyfour_sync/pull/4

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: wip new pos handling trait
Ian Jackson [Thu, 28 Jan 2021 16:12:16 +0000 (16:12 +0000)]
wdt: wip new pos handling trait

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: wip new pos handling trait
Ian Jackson [Thu, 28 Jan 2021 16:08:38 +0000 (16:08 +0000)]
wdt: wip new pos handling trait

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: wip conflict test
Ian Jackson [Wed, 27 Jan 2021 01:12:05 +0000 (01:12 +0000)]
wdt: wip conflict test

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: replace an assert with an ensure
Ian Jackson [Wed, 27 Jan 2021 00:55:07 +0000 (00:55 +0000)]
wdt: replace an assert with an ensure

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: plumb server child through to Setup
Ian Jackson [Wed, 27 Jan 2021 00:04:01 +0000 (00:04 +0000)]
wdt: plumb server child through to Setup

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: drag_end test, works
Ian Jackson [Tue, 26 Jan 2021 23:58:16 +0000 (23:58 +0000)]
wdt: drag_end test, works

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: wip drag_end test
Ian Jackson [Tue, 26 Jan 2021 23:47:22 +0000 (23:47 +0000)]
wdt: wip drag_end test

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: nailing-cargo generate-lockfile, updates wasi
Ian Jackson [Tue, 26 Jan 2021 23:30:53 +0000 (23:30 +0000)]
wdt: nailing-cargo generate-lockfile, updates wasi

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Drop direct toml dependency again
Ian Jackson [Tue, 26 Jan 2021 23:29:57 +0000 (23:29 +0000)]
wdt: Drop direct toml dependency again

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Actually read spec, and make it work
Ian Jackson [Tue, 26 Jan 2021 23:20:29 +0000 (23:20 +0000)]
wdt: Actually read spec, and make it work

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Provide game_spec_data
Ian Jackson [Tue, 26 Jan 2021 23:17:26 +0000 (23:17 +0000)]
wdt: Provide game_spec_data

No caller yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Break out game_spec_path
Ian Jackson [Tue, 26 Jan 2021 23:05:57 +0000 (23:05 +0000)]
wdt: Break out game_spec_path

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowdt: Break out posg2posw, nfc
Ian Jackson [Tue, 26 Jan 2021 23:02:39 +0000 (23:02 +0000)]
wdt: Break out posg2posw, nfc

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agocargo update
Ian Jackson [Tue, 26 Jan 2021 22:48:44 +0000 (22:48 +0000)]
cargo update

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdatee wasm-bindgen
Ian Jackson [Tue, 26 Jan 2021 22:38:51 +0000 (22:38 +0000)]
updatee wasm-bindgen

Got this message:

  nailing-cargo: invoking: /home/ian/Rustup/Game/Build/wasm-pack/target/debug/wasm-pack --cargo-path=/bin/echo build --out-dir=../target/packed-wasm wasm -t no-modules --release
  \e[1m\e[2m[INFO]\e[0m: Checking for the Wasm target...
  \e[1m\e[2m[INFO]\e[0m: Compiling to Wasm...
  build --lib --release --target wasm32-unknown-unknown
  :-) \e[1m\e[2m[WARN]\e[0m: origin crate has no README
  \e[1m\e[2m[INFO]\e[0m: License key is set in Cargo.toml but no LICENSE file(s) were found; Please add the LICENSE file(s) to your project directory
  \e[1m\e[2m[INFO]\e[0m: Installing wasm-bindgen...
  error:

  it looks like the Rust project used to create this wasm file was linked against
  a different version of wasm-bindgen than this binary:

    rust wasm file: 0.2.69
       this binary: 0.2.70 (b6355c270)

  Currently the bindgen format is unstable enough that these two version must
  exactly match, so it's required that these two version are kept in sync by
  either updating the wasm-bindgen dependency or this binary. You should be able
  to update the wasm-bindgen dependency with:

      cargo update -p wasm-bindgen

  or you can update the binary with

      cargo install -f wasm-bindgen-cli

  if this warning fails to go away though and you're not sure what to do feel free
  to open an issue at https://github.com/rustwasm/wasm-bindgen/issues!

  Error: Running the wasm-bindgen CLI
  Caused by: failed to execute `wasm-bindgen`: exited with exit code: 1
    full command: "/home/rustcargo/.cache/.wasm-pack/wasm-bindgen-454f7c61ea4f4e72/wasm-bindgen" "/volatile/rustcargo/Rustup/Game/server/target/wasm32-unknown-unknown/release/otter_wasm.wasm" "--out-dir" "wasm/../target/packed-wasm" "--typescript" "--target" "no-modules"
  nailing-cargo: really failed (exit status 256)
  nailing-cargo: unnailed.  status 1.
  make: *** [Makefile:199: stamp/wasm-pack] Error 1

  Compilation exited abnormally with code 2 at Tue Jan 26 22:35:13

This message appeared after a `make clean` and then rerunning the
build "fixed" it; `make clean` produced it again.  This is not
confidence-inspiring.

cargo update fixed it.

But I thought wasm-pack was supposed to handle this properly.  Not
sure why I am using it, now.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoAdd a todo note about wasm ABI
Ian Jackson [Tue, 26 Jan 2021 22:31:12 +0000 (22:31 +0000)]
Add a todo note about wasm ABI

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoremove redundant #![feature...]
Ian Jackson [Tue, 26 Jan 2021 22:16:08 +0000 (22:16 +0000)]
remove redundant #![feature...]

Updated nightly, now this is stable, yay!

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoremove redundant semicolons
Ian Jackson [Tue, 26 Jan 2021 22:14:21 +0000 (22:14 +0000)]
remove redundant semicolons

Updated nightly, new warning.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agowhitespace changes
Ian Jackson [Sat, 23 Jan 2021 18:59:40 +0000 (18:59 +0000)]
whitespace changes

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoPostpone a couple of JS xxx into todo
Ian Jackson [Sat, 16 Jan 2021 22:06:50 +0000 (22:06 +0000)]
Postpone a couple of JS xxx into todo

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoChange Coord to i32.
Ian Jackson [Wed, 20 Jan 2021 20:45:35 +0000 (20:45 +0000)]
Change Coord to i32.

Size should not depend on our pointer size, so isize is wrong.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agocargo update
Ian Jackson [Sat, 16 Jan 2021 12:13:07 +0000 (12:13 +0000)]
cargo update

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agomake clean: Remove emacs backup files too otter-0.3.0
Ian Jackson [Thu, 14 Jan 2021 20:51:57 +0000 (20:51 +0000)]
make clean: Remove emacs backup files too

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoRemove three obsolete files
Ian Jackson [Thu, 14 Jan 2021 20:49:39 +0000 (20:49 +0000)]
Remove three obsolete files

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agobump version to 0.3.0
Ian Jackson [Thu, 14 Jan 2021 20:33:44 +0000 (20:33 +0000)]
bump version to 0.3.0

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agolibrary: Adjust red to be a little less pale
Ian Jackson [Thu, 14 Jan 2021 15:16:25 +0000 (15:16 +0000)]
library: Adjust red to be a little less pale

This makes the red pieces less pink-looking.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agolibrary: Make dark pieces (purple and red) have pale edges
Ian Jackson [Thu, 14 Jan 2021 12:19:06 +0000 (12:19 +0000)]
library: Make dark pieces (purple and red) have pale edges

This makes them easier to spot.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: styling
Ian Jackson [Thu, 14 Jan 2021 02:03:45 +0000 (02:03 +0000)]
infopane: styling

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: styling
Ian Jackson [Thu, 14 Jan 2021 01:25:59 +0000 (01:25 +0000)]
infopane: styling

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: show account names
Ian Jackson [Thu, 14 Jan 2021 01:15:21 +0000 (01:15 +0000)]
infopane: show account names

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoProvide account in PlayerRecord
Ian Jackson [Thu, 14 Jan 2021 01:13:28 +0000 (01:13 +0000)]
Provide account in PlayerRecord

This is an Arc<>.  It saves us a good deal of lock hierarchy trouble.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: temporarly mark ipl as unused
Ian Jackson [Thu, 14 Jan 2021 01:13:11 +0000 (01:13 +0000)]
infopane: temporarly mark ipl as unused

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: wip player list, displays something, before accounts
Ian Jackson [Thu, 14 Jan 2021 01:02:13 +0000 (01:02 +0000)]
infopane: wip player list, displays something, before accounts

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Prep for player list
Ian Jackson [Thu, 14 Jan 2021 00:28:08 +0000 (00:28 +0000)]
infopane: Prep for player list

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Plumbing for player list, shows up in client
Ian Jackson [Thu, 14 Jan 2021 00:25:59 +0000 (00:25 +0000)]
infopane: Plumbing for player list, shows up in client

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agonwtemplates: move error conversion into nwtemplates
Ian Jackson [Thu, 14 Jan 2021 00:24:43 +0000 (00:24 +0000)]
nwtemplates: move error conversion into nwtemplates

tera::Error is not Sync so we can't use anyhow on it

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agolandscape: Fix some CSS syntax
Ian Jackson [Thu, 14 Jan 2021 00:08:45 +0000 (00:08 +0000)]
landscape: Fix some CSS syntax

Prompted by browser warning in console.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Plumbing for player list, shows up in client
Ian Jackson [Thu, 14 Jan 2021 00:06:45 +0000 (00:06 +0000)]
infopane: Plumbing for player list, shows up in client

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Plumbing for player list
Ian Jackson [Thu, 14 Jan 2021 00:00:41 +0000 (00:00 +0000)]
infopane: Plumbing for player list

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Plumbing for player list
Ian Jackson [Wed, 13 Jan 2021 23:50:05 +0000 (23:50 +0000)]
infopane: Plumbing for player list

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Pane switching machinery
Ian Jackson [Wed, 13 Jan 2021 23:16:08 +0000 (23:16 +0000)]
infopane: Pane switching machinery

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Add another wrapper div for switching
Ian Jackson [Wed, 13 Jan 2021 22:53:17 +0000 (22:53 +0000)]
infopane: Add another wrapper div for switching

Setitng display: none on uopane seems to DTRT.

No intentional resulting overall layout change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Move background colour to infopane from us
Ian Jackson [Wed, 13 Jan 2021 22:49:45 +0000 (22:49 +0000)]
infopane: Move background colour to infopane from us

No intentional resulting overall visual change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Move layout sizing to infopane from us
Ian Jackson [Wed, 13 Jan 2021 22:48:41 +0000 (22:48 +0000)]
infopane: Move layout sizing to infopane from us

No intentional resulting overall layout change.  Ha ha ha.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoinfopane: Start to split up, wrap in a new div, rename macro, nfc
Ian Jackson [Wed, 13 Jan 2021 22:26:21 +0000 (22:26 +0000)]
infopane: Start to split up, wrap in a new div, rename macro, nfc

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoclick elsewhere, or on pinned piece, deselects all, only unshifted
Ian Jackson [Wed, 13 Jan 2021 22:19:38 +0000 (22:19 +0000)]
click elsewhere, or on pinned piece, deselects all, only unshifted

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoclick elsewhere, or on pinned piece, deselects all
Ian Jackson [Wed, 13 Jan 2021 22:18:12 +0000 (22:18 +0000)]
click elsewhere, or on pinned piece, deselects all

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoscript.ts: Expose `pieces` to global scope, for wdt
Ian Jackson [Wed, 13 Jan 2021 22:17:43 +0000 (22:17 +0000)]
script.ts: Expose `pieces` to global scope, for wdt

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoComment about alternatives we considered
Ian Jackson [Wed, 13 Jan 2021 21:58:45 +0000 (21:58 +0000)]
Comment about alternatives we considered

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoDo not reset access tokens (ie, invalidate urls) if access is the same
Ian Jackson [Wed, 13 Jan 2021 21:36:24 +0000 (21:36 +0000)]
Do not reset access tokens (ie, invalidate urls) if access is the same

This means that if the user specifies an access option to
`otter --join-game` they don't get thrown off if it was the same as
before.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoAdd tmp to .gitignore
Ian Jackson [Wed, 13 Jan 2021 21:18:53 +0000 (21:18 +0000)]
Add tmp to .gitignore

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoMakefile: Fix recent changes
Ian Jackson [Wed, 13 Jan 2021 21:11:37 +0000 (21:11 +0000)]
Makefile: Fix recent changes

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoMakefile: Exclude */build/* from rsrcs
Ian Jackson [Wed, 13 Jan 2021 21:06:31 +0000 (21:06 +0000)]
Makefile: Exclude */build/* from rsrcs

When not using nailing-cargo we may run bits of make concurrently with
builds and we don't want to pick up any cargo-downloaded stuff.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoMakefile: Fix a bare use of --just-run
Ian Jackson [Wed, 13 Jan 2021 21:01:55 +0000 (21:01 +0000)]
Makefile: Fix a bare use of --just-run

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdate to slotmap 1.x
Ian Jackson [Wed, 13 Jan 2021 18:19:50 +0000 (18:19 +0000)]
update to slotmap 1.x

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoupdate x11rb
Ian Jackson [Wed, 13 Jan 2021 02:02:04 +0000 (02:02 +0000)]
update x11rb

Prompted by
  nailing-cargo --subcommand-props='!locked,!target-dir,!offline' upgrades

Remaining are:

  slotmap >=0.4.0, <0.5.0 matches 0.4.0; latest is 1.0.2
             API break which affects us directly

  tera >=0.11.0, <0.12.0 matches 0.11.20; latest is 1.6.1
             we want to stay aligned with Rocket

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>