content: [package]
  name = "db-service-ffi"
  version = "0.0.0"
  edition = "2021"
  license = ""
  
  # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
  
  [lib]
  name = "db_service_ffi"
  crate-type = ["lib", "staticlib","cdylib"]
  
  # If we use 'botan = {version = "0.10.7", features = ["botan3"] } '
  # for iOS target in onekeepass-core, then use this for iOS  botan3 build as we need .a file
  # We need add the prebuilt libbotan-3.a to Xcode
  #crate-type = ["lib", "staticlib"] 
  
  # Android target requires "cdylib" for to create dynamic lib .so file  
   
  [dependencies]
  uniffi = "0.28.2"
  
  once_cell = "1"
  thiserror = "2.0.12"
  log = "0.4.17"
  uuid = { version = "1.16.0", features = ["serde", "v4","macro-diagnostics"] }
  regex = "1.7.1"
  secstr = "0.5.1"
  hex = "0.4.3"
  
  serde = { version = "1.0.219", features = [ "derive" ]}
  serde_json = "1"
  
  url="2.5.4"
  urlencoding = "2.1.2"
  nom = "7.1.3"
  
  sys-locale = "0.3.1"
  filetime = "0.2.25"
  
  tokio = { version = "1", features = [ "time" ,"rt", "rt-multi-thread","sync"] }
  
  enum_dispatch = "0.3.13"
  
  cfg-if = "1.0"
  
  ## derive_builder = "0.20.2"
  
  ## SFTP
  russh-sftp = "2.1.1"
  russh = "0.52.1"
  russh-keys = "0.49.2"
  
  ## WebDav 
  ## reqwest_dav = "0.1.13"  - This did not build for android because of Openssl dependency
  
  ## The following two together works for ios and android build 
  ## Openssl is used for android and rustls for ios
  #reqwest = { version = "0.12", default-features = false, features = ["native-tls-vendored"] }
  #reqwest_dav = {version = "0.1.13", default-features = false }
  
  
  ## This works for ios and android as it uses rustls 
  reqwest_dav = {version = "0.1.15", default-features = false,features = ["rustls-tls"]}
  
  ## using from the local crate during dev time
  ## onekeepass-core = {path = "../../onekeepass-core", version = "0.18.1"}
  
  onekeepass-core = {git = "https://github.com/OneKeePass/onekeepass-core.git" , tag="v0.18.1" }
  
  [target.'cfg(target_os = "android")'.dependencies]
  android_logger = "0.13.1"
  
  [target.'cfg(target_os = "ios")'.dependencies]
  oslog = { version = "0.2.0", default-features = false, features = ["logger"] }
  
  
  ## and build "uniffi-bindgen" from that and use it. See the 'just file' how they are used 
  
  ## IMPORTANT Same uniffi version should be used here, under [dependencies] (see above) and 
  ## also in the crate ./uniffi-bindgen/Cargo.toml 
  ## ./uniffi-bindgen is used to generate Swift and Kotin bindings. See he 'just file' how they are used
  
  [build-dependencies]
  uniffi = { version = "0.28.2", features = [ "build" ] }
  
  [dev-dependencies]
  url = "2.3.1"
  serde_bytes = "0.11.7"
  
  
  