bare-tty 3.1.2 → 3.2.1

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/binding.c CHANGED
@@ -17,7 +17,6 @@ typedef struct {
17
17
  js_env_t *env;
18
18
  js_ref_t *ctx;
19
19
  js_ref_t *on_write;
20
- js_ref_t *on_end;
21
20
  js_ref_t *on_read;
22
21
  js_ref_t *on_close;
23
22
  } bare_tty_t;
@@ -66,50 +65,6 @@ on_write (uv_write_t *req, int status) {
66
65
  assert(err == 0);
67
66
  }
68
67
 
69
- static void
70
- on_shutdown (uv_shutdown_t *req, int status) {
71
- int err;
72
-
73
- bare_tty_t *tty = (bare_tty_t *) req->data;
74
-
75
- js_env_t *env = tty->env;
76
-
77
- js_handle_scope_t *scope;
78
- err = js_open_handle_scope(env, &scope);
79
- assert(err == 0);
80
-
81
- js_value_t *ctx;
82
- err = js_get_reference_value(env, tty->ctx, &ctx);
83
- assert(err == 0);
84
-
85
- js_value_t *on_end;
86
- err = js_get_reference_value(env, tty->on_end, &on_end);
87
- assert(err == 0);
88
-
89
- js_value_t *argv[1];
90
-
91
- if (status < 0) {
92
- js_value_t *code;
93
- err = js_create_string_utf8(env, (utf8_t *) uv_err_name(status), -1, &code);
94
- assert(err == 0);
95
-
96
- js_value_t *message;
97
- err = js_create_string_utf8(env, (utf8_t *) uv_strerror(status), -1, &message);
98
- assert(err == 0);
99
-
100
- err = js_create_error(env, code, message, &argv[0]);
101
- assert(err == 0);
102
- } else {
103
- err = js_get_null(env, &argv[0]);
104
- assert(err == 0);
105
- }
106
-
107
- js_call_function(env, ctx, on_end, 1, argv, NULL);
108
-
109
- err = js_close_handle_scope(env, scope);
110
- assert(err == 0);
111
- }
112
-
113
68
  static void
