summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Arsh <69170106+lilnasy@users.noreply.github.com> 2023-09-21 11:05:33 +0530
committerGravatar GitHub <noreply@github.com> 2023-09-21 07:35:33 +0200
commit4398e929877dfadd2067af28413284afdfde9d8b (patch)
treee88374036e90a8abe93755db5f7deabfdf7a6a48
parentb4034aabeab80670c745edbdc331560402ef35c3 (diff)
downloadastro-4398e929877dfadd2067af28413284afdfde9d8b.tar.gz
astro-4398e929877dfadd2067af28413284afdfde9d8b.tar.zst
astro-4398e929877dfadd2067af28413284afdfde9d8b.zip
fix(middleware): undo config's path to URL encoding (#8614)
* fix(middleware): undo config's path to URL encoding * add changeset * middleware-dev => "middleware space"
Diffstat (limited to '')
-rw-r--r--.changeset/tidy-kiwis-lick.md5
-rw-r--r--packages/astro/src/core/build/plugins/plugin-middleware.ts2
-rw-r--r--packages/astro/src/core/middleware/loadMiddleware.ts2
-rw-r--r--packages/astro/test/featuresSupport.test.js4
-rw-r--r--packages/astro/test/fixtures/middleware space/package.json (renamed from packages/astro/test/fixtures/middleware-dev/package.json)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/middleware.js (renamed from packages/astro/test/fixtures/middleware-dev/src/middleware.js)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/404.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/404.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/api/endpoint.js (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/api/endpoint.js)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/broken-500.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/broken-500.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/broken-locals.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/broken-locals.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/clone.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/clone.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/does-nothing.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/does-nothing.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/index.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/index.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/lorem.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/lorem.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/not-interested.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/not-interested.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/redirect.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/redirect.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/rewrite.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/rewrite.astro)0
-rw-r--r--packages/astro/test/fixtures/middleware space/src/pages/second.astro (renamed from packages/astro/test/fixtures/middleware-dev/src/pages/second.astro)0
-rw-r--r--packages/astro/test/middleware.test.js8
-rw-r--r--pnpm-lock.yaml2
20 files changed, 14 insertions, 9 deletions
diff --git a/.changeset/tidy-kiwis-lick.md b/.changeset/tidy-kiwis-lick.md
new file mode 100644
index 000000000..14a5284dd
--- /dev/null
+++ b/.changeset/tidy-kiwis-lick.md
@@ -0,0 +1,5 @@
+---
+'astro': patch
+---
+
+Fixed an issue where spaces and unicode characters in project path prevented middleware from running.
diff --git a/packages/astro/src/core/build/plugins/plugin-middleware.ts b/packages/astro/src/core/build/plugins/plugin-middleware.ts
index 47ff4b863..22d3f795b 100644
--- a/packages/astro/src/core/build/plugins/plugin-middleware.ts
+++ b/packages/astro/src/core/build/plugins/plugin-middleware.ts
@@ -25,7 +25,7 @@ export function vitePluginMiddleware(
async resolveId(id) {
if (id === MIDDLEWARE_MODULE_ID) {
const middlewareId = await this.resolve(
- `${opts.settings.config.srcDir.pathname}/${MIDDLEWARE_PATH_SEGMENT_NAME}`
+ `${decodeURI(opts.settings.config.srcDir.pathname)}${MIDDLEWARE_PATH_SEGMENT_NAME}`
);
if (middlewareId) {
resolvedMiddlewareId = middlewareId.id;
diff --git a/packages/astro/src/core/middleware/loadMiddleware.ts b/packages/astro/src/core/middleware/loadMiddleware.ts
index 9a7f3e4bc..b8528eb4b 100644
--- a/packages/astro/src/core/middleware/loadMiddleware.ts
+++ b/packages/astro/src/core/middleware/loadMiddleware.ts
@@ -12,7 +12,7 @@ export async function loadMiddleware(
srcDir: AstroSettings['config']['srcDir']
) {
// can't use node Node.js builtins
- let middlewarePath = srcDir.pathname + '/' + MIDDLEWARE_PATH_SEGMENT_NAME;
+ let middlewarePath = `${decodeURI(srcDir.pathname)}${MIDDLEWARE_PATH_SEGMENT_NAME}`;
try {
const module = await moduleLoader.import(middlewarePath);
return module;
diff --git a/packages/astro/test/featuresSupport.test.js b/packages/astro/test/featuresSupport.test.js
index fba8da475..c25d9d5f8 100644
--- a/packages/astro/test/featuresSupport.test.js
+++ b/packages/astro/test/featuresSupport.test.js
@@ -8,7 +8,7 @@ describe('Adapter', () => {
it("should error if the adapter doesn't support edge middleware", async () => {
try {
fixture = await loadFixture({
- root: './fixtures/middleware-dev/',
+ root: './fixtures/middleware space/',
output: 'server',
build: {
excludeMiddleware: true,
@@ -32,7 +32,7 @@ describe('Adapter', () => {
it("should error if the adapter doesn't support split build", async () => {
try {
fixture = await loadFixture({
- root: './fixtures/middleware-dev/',
+ root: './fixtures/middleware space/',
output: 'server',
build: {
split: true,
diff --git a/packages/astro/test/fixtures/middleware-dev/package.json b/packages/astro/test/fixtures/middleware space/package.json
index bc889aa63..bc889aa63 100644
--- a/packages/astro/test/fixtures/middleware-dev/package.json
+++ b/packages/astro/test/fixtures/middleware space/package.json
diff --git a/packages/astro/test/fixtures/middleware-dev/src/middleware.js b/packages/astro/test/fixtures/middleware space/src/middleware.js
index eeb902fb8..eeb902fb8 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/middleware.js
+++ b/packages/astro/test/fixtures/middleware space/src/middleware.js
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/404.astro b/packages/astro/test/fixtures/middleware space/src/pages/404.astro
index ea85d240c..ea85d240c 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/404.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/404.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/api/endpoint.js b/packages/astro/test/fixtures/middleware space/src/pages/api/endpoint.js
index 69d989bc0..69d989bc0 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/api/endpoint.js
+++ b/packages/astro/test/fixtures/middleware space/src/pages/api/endpoint.js
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/broken-500.astro b/packages/astro/test/fixtures/middleware space/src/pages/broken-500.astro
index e69de29bb..e69de29bb 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/broken-500.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/broken-500.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/broken-locals.astro b/packages/astro/test/fixtures/middleware space/src/pages/broken-locals.astro
index e69de29bb..e69de29bb 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/broken-locals.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/broken-locals.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/clone.astro b/packages/astro/test/fixtures/middleware space/src/pages/clone.astro
index 28abcb902..28abcb902 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/clone.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/clone.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/does-nothing.astro b/packages/astro/test/fixtures/middleware space/src/pages/does-nothing.astro
index 344b3797b..344b3797b 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/does-nothing.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/does-nothing.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/index.astro b/packages/astro/test/fixtures/middleware space/src/pages/index.astro
index 395a4d695..395a4d695 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/index.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/index.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/lorem.astro b/packages/astro/test/fixtures/middleware space/src/pages/lorem.astro
index c6edf9cd7..c6edf9cd7 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/lorem.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/lorem.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/not-interested.astro b/packages/astro/test/fixtures/middleware space/src/pages/not-interested.astro
index 344b3797b..344b3797b 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/not-interested.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/not-interested.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/redirect.astro b/packages/astro/test/fixtures/middleware space/src/pages/redirect.astro
index e69de29bb..e69de29bb 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/redirect.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/redirect.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/rewrite.astro b/packages/astro/test/fixtures/middleware space/src/pages/rewrite.astro
index f7f70dc88..f7f70dc88 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/rewrite.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/rewrite.astro
diff --git a/packages/astro/test/fixtures/middleware-dev/src/pages/second.astro b/packages/astro/test/fixtures/middleware space/src/pages/second.astro
index c6edf9cd7..c6edf9cd7 100644
--- a/packages/astro/test/fixtures/middleware-dev/src/pages/second.astro
+++ b/packages/astro/test/fixtures/middleware space/src/pages/second.astro
diff --git a/packages/astro/test/middleware.test.js b/packages/astro/test/middleware.test.js
index 9ca4841d4..81f167647 100644
--- a/packages/astro/test/middleware.test.js
+++ b/packages/astro/test/middleware.test.js
@@ -12,7 +12,7 @@ describe('Middleware in DEV mode', () => {
before(async () => {
fixture = await loadFixture({
- root: './fixtures/middleware-dev/',
+ root: './fixtures/middleware space/',
});
devServer = await fixture.startDevServer();
});
@@ -116,7 +116,7 @@ describe('Middleware API in PROD mode, SSR', () => {
before(async () => {
fixture = await loadFixture({
- root: './fixtures/middleware-dev/',
+ root: './fixtures/middleware space/',
output: 'server',
adapter: testAdapter({}),
});
@@ -223,7 +223,7 @@ describe('Middleware API in PROD mode, SSR', () => {
it('the integration should receive the path to the middleware', async () => {
fixture = await loadFixture({
- root: './fixtures/middleware-dev/',
+ root: './fixtures/middleware space/',
output: 'server',
build: {
excludeMiddleware: true,
@@ -275,7 +275,7 @@ describe('Middleware, split middleware option', () => {
before(async () => {
fixture = await loadFixture({
- root: './fixtures/middleware-dev/',
+ root: './fixtures/middleware space/',
output: 'server',
build: {
excludeMiddleware: true,
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 1aebf6930..eb5e684fa 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -2847,7 +2847,7 @@ importers:
specifier: workspace:*
version: link:../../..
- packages/astro/test/fixtures/middleware-dev:
+ packages/astro/test/fixtures/middleware space:
dependencies:
astro:
specifier: workspace:*