@astrojs/cloudflare 6.1.1 → 6.1.3

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.
@@ -1,5 +1,5 @@
1
- @astrojs/cloudflare:build: cache hit, replaying output af3389b4b118897d
1
+ @astrojs/cloudflare:build: cache hit, replaying output c3e67fd9d731e257
2
2
  @astrojs/cloudflare:build: 
3
- @astrojs/cloudflare:build: > @astrojs/cloudflare@6.1.1 build /home/runner/work/astro/astro/packages/integrations/cloudflare
3
+ @astrojs/cloudflare:build: > @astrojs/cloudflare@6.1.3 build /home/runner/work/astro/astro/packages/integrations/cloudflare
4
4
  @astrojs/cloudflare:build: > astro-scripts build "src/**/*.ts" && tsc
5
5
  @astrojs/cloudflare:build: 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @astrojs/cloudflare
2
2
 
3
+ ## 6.1.3
4
+
5
+ ### Patch Changes
6
+
7
+ - [#6208](https://github.com/withastro/astro/pull/6208) [`79f49acbe`](https://github.com/withastro/astro/commit/79f49acbe13673bfc27e794bcfae518f38c4a4fe) Thanks [@mfrachet](https://github.com/mfrachet)! - Fix path file that was generated outside the functions folder
8
+
9
+ - Updated dependencies [[`79783fc01`](https://github.com/withastro/astro/commit/79783fc0181153a8e379d3f023422510a7467ead), [`baa2dbb3b`](https://github.com/withastro/astro/commit/baa2dbb3b5678b2bd56fb80df99d386f32e274b7), [`8b7cb64da`](https://github.com/withastro/astro/commit/8b7cb64dadfca93c65d62df54754633d398cb2ed)]:
10
+ - astro@2.0.11
11
+
12
+ ## 6.1.2
13
+
14
+ ### Patch Changes
15
+
16
+ - [#6075](https://github.com/withastro/astro/pull/6075) [`45b41d98f`](https://github.com/withastro/astro/commit/45b41d98f50dc9f76a5004a8b3346f393f1a6cb6) Thanks [@NachoVazquez](https://github.com/NachoVazquez)! - Uses config root path as location for Cloudflare Pages Functions
17
+
18
+ - Updated dependencies [[`f6fc662c3`](https://github.com/withastro/astro/commit/f6fc662c3c59d164584c6287a930fcd1c9086ee6), [`592386b75`](https://github.com/withastro/astro/commit/592386b75541f3b7f7d95c631f86024b7e2d314d), [`1b591a143`](https://github.com/withastro/astro/commit/1b591a1431b44eacd239ed8f76809916cabca1db), [`bf8d7366a`](https://github.com/withastro/astro/commit/bf8d7366acb57e1b21181cc40fff55a821d8119e), [`ec38a8921`](https://github.com/withastro/astro/commit/ec38a8921f02a275949abcababe1b8afdf8184a2), [`f20a85b64`](https://github.com/withastro/astro/commit/f20a85b642994f240d8c94260fc55ffa1fd14294), [`9f22ac3d0`](https://github.com/withastro/astro/commit/9f22ac3d097ef2cb3b2bbe5343b8a8a49d83425d), [`cee70f5c6`](https://github.com/withastro/astro/commit/cee70f5c6ac9b0d2edc1f8a6f8f5043605576026), [`ac7fb04d6`](https://github.com/withastro/astro/commit/ac7fb04d6b162f28a337918138d5737e2c0fffad), [`d1f5611fe`](https://github.com/withastro/astro/commit/d1f5611febfd020cca4078c71bafe599015edd16), [`2189170be`](https://github.com/withastro/astro/commit/2189170be523f74f244e84ccab22c655219773ce), [`32abe49bd`](https://github.com/withastro/astro/commit/32abe49bd073417b480b1b990f432a837c12eb6f)]:
19
+ - astro@2.0.7
20
+
3
21
  ## 6.1.1
4
22
 
5
23
  ### Patch Changes
package/README.md CHANGED
@@ -47,9 +47,9 @@ default `"advanced"`
47
47
 
48
48
  Cloudflare Pages has 2 different modes for deploying functions, `advanced` mode which picks up the `_worker.js` in `dist`, or a directory mode where pages will compile the worker out of a functions folder in the project root.
49
49
 
50
- For most projects the adaptor default of `advanced` will be sufficient; the `dist` folder will contain your compiled project. Switching to directory mode allows you to use [pages plugins](https://developers.cloudflare.com/pages/platform/functions/plugins/) such as [Sentry](https://developers.cloudflare.com/pages/platform/functions/plugins/sentry/) or write custom code to enable logging.
50
+ For most projects the adapter default of `advanced` will be sufficient; the `dist` folder will contain your compiled project. Switching to directory mode allows you to use [pages plugins](https://developers.cloudflare.com/pages/platform/functions/plugins/) such as [Sentry](https://developers.cloudflare.com/pages/platform/functions/plugins/sentry/) or write custom code to enable logging.
51
51
 
52
- In directory mode the adaptor will compile the client side part of you app the same way, but moves the worker script into a `functions` folder in the project root. The adaptor will only ever place a `[[path]].js` in that folder, allowing you to add additional plugins and pages middleware which can be checked into version control. Cloudflare documentation contains more information about [writing custom functions](https://developers.cloudflare.com/pages/platform/functions/).
52
+ In directory mode the adapter will compile the client side part of your app the same way, but moves the worker script into a `functions` folder in the project root. The adapter will only ever place a `[[path]].js` in that folder, allowing you to add additional plugins and pages middleware which can be checked into version control. Cloudflare documentation contains more information about [writing custom functions](https://developers.cloudflare.com/pages/platform/functions/).
53
53
 
54
54
  ```ts
55
55
  // directory mode
@@ -67,7 +67,7 @@ In order for preview to work you must install `wrangler`
67
67
  $ pnpm install wrangler --save-dev
68
68
  ```
69
69
 
70
- It's then possible to update the preview script in your `package.json` to `"preview": "wrangler pages dev ./dist"`. This will allow you run your entire application locally with [Wrangler](https://github.com/cloudflare/wrangler2), which supports secrets, environment variables, KV namespaces, Durable Objects and [all other supported Cloudflare bindings](https://developers.cloudflare.com/pages/platform/functions/#adding-bindings).
70
+ It's then possible to update the preview script in your `package.json` to `"preview": "wrangler pages dev ./dist"`. This will allow you to run your entire application locally with [Wrangler](https://github.com/cloudflare/wrangler2), which supports secrets, environment variables, KV namespaces, Durable Objects and [all other supported Cloudflare bindings](https://developers.cloudflare.com/pages/platform/functions/#adding-bindings).
71
71
 
72
72
  ## Access to the Cloudflare runtime
73
73
 
package/dist/index.js CHANGED
@@ -138,7 +138,7 @@ function createIntegration(args) {
138
138
  );
139
139
  }
140
140
  if (isModeDirectory) {
141
- const functionsUrl = new URL(`file://${process.cwd()}/functions/`);
141
+ const functionsUrl = new URL("functions/", _config.root);
142
142
  await fs.promises.mkdir(functionsUrl, { recursive: true });
143
143
  const directoryUrl = new URL("[[path]].js", functionsUrl);
144
144
  await fs.promises.rename(finalBuildUrl, directoryUrl);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@astrojs/cloudflare",
3
3
  "description": "Deploy your site to cloudflare workers or cloudflare pages",
4
- "version": "6.1.1",
4
+ "version": "6.1.3",
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.ts",
7
7
  "author": "withastro",
@@ -32,10 +32,10 @@
32
32
  "tiny-glob": "^0.2.9"
33
33
  },
34
34
  "peerDependencies": {
35
- "astro": "^2.0.4"
35
+ "astro": "^2.0.11"
36
36
  },
37
37
  "devDependencies": {
38
- "astro": "2.0.4",
38
+ "astro": "2.0.11",
39
39
  "astro-scripts": "0.0.10",
40
40
  "chai": "^4.3.6",
41
41
  "cheerio": "^1.0.0-rc.11",
package/src/index.ts CHANGED
@@ -203,8 +203,9 @@ export default function createIntegration(args?: Options): AstroIntegration {
203
203
  }
204
204
 
205
205
  if (isModeDirectory) {
206
- const functionsUrl = new URL(`file://${process.cwd()}/functions/`);
206
+ const functionsUrl = new URL('functions/', _config.root);
207
207
  await fs.promises.mkdir(functionsUrl, { recursive: true });
208
+
208
209
  const directoryUrl = new URL('[[path]].js', functionsUrl);
209
210
  await fs.promises.rename(finalBuildUrl, directoryUrl);
210
211
  }
@@ -1,20 +1,22 @@
1
- import { loadFixture, runCLI } from './test-utils.js';
1
+ import { loadFixture } from './test-utils.js';
2
2
  import { expect } from 'chai';
3
- import * as cheerio from 'cheerio';
4
3
  import cloudflare from '../dist/index.js';
5
4
 
5
+ /** @type {import('./test-utils').Fixture} */
6
6
  describe('mode: "directory"', () => {
7
- /** @type {import('./test-utils').Fixture} */
8
7
  let fixture;
9
8
 
10
9
  before(async () => {
11
10
  fixture = await loadFixture({
12
11
  root: './fixtures/basics/',
12
+ output: 'server',
13
13
  adapter: cloudflare({ mode: 'directory' }),
14
14
  });
15
+ await fixture.build();
15
16
  });
16
17
 
17
- it('Builds', async () => {
18
- await fixture.build();
18
+ it('generates functions folder inside the project root', async () => {
19
+ expect(await fixture.pathExists('../functions')).to.be.true;
20
+ expect(await fixture.pathExists('../functions/[[path]].js')).to.be.true;
19
21
  });
20
22
  });