@@ -1171,9 +1171,15 @@ export function UpdateInsidersAccess(): void {
1171
1171
1172
1172
export async function preReleaseCheck ( ) : Promise < void > {
1173
1173
const displayedPreReleasePrompt : PersistentState < boolean > = new PersistentState < boolean > ( "CPP.displayedPreReleasePrompt" , false ) ;
1174
+ const isOnPreRelease : PersistentState < boolean > = new PersistentState < boolean > ( "CPP.isOnPreRelease" , false ) ;
1175
+
1176
+ if ( util . getCppToolsTargetPopulation ( ) === TargetPopulation . Insiders ) {
1177
+ isOnPreRelease . Value = true ;
1178
+ return ;
1179
+ }
1174
1180
1175
1181
// First we need to make sure the user isn't already on a pre-release version and hasn't dismissed this prompt before.
1176
- if ( ! displayedPreReleasePrompt . Value && util . getCppToolsTargetPopulation ( ) === TargetPopulation . Public ) {
1182
+ if ( ! isOnPreRelease . Value && ! displayedPreReleasePrompt . Value && util . getCppToolsTargetPopulation ( ) === TargetPopulation . Public ) {
1177
1183
// Get the info on the latest version from the marketplace to check if there is a pre-release version available.
1178
1184
const response = await fetch ( 'https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery' , {
1179
1185
method : 'POST' ,
@@ -1182,10 +1188,11 @@ export async function preReleaseCheck(): Promise<void> {
1182
1188
'Content-Type' : 'application/json'
1183
1189
} ,
1184
1190
body : '{"filters": [{"criteria": [{"filterType": 7, "value": "ms-vscode.cpptools"}]}], "flags": 529}'
1185
- } ) ;
1191
+ } ) . catch ( logAndReturn . undefined ) ;
1192
+
1193
+ const data = await response ?. json ( ) . catch ( logAndReturn . undefined ) ;
1186
1194
1187
- const data = await response . json ( ) ;
1188
- const preReleaseAvailable = data . results [ 0 ] . extensions [ 0 ] . versions [ 0 ] . properties . some ( ( e : object ) => Object . values ( e ) . includes ( "Microsoft.VisualStudio.Code.PreRelease" ) ) ;
1195
+ const preReleaseAvailable = data ?. results [ 0 ] . extensions [ 0 ] . versions [ 0 ] . properties . some ( ( e : object ) => Object . values ( e ) . includes ( "Microsoft.VisualStudio.Code.PreRelease" ) ) ;
1189
1196
1190
1197
// If the user isn't on the pre-release version, but one is available, prompt them to install it.
1191
1198
if ( preReleaseAvailable ) {
0 commit comments