Skip to content
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions 9.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Parse Server 9 Migration Guide <!-- omit in toc -->

This document only highlights specific changes that require a longer explanation. For a full list of changes in Parse Server 9 please refer to the [changelog](https://github.com/parse-community/parse-server/blob/alpha/CHANGELOG.md).

---
- [Route Path Syntax and Rate Limiting](#route-path-syntax-and-rate-limiting)
---

## Route Path Syntax and Rate Limiting
Parse Server 9 standardizes the route pattern syntax across cloud routes and rate-limiting to use the new **path-to-regexp v8** style. This update introduces validation and a clear deprecation error for the old wildcard route syntax.

### Key Changes
- **Standardization**: All route paths now use the path-to-regexp v8 syntax, which provides better consistency and security.
- **Validation**: Added validation to ensure route paths conform to the new syntax.
- **Deprecation**: Old wildcard route syntax is deprecated and will trigger a clear error message.

### Migration Steps

#### Path Syntax Examples

Update your rate limit configurations to use the new path-to-regexp v8 syntax:

| Old Syntax (deprecated) | New Syntax (v8) |
|------------------------|-----------------|
| `/functions/*` | `/functions/*path` |
| `/classes/*` | `/classes/*path` |
| `/*` | `/*path` |
| `*` | `*path` |

**Before:**
```javascript
rateLimit: {
requestPath: '/functions/*',
requestTimeWindow: 10000,
requestCount: 100
}
```

**After:**
```javascript
rateLimit: {
requestPath: '/functions/*path',
requestTimeWindow: 10000,
requestCount: 100
}
```

- Review your custom cloud routes and ensure they use the new path-to-regexp v8 syntax.
- Update any rate-limiting configurations to use the new route path format.
- Test your application to ensure all routes work as expected with the new syntax.

> [!Note]
> Consult the [path-to-regexp v8 docs](https://github.com/pillarjs/path-to-regexp) and the [Express 5 migration guide](https://expressjs.com/en/guide/migrating-5.html#path-syntax) for more details on the new path syntax.

### Related Pull Request
- [#9942](https://github.com/parse-community/parse-server/pull/9942)
Loading
Loading