-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create the Get Started page #435
Comments
It seems the Python extension uses a configuration option and the Here's the // Public for testing
public async extensionVersionChanged(): Promise<boolean> {
const savedVersion: string | undefined = this.context.globalState.get(EXTENSION_VERSION_MEMENTO);
const { version } = this.appEnvironment.packageJson;
let shouldShowStartPage: boolean;
if (savedVersion) {
if (savedVersion === version || this.savedVersionisOlder(savedVersion, version)) {
// There has not been an update
shouldShowStartPage = false;
} else {
sendTelemetryEvent(Telemetry.StartPageOpenedFromNewUpdate);
shouldShowStartPage = true;
}
} else {
sendTelemetryEvent(Telemetry.StartPageOpenedFromNewInstall);
shouldShowStartPage = true;
}
// savedVersion being undefined means this is the first time the user activates the extension.
// if savedVersion != version, there was an update
await this.context.globalState.update(EXTENSION_VERSION_MEMENTO, version);
return shouldShowStartPage;
}
// [...]
private async activateBackground(): Promise<void> {
const settings = this.configuration.getSettings();
if (settings.showStartPage && this.appEnvironment.extensionChannel === 'stable') {
// extesionVersionChanged() reads CHANGELOG.md
// So we use separate if's to try and avoid reading a file every time
const firstTimeOrUpdate = await this.extensionVersionChanged();
if (firstTimeOrUpdate) {
this.firstTime = true;
this.open().ignoreErrors();
}
}
} We could start with a simple option to toggle if the welcome page is loaded on activation, and make it easy for the user to opt out if they don't want it after the first load. |
We have added a set of quick picks that can be used by any user to setup the workspace for use with DVC. This lets them set two underlying options. The first is the path to the DVC CLI and the second is a path to their preferred Python interpreter for the project (they can choose to rely on the |
I think we can close this now that we have a walkthrough. WDYT @shcheklein, @rogermparent? |
I will investigate what the Python extension does now and then circle back. I have the feeling that they have migrated to a walkthrough now. |
@rogermparent, @shcheklein the The change happened in this release - https://github.com/microsoft/vscode-python/releases/tag/2021.9.1191016588 This was the issue: microsoft/vscode-python#16453 Closing this now. |
Thanks, Matt! Question - do they launch it after the initial install? |
Of course this is how you would make an id for the walkthrough...
I can fire this once after installation. Will raise a PR. |
Similar to this Python extension one:
How and when does it run itself?
The text was updated successfully, but these errors were encountered: