@vercel/functions 3.4.0 → 3.4.2

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/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @vercel/functions
2
2
 
3
+ ## 3.4.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`3760ea1e97fdc45dae36c64138023e1b1a075467`](https://github.com/vercel/vercel/commit/3760ea1e97fdc45dae36c64138023e1b1a075467)]:
8
+ - @vercel/oidc@3.2.0
9
+
10
+ ## 3.4.1
11
+
12
+ ### Patch Changes
13
+
14
+ - Fix InMemoryCache to use JSON serialization for consistency with RuntimeCache ([#14751](https://github.com/vercel/vercel/pull/14751))
15
+
16
+ InMemoryCache now serializes values with `JSON.stringify()` on set and deserializes with `JSON.parse()` on get, matching the behavior of RuntimeCache. This ensures consistent behavior when switching between cache implementations (e.g., in-memory for development, remote for production), particularly for types that don't survive JSON round-trips like `Date`, `Map`, `Set`, and `undefined`.
17
+
3
18
  ## 3.4.0
4
19
 
5
20
  ### Minor Changes
@@ -32,13 +32,14 @@ class InMemoryCache {
32
32
  await this.delete(key);
33
33
  return null;
34
34
  }
35
- return entry.value;
35
+ return JSON.parse(entry.value);
36
36
  }
37
37
  return null;
38
38
  }
39
39
  async set(key, value, options) {
40
+ const serialized = JSON.stringify(value ?? null);
40
41
  this.cache[key] = {
41
- value,
42
+ value: serialized,
42
43
  lastModified: Date.now(),
43
44
  ttl: options?.ttl,
44
45
  tags: new Set(options?.tags || [])
@@ -36,7 +36,7 @@
36
36
 
37
37
  ### getVercelOidcToken
38
38
 
39
- ▸ **getVercelOidcToken**(): [`Promise`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)<`string`\>
39
+ ▸ **getVercelOidcToken**(`options?`): [`Promise`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)<`string`\>
40
40
 
41
41
  Gets the current OIDC token from the request context or the environment variable.
42
42
 
@@ -66,6 +66,25 @@ getVercelOidcToken()
66
66
  });
67
67
  ```
68
68
 
69
+ **`Example`**
70
+
71
+ ```js
72
+ // Using the OIDC token with explicit team and project (supports IDs and slugs)
73
+ getVercelOidcToken({ team: 'my-team', project: 'my-project' })
74
+ .then(token => {
75
+ console.log('OIDC Token:', token);
76
+ })
77
+ .catch(error => {
78
+ console.error('Error:', error.message);
79
+ });
80
+ ```
81
+
82
+ #### Parameters
83
+
84
+ | Name | Type | Description |
85
+ | :--------- | :-------------------------- | :------------------------------------------ |
86
+ | `options?` | `GetVercelOidcTokenOptions` | Optional configuration for token retrieval. |
87
+
69
88
  #### Returns
70
89
 
71
90
  [`Promise`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)<`string`\>
@@ -74,7 +93,7 @@ A promise that resolves to the OIDC token.
74
93
 
75
94
  #### Defined in
76
95
 
77
- packages/oidc/dist/get-vercel-oidc-token.d.ts:27
96
+ packages/oidc/dist/get-vercel-oidc-token.d.ts:60
78
97
 
79
98
  ---
80
99
 
@@ -111,4 +130,4 @@ The OIDC token.
111
130
 
112
131
  #### Defined in
113
132
 
114
- packages/oidc/dist/get-vercel-oidc-token.d.ts:49
133
+ packages/oidc/dist/get-vercel-oidc-token.d.ts:82
package/package.json CHANGED
@@ -30,7 +30,7 @@
30
30
  "require": "./middleware.js"
31
31
  }
32
32
  },
33
- "version": "3.4.0",
33
+ "version": "3.4.2",
34
34
  "repository": {
35
35
  "directory": "packages/functions",
36
36
  "type": "git",
@@ -72,7 +72,7 @@
72
72
  "access": "public"
73
73
  },
74
74
  "dependencies": {
75
- "@vercel/oidc": "3.1.0"
75
+ "@vercel/oidc": "3.2.0"
76
76
  },
77
77
  "scripts": {
78
78
  "pretest": "pnpm run build:code",