Releases: microsoft/node-pty
Releases · microsoft/node-pty
v1.1.0-beta29
Changes:
Feature Requests:
- #711: Bring back the implementation for PtyClear when using conpty.dll
Bugs:
- #717: Leaking process information handle 'piClient.hThread'
Others:
- #759: Update to conpty v1.22
- #490: Embed latest ConPTY implementation
- #758: chore: work around blocked release integration
- #757: chore: auto-publish beta versions
- #755: fix: ensure proper cleanup of console process on shutdown
See More
- #756: fix: publish pipeline broken APIScan task
- #727: chore: add new publish pipeline
- #730: chore: use node 20 and fix build
- #723: Move to compile commands on postinstall for fixing intellisense
- #707: Replace committed header files with compile_commands
- #722: Fix typo in trace log
- #720: Catch possible exceptions in ~Agent
- #721: Move from yarn to npm
- #719: Move buffer_ to heap
- #718: Close piClient.hThread handle
- #712: Move from yarn to npm
- #713: Bring back clear impl
- #704: Copy right dll/exe based on npm_config_arch
- #703: Fix correct method being loaded when not using conptydll
- #702: Update to newer version of conpty
- #700: Get path of conpty.node for conpty.dll
- #699: Improve can't find conpty.dll exception message
- #698: Publish third_party folder
- #697: Disable APIScan and reduce test flakiness on Windows
- #696: Don't run CI for node 16
- #695: Ship third_party folder with module
- #694: Ship conpty.dll/OpenConsole.exe with opt-in experimental option useConptyDll
- #687: build(deps): bump braces from 3.0.2 to 3.0.3
- #688: Include termios.h on freebsd
- #679: docs: add a note on Spectre-mitigated libraries
- #678: build(deps): bump tar from 6.2.0 to 6.2.1
- #676: chore: migrate pipeline to use 1ES template
- #653: chore: remove deprecated api
process.binding
- #643: OSX failure...
- #646: Upgrade node-gyp to support Python 3.12
- #673: fix: upgrade node-gyp to fix macOS build error
- #672: fix: assertion on node environment shutdown
- #669: fix: comment out invalid API call
- #667: chore: fix APIScan software name
- #666: api scan
- #664: build(deps): bump ip from 2.0.0 to 2.0.1
- #644: Port to NAPI
- #626: Fix cleanup code
- #636: build(deps): bump debug from 4.1.1 to 4.3.4
- #635: Add node-gyp as a dev dep
- #633: node-gyp does not appear to be available in GH actions anymore
- #622: feature: modernize example code
- #576: Typo "Node.JS"→"Node.js"
- #617: build(deps): bump word-wrap from 1.2.3 to 1.2.4
- #616: fix: sub process title on macOS
- #613: build(deps): bump semver from 5.7.0 to 5.7.2
- #584: fix: enable and fix typecast warnings
This list of changes was auto generated.
v1.0.0
This is the initial v1.0 release.
See the PR list including all changes below, the latest API is available here.
- Remove deprecated on API (#605) via @Tyriar
- v1.0.0 (#604) via @Tyriar
- Upgrade for dependabot alerts (#595) via @Tyriar
- fix: controlling terminal on macOS (#589) via @deepak1556
- fix: retrieving process name on macOS (#588) via @deepak1556
- refactor: posix_spawn usage for macOS (#587) via @deepak1556
- ci: remove node 14.x stage (#581) via @deepak1556
- fix: incorrect parsing of closeFDs option (#580) via @deepak1556
- fix: ensure program name is part of child process arguments (#577) via @deepak1556
- Enable strict TS compiler option (#574) via @Tyriar
- Update what node version is supported (#570) via @Tyriar
- Remove PR Chat (#569) via @lramos15@lramos15
- chore: update nan@2.17.0 (#567) via @deepak1556
- Bump ansi-regex from 3.0.0 to 3.0.1 (#560) via @dependabot
- Add pr chat yml (#559) via @lramos15@lramos15
- Adding Microsoft SECURITY.MD (#554) via @microsoft
- update README with new onData pattern (#553) via @Seanmclem
- Don't treat uid/gid 0 as undefined (#548) via @Tyriar
- Bump minimist from 1.2.5 to 1.2.6 (#537) via @dependabot
- add cf and spectre flags (#533) via @TylerLeonhardt
- Don't publish .test.js files (#530) via @Tyriar
- Bump ajv from 6.12.0 to 6.12.6 (#526) via @dependabot
- Fix small typo in node-pty.d.ts (#522) via @JoelEinbinder
- Add OpenSumi to the Real-world uses List (#520) via @Aaaaash
- Update README.md (#517) via @SquitchYT
- Add accessors pty and ptsName (#516) via @corwin
- Fix status badge (#515) via @Tyriar
- Disconnect IO handles during PtyKill (#510
- address codeql bugs (#508) via @sbatten
- Add node-gyp to devDependencies fixes #505 (#506) via @daniel
- Add real-world uses for nxshell (#500) via @nxshell
- POSIX Spawn 2: Electric Boogaloo (#487) via @Eugeny
- Update README.md for add Tess (#478) via @SquitchYT
- Bump glob-parent from 5.1.1 to 5.1.2 (#477) via @dependabot
- Bump lodash from 4.17.19 to 4.17.21 (#473) via @dependabot
- Add Tinkerun to the Real-world uses List (#469) via @billyct
- Bump y18n from 4.0.0 to 4.0.1 (#468) via @dependabot
- Explicitly open winpty conin pipe in write-only mode - fixes #457 (#460) via @Eugeny
- Host conout socket in a worker (#415) via @Tyriar
0.10.0
🚀 Features
- Expose
IPty.pause()
,IPty.resume()
APIs to pause and resume the socket respectively (#452) via @meganrogge, this can be used to implement flow control by blocking the process output
🐞 Bug fixes
- Don't resolve symlinks when launching shell by setting $PWD (#156) via @vvavrychuk
- Temporarily block signals during forking (#218) via @jerch
- Throw when args is not a
string | string[]
(#396) via @Tyriar - Fix process name returning garbled text sometimes on macOS (#401) via @Tyriar
📝 Documentation and internal improvements
- Update electron example (#367, #368) via @Tyriar
- Fix security alerts (#394) via @Tyriar
- Migrate from tslint to eslint (#398) via @Tyriar
- Upgrade typescript (#399) via @Tyriar
- Improve dependency docs for macOS (#412) via @Tyriar
- Add shebang to electron example (#414) via @bogdanbarna
- Remove undocumented Windows API usage related to Windows XP support (#426) via @Tyriar
- Remove unneeded stdlib setting (#433) via @deepak1556
🎉 New real-world use cases
- Terminus, x-terminal (#381) via @the-j0k3r
- nomad (#388) via @lukebarnard1
- DockerStacks (#406) via @sfx101
- TeleType (#424) via @akshaykmr
- mesos-term (#431) via @kamaradclimber
- ENiGMA½ BBS Software (#440) via @NuSkooler
- Commas (#448) via @CyanSalt
0.9.0
🚀 Features / API
- New events API that is easier to use and plays nicer with TypeScript (#283) via @Tyriar
pty.onData(d => console.log(d)); pty.onExit(e => console.log(e.exitCode, e.signal));
cols
androws
are now exposed onIPty
(#290) via @Tyriarconsole.log(pty.cols, pty.rows)
- Experimental flow control APIs are available (#304, #364) via @jerch. Note that they may be removed in the future, see node-pty.d.ts for details and xtermjs/xterm.js#2077 for discussion
- Promoted conpty support to stable and removed
experimental
from name (#365) via @Tyriar// before const pty = spawn(file, args, { experimentalUseConpty: true }); // after const pty = spawn(file, args, { useConpty: true });
- Allow specifying the
PSEUDOCONSOLE_INHERIT_CURSOR
conpty flag withIWindowsPtyForkOptions.conptyInheritCursor
(#309) via @Tyriar
⬆️ Dependencies
🐞 Bug fixes
- Fix passing
null
asencoding
to use raw buffers (#273, #362) via @anszom, @Tyriar - Provide better error message when ioctl fails (#285) via @Tyriar
- Restore default ctrl+c handler in conpty support (#287) via @Tyriar
- Mark several APIs as
readonly
(#308) via @Tyriar - Fix crash when using conpty on 32-bit Windows (#314) via @ZoeyR
- Fix handle inheritance for shells (#334) via @ZoeyR
- Re-throw release binary require exception when debug require fails (#340) via @Tyriar
- Avoid specifying
/usr/*/lib
under libraries (#343) via @deepak1556 - Fix compilation when
VWERASE
/VDISCARD
are named differently (#358) via @ThePrez - Protect calling resize with invalid values from crashing winpty (#363) via @Tyriar
📝 Documentation and internal improvements
- Remove dynamic loading so bundlers can work more effectively (#274) via @implausible
- Update electron example dependencies (#275, #291, #299, #315, #355) via @Tyriar
- Remove unneeded @types/ps-list dependency (#280) via @coderaiser
- Support node v12 (#288, #331) via @Eugeny, @deepak1556
- Git ignore VS Code CPP+ extension data directory (#292) via @Tyriar
- Automate releasing of beta and stable builds (#294) via @Tyriar
- Correct badge link in README (#295) via @Tyriar
- Correct usage of prepublish npm script (#298) via @coderaiser
- Remove chatty log message (#301) via @coderaiser
- Formatting/refactoring (#305, #310, #311) via @Tyriar, @jerch
- Support node v8 (#313) via @ZoeyR
- Upgrade to @types/node@8 (#321) via @Tyriar
- Support electron v6 (v8 7.6) (#322) via @deepak1556
- Upgrade nan (#336) via @deepak1556
- Upgrade lodash (#341) via @dependabot
- Remove pollUntil dependency and add vscode unit test debug target (#342) via @Tyriar
⚠️ Deprecations
- The
on
event format is now deprecated and will be removed in v1 (#283) via @Tyriar// deprecated pty.on('data', d => console.log(d)); // recommended pty.onData(d => console.log(d));
🎉 New real-world use cases
- Electerm (#270) via @zxdong262
- Extraterm (#276) via @sedwards2009
- Wetty (#302) via @koushikmln
0.8.1
0.8.0
Features
-
Added support on Windows 10 to use the Windows ConPTY API (#236) via @Tyriar, @zadjii-msft. This will be enabled by default if you're on Windows 10 build number 17692+. This is expected to fix many issues on Windows, probably most notably #7 and microsoft/vscode#57803.
It can be disabled using experimentalUseConpty:
nodePty.spawn(file, args, { experimentalUseConpty: false });
Documentation and internal improvements
0.7.8
Bug fixes
- Fix Windows quoting of arguments when an argument contains both a space and non-surrounding quotes (#232) via @alexr00
Documentation and internal improvements
- Added a note to the README about security/containers (#231) via @Tyriar
- Documented the fact that terminal creation can throw on Windows when the shell path doesn't exist (#227) via @alexr00
- Improved debugging documentation (#226) via @Tyriar
- Updated the version of Electron the example works on (#225) via @Tyriar
0.7.7
Bug fixes
- Fix handling of quote escapes on Windows (#222) via @alexr00, arguments that contain spaces that are not surrounded in quotes are now correctly quoted
- Fixed an issue where kill didn't work anymore when used with a signal (#206) via @Tyriar, reverting the change in 0.7.5 to deliver signal to all slave processes
0.7.6
0.7.5
Bug fixes
- Don't publish test files #202 via @coderaiser
- Also deliver signals other than SIGHUP to all slave processes #169 via @Daniel-Abrecht
Internal improvements
- Updated to nan@2.10.0 (fixes compile under node 10) #192 via @Tyriar
- Updated several dev dependencies #183 via @cancerberoSgx
- Disable OSX on TravisCI #173 via @Tyriar
- Integrate VSTS for CI #193 via @Tyriar
- Add several tslint rules #172 via @Tyriar
Documentation
- Added explicit TypeScript typings #182 via @Tyriar
- Improve setup instructions on Windows #184 via @cancerberoSgx
- New real-world use: "atom-xterm" #175 via @amejia1
- New real-world use: "FreeMAN" #171 via @matthew-matvei
- Fix link in README #165 via @levrik