Cargo Features
pywatt_sdk has no features set by default.
[dependencies]
pywatt_sdk = { version = "0.2.9", features = ["proc_macros", "router_ext", "metrics", "discover_endpoints", "builder", "jwt_auth", "database", "postgres", "mysql", "sqlite", "cache", "redis_cache", "memcached", "file_cache", "ipc", "integration_tests", "jwt_auth_v2", "tracing", "cors", "secret_client_logging", "macros"] }
- proc_macros macros? = proc-macro2, quote, syn
-
Feature for enabling the proc-macro functionality (renamed from 'macros')
Affects
pywatt_sdk::pywatt_macros
,pywatt_sdk::macros
,macros::module
,pywatt_macros::proc_macro_impl
… - router_ext metrics?
-
Existing features
Affects
ext::RouterExt
… - metrics = prometheus, router_ext
-
Added dep:metrics
Enables metrics
Optional, tied to 'metrics' feature
Affects
error::MetricsError
,ext::RouterExt.with_prometheus_metrics
… - discover_endpoints
-
Affects
router_discovery::announce_from_router
… - builder
-
Affects
builder::AppStateBuilder
… - jwt_auth ipc? jwt_auth_v2? = jsonwebtoken, tower
-
Affects
pywatt_sdk::jwt_auth
,pywatt_sdk::jwt_auth_compat
… - database mysql? postgres? sqlite? = sqlx
-
Database features
Affects
pywatt_sdk::database
,model_manager::config
,sdk_integration::ModelManager
… - postgres = database
-
Database dependencies (optional)
- mysql = database
- sqlite = database
- cache file_cache? memcached? redis_cache?
-
Cache features
Affects
pywatt_sdk::cache
… - redis_cache = cache, redis
-
Affects
redis::RedisCache
… - memcached = cache, memcache
- file_cache = cache, fs2, tempfile
- ipc = jwt_auth
-
IPC Service Proxy features
Affects
database::proxy_connection
,jwt_auth::proxy_adapter
… - integration_tests
-
Integration tests - enable when you want to run tests that require actual databases or caches
- jwt_auth_v2 = jwt_auth
-
Add feature for new JWT auth. This enables the
additional type-parametrized JWT auth functionality. - tracing
-
Add feature for tracing integration
- cors
-
Add feature for CORS support
Affects
ext::RouterExt.with_cors_preflight
… - secret_client_logging
-
Secret client needs stdout logging feature? Let's assume yes for now.
- macros = proc_macros
-
NOTE: pywatt_macros crate itself is no longer listed as optional dependency. Its functionality is enabled via the
proc_macros
feature flag. Themacros
feature name is kept for compatibility if needed, pointing to the new feature.
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- prometheus metrics?
-
Enables prometheus
Used by metrics feature
- jsonwebtoken jwt_auth?
-
Enables jsonwebtoken
Used by jwt_auth feature
- tower jwt_auth?
-
Enables tower
Used by jwt_auth feature
- sqlx database? mysql? postgres? sqlite?
- redis redis_cache?
-
Enables redis ^0.30.0
Cache dependencies (optional)
- memcache memcached?
- fs2 file_cache?
-
Enables fs2
For file-based cache locking
- tempfile file_cache?
-
Enables tempfile
For cache tests
- proc-macro2 proc_macros?
-
Enables proc-macro2
Proc-macro dependencies moved from pywatt_macros (conditional)
- quote proc_macros?
- syn proc_macros?