[package]
edition = "2021"
name = "apcore"
version = "0.18.0"
authors = ["aiperceivable <tercel.yi@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Schema-driven module standard for AI-perceivable interfaces"
homepage = "https://aiperceivable.com"
documentation = "https://apcore.aiperceivable.com/"
readme = "README.md"
keywords = [
"ai",
"llm",
"module",
"middleware",
"schema",
]
categories = [
"api-bindings",
"asynchronous",
"development-tools",
"web-programming",
"config",
]
license = "Apache-2.0"
repository = "https://github.com/aiperceivable/apcore-rust"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
default = []
events = ["reqwest"]
[lib]
name = "apcore"
path = "src/lib.rs"
[[example]]
name = "cancel_token"
path = "examples/cancel_token.rs"
[[example]]
name = "decorated_add"
path = "examples/decorated_add.rs"
[[example]]
name = "get_user"
path = "examples/get_user.rs"
[[example]]
name = "global_client"
path = "examples/global_client.rs"
[[example]]
name = "greet"
path = "examples/greet.rs"
[[example]]
name = "send_email"
path = "examples/send_email.rs"
[[example]]
name = "simple_client"
path = "examples/simple_client.rs"
[[test]]
name = "config_bus"
path = "tests/config_bus.rs"
[[test]]
name = "config_discovery"
path = "tests/config_discovery.rs"
[[test]]
name = "conformance_test"
path = "tests/conformance_test.rs"
[[test]]
name = "context_serialization_test"
path = "tests/context_serialization_test.rs"
[[test]]
name = "error_formatter_registry"
path = "tests/error_formatter_registry.rs"
[[test]]
name = "identity_immutable_test"
path = "tests/identity_immutable_test.rs"
[[test]]
name = "integration_test"
path = "tests/integration_test.rs"
[[test]]
name = "sys_modules_control"
path = "tests/sys_modules_control.rs"
[[test]]
name = "test_acl"
path = "tests/test_acl.rs"
[[test]]
name = "test_acl_conditions"
path = "tests/test_acl_conditions.rs"
[[test]]
name = "test_approval"
path = "tests/test_approval.rs"
[[test]]
name = "test_async_task"
path = "tests/test_async_task.rs"
[[test]]
name = "test_bindings"
path = "tests/test_bindings.rs"
[[test]]
name = "test_builtin_steps"
path = "tests/test_builtin_steps.rs"
[[test]]
name = "test_call_chain_guard"
path = "tests/test_call_chain_guard.rs"
[[test]]
name = "test_cancel"
path = "tests/test_cancel.rs"
[[test]]
name = "test_client"
path = "tests/test_client.rs"
[[test]]
name = "test_context"
path = "tests/test_context.rs"
[[test]]
name = "test_context_key"
path = "tests/test_context_key.rs"
[[test]]
name = "test_context_keys"
path = "tests/test_context_keys.rs"
[[test]]
name = "test_crate_root_exports"
path = "tests/test_crate_root_exports.rs"
[[test]]
name = "test_decorator"
path = "tests/test_decorator.rs"
[[test]]
name = "test_errors"
path = "tests/test_errors.rs"
[[test]]
name = "test_events"
path = "tests/test_events.rs"
[[test]]
name = "test_executor"
path = "tests/test_executor.rs"
[[test]]
name = "test_extensions"
path = "tests/test_extensions.rs"
[[test]]
name = "test_middleware"
path = "tests/test_middleware.rs"
[[test]]
name = "test_module"
path = "tests/test_module.rs"
[[test]]
name = "test_observability"
path = "tests/test_observability.rs"
[[test]]
name = "test_pipeline_tasks"
path = "tests/test_pipeline_tasks.rs"
[[test]]
name = "test_pipeline_types"
path = "tests/test_pipeline_types.rs"
[[test]]
name = "test_registry"
path = "tests/test_registry.rs"
[[test]]
name = "test_schema_exporter"
path = "tests/test_schema_exporter.rs"
[[test]]
name = "test_schema_loader"
path = "tests/test_schema_loader.rs"
[[test]]
name = "test_schema_resolver"
path = "tests/test_schema_resolver.rs"
[[test]]
name = "test_schema_validator"
path = "tests/test_schema_validator.rs"
[[test]]
name = "test_serde_wire_format"
path = "tests/test_serde_wire_format.rs"
[[test]]
name = "test_suspend_resume"
path = "tests/test_suspend_resume.rs"
[[test]]
name = "test_trace_context"
path = "tests/test_trace_context.rs"
[[test]]
name = "test_true_streaming"
path = "tests/test_true_streaming.rs"
[[test]]
name = "test_unified_registry"
path = "tests/test_unified_registry.rs"
[dependencies.async-stream]
version = "0.3"
[dependencies.async-trait]
version = "0.1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.futures-core]
version = "0.3"
[dependencies.futures-util]
version = "0.3"
[dependencies.jsonschema]
version = "0.28"
[dependencies.parking_lot]
version = "0.12"
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.12"
features = ["json"]
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.serde_yaml_ng]
version = "0.10"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"sync",
"time",
]
[dependencies.tracing]
version = "0.1"
[dependencies.uuid]
version = "1"
features = [
"v4",
"serde",
]
[dev-dependencies.pretty_assertions]
version = "1"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.trybuild]
version = "1"
[lints.clippy]
doc_markdown = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
[lints.clippy.pedantic]
level = "warn"
priority = -1