114
69
  on_read (uv_stream_t *stream, ssize_t nread, const uv_buf_t *buf) {
115
70
  if (nread == UV_EOF) nread = 0;
@@ -188,9 +143,6 @@ on_close (uv_handle_t *handle) {
188
143
  err = js_delete_reference(env, tty->on_write);
189
144
  assert(err == 0);
190
145
 
191
- err = js_delete_reference(env, tty->on_end);
192
- assert(err == 0);
193
-
194
146
  err = js_delete_reference(env, tty->on_read);
195
147
  assert(err == 0);
196
148
 
@@ -215,13 +167,13 @@ static js_value_t *
215
167
  bare_tty_init (js_env_t *env, js_callback_info_t *info) {
216
168
  int err;
217
169
 
218
- size_t argc = 7;
219
- js_value_t *argv[7];
170
+ size_t argc = 6;
171
+ js_value_t *argv[6];
220
172
 
221
173
  err = js_get_callback_info(env, info, &argc, argv, NULL, NULL);
222
174
  assert(err == 0);
223
175
 
224
- assert(argc == 7);
176
+ assert(argc == 6);
225
177
 
226
178
  uv_loop_t *loop;
227
179
  js_get_env_loop(env, &loop);
@@ -259,13 +211,10 @@ bare_tty_init (js_env_t *env, js_callback_info_t *info) {
259
211
  err = js_create_reference(env, argv[3], 1, &tty->on_write);
260
212
  assert(err == 0);
261
213
 
262
- err = js_create_reference(env, argv[4], 1, &tty->on_end);
214
+ err = js_create_reference(env, argv[4], 1, &tty->on_read);
263
215
  assert(err == 0);
264
216
 
265
- err = js_create_reference(env, argv[5], 1, &tty->on_read);
266
- assert(err == 0);
267
-
268
- err = js_create_reference(env, argv[6], 1, &tty->on_close);
217
+ err = js_create_reference(env, argv[5], 1, &tty->on_close);
269
218
  assert(err == 0);
270
219
 
271
220
  return handle;
@@ -321,36 +270,6 @@ bare_tty_writev (js_env_t *env, js_callback_info_t *info) {
321
270
  return NULL;
322
271
  }
323
272
 
324
- static js_value_t *
325
- bare_tty_end (js_env_t *env, js_callback_info_t *info) {
326
- int err;
327
-
328
- size_t argc = 1;
329
- js_value_t *argv[1];
330
-
331
- err = js_get_callback_info(env, info, &argc, argv, NULL, NULL);
332
- assert(err == 0);
333
-
334
- assert(argc == 1);
335
-
336
- bare_tty_t *tty;
337
- err = js_get_arraybuffer_info(env, argv[0], (void **) &tty, NULL);
338
- assert(err == 0);
339
-
340
- uv_shutdown_t *req = &tty->requests.shutdown;
341
-
342
- req->data = tty;
343
-
344
- err = uv_shutdown(req, (uv_stream_t *) &tty->handle, on_shutdown);
345
-
346
- if (err < 0) {
347
- js_throw_error(env, uv_err_name(err), uv_strerror(err));
348
- return NULL;
349
- }
350
-
351
- return NULL;
352
- }
353
-
354
273
  static js_value_t *
355
274
  bare_tty_resume (js_env_t *env, js_callback_info_t *info) {
356
275
  int err;
@@ -540,11 +459,6 @@ init (js_env_t *env, js_value_t *exports) {
540
459
  js_create_function(env, "writev", -1, bare_tty_writev, NULL, &fn);
541
460
  js_set_named_property(env, exports, "writev", fn);
542
461
  }
543
- {
544
- js_value_t *fn;
545
- js_create_function(env, "end", -1, bare_tty_end, NULL, &fn);
546
- js_set_named_property(env, exports, "end", fn);
547
- }
548
462
  {
549
463
  js_value_t *fn;
550
464
  js_create_function(env, "resume", -1, bare_tty_resume, NULL, &fn);
package/index.js CHANGED
@@ -22,7 +22,6 @@ exports.ReadStream = class TTYReadStream extends Readable {
22
22
  this._buffer = Buffer.alloc(readBufferSize)
23
23
 
24
24
  this._handle = binding.init(fd, this._buffer, this,
25
- noop,
26
25
  noop,
27
26
  this._onread,
28
27
  this._onclose
@@ -39,6 +38,10 @@ exports.ReadStream = class TTYReadStream extends Readable {
39
38
  binding.setMode(this._handle, mode)
40
39
  }
41
40
 
41
+ setRawMode (mode) {
42
+ this.setMode(mode ? constants.MODE_RAW : constants.MODE_NORMAL)
43
+ }
44
+
42
45
  _read (cb) {
43
46
  if (!this._reading) {
44
47
  this._reading = true
@@ -103,14 +106,12 @@ exports.WriteStream = class TTYWriteStream extends Writable {
103
106
  super({ mapWritable })
104
107
 
105
108
  this._pendingWrite = null
106
- this._pendingFinal = null
107
109
  this._pendingDestroy = null
108
110
 
109
111
  this._closing = false
110
112
 
111
113
  this._handle = binding.init(fd, empty, this,
112
114
  this._onwrite,
113
- this._onfinal,
114
115
  noop,
115
116
  this._onclose
116
117
  )
@@ -131,11 +132,6 @@ exports.WriteStream = class TTYWriteStream extends Writable {
131
132
  binding.writev(this._handle, datas)
132
133
  }
133
134
 
134
- _final (cb) {
135
- this._pendingFinal = cb
136
- binding.end(this._handle)
137
- }
138
-
139
135
  _predestroy () {
140
136
  if (this._closing) return
141
137
  this._closing = true
@@ -158,13 +154,6 @@ exports.WriteStream = class TTYWriteStream extends Writable {
158
154
  cb(err)
159
155
  }
160
156
 
161
- _continueFinal (err) {
162
- if (this._pendingFinal === null) return
163
- const cb = this._pendingFinal
164
- this._pendingFinal = null
165
- cb(err)
166
- }
167
-
168
157
  _continueDestroy () {
169
158
  if (this._pendingDestroy === null) return
170
159
  const cb = this._pendingDestroy
@@ -197,10 +186,6 @@ exports.WriteStream = class TTYWriteStream extends Writable {
197
186
  }
198
187
  }
199
188
 
200
- _onfinal (err) {
201
- this._continueFinal(err)
202
- }
203
-
204
189
  _onclose () {
205
190
  this._handle = null
206
191
  this._continueDestroy()
@@ -211,7 +196,7 @@ exports.WriteStream = class TTYWriteStream extends Writable {
211
196
 
212
197
  exports.isTTY = binding.isTTY
213
198
 
214
- exports.constants = {
199
+ const constants = exports.constants = {
215
200
  MODE_NORMAL: binding.MODE_NORMAL,
216
201
  MODE_RAW: binding.MODE_RAW,
217
202
  MODE_IO: binding.MODE_IO || 0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bare-tty",
3
- "version": "3.1.2",
3
+ "version": "3.2.1",
4
4
  "description": "Native TTY streams for JavaScript",
5
5
  "main": "index.js",
6
6
  "files": [
Binary file
Binary file
Binary file
Binary file