sofie-identity 0.1.0

Accounts, their area memberships, and signing up, in and out: the identity an app opts into.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.99"
name = "sofie-identity"
version = "0.1.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Accounts, their area memberships, and signing up, in and out: the identity an app opts into."
readme = false
license = "MIT OR Apache-2.0"
repository = "https://github.com/sofie-rs/sofie"

[features]
account-data = [
    "sofie/contracts",
    "sofie/resources",
]
account-links = ["sofie/signed-links"]
default = ["sessions"]
email-verification = ["links"]
impersonation = [
    "permissions",
    "sessions",
    "sofie/resources",
]
links = [
    "account-links",
    "sofie/mail",
]
notify = [
    "account-data",
    "sofie/notify",
]
oauth = [
    "dep:sofie-client",
    "sessions",
    "sofie/contracts",
    "sofie/flows",
    "sofie/log-fields",
    "sofie/resources",
    "sofie/signed-links",
    "sofie/soft-delete",
]
passkeys = [
    "sessions",
    "sofie/client-headers",
    "sofie/resources",
    "sofie/signed-links",
    "sofie/soft-delete",
]
password-reset = ["links"]
permissions = [
    "sofie/permissions",
    "sofie/soft-delete",
]
permitted-flags = [
    "permitted-screens",
    "sofie/feature-flags",
]
permitted-screens = [
    "permissions",
    "sofie/resources",
    "sofie/groups",
]
permitted-shield = [
    "permitted-screens",
    "shield",
]
session-screens = [
    "sessions",
    "sofie/resources",
]
sessions = [
    "sofie/retention",
    "sofie/session-list",
]
shield = ["sofie/shield"]
sign-in-links = ["links"]
testing = ["dep:sofie-testing"]
token-screens = [
    "tokens",
    "sofie/resources",
]
tokens = [
    "permissions",
    "sofie/tokens",
]
totp = [
    "account-links",
    "sessions",
    "sofie/resources",
]

[lib]
name = "sofie_identity"
path = "src/lib.rs"

[[test]]
name = "account_data"
path = "tests/account_data.rs"

[[test]]
name = "impersonation"
path = "tests/impersonation.rs"

[[test]]
name = "lang"
path = "tests/lang.rs"

[[test]]
name = "mailed_links"
path = "tests/mailed_links.rs"

[[test]]
name = "oauth"
path = "tests/oauth.rs"

[[test]]
name = "owned_resources"
path = "tests/owned_resources.rs"

[[test]]
name = "passkeys"
path = "tests/passkeys.rs"

[[test]]
name = "permitted"
path = "tests/permitted.rs"

[[test]]
name = "permitted_screens"
path = "tests/permitted_screens.rs"

[[test]]
name = "role_screens"
path = "tests/role_screens.rs"

[[test]]
name = "route_names"
path = "tests/route_names.rs"

[[test]]
name = "screens"
path = "tests/screens.rs"

[[test]]
name = "sessions"
path = "tests/sessions.rs"

[[test]]
name = "shield"
path = "tests/shield.rs"

[[test]]
name = "sign_in"
path = "tests/sign_in.rs"

[[test]]
name = "sqlite"
path = "tests/sqlite.rs"

[[test]]
name = "token_screen"
path = "tests/token_screen.rs"

[[test]]
name = "tokens"
path = "tests/tokens.rs"

[[test]]
name = "two_factor"
path = "tests/two_factor.rs"

[dependencies.argon2]
version = "0.6.0"
features = [
    "alloc",
    "password-hash",
]
default-features = false

[dependencies.ring]
version = "0.17.14"

[dependencies.sofie]
version = "0.1.0"
features = ["engine"]
default-features = false
package = "sofie-framework"

[dependencies.sofie-client]
version = "0.1.0"
optional = true

[dependencies.sofie-testing]
version = "0.1.0"
optional = true

[dependencies.tokio]
version = "1.53.2"
features = ["rt"]

[dependencies.unicode-normalization]
version = "0.1.25"
default-features = false

[dev-dependencies.serde_json]
version = "1.0.151"

[dev-dependencies.tokio]
version = "1.53.2"
features = [
    "rt",
    "macros",
    "net",
]

[build-dependencies.sofie-engine]
version = "0.1.0"
features = ["compile"]

[lints.clippy]
missing_errors_doc = "allow"
missing_panics_doc = "allow"
unused_async = "allow"

[lints.clippy.all]
level = "warn"
priority = -1

[lints.clippy.pedantic]
level = "warn"
priority = -1

[lints.rust]
unsafe_code = "forbid"