Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
89fad46
feat: Add option `keepUnknownIndexes` to retain indexes which are not…
RahulLanjewar93 Oct 3, 2025
f755a5d
chore(release): 8.3.0-alpha.1 [skip ci]
semantic-release-bot Oct 3, 2025
7cb962a
feat: Add regex option `u` for unicode support in `Parse.Query.matche…
mtrezza Oct 3, 2025
f62da3f
chore(release): 8.3.0-alpha.2 [skip ci]
semantic-release-bot Oct 3, 2025
d275c18
feat: Add support for Postgres 18 (#9870)
cbaker6 Oct 7, 2025
be362fe
chore(release): 8.3.0-alpha.3 [skip ci]
semantic-release-bot Oct 7, 2025
f024d53
refactor: Upgrade pg-promise to 12.2.0 (#9874)
cbaker6 Oct 8, 2025
1b23475
feat: Disable index-field validation to create index for fields that …
Moumouls Oct 9, 2025
0b606ae
chore(release): 8.3.0-alpha.4 [skip ci]
semantic-release-bot Oct 9, 2025
0b47407
feat: Allow returning objects in `Parse.Cloud.beforeFind` without inv…
EmpiDev Oct 14, 2025
e704de8
chore(release): 8.3.0-alpha.5 [skip ci]
semantic-release-bot Oct 14, 2025
64f104e
feat: Add request context middleware for config and dependency inject…
Moumouls Oct 14, 2025
84cebd4
chore(release): 8.3.0-alpha.6 [skip ci]
semantic-release-bot Oct 14, 2025
abfa94c
fix: Security upgrade to parse 7.0.1 (#9877)
Moumouls Oct 15, 2025
3f0ec42
chore(release): 8.3.0-alpha.7 [skip ci]
semantic-release-bot Oct 15, 2025
1815b01
fix: Warning logged when setting option `databaseOptions.disableIndex…
Moumouls Oct 16, 2025
115e76e
chore(release): 8.3.0-alpha.8 [skip ci]
semantic-release-bot Oct 16, 2025
178bd5c
fix: Server URL verification before server is ready (#9882)
mtrezza Oct 19, 2025
1de329d
chore(release): 8.3.0-alpha.9 [skip ci]
semantic-release-bot Oct 19, 2025
eb052d8
fix: Error in `afterSave` trigger for `Parse.Role` due to `name` fiel…
Moumouls Oct 22, 2025
8006a9e
chore(release): 8.3.0-alpha.10 [skip ci]
semantic-release-bot Oct 22, 2025
f49efaf
fix: Stale data read in validation query on `Parse.Object` update cau…
mavriel Oct 24, 2025
a3ac82f
chore(release): 8.3.0-alpha.11 [skip ci]
semantic-release-bot Oct 24, 2025
b298ccc
feat: Add Parse Server option `verifyServerUrl` to disable server URL…
Moumouls Oct 25, 2025
00f8d4c
chore(release): 8.3.0-alpha.12 [skip ci]
semantic-release-bot Oct 25, 2025
62dd3c5
fix: Indexes `_email_verify_token` for email verification and `_peris…
mtrezza Nov 1, 2025
4f4580a
chore(release): 8.3.0-alpha.13 [skip ci]
semantic-release-bot Nov 1, 2025
ea91aca
feat: Add options to skip automatic creation of internal database ind…
mtrezza Nov 1, 2025
d1590bf
chore(release): 8.3.0-alpha.14 [skip ci]
semantic-release-bot Nov 1, 2025
0a25e2d
empty commit to trigger CI
github-actions[bot] Nov 1, 2025
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
3 changes: 3 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,9 @@ jobs:
- name: PostgreSQL 17, PostGIS 3.5
POSTGRES_IMAGE: postgis/postgis:17-3.5
NODE_VERSION: 22.12.0
- name: PostgreSQL 18, PostGIS 3.6
POSTGRES_IMAGE: postgis/postgis:18-3.6
NODE_VERSION: 22.12.0
fail-fast: false
name: ${{ matrix.name }}
timeout-minutes: 20
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -61,3 +61,6 @@ lib/

# Redis Dump
dump.rdb

# AI agents
.claude
19 changes: 18 additions & 1 deletion 8.0.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ This document only highlights specific changes that require a longer explanation
---

- [Email Verification](#email-verification)
- [Database Indexes](#database-indexes)

---

Expand All @@ -22,6 +23,22 @@ The request to re-send a verification email changed to sending a `POST` request
> [!IMPORTANT]
> Parse Server does not keep a history of verification tokens but only stores the most recently generated verification token in the database. Every time Parse Server generates a new verification token, the currently stored token is replaced. If a user opens a link with an expired token, and that token has already been replaced in the database, Parse Server cannot associate the expired token with any user. In this case, another way has to be offered to the user to re-send a verification email. To mitigate this issue, set the Parse Server option `emailVerifyTokenReuseIfValid: true` and set `emailVerifyTokenValidityDuration` to a longer duration, which ensures that the currently stored verification token is not replaced too soon.

Related pull requests:
Related pull request:

- https://github.com/parse-community/parse-server/pull/8488

## Database Indexes

As part of the email verification and password reset improvements in Parse Server 8, the queries used for these operations have changed to use tokens instead of username/email fields. To ensure optimal query performance, Parse Server now automatically creates indexes on the following fields during server initialization:

- `_User._email_verify_token`: used for email verification queries
- `_User._perishable_token`: used for password reset queries

These indexes are created automatically when Parse Server starts, similar to how indexes for `username` and `email` fields are created. No manual intervention is required.

> [!WARNING]
> If you have a large existing user base, the index creation may take some time during the first server startup after upgrading to Parse Server 8. The server logs will indicate when index creation is complete or if any errors occur. If you have any concerns regarding a potential database performance impact during index creation, you could create these indexes manually in a controlled procedure before upgrading Parse Server.

Related pull request:

- https://github.com/parse-community/parse-server/pull/9893
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

[![Node Version](https://img.shields.io/badge/nodejs-18,_20,_22-green.svg?logo=node.js&style=flat)](https://nodejs.org)
[![MongoDB Version](https://img.shields.io/badge/mongodb-6,_7,_8-green.svg?logo=mongodb&style=flat)](https://www.mongodb.com)
[![Postgres Version](https://img.shields.io/badge/postgresql-13,_14,_15,_16,_17-green.svg?logo=postgresql&style=flat)](https://www.postgresql.org)
[![Postgres Version](https://img.shields.io/badge/postgresql-13,_14,_15,_16,_17,_18-green.svg?logo=postgresql&style=flat)](https://www.postgresql.org)

[![npm latest version](https://img.shields.io/npm/v/parse-server/latest.svg)](https://www.npmjs.com/package/parse-server)
[![npm alpha version](https://img.shields.io/npm/v/parse-server/alpha.svg)](https://www.npmjs.com/package/parse-server)
Expand Down Expand Up @@ -152,6 +152,7 @@ Parse Server is continuously tested with the most recent releases of PostgreSQL
| Postgres 15 | 3.3, 3.4, 3.5 | November 2027 | <= 8.x (2025) |
| Postgres 16 | 3.5 | November 2028 | <= 9.x (2026) |
| Postgres 17 | 3.5 | November 2029 | <= 10.x (2027) |
| Postgres 18 | 3.6 | November 2030 | <= 11.x (2028) |

### Locally

Expand Down
98 changes: 98 additions & 0 deletions changelogs/CHANGELOG_alpha.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,101 @@
# [8.3.0-alpha.14](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.13...8.3.0-alpha.14) (2025-11-01)


### Features

* Add options to skip automatic creation of internal database indexes on server start ([#9897](https://github.com/parse-community/parse-server/issues/9897)) ([ea91aca](https://github.com/parse-community/parse-server/commit/ea91aca1420c33e038516a321b2640709589f886))

# [8.3.0-alpha.13](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.12...8.3.0-alpha.13) (2025-11-01)


### Bug Fixes

* Indexes `_email_verify_token` for email verification and `_perishable_token` password reset are not created automatically ([#9893](https://github.com/parse-community/parse-server/issues/9893)) ([62dd3c5](https://github.com/parse-community/parse-server/commit/62dd3c565ab70765cb1c547996b616b72e9bb800))

# [8.3.0-alpha.12](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.11...8.3.0-alpha.12) (2025-10-25)


### Features

* Add Parse Server option `verifyServerUrl` to disable server URL verification on server launch ([#9881](https://github.com/parse-community/parse-server/issues/9881)) ([b298ccc](https://github.com/parse-community/parse-server/commit/b298cccd9fb4f664b9d83894faad6d1ea7a3c964))

# [8.3.0-alpha.11](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.10...8.3.0-alpha.11) (2025-10-24)


### Bug Fixes

* Stale data read in validation query on `Parse.Object` update causes inconsistency between validation read and subsequent update write operation ([#9859](https://github.com/parse-community/parse-server/issues/9859)) ([f49efaf](https://github.com/parse-community/parse-server/commit/f49efaf5bb1d6b19f6d6712f7cdf073855c95c6e))

# [8.3.0-alpha.10](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.9...8.3.0-alpha.10) (2025-10-22)


### Bug Fixes

* Error in `afterSave` trigger for `Parse.Role` due to `name` field ([#9883](https://github.com/parse-community/parse-server/issues/9883)) ([eb052d8](https://github.com/parse-community/parse-server/commit/eb052d8e6abe1ae32505fd068d5445eaf950a770))

# [8.3.0-alpha.9](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.8...8.3.0-alpha.9) (2025-10-19)


### Bug Fixes

* Server URL verification before server is ready ([#9882](https://github.com/parse-community/parse-server/issues/9882)) ([178bd5c](https://github.com/parse-community/parse-server/commit/178bd5c5e258d9501c9ac4d35a3a105ab64be67e))

# [8.3.0-alpha.8](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.7...8.3.0-alpha.8) (2025-10-16)


### Bug Fixes

* Warning logged when setting option `databaseOptions.disableIndexFieldValidation` ([#9880](https://github.com/parse-community/parse-server/issues/9880)) ([1815b01](https://github.com/parse-community/parse-server/commit/1815b019b52565d2bc87be2596a49aea7600aeba))

# [8.3.0-alpha.7](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.6...8.3.0-alpha.7) (2025-10-15)


### Bug Fixes

* Security upgrade to parse 7.0.1 ([#9877](https://github.com/parse-community/parse-server/issues/9877)) ([abfa94c](https://github.com/parse-community/parse-server/commit/abfa94cd6de2c4e76337931c8ea8311c4ccf2a1a))

# [8.3.0-alpha.6](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.5...8.3.0-alpha.6) (2025-10-14)


### Features

* Add request context middleware for config and dependency injection in hooks ([#8480](https://github.com/parse-community/parse-server/issues/8480)) ([64f104e](https://github.com/parse-community/parse-server/commit/64f104e5c5f8863098e801eee632c14fcbd9b6f9))

# [8.3.0-alpha.5](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.4...8.3.0-alpha.5) (2025-10-14)


### Features

* Allow returning objects in `Parse.Cloud.beforeFind` without invoking database query ([#9770](https://github.com/parse-community/parse-server/issues/9770)) ([0b47407](https://github.com/parse-community/parse-server/commit/0b4740714c29ba99672bc535619ee3516abd356f))

# [8.3.0-alpha.4](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.3...8.3.0-alpha.4) (2025-10-09)


### Features

* Disable index-field validation to create index for fields that don't yet exist ([#8137](https://github.com/parse-community/parse-server/issues/8137)) ([1b23475](https://github.com/parse-community/parse-server/commit/1b2347524ca84ade0f6badf175a815fc8a7bef49))

# [8.3.0-alpha.3](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.2...8.3.0-alpha.3) (2025-10-07)


### Features

* Add support for Postgres 18 ([#9870](https://github.com/parse-community/parse-server/issues/9870)) ([d275c18](https://github.com/parse-community/parse-server/commit/d275c1806e0a5a037cc06cde7eefff3e12c91d7d))

# [8.3.0-alpha.2](https://github.com/parse-community/parse-server/compare/8.3.0-alpha.1...8.3.0-alpha.2) (2025-10-03)


### Features

* Add regex option `u` for unicode support in `Parse.Query.matches` for MongoDB ([#9867](https://github.com/parse-community/parse-server/issues/9867)) ([7cb962a](https://github.com/parse-community/parse-server/commit/7cb962a02845f3dded61baffd84515f94b66ee50))

# [8.3.0-alpha.1](https://github.com/parse-community/parse-server/compare/8.2.5...8.3.0-alpha.1) (2025-10-03)


### Features

* Add option `keepUnknownIndexes` to retain indexes which are not specified in schema ([#9857](https://github.com/parse-community/parse-server/issues/9857)) ([89fad46](https://github.com/parse-community/parse-server/commit/89fad468c3a43772879c06c4d939a83b72517a8e))

## [8.2.5-alpha.1](https://github.com/parse-community/parse-server/compare/8.2.4...8.2.5-alpha.1) (2025-09-21)


Expand Down
Loading
Loading