awsim 0.6.0

AWSim — a fully offline, free AWS development environment
[package]
name = "awsim"
description = "AWSim — a fully offline, free AWS development environment"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true

build = "build.rs"

[[bin]]
name = "awsim"
path = "src/main.rs"

[dependencies]
awsim-apigateway = { workspace = true }
awsim-appsync = { workspace = true }
awsim-athena = { workspace = true }
awsim-bedrock = { workspace = true }
awsim-cloudformation = { workspace = true }
awsim-cloudfront = { workspace = true }
awsim-cloudwatch-logs = { workspace = true }
awsim-cognito = { workspace = true }
awsim-core = { workspace = true }
awsim-dynamodb = { workspace = true }
awsim-ec2 = { workspace = true }
awsim-ecr = { workspace = true }
awsim-ecs = { workspace = true }
awsim-elb = { workspace = true }
awsim-kinesis = { workspace = true }
awsim-eventbridge = { workspace = true }
awsim-glue = { workspace = true }
awsim-iam = { workspace = true }
awsim-rds = { workspace = true }
awsim-rds-data = { workspace = true, optional = true }
awsim-kms = { workspace = true }
awsim-lambda = { workspace = true }
awsim-route53 = { workspace = true }
awsim-cloudwatch-metrics = { workspace = true }
awsim-secretsmanager = { workspace = true }
awsim-s3 = { workspace = true }
awsim-ses = { workspace = true }
awsim-sns = { workspace = true }
awsim-sqs = { workspace = true }
awsim-ssm = { workspace = true }
awsim-sts = { workspace = true }
awsim-stepfunctions = { workspace = true }
awsim-acm = { workspace = true }
awsim-waf = { workspace = true }
awsim-scheduler = { workspace = true }
awsim-comprehend = { workspace = true }
awsim-kendra = { workspace = true }
awsim-opensearch = { workspace = true }
awsim-organizations = { workspace = true }
awsim-cloudtrail = { workspace = true }
awsim-eks = { workspace = true }
awsim-firehose = { workspace = true }
awsim-batch = { workspace = true }
awsim-billing = { workspace = true }
awsim-chaos = { workspace = true }
serde = { workspace = true }
awsim-sso-admin = { workspace = true }
awsim-datasync = { workspace = true }
awsim-polly = { workspace = true }
awsim-resourcegroupstagging = { workspace = true }
awsim-pipes = { workspace = true }
awsim-efs = { workspace = true }
awsim-backup = { workspace = true }
awsim-application-autoscaling = { workspace = true }
awsim-xray = { workspace = true }
awsim-servicediscovery = { workspace = true }
awsim-appconfig = { workspace = true }
awsim-glacier = { workspace = true }
awsim-mq = { workspace = true }
awsim-memorydb = { workspace = true }
awsim-qldb = { workspace = true }
awsim-transfer = { workspace = true }
awsim-pinpoint = { workspace = true }
awsim-identitystore = { workspace = true }
fake = { workspace = true }
rand = { workspace = true }
sha2 = { workspace = true }
md-5 = { workspace = true }
chrono = { workspace = true }
toml = { workspace = true }
arc-swap = { workspace = true }
thiserror = { workspace = true }
axum = { workspace = true }
dashmap = { workspace = true }
tower = { workspace = true, features = ["limit", "load-shed"] }
tower-http = { workspace = true }
serde_json = { workspace = true }
tokio = { workspace = true }
tokio-stream = { workspace = true }
clap = { workspace = true }
tracing = { workspace = true }
tracing-subscriber = { workspace = true }
anyhow = { workspace = true }
uuid = { workspace = true }
bytes = { workspace = true }
base64 = { workspace = true }
reqwest = { workspace = true, features = ["stream"] }
rust-embed = { workspace = true }
mime_guess = { workspace = true }

# TLS - lets `awsim` serve HTTPS alongside the plain HTTP listener so
# AWS SDKs that hard-require https endpoints (Cognito hosted UI, S3
# transfer-acceleration, certain Java SDK code paths) work locally
# without fronting the binary with nginx / Caddy. `axum-server` shares
# the existing `axum::Router`, `rustls` is the TLS engine (matching
# the workspace `reqwest` choice), and `rcgen` mints a self-signed
# CA + server cert on first boot so users don't have to.
axum-server = { version = "0.7", features = ["tls-rustls"] }
rustls = { version = "0.23", default-features = false, features = ["ring"] }
rcgen = { version = "0.13", default-features = false, features = ["pem", "ring"] }

# The RDS Data API is opt-in: it backs SQL execution with a real
# PostgreSQL launched via Docker, so it is left out of the default build.
[features]
rds-data = ["dep:awsim-rds-data"]

# rlimit is POSIX only — the crate's Resource::NOFILE / get/setrlimit don't
# exist on Windows, so the unix-targeted fd watcher / soft-limit bumper
# is cfg-gated below.
[target.'cfg(unix)'.dependencies]
rlimit = "0.10"

[dev-dependencies]
aws-config = "1"
aws-sdk-s3 = "1"
aws-sdk-sqs = "1"
aws-sdk-dynamodb = "1"
aws-sdk-sts = "1"
aws-sdk-iam = "1"
aws-sdk-sns = "1"
aws-sdk-kms = "1"
aws-sdk-secretsmanager = "1"
aws-sdk-cloudwatchlogs = "1"
aws-sdk-ssm = "1"
aws-sdk-lambda = "1"
aws-credential-types = "1"
aws-types = "1"
reqwest = { workspace = true, features = ["stream"] }