content: cargo-features = ["per-package-target", "profile-rustflags"]
  
  [package]
  name = "mnemos"
  version = "0.1.0"
  description = """
  The MnemOS Kernel. Built around asynchronous kernel tasks which use
  message passing as the primary means of interaction. Provided as a
  no_std library crate.
  """
  authors = [
      "James Munns <james@onevariable.com>",
      "Eliza Weisman <eliza@elizas.website>",
  ]
  edition = "2021"
  readme = "./README.md"
  license = "MIT OR Apache-2.0"
  repository = "https://github.com/tosc-rs/mnemos"
  homepage = "https://mnemos.dev"
  categories = [
      "embedded",
      "no-std",
  ]
  
  build = "build.rs"
  
  [lib]
  name = "kernel"
  
  [features]
  # enables the serial port trace protocol.
  # this is feature flagged so that it can be disabled in the simulator platforms
  # (melpomene and pomelo), which provide their own native tracing subscribers.
  serial-trace = ["mnemos-trace-proto", "tracing-core", "tracing-serde-structured"]
  
  [dependencies]
  
  [dependencies.futures]
  version = "0.3.21"
  features = ["async-await"]
  default-features = false
  
  [dependencies.uuid]
  version = "1.1.2"
  default-features = false
  features = ["serde"]
  
  [dependencies.cobs]
  version = "0.2.3"
  default-features = false
  
  [dependencies.tracing]
  version = "0.1.35"
  features = ["attributes"]
  default-features = false
  
  [dependencies.tracing-core]
  version = "0.1.31"
  default-features = false
  optional = true
  
  [dependencies.tracing-serde-structured]
  git = "https://github.com/hawkw/tracing-serde-structured"
  branch = "eliza/span-fields"
  default-features = false
  optional = true
  
  [dependencies.mnemos-trace-proto]
  path = "../trace-proto"
  optional = true
  
  [dependencies.maitake]
  workspace = true
  features = ["alloc"]
  
  [dependencies.mycelium-util]
  version = "0.1.0"
  default-features = false
  
  [dependencies.spitebuf]
  path = "../spitebuf"
  
  [dependencies.mnemos-alloc]
  version = "0.1.0"
  path = "../alloc"
  
  [dependencies.heapless]
  version = "0.7.10"
  
  [dependencies.mnemos-abi]
  version = "0.1.0"
  path = "../abi"
  
  [dependencies.serde]
  version = "1.0.136"
  default-features = false
  features = ["derive"]
  
  [dependencies.postcard]
  version = "1.0.1"
  features = ["experimental-derive"]
  
  [dependencies.embedded-graphics]
  version = "0.7.1"
  
  [dependencies.embedded-hal-async]
  version = "0.2.0-alpha.2"
  
  [dependencies.forth3]
  path = "../forth3"
  features = ["async"]
  
  [dependencies.portable-atomic]
  version = "1.3"
  default-features = false
  features = ["require-cas"]
  
  [dependencies.input-mgr]
  git = "https://github.com/tosc-rs/teletype/"
  rev = "de95e610cc79db6d59ad6b40eb2d82adebb4e033"
  
  [dependencies.ring-drawer]
  git = "https://github.com/tosc-rs/teletype/"
  rev = "de95e610cc79db6d59ad6b40eb2d82adebb4e033"
  
  [dependencies.sermux-proto]
  path = "../sermux-proto"
  default-features = false
  
  [dependencies.profont]
  version = "0.6.1"
  
  [dependencies.mycelium-bitfield]
  version = "0.1.5"
  
  [build-dependencies]
  vergen = { version = "8.0.0", features = ["cargo", "git", "gitcl", "rustc",] }
  
  [dev-dependencies.futures]
  version = "0.3.21"
  features = ["async-await", "executor"]
  default-features = false
  
  [dev-dependencies.mnemos-alloc]
  version = "0.1.0"
  features = ["use-std"]
  path = "../alloc"
  
  [dev-dependencies.tracing-subscriber]
  version = "0.3.17"
  features = ["fmt", "env-filter"]
  
  [dev-dependencies.postcard]
  version = "1.0.1"
  features = ["use-std"]
  