parse-server 8.0.0-alpha.2 → 8.0.0-alpha.4

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/README.md CHANGED
@@ -127,24 +127,21 @@ Before you start make sure you have installed:
127
127
 
128
128
  Parse Server is continuously tested with the most recent releases of Node.js to ensure compatibility. We follow the [Node.js Long Term Support plan](https://github.com/nodejs/Release) and only test against versions that are officially supported and have not reached their end-of-life date.
129
129
 
130
- | Version | Latest Version | End-of-Life | Compatible |
131
- |------------|----------------|-------------|------------|
132
- | Node.js 18 | 18.20.4 | April 2025 | ✅ Yes |
133
- | Node.js 20 | 20.18.0 | April 2026 | ✅ Yes |
134
- | Node.js 22 | 22.12.0 | April 2027 | ✅ Yes |
130
+ | Version | Minimum Version | End-of-Life | Compatible |
131
+ |------------|-----------------|-------------|------------|
132
+ | Node.js 18 | 18.20.4 | April 2025 | ✅ Yes |
133
+ | Node.js 20 | 20.18.0 | April 2026 | ✅ Yes |
134
+ | Node.js 22 | 22.12.0 | April 2027 | ✅ Yes |
135
135
 
136
136
  #### MongoDB
137
137
 
138
138
  Parse Server is continuously tested with the most recent releases of MongoDB to ensure compatibility. We follow the [MongoDB support schedule](https://www.mongodb.com/support-policy) and [MongoDB lifecycle schedule](https://www.mongodb.com/support-policy/lifecycles) and only test against versions that are officially supported and have not reached their end-of-life date. MongoDB "rapid releases" are ignored as these are considered pre-releases of the next major version.
139
139
 
140
- | Version | Latest Version | End-of-Life | Compatible |
141
- |-------------|----------------|---------------|------------|
142
- | MongoDB 4.2 | 4.2.25 | April 2023 | ✅ Yes |
143
- | MongoDB 4.4 | 4.4.29 | February 2024 | ✅ Yes |
144
- | MongoDB 5 | 5.0.26 | October 2024 | ✅ Yes |
145
- | MongoDB 6 | 6.0.14 | July 2025 | ✅ Yes |
146
- | MongoDB 7 | 7.0.8 | TDB | ✅ Yes |
147
- | MongoDB 8 | 8.0.0 | TDB | ✅ Yes |
140
+ | Version | Minimum Version | End-of-Life | Compatible |
141
+ |-----------|-----------------|-------------|------------|
142
+ | MongoDB 6 | 6.0.19 | July 2025 | ✅ Yes |
143
+ | MongoDB 7 | 7.0.16 | August 2026 | ✅ Yes |
144
+ | MongoDB 8 | 8.0.4 | TDB | ✅ Yes |
148
145
 
149
146
  #### PostgreSQL
150
147
 
@@ -440,8 +437,6 @@ const server = ParseServer({
440
437
 
441
438
  ## Custom Routes
442
439
 
443
- **Caution, this is an experimental feature that may not be appropriate for production.**
444
-
445
440
  Custom routes allow to build user flows with webpages, similar to the existing password reset and email verification features. Custom routes are defined with the `pages` option in the Parse Server configuration:
446
441
 
447
442
  ### Example
@@ -451,7 +446,7 @@ const api = new ParseServer({
451
446
  ...otherOptions,
452
447
 
453
448
  pages: {
454
- enableRouter: true, // Enables the experimental feature; required for custom routes
449
+ enableRouter: true,
455
450
  customRoutes: [{
456
451
  method: 'GET',
457
452
  path: 'custom_route',
@@ -488,7 +483,7 @@ The following paths are already used by Parse Server's built-in features and are
488
483
  | Parameter | Optional | Type | Default value | Example values | Environment variable | Description |
489
484
  |------------------------------|----------|-----------------|---------------|-----------------------|------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
490
485
  | `pages` | yes | `Object` | `undefined` | - | `PARSE_SERVER_PAGES` | The options for pages such as password reset and email verification. |
491
- | `pages.enableRouter` | yes | `Boolean` | `false` | - | `PARSE_SERVER_PAGES_ENABLE_ROUTER` | Is `true` if the pages router should be enabled; this is required for any of the pages options to take effect. **Caution, this is an experimental feature that may not be appropriate for production.** |
486
+ | `pages.enableRouter` | yes | `Boolean` | `false` | - | `PARSE_SERVER_PAGES_ENABLE_ROUTER` | Is `true` if the pages router should be enabled; this is required for any of the pages options to take effect. |
492
487
  | `pages.customRoutes` | yes | `Array` | `[]` | - | `PARSE_SERVER_PAGES_CUSTOM_ROUTES` | The custom routes. The routes are added in the order they are defined here, which has to be considered since requests traverse routes in an ordered manner. Custom routes are traversed after build-in routes such as password reset and email verification. |
493
488
  | `pages.customRoutes.method` | | `String` | - | `GET`, `POST` | - | The HTTP method of the custom route. |
494
489
  | `pages.customRoutes.path` | | `String` | - | `custom_page` | - | The path of the custom route. Note that the same path can used if the `method` is different, for example a path `custom_page` can have two routes, a `GET` and `POST` route, which will be invoked depending on the HTTP request method. |
@@ -611,8 +606,6 @@ Assuming the script above is named, `parse_idempotency_delete_expired_records.sh
611
606
 
612
607
  ### Pages
613
608
 
614
- **Caution, this is an experimental feature that may not be appropriate for production.**
615
-
616
609
  Custom pages as well as feature pages (e.g. password reset, email verification) can be localized with the `pages` option in the Parse Server configuration:
617
610
 
618
611
  ```js
@@ -620,7 +613,7 @@ const api = new ParseServer({
620
613
  ...otherOptions,
621
614
 
622
615
  pages: {
623
- enableRouter: true, // Enables the experimental feature; required for localization
616
+ enableRouter: true,
624
617
  enableLocalization: true,
625
618
  }
626
619
  }
@@ -668,7 +661,7 @@ const api = new ParseServer({
668
661
  ...otherOptions,
669
662
 
670
663
  pages: {
671
- enableRouter: true, // Enables the experimental feature; required for localization
664
+ enableRouter: true,
672
665
  enableLocalization: true,
673
666
  customUrls: {
674
667
  passwordReset: 'https://example.com/page.html'
@@ -725,7 +718,7 @@ const api = new ParseServer({
725
718
  ...otherOptions,
726
719
 
727
720
  pages: {
728
- enableRouter: true, // Enables the experimental feature; required for localization
721
+ enableRouter: true,
729
722
  enableLocalization: true,
730
723
  localizationJsonPath: './private/localization.json',
731
724
  localizationFallbackLocale: 'en'
@@ -750,7 +743,7 @@ const api = new ParseServer({
750
743
  ...otherOptions,
751
744
 
752
745
  pages: {
753
- enableRouter: true, // Enables the experimental feature; required for localization
746
+ enableRouter: true,
754
747
  placeholders: {
755
748
  exampleKey: 'exampleValue'
756
749
  }
@@ -764,7 +757,7 @@ const api = new ParseServer({
764
757
  ...otherOptions,
765
758
 
766
759
  pages: {
767
- enableRouter: true, // Enables the experimental feature; required for localization
760
+ enableRouter: true,
768
761
  placeholders: async (params) => {
769
762
  const value = await doSomething(params.locale);
770
763
  return {
@@ -784,7 +777,7 @@ The following parameter and placeholder keys are reserved because they are used
784
777
  | Parameter | Optional | Type | Default value | Example values | Environment variable | Description |
785
778
  |-------------------------------------------------|----------|---------------------------------------|----------------------------------------|------------------------------------------------------|-----------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
786
779
  | `pages` | yes | `Object` | `undefined` | - | `PARSE_SERVER_PAGES` | The options for pages such as password reset and email verification. |
787
- | `pages.enableRouter` | yes | `Boolean` | `false` | - | `PARSE_SERVER_PAGES_ENABLE_ROUTER` | Is `true` if the pages router should be enabled; this is required for any of the pages options to take effect. **Caution, this is an experimental feature that may not be appropriate for production.** |
780
+ | `pages.enableRouter` | yes | `Boolean` | `false` | - | `PARSE_SERVER_PAGES_ENABLE_ROUTER` | Is `true` if the pages router should be enabled; this is required for any of the pages options to take effect. |
788
781
  | `pages.enableLocalization` | yes | `Boolean` | `false` | - | `PARSE_SERVER_PAGES_ENABLE_LOCALIZATION` | Is true if pages should be localized; this has no effect on custom page redirects. |
789
782
  | `pages.localizationJsonPath` | yes | `String` | `undefined` | `./private/translations.json` | `PARSE_SERVER_PAGES_LOCALIZATION_JSON_PATH` | The path to the JSON file for localization; the translations will be used to fill template placeholders according to the locale. |
790
783
  | `pages.localizationFallbackLocale` | yes | `String` | `en` | `en`, `en-GB`, `default` | `PARSE_SERVER_PAGES_LOCALIZATION_FALLBACK_LOCALE` | The fallback locale for localization if no matching translation is provided for the given locale. This is only relevant when providing translation resources via JSON file. |