alchemy 2.0.0-beta.65 → 2.0.0-beta.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/exec.js +433 -181
- package/bin/exec.js.map +1 -1
- package/lib/AWS/ApiGateway/common.d.ts.map +1 -1
- package/lib/AWS/ApiGateway/common.js +8 -1
- package/lib/AWS/ApiGateway/common.js.map +1 -1
- package/lib/AWS/Bedrock/LanguageModel.d.ts +208 -0
- package/lib/AWS/Bedrock/LanguageModel.d.ts.map +1 -0
- package/lib/AWS/Bedrock/LanguageModel.js +508 -0
- package/lib/AWS/Bedrock/LanguageModel.js.map +1 -0
- package/lib/AWS/Bedrock/LanguageModelHttp.d.ts +10 -0
- package/lib/AWS/Bedrock/LanguageModelHttp.d.ts.map +1 -0
- package/lib/AWS/Bedrock/LanguageModelHttp.js +26 -0
- package/lib/AWS/Bedrock/LanguageModelHttp.js.map +1 -0
- package/lib/AWS/Bedrock/index.d.ts +2 -0
- package/lib/AWS/Bedrock/index.d.ts.map +1 -1
- package/lib/AWS/Bedrock/index.js +2 -0
- package/lib/AWS/Bedrock/index.js.map +1 -1
- package/lib/AWS/CloudFront/Distribution.d.ts +24 -0
- package/lib/AWS/CloudFront/Distribution.d.ts.map +1 -1
- package/lib/AWS/CloudFront/Distribution.js +89 -4
- package/lib/AWS/CloudFront/Distribution.js.map +1 -1
- package/lib/AWS/CostExplorer/AnomalyMonitor.d.ts +1 -1
- package/lib/AWS/CostExplorer/AnomalyMonitor.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/AnomalySubscription.d.ts +1 -1
- package/lib/AWS/CostExplorer/AnomalySubscription.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/BindingHttp.d.ts +3 -3
- package/lib/AWS/CostExplorer/BindingHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/CostCategory.d.ts +1 -1
- package/lib/AWS/CostExplorer/CostCategory.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetAnomaliesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetAnomaliesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetApproximateUsageRecordsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetApproximateUsageRecordsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCommitmentPurchaseAnalysisHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCommitmentPurchaseAnalysisHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageComparisonsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageComparisonsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageWithResourcesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageWithResourcesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostCategoriesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostCategoriesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostComparisonDriversHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostComparisonDriversHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostForecastHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostForecastHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetDimensionValuesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetDimensionValuesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetReservationCoverageHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetReservationCoverageHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetReservationPurchaseRecommendationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetReservationPurchaseRecommendationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetReservationUtilizationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetReservationUtilizationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetRightsizingRecommendationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetRightsizingRecommendationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlanPurchaseRecommendationDetailsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlanPurchaseRecommendationDetailsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansCoverageHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansCoverageHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansPurchaseRecommendationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansPurchaseRecommendationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationDetailsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationDetailsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetTagsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetTagsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetUsageForecastHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetUsageForecastHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListCommitmentPurchaseAnalysesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListCommitmentPurchaseAnalysesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListCostAllocationTagBackfillHistoryHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListCostAllocationTagBackfillHistoryHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListCostAllocationTagsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListCostAllocationTagsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListCostCategoryResourceAssociationsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListCostCategoryResourceAssociationsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListSavingsPlansPurchaseRecommendationGenerationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListSavingsPlansPurchaseRecommendationGenerationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ProvideAnomalyFeedbackHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ProvideAnomalyFeedbackHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/StartCommitmentPurchaseAnalysisHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/StartCommitmentPurchaseAnalysisHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/StartCostAllocationTagBackfillHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/StartCostAllocationTagBackfillHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/StartSavingsPlansPurchaseRecommendationGenerationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/StartSavingsPlansPurchaseRecommendationGenerationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/UpdateCostAllocationTagsStatusHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/UpdateCostAllocationTagsStatusHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/common.d.ts +5 -3
- package/lib/AWS/CostExplorer/common.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/common.js +16 -1
- package/lib/AWS/CostExplorer/common.js.map +1 -1
- package/lib/AWS/DataSync/Task.d.ts.map +1 -1
- package/lib/AWS/DataSync/Task.js +16 -2
- package/lib/AWS/DataSync/Task.js.map +1 -1
- package/lib/AWS/EC2/Vpc.d.ts.map +1 -1
- package/lib/AWS/EC2/Vpc.js +15 -2
- package/lib/AWS/EC2/Vpc.js.map +1 -1
- package/lib/AWS/EC2/hosted.d.ts.map +1 -1
- package/lib/AWS/EC2/hosted.js +10 -2
- package/lib/AWS/EC2/hosted.js.map +1 -1
- package/lib/AWS/ECR/Image.d.ts +132 -13
- package/lib/AWS/ECR/Image.d.ts.map +1 -1
- package/lib/AWS/ECR/ImageSource.d.ts.map +1 -1
- package/lib/AWS/ECR/ImageSource.js +10 -2
- package/lib/AWS/ECR/ImageSource.js.map +1 -1
- package/lib/AWS/ECR/Repository.d.ts +2 -0
- package/lib/AWS/ECR/Repository.d.ts.map +1 -1
- package/lib/AWS/ECR/Repository.js +28 -3
- package/lib/AWS/ECR/Repository.js.map +1 -1
- package/lib/AWS/ECS/Service.d.ts +27 -1
- package/lib/AWS/ECS/Service.d.ts.map +1 -1
- package/lib/AWS/ECS/Service.js +184 -22
- package/lib/AWS/ECS/Service.js.map +1 -1
- package/lib/AWS/ECS/Task.d.ts +32 -8
- package/lib/AWS/ECS/Task.d.ts.map +1 -1
- package/lib/AWS/ECS/Task.js +62 -29
- package/lib/AWS/ECS/Task.js.map +1 -1
- package/lib/AWS/EKS/Deployment.d.ts.map +1 -1
- package/lib/AWS/EKS/Deployment.js +10 -2
- package/lib/AWS/EKS/Deployment.js.map +1 -1
- package/lib/AWS/EKS/Job.d.ts.map +1 -1
- package/lib/AWS/EKS/Job.js +10 -2
- package/lib/AWS/EKS/Job.js.map +1 -1
- package/lib/AWS/Lambda/Function.d.ts +15 -0
- package/lib/AWS/Lambda/Function.d.ts.map +1 -1
- package/lib/AWS/Lambda/Function.js +67 -29
- package/lib/AWS/Lambda/Function.js.map +1 -1
- package/lib/AWS/Lambda/HttpServer.d.ts.map +1 -1
- package/lib/AWS/Lambda/HttpServer.js +7 -1
- package/lib/AWS/Lambda/HttpServer.js.map +1 -1
- package/lib/AWS/Lambda/LayerVersion.d.ts +176 -0
- package/lib/AWS/Lambda/LayerVersion.d.ts.map +1 -0
- package/lib/AWS/Lambda/LayerVersion.js +288 -0
- package/lib/AWS/Lambda/LayerVersion.js.map +1 -0
- package/lib/AWS/Lambda/MicrovmBundle.d.ts.map +1 -1
- package/lib/AWS/Lambda/MicrovmBundle.js +10 -2
- package/lib/AWS/Lambda/MicrovmBundle.js.map +1 -1
- package/lib/AWS/Lambda/index.d.ts +1 -0
- package/lib/AWS/Lambda/index.d.ts.map +1 -1
- package/lib/AWS/Lambda/index.js +1 -0
- package/lib/AWS/Lambda/index.js.map +1 -1
- package/lib/AWS/Providers.d.ts.map +1 -1
- package/lib/AWS/Providers.js +6 -1
- package/lib/AWS/Providers.js.map +1 -1
- package/lib/AWS/SES/ActiveReceiptRuleSet.d.ts +40 -0
- package/lib/AWS/SES/ActiveReceiptRuleSet.d.ts.map +1 -0
- package/lib/AWS/SES/ActiveReceiptRuleSet.js +58 -0
- package/lib/AWS/SES/ActiveReceiptRuleSet.js.map +1 -0
- package/lib/AWS/SES/ReceiptFilter.d.ts +67 -0
- package/lib/AWS/SES/ReceiptFilter.d.ts.map +1 -0
- package/lib/AWS/SES/ReceiptFilter.js +92 -0
- package/lib/AWS/SES/ReceiptFilter.js.map +1 -0
- package/lib/AWS/SES/ReceiptRule.d.ts +133 -0
- package/lib/AWS/SES/ReceiptRule.d.ts.map +1 -0
- package/lib/AWS/SES/ReceiptRule.js +178 -0
- package/lib/AWS/SES/ReceiptRule.js.map +1 -0
- package/lib/AWS/SES/ReceiptRuleSet.d.ts +55 -0
- package/lib/AWS/SES/ReceiptRuleSet.d.ts.map +1 -0
- package/lib/AWS/SES/ReceiptRuleSet.js +112 -0
- package/lib/AWS/SES/ReceiptRuleSet.js.map +1 -0
- package/lib/AWS/SES/SendBounce.d.ts +37 -0
- package/lib/AWS/SES/SendBounce.d.ts.map +1 -0
- package/lib/AWS/SES/SendBounce.js +3 -0
- package/lib/AWS/SES/SendBounce.js.map +1 -0
- package/lib/AWS/SES/SendBounceHttp.d.ts +4 -0
- package/lib/AWS/SES/SendBounceHttp.d.ts.map +1 -0
- package/lib/AWS/SES/SendBounceHttp.js +10 -0
- package/lib/AWS/SES/SendBounceHttp.js.map +1 -0
- package/lib/AWS/SES/index.d.ts +6 -0
- package/lib/AWS/SES/index.d.ts.map +1 -1
- package/lib/AWS/SES/index.js +6 -0
- package/lib/AWS/SES/index.js.map +1 -1
- package/lib/AWS/StateStore/State.d.ts +11 -0
- package/lib/AWS/StateStore/State.d.ts.map +1 -1
- package/lib/AWS/StateStore/State.js +117 -38
- package/lib/AWS/StateStore/State.js.map +1 -1
- package/lib/Apply.d.ts +37 -1
- package/lib/Apply.d.ts.map +1 -1
- package/lib/Apply.js +270 -194
- package/lib/Apply.js.map +1 -1
- package/lib/Axiom/Telemetry.d.ts +66 -0
- package/lib/Axiom/Telemetry.d.ts.map +1 -0
- package/lib/Axiom/Telemetry.js +69 -0
- package/lib/Axiom/Telemetry.js.map +1 -0
- package/lib/Axiom/index.d.ts +1 -0
- package/lib/Axiom/index.d.ts.map +1 -1
- package/lib/Axiom/index.js +1 -0
- package/lib/Axiom/index.js.map +1 -1
- package/lib/Bundle/Bundle.d.ts +1 -1
- package/lib/Bundle/Bundle.d.ts.map +1 -1
- package/lib/Bundle/Bundle.js +14 -6
- package/lib/Bundle/Bundle.js.map +1 -1
- package/lib/Bundle/BundleAnalyzerPlugin.d.ts +1 -1
- package/lib/Bundle/BundleAnalyzerPlugin.d.ts.map +1 -1
- package/lib/Bundle/BundleAnalyzerPlugin.js +10 -5
- package/lib/Bundle/BundleAnalyzerPlugin.js.map +1 -1
- package/lib/Bundle/PurePlugin.d.ts +1 -1
- package/lib/Bundle/PurePlugin.d.ts.map +1 -1
- package/lib/Bundle/PurePlugin.js +15 -7
- package/lib/Bundle/PurePlugin.js.map +1 -1
- package/lib/Cli/checkVersion.d.ts +11 -5
- package/lib/Cli/checkVersion.d.ts.map +1 -1
- package/lib/Cli/checkVersion.js +73 -12
- package/lib/Cli/checkVersion.js.map +1 -1
- package/lib/Cli/commands/cloudflare.d.ts +1 -1
- package/lib/Cli/commands/deploy.d.ts.map +1 -1
- package/lib/Cli/commands/deploy.js +3 -11
- package/lib/Cli/commands/deploy.js.map +1 -1
- package/lib/Cli/commands/logs.d.ts.map +1 -1
- package/lib/Cli/commands/logs.js +3 -1
- package/lib/Cli/commands/logs.js.map +1 -1
- package/lib/Cli/commands/tail.d.ts.map +1 -1
- package/lib/Cli/commands/tail.js +3 -1
- package/lib/Cli/commands/tail.js.map +1 -1
- package/lib/Cli/main.d.ts.map +1 -1
- package/lib/Cli/main.js +5 -4
- package/lib/Cli/main.js.map +1 -1
- package/lib/Cloudflare/AI/Search.d.ts +4 -15
- package/lib/Cloudflare/AI/Search.d.ts.map +1 -1
- package/lib/Cloudflare/AI/Search.js +4 -6
- package/lib/Cloudflare/AI/Search.js.map +1 -1
- package/lib/Cloudflare/AI/SearchInstance.d.ts +7 -26
- package/lib/Cloudflare/AI/SearchInstance.d.ts.map +1 -1
- package/lib/Cloudflare/AI/SearchInstance.js +7 -26
- package/lib/Cloudflare/AI/SearchInstance.js.map +1 -1
- package/lib/Cloudflare/ApiToken/AccountApiToken.d.ts +3 -0
- package/lib/Cloudflare/ApiToken/AccountApiToken.d.ts.map +1 -1
- package/lib/Cloudflare/ApiToken/AccountApiToken.js +3 -0
- package/lib/Cloudflare/ApiToken/AccountApiToken.js.map +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.d.ts +2 -1
- package/lib/Cloudflare/Auth/AuthProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.js +8 -3
- package/lib/Cloudflare/Auth/AuthProvider.js.map +1 -1
- package/lib/Cloudflare/Auth/OAuthClient.d.ts +5 -0
- package/lib/Cloudflare/Auth/OAuthClient.d.ts.map +1 -1
- package/lib/Cloudflare/Auth/OAuthClient.js +50 -4
- package/lib/Cloudflare/Auth/OAuthClient.js.map +1 -1
- package/lib/Cloudflare/Containers/Container.d.ts +81 -3
- package/lib/Cloudflare/Containers/Container.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/Container.js +70 -0
- package/lib/Cloudflare/Containers/Container.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerApplication.d.ts +22 -1
- package/lib/Cloudflare/Containers/ContainerApplication.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerApplication.js +4 -1
- package/lib/Cloudflare/Containers/ContainerApplication.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerBundle.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerBundle.js +10 -2
- package/lib/Cloudflare/Containers/ContainerBundle.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerProvider.js +43 -0
- package/lib/Cloudflare/Containers/ContainerProvider.js.map +1 -1
- package/lib/Cloudflare/Credentials.d.ts +21 -1
- package/lib/Cloudflare/Credentials.d.ts.map +1 -1
- package/lib/Cloudflare/Credentials.js +52 -9
- package/lib/Cloudflare/Credentials.js.map +1 -1
- package/lib/Cloudflare/D1/ApplyMigrations.d.ts +30 -5
- package/lib/Cloudflare/D1/ApplyMigrations.d.ts.map +1 -1
- package/lib/Cloudflare/D1/ApplyMigrations.js +36 -26
- package/lib/Cloudflare/D1/ApplyMigrations.js.map +1 -1
- package/lib/Cloudflare/D1/Database.d.ts +18 -1
- package/lib/Cloudflare/D1/Database.d.ts.map +1 -1
- package/lib/Cloudflare/D1/Database.js +134 -2
- package/lib/Cloudflare/D1/Database.js.map +1 -1
- package/lib/Cloudflare/D1/LocalD1Gateway.d.ts +39 -0
- package/lib/Cloudflare/D1/LocalD1Gateway.d.ts.map +1 -0
- package/lib/Cloudflare/D1/LocalD1Gateway.js +100 -0
- package/lib/Cloudflare/D1/LocalD1Gateway.js.map +1 -0
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.d.ts +31 -0
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.d.ts.map +1 -1
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.js +13 -6
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.js.map +1 -1
- package/lib/Cloudflare/D1/QueryDatabaseLocal.d.ts.map +1 -1
- package/lib/Cloudflare/D1/QueryDatabaseLocal.js +21 -2
- package/lib/Cloudflare/D1/QueryDatabaseLocal.js.map +1 -1
- package/lib/Cloudflare/Email/Address.d.ts.map +1 -1
- package/lib/Cloudflare/Email/Address.js +15 -1
- package/lib/Cloudflare/Email/Address.js.map +1 -1
- package/lib/Cloudflare/Email/SendBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Email/SendBinding.js +1 -0
- package/lib/Cloudflare/Email/SendBinding.js.map +1 -1
- package/lib/Cloudflare/Email/SendEmail.d.ts +12 -0
- package/lib/Cloudflare/Email/SendEmail.d.ts.map +1 -1
- package/lib/Cloudflare/Email/SendEmail.js +1 -0
- package/lib/Cloudflare/Email/SendEmail.js.map +1 -1
- package/lib/Cloudflare/Flagship/App.d.ts.map +1 -1
- package/lib/Cloudflare/Flagship/App.js +8 -3
- package/lib/Cloudflare/Flagship/App.js.map +1 -1
- package/lib/Cloudflare/KV/LocalKVGateway.d.ts +15 -0
- package/lib/Cloudflare/KV/LocalKVGateway.d.ts.map +1 -0
- package/lib/Cloudflare/KV/LocalKVGateway.js +64 -0
- package/lib/Cloudflare/KV/LocalKVGateway.js.map +1 -0
- package/lib/Cloudflare/KV/Namespace.d.ts +9 -1
- package/lib/Cloudflare/KV/Namespace.d.ts.map +1 -1
- package/lib/Cloudflare/KV/Namespace.js +45 -1
- package/lib/Cloudflare/KV/Namespace.js.map +1 -1
- package/lib/Cloudflare/KV/NamespaceLocal.d.ts +16 -5
- package/lib/Cloudflare/KV/NamespaceLocal.d.ts.map +1 -1
- package/lib/Cloudflare/KV/NamespaceLocal.js +21 -4
- package/lib/Cloudflare/KV/NamespaceLocal.js.map +1 -1
- package/lib/Cloudflare/KV/ReadNamespaceLocal.d.ts.map +1 -1
- package/lib/Cloudflare/KV/ReadNamespaceLocal.js +5 -1
- package/lib/Cloudflare/KV/ReadNamespaceLocal.js.map +1 -1
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.d.ts.map +1 -1
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.js +5 -1
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.js.map +1 -1
- package/lib/Cloudflare/KV/WriteNamespaceLocal.d.ts.map +1 -1
- package/lib/Cloudflare/KV/WriteNamespaceLocal.js +5 -1
- package/lib/Cloudflare/KV/WriteNamespaceLocal.js.map +1 -1
- package/lib/Cloudflare/LocalGateway.d.ts +25 -0
- package/lib/Cloudflare/LocalGateway.d.ts.map +1 -0
- package/lib/Cloudflare/LocalGateway.js +70 -0
- package/lib/Cloudflare/LocalGateway.js.map +1 -0
- package/lib/Cloudflare/LocalRuntime.d.ts +14 -1
- package/lib/Cloudflare/LocalRuntime.d.ts.map +1 -1
- package/lib/Cloudflare/LocalRuntime.js +16 -1
- package/lib/Cloudflare/LocalRuntime.js.map +1 -1
- package/lib/Cloudflare/Logs.d.ts.map +1 -1
- package/lib/Cloudflare/Logs.js +18 -6
- package/lib/Cloudflare/Logs.js.map +1 -1
- package/lib/Cloudflare/Providers.d.ts +1 -1
- package/lib/Cloudflare/Providers.d.ts.map +1 -1
- package/lib/Cloudflare/Providers.js +6 -2
- package/lib/Cloudflare/Providers.js.map +1 -1
- package/lib/Cloudflare/Queues/Consumer.d.ts +16 -3
- package/lib/Cloudflare/Queues/Consumer.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/Consumer.js +51 -3
- package/lib/Cloudflare/Queues/Consumer.js.map +1 -1
- package/lib/Cloudflare/Queues/Queue.d.ts +4 -3
- package/lib/Cloudflare/Queues/Queue.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/Queue.js +7 -17
- package/lib/Cloudflare/Queues/Queue.js.map +1 -1
- package/lib/Cloudflare/Queues/QueueBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/QueueBinding.js +19 -0
- package/lib/Cloudflare/Queues/QueueBinding.js.map +1 -1
- package/lib/Cloudflare/Queues/QueueShim.d.ts +55 -0
- package/lib/Cloudflare/Queues/QueueShim.d.ts.map +1 -0
- package/lib/Cloudflare/Queues/QueueShim.js +177 -0
- package/lib/Cloudflare/Queues/QueueShim.js.map +1 -0
- package/lib/Cloudflare/R2/Bucket.d.ts +14 -1
- package/lib/Cloudflare/R2/Bucket.d.ts.map +1 -1
- package/lib/Cloudflare/R2/Bucket.js +53 -1
- package/lib/Cloudflare/R2/Bucket.js.map +1 -1
- package/lib/Cloudflare/R2/BucketBinding.d.ts +10 -0
- package/lib/Cloudflare/R2/BucketBinding.d.ts.map +1 -1
- package/lib/Cloudflare/R2/BucketBinding.js +14 -3
- package/lib/Cloudflare/R2/BucketBinding.js.map +1 -1
- package/lib/Cloudflare/R2/BucketLocal.d.ts +13 -6
- package/lib/Cloudflare/R2/BucketLocal.d.ts.map +1 -1
- package/lib/Cloudflare/R2/BucketLocal.js +19 -6
- package/lib/Cloudflare/R2/BucketLocal.js.map +1 -1
- package/lib/Cloudflare/R2/LocalR2Gateway.d.ts +15 -0
- package/lib/Cloudflare/R2/LocalR2Gateway.d.ts.map +1 -0
- package/lib/Cloudflare/R2/LocalR2Gateway.js +65 -0
- package/lib/Cloudflare/R2/LocalR2Gateway.js.map +1 -0
- package/lib/Cloudflare/R2/ReadBucketLocal.d.ts.map +1 -1
- package/lib/Cloudflare/R2/ReadBucketLocal.js +5 -1
- package/lib/Cloudflare/R2/ReadBucketLocal.js.map +1 -1
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.d.ts.map +1 -1
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.js +5 -1
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.js.map +1 -1
- package/lib/Cloudflare/R2/WriteBucketLocal.d.ts.map +1 -1
- package/lib/Cloudflare/R2/WriteBucketLocal.js +5 -1
- package/lib/Cloudflare/R2/WriteBucketLocal.js.map +1 -1
- package/lib/Cloudflare/Ruleset/AccountEntrypoint.d.ts.map +1 -1
- package/lib/Cloudflare/Ruleset/AccountEntrypoint.js +5 -1
- package/lib/Cloudflare/Ruleset/AccountEntrypoint.js.map +1 -1
- package/lib/Cloudflare/Ruleset/Ruleset.d.ts.map +1 -1
- package/lib/Cloudflare/Ruleset/Ruleset.js +19 -6
- package/lib/Cloudflare/Ruleset/Ruleset.js.map +1 -1
- package/lib/Cloudflare/Rum/Site.js +10 -2
- package/lib/Cloudflare/Rum/Site.js.map +1 -1
- package/lib/Cloudflare/StateStore/Api.d.ts +31 -2
- package/lib/Cloudflare/StateStore/Api.js +1 -1
- package/lib/Cloudflare/StateStore/Api.js.map +1 -1
- package/lib/Cloudflare/StateStore/State.d.ts +1 -1
- package/lib/Cloudflare/StateStore/State.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/Tunnel.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/Tunnel.js +20 -1
- package/lib/Cloudflare/Tunnel/Tunnel.js.map +1 -1
- package/lib/Cloudflare/Website/StaticSite.d.ts +34 -7
- package/lib/Cloudflare/Website/StaticSite.d.ts.map +1 -1
- package/lib/Cloudflare/Website/StaticSite.js +108 -24
- package/lib/Cloudflare/Website/StaticSite.js.map +1 -1
- package/lib/Cloudflare/Website/Vite.d.ts +33 -19
- package/lib/Cloudflare/Website/Vite.d.ts.map +1 -1
- package/lib/Cloudflare/Website/Vite.js +33 -19
- package/lib/Cloudflare/Website/Vite.js.map +1 -1
- package/lib/Cloudflare/Workers/Compatibility.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Compatibility.js +26 -7
- package/lib/Cloudflare/Workers/Compatibility.js.map +1 -1
- package/lib/Cloudflare/Workers/DurableObject.d.ts +22 -0
- package/lib/Cloudflare/Workers/DurableObject.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObject.js +22 -0
- package/lib/Cloudflare/Workers/DurableObject.js.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectBridge.js +20 -5
- package/lib/Cloudflare/Workers/DurableObjectBridge.js.map +1 -1
- package/lib/Cloudflare/Workers/InferEnv.d.ts +4 -2
- package/lib/Cloudflare/Workers/InferEnv.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts +7 -3
- package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js +483 -298
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workers/Worker.d.ts +612 -13
- package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Worker.js +222 -1
- package/lib/Cloudflare/Workers/Worker.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts +13 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +171 -21
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts +130 -28
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBinding.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBridge.d.ts +6 -2
- package/lib/Cloudflare/Workers/WorkerBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBridge.js +18 -2
- package/lib/Cloudflare/Workers/WorkerBridge.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBundle.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBundle.js +4 -1
- package/lib/Cloudflare/Workers/WorkerBundle.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerProvider.d.ts +186 -11
- package/lib/Cloudflare/Workers/WorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerProvider.js +1765 -236
- package/lib/Cloudflare/Workers/WorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.d.ts +7 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.js +14 -4
- package/lib/Cloudflare/Workflows/WorkflowBridge.js.map +1 -1
- package/lib/Command/Build.d.ts +2 -2
- package/lib/Command/Build.d.ts.map +1 -1
- package/lib/Command/Build.js +4 -7
- package/lib/Command/Build.js.map +1 -1
- package/lib/Command/Command.d.ts +34 -4
- package/lib/Command/Command.d.ts.map +1 -1
- package/lib/Command/Command.js +125 -30
- package/lib/Command/Command.js.map +1 -1
- package/lib/Command/Dev.d.ts +2 -2
- package/lib/Command/Dev.d.ts.map +1 -1
- package/lib/Command/Dev.js +51 -73
- package/lib/Command/Dev.js.map +1 -1
- package/lib/Command/Exec.d.ts +11 -2
- package/lib/Command/Exec.d.ts.map +1 -1
- package/lib/Command/Exec.js +9 -0
- package/lib/Command/Exec.js.map +1 -1
- package/lib/Command/Memo.d.ts +9 -1
- package/lib/Command/Memo.d.ts.map +1 -1
- package/lib/Command/Memo.js +14 -2
- package/lib/Command/Memo.js.map +1 -1
- package/lib/Command/Providers.d.ts +1 -1
- package/lib/Command/Providers.d.ts.map +1 -1
- package/lib/Command/Redaction.d.ts +10 -0
- package/lib/Command/Redaction.d.ts.map +1 -0
- package/lib/Command/Redaction.js +119 -0
- package/lib/Command/Redaction.js.map +1 -0
- package/lib/Deploy.d.ts +2 -1
- package/lib/Deploy.d.ts.map +1 -1
- package/lib/Destroy.d.ts +2 -1
- package/lib/Destroy.d.ts.map +1 -1
- package/lib/Destroy.js +1 -9
- package/lib/Destroy.js.map +1 -1
- package/lib/Docker/Container.d.ts +15 -1
- package/lib/Docker/Container.d.ts.map +1 -1
- package/lib/Docker/Container.js +34 -11
- package/lib/Docker/Container.js.map +1 -1
- package/lib/Docker/Context.d.ts +84 -0
- package/lib/Docker/Context.d.ts.map +1 -0
- package/lib/Docker/Context.js +145 -0
- package/lib/Docker/Context.js.map +1 -0
- package/lib/Docker/Docker.d.ts +190 -14
- package/lib/Docker/Docker.d.ts.map +1 -1
- package/lib/Docker/Docker.js +149 -28
- package/lib/Docker/Docker.js.map +1 -1
- package/lib/Docker/Image.d.ts +12 -0
- package/lib/Docker/Image.d.ts.map +1 -1
- package/lib/Docker/Image.js +24 -7
- package/lib/Docker/Image.js.map +1 -1
- package/lib/Docker/Network.d.ts +7 -0
- package/lib/Docker/Network.d.ts.map +1 -1
- package/lib/Docker/Network.js +16 -7
- package/lib/Docker/Network.js.map +1 -1
- package/lib/Docker/Providers.d.ts +1 -1
- package/lib/Docker/Providers.d.ts.map +1 -1
- package/lib/Docker/Providers.js +13 -1
- package/lib/Docker/Providers.js.map +1 -1
- package/lib/Docker/RemoteImage.d.ts +12 -0
- package/lib/Docker/RemoteImage.d.ts.map +1 -1
- package/lib/Docker/RemoteImage.js +22 -8
- package/lib/Docker/RemoteImage.js.map +1 -1
- package/lib/Docker/Service.d.ts +445 -0
- package/lib/Docker/Service.d.ts.map +1 -0
- package/lib/Docker/Service.js +578 -0
- package/lib/Docker/Service.js.map +1 -0
- package/lib/Docker/ServiceImage.d.ts +78 -0
- package/lib/Docker/ServiceImage.d.ts.map +1 -0
- package/lib/Docker/ServiceImage.js +232 -0
- package/lib/Docker/ServiceImage.js.map +1 -0
- package/lib/Docker/Swarm.d.ts +117 -0
- package/lib/Docker/Swarm.d.ts.map +1 -0
- package/lib/Docker/Swarm.js +149 -0
- package/lib/Docker/Swarm.js.map +1 -0
- package/lib/Docker/Volume.d.ts +11 -0
- package/lib/Docker/Volume.d.ts.map +1 -1
- package/lib/Docker/Volume.js +21 -6
- package/lib/Docker/Volume.js.map +1 -1
- package/lib/Docker/index.d.ts +3 -0
- package/lib/Docker/index.d.ts.map +1 -1
- package/lib/Docker/index.js +3 -0
- package/lib/Docker/index.js.map +1 -1
- package/lib/Http.d.ts +8 -1
- package/lib/Http.d.ts.map +1 -1
- package/lib/Http.js +7 -2
- package/lib/Http.js.map +1 -1
- package/lib/Local/LocalProvider.d.ts +182 -0
- package/lib/Local/LocalProvider.d.ts.map +1 -0
- package/lib/Local/LocalProvider.js +226 -0
- package/lib/Local/LocalProvider.js.map +1 -0
- package/lib/Local/ProviderLayer.d.ts +43 -2
- package/lib/Local/ProviderLayer.d.ts.map +1 -1
- package/lib/Local/ProviderLayer.js +80 -2
- package/lib/Local/ProviderLayer.js.map +1 -1
- package/lib/Local/RpcProvider.d.ts +7 -0
- package/lib/Local/RpcProvider.d.ts.map +1 -1
- package/lib/Local/RpcProvider.js +8 -3
- package/lib/Local/RpcProvider.js.map +1 -1
- package/lib/Local/RpcProviderProxy.d.ts.map +1 -1
- package/lib/Local/RpcProviderProxy.js +3 -0
- package/lib/Local/RpcProviderProxy.js.map +1 -1
- package/lib/Local/RpcServer.d.ts +8 -1
- package/lib/Local/RpcServer.d.ts.map +1 -1
- package/lib/Local/RpcServer.js +4 -1
- package/lib/Local/RpcServer.js.map +1 -1
- package/lib/Plan.d.ts +34 -0
- package/lib/Plan.d.ts.map +1 -1
- package/lib/Plan.js +127 -40
- package/lib/Plan.js.map +1 -1
- package/lib/Planetscale/AuthProvider.d.ts.map +1 -1
- package/lib/Planetscale/AuthProvider.js +6 -2
- package/lib/Planetscale/AuthProvider.js.map +1 -1
- package/lib/Planetscale/Branch.d.ts.map +1 -1
- package/lib/Planetscale/Branch.js +36 -6
- package/lib/Planetscale/Branch.js.map +1 -1
- package/lib/Planetscale/MySQL/MySQLDatabase.d.ts.map +1 -1
- package/lib/Planetscale/MySQL/MySQLDatabase.js +31 -6
- package/lib/Planetscale/MySQL/MySQLDatabase.js.map +1 -1
- package/lib/Planetscale/OAuthClient.d.ts +7 -1
- package/lib/Planetscale/OAuthClient.d.ts.map +1 -1
- package/lib/Planetscale/OAuthClient.js +51 -4
- package/lib/Planetscale/OAuthClient.js.map +1 -1
- package/lib/Planetscale/Postgres/PostgresDatabase.d.ts.map +1 -1
- package/lib/Planetscale/Postgres/PostgresDatabase.js +30 -5
- package/lib/Planetscale/Postgres/PostgresDatabase.js.map +1 -1
- package/lib/Platform.d.ts.map +1 -1
- package/lib/Platform.js +25 -14
- package/lib/Platform.js.map +1 -1
- package/lib/Prisma/App.d.ts +80 -0
- package/lib/Prisma/App.d.ts.map +1 -0
- package/lib/Prisma/App.js +238 -0
- package/lib/Prisma/App.js.map +1 -0
- package/lib/Prisma/AuthProvider.d.ts +28 -0
- package/lib/Prisma/AuthProvider.d.ts.map +1 -0
- package/lib/Prisma/AuthProvider.js +131 -0
- package/lib/Prisma/AuthProvider.js.map +1 -0
- package/lib/Prisma/Branch.d.ts +75 -0
- package/lib/Prisma/Branch.d.ts.map +1 -0
- package/lib/Prisma/Branch.js +216 -0
- package/lib/Prisma/Branch.js.map +1 -0
- package/lib/Prisma/Client.d.ts +178 -0
- package/lib/Prisma/Client.d.ts.map +1 -0
- package/lib/Prisma/Client.js +562 -0
- package/lib/Prisma/Client.js.map +1 -0
- package/lib/Prisma/Compute.d.ts +583 -0
- package/lib/Prisma/Compute.d.ts.map +1 -0
- package/lib/Prisma/Compute.js +1543 -0
- package/lib/Prisma/Compute.js.map +1 -0
- package/lib/Prisma/ComputeArchive.d.ts +63 -0
- package/lib/Prisma/ComputeArchive.d.ts.map +1 -0
- package/lib/Prisma/ComputeArchive.js +227 -0
- package/lib/Prisma/ComputeArchive.js.map +1 -0
- package/lib/Prisma/ComputeBuild.d.ts +106 -0
- package/lib/Prisma/ComputeBuild.d.ts.map +1 -0
- package/lib/Prisma/ComputeBuild.js +987 -0
- package/lib/Prisma/ComputeBuild.js.map +1 -0
- package/lib/Prisma/ComputeLifecycle.d.ts +84 -0
- package/lib/Prisma/ComputeLifecycle.d.ts.map +1 -0
- package/lib/Prisma/ComputeLifecycle.js +186 -0
- package/lib/Prisma/ComputeLifecycle.js.map +1 -0
- package/lib/Prisma/Connect.d.ts +99 -0
- package/lib/Prisma/Connect.d.ts.map +1 -0
- package/lib/Prisma/Connect.js +187 -0
- package/lib/Prisma/Connect.js.map +1 -0
- package/lib/Prisma/Connection.d.ts +202 -0
- package/lib/Prisma/Connection.d.ts.map +1 -0
- package/lib/Prisma/Connection.js +346 -0
- package/lib/Prisma/Connection.js.map +1 -0
- package/lib/Prisma/CustomDomain.d.ts +81 -0
- package/lib/Prisma/CustomDomain.d.ts.map +1 -0
- package/lib/Prisma/CustomDomain.js +175 -0
- package/lib/Prisma/CustomDomain.js.map +1 -0
- package/lib/Prisma/Database.d.ts +208 -0
- package/lib/Prisma/Database.d.ts.map +1 -0
- package/lib/Prisma/Database.js +405 -0
- package/lib/Prisma/Database.js.map +1 -0
- package/lib/Prisma/Deployment.d.ts +135 -0
- package/lib/Prisma/Deployment.d.ts.map +1 -0
- package/lib/Prisma/Deployment.js +348 -0
- package/lib/Prisma/Deployment.js.map +1 -0
- package/lib/Prisma/EnvironmentVariable.d.ts +89 -0
- package/lib/Prisma/EnvironmentVariable.d.ts.map +1 -0
- package/lib/Prisma/EnvironmentVariable.js +213 -0
- package/lib/Prisma/EnvironmentVariable.js.map +1 -0
- package/lib/Prisma/Internal/AppIdentity.d.ts +10 -0
- package/lib/Prisma/Internal/AppIdentity.d.ts.map +1 -0
- package/lib/Prisma/Internal/AppIdentity.js +6 -0
- package/lib/Prisma/Internal/AppIdentity.js.map +1 -0
- package/lib/Prisma/Internal/AppPromotion.d.ts +19 -0
- package/lib/Prisma/Internal/AppPromotion.d.ts.map +1 -0
- package/lib/Prisma/Internal/AppPromotion.js +107 -0
- package/lib/Prisma/Internal/AppPromotion.js.map +1 -0
- package/lib/Prisma/Internal/ArchivePlatform.d.ts +42 -0
- package/lib/Prisma/Internal/ArchivePlatform.d.ts.map +1 -0
- package/lib/Prisma/Internal/ArchivePlatform.js +214 -0
- package/lib/Prisma/Internal/ArchivePlatform.js.map +1 -0
- package/lib/Prisma/Internal/ArtifactFile.d.ts +58 -0
- package/lib/Prisma/Internal/ArtifactFile.d.ts.map +1 -0
- package/lib/Prisma/Internal/ArtifactFile.js +134 -0
- package/lib/Prisma/Internal/ArtifactFile.js.map +1 -0
- package/lib/Prisma/Internal/ArtifactUpload.d.ts +5 -0
- package/lib/Prisma/Internal/ArtifactUpload.d.ts.map +1 -0
- package/lib/Prisma/Internal/ArtifactUpload.js +51 -0
- package/lib/Prisma/Internal/ArtifactUpload.js.map +1 -0
- package/lib/Prisma/Internal/BundlePaths.d.ts +4 -0
- package/lib/Prisma/Internal/BundlePaths.d.ts.map +1 -0
- package/lib/Prisma/Internal/BundlePaths.js +16 -0
- package/lib/Prisma/Internal/BundlePaths.js.map +1 -0
- package/lib/Prisma/Internal/CleanupFailure.d.ts +8 -0
- package/lib/Prisma/Internal/CleanupFailure.d.ts.map +1 -0
- package/lib/Prisma/Internal/CleanupFailure.js +8 -0
- package/lib/Prisma/Internal/CleanupFailure.js.map +1 -0
- package/lib/Prisma/Internal/DatabaseSecrets.d.ts +35 -0
- package/lib/Prisma/Internal/DatabaseSecrets.d.ts.map +1 -0
- package/lib/Prisma/Internal/DatabaseSecrets.js +85 -0
- package/lib/Prisma/Internal/DatabaseSecrets.js.map +1 -0
- package/lib/Prisma/Internal/DeploymentActions.d.ts +5 -0
- package/lib/Prisma/Internal/DeploymentActions.d.ts.map +1 -0
- package/lib/Prisma/Internal/DeploymentActions.js +16 -0
- package/lib/Prisma/Internal/DeploymentActions.js.map +1 -0
- package/lib/Prisma/Internal/DeploymentIdentity.d.ts +8 -0
- package/lib/Prisma/Internal/DeploymentIdentity.d.ts.map +1 -0
- package/lib/Prisma/Internal/DeploymentIdentity.js +12 -0
- package/lib/Prisma/Internal/DeploymentIdentity.js.map +1 -0
- package/lib/Prisma/Internal/DeploymentObserve.d.ts +3 -0
- package/lib/Prisma/Internal/DeploymentObserve.d.ts.map +1 -0
- package/lib/Prisma/Internal/DeploymentObserve.js +2 -0
- package/lib/Prisma/Internal/DeploymentObserve.js.map +1 -0
- package/lib/Prisma/Internal/EnvName.d.ts +7 -0
- package/lib/Prisma/Internal/EnvName.d.ts.map +1 -0
- package/lib/Prisma/Internal/EnvName.js +23 -0
- package/lib/Prisma/Internal/EnvName.js.map +1 -0
- package/lib/Prisma/Internal/HttpClient.d.ts +21 -0
- package/lib/Prisma/Internal/HttpClient.d.ts.map +1 -0
- package/lib/Prisma/Internal/HttpClient.js +23 -0
- package/lib/Prisma/Internal/HttpClient.js.map +1 -0
- package/lib/Prisma/Operations.d.ts +143 -0
- package/lib/Prisma/Operations.d.ts.map +1 -0
- package/lib/Prisma/Operations.js +75 -0
- package/lib/Prisma/Operations.js.map +1 -0
- package/lib/Prisma/Postgres.d.ts +24 -0
- package/lib/Prisma/Postgres.d.ts.map +1 -0
- package/lib/Prisma/Postgres.js +23 -0
- package/lib/Prisma/Postgres.js.map +1 -0
- package/lib/Prisma/PostgresOrigin.d.ts +31 -0
- package/lib/Prisma/PostgresOrigin.d.ts.map +1 -0
- package/lib/Prisma/PostgresOrigin.js +30 -0
- package/lib/Prisma/PostgresOrigin.js.map +1 -0
- package/lib/Prisma/PrismaDevDatabase.d.ts +25 -0
- package/lib/Prisma/PrismaDevDatabase.d.ts.map +1 -0
- package/lib/Prisma/PrismaDevDatabase.js +280 -0
- package/lib/Prisma/PrismaDevDatabase.js.map +1 -0
- package/lib/Prisma/PrismaEnvironment.d.ts +14 -0
- package/lib/Prisma/PrismaEnvironment.d.ts.map +1 -0
- package/lib/Prisma/PrismaEnvironment.js +50 -0
- package/lib/Prisma/PrismaEnvironment.js.map +1 -0
- package/lib/Prisma/PrismaLogs.d.ts +42 -0
- package/lib/Prisma/PrismaLogs.d.ts.map +1 -0
- package/lib/Prisma/PrismaLogs.js +318 -0
- package/lib/Prisma/PrismaLogs.js.map +1 -0
- package/lib/Prisma/Project.d.ts +117 -0
- package/lib/Prisma/Project.d.ts.map +1 -0
- package/lib/Prisma/Project.js +361 -0
- package/lib/Prisma/Project.js.map +1 -0
- package/lib/Prisma/Providers.d.ts +61 -0
- package/lib/Prisma/Providers.d.ts.map +1 -0
- package/lib/Prisma/Providers.js +282 -0
- package/lib/Prisma/Providers.js.map +1 -0
- package/lib/Prisma/Refs.d.ts +19 -0
- package/lib/Prisma/Refs.d.ts.map +1 -0
- package/lib/Prisma/Refs.js +25 -0
- package/lib/Prisma/Refs.js.map +1 -0
- package/lib/Prisma/SourceRepository.d.ts +104 -0
- package/lib/Prisma/SourceRepository.d.ts.map +1 -0
- package/lib/Prisma/SourceRepository.js +221 -0
- package/lib/Prisma/SourceRepository.js.map +1 -0
- package/lib/Prisma/Types.d.ts +539 -0
- package/lib/Prisma/Types.d.ts.map +1 -0
- package/lib/Prisma/Types.js +13 -0
- package/lib/Prisma/Types.js.map +1 -0
- package/lib/Prisma/index.d.ts +25 -0
- package/lib/Prisma/index.d.ts.map +1 -0
- package/lib/Prisma/index.js +24 -0
- package/lib/Prisma/index.js.map +1 -0
- package/lib/Provider.d.ts +57 -5
- package/lib/Provider.d.ts.map +1 -1
- package/lib/Provider.js +54 -30
- package/lib/Provider.js.map +1 -1
- package/lib/ProviderMode.d.ts +93 -0
- package/lib/ProviderMode.d.ts.map +1 -0
- package/lib/ProviderMode.js +77 -0
- package/lib/ProviderMode.js.map +1 -0
- package/lib/Resource.d.ts +8 -0
- package/lib/Resource.d.ts.map +1 -1
- package/lib/Resource.js +31 -0
- package/lib/Resource.js.map +1 -1
- package/lib/RuntimeContext.d.ts +7 -0
- package/lib/RuntimeContext.d.ts.map +1 -1
- package/lib/RuntimeContext.js.map +1 -1
- package/lib/Server/Process.d.ts +8 -0
- package/lib/Server/Process.d.ts.map +1 -1
- package/lib/Server/Process.js +29 -0
- package/lib/Server/Process.js.map +1 -1
- package/lib/State/InMemoryState.d.ts.map +1 -1
- package/lib/State/InMemoryState.js +2 -0
- package/lib/State/InMemoryState.js.map +1 -1
- package/lib/State/ResourceState.d.ts +18 -0
- package/lib/State/ResourceState.d.ts.map +1 -1
- package/lib/Sync.d.ts.map +1 -1
- package/lib/Sync.js +8 -2
- package/lib/Sync.js.map +1 -1
- package/lib/Telemetry.d.ts +150 -0
- package/lib/Telemetry.d.ts.map +1 -0
- package/lib/Telemetry.js +512 -0
- package/lib/Telemetry.js.map +1 -0
- package/lib/Test/Alchemy.d.ts.map +1 -1
- package/lib/Test/Alchemy.js +3 -1
- package/lib/Test/Alchemy.js.map +1 -1
- package/lib/Test/Core.d.ts +2 -2
- package/lib/Test/Core.d.ts.map +1 -1
- package/lib/Test/Core.js +1 -8
- package/lib/Test/Core.js.map +1 -1
- package/lib/Util/Clank.d.ts +11 -6
- package/lib/Util/Clank.d.ts.map +1 -1
- package/lib/Util/Clank.js +22 -9
- package/lib/Util/Clank.js.map +1 -1
- package/lib/Util/zip.d.ts +11 -0
- package/lib/Util/zip.d.ts.map +1 -1
- package/lib/Util/zip.js +30 -0
- package/lib/Util/zip.js.map +1 -1
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/package.json +46 -13
- package/src/AWS/ApiGateway/common.ts +9 -0
- package/src/AWS/Bedrock/LanguageModel.ts +883 -0
- package/src/AWS/Bedrock/LanguageModelHttp.ts +36 -0
- package/src/AWS/Bedrock/index.ts +2 -0
- package/src/AWS/CloudFront/Distribution.ts +116 -6
- package/src/AWS/CostExplorer/common.ts +23 -2
- package/src/AWS/DataSync/Task.ts +30 -15
- package/src/AWS/EC2/Vpc.ts +35 -21
- package/src/AWS/EC2/hosted.ts +10 -2
- package/src/AWS/ECR/ImageSource.ts +10 -2
- package/src/AWS/ECR/Repository.ts +39 -4
- package/src/AWS/ECS/Service.ts +322 -22
- package/src/AWS/ECS/Task.ts +82 -32
- package/src/AWS/EKS/Deployment.ts +10 -2
- package/src/AWS/EKS/Job.ts +10 -2
- package/src/AWS/Lambda/Function.ts +101 -43
- package/src/AWS/Lambda/HttpServer.ts +7 -1
- package/src/AWS/Lambda/LayerVersion.ts +490 -0
- package/src/AWS/Lambda/MicrovmBundle.ts +10 -2
- package/src/AWS/Lambda/index.ts +1 -0
- package/src/AWS/Providers.ts +10 -0
- package/src/AWS/SES/ActiveReceiptRuleSet.ts +88 -0
- package/src/AWS/SES/ReceiptFilter.ts +169 -0
- package/src/AWS/SES/ReceiptRule.ts +300 -0
- package/src/AWS/SES/ReceiptRuleSet.ts +164 -0
- package/src/AWS/SES/SendBounce.ts +44 -0
- package/src/AWS/SES/SendBounceHttp.ts +13 -0
- package/src/AWS/SES/index.ts +6 -0
- package/src/AWS/StateStore/State.ts +159 -42
- package/src/Apply.ts +199 -83
- package/src/Axiom/Telemetry.ts +119 -0
- package/src/Axiom/index.ts +1 -0
- package/src/Bundle/Bundle.ts +17 -7
- package/src/Bundle/BundleAnalyzerPlugin.ts +9 -4
- package/src/Bundle/PurePlugin.ts +19 -9
- package/src/Cli/checkVersion.ts +102 -16
- package/src/Cli/commands/deploy.ts +3 -14
- package/src/Cli/commands/logs.ts +6 -1
- package/src/Cli/commands/tail.ts +6 -1
- package/src/Cli/main.ts +5 -4
- package/src/Cloudflare/AI/Search.ts +4 -18
- package/src/Cloudflare/AI/SearchInstance.ts +7 -26
- package/src/Cloudflare/ApiToken/AccountApiToken.ts +3 -0
- package/src/Cloudflare/Auth/AuthProvider.ts +17 -3
- package/src/Cloudflare/Auth/OAuthClient.ts +58 -2
- package/src/Cloudflare/Containers/Container.ts +92 -3
- package/src/Cloudflare/Containers/ContainerApplication.ts +31 -5
- package/src/Cloudflare/Containers/ContainerBundle.ts +10 -2
- package/src/Cloudflare/Containers/ContainerProvider.ts +62 -0
- package/src/Cloudflare/Credentials.ts +69 -9
- package/src/Cloudflare/D1/ApplyMigrations.ts +72 -77
- package/src/Cloudflare/D1/Database.ts +154 -2
- package/src/Cloudflare/D1/LocalD1Gateway.ts +150 -0
- package/src/Cloudflare/D1/QueryDatabaseHttpClient.ts +49 -11
- package/src/Cloudflare/D1/QueryDatabaseLocal.ts +44 -2
- package/src/Cloudflare/Email/Address.ts +18 -1
- package/src/Cloudflare/Email/SendBinding.ts +1 -0
- package/src/Cloudflare/Email/SendEmail.ts +13 -0
- package/src/Cloudflare/Flagship/App.ts +18 -6
- package/src/Cloudflare/KV/LocalKVGateway.ts +86 -0
- package/src/Cloudflare/KV/Namespace.ts +47 -1
- package/src/Cloudflare/KV/NamespaceLocal.ts +29 -6
- package/src/Cloudflare/KV/ReadNamespaceLocal.ts +5 -1
- package/src/Cloudflare/KV/ReadWriteNamespaceLocal.ts +5 -1
- package/src/Cloudflare/KV/WriteNamespaceLocal.ts +5 -1
- package/src/Cloudflare/LocalGateway.ts +86 -0
- package/src/Cloudflare/LocalRuntime.ts +21 -1
- package/src/Cloudflare/Logs.ts +58 -28
- package/src/Cloudflare/Providers.ts +4 -2
- package/src/Cloudflare/Queues/Consumer.ts +70 -2
- package/src/Cloudflare/Queues/Queue.ts +7 -16
- package/src/Cloudflare/Queues/QueueBinding.ts +21 -0
- package/src/Cloudflare/Queues/QueueShim.ts +193 -0
- package/src/Cloudflare/R2/Bucket.ts +55 -1
- package/src/Cloudflare/R2/BucketBinding.ts +17 -3
- package/src/Cloudflare/R2/BucketLocal.ts +25 -8
- package/src/Cloudflare/R2/LocalR2Gateway.ts +84 -0
- package/src/Cloudflare/R2/ReadBucketLocal.ts +7 -1
- package/src/Cloudflare/R2/ReadWriteBucketLocal.ts +7 -1
- package/src/Cloudflare/R2/WriteBucketLocal.ts +7 -1
- package/src/Cloudflare/Ruleset/AccountEntrypoint.ts +5 -1
- package/src/Cloudflare/Ruleset/Ruleset.ts +20 -6
- package/src/Cloudflare/Rum/Site.ts +11 -4
- package/src/Cloudflare/StateStore/Api.ts +1 -1
- package/src/Cloudflare/Tunnel/Tunnel.ts +23 -1
- package/src/Cloudflare/Website/StaticSite.ts +117 -28
- package/src/Cloudflare/Website/Vite.ts +33 -19
- package/src/Cloudflare/Workers/Compatibility.ts +27 -7
- package/src/Cloudflare/Workers/DurableObject.ts +22 -0
- package/src/Cloudflare/Workers/DurableObjectBridge.ts +29 -10
- package/src/Cloudflare/Workers/InferEnv.ts +74 -59
- package/src/Cloudflare/Workers/LocalWorkerProvider.ts +619 -401
- package/src/Cloudflare/Workers/Worker.ts +676 -28
- package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +209 -25
- package/src/Cloudflare/Workers/WorkerBinding.ts +67 -3
- package/src/Cloudflare/Workers/WorkerBridge.ts +26 -4
- package/src/Cloudflare/Workers/WorkerBundle.ts +6 -1
- package/src/Cloudflare/Workers/WorkerProvider.ts +2269 -277
- package/src/Cloudflare/Workflows/WorkflowBridge.ts +31 -13
- package/src/Command/Build.ts +8 -8
- package/src/Command/Command.ts +217 -42
- package/src/Command/Dev.ts +79 -107
- package/src/Command/Exec.ts +11 -2
- package/src/Command/Memo.ts +27 -3
- package/src/Command/Redaction.ts +181 -0
- package/src/Destroy.ts +1 -10
- package/src/Docker/Container.ts +55 -15
- package/src/Docker/Context.ts +236 -0
- package/src/Docker/Docker.ts +393 -43
- package/src/Docker/Image.ts +28 -7
- package/src/Docker/Network.ts +38 -14
- package/src/Docker/Providers.ts +16 -1
- package/src/Docker/RemoteImage.ts +23 -7
- package/src/Docker/Service.ts +1119 -0
- package/src/Docker/ServiceImage.ts +331 -0
- package/src/Docker/Swarm.ts +226 -0
- package/src/Docker/Volume.ts +25 -6
- package/src/Docker/index.ts +3 -0
- package/src/Http.ts +15 -2
- package/src/Local/LocalProvider.ts +518 -0
- package/src/Local/ProviderLayer.ts +113 -11
- package/src/Local/RpcProvider.ts +10 -5
- package/src/Local/RpcProviderProxy.ts +4 -1
- package/src/Local/RpcServer.ts +20 -2
- package/src/Plan.ts +182 -54
- package/src/Planetscale/AuthProvider.ts +15 -2
- package/src/Planetscale/Branch.ts +39 -6
- package/src/Planetscale/MySQL/MySQLDatabase.ts +34 -6
- package/src/Planetscale/OAuthClient.ts +59 -3
- package/src/Planetscale/Postgres/PostgresDatabase.ts +33 -5
- package/src/Platform.ts +29 -17
- package/src/Prisma/App.ts +420 -0
- package/src/Prisma/AuthProvider.ts +260 -0
- package/src/Prisma/Branch.ts +396 -0
- package/src/Prisma/Client.ts +1337 -0
- package/src/Prisma/Compute.ts +2876 -0
- package/src/Prisma/ComputeArchive.ts +432 -0
- package/src/Prisma/ComputeBuild.ts +1652 -0
- package/src/Prisma/ComputeLifecycle.ts +391 -0
- package/src/Prisma/Connect.ts +410 -0
- package/src/Prisma/Connection.ts +626 -0
- package/src/Prisma/CustomDomain.ts +363 -0
- package/src/Prisma/Database.ts +836 -0
- package/src/Prisma/Deployment.ts +655 -0
- package/src/Prisma/EnvironmentVariable.ts +401 -0
- package/src/Prisma/Internal/AppIdentity.ts +19 -0
- package/src/Prisma/Internal/AppPromotion.ts +172 -0
- package/src/Prisma/Internal/ArchivePlatform.ts +320 -0
- package/src/Prisma/Internal/ArtifactFile.ts +242 -0
- package/src/Prisma/Internal/ArtifactUpload.ts +86 -0
- package/src/Prisma/Internal/BundlePaths.ts +28 -0
- package/src/Prisma/Internal/CleanupFailure.ts +17 -0
- package/src/Prisma/Internal/DatabaseSecrets.ts +175 -0
- package/src/Prisma/Internal/DeploymentActions.ts +59 -0
- package/src/Prisma/Internal/DeploymentIdentity.ts +25 -0
- package/src/Prisma/Internal/DeploymentObserve.ts +6 -0
- package/src/Prisma/Internal/EnvName.ts +24 -0
- package/src/Prisma/Internal/HttpClient.ts +30 -0
- package/src/Prisma/Operations.ts +259 -0
- package/src/Prisma/Postgres.ts +24 -0
- package/src/Prisma/PostgresOrigin.ts +52 -0
- package/src/Prisma/PrismaDevDatabase.ts +395 -0
- package/src/Prisma/PrismaEnvironment.ts +89 -0
- package/src/Prisma/PrismaLogs.ts +434 -0
- package/src/Prisma/Project.ts +681 -0
- package/src/Prisma/Providers.ts +411 -0
- package/src/Prisma/Refs.ts +69 -0
- package/src/Prisma/SourceRepository.ts +432 -0
- package/src/Prisma/Types.ts +611 -0
- package/src/Prisma/index.ts +24 -0
- package/src/Provider.ts +155 -39
- package/src/ProviderMode.ts +123 -0
- package/src/Resource.ts +46 -0
- package/src/RuntimeContext.ts +7 -0
- package/src/Server/Process.ts +33 -0
- package/src/State/InMemoryState.ts +2 -0
- package/src/State/ResourceState.ts +18 -0
- package/src/Sync.ts +14 -2
- package/src/Telemetry.ts +736 -0
- package/src/Test/Alchemy.ts +3 -1
- package/src/Test/Core.ts +1 -8
- package/src/Util/Clank.ts +37 -11
- package/src/Util/zip.ts +39 -0
- package/src/index.ts +3 -0
package/src/Local/RpcServer.ts
CHANGED
|
@@ -30,6 +30,17 @@ export class RpcServer extends Context.Service<RpcServer, never>()(
|
|
|
30
30
|
"alchemy/Local/RpcServer",
|
|
31
31
|
) {}
|
|
32
32
|
|
|
33
|
+
/**
|
|
34
|
+
* The provider shape served over RPC. The `mode`/`modes` variant machinery
|
|
35
|
+
* (lazy Layer-built Effects, see `ProviderLayer.dual`) is process-local and
|
|
36
|
+
* cannot cross the RPC boundary — the sidecar serves the concrete provider
|
|
37
|
+
* implementation, never the mode-dispatching wrapper.
|
|
38
|
+
*/
|
|
39
|
+
export type RpcProviderService<R extends ResourceLike> = Omit<
|
|
40
|
+
ProviderService<R>,
|
|
41
|
+
"mode" | "modes"
|
|
42
|
+
>;
|
|
43
|
+
|
|
33
44
|
/**
|
|
34
45
|
* The RPC API that is implemented by the server and consumed by {@link RpcProviderProxy}.
|
|
35
46
|
*/
|
|
@@ -40,7 +51,7 @@ export interface RpcProxyApi {
|
|
|
40
51
|
*/
|
|
41
52
|
readonly getProvider: <R extends ResourceLike>(
|
|
42
53
|
type: R["Type"],
|
|
43
|
-
) => Promise<RpcSerialization.RpcWrapped<
|
|
54
|
+
) => Promise<RpcSerialization.RpcWrapped<RpcProviderService<R>>>;
|
|
44
55
|
}
|
|
45
56
|
|
|
46
57
|
const serverPlatformLayer = platformLayer({
|
|
@@ -128,8 +139,15 @@ export const layerServer = (
|
|
|
128
139
|
if (!provider) {
|
|
129
140
|
throw new Error(`Provider "${type}" not found`);
|
|
130
141
|
}
|
|
142
|
+
// Strip the process-local variant machinery (see
|
|
143
|
+
// RpcProviderService above) — lazy Effects don't serialize.
|
|
144
|
+
const {
|
|
145
|
+
mode: _mode,
|
|
146
|
+
modes: _modes,
|
|
147
|
+
...serializable
|
|
148
|
+
} = provider as ProviderService<R>;
|
|
131
149
|
return RpcSerialization.wrapRpcHandlers(
|
|
132
|
-
|
|
150
|
+
serializable as RpcProviderService<R>,
|
|
133
151
|
["tail"],
|
|
134
152
|
);
|
|
135
153
|
},
|
package/src/Plan.ts
CHANGED
|
@@ -28,6 +28,7 @@ import {
|
|
|
28
28
|
havePropsChanged,
|
|
29
29
|
isResolved,
|
|
30
30
|
type NoopDiff,
|
|
31
|
+
type ReplaceDiff,
|
|
31
32
|
type UpdateDiff,
|
|
32
33
|
} from "./Diff.ts";
|
|
33
34
|
import { parseFqn } from "./FQN.ts";
|
|
@@ -37,9 +38,11 @@ import {
|
|
|
37
38
|
findProviderByType,
|
|
38
39
|
missingProviderError,
|
|
39
40
|
Provider,
|
|
41
|
+
providerForMode,
|
|
40
42
|
tryFindProviderByType,
|
|
41
43
|
type ProviderService,
|
|
42
44
|
} from "./Provider.ts";
|
|
45
|
+
import { defaultProviderMode, type ProviderMode } from "./ProviderMode.ts";
|
|
43
46
|
import {
|
|
44
47
|
isResource,
|
|
45
48
|
type ResourceBinding,
|
|
@@ -103,6 +106,14 @@ export interface BaseNode<
|
|
|
103
106
|
> {
|
|
104
107
|
resource: R;
|
|
105
108
|
provider: ProviderService<R>;
|
|
109
|
+
/**
|
|
110
|
+
* The {@link ProviderMode} this node's `provider` was resolved for.
|
|
111
|
+
* `undefined` for mode-agnostic providers (a single implementation
|
|
112
|
+
* serves both dev and deploy) — such resources never persist a mode and
|
|
113
|
+
* never replace on a mode switch. Apply stamps this onto every state
|
|
114
|
+
* commit as `providerMode`.
|
|
115
|
+
*/
|
|
116
|
+
mode: ProviderMode | undefined;
|
|
106
117
|
downstream: string[];
|
|
107
118
|
bindings: BindingNode<R["Binding"]>[];
|
|
108
119
|
}
|
|
@@ -119,6 +130,8 @@ export interface Update<
|
|
|
119
130
|
R extends ResourceLike = ResourceLike,
|
|
120
131
|
> extends BaseNode<R> {
|
|
121
132
|
action: "update";
|
|
133
|
+
/** True while this is the first reconcile after a cold adoption. */
|
|
134
|
+
adopting?: boolean;
|
|
122
135
|
props: R["Props"];
|
|
123
136
|
state:
|
|
124
137
|
| CreatedResourceState
|
|
@@ -229,6 +242,13 @@ export type Plan<Output = any> = {
|
|
|
229
242
|
* publish a fresh attr (the common, linear case).
|
|
230
243
|
*/
|
|
231
244
|
cycleMembers: ReadonlySet<string>;
|
|
245
|
+
/**
|
|
246
|
+
* Marks a plan built by {@link destroy}. `apply` finishes a destroy plan
|
|
247
|
+
* by deleting the stage's remaining persisted state — notably the stack
|
|
248
|
+
* output record written by the last deploy — instead of persisting a new
|
|
249
|
+
* (empty) output.
|
|
250
|
+
*/
|
|
251
|
+
destroy?: boolean;
|
|
232
252
|
};
|
|
233
253
|
|
|
234
254
|
export interface MakePlanOptions {
|
|
@@ -264,6 +284,48 @@ export const make = <A>(
|
|
|
264
284
|
});
|
|
265
285
|
});
|
|
266
286
|
|
|
287
|
+
// The run-level default provider mode (`alchemy dev` → "local",
|
|
288
|
+
// `alchemy deploy` → "live"). A resource-scoped `remote()` (captured on
|
|
289
|
+
// the resource at registration as `Mode`) opts out of local emulation.
|
|
290
|
+
const runDefaultMode = yield* defaultProviderMode;
|
|
291
|
+
|
|
292
|
+
/**
|
|
293
|
+
* Resolve the effective provider mode and the concrete provider
|
|
294
|
+
* service for a resource.
|
|
295
|
+
*
|
|
296
|
+
* The mode only "sticks" when the provider actually distinguishes
|
|
297
|
+
* modes (registered via `ProviderLayer.dual`). Mode-agnostic providers
|
|
298
|
+
* satisfy any requested mode with their single implementation — in a
|
|
299
|
+
* dev run, a construct that mixes emulatable resources with live-only
|
|
300
|
+
* ones (e.g. R2 buckets) just works.
|
|
301
|
+
*/
|
|
302
|
+
const resolveProviderAndMode = Effect.fn(function* (resource: {
|
|
303
|
+
Type: string;
|
|
304
|
+
Mode?: ProviderMode | undefined;
|
|
305
|
+
}) {
|
|
306
|
+
const base = yield* findProviderByType(resource.Type);
|
|
307
|
+
const mode =
|
|
308
|
+
base.modes !== undefined
|
|
309
|
+
? (resource.Mode ?? runDefaultMode)
|
|
310
|
+
: undefined;
|
|
311
|
+
const provider = yield* providerForMode(base, mode);
|
|
312
|
+
return { provider, mode };
|
|
313
|
+
});
|
|
314
|
+
|
|
315
|
+
/**
|
|
316
|
+
* Has this resource switched provider modes since it was last
|
|
317
|
+
* reconciled? Rows without a persisted mode (legacy rows, or rows
|
|
318
|
+
* written by a mode-agnostic provider) are assumed to already be in
|
|
319
|
+
* the current run's mode — no replacement churn.
|
|
320
|
+
*/
|
|
321
|
+
const hasModeSwitched = (
|
|
322
|
+
mode: ProviderMode | undefined,
|
|
323
|
+
oldState: ResourceState | undefined,
|
|
324
|
+
): boolean =>
|
|
325
|
+
mode !== undefined &&
|
|
326
|
+
oldState?.providerMode !== undefined &&
|
|
327
|
+
oldState.providerMode !== mode;
|
|
328
|
+
|
|
267
329
|
const resourceFqns = yield* state.list({
|
|
268
330
|
stack: stackName,
|
|
269
331
|
stage: stage,
|
|
@@ -293,7 +355,8 @@ export const make = <A>(
|
|
|
293
355
|
Effect.gen(function* () {
|
|
294
356
|
const resource = resourceExpr.src;
|
|
295
357
|
|
|
296
|
-
const provider
|
|
358
|
+
const { provider, mode } =
|
|
359
|
+
yield* resolveProviderAndMode(resource);
|
|
297
360
|
const props = yield* resolveInput(resource.Props);
|
|
298
361
|
const persisted = yield* state.get({
|
|
299
362
|
stack: stackName,
|
|
@@ -310,6 +373,13 @@ export const make = <A>(
|
|
|
310
373
|
return resourceExpr;
|
|
311
374
|
}
|
|
312
375
|
|
|
376
|
+
// The resource is switching provider modes (local ⇄ live):
|
|
377
|
+
// it will be replaced, so nothing about the persisted attrs
|
|
378
|
+
// is stable for downstream consumers.
|
|
379
|
+
if (hasModeSwitched(mode, oldState)) {
|
|
380
|
+
return resourceExpr;
|
|
381
|
+
}
|
|
382
|
+
|
|
313
383
|
const oldProps =
|
|
314
384
|
oldState.status === "updating"
|
|
315
385
|
? oldState.old.props
|
|
@@ -694,7 +764,7 @@ export const make = <A>(
|
|
|
694
764
|
(yield* Effect.all(
|
|
695
765
|
resources.map(
|
|
696
766
|
Effect.fn("plan.diff.resource")(function* (resource) {
|
|
697
|
-
const provider = yield*
|
|
767
|
+
const { provider, mode } = yield* resolveProviderAndMode(resource);
|
|
698
768
|
const id = resource.LogicalId;
|
|
699
769
|
const fqn = resource.FQN;
|
|
700
770
|
const news = yield* resolveInput(resource.Props);
|
|
@@ -806,6 +876,7 @@ export const make = <A>(
|
|
|
806
876
|
bindings: [],
|
|
807
877
|
downstream,
|
|
808
878
|
removalPolicy: resource.RemovalPolicy,
|
|
879
|
+
providerMode: mode,
|
|
809
880
|
} satisfies CreatedResourceState;
|
|
810
881
|
// In-memory only — do NOT persist here. Plan.make runs for
|
|
811
882
|
// `alchemy plan` / `deploy --dry-run` too, so a `state.set`
|
|
@@ -823,10 +894,19 @@ export const make = <A>(
|
|
|
823
894
|
const oldBindings = dedupeBindings(oldState?.bindings ?? []);
|
|
824
895
|
const bindingDiffs = diffBindings(oldBindings, newBindings);
|
|
825
896
|
|
|
897
|
+
// Local ⇄ live switch: the persisted row was reconciled by a
|
|
898
|
+
// different provider mode than the one resolved for this run.
|
|
899
|
+
// The two runtimes host distinct physical instances, so this is
|
|
900
|
+
// always a replacement — the new instance is created with the
|
|
901
|
+
// new mode's provider, and Apply deletes the old generation
|
|
902
|
+
// with the provider of the mode that created it (see
|
|
903
|
+
// `deleteOldGenerations` / `collectGarbage`).
|
|
904
|
+
const modeSwitched = hasModeSwitched(mode, oldState);
|
|
905
|
+
|
|
826
906
|
const Node = <T extends Apply>(
|
|
827
907
|
node: Omit<
|
|
828
908
|
T,
|
|
829
|
-
"provider" | "resource" | "bindings" | "downstream"
|
|
909
|
+
"provider" | "resource" | "bindings" | "downstream" | "mode"
|
|
830
910
|
>,
|
|
831
911
|
) =>
|
|
832
912
|
({
|
|
@@ -835,6 +915,7 @@ export const make = <A>(
|
|
|
835
915
|
resource,
|
|
836
916
|
bindings: bindingDiffs,
|
|
837
917
|
downstream,
|
|
918
|
+
mode,
|
|
838
919
|
}) as any as T;
|
|
839
920
|
|
|
840
921
|
// Plan against the persisted state we have, not the ideal final state we
|
|
@@ -847,6 +928,7 @@ export const make = <A>(
|
|
|
847
928
|
state: oldState,
|
|
848
929
|
});
|
|
849
930
|
} else if (
|
|
931
|
+
!modeSwitched &&
|
|
850
932
|
oldState.status === "creating" &&
|
|
851
933
|
oldState.attr === undefined
|
|
852
934
|
) {
|
|
@@ -871,7 +953,7 @@ export const make = <A>(
|
|
|
871
953
|
output: oldState.attr,
|
|
872
954
|
})
|
|
873
955
|
.pipe(providePlanScope(fqn, oldState.instanceId));
|
|
874
|
-
if (attr) {
|
|
956
|
+
if (attr !== undefined) {
|
|
875
957
|
// The recovered resource may be foreign: our interrupted
|
|
876
958
|
// create could have lost a name race, or died before
|
|
877
959
|
// stamping ownership. Route `Unowned` through the same
|
|
@@ -894,11 +976,12 @@ export const make = <A>(
|
|
|
894
976
|
});
|
|
895
977
|
}
|
|
896
978
|
}
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
979
|
+
// Continue through the normal diff below with the recovered
|
|
980
|
+
// live snapshot. Desired props may have changed while the
|
|
981
|
+
// previous create was interrupted; bypassing diff here can
|
|
982
|
+
// drive an immutable change through reconcile and falsely
|
|
983
|
+
// persist the old physical resource as converged.
|
|
984
|
+
oldState = { ...oldState, attr: stripUnowned(attr) };
|
|
902
985
|
}
|
|
903
986
|
}
|
|
904
987
|
}
|
|
@@ -908,50 +991,59 @@ export const make = <A>(
|
|
|
908
991
|
// not the older generations stored under `old`.
|
|
909
992
|
const oldProps = oldState.props;
|
|
910
993
|
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
994
|
+
// On a mode switch the provider diff is skipped entirely:
|
|
995
|
+
// comparing props across runtimes is meaningless (and the new
|
|
996
|
+
// mode's provider has never seen the old mode's state). The
|
|
997
|
+
// action is a replacement by definition.
|
|
998
|
+
const diff = modeSwitched
|
|
999
|
+
? ({
|
|
1000
|
+
action: "replace",
|
|
1001
|
+
deleteFirst: false,
|
|
1002
|
+
} satisfies ReplaceDiff)
|
|
1003
|
+
: yield* asEffect(
|
|
1004
|
+
provider
|
|
1005
|
+
?.diff?.({
|
|
1006
|
+
id,
|
|
1007
|
+
fqn,
|
|
1008
|
+
olds: oldProps,
|
|
1009
|
+
instanceId: oldState.instanceId,
|
|
1010
|
+
output: oldState.attr,
|
|
1011
|
+
news,
|
|
1012
|
+
oldBindings,
|
|
1013
|
+
newBindings,
|
|
1014
|
+
})
|
|
1015
|
+
.pipe(providePlanScope(fqn, oldState.instanceId)),
|
|
1016
|
+
).pipe(
|
|
1017
|
+
Effect.map(
|
|
1018
|
+
(diff) =>
|
|
1019
|
+
diff ??
|
|
1020
|
+
({
|
|
1021
|
+
action:
|
|
1022
|
+
havePropsChanged(oldProps, news) ||
|
|
1023
|
+
bindingDiffs.some((b) => b.action !== "noop")
|
|
1024
|
+
? "update"
|
|
1025
|
+
: "noop",
|
|
1026
|
+
} as UpdateDiff | NoopDiff),
|
|
1027
|
+
),
|
|
1028
|
+
Effect.map((diff) =>
|
|
1029
|
+
options.force && diff.action === "noop"
|
|
1030
|
+
? ({
|
|
1031
|
+
action: "update",
|
|
1032
|
+
} satisfies UpdateDiff)
|
|
1033
|
+
: diff,
|
|
1034
|
+
),
|
|
1035
|
+
// After a cold-start adoption (silent or takeover), force at
|
|
1036
|
+
// least an update so the provider re-syncs ownership tags /
|
|
1037
|
+
// config against the desired props (otherwise the engine
|
|
1038
|
+
// would noop and any drift between the existing cloud
|
|
1039
|
+
// resource and `news` — including foreign-owned tags after a
|
|
1040
|
+
// takeover — would persist).
|
|
1041
|
+
Effect.map((diff) =>
|
|
1042
|
+
forceUpdateAfterAdoption && diff.action === "noop"
|
|
1043
|
+
? ({ action: "update" } satisfies UpdateDiff)
|
|
1044
|
+
: diff,
|
|
1045
|
+
),
|
|
1046
|
+
);
|
|
955
1047
|
|
|
956
1048
|
if (oldState.status === "creating") {
|
|
957
1049
|
if (diff.action === "noop") {
|
|
@@ -1089,6 +1181,7 @@ export const make = <A>(
|
|
|
1089
1181
|
// Stable created/updated resources follow the normal CRUD mapping.
|
|
1090
1182
|
return Node<Update>({
|
|
1091
1183
|
action: "update",
|
|
1184
|
+
adopting: forceUpdateAfterAdoption,
|
|
1092
1185
|
props: news,
|
|
1093
1186
|
state: oldState,
|
|
1094
1187
|
});
|
|
@@ -1308,7 +1401,15 @@ export const make = <A>(
|
|
|
1308
1401
|
// the provider the row's physical resource cannot be deleted
|
|
1309
1402
|
// anyway. Die at plan time with a typed error naming the row
|
|
1310
1403
|
// and the remediation instead of limping into a partial apply.
|
|
1311
|
-
|
|
1404
|
+
//
|
|
1405
|
+
// Orphan deletes resolve the provider variant for the mode
|
|
1406
|
+
// that created the row (`providerMode`), so e.g. a local dev
|
|
1407
|
+
// worker's row is deleted by the local provider even during a
|
|
1408
|
+
// live deploy — and vice versa.
|
|
1409
|
+
const providerOption = yield* tryFindProviderByType(
|
|
1410
|
+
resourceType,
|
|
1411
|
+
oldState.providerMode,
|
|
1412
|
+
);
|
|
1312
1413
|
if (Option.isNone(providerOption)) {
|
|
1313
1414
|
return yield* Effect.die(
|
|
1314
1415
|
missingProviderError(resourceType, fqn),
|
|
@@ -1326,6 +1427,7 @@ export const make = <A>(
|
|
|
1326
1427
|
action: "delete",
|
|
1327
1428
|
state: oldState,
|
|
1328
1429
|
provider: provider,
|
|
1430
|
+
mode: oldState.providerMode,
|
|
1329
1431
|
resource: {
|
|
1330
1432
|
Namespace: oldState.namespace,
|
|
1331
1433
|
FQN: fqn,
|
|
@@ -1337,6 +1439,7 @@ export const make = <A>(
|
|
|
1337
1439
|
Provider: Provider(resourceType),
|
|
1338
1440
|
RemovalPolicy: oldState.removalPolicy,
|
|
1339
1441
|
Adopt: undefined,
|
|
1442
|
+
Mode: oldState.providerMode,
|
|
1340
1443
|
RuntimeContext: undefined!,
|
|
1341
1444
|
Providers: undefined,
|
|
1342
1445
|
} as ResourceLike,
|
|
@@ -1391,6 +1494,31 @@ export const make = <A>(
|
|
|
1391
1494
|
}),
|
|
1392
1495
|
);
|
|
1393
1496
|
|
|
1497
|
+
/**
|
|
1498
|
+
* Build the plan that destroys every resource of `(stack.name, stack.stage)`.
|
|
1499
|
+
*
|
|
1500
|
+
* The spec is emptied out so every persisted resource becomes an orphan
|
|
1501
|
+
* deletion, and `output` is left undefined so `apply` does not overwrite the
|
|
1502
|
+
* last deploy's persisted stack output with an empty husk. `apply` recognizes
|
|
1503
|
+
* the `destroy` marker and deletes the stage's remaining persisted state (the
|
|
1504
|
+
* stack output record) once the destroy has converged, so `state.getOutput`
|
|
1505
|
+
* and `state.listStages` agree the stage is gone.
|
|
1506
|
+
*
|
|
1507
|
+
* @see https://github.com/alchemy-run/alchemy/issues/961
|
|
1508
|
+
*/
|
|
1509
|
+
export const destroy = (stack: {
|
|
1510
|
+
name: string;
|
|
1511
|
+
stage: string;
|
|
1512
|
+
}): Effect.Effect<Plan<undefined>, never, State> =>
|
|
1513
|
+
make({
|
|
1514
|
+
name: stack.name,
|
|
1515
|
+
stage: stack.stage,
|
|
1516
|
+
resources: {},
|
|
1517
|
+
bindings: {},
|
|
1518
|
+
actions: {},
|
|
1519
|
+
output: undefined,
|
|
1520
|
+
}).pipe(Effect.map((plan) => ({ ...plan, destroy: true })));
|
|
1521
|
+
|
|
1394
1522
|
const providePlanScope =
|
|
1395
1523
|
(fqn: string, instanceId: string) =>
|
|
1396
1524
|
<A, E, R>(
|
|
@@ -199,10 +199,23 @@ export const PlanetscaleAuth = AuthProviderLayer<
|
|
|
199
199
|
),
|
|
200
200
|
);
|
|
201
201
|
yield* Clank.info(
|
|
202
|
-
"Planetscale: waiting for authorization (up to 5 minutes)
|
|
202
|
+
"Planetscale: waiting for authorization (up to 5 minutes).",
|
|
203
203
|
);
|
|
204
204
|
|
|
205
|
-
const credentials = yield*
|
|
205
|
+
const credentials = yield* Effect.raceFirst(
|
|
206
|
+
OAuthClient.callback(authorization),
|
|
207
|
+
Clank.text({
|
|
208
|
+
message: "Paste the authorization code or callback URL",
|
|
209
|
+
placeholder:
|
|
210
|
+
"The browser will complete this automatically when local",
|
|
211
|
+
validate: (value) =>
|
|
212
|
+
value.trim().length > 0 ? undefined : "Paste a code or URL",
|
|
213
|
+
}).pipe(
|
|
214
|
+
Effect.flatMap((input) =>
|
|
215
|
+
OAuthClient.exchangeCallbackInput(input, authorization),
|
|
216
|
+
),
|
|
217
|
+
),
|
|
218
|
+
);
|
|
206
219
|
yield* store.write(profileName, "planetscale-oauth", credentials);
|
|
207
220
|
yield* Clank.success("Planetscale: OAuth credentials saved.");
|
|
208
221
|
return credentials;
|
|
@@ -4,7 +4,7 @@ import * as Effect from "effect/Effect";
|
|
|
4
4
|
import * as Schedule from "effect/Schedule";
|
|
5
5
|
import * as Stream from "effect/Stream";
|
|
6
6
|
import { Unowned } from "../AdoptPolicy.ts";
|
|
7
|
-
import { isResolved } from "../Diff.ts";
|
|
7
|
+
import { havePropsChanged, isResolved } from "../Diff.ts";
|
|
8
8
|
import { createPhysicalName } from "../PhysicalName.ts";
|
|
9
9
|
import * as Provider from "../Provider.ts";
|
|
10
10
|
import type { ResourceClass, ResourceLike } from "../Resource.ts";
|
|
@@ -263,6 +263,29 @@ export const makeBranchProvider = <R extends ResourceLike>(opts: {
|
|
|
263
263
|
diff: Effect.fn(function* ({ news, olds, output }: any) {
|
|
264
264
|
if (!isResolved(news)) return undefined;
|
|
265
265
|
|
|
266
|
+
// Branch names are rename-mutable (reconcile syncs `news.name` in
|
|
267
|
+
// place), so `name` cannot live in the provider-level stables. But
|
|
268
|
+
// almost no update is a rename — for those, advertise `name` as
|
|
269
|
+
// stable on the update so downstream consumers referencing this
|
|
270
|
+
// branch still resolve `branch.name` at plan time. Without it, a
|
|
271
|
+
// metadata-only update (e.g. an embedded database ref whose
|
|
272
|
+
// `migrationsHashes` moved) resolves consumer refs to just
|
|
273
|
+
// `{ organization, database }`, and identity-sensitive consumers
|
|
274
|
+
// (PostgresRole) falsely plan a replacement against `name: undefined`.
|
|
275
|
+
//
|
|
276
|
+
// The name only changes when the `name` prop itself changes: an
|
|
277
|
+
// explicit name renames iff it differs from the observed name, and
|
|
278
|
+
// an omitted name is engine-generated deterministically (stable
|
|
279
|
+
// across updates — the instance id only rotates on replacement).
|
|
280
|
+
const nameIsStable =
|
|
281
|
+
output?.name !== undefined &&
|
|
282
|
+
(news.name !== undefined
|
|
283
|
+
? news.name === output.name
|
|
284
|
+
: olds?.name === undefined);
|
|
285
|
+
const stables = nameIsStable
|
|
286
|
+
? ["organization", "database", "name"]
|
|
287
|
+
: undefined;
|
|
288
|
+
|
|
266
289
|
const newDb = resolveDatabase(news.database).name;
|
|
267
290
|
const oldDbRef = output?.database ?? olds.database;
|
|
268
291
|
if (oldDbRef) {
|
|
@@ -289,7 +312,7 @@ export const makeBranchProvider = <R extends ResourceLike>(opts: {
|
|
|
289
312
|
|
|
290
313
|
if (news.replicas !== undefined) {
|
|
291
314
|
if (output?.desiredReplicas !== news.replicas) {
|
|
292
|
-
return { action: "update" } as const;
|
|
315
|
+
return { action: "update", stables } as const;
|
|
293
316
|
}
|
|
294
317
|
|
|
295
318
|
const desiredHasReplicas = news.replicas > 0;
|
|
@@ -297,29 +320,39 @@ export const makeBranchProvider = <R extends ResourceLike>(opts: {
|
|
|
297
320
|
output?.hasReplicas !== undefined &&
|
|
298
321
|
output.hasReplicas !== desiredHasReplicas
|
|
299
322
|
) {
|
|
300
|
-
return { action: "update" } as const;
|
|
323
|
+
return { action: "update", stables } as const;
|
|
301
324
|
}
|
|
302
325
|
}
|
|
303
326
|
|
|
304
327
|
if (news.migrationsDir) {
|
|
305
328
|
const newHashes = yield* hashMigrations(news.migrationsDir);
|
|
306
329
|
if (!recordsEqual(newHashes, output?.migrationsHashes ?? {})) {
|
|
307
|
-
return { action: "update" } as const;
|
|
330
|
+
return { action: "update", stables } as const;
|
|
308
331
|
}
|
|
309
332
|
if (
|
|
310
333
|
(news.migrationsTable ?? DEFAULT_MIGRATIONS_TABLE) !==
|
|
311
334
|
(output?.migrationsTable ?? DEFAULT_MIGRATIONS_TABLE)
|
|
312
335
|
) {
|
|
313
|
-
return { action: "update" } as const;
|
|
336
|
+
return { action: "update", stables } as const;
|
|
314
337
|
}
|
|
315
338
|
}
|
|
316
339
|
if (news.importFiles?.length) {
|
|
317
340
|
const newHashes = yield* hashImports(news.importFiles, yield* rootDir);
|
|
318
341
|
if (!recordsEqual(newHashes, output?.importHashes ?? {})) {
|
|
319
|
-
return { action: "update" } as const;
|
|
342
|
+
return { action: "update", stables } as const;
|
|
320
343
|
}
|
|
321
344
|
}
|
|
322
345
|
|
|
346
|
+
// Remaining prop changes (rename, safeMigrations, clusterSize,
|
|
347
|
+
// metadata embedded in resource refs) are all in-place updates.
|
|
348
|
+
// Decide them here instead of falling back to the engine's default
|
|
349
|
+
// deep-compare so the conditional `name` stable above is attached —
|
|
350
|
+
// the default path uses the provider-level stables, which strip
|
|
351
|
+
// `name` from downstream plan resolution.
|
|
352
|
+
if (havePropsChanged(olds, news)) {
|
|
353
|
+
return { action: "update", stables } as const;
|
|
354
|
+
}
|
|
355
|
+
|
|
323
356
|
return undefined;
|
|
324
357
|
}),
|
|
325
358
|
|
|
@@ -2,7 +2,7 @@ import { Credentials } from "@distilled.cloud/planetscale/Credentials";
|
|
|
2
2
|
import * as planetscale from "@distilled.cloud/planetscale/Operations";
|
|
3
3
|
import * as Effect from "effect/Effect";
|
|
4
4
|
import * as Stream from "effect/Stream";
|
|
5
|
-
import { isResolved } from "../../Diff.ts";
|
|
5
|
+
import { havePropsChanged, isResolved } from "../../Diff.ts";
|
|
6
6
|
import { createPhysicalName } from "../../PhysicalName.ts";
|
|
7
7
|
import * as Provider from "../../Provider.ts";
|
|
8
8
|
import { Resource } from "../../Resource.ts";
|
|
@@ -178,6 +178,25 @@ export const MySQLDatabaseProvider = () =>
|
|
|
178
178
|
diff: Effect.fn(function* ({ news, olds, output }) {
|
|
179
179
|
if (!isResolved(news)) return undefined;
|
|
180
180
|
|
|
181
|
+
// Database names are rename-mutable (reconcile folds `new_name`
|
|
182
|
+
// into the settings sync), so `name` cannot live in the
|
|
183
|
+
// provider-level stables. Almost no update is a rename though —
|
|
184
|
+
// for those, advertise `name` as stable on the update so
|
|
185
|
+
// downstream consumers (branches, passwords) still resolve
|
|
186
|
+
// `database.name` at plan time instead of seeing `undefined` and
|
|
187
|
+
// falsely planning a replacement. The name only changes when the
|
|
188
|
+
// `name` prop itself changes: an explicit name renames iff it
|
|
189
|
+
// differs from the observed name, and an omitted name is
|
|
190
|
+
// engine-generated deterministically (stable across updates).
|
|
191
|
+
const nameIsStable =
|
|
192
|
+
output?.name !== undefined &&
|
|
193
|
+
(news.name !== undefined
|
|
194
|
+
? news.name === output.name
|
|
195
|
+
: olds?.name === undefined);
|
|
196
|
+
const stables = nameIsStable
|
|
197
|
+
? ["id", "organization", "region", "name"]
|
|
198
|
+
: undefined;
|
|
199
|
+
|
|
181
200
|
if (
|
|
182
201
|
news.region?.slug !== undefined &&
|
|
183
202
|
output?.region?.slug !== undefined &&
|
|
@@ -192,27 +211,36 @@ export const MySQLDatabaseProvider = () =>
|
|
|
192
211
|
news.replicas !== undefined &&
|
|
193
212
|
news.replicas !== (output?.replicas ?? olds.replicas)
|
|
194
213
|
) {
|
|
195
|
-
return { action: "update" } as const;
|
|
214
|
+
return { action: "update", stables } as const;
|
|
196
215
|
}
|
|
197
216
|
if (news.migrationsDir) {
|
|
198
217
|
const newHashes = yield* hashMigrations(news.migrationsDir);
|
|
199
218
|
if (!recordsEqual(newHashes, output?.migrationsHashes ?? {})) {
|
|
200
|
-
return { action: "update" } as const;
|
|
219
|
+
return { action: "update", stables } as const;
|
|
201
220
|
}
|
|
202
221
|
if (
|
|
203
222
|
(news.migrationsTable ?? DEFAULT_MIGRATIONS_TABLE) !==
|
|
204
223
|
(output?.migrationsTable ?? DEFAULT_MIGRATIONS_TABLE)
|
|
205
224
|
) {
|
|
206
|
-
return { action: "update" } as const;
|
|
225
|
+
return { action: "update", stables } as const;
|
|
207
226
|
}
|
|
208
227
|
}
|
|
209
228
|
if (news.importFiles?.length) {
|
|
210
229
|
const newHashes = yield* hashImports(news.importFiles, yield* rootDir);
|
|
211
230
|
if (!recordsEqual(newHashes, output?.importHashes ?? {})) {
|
|
212
|
-
return { action: "update" } as const;
|
|
231
|
+
return { action: "update", stables } as const;
|
|
213
232
|
}
|
|
214
233
|
}
|
|
215
|
-
//
|
|
234
|
+
// Remaining prop changes (rename, settings, clusterSize, …) are
|
|
235
|
+
// in-place updates. Decide them here instead of falling back to
|
|
236
|
+
// the engine's default deep-compare so the conditional `name`
|
|
237
|
+
// stable above is attached — the default path uses the
|
|
238
|
+
// provider-level stables, which strip `name` from downstream plan
|
|
239
|
+
// resolution.
|
|
240
|
+
if (havePropsChanged(olds, news)) {
|
|
241
|
+
return { action: "update", stables } as const;
|
|
242
|
+
}
|
|
243
|
+
|
|
216
244
|
return undefined;
|
|
217
245
|
}),
|
|
218
246
|
|