- Add command for expo prebuild directories clean up #2124
- Integrate expo prebuild to generate react-native app for android and ios platform #2128
- Add telemetry toggle in vscode settings #2131
- Add command to reopen QR code in webview for expo application #2137
- Change path for findXcodeProject for iOS since RN 0.74.0 #2140
- Change react native output regular expression to match success pattern #2141
- Add optional argument in settings.json to hide indicator #2157
- Internal changes:
- Bump follow-redirects from 1.15.5 to 1.15.6 #2123
- Bump webpack-dev-middleware from 5.3.3 to 5.3.4 #2127
- Bump minimatch from 3.0.4 to 3.1.2 #2130
- Bump tar from 4.4.18 to 6.2.1 #2132
- Add unit test for metro config verification #2134
- Resolve CodeQL analysis alert: reg only replace its first occurence #2148
- Resolve CodeQL analysis alert: cross-site scripting vulnerability #2152
- Migrate pipeline to 1ES pipeline template - master pipeline #2162
- Bump braces and gulp #2163
- Migrate pipeline to 1ES pipeline tempalte - nightly pipeline #2165
- Bump braces from 3.0.2 to 3.0.3 #2166
- Bump ws from 7.4.6 to 7.5.10 #2167
- Support react-native and expo doctor in command palette #2116
- Skip extra commas for getting workspace settings #2113
- Support .cjs metro config file #2103
- Remove all Experimental tags for Hermes debugging #2094
- Support default breakpoints filters for exceptions #2097
- Update package and software version for each doc #2093
- Internal changes:
- Handle settings file for unsaved workspace #2077
- Documentation: debugging in vscode workspace #2075
- Add command for launching Expo web application #2073
- Handle comment line in workspace settings file #2071
- Add command to download ExpoGo and install in simulator #2064
- Internal changes:
- Fix react-native application crashing issue related to cdp event #2055
- Add workspace setting to ignore specific project folder in multi-root workspace #2061
- Internal changes:
- Ignore merto config verification for expo application #2040
- Add documentation for Android applicationIdSuffix customization and fix format #2044
- Fix app launcher create issue in subfolder project #2048
- Internal changes:
- Support Expo web debugging #1997
- Add Expo web debugging documentation #2019
- Add metro bundler field in app.json for expo web debugging #2021
- Verify metro.config.js when start debugging #2023
- Internal changes:
- Fix attach request for different metro ports #2007
- Fix unexpected internal error #2005
- Fix getting android sdk path logic in local.properties file #1991
- Replace RN CLI by Expo CLI to start Metro in Expo debugging #1987
- Fix show qrcode in output window function #1985
- Internal changes:
- Fix security vulnerabilities #1994
- Support Expo EAS command: open the project page in a web browser #1959
- Update vscode marketpace badge service #1967
- Add command to quickly revert open module update #1961
- Add argument to collect js-debug native verbose log #1971
- Integrate react-native upgrade-helper #1973
- Update documentation: debug out of project directory #1980
- Internal changes:
- Support Hermes debugging for Expo SDK 48 #1921
- Update documentation for Expo SDK 48 #1929
- Remove 'Experimental' tag for iOS& Android Hermes debugger #1935
- Add Hermes Expo debugger in debug-alt menu #1942
- Add support for EAS build setup command #1947
- Internal changes:
- Improve android sdk and adb.exe path reading logic #1877
- Update vscode marketplace badge #1893
- Add notification for local file changes #1896
- Fix deprecated new Buffer() to Buffer.from #1905
- Internal changes:
- Improve expo package.json file checking logic for some previous expo versions #1870
- Improve expo debugging output log user experience #1874
- Fix bug: i.Parse() is not a function when add target:"simulator" in launch.json #1856
- Avoid extension overwrite app.json in expo application #1849
- Temporarily disable some parts of log hightlight for tm-grammar refactor #1872
- Internal changes:
- Update documentation for Hermes and Expo Hermes #1827
- Improve react-native packager output log and error message #1811
- Fix iOS debugger findXcodeProject function location #1784
- Add Expo QR code to output window #1786
- Improve json file reading logic #1422
- Improve logging experience and add log color customize config #1385
- Internal changes:
- Refactored RN commands. Implemented command cancelation. #1744
- Updated android environment check. #1772
- Implemented checks for environment of Rect Native macOS projects. #1763
- Improved extension security #1757, #1761, #1760, #1759
- Fixed debug session restarting #1745
- Improved debug session termination handling for Direct debugging #1747
- Improved the pattern for successful iOS build to support the
run-ios
command without verbose logs #1755 - Updated outdated documentation #1748
- Fixed debugging issues caused by incorrect sourcemap URL detection if some additional packages were installed, such as
react-native-cn-quill
#1730 - Fixed extension's debugger behavior in case another debugger has connected to React Native iOS Hermes application #1729
- Implemented support for projects with React Native canary builds, thanks to Andrew Coates(@acoates-ms) #1734, #1736
- Implemented user's development environment checking for common problems for React Native Windows projects #1733
- Improved extension security #1739
- Added the
Check development environment configuration
Command Palette command intended for checking user's React Native development environment for common problems #1702 - Added
env
andenvFile
paramenters to attach debugging configurations #1707 - Contributed React Native Tools getting started guide to the
Get Started
page of VS Code #1698 - Enhanced documentation about the Network inspector and Element inspector #1716, #1698
- Improved extension security #1723, #1726
- Internal changes:
- Fixed debugging on reloading React Native Hermes applications #1696
- Optimized device and emulator targets selection #1699
- Added user survey notifications #1701
- Improved device and emulator targets selection #1673
- Implemented support of debugging without creating a "launch.json" file. Now it's possible to start debugging via dynamic debug configurations or the Debug button in the Editor Title area menu #1687
- Adapted the extension for debugging Expo SDK 43 applications #1691
- Internal changes:
- Improved behavior of Packager status indicator #1680
- Fixed debugging performance issue #1684
- Improved extension security #1682
- Internal changes:
- Smoke tests were updated to work with VS Code 1.61.0 #1682
- Fixed forwarding security certificates for Network inspector on Windows #1661
- Improved Expo dependencies management: moved configuration of all packages versions to the
react-native.expo.dependencies
parameter #1665 - Bumped versions of Expo dependencies to the most recent ones #1676
- Improved extension security #1658, #1670
- Internal changes:
- Improved error logging on debugging #1633
- Improved parsing of
sdk.dir
parameter in Androidlocal.properties
#1643 - Fixed typos in error messages, thanks to Alexander Sklar(@asklar) #1648
- Enhanced documentation about extension commands usage #1649
- Improved tips notifications functionality #1642
- Added a settings parameter for controlling the version of the
@expo/ngrok
package #1652 - Improved extension security #1635, #1640, #1641
- Added support of debugging of React Native for Windows Hermes applications: more info #1624
- Added tips about rarely used extension features #1610
- Updated documentation about
ios-deploy
installation, thanks to Lucas Johnston(@lucasjohnston) #1611 - Implemented debugging of Expo Hermes applications #1608
- Added context variables to configure custom key bindings with
when
clauses for pair extension commands #1606 - Improved extension security #1625
- Internal changes:
- Smoke tests were updated to work with VS Code 1.58.1 #1609
- Added the
sourceMapRenames
parameter to debugging configurations #1602 - Implemented debugging mode control for macOS apps #1589
- Added the
sourceMapPathOverrides
parameter to launch debugging configurations #1589 - Implemented settings parameters for controlling versions of the
xdl
and@expo/metro-config
packages #1578 - Added
Run Windows
andRun MacOS
Command Palette commands for running RNW and RNmacOS apps #1576 - Improved extension security #1587, #1592, #1593, #1594
- Internal changes:
- Adapted new VS Code API version for creating Packager status indicator on the status bar #1597
- Improved debugging on remote Android devices #1577
- Fixed getting React Native version in cases
projectRoot
has been customized #1583 - Improved extension security #1581, #1579
- Removed support of the deprecated WPF platform #1554
- Improved Expo tunnel debugging and set default Expo host type as
lan
#1556 - Added support of the
--appIdSuffix
flag torunArguments
for Android apps #1549 - Implemented Network Inspector #1550
- Improved multiroot workspace support #1540
- Improved error handling for building React Native for Windows apps #1560
- Improved extension security #1565
- Implemented support of Workspace Trust feature #1563
- Configured support of virtual workspaces #1570
- Internal changes:
- Added support for debugging AppleTV apps, thanks to Michele Bonazza(@micheleb) #1498
- Improved extension security #1538, #1527, #1547
- Resolved a conflict with vscode-jest extension while fast refreshing React Native apps #1530
- Migrated from
@expo/xdl
package toxdl
package for debugging Expo applications #1532 - Internal changes:
- Improved sending error events to Telemetry #1526
- Fixed resolving of custom file extensions while starting the packager for Expo #1502
- Updated documentation for debugging RNW apps #1513
- Enhanced extension security #1521, #1505, #1520
- Internal changes:
- Smoke tests refactoring #1507
- Added support of debugging of React Native macOS Hermes applications: more info #1495
- Added support of debugging of React Native iOS Hermes applications: more info #1488
- Fixed attachment to the packager after a previous failed attempt to attach to it #1489
- Enhanced creation of debugging configurations. Now debugging configurations are generated interactively. You just need to click on
React Native
button in the IntelliSense prompt inlaunch.json
file and then select required parameters in selection panels #1468 - Added a notification with a link to the CHANGELOG after the extension update #1476
- Fixed the bug with incorrect recursive deletion of paths when activating the extension #1481
- Improved extension security #1472
- Enhanced contributing guide and documentation about debugging React Native for Windows and macOS applications #1477, #1469
- Internal changes:
- Added
Run React Native LogCat Monitor
andStop React Native LogCat Monitor
Command Palette commands. These commands allow to control LogCat outputs monitoring and create monitors for Android devices on demand. See more information here #1461 - Updated documentation for cases when React Native projects are opened via symbolic links on Linux. This might cause sourcemaps breakage, so it is not recommended #1459
- Internal changes:
- Smoke tests improvements #1441
- Updated the extension supported languages for breakpoints in order to work with the latest VS Code API #1451
- Added React Native macOS debugging support: more info #1409
- Added support for
openExpoQR
debugging argument determining whether to open a tab with a QR code after launching the Expo server or not. Enhanced the workflow for Expo server starting #1413 - Fixed launch scenarios for iOS direct debugging #1430
- Values in the
target
debug scenario argument are no longer replaced by UDID in case the existing simulator name is already used there #1431 - Fixed minor extension issues #1424, #1425
- Fixed issue connected to incorrect project caching when the
projectRoot
argument is used insettings.json
- Added
sourcemaps
parameters for Direct debugging scenarios #1395 - Fixed the
Debug Windows
scenario for React Native Windows applications v0.63 #1395, #1412 - Implemented experimental support of iOS direct debugging. It could be used in next versions of React Native with support of TurboModules and Hermes engine for iOS #1367
- Implemented selection of iOS and Android emulators for launch and run scenarios and Command Palette commands #1361, #1374
- Implemented automatic launch of the packager in
attach
scenarios in case it is not running yet #1320 - Added scenarios (
Run Android, Run iOS, etc
) to run applications without debugging #1319 - Minor logging improvement #1392, #1330
- Updated documentation
- The minimum supported version of VS Code has been increased from
1.31.0
to1.40.0
- Internal changes:
- Migrated from the
vscode-node-debug2
debugger tojs-debug
one - Integrated the debug adapter directly inside the extension, which allows VS Code to connect to it instead of launching a new external debug adapter per extension's debugging session. See
DebugAdapterDescriptorFactory
approach for more details - Improved debug sessions control
- Added Webpack bundling for the extension #1308
- Got rid of Q promises #1354
- Migrated from the
- Enhanced extension security #1339, #1350, #1355, #1362
- Updated extension troubleshooting for the Expo debugging case #1338
- Fixed the Github organisation name capitalization in URLs to the repository, thanks to Frieder Bluemle(@friederbluemle) #1324
- Updated Packager statusbar indicator representation #1340, #1353:
- Now there are two representations available:
Full
andShort
. To change it addreact-native.packager.status-indicator
property with a valueFull
for full representation orShort
for icon only mode. More info.
- Now there are two representations available:
- Improved extension security #1310, #1329
- Fixed the incorrect handling of spaces in
adb
path fromlocal.properties
#1326 - Internal changes:
- Improved extension security #1253
- Updated extension license to MIT #1286
- Fixed fonts usage with Expo SDK 37 #1260, #1264
- Increased packager starting time and fixed handling of StatusBar items click #1268
- Fixed links in Table of Contents and typos, thanks to Max von Webel(@343max) #1284
- Internal changes:
- Improved extension security #1227
- Added an option to add environment variables to the React Native packager process. More info #1248
- Readme extension homepage has been updated #1243, #1250, #1251
- Minor logging improvement #1237
- Internal changes:
- Added YAML Azure Pipelines support for the extension repository
- Smoke tests were updated to work with React Native 0.62 and Expo SDK 37
- Improved extension security #1219, #1222, #1223, #1224
- Updated extension dependencies #1224
- Added support for running iOS debugging on a specific device using flag
target: 'device=<iOS_device_name>'
. More info. #1207 - Fixed launch of iOS apps with custom project's configuration: custom scheme name, custom app bundle name. #1213
- Implemented Expo debugging without mandatory logging in and Internet connection #1188
- Added
expoHostType
parameter to Expo debug scenario configuration. See the documentation for more details
- Added
- Fixed iOS debugging according to XCode build caching changes in React Native CLI v3.1.0 #1198
- Enhanced extension security #1171
- Deps:
[email protected]
#1193 - Enhanced extension logging #1175
- Added
Debug Windows
scenario configuration to extension's debug scenarios configurations layouts (#1189, #1191), thanks to David Serafimov(@nasadigital) - Fixed typos in documentation (#1190), thanks to Ivan Tse(@ivantse)
- Enhanced React Native Hermes applications debugging #1099 (#548)
- Fixed incorrect displaying of
Global
,Closure
variables - Fixed incorrect displaying of value of numeric variables
- Fixed incorrect displaying of
this
object content - Fixed incorrect handling of arrays on debugging
- Fixed displaying of redundant React Native Hermes native functions calls in Call Stack #1187
- Fixed incorrect displaying of
- Internal changes:
- Fixed command palette commands execution in cases when
projectRoot
has been customized #1160
- The algorithm of processing React Native CLI commands was changed, the following changes were made:
- Extension can now work without the
react-native-cli
installed globally. Now it uses local CLI fromreact-native
package installed innode_modules
of the React Native project - Added
reactNativeGlobalCommandName
property support tosettings.json
that is allowing to switch between locally installed CLI and global ones (more info) - Added error handling in cases if React Native package is not installed in
node_modules
- Extension can now work without the
- Added additional verbose mode error logging in cases if
settings.json
file is incorrect or absent #1148 - Fixed --project-path React Native command argument handling for iOS #1143
- Fixed Hermes debug scenarios quick configurations names #1140
- Fixed
port
argument handling for launch and attach Hermes debug scenarios #1140 - Added support for
@expo/xdl
greater than 56.1 #1155, @expo/expo-cli#864 - Improved extension security #1145
- Fixed debugging issues with React Native 0.61 applications if some additional packages were installed, such as
react-native-navigation
orreact-native-splash-screen
- Added experimental support for React Native Android applications on Hermes engine. Experimental means that the debugger is on early stage of development and some bugs can be revealed. If you tried experimental feature and would like to provide feedback, please post it to Github issue.
- Added support for React Native 0.61 #1122
- Added wait phase for initializing React Native app bundle sourcemaps to avoid breakpoints skip on application initialization #1081
- Added inline breakpoints feature support
- Improved extension security #1125
- Fixed
Attach to packager
debugging issue when Haul packager is being used #1108 - Optimized extension activation events #1114
- Fixed debugging issue when using
broadcast-channels
package in React Native application #1083 - Added
launchActivity
debug configuration parameter for Android allowing to choose the activity to launch onDebug Android
scenario #1084 - Added error handling for some specific cases #1086
- Optimized extension activation events #1103
- Fixed the folder
.vscode/.react
isn't created when opening directory with nested RN project - Fixed usage of removed
-v
option forreact-native
command from @react-native-community/cli - Updated extension translation
- [Internal] Improved smoke tests workflow
- Added support for React Native 0.60 (#1043)
- Fixed
diff
security vulnerability (#1029) program
debug configuration property is deprecated and will be removed in future, please remove it from debug configurations and replace it by"cwd": "${workspaceFolder}"
- Added documentation for debug configurations properties (#1040)
- Added support for Expo SDK 33 (#1025)
- Simplified
launch.json
debug configuration file generation, added debug configuration provider UI which allows to choose needed debug configurations (#830) outDir
debug configuration property was removed,sourceMaps
property was excluded from initial debug configurations and set totrue
if not specified explicitly (#1033)- Changed
Reload App
Command Pallete command approach for Android (#1016), thanks to Alter Code(@muhamad-rizki) - Fixed some logging typos (#1018), thanks to Adam Krantz(@akrantz)
- Fixed
Show Dev Menu
andReload App
Command Pallette commands for iOS (#978) - Fixed debugging functionality on Node.js 12 due to deprecating of Node cli argument
--debug-brk
(#1000) - Fixed scheme configuration variable handling for iOS native apps, added instruction for using
scheme
variable (#989) - Added debug configuration setup instruction(#986), thanks to Peadar Coyle(@springcoil)
- Changed extension publisher from
vsmobile
tomsjsdiag
- Fixed issue when using
console.trace()
caused error on native app #974 - Fixed tar security vulnerabilities
- Fixed logging for
attach
event - Updated documentation
- Added debugger configuration parameter
debuggerWorkerUrlPath
that provides the ability to change path to the React NativedebuggerWorker.js
file #947 - Fixed js-yaml security vulnerability
- Bumped debug core dependencies versions to the more recent ones
- Fixed wording for "Run Android on Emulator" command, thanks to Frieder Bluemle(@friederbluemle)
- Finished localization of the extension
- Bumped debug core dependencies versions to the more recent ones
- Fixed debugging issue on iOS due to changes in building process in RN 0.59
- Fixed several documentation wordings, thanks to Kristian Sakarisson (@Sakarisson), Brendan McGill (@brendanmc6)
- Other minor improvements
- Improved extension security
- Improved error logging
- Improved Expo login workflow
- Added warning if RN application is being ran using
Debug In Exponent
configuration andexpo
package is not installed #882 - Fixed debugger url problem for haul projects #875
- Added localization for next languages:
- Chinese Simplified
- Chinese Traditional
- Japanese
- Korean
- German
- French
- Spanish
- Russian
- Italian
- Czech
- Turkish
- Portuguese
- Polish
Some localizations may not be completed, they will be updated in future
- Added
Run Element Inspector
command that runs standalone React Developer Tools - Migrate to WebView Api instead of using deprecated
vscode.previewHtml
command - Added minimal externalization support for Italian language
- Moved to Azure pipelines builds instead of Travis CI for pull requests validation
- Replaced deprecated dependency gulp-util
- Updated documentation: improved
Debugging React Native applications
section and Expo instructions
- Fix parsing
sdk.dir
inandroid/local.properties
on Windows machines
- Return changes from 0.6.14 - 0.6.15
- Added support for react-native versions >= 0.57
- Bug fixes
- Reverted to the state of 0.6.13
- Fixed critical issue with android debugging introduced in 0.6.14
- Added reading SDK location from
local.properties
- Added support for building iOS apps with custom configuration names
- Bug fixes and improvements
- Fixed "Inverified breakpoint" error while debugging apps with RN >= 0.54.3 < 0.55
- Fixed issue with ignoring getAssetExts() in rn-cli.config.js during debugging
- Fixed leaking global variable "process.versions" from debugger process to worker
- Added debugger for WPF platform(react-native-windows > 0.55.0)
- Minor bug fixes and improvements
- Fixed activation event promises handling
- Fixed "connect ENOENT *.sock" error during debugging from within non React Native project root
- Minor bug fixes and improvements
- Minor fixes and improvements
- Migrated CodePush functionality to App Center extension for VS Code
- Bug fixes
- Bug fixes
- Bug fixes
- Fixed issue with SourceMaps generation for RN 0.54.x
- Narrow down activation events for extension
- Remove local file dependencies for code-push libs from package.json
- Bug fixes
- Updated README
- Fixed issue with finding index{os}.js file
- Fixed issue with detecting react-native-code-push
- Minor fixes
- Added support for react-native-code-push commands
- Bug fixes
- Bug fixes
- Bug fixes
- Environment Variable setting for debug configurations
- Improved multi-root workspaces support
- Bug fixes
- Added support React-Native 0.50 and greater
- Bug fixes
- Multi-root workspaces support
- Debugging for Haxe project
- Some bugs fixed
- Fixed issue with Run iOS on device
- Added custom packager port support
- Added separate channels for logs output
- Added Reload App and Open Dev Menu commands
- Added launch options to attach to remote packager
- Fixed annoying error message when app's entry point is not
index.<platform>.js
- Added
runArguments
configuration option to allow passing custom arguments toreact-native run-*
commands - Reorganized documentation structure
- Switched to direct usage of React Native CLI instead of
ideviceinstaller
to run iOS - Fixed automatic enable of JS debugging on iOS simulator
- Added notice about
.vscode/.react
directory (#505) - Fixed bug in typescript sourcemaps rewrite logic when project and vscode are on different drives
- Fixed regression causing
react-native
commands ran from command palette to fail - Fixed regression causing debugging to fail when start debugging Expo project first time
- Fixed issue with infinite loops when reloading RN app
- Fixed compatibility issues with react-native >=0.45
- Added more robust sourcemaps support to enable Typescript debugging
- Added instructions to enable Flowtype intellisense
- Fixed error "Error processing 'continue'" appearing when reloading app while staying on breakpoint
- Added “scheme” option to
launch.json
to pass build scheme to xcodebuild - Improved LogCat logging - now reusing existing output channel when possible
- Refactored extension to support debugging of Expo and CRNA apps better (#478)
- Added support for displaying Expo's QR code
- Rename launch.json snippets to make it easier to add React Native launch configurations to existing
launch.json
- Fix regressions in app worker introduced after moving to 'node2' debugger
- Fix bug with loading assets in exponent and upgrade XDL
- Prevent unhandled rejection warnings to be logged to debug console when breakpoints are not set up successfully
- Prefer
xcworkspace
files overxcodeproj
when launchingxcodebuild
- Updated README
.babelrc
instructions
- Fixed an issue when no .vscode folder is present in a project
- Added support for launch.json snippets
- Updated to use node2 debug engine instead of node. We now spawn a separate node process to run the app logic rather than using node's
vm
infrastructure. - Fixed support for android variants
- Fixed the ability to open source files by tapping on stack frames when the app red-boxes
- Removed
require
from app worker context to work around change in node 7.__debug__.require
is still present for applications which need it
- Allowed using this extension in a workspace with the react-native project in a subfolder.
- Ignore references to inline sourcemaps, in the hopes of finding another reference to a map file
- Exposed
react-native-tools.showInternalLogs
andreact-native-tools.logLevel
to print additional output for debugging issues with the extension. - Added CHANGELOG.md!
- Added a workaround for max-stack issues with react-native 0.37