content: [package]
  name = "mlua"
  version = "0.11.4" # remember to update mlua_derive
  authors = ["Aleksandr Orlenko <zxteam@pm.me>", "kyren <catherine@kyju.org>"]
  rust-version = "1.79.0"
  edition = "2021"
  repository = "https://github.com/mlua-rs/mlua"
  documentation = "https://docs.rs/mlua"
  readme = "README.md"
  keywords = ["lua", "luajit", "luau", "async", "scripting"]
  categories = ["api-bindings", "asynchronous"]
  license = "MIT"
  description = """
  High level bindings to Lua 5.4/5.3/5.2/5.1 (including LuaJIT) and Luau
  with async/await features and support of writing native Lua modules in Rust.
  """
  
  [package.metadata.docs.rs]
  features = ["lua54", "vendored", "async", "send", "serde", "macros"]
  rustdoc-args = ["--cfg", "docsrs"]
  
  [workspace]
  members = [
      "mlua_derive",
      "mlua-sys",
  ]
  
  [features]
  lua54 = ["ffi/lua54"]
  lua53 = ["ffi/lua53"]
  lua52 = ["ffi/lua52"]
  lua51 = ["ffi/lua51"]
  luajit = ["ffi/luajit"]
  luajit52 = ["luajit", "ffi/luajit52"]
  luau = ["ffi/luau"]
  luau-jit = ["luau", "ffi/luau-codegen"]
  luau-vector4 = ["luau", "ffi/luau-vector4"]
  vendored = ["ffi/vendored"]
  module = ["mlua_derive", "ffi/module"]
  async = ["dep:futures-util"]
  send = ["error-send"]
  error-send = []
  serde = ["dep:serde", "dep:erased-serde", "dep:serde-value", "bstr/serde"]
  macros = ["mlua_derive/macros"]
  anyhow = ["dep:anyhow", "error-send"]
  userdata-wrappers = ["parking_lot/send_guard"]
  
  # deprecated features
  serialize = ["serde"]
  
  [dependencies]
  mlua_derive = { version = "=0.11.0", optional = true, path = "mlua_derive" }
  bstr = { version = "1.0", features = ["std"], default-features = false }
  either = "1.0"
  num-traits = { version = "0.2.14" }
  rustc-hash = "2.0"
  futures-util = { version = "0.3", optional = true, default-features = false, features = ["std"] }
  serde = { version = "1.0", optional = true }
  erased-serde = { version = "0.4", optional = true }
  serde-value = { version = "0.7", optional = true }
  parking_lot = { version = "0.12", features = ["arc_lock"] }
  anyhow = { version = "1.0", optional = true }
  rustversion = "1.0"
  
  ffi = { package = "mlua-sys", version = "0.8.3", path = "mlua-sys" }
  
  [dev-dependencies]
  trybuild = "1.0"
  tokio = { version = "1.0", features = ["macros", "rt", "time"] }
  serde = { version = "1.0", features = ["derive"] }
  serde_json = { version = "1.0", features = ["arbitrary_precision"] }
  maplit = "1.0"
  static_assertions = "1.0"
  
  [target.'cfg(not(target_family = "wasm"))'.dev-dependencies]
  hyper = { version = "1.2", features = ["full"] }
  hyper-util = { version = "0.1.3", features = ["full"] }
  http-body-util = "0.1.1"
  reqwest = { version = "0.12", features = ["json"] }
  tempfile = "3"
  criterion = { version = "0.7", features = ["async_tokio"] }
  rustyline = "17.0"
  tokio = { version = "1.0", features = ["full"] }
  
  [lints.rust]
  unexpected_cfgs = { level = "allow", check-cfg = ['cfg(tarpaulin_include)'] }
  
  [[bench]]
  name = "benchmark"
  harness = false
  required-features = ["async"]
  
  [[bench]]
  name = "serde"
  harness = false
  required-features = ["serde"]
  
  [[example]]
  name = "async_http_client"
  required-features = ["async", "macros"]
  
  [[example]]
  name = "async_http_reqwest"
  required-features = ["async", "serde", "macros"]
  
  [[example]]
  name = "async_http_server"
  required-features = ["async", "macros", "send"]
  
  [[example]]
  name = "async_tcp_server"
  required-features = ["async", "macros", "send"]
  
  [[example]]
  name = "guided_tour"
  required-features = ["macros"]
  
  [[example]]
  name = "serde"
  required-features = ["serde"]
  
  [[example]]
  name = "userdata"
  required-features = ["macros"]
  