Skip to content

Commit 6215146

Browse files
authored
feat: prepare EffectPlatformHttpHandler (#150)
* feat: prepare EffectPlatformHttpHandler * feat: do not runCollect on stream and tryToReadableStream instead * feat: redesign the request handler option * fix: regenerate all services * feat: new http-handler package * test: add test stub * fix: upgrade deps and update breaking changes * fix: dependencies * fix: add Cause.TimeoutException error to all methods & update aws-sdk * docs: add changeset
1 parent a9ce5dc commit 6215146

File tree

205 files changed

+10928
-5455
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

205 files changed

+10928
-5455
lines changed
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
---
2+
"@effect-aws/client-api-gateway-management-api": minor
3+
"@effect-aws/client-cognito-identity-provider": minor
4+
"@effect-aws/client-opensearch-serverless": minor
5+
"@effect-aws/client-iot-jobs-data-plane": minor
6+
"@effect-aws/client-timestream-influxdb": minor
7+
"@effect-aws/client-cloudwatch-events": minor
8+
"@effect-aws/client-timestream-query": minor
9+
"@effect-aws/client-timestream-write": minor
10+
"@effect-aws/client-bedrock-runtime": minor
11+
"@effect-aws/client-cloudwatch-logs": minor
12+
"@effect-aws/client-iot-events-data": minor
13+
"@effect-aws/client-secrets-manager": minor
14+
"@effect-aws/client-iot-data-plane": minor
15+
"@effect-aws/client-organizations": minor
16+
"@effect-aws/client-auto-scaling": minor
17+
"@effect-aws/client-iot-wireless": minor
18+
"@effect-aws/client-cloudsearch": minor
19+
"@effect-aws/client-elasticache": minor
20+
"@effect-aws/client-eventbridge": minor
21+
"@effect-aws/client-cloudtrail": minor
22+
"@effect-aws/client-cloudwatch": minor
23+
"@effect-aws/client-codedeploy": minor
24+
"@effect-aws/client-iot-events": minor
25+
"@effect-aws/client-opensearch": minor
26+
"@effect-aws/client-scheduler": minor
27+
"@effect-aws/client-dynamodb": minor
28+
"@effect-aws/client-firehose": minor
29+
"@effect-aws/client-textract": minor
30+
"@effect-aws/client-account": minor
31+
"@effect-aws/client-bedrock": minor
32+
"@effect-aws/client-kinesis": minor
33+
"@effect-aws/client-athena": minor
34+
"@effect-aws/client-lambda": minor
35+
"@effect-aws/lib-dynamodb": minor
36+
"@effect-aws/client-ec2": minor
37+
"@effect-aws/client-ecr": minor
38+
"@effect-aws/client-ecs": minor
39+
"@effect-aws/client-iam": minor
40+
"@effect-aws/client-iot": minor
41+
"@effect-aws/client-kms": minor
42+
"@effect-aws/client-rds": minor
43+
"@effect-aws/client-ses": minor
44+
"@effect-aws/client-sfn": minor
45+
"@effect-aws/client-sns": minor
46+
"@effect-aws/client-sqs": minor
47+
"@effect-aws/client-ssm": minor
48+
"@effect-aws/client-sts": minor
49+
"@effect-aws/client-mq": minor
50+
"@effect-aws/client-s3": minor
51+
---
52+
53+
add expected Cause.TimeoutException in error channel to all the methods

.changeset/nervous-icons-end.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"@effect-aws/commons": minor
3+
"@effect-aws/http-handler": minor
4+
---
5+
6+
add option to set effectful request handler for better tracing and http client control

.changeset/pink-carrots-think.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@effect-aws/client-bedrock-runtime": patch
3+
---
4+
5+
add new invokeModelWithBidirectionalStream service method

.changeset/smart-dolls-shake.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
"@effect-aws/client-account": patch
3+
"@effect-aws/client-cognito-identity-provider": patch
4+
"@effect-aws/client-ecs": patch
5+
"@effect-aws/client-mq": patch
6+
"@effect-aws/client-ec2": patch
7+
---
8+
9+
add new service methods

.changeset/warm-geckos-applaud.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@effect-aws/powertools-tracer": patch
3+
---
4+
5+
add missed Span class method, introduced in effect@3.14.0

.projen/deps.json

Lines changed: 5 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.projenrc.ts

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,14 @@ new Readme(project, { org });
3939

4040
new Eslint(project);
4141
new Vitest(project, { sharedSetupFiles: ["vitest.setup.ts"] });
42-
project.addDevDeps("vitest-mock-extended@^2.0.2");
43-
project.addDevDeps("aws-sdk-client-mock", "aws-sdk-client-mock-vitest@4.0.0");
42+
project.addDevDeps("vitest-mock-extended");
43+
project.addDevDeps("aws-sdk-client-mock", "aws-sdk-client-mock-vitest");
4444

45-
const effectDeps = ["effect@3.10.16"];
45+
const effectDeps = ["effect@3.14.11"];
4646

4747
project.addScripts({ "codegen-client": "tsx ./scripts/codegen-cli.ts" });
48-
project.addDeps(...effectDeps, "@effect/cli@0.48.25", "@effect/platform@0.69.25", "@effect/platform-node@0.64.27");
49-
project.addDevDeps("@effect/language-service", "@effect/vitest@0.13.16");
48+
project.addDeps(...effectDeps, "@effect/cli@0.59.11", "@effect/platform@0.80.11", "@effect/platform-node@0.76.21");
49+
project.addDevDeps("@effect/language-service", "@effect/vitest@0.20.11");
5050
project.tsconfigBase?.file.addOverride("compilerOptions.plugins", [
5151
{ name: "@effect/language-service" },
5252
]);
@@ -58,7 +58,7 @@ const commons = new TypeScriptLibProject({
5858
parent: project,
5959
name: "commons",
6060
description: "Effectful AWS common library",
61-
deps: ["@smithy/types", "@smithy/smithy-client"],
61+
deps: ["@smithy/types", "@smithy/smithy-client", "@smithy/protocol-http"],
6262
devDeps: [...effectDeps, "@aws-sdk/middleware-logger"],
6363
peerDeps: commonPeerDeps,
6464
});
@@ -161,13 +161,22 @@ new TypeScriptLibProject({
161161
parent: project,
162162
name: "s3",
163163
description: "Effectful AWS S3 functions",
164-
deps: ["@effect/platform@0.69.25"],
165-
devDeps: [...effectDeps, "@aws-sdk/client-s3@^3"],
166-
peerDeps: commonPeerDeps,
164+
devDeps: [...effectDeps, "@effect/platform@0.80.11", "@aws-sdk/client-s3@^3"],
165+
peerDeps: [...commonPeerDeps, "@effect/platform@>=0.69.25"],
167166
workspacePeerDeps: [s3Client],
168167
addExamples: true,
169168
});
170169

170+
new TypeScriptLibProject({
171+
parent: project,
172+
name: "http-handler",
173+
description: "Effectful AWS HTTP handler",
174+
deps: ["@smithy/types", "@smithy/protocol-http", "@smithy/querystring-builder"],
175+
devDeps: [...effectDeps, "@effect/platform@0.80.11"],
176+
peerDeps: [...commonPeerDeps, "@effect/platform@>=0.69.25"],
177+
workspacePeerDeps: [commons],
178+
});
179+
171180
project.addGitIgnore(".direnv/"); // flake environment creates .direnv folder
172181
project.addGitIgnore("docs/"); // docs are generated
173182
project.addGitIgnore(".idea");

package.json

Lines changed: 9 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/client-account/.projen/deps.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/client-account/package.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)