Summary

csi2 (0/2)

build (fail)
          [INFO] Building Spade Compiler
    Blocking waiting for file lock on build directory
    Finished `release` profile [optimized] target(s) in 39.20s
[INFO] Attempting to download surfer plugin wasm file.
[INFO] Done downloading surfer plugin
[INFO] Cloning "protocols"
[INFO] Building spade code
[ERROR] Failed to build spade code
Cloning into '/builds/spade-lang/trawler/work/csi2/build/libs/protocols'...
warning: redirecting to https://gitlab.com/spade-lang/lib/protocols.git/
HEAD is now at 7857ff5 Bump to new Spade
error: Path cannot be traversed
  ┌─ src/camera_config.spade:2:5
  │
2 │ use protocols::i2c::I2CConfig;
  │     ^^^^^^^^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:2:5
  │
2 │ mod i2c;
  │     --- The inaccessible item is defined here
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/main.spade:14:5
   │
11 │ mod short_packet;
   │     ------------ The item is inaccessible because this module is inaccessible
   ·
14 │ use lib::short_packet::ShortPacketStream;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │                  │
   │     │                  this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/uart_config.spade:1:5
  │
1 │ use protocols::uart::UartConfig;
  │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The inaccessible item is defined here
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ build/libs/protocols/src/test.spade:2:5
  │
2 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        
test (fail)
          [INFO] Building Spade Compiler
    Finished `release` profile [optimized] target(s) in 0.27s
[INFO] Building spade code
[ERROR] Failed to build spade code
HEAD is now at 7857ff5 Bump to new Spade
error: Path cannot be traversed
  ┌─ src/camera_config.spade:2:5
  │
2 │ use protocols::i2c::I2CConfig;
  │     ^^^^^^^^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:2:5
  │
2 │ mod i2c;
  │     --- The inaccessible item is defined here
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/main.spade:14:5
   │
11 │ mod short_packet;
   │     ------------ The item is inaccessible because this module is inaccessible
   ·
14 │ use lib::short_packet::ShortPacketStream;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │                  │
   │     │                  this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/uart_config.spade:1:5
  │
1 │ use protocols::uart::UartConfig;
  │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The inaccessible item is defined here
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ build/libs/protocols/src/test.spade:2:5
  │
2 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        

ethernet (0/1)

build (fail)
          [INFO] Building Spade Compiler
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on build directory
    Finished `release` profile [optimized] target(s) in 1m 20s
[INFO] Attempting to download surfer plugin wasm file.
[INFO] Done downloading surfer plugin
[INFO] Cloning "ecp5stubs"
[INFO] Cloning "ready_valid"
[INFO] Cloning "nstd"
[INFO] Building spade code
[ERROR] Failed to build spade code
Cloning into '/builds/spade-lang/trawler/work/ethernet/build/libs/ecp5stubs'...
warning: redirecting to https://gitlab.com/spade-lang/lib/ecp5stubs.git/
HEAD is now at 324d7b0 Remove unused bool_to_clock import
Cloning into '/builds/spade-lang/trawler/work/ethernet/build/libs/ready_valid'...
HEAD is now at f468088 Add into_element_stream
Cloning into '/builds/spade-lang/trawler/work/ethernet/build/libs/nstd'...
HEAD is now at 94b272a Use correct next in fold
error: Path cannot be traversed
  ┌─ src/arp.spade:2:5
  │
2 │ use lib::ethernet::MacAddr;
  │     ^^^^^^^^^^^^^^^^^^^^^^
  │     │              │
  │     │              this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/main.spade:5:5
  │
5 │ mod ethernet;
  │     -------- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/common.spade:4:5
  │
4 │ use lib::ethernet_tx::EthernetStream;
  │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  │     │                 │
  │     │                 this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/main.spade:7:5
  │
7 │ mod ethernet_tx;
  │     ----------- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/ethernet_rx.spade:8:5
  │
8 │ use lib::header_payload_rx_stream::HeaderPayloadRxStream;
  │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  │     │                              │
  │     │                              this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/main.spade:9:5
  │
