postgrejs 2.20.0 → 2.21.0
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/CHANGELOG.md +9 -0
- package/cjs/protocol/pg-socket.js +13 -0
- package/esm/protocol/pg-socket.js +13 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
# v2.21.0
|
|
2
|
+
[2024-09-14]
|
|
3
|
+
|
|
4
|
+
### Changes
|
|
5
|
+
|
|
6
|
+
* Abort pending operations when the socket closes ([`705063a`](https://github.com/panates/postgrejs/commit/705063a4a15267b1ce634a32f2b997c55b6aff45))
|
|
7
|
+
* chore: fixed lint issues ([`f13dab2`](https://github.com/panates/postgrejs/commit/f13dab2858dac384de4c8b3c21f650995f66ff5e))
|
|
8
|
+
* Throw exception when trying to run query on a connection that is not yeat ready or closing/closed ([`96bd55b`](https://github.com/panates/postgrejs/commit/96bd55bc4e6bb941a2891c79f316653c8c03e1da))
|
|
9
|
+
|
|
1
10
|
# v2.20.0
|
|
2
11
|
[2024-09-14]
|
|
3
12
|
|
|
@@ -154,8 +154,14 @@ class PgSocket extends safe_event_emitter_js_1.SafeEventEmitter {
|
|
|
154
154
|
this._send(this._frontend.getSyncMessage());
|
|
155
155
|
}
|
|
156
156
|
capture(callback) {
|
|
157
|
+
if (this._state === constants_js_1.ConnectionState.CLOSING || this._state === constants_js_1.ConnectionState.CLOSED) {
|
|
158
|
+
return Promise.reject(new Error('Connection closed'));
|
|
159
|
+
}
|
|
160
|
+
if (this._state !== constants_js_1.ConnectionState.READY)
|
|
161
|
+
return Promise.reject(new Error('Connection is not ready'));
|
|
157
162
|
return new Promise((resolve, reject) => {
|
|
158
163
|
const done = (err, result) => {
|
|
164
|
+
this.removeListener('close', closeHandler);
|
|
159
165
|
this.removeListener('error', errorHandler);
|
|
160
166
|
this.removeListener('message', msgHandler);
|
|
161
167
|
if (err)
|
|
@@ -164,14 +170,21 @@ class PgSocket extends safe_event_emitter_js_1.SafeEventEmitter {
|
|
|
164
170
|
resolve(result);
|
|
165
171
|
};
|
|
166
172
|
const errorHandler = (err) => {
|
|
173
|
+
this.removeListener('close', closeHandler);
|
|
167
174
|
this.removeListener('message', msgHandler);
|
|
168
175
|
reject(err);
|
|
169
176
|
};
|
|
177
|
+
const closeHandler = () => {
|
|
178
|
+
this.removeListener('error', errorHandler);
|
|
179
|
+
this.removeListener('message', msgHandler);
|
|
180
|
+
reject(new Error('Connection closed'));
|
|
181
|
+
};
|
|
170
182
|
const msgHandler = (code, msg) => {
|
|
171
183
|
const x = callback(code, msg, done);
|
|
172
184
|
if (putil_promisify_1.default.isPromise(x))
|
|
173
185
|
x.catch(err => done(err));
|
|
174
186
|
};
|
|
187
|
+
this.once('close', closeHandler);
|
|
175
188
|
this.once('error', errorHandler);
|
|
176
189
|
this.on('message', msgHandler);
|
|
177
190
|
});
|
|
@@ -150,8 +150,14 @@ export class PgSocket extends SafeEventEmitter {
|
|
|
150
150
|
this._send(this._frontend.getSyncMessage());
|
|
151
151
|
}
|
|
152
152
|
capture(callback) {
|
|
153
|
+
if (this._state === ConnectionState.CLOSING || this._state === ConnectionState.CLOSED) {
|
|
154
|
+
return Promise.reject(new Error('Connection closed'));
|
|
155
|
+
}
|
|
156
|
+
if (this._state !== ConnectionState.READY)
|
|
157
|
+
return Promise.reject(new Error('Connection is not ready'));
|
|
153
158
|
return new Promise((resolve, reject) => {
|
|
154
159
|
const done = (err, result) => {
|
|
160
|
+
this.removeListener('close', closeHandler);
|
|
155
161
|
this.removeListener('error', errorHandler);
|
|
156
162
|
this.removeListener('message', msgHandler);
|
|
157
163
|
if (err)
|
|
@@ -160,14 +166,21 @@ export class PgSocket extends SafeEventEmitter {
|
|
|
160
166
|
resolve(result);
|
|
161
167
|
};
|
|
162
168
|
const errorHandler = (err) => {
|
|
169
|
+
this.removeListener('close', closeHandler);
|
|
163
170
|
this.removeListener('message', msgHandler);
|
|
164
171
|
reject(err);
|
|
165
172
|
};
|
|
173
|
+
const closeHandler = () => {
|
|
174
|
+
this.removeListener('error', errorHandler);
|
|
175
|
+
this.removeListener('message', msgHandler);
|
|
176
|
+
reject(new Error('Connection closed'));
|
|
177
|
+
};
|
|
166
178
|
const msgHandler = (code, msg) => {
|
|
167
179
|
const x = callback(code, msg, done);
|
|
168
180
|
if (promisify.isPromise(x))
|
|
169
181
|
x.catch(err => done(err));
|
|
170
182
|
};
|
|
183
|
+
this.once('close', closeHandler);
|
|
171
184
|
this.once('error', errorHandler);
|
|
172
185
|
this.on('message', msgHandler);
|
|
173
186
|
});
|