mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-16 18:46:40 -05:00
Merge from vscode 17c6d123d212f90300429ecad3fc96fcec6e338f (#9423)
This commit is contained in:
@@ -179,6 +179,13 @@ steps:
|
|||||||
zip -d $(agent.builddirectory)/VSCode-darwin.zip "*.pkg"
|
zip -d $(agent.builddirectory)/VSCode-darwin.zip "*.pkg"
|
||||||
displayName: Clean Archive
|
displayName: Clean Archive
|
||||||
|
|
||||||
|
- script: |
|
||||||
|
set -e
|
||||||
|
AZURE_DOCUMENTDB_MASTERKEY="$(builds-docdb-key-readwrite)" \
|
||||||
|
AZURE_STORAGE_ACCESS_KEY_2="$(vscode-storage-key)" \
|
||||||
|
node build/azure-pipelines/common/createAsset.js darwin-unnotarized archive "VSCode-darwin-$VSCODE_QUALITY.zip" $(agent.builddirectory)/VSCode-darwin.zip
|
||||||
|
displayName: Publish Unnotarized Build
|
||||||
|
|
||||||
- script: |
|
- script: |
|
||||||
APP_ROOT=$(agent.builddirectory)/VSCode-darwin
|
APP_ROOT=$(agent.builddirectory)/VSCode-darwin
|
||||||
APP_NAME="`ls $APP_ROOT | head -n 1`"
|
APP_NAME="`ls $APP_ROOT | head -n 1`"
|
||||||
|
|||||||
@@ -160,7 +160,10 @@ connection.onInitialize((params: InitializeParams): InitializeResult => {
|
|||||||
formatterMaxNumberOfEdits = params.initializationOptions?.customCapabilities?.rangeFormatting?.editLimit || Number.MAX_VALUE;
|
formatterMaxNumberOfEdits = params.initializationOptions?.customCapabilities?.rangeFormatting?.editLimit || Number.MAX_VALUE;
|
||||||
const capabilities: ServerCapabilities = {
|
const capabilities: ServerCapabilities = {
|
||||||
textDocumentSync: TextDocumentSyncKind.Incremental,
|
textDocumentSync: TextDocumentSyncKind.Incremental,
|
||||||
completionProvider: clientSnippetSupport ? { resolveProvider: true, triggerCharacters: ['"', ':'] } : undefined,
|
completionProvider: clientSnippetSupport ? {
|
||||||
|
resolveProvider: false, // turn off resolving as the current language service doesn't do anything on resolve. Also fixes #91747
|
||||||
|
triggerCharacters: ['"', ':']
|
||||||
|
} : undefined,
|
||||||
hoverProvider: true,
|
hoverProvider: true,
|
||||||
documentSymbolProvider: true,
|
documentSymbolProvider: true,
|
||||||
documentRangeFormattingProvider: params.initializationOptions.provideFormatter === true,
|
documentRangeFormattingProvider: params.initializationOptions.provideFormatter === true,
|
||||||
|
|||||||
@@ -219,7 +219,6 @@ export abstract class AbstractSynchroniser extends Disposable {
|
|||||||
const stat = await this.fileService.resolve(this.syncFolder);
|
const stat = await this.fileService.resolve(this.syncFolder);
|
||||||
if (stat.children) {
|
if (stat.children) {
|
||||||
const all = stat.children.filter(stat => stat.isFile && /^\d{8}T\d{6}(\.json)?$/.test(stat.name)).sort();
|
const all = stat.children.filter(stat => stat.isFile && /^\d{8}T\d{6}(\.json)?$/.test(stat.name)).sort();
|
||||||
console.log(all.map(a => a.name));
|
|
||||||
const backUpMaxAge = 1000 * 60 * 60 * 24 * (this.configurationService.getValue<number>('sync.localBackupDuration') || 30 /* Default 30 days */);
|
const backUpMaxAge = 1000 * 60 * 60 * 24 * (this.configurationService.getValue<number>('sync.localBackupDuration') || 30 /* Default 30 days */);
|
||||||
let toDelete = all.filter(stat => {
|
let toDelete = all.filter(stat => {
|
||||||
const ctime = stat.ctime || new Date(
|
const ctime = stat.ctime || new Date(
|
||||||
|
|||||||
@@ -96,7 +96,6 @@ export function registerConfiguration(): IDisposable {
|
|||||||
const defaultIgnoredSettings = getDefaultIgnoredSettings().filter(s => s !== CONFIGURATION_SYNC_STORE_KEY);
|
const defaultIgnoredSettings = getDefaultIgnoredSettings().filter(s => s !== CONFIGURATION_SYNC_STORE_KEY);
|
||||||
const settings = Object.keys(allSettings.properties).filter(setting => defaultIgnoredSettings.indexOf(setting) === -1);
|
const settings = Object.keys(allSettings.properties).filter(setting => defaultIgnoredSettings.indexOf(setting) === -1);
|
||||||
const ignoredSettings = defaultIgnoredSettings.filter(setting => disallowedIgnoredSettings.indexOf(setting) === -1);
|
const ignoredSettings = defaultIgnoredSettings.filter(setting => disallowedIgnoredSettings.indexOf(setting) === -1);
|
||||||
console.log(ignoredSettings);
|
|
||||||
const ignoredSettingsSchema: IJSONSchema = {
|
const ignoredSettingsSchema: IJSONSchema = {
|
||||||
items: {
|
items: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ import { fromNow } from 'vs/base/common/date';
|
|||||||
import { IProductService } from 'vs/platform/product/common/productService';
|
import { IProductService } from 'vs/platform/product/common/productService';
|
||||||
import { IStorageService, StorageScope } from 'vs/platform/storage/common/storage';
|
import { IStorageService, StorageScope } from 'vs/platform/storage/common/storage';
|
||||||
import { IOpenerService } from 'vs/platform/opener/common/opener';
|
import { IOpenerService } from 'vs/platform/opener/common/opener';
|
||||||
|
import { timeout } from 'vs/base/common/async';
|
||||||
|
|
||||||
const enum AuthStatus {
|
const enum AuthStatus {
|
||||||
Initializing = 'Initializing',
|
Initializing = 'Initializing',
|
||||||
@@ -510,7 +511,7 @@ export class UserDataSyncWorkbenchContribution extends Disposable implements IWo
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
switch (result.choice) {
|
switch (result.choice) {
|
||||||
case 0: this.openerService.open(URI.parse('https://go.microsoft.com/fwlink/?LinkId=827846')); return;
|
case 0: this.openerService.open(URI.parse('https://aka.ms/vscode-settings-sync-help')); return;
|
||||||
case 2: return;
|
case 2: return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -941,7 +942,8 @@ export class UserDataSyncWorkbenchContribution extends Disposable implements IWo
|
|||||||
quickPick.items = items;
|
quickPick.items = items;
|
||||||
disposables.add(quickPick.onDidAccept(() => {
|
disposables.add(quickPick.onDidAccept(() => {
|
||||||
if (quickPick.selectedItems[0] && quickPick.selectedItems[0].id) {
|
if (quickPick.selectedItems[0] && quickPick.selectedItems[0].id) {
|
||||||
commandService.executeCommand(quickPick.selectedItems[0].id);
|
// Introduce timeout as workaround - #91661 #91740
|
||||||
|
timeout(0).then(() => commandService.executeCommand(quickPick.selectedItems[0].id!));
|
||||||
}
|
}
|
||||||
quickPick.hide();
|
quickPick.hide();
|
||||||
}));
|
}));
|
||||||
|
|||||||
@@ -613,6 +613,8 @@ export class ElectronWindow extends Disposable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private trackClosedWaitFiles(waitMarkerFile: URI, resourcesToWaitFor: URI[]): IDisposable {
|
private trackClosedWaitFiles(waitMarkerFile: URI, resourcesToWaitFor: URI[]): IDisposable {
|
||||||
|
let remainingResourcesToWaitFor = resourcesToWaitFor.slice(0);
|
||||||
|
|
||||||
// In wait mode, listen to changes to the editors and wait until the files
|
// In wait mode, listen to changes to the editors and wait until the files
|
||||||
// are closed that the user wants to wait for. When this happens we delete
|
// are closed that the user wants to wait for. When this happens we delete
|
||||||
// the wait marker file to signal to the outside that editing is done.
|
// the wait marker file to signal to the outside that editing is done.
|
||||||
@@ -622,7 +624,7 @@ export class ElectronWindow extends Disposable {
|
|||||||
|
|
||||||
// Remove from resources to wait for based on the
|
// Remove from resources to wait for based on the
|
||||||
// resources from editors that got closed
|
// resources from editors that got closed
|
||||||
resourcesToWaitFor = resourcesToWaitFor.filter(resourceToWaitFor => {
|
remainingResourcesToWaitFor = remainingResourcesToWaitFor.filter(resourceToWaitFor => {
|
||||||
if (isEqual(resourceToWaitFor, masterResource) || isEqual(resourceToWaitFor, detailsResource)) {
|
if (isEqual(resourceToWaitFor, masterResource) || isEqual(resourceToWaitFor, detailsResource)) {
|
||||||
return false; // remove - the closing editor matches this resource
|
return false; // remove - the closing editor matches this resource
|
||||||
}
|
}
|
||||||
@@ -630,7 +632,7 @@ export class ElectronWindow extends Disposable {
|
|||||||
return true; // keep - not yet closed
|
return true; // keep - not yet closed
|
||||||
});
|
});
|
||||||
|
|
||||||
if (resourcesToWaitFor.length === 0) {
|
if (remainingResourcesToWaitFor.length === 0) {
|
||||||
// If auto save is configured with the default delay (1s) it is possible
|
// If auto save is configured with the default delay (1s) it is possible
|
||||||
// to close the editor while the save still continues in the background. As such
|
// to close the editor while the save still continues in the background. As such
|
||||||
// we have to also check if the files to wait for are dirty and if so wait
|
// we have to also check if the files to wait for are dirty and if so wait
|
||||||
|
|||||||
@@ -297,6 +297,8 @@ export class SimpleFileDialog {
|
|||||||
|
|
||||||
function doResolve(dialog: SimpleFileDialog, uri: URI | undefined) {
|
function doResolve(dialog: SimpleFileDialog, uri: URI | undefined) {
|
||||||
if (uri) {
|
if (uri) {
|
||||||
|
uri = resources.addTrailingPathSeparator(uri, dialog.separator); // Ensures that c: is c:/ since this comes from user input and can be incorrect.
|
||||||
|
// To be consistent, we should never have a trailing path separator on directories (or anything else). Will not remove from c:/.
|
||||||
uri = resources.removeTrailingPathSeparator(uri);
|
uri = resources.removeTrailingPathSeparator(uri);
|
||||||
}
|
}
|
||||||
resolve(uri);
|
resolve(uri);
|
||||||
|
|||||||
Reference in New Issue
Block a user