9 │ mod header_payload_rx_stream;
  │     ------------------------ The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/ethernet_tx.spade:4:5
   │
 4 │ use lib::ethernet::EthernetHeader;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │              │
   │     │              this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/ethernet.spade:8:1
   │  
 8 │ ╭ struct EthernetHeader {
 9 │ │     source: MacAddr,
10 │ │     dest: MacAddr,
11 │ │     type_or_len: uint<16>,
12 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:5:5
   │
 5 │ mod ethernet;
   │     -------- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
    ┌─ src/header_payload_rx_stream.spade:139:69
    │
139 │ entity into_fixed_size_inner_header_th(self_: HeaderPayloadRxStream<lib::ethernet::EthernetHeader>, clk: clock, rst: bool) -> HeaderPayloadRxStream<[uint<8>; 6]> {
    │                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    │                                                                     │              │
    │                                                                     │              this item is not inaccessible from the current namespace
    │                                                                     Path cannot be traversed
    │
    ┌─ src/ethernet.spade:8:1
    │  
  8 │ ╭ struct EthernetHeader {
  9 │ │     source: MacAddr,
 10 │ │     dest: MacAddr,
 11 │ │     type_or_len: uint<16>,
 12 │ │ }
    │ ╰─' The inaccessible item is defined here
    │  
    ┌─ src/main.spade:5:5
    │
  5 │ mod ethernet;
    │     -------- The item is inaccessible because this module is inaccessible
    │
    = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/header_payload_tx_stream.spade:5:5
  │
5 │ use ready_valid::Rv;
  │     ^^^^^^^^^^^^^^^
  │     │            │
  │     │            this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/icmp_rx.spade:3:5
   │
 3 │ use lib::icmp::IcmpHeader;
   │     ^^^^^^^^^^^^^^^^^^^^^
   │     │          │
   │     │          this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/icmp.spade:11:1
   │  
11 │ ╭ struct IcmpHeader {
12 │ │     type: uint<8>,
13 │ │     code: uint<8>,
14 │ │     checksum: uint<16>,
15 │ │     rest: [uint<8>; 4]
16 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:11:5
   │
11 │ mod icmp;
   │     ---- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/icmp_tx.spade:5:5
   │
 5 │ use lib::icmp::IcmpHeader;
   │     ^^^^^^^^^^^^^^^^^^^^^
   │     │          │
   │     │          this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/icmp.spade:11:1
   │  
11 │ ╭ struct IcmpHeader {
12 │ │     type: uint<8>,
13 │ │     code: uint<8>,
14 │ │     checksum: uint<16>,
15 │ │     rest: [uint<8>; 4]
16 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:11:5
   │
11 │ mod icmp;
   │     ---- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/ip_rx.spade:3:5
  │
3 │ use lib::header_payload_rx_stream::HeaderPayloadRxStream;
  │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  │     │                              │
  │     │                              this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/header_payload_rx_stream.spade:5:1
  │  
5 │ ╭ struct HeaderPayloadRxStream<Header> {
6 │ │     headers: Option<Header>,
7 │ │     payload: Option<uint<8>>,
8 │ │     end_of_payload: bool,
9 │ │ }
  │ ╰─' The inaccessible item is defined here
  │  
  ┌─ src/main.spade:9:5
  │
9 │ mod header_payload_rx_stream;
  │     ------------------------ The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/ip_tx.spade:4:5
   │
 4 │ use lib::header_payload_tx_stream::HeaderPayloadTxStream;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │                              │
   │     │                              this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/main.spade:10:5
   │
10 │ mod header_payload_tx_stream;
   │     ------------------------ The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/rgmii_rx.spade:3:5
  │
3 │ use lib::ethernet_rx::EthRx;
  │     ^^^^^^^^^^^^^^^^^^^^^^^
  │     │                 │
  │     │                 this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/main.spade:6:5
  │
6 │ mod ethernet_rx;
  │     ----------- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/rgmii_tx.spade:12:5
   │
12 │ use lib::ethernet_tx::ToTransmit;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │                 │
   │     │                 this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/main.spade:7:5
   │
 7 │ mod ethernet_tx;
   │     ----------- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/test.spade:18:5
   │
18 │ use lib::udp::UdpStream;
   │     ^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/main.spade:20:5
   │
20 │ mod udp;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/udp.spade:8:5
   │
 8 │ use lib::header_payload_tx_stream::HeaderPayloadTxStream;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │                              │
   │     │                              this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/main.spade:10:5
   │
10 │ mod header_payload_tx_stream;
   │     ------------------------ The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/udp_rx.spade:1:5
   │
 1 │ use lib::udp::UdpHeader;
   │     ^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/udp.spade:17:1
   │  
17 │ ╭ struct UdpHeader {
18 │ │     source_port: Option<uint<16>>,
19 │ │     destination_port: uint<16>,
20 │ │     // UDP specifies this to support packets around d65535 bytes
   · │
23 │ │     payload_length: uint<16>,
24 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:20:5
   │
20 │ mod udp;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        

fixed (1/1)

build (success)
          
        

mcp3002 (1/1)

build (success)
          
        

protocols (0/2)

build (fail)
          [INFO] Building Spade Compiler
    Updating crates.io index
    Updating git submodule `https://gitlab.com/spade-lang/spade.git`
    Updating git submodule `https://gitlab.com/TheZoq2/vatch.git`
    Updating git repository `https://gitlab.com/surfer-project/surfer.git`
    Updating git submodule `https://github.com/jkarns275/f128.git`
    Updating git submodule `https://github.com/ics-jku/instruction-decoder.git`
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
 Downloading crates ...
  Downloaded beef v0.5.2
  Downloaded adler2 v2.0.1
  Downloaded anstyle-query v1.1.3
  Downloaded rustc-hash v2.1.1
  Downloaded anstyle-parse v0.2.7
  Downloaded rustc_version v0.4.1
  Downloaded matchers v0.2.0
  Downloaded semver v1.0.26
  Downloaded serde_derive v1.0.228
  Downloaded ron v0.12.0
  Downloaded unty v0.0.4
  Downloaded tracing-core v0.1.34
  Downloaded virtue v0.0.18
  Downloaded syn v2.0.104
  Downloaded proc-macro2 v1.0.95
  Downloaded tracing-attributes v0.1.30
  Downloaded cc v1.2.30
  Downloaded memchr v2.7.5
  Downloaded clap_builder v4.5.41
  Downloaded log v0.4.27
  Downloaded unicode-width v0.2.1
  Downloaded indoc v2.0.6
  Downloaded num-iter v0.1.45
  Downloaded serde_json v1.0.141
  Downloaded logos-derive v0.16.0
  Downloaded clap_lex v0.7.5
  Downloaded num-bigint v0.4.6
  Downloaded color-spantrace v0.3.0
  Downloaded typeid v1.0.3
  Downloaded tracing-subscriber v0.3.20
  Downloaded termcolor v1.4.1
  Downloaded spade-codespan-reporting v0.12.0
  Downloaded smallvec v1.15.1
  Downloaded pin-project-lite v0.2.16
  Downloaded logos v0.16.0
  Downloaded colored v3.0.0
  Downloaded clap_derive v4.5.41
  Downloaded cfg-if v1.0.1
  Downloaded thread_local v1.1.9
  Downloaded tap v1.0.1
  Downloaded recursive v0.1.1
  Downloaded num-rational v0.4.2
  Downloaded num-integer v0.1.46
  Downloaded num v0.4.3
  Downloaded libc v0.2.174
  Downloaded itoa v1.0.15
  Downloaded either v1.15.0
  Downloaded colorchoice v1.0.4
  Downloaded clap v4.5.41
  Downloaded unicode-ident v1.0.18
  Downloaded tracing-error v0.2.1
  Downloaded stacker v0.1.21
  Downloaded spade-codespan v0.12.0
  Downloaded psm v0.1.26
  Downloaded owo-colors v4.2.2
  Downloaded nesty v0.2.0
  Downloaded fastrand v2.3.0
  Downloaded serde_core v1.0.228
  Downloaded serde v1.0.228
  Downloaded ryu v1.0.20
  Downloaded quote v1.0.40
  Downloaded logos-codegen v0.16.0
  Downloaded derive-where v1.5.0
  Downloaded bitflags v2.9.1
  Downloaded bincode v2.0.1
  Downloaded rustc-demangle v0.1.25
  Downloaded once_cell v1.21.3
  Downloaded num-complex v0.4.6
  Downloaded autocfg v1.5.0
  Downloaded anstream v0.6.19
  Downloaded recursive-proc-macro-impl v0.1.1
  Downloaded bincode_derive v2.0.1
  Downloaded anstyle v1.0.11
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on build directory
    Finished `release` profile [optimized] target(s) in 1m 28s
[INFO] Attempting to download surfer plugin wasm file.
[INFO] Done downloading surfer plugin
[INFO] Cloning "ready_valid"
[INFO] Cloning "nstd"
[INFO] Building spade code
[ERROR] Failed to build spade code
Cloning into '/builds/spade-lang/trawler/work/protocols/build/libs/ready_valid'...
HEAD is now at d604562 Missed one Fn
Cloning into '/builds/spade-lang/trawler/work/protocols/build/libs/nstd'...
HEAD is now at 57da413 Bump Spade
error: Path cannot be traversed
  ┌─ src/test.spade:3:5
  │
3 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/uart.spade:1:5
  │
1 │ use ready_valid::Rv;
  │     ^^^^^^^^^^^^^^^
  │     │            │
  │     │            this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        
test (fail)
          [INFO] Building Spade Compiler
    Finished `release` profile [optimized] target(s) in 0.23s
[INFO] Building spade code
[ERROR] Failed to build spade code
HEAD is now at d604562 Missed one Fn
HEAD is now at 57da413 Bump Spade
error: Path cannot be traversed
  ┌─ src/test.spade:3:5
  │
3 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/uart.spade:1:5
  │
1 │ use ready_valid::Rv;
  │     ^^^^^^^^^^^^^^^
  │     │            │
  │     │            this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        

ready_valid (1/1)

build (success)
          
        

spade-v (0/2)

build (fail)
          [INFO] Building Spade Compiler
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on build directory
    Finished `release` profile [optimized] target(s) in 1m 21s
[INFO] Attempting to download surfer plugin wasm file.
[INFO] Done downloading surfer plugin
[INFO] Cloning "protocols"
[INFO] Building spade code
[ERROR] Failed to build spade code
Cloning into '/builds/spade-lang/trawler/work/spade-v/build/libs/protocols'...
HEAD is now at 426e282 Fix failing SPI test
error: Path cannot be traversed
   ┌─ src/alu.spade:36:24
   │
36 │ fn get_alu_op(insn_op: instructions::Op) -> AluOp {
   │                        ^^^^^^^^^^^^^^^^
   │                        │             │
   │                        │             this item is not inaccessible from the current namespace
   │                        Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/cpu.spade:29:9
   │
29 │     op: spadev::instructions::Op,
   │         ^^^^^^^^^^^^^^^^^^^^^^^^
   │         │                     │
   │         │                     this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/csr.spade:15:14
   │
15 │     op: inv &instructions::Op,
   │              ^^^^^^^^^^^^^^^^
   │              │             │
   │              │             this item is not inaccessible from the current namespace
   │              Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/memory.spade:9:5
  │
9 │ use lib::bus::AccessWidth;
  │     ^^^^^^^^^^^^^^^^^^^^^
  │     │         │
  │     │         this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/main.spade:2:5
  │
2 │ mod bus;
  │     --- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/peripherals/led.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/peripherals/timer.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/pfc.spade:51:9
   │
51 │     op: instructions::Op,
   │         ^^^^^^^^^^^^^^^^
   │         │             │
   │         │             this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/program_load_adapter.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/uart_loader.spade:1:5
   │
 1 │ use lib::bus::ProgramLoadSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/bus.spade:13:1
   │  
13 │ ╭ struct ProgramLoadSignals {
14 │ │     done: bool,
15 │ │     data: Option<AddrValue>
16 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ build/libs/protocols/src/test.spade:2:5
  │
2 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        
test (fail)
          [INFO] Building Spade Compiler
    Blocking waiting for file lock on package cache
    Finished `release` profile [optimized] target(s) in 0.37s
[INFO] Building spade code
[ERROR] Failed to build spade code
HEAD is now at 426e282 Fix failing SPI test
error: Path cannot be traversed
   ┌─ src/alu.spade:36:24
   │
36 │ fn get_alu_op(insn_op: instructions::Op) -> AluOp {
   │                        ^^^^^^^^^^^^^^^^
   │                        │             │
   │                        │             this item is not inaccessible from the current namespace
   │                        Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/cpu.spade:29:9
   │
29 │     op: spadev::instructions::Op,
   │         ^^^^^^^^^^^^^^^^^^^^^^^^
   │         │                     │
   │         │                     this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/csr.spade:15:14
   │
15 │     op: inv &instructions::Op,
   │              ^^^^^^^^^^^^^^^^
   │              │             │
   │              │             this item is not inaccessible from the current namespace
   │              Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ src/memory.spade:9:5
  │
9 │ use lib::bus::AccessWidth;
  │     ^^^^^^^^^^^^^^^^^^^^^
  │     │         │
  │     │         this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ src/main.spade:2:5
  │
2 │ mod bus;
  │     --- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/peripherals/led.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/peripherals/timer.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/pfc.spade:51:9
   │
51 │     op: instructions::Op,
   │         ^^^^^^^^^^^^^^^^
   │         │             │
   │         │             this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/program_load_adapter.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ src/uart_loader.spade:1:5
   │
 1 │ use lib::bus::ProgramLoadSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/bus.spade:13:1
   │  
13 │ ╭ struct ProgramLoadSignals {
14 │ │     done: bool,
15 │ │     data: Option<AddrValue>
16 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ build/libs/protocols/src/test.spade:2:5
  │
2 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        

spade-v-hwtest-uart (0/3)

build (fail)
          [WARN] swim.toml contains 1 unknown field:
[WARN]   synthesis.?.extra_verilog
[INFO] Building Spade Compiler
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on build directory
    Finished `release` profile [optimized] target(s) in 1m 21s
[INFO] Attempting to download surfer plugin wasm file.
[INFO] Done downloading surfer plugin
[INFO] Cloning "protocols"
[INFO] Building spade code
[ERROR] Failed to build spade code
Cloning into '/builds/spade-lang/trawler/work/spade-v-hwtest-uart/hwtest_uart/build/libs/protocols'...
HEAD is now at 426e282 Fix failing SPI test
error: Path cannot be traversed
  ┌─ src/led_blink.spade:9:5
  │
9 │ use spadev::bus::Buses;
  │     ^^^^^^^^^^^^^^^^^^
  │     │       │
  │     │       this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ ../src/main.spade:2:5
  │
2 │ mod bus;
  │     --- The inaccessible item is defined here
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/alu.spade:36:24
   │
36 │ fn get_alu_op(insn_op: instructions::Op) -> AluOp {
   │                        ^^^^^^^^^^^^^^^^
   │                        │             │
   │                        │             this item is not inaccessible from the current namespace
   │                        Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/cpu.spade:29:9
   │
29 │     op: spadev::instructions::Op,
   │         ^^^^^^^^^^^^^^^^^^^^^^^^
   │         │                     │
   │         │                     this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/csr.spade:15:14
   │
15 │     op: inv &instructions::Op,
   │              ^^^^^^^^^^^^^^^^
   │              │             │
   │              │             this item is not inaccessible from the current namespace
   │              Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ ../src/memory.spade:9:5
  │
9 │ use lib::bus::AccessWidth;
  │     ^^^^^^^^^^^^^^^^^^^^^
  │     │         │
  │     │         this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ ../src/main.spade:2:5
  │
2 │ mod bus;
  │     --- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/peripherals/led.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/peripherals/timer.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/pfc.spade:51:9
   │
51 │     op: instructions::Op,
   │         ^^^^^^^^^^^^^^^^
   │         │             │
   │         │             this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/program_load_adapter.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/uart_loader.spade:1:5
   │
 1 │ use lib::bus::ProgramLoadSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:13:1
   │  
13 │ ╭ struct ProgramLoadSignals {
14 │ │     done: bool,
15 │ │     data: Option<AddrValue>
16 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ build/libs/protocols/src/test.spade:2:5
  │
2 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        
pnr (fail)
          [WARN] swim.toml contains 1 unknown field:
[WARN]   synthesis.?.extra_verilog
[INFO] Building Spade Compiler
    Finished `release` profile [optimized] target(s) in 0.24s
[INFO] Building spade code
[ERROR] Failed to build spade code
HEAD is now at 426e282 Fix failing SPI test
error: Path cannot be traversed
  ┌─ src/led_blink.spade:9:5
  │
9 │ use spadev::bus::Buses;
  │     ^^^^^^^^^^^^^^^^^^
  │     │       │
  │     │       this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ ../src/main.spade:2:5
  │
2 │ mod bus;
  │     --- The inaccessible item is defined here
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/alu.spade:36:24
   │
36 │ fn get_alu_op(insn_op: instructions::Op) -> AluOp {
   │                        ^^^^^^^^^^^^^^^^
   │                        │             │
   │                        │             this item is not inaccessible from the current namespace
   │                        Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/cpu.spade:29:9
   │
29 │     op: spadev::instructions::Op,
   │         ^^^^^^^^^^^^^^^^^^^^^^^^
   │         │                     │
   │         │                     this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/csr.spade:15:14
   │
15 │     op: inv &instructions::Op,
   │              ^^^^^^^^^^^^^^^^
   │              │             │
   │              │             this item is not inaccessible from the current namespace
   │              Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ ../src/memory.spade:9:5
  │
9 │ use lib::bus::AccessWidth;
  │     ^^^^^^^^^^^^^^^^^^^^^
  │     │         │
  │     │         this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ ../src/main.spade:2:5
  │
2 │ mod bus;
  │     --- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/peripherals/led.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/peripherals/timer.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/pfc.spade:51:9
   │
51 │     op: instructions::Op,
   │         ^^^^^^^^^^^^^^^^
   │         │             │
   │         │             this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/program_load_adapter.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/uart_loader.spade:1:5
   │
 1 │ use lib::bus::ProgramLoadSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:13:1
   │  
13 │ ╭ struct ProgramLoadSignals {
14 │ │     done: bool,
15 │ │     data: Option<AddrValue>
16 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ build/libs/protocols/src/test.spade:2:5
  │
2 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        
test (fail)
          [WARN] swim.toml contains 1 unknown field:
[WARN]   synthesis.?.extra_verilog
[INFO] Building Spade Compiler
    Finished `release` profile [optimized] target(s) in 0.24s
[INFO] Building spade code
[ERROR] Failed to build spade code
HEAD is now at 426e282 Fix failing SPI test
error: Path cannot be traversed
  ┌─ src/led_blink.spade:9:5
  │
9 │ use spadev::bus::Buses;
  │     ^^^^^^^^^^^^^^^^^^
  │     │       │
  │     │       this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ ../src/main.spade:2:5
  │
2 │ mod bus;
  │     --- The inaccessible item is defined here
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/alu.spade:36:24
   │
36 │ fn get_alu_op(insn_op: instructions::Op) -> AluOp {
   │                        ^^^^^^^^^^^^^^^^
   │                        │             │
   │                        │             this item is not inaccessible from the current namespace
   │                        Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/cpu.spade:29:9
   │
29 │     op: spadev::instructions::Op,
   │         ^^^^^^^^^^^^^^^^^^^^^^^^
   │         │                     │
   │         │                     this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/csr.spade:15:14
   │
15 │     op: inv &instructions::Op,
   │              ^^^^^^^^^^^^^^^^
   │              │             │
   │              │             this item is not inaccessible from the current namespace
   │              Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ ../src/memory.spade:9:5
  │
9 │ use lib::bus::AccessWidth;
  │     ^^^^^^^^^^^^^^^^^^^^^
  │     │         │
  │     │         this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ ../src/main.spade:2:5
  │
2 │ mod bus;
  │     --- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/peripherals/led.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/peripherals/timer.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/pfc.spade:51:9
   │
51 │     op: instructions::Op,
   │         ^^^^^^^^^^^^^^^^
   │         │             │
   │         │             this item is not inaccessible from the current namespace
   │         Path cannot be traversed
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/program_load_adapter.spade:1:5
   │
 1 │ use lib::bus::ControlSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:33:1
   │  
33 │ ╭ struct ControlSignals {
34 │ │     access_width: AccessWidth,
35 │ │     addr: uint<32>,
36 │ │     cmd: Command,
37 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
   ┌─ ../src/uart_loader.spade:1:5
   │
 1 │ use lib::bus::ProgramLoadSignals;
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   │     │         │
   │     │         this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ ../src/bus.spade:13:1
   │  
13 │ ╭ struct ProgramLoadSignals {
14 │ │     done: bool,
15 │ │     data: Option<AddrValue>
16 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   ┌─ ../src/main.spade:2:5
   │
 2 │ mod bus;
   │     --- The item is inaccessible because this module is inaccessible
   │
   = note: consider using `pub` to alter its visibility

error: Path cannot be traversed
  ┌─ build/libs/protocols/src/test.spade:2:5
  │
2 │ use lib::uart::UartOut;
  │     ^^^^^^^^^^^^^^^^^^
  │     │          │
  │     │          this item is not inaccessible from the current namespace
  │     Path cannot be traversed
  │
  ┌─ build/libs/protocols/src/main.spade:1:5
  │
1 │ mod uart;
  │     ---- The item is inaccessible because this module is inaccessible
  │
  = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        

templates-alchitry-cu (2/2)

build (success)
          
        
pnr (success)
          
        

templates-ecpix5 (2/2)

build (success)
          
        
pnr (success)
          
        

templates-go-board (2/2)

build (success)
          
        
pnr (success)
          
        

templates-icestick (2/2)

build (success)
          
        
pnr (success)
          
        

templates-icesugar-nano (2/2)

build (success)
          
        
pnr (success)
          
        

templates-pico-ice40up5k (2/2)

build (success)
          
        
pnr (success)
          
        

templates-tangnano20k (2/2)

build (success)
          
        
pnr (success)
          
        

templates-tangnano4k (2/2)

build (success)
          
        
pnr (success)
          
        

templates-tangnano9k (2/2)

build (success)
          
        
pnr (success)
          
        

templates-tinyfpga-bx (2/2)

build (success)
          
        
pnr (success)
          
        

templates-ulx3s_85k (2/2)

build (success)
          
        
pnr (success)
          
        

vga_spade (1/1)

build (success)
          
        

ws2812 (3/3)

build (success)
          
        
pnr (success)
          
        
test (success)
          
        

ws2812-lithekod (0/3)

build (fail)
          [WARN] swim.toml contains 1 unknown field:
[WARN]   synthesis.?.extra_verilog
[INFO] Building Spade Compiler
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on build directory
    Finished `release` profile [optimized] target(s) in 1m 28s
[INFO] Attempting to download surfer plugin wasm file.
[INFO] Done downloading surfer plugin
[INFO] Building spade code
[ERROR] Failed to build spade code
error: Path cannot be traversed
   ┌─ src/main.spade:5:5
   │
 5 │ use ws2812::lib::Timing;
   │     ^^^^^^^^^^^^^^^^^^^
   │     │            │
   │     │            this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/lib.spade:8:1
   │  
 8 │ ╭ struct Timing {
 9 │ │     // 50 microseconds
10 │ │     us280: uint<19>,
11 │ │     // 0.4 microseconds
   · │
20 │ │     us1_25: uint<12>,
21 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        
pnr (fail)
          [WARN] swim.toml contains 1 unknown field:
[WARN]   synthesis.?.extra_verilog
[INFO] Building Spade Compiler
    Finished `release` profile [optimized] target(s) in 0.25s
[INFO] Building spade code
[ERROR] Failed to build spade code
error: Path cannot be traversed
   ┌─ src/main.spade:5:5
   │
 5 │ use ws2812::lib::Timing;
   │     ^^^^^^^^^^^^^^^^^^^
   │     │            │
   │     │            this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/lib.spade:8:1
   │  
 8 │ ╭ struct Timing {
 9 │ │     // 50 microseconds
10 │ │     us280: uint<19>,
11 │ │     // 0.4 microseconds
   · │
20 │ │     us1_25: uint<12>,
21 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        
test (fail)
          [WARN] swim.toml contains 1 unknown field:
[WARN]   synthesis.?.extra_verilog
[INFO] Building Spade Compiler
    Finished `release` profile [optimized] target(s) in 0.25s
[INFO] Building spade code
[ERROR] Failed to build spade code
error: Path cannot be traversed
   ┌─ src/main.spade:5:5
   │
 5 │ use ws2812::lib::Timing;
   │     ^^^^^^^^^^^^^^^^^^^
   │     │            │
   │     │            this item is not inaccessible from the current namespace
   │     Path cannot be traversed
   │
   ┌─ src/lib.spade:8:1
   │  
 8 │ ╭ struct Timing {
 9 │ │     // 50 microseconds
10 │ │     us280: uint<19>,
11 │ │     // 0.4 microseconds
   · │
20 │ │     us1_25: uint<12>,
21 │ │ }
   │ ╰─' The inaccessible item is defined here
   │  
   = note: consider using `pub` to alter its visibility

Error: aborting due to previous error

Location:
    spade-compiler/src/main.rs:168:17
Error: 
   0: Failed to build spade code

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

        

This page was generated at 2026-01-21T08:12:48Z.