Skip to content

Commit

Permalink
build: Release (#2212)
Browse files Browse the repository at this point in the history
  • Loading branch information
mtrezza authored Jul 7, 2024
2 parents 00befbf + bc0dd72 commit 81fa44f
Show file tree
Hide file tree
Showing 10 changed files with 7,061 additions and 3,657 deletions.
6 changes: 4 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,11 @@ jobs:
matrix:
include:
- name: Node 18
NODE_VERSION: 18.19.0
NODE_VERSION: 18
- name: Node 20
NODE_VERSION: 20.10.0
NODE_VERSION: 20
- name: Node 22
NODE_VERSION: 22
fail-fast: false
steps:
- name: Fix usage of insecure GitHub protocol
Expand Down
49 changes: 25 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
[![Snyk Badge](https://snyk.io/test/github/parse-community/Parse-SDK-JS/badge.svg)](https://snyk.io/test/github/parse-community/Parse-SDK-JS)
[![Coverage](http://codecov.io/github/parse-community/Parse-SDK-JS/coverage.svg?branch=alpha)](http://codecov.io/github/parse-community/Parse-SDK-JS?branch=alpha)

[![Node Version](https://img.shields.io/badge/nodejs-18,_20-green.svg?logo=node.js&style=flat)](https://nodejs.org/)
[![Node Version](https://img.shields.io/badge/nodejs-18,_20,_22-green.svg?logo=node.js&style=flat)](https://nodejs.org/)
[![auto-release](https://img.shields.io/badge/%F0%9F%9A%80-auto--release-9e34eb.svg)](https://github.com/parse-community/parse-dashboard/releases)

[![npm latest version](https://img.shields.io/npm/v/parse/latest.svg)](https://www.npmjs.com/package/parse)
Expand All @@ -26,16 +26,37 @@ A library that gives you access to the powerful Parse Server backend from your J

---

- [Getting Started](#getting-started)
- [Using Parse on Different Platforms](#using-parse-on-different-platforms)
- [Core Manager](#core-manager)
- [Compatibility](#compatibility)
- [Parse Server](#parse-server)
- [Node.js](#nodejs)
- [Getting Started](#getting-started)
- [Using Parse on Different Platforms](#using-parse-on-different-platforms)
- [Core Manager](#core-manager)
- [3rd Party Authentications](#3rd-party-authentications)
- [Experimenting](#experimenting)
- [Contributing](#contributing)

## Compatibility

### Parse Server

Parse JS SDK is compatible with the following versions of Parse Server.

| Parse JS SDK | Parse Server |
|------------------|------------------|
| >= 4.0.0 < 5.0.0 | >= 6.0.0 < 7.0.0 |
| >= 5.0.0 | >= 7.0.0 |

### Node.js

Parse JS SDK 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.

| Version | Latest Version | End-of-Life | Compatible |
|------------|----------------|-------------|------------|
| Node.js 18 | 18.20.3 | April 2025 | ✅ Yes |
| Node.js 20 | 20.15.0 | April 2026 | ✅ Yes |
| Node.js 22 | 22.4.0 | April 2027 | ✅ Yes |

## Getting Started

The easiest way to integrate the Parse SDK into your JavaScript project is through the [npm module](https://npmjs.org/parse).
Expand Down Expand Up @@ -102,26 +123,6 @@ Parse.CoreManager.set('REQUEST_ATTEMPT_LIMIT', 1)
Parse.CoreManager.setRESTController(MyRESTController);
```

## Compatibility

### Parse Server

Parse JS SDK is compatible with the following versions of Parse Server.

| Parse JS SDK | Parse Server |
|--------------|--------------|
| 4.x.x | <= 6.x.x |
| 5.x.x | >= 7.x.x |

### Node.js

Parse JS SDK 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.

| Version | Latest Version | End-of-Life | Compatible |
|------------|----------------|-------------|------------|
| Node.js 18 | 18.19.0 | April 2025 | ✅ Yes |
| Node.js 20 | 20.10.0 | April 2026 | ✅ Yes |

## 3rd Party Authentications

Parse Server supports many [3rd Party Authenications][3rd-party-auth]. It is possible to [linkWith][link-with] any 3rd Party Authentication by creating a [custom authentication module][custom-auth-module].
Expand Down
14 changes: 14 additions & 0 deletions changelogs/CHANGELOG_alpha.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
# [5.3.0-alpha.2](https://github.com/parse-community/Parse-SDK-JS/compare/5.3.0-alpha.1...5.3.0-alpha.2) (2024-07-07)


### Bug Fixes

* `Parse.Object.get` returns array instead of object if key name is number-like ([#2201](https://github.com/parse-community/Parse-SDK-JS/issues/2201)) ([5921ba2](https://github.com/parse-community/Parse-SDK-JS/commit/5921ba248431b197ee1592eae39376132be454a3))

# [5.3.0-alpha.1](https://github.com/parse-community/Parse-SDK-JS/compare/5.2.0...5.3.0-alpha.1) (2024-07-07)


### Features

* Add support for Node 22 ([#2209](https://github.com/parse-community/Parse-SDK-JS/issues/2209)) ([c74fd4c](https://github.com/parse-community/Parse-SDK-JS/commit/c74fd4ce2aa7b0618c3027e1936103d24f2987a7))

# [5.2.0-alpha.4](https://github.com/parse-community/Parse-SDK-JS/compare/5.2.0-alpha.3...5.2.0-alpha.4) (2024-06-28)


Expand Down
11 changes: 11 additions & 0 deletions changelogs/CHANGELOG_beta.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
# [5.3.0-beta.1](https://github.com/parse-community/Parse-SDK-JS/compare/5.2.0...5.3.0-beta.1) (2024-07-07)


### Bug Fixes

* `Parse.Object.get` returns array instead of object if key name is number-like ([#2201](https://github.com/parse-community/Parse-SDK-JS/issues/2201)) ([5921ba2](https://github.com/parse-community/Parse-SDK-JS/commit/5921ba248431b197ee1592eae39376132be454a3))

### Features

* Add support for Node 22 ([#2209](https://github.com/parse-community/Parse-SDK-JS/issues/2209)) ([c74fd4c](https://github.com/parse-community/Parse-SDK-JS/commit/c74fd4ce2aa7b0618c3027e1936103d24f2987a7))

# [5.2.0-beta.2](https://github.com/parse-community/Parse-SDK-JS/compare/5.2.0-beta.1...5.2.0-beta.2) (2024-06-29)


Expand Down
38 changes: 38 additions & 0 deletions integration/test/ParseObjectTest.js
Original file line number Diff line number Diff line change
Expand Up @@ -2056,6 +2056,44 @@ describe('Parse Object', () => {
expect(obj.get('string')).toBeInstanceOf(String);
});

it('returns correct field values', async () => {
const values = [
{ field: 'string', value: 'string' },
{ field: 'number', value: 1 },
{ field: 'boolean', value: true },
{ field: 'array', value: [0, 1, 2] },
{ field: 'array', value: [1, 2, 3] },
{ field: 'array', value: [{ '0': 'a' }, 2, 3] },
{ field: 'object', value: { key: 'value' } },
{ field: 'object', value: { key1: 'value1', key2: 'value2' } },
{ field: 'object', value: { key1: 1, key2: 2 } },
{ field: 'object', value: { '1x1': 1 } },
{ field: 'object', value: { '1x1': 1, '2': 2 } },
{ field: 'object', value: { '0': 0 } },
{ field: 'object', value: { '1': 1 } },
{ field: 'object', value: { '0': { '0': 'a', '1': 'b' } } },
{ field: 'date', value: new Date() },
{
field: 'file',
value: Parse.File.fromJSON({
__type: 'File',
name: 'name',
url: 'http://localhost:1337/parse/files/integration/name',
}),
},
{ field: 'geoPoint', value: new Parse.GeoPoint(40, -30) },
{ field: 'bytes', value: { __type: 'Bytes', base64: 'ZnJveW8=' } },
];
for (const value of values) {
const object = new TestObject();
object.set(value.field, value.value);
await object.save();
const query = new Parse.Query(TestObject);
const objectAgain = await query.get(object.id);
expect(objectAgain.get(value.field)).toEqual(value.value);
}
});

describe('allowCustomObjectId', () => {
it('can save without setting an objectId', async () => {
await reconfigureServer({ allowCustomObjectId: true });
Expand Down
Loading

0 comments on commit 81fa44f

Please sign in to comment.