diff --git a/_submodules/TypeScript b/_submodules/TypeScript index 35f3c599a5..0693cc72e6 160000 --- a/_submodules/TypeScript +++ b/_submodules/TypeScript @@ -1 +1 @@ -Subproject commit 35f3c599a5afefa325b377fab38c3bb6b13cbea5 +Subproject commit 0693cc72e6ddb6c7468a14e05888efa2f43ac7b0 diff --git a/internal/bundled/embed_generated.go b/internal/bundled/embed_generated.go index 9c7fb11262..a39bcf2c87 100644 --- a/internal/bundled/embed_generated.go +++ b/internal/bundled/embed_generated.go @@ -51,6 +51,8 @@ var ( libs_lib_es2016_full_d_ts string //go:embed libs/lib.es2016.intl.d.ts libs_lib_es2016_intl_d_ts string + //go:embed libs/lib.es2017.arraybuffer.d.ts + libs_lib_es2017_arraybuffer_d_ts string //go:embed libs/lib.es2017.d.ts libs_lib_es2017_d_ts string //go:embed libs/lib.es2017.date.d.ts @@ -141,8 +143,6 @@ var ( libs_lib_es2022_object_d_ts string //go:embed libs/lib.es2022.regexp.d.ts libs_lib_es2022_regexp_d_ts string - //go:embed libs/lib.es2022.sharedmemory.d.ts - libs_lib_es2022_sharedmemory_d_ts string //go:embed libs/lib.es2022.string.d.ts libs_lib_es2022_string_d_ts string //go:embed libs/lib.es2023.array.d.ts @@ -155,6 +155,24 @@ var ( libs_lib_es2023_full_d_ts string //go:embed libs/lib.es2023.intl.d.ts libs_lib_es2023_intl_d_ts string + //go:embed libs/lib.es2024.arraybuffer.d.ts + libs_lib_es2024_arraybuffer_d_ts string + //go:embed libs/lib.es2024.collection.d.ts + libs_lib_es2024_collection_d_ts string + //go:embed libs/lib.es2024.d.ts + libs_lib_es2024_d_ts string + //go:embed libs/lib.es2024.full.d.ts + libs_lib_es2024_full_d_ts string + //go:embed libs/lib.es2024.object.d.ts + libs_lib_es2024_object_d_ts string + //go:embed libs/lib.es2024.promise.d.ts + libs_lib_es2024_promise_d_ts string + //go:embed libs/lib.es2024.regexp.d.ts + libs_lib_es2024_regexp_d_ts string + //go:embed libs/lib.es2024.sharedmemory.d.ts + libs_lib_es2024_sharedmemory_d_ts string + //go:embed libs/lib.es2024.string.d.ts + libs_lib_es2024_string_d_ts string //go:embed libs/lib.es5.d.ts libs_lib_es5_d_ts string //go:embed libs/lib.es6.d.ts @@ -175,14 +193,6 @@ var ( libs_lib_esnext_intl_d_ts string //go:embed libs/lib.esnext.iterator.d.ts libs_lib_esnext_iterator_d_ts string - //go:embed libs/lib.esnext.object.d.ts - libs_lib_esnext_object_d_ts string - //go:embed libs/lib.esnext.promise.d.ts - libs_lib_esnext_promise_d_ts string - //go:embed libs/lib.esnext.regexp.d.ts - libs_lib_esnext_regexp_d_ts string - //go:embed libs/lib.esnext.string.d.ts - libs_lib_esnext_string_d_ts string //go:embed libs/lib.scripthost.d.ts libs_lib_scripthost_d_ts string //go:embed libs/lib.webworker.asynciterable.d.ts @@ -216,6 +226,7 @@ var embeddedContents = map[string]string{ "libs/lib.es2016.d.ts": libs_lib_es2016_d_ts, "libs/lib.es2016.full.d.ts": libs_lib_es2016_full_d_ts, "libs/lib.es2016.intl.d.ts": libs_lib_es2016_intl_d_ts, + "libs/lib.es2017.arraybuffer.d.ts": libs_lib_es2017_arraybuffer_d_ts, "libs/lib.es2017.d.ts": libs_lib_es2017_d_ts, "libs/lib.es2017.date.d.ts": libs_lib_es2017_date_d_ts, "libs/lib.es2017.full.d.ts": libs_lib_es2017_full_d_ts, @@ -261,13 +272,21 @@ var embeddedContents = map[string]string{ "libs/lib.es2022.intl.d.ts": libs_lib_es2022_intl_d_ts, "libs/lib.es2022.object.d.ts": libs_lib_es2022_object_d_ts, "libs/lib.es2022.regexp.d.ts": libs_lib_es2022_regexp_d_ts, - "libs/lib.es2022.sharedmemory.d.ts": libs_lib_es2022_sharedmemory_d_ts, "libs/lib.es2022.string.d.ts": libs_lib_es2022_string_d_ts, "libs/lib.es2023.array.d.ts": libs_lib_es2023_array_d_ts, "libs/lib.es2023.collection.d.ts": libs_lib_es2023_collection_d_ts, "libs/lib.es2023.d.ts": libs_lib_es2023_d_ts, "libs/lib.es2023.full.d.ts": libs_lib_es2023_full_d_ts, "libs/lib.es2023.intl.d.ts": libs_lib_es2023_intl_d_ts, + "libs/lib.es2024.arraybuffer.d.ts": libs_lib_es2024_arraybuffer_d_ts, + "libs/lib.es2024.collection.d.ts": libs_lib_es2024_collection_d_ts, + "libs/lib.es2024.d.ts": libs_lib_es2024_d_ts, + "libs/lib.es2024.full.d.ts": libs_lib_es2024_full_d_ts, + "libs/lib.es2024.object.d.ts": libs_lib_es2024_object_d_ts, + "libs/lib.es2024.promise.d.ts": libs_lib_es2024_promise_d_ts, + "libs/lib.es2024.regexp.d.ts": libs_lib_es2024_regexp_d_ts, + "libs/lib.es2024.sharedmemory.d.ts": libs_lib_es2024_sharedmemory_d_ts, + "libs/lib.es2024.string.d.ts": libs_lib_es2024_string_d_ts, "libs/lib.es5.d.ts": libs_lib_es5_d_ts, "libs/lib.es6.d.ts": libs_lib_es6_d_ts, "libs/lib.esnext.array.d.ts": libs_lib_esnext_array_d_ts, @@ -278,10 +297,6 @@ var embeddedContents = map[string]string{ "libs/lib.esnext.full.d.ts": libs_lib_esnext_full_d_ts, "libs/lib.esnext.intl.d.ts": libs_lib_esnext_intl_d_ts, "libs/lib.esnext.iterator.d.ts": libs_lib_esnext_iterator_d_ts, - "libs/lib.esnext.object.d.ts": libs_lib_esnext_object_d_ts, - "libs/lib.esnext.promise.d.ts": libs_lib_esnext_promise_d_ts, - "libs/lib.esnext.regexp.d.ts": libs_lib_esnext_regexp_d_ts, - "libs/lib.esnext.string.d.ts": libs_lib_esnext_string_d_ts, "libs/lib.scripthost.d.ts": libs_lib_scripthost_d_ts, "libs/lib.webworker.asynciterable.d.ts": libs_lib_webworker_asynciterable_d_ts, "libs/lib.webworker.d.ts": libs_lib_webworker_d_ts, @@ -310,6 +325,7 @@ var libsEntries = []fs.DirEntry{ &fileInfo{name: "lib.es2016.d.ts", size: int64(len(libs_lib_es2016_d_ts))}, &fileInfo{name: "lib.es2016.full.d.ts", size: int64(len(libs_lib_es2016_full_d_ts))}, &fileInfo{name: "lib.es2016.intl.d.ts", size: int64(len(libs_lib_es2016_intl_d_ts))}, + &fileInfo{name: "lib.es2017.arraybuffer.d.ts", size: int64(len(libs_lib_es2017_arraybuffer_d_ts))}, &fileInfo{name: "lib.es2017.d.ts", size: int64(len(libs_lib_es2017_d_ts))}, &fileInfo{name: "lib.es2017.date.d.ts", size: int64(len(libs_lib_es2017_date_d_ts))}, &fileInfo{name: "lib.es2017.full.d.ts", size: int64(len(libs_lib_es2017_full_d_ts))}, @@ -355,13 +371,21 @@ var libsEntries = []fs.DirEntry{ &fileInfo{name: "lib.es2022.intl.d.ts", size: int64(len(libs_lib_es2022_intl_d_ts))}, &fileInfo{name: "lib.es2022.object.d.ts", size: int64(len(libs_lib_es2022_object_d_ts))}, &fileInfo{name: "lib.es2022.regexp.d.ts", size: int64(len(libs_lib_es2022_regexp_d_ts))}, - &fileInfo{name: "lib.es2022.sharedmemory.d.ts", size: int64(len(libs_lib_es2022_sharedmemory_d_ts))}, &fileInfo{name: "lib.es2022.string.d.ts", size: int64(len(libs_lib_es2022_string_d_ts))}, &fileInfo{name: "lib.es2023.array.d.ts", size: int64(len(libs_lib_es2023_array_d_ts))}, &fileInfo{name: "lib.es2023.collection.d.ts", size: int64(len(libs_lib_es2023_collection_d_ts))}, &fileInfo{name: "lib.es2023.d.ts", size: int64(len(libs_lib_es2023_d_ts))}, &fileInfo{name: "lib.es2023.full.d.ts", size: int64(len(libs_lib_es2023_full_d_ts))}, &fileInfo{name: "lib.es2023.intl.d.ts", size: int64(len(libs_lib_es2023_intl_d_ts))}, + &fileInfo{name: "lib.es2024.arraybuffer.d.ts", size: int64(len(libs_lib_es2024_arraybuffer_d_ts))}, + &fileInfo{name: "lib.es2024.collection.d.ts", size: int64(len(libs_lib_es2024_collection_d_ts))}, + &fileInfo{name: "lib.es2024.d.ts", size: int64(len(libs_lib_es2024_d_ts))}, + &fileInfo{name: "lib.es2024.full.d.ts", size: int64(len(libs_lib_es2024_full_d_ts))}, + &fileInfo{name: "lib.es2024.object.d.ts", size: int64(len(libs_lib_es2024_object_d_ts))}, + &fileInfo{name: "lib.es2024.promise.d.ts", size: int64(len(libs_lib_es2024_promise_d_ts))}, + &fileInfo{name: "lib.es2024.regexp.d.ts", size: int64(len(libs_lib_es2024_regexp_d_ts))}, + &fileInfo{name: "lib.es2024.sharedmemory.d.ts", size: int64(len(libs_lib_es2024_sharedmemory_d_ts))}, + &fileInfo{name: "lib.es2024.string.d.ts", size: int64(len(libs_lib_es2024_string_d_ts))}, &fileInfo{name: "lib.es5.d.ts", size: int64(len(libs_lib_es5_d_ts))}, &fileInfo{name: "lib.es6.d.ts", size: int64(len(libs_lib_es6_d_ts))}, &fileInfo{name: "lib.esnext.array.d.ts", size: int64(len(libs_lib_esnext_array_d_ts))}, @@ -372,10 +396,6 @@ var libsEntries = []fs.DirEntry{ &fileInfo{name: "lib.esnext.full.d.ts", size: int64(len(libs_lib_esnext_full_d_ts))}, &fileInfo{name: "lib.esnext.intl.d.ts", size: int64(len(libs_lib_esnext_intl_d_ts))}, &fileInfo{name: "lib.esnext.iterator.d.ts", size: int64(len(libs_lib_esnext_iterator_d_ts))}, - &fileInfo{name: "lib.esnext.object.d.ts", size: int64(len(libs_lib_esnext_object_d_ts))}, - &fileInfo{name: "lib.esnext.promise.d.ts", size: int64(len(libs_lib_esnext_promise_d_ts))}, - &fileInfo{name: "lib.esnext.regexp.d.ts", size: int64(len(libs_lib_esnext_regexp_d_ts))}, - &fileInfo{name: "lib.esnext.string.d.ts", size: int64(len(libs_lib_esnext_string_d_ts))}, &fileInfo{name: "lib.scripthost.d.ts", size: int64(len(libs_lib_scripthost_d_ts))}, &fileInfo{name: "lib.webworker.asynciterable.d.ts", size: int64(len(libs_lib_webworker_asynciterable_d_ts))}, &fileInfo{name: "lib.webworker.d.ts", size: int64(len(libs_lib_webworker_d_ts))}, diff --git a/internal/bundled/libs/lib.es2016.intl.d.ts b/internal/bundled/libs/lib.es2016.intl.d.ts index 7af6efc2b0..83ca380f0b 100644 --- a/internal/bundled/libs/lib.es2016.intl.d.ts +++ b/internal/bundled/libs/lib.es2016.intl.d.ts @@ -22,7 +22,7 @@ declare namespace Intl { * the canonical locale names. Duplicates will be omitted and elements * will be validated as structurally valid language tags. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/getCanonicalLocales) + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/getCanonicalLocales) * * @param locale A list of String values for which to get the canonical locale names * @returns An array containing the canonical and validated locale names. diff --git a/internal/bundled/libs/lib.es2017.arraybuffer.d.ts b/internal/bundled/libs/lib.es2017.arraybuffer.d.ts new file mode 100644 index 0000000000..e2f00b8340 --- /dev/null +++ b/internal/bundled/libs/lib.es2017.arraybuffer.d.ts @@ -0,0 +1,21 @@ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + + +/// + +interface ArrayBufferConstructor { + new (): ArrayBuffer; +} diff --git a/internal/bundled/libs/lib.es2017.d.ts b/internal/bundled/libs/lib.es2017.d.ts index e0bd4eeb72..234a01f956 100644 --- a/internal/bundled/libs/lib.es2017.d.ts +++ b/internal/bundled/libs/lib.es2017.d.ts @@ -17,9 +17,10 @@ and limitations under the License. /// /// +/// +/// +/// /// /// /// -/// /// -/// diff --git a/internal/bundled/libs/lib.es2017.sharedmemory.d.ts b/internal/bundled/libs/lib.es2017.sharedmemory.d.ts index 5c7d784ebf..89b703982b 100644 --- a/internal/bundled/libs/lib.es2017.sharedmemory.d.ts +++ b/internal/bundled/libs/lib.es2017.sharedmemory.d.ts @@ -28,14 +28,14 @@ interface SharedArrayBuffer { /** * Returns a section of an SharedArrayBuffer. */ - slice(begin: number, end?: number): SharedArrayBuffer; + slice(begin?: number, end?: number): SharedArrayBuffer; readonly [Symbol.species]: SharedArrayBuffer; readonly [Symbol.toStringTag]: "SharedArrayBuffer"; } interface SharedArrayBufferConstructor { readonly prototype: SharedArrayBuffer; - new (byteLength: number): SharedArrayBuffer; + new (byteLength?: number): SharedArrayBuffer; } declare var SharedArrayBuffer: SharedArrayBufferConstructor; diff --git a/internal/bundled/libs/lib.es2020.bigint.d.ts b/internal/bundled/libs/lib.es2020.bigint.d.ts index 0cb1630289..187772ec62 100644 --- a/internal/bundled/libs/lib.es2020.bigint.d.ts +++ b/internal/bundled/libs/lib.es2020.bigint.d.ts @@ -20,7 +20,7 @@ and limitations under the License. interface BigIntToLocaleStringOptions { /** - * The locale matching algorithm to use.The default is "best fit". For information about this option, see the {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation Intl page}. + * The locale matching algorithm to use.The default is "best fit". For information about this option, see the {@link https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation Intl page}. */ localeMatcher?: string; /** diff --git a/internal/bundled/libs/lib.es2020.intl.d.ts b/internal/bundled/libs/lib.es2020.intl.d.ts index 53cdacb69f..d78b640887 100644 --- a/internal/bundled/libs/lib.es2020.intl.d.ts +++ b/internal/bundled/libs/lib.es2020.intl.d.ts @@ -23,14 +23,14 @@ declare namespace Intl { * * For example: "fa", "es-MX", "zh-Hant-TW". * - * See [MDN - Intl - locales argument](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument). + * See [MDN - Intl - locales argument](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument). */ type UnicodeBCP47LocaleIdentifier = string; /** * Unit to use in the relative time internationalized message. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format#Parameters). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format#Parameters). */ type RelativeTimeFormatUnit = | "year" @@ -57,7 +57,7 @@ declare namespace Intl { * but `formatToParts` only outputs singular (e.g. "day") not plural (e.g. * "days"). * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts#Using_formatToParts). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts#Using_formatToParts). */ type RelativeTimeFormatUnitSingular = | "year" @@ -79,21 +79,21 @@ declare namespace Intl { /** * The format of output message. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters). */ type RelativeTimeFormatNumeric = "always" | "auto"; /** * The length of the internationalized message. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters). */ type RelativeTimeFormatStyle = "long" | "short" | "narrow"; /** * The locale or locales to use * - * See [MDN - Intl - locales argument](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument). + * See [MDN - Intl - locales argument](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument). */ type LocalesArgument = UnicodeBCP47LocaleIdentifier | Locale | readonly (UnicodeBCP47LocaleIdentifier | Locale)[] | undefined; @@ -101,7 +101,7 @@ declare namespace Intl { * An object with some or all of properties of `options` parameter * of `Intl.RelativeTimeFormat` constructor. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters). */ interface RelativeTimeFormatOptions { /** The locale matching algorithm to use. For information about this option, see [Intl page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation). */ @@ -117,7 +117,7 @@ declare namespace Intl { * and formatting options computed during initialization * of the `Intl.RelativeTimeFormat` object * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions#Description). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions#Description). */ interface ResolvedRelativeTimeFormatOptions { locale: UnicodeBCP47LocaleIdentifier; @@ -130,7 +130,7 @@ declare namespace Intl { * An object representing the relative time format in parts * that can be used for custom locale-aware formatting. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts#Using_formatToParts). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts#Using_formatToParts). */ type RelativeTimeFormatPart = | { @@ -166,7 +166,7 @@ declare namespace Intl { * * @returns {string} Internationalized relative time message as string * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format). */ format(value: number, unit: RelativeTimeFormatUnit): string; @@ -179,14 +179,14 @@ declare namespace Intl { * * @throws `RangeError` if `unit` was given something other than `unit` possible values * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts). */ formatToParts(value: number, unit: RelativeTimeFormatUnit): RelativeTimeFormatPart[]; /** * Provides access to the locale and options computed during initialization of this `Intl.RelativeTimeFormat` object. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions). */ resolvedOptions(): ResolvedRelativeTimeFormatOptions; } @@ -195,22 +195,22 @@ declare namespace Intl { * The [`Intl.RelativeTimeFormat`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat) * object is a constructor for objects that enable language-sensitive relative time formatting. * - * [Compatibility](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat#Browser_compatibility). + * [Compatibility](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat#Browser_compatibility). */ const RelativeTimeFormat: { /** - * Creates [Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat) objects + * Creates [Intl.RelativeTimeFormat](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat) objects * * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings. * For the general form and interpretation of the locales argument, - * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). + * see the [`Intl` page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). * - * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters) + * @param options - An [object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters) * with some or all of options of `RelativeTimeFormatOptions`. * - * @returns [Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat) object. + * @returns [Intl.RelativeTimeFormat](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat) object. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat). */ new ( locales?: LocalesArgument, @@ -224,16 +224,16 @@ declare namespace Intl { * * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings. * For the general form and interpretation of the locales argument, - * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). + * see the [`Intl` page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). * - * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters) + * @param options - An [object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters) * with some or all of options of the formatting. * * @returns An array containing those of the provided locales * that are supported in date and time formatting * without having to fall back to the runtime's default locale. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/supportedLocalesOf). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/supportedLocalesOf). */ supportedLocalesOf( locales?: LocalesArgument, @@ -336,18 +336,18 @@ declare namespace Intl { } /** - * Constructor creates [Intl.Locale](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale) + * Constructor creates [Intl.Locale](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale) * objects * * @param tag - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646). * For the general form and interpretation of the locales argument, - * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). + * see the [`Intl` page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). * - * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/Locale#Parameters) with some or all of options of the locale. + * @param options - An [object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/Locale#Parameters) with some or all of options of the locale. * - * @returns [Intl.Locale](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale) object. + * @returns [Intl.Locale](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale) object. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale). */ const Locale: { new (tag: UnicodeBCP47LocaleIdentifier | Locale, options?: LocaleOptions): Locale; @@ -388,7 +388,7 @@ declare namespace Intl { interface DisplayNames { /** * Receives a code and returns a string based on the locale and options provided when instantiating - * [`Intl.DisplayNames()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames) + * [`Intl.DisplayNames()`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames) * * @param code The `code` to provide depends on the `type` passed to display name during creation: * - If the type is `"region"`, code should be either an [ISO-3166 two letters region code](https://www.iso.org/iso-3166-country-codes.html), @@ -399,35 +399,35 @@ declare namespace Intl { * `languageCode` is either a two letters ISO 639-1 language code or a three letters ISO 639-2 language code. * - If the type is `"currency"`, code should be a [3-letter ISO 4217 currency code](https://www.iso.org/iso-4217-currency-codes.html). * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/of). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/of). */ of(code: string): string | undefined; /** * Returns a new object with properties reflecting the locale and style formatting options computed during the construction of the current - * [`Intl/DisplayNames`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames) object. + * [`Intl/DisplayNames`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames) object. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/resolvedOptions). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/resolvedOptions). */ resolvedOptions(): ResolvedDisplayNamesOptions; } /** - * The [`Intl.DisplayNames()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames) + * The [`Intl.DisplayNames()`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames) * object enables the consistent translation of language, region and script display names. * - * [Compatibility](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames#browser_compatibility). + * [Compatibility](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames#browser_compatibility). */ const DisplayNames: { prototype: DisplayNames; /** * @param locales A string with a BCP 47 language tag, or an array of such strings. - * For the general form and interpretation of the `locales` argument, see the [Intl](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation) + * For the general form and interpretation of the `locales` argument, see the [Intl](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation) * page. * * @param options An object for setting up a display name. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/DisplayNames). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/DisplayNames). */ new (locales: LocalesArgument, options: DisplayNamesOptions): DisplayNames; @@ -435,14 +435,14 @@ declare namespace Intl { * Returns an array containing those of the provided locales that are supported in display names without having to fall back to the runtime's default locale. * * @param locales A string with a BCP 47 language tag, or an array of such strings. - * For the general form and interpretation of the `locales` argument, see the [Intl](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation) + * For the general form and interpretation of the `locales` argument, see the [Intl](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation) * page. * * @param options An object with a locale matcher. * * @returns An array of strings representing a subset of the given locale tags that are supported in display names without having to fall back to the runtime's default locale. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/supportedLocalesOf). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/supportedLocalesOf). */ supportedLocalesOf(locales?: LocalesArgument, options?: { localeMatcher?: RelativeTimeFormatLocaleMatcher; }): UnicodeBCP47LocaleIdentifier[]; }; diff --git a/internal/bundled/libs/lib.es2020.sharedmemory.d.ts b/internal/bundled/libs/lib.es2020.sharedmemory.d.ts index c563ab8c5a..35641a6426 100644 --- a/internal/bundled/libs/lib.es2020.sharedmemory.d.ts +++ b/internal/bundled/libs/lib.es2020.sharedmemory.d.ts @@ -16,6 +16,8 @@ and limitations under the License. /// +/// + interface Atomics { /** * Adds a value to the value at the given position in the array, returning the original value. diff --git a/internal/bundled/libs/lib.es2020.string.d.ts b/internal/bundled/libs/lib.es2020.string.d.ts index cdb38e0d86..4c2a4ded06 100644 --- a/internal/bundled/libs/lib.es2020.string.d.ts +++ b/internal/bundled/libs/lib.es2020.string.d.ts @@ -16,6 +16,8 @@ and limitations under the License. /// +/// +/// /// interface String { diff --git a/internal/bundled/libs/lib.es2021.intl.d.ts b/internal/bundled/libs/lib.es2021.intl.d.ts index ec90ad1b2c..a0fe4825e7 100644 --- a/internal/bundled/libs/lib.es2021.intl.d.ts +++ b/internal/bundled/libs/lib.es2021.intl.d.ts @@ -50,28 +50,28 @@ declare namespace Intl { /** * The locale matching algorithm to use. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters). */ type ListFormatLocaleMatcher = "lookup" | "best fit"; /** * The format of output message. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters). */ type ListFormatType = "conjunction" | "disjunction" | "unit"; /** * The length of the formatted message. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters). */ type ListFormatStyle = "long" | "short" | "narrow"; /** * An object with some or all properties of the `Intl.ListFormat` constructor `options` parameter. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters). */ interface ListFormatOptions { /** The locale matching algorithm to use. For information about this option, see [Intl page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation). */ @@ -92,26 +92,26 @@ declare namespace Intl { /** * Returns a string with a language-specific representation of the list. * - * @param list - An iterable object, such as an [Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array). + * @param list - An iterable object, such as an [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array). * * @throws `TypeError` if `list` includes something other than the possible values. * * @returns {string} A language-specific formatted string representing the elements of the list. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/format). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/format). */ format(list: Iterable): string; /** * Returns an Array of objects representing the different components that can be used to format a list of values in a locale-aware fashion. * - * @param list - An iterable object, such as an [Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array), to be formatted according to a locale. + * @param list - An iterable object, such as an [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array), to be formatted according to a locale. * * @throws `TypeError` if `list` includes something other than the possible values. * * @returns {{ type: "element" | "literal", value: string; }[]} An Array of components which contains the formatted parts from the list. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/formatToParts). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/formatToParts). */ formatToParts(list: Iterable): { type: "element" | "literal"; value: string; }[]; @@ -120,7 +120,7 @@ declare namespace Intl { * formatting options computed during the construction of the current * `Intl.ListFormat` object. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/resolvedOptions). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/resolvedOptions). */ resolvedOptions(): ResolvedListFormatOptions; } @@ -129,19 +129,19 @@ declare namespace Intl { prototype: ListFormat; /** - * Creates [Intl.ListFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat) objects that + * Creates [Intl.ListFormat](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat) objects that * enable language-sensitive list formatting. * * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings. * For the general form and interpretation of the `locales` argument, - * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). + * see the [`Intl` page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). * - * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters) + * @param options - An [object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters) * with some or all options of `ListFormatOptions`. * - * @returns [Intl.ListFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat) object. + * @returns [Intl.ListFormatOptions](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat) object. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat). */ new (locales?: LocalesArgument, options?: ListFormatOptions): ListFormat; @@ -151,15 +151,15 @@ declare namespace Intl { * * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings. * For the general form and interpretation of the `locales` argument, - * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). + * see the [`Intl` page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). * - * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/supportedLocalesOf#parameters). + * @param options - An [object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/supportedLocalesOf#parameters). * with some or all possible options. * * @returns An array of strings representing a subset of the given locale tags that are supported in list * formatting without having to fall back to the runtime's default locale. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/supportedLocalesOf). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/supportedLocalesOf). */ supportedLocalesOf(locales: LocalesArgument, options?: Pick): UnicodeBCP47LocaleIdentifier[]; }; diff --git a/internal/bundled/libs/lib.es2021.weakref.d.ts b/internal/bundled/libs/lib.es2021.weakref.d.ts index 48e76265a2..9e03365a20 100644 --- a/internal/bundled/libs/lib.es2021.weakref.d.ts +++ b/internal/bundled/libs/lib.es2021.weakref.d.ts @@ -16,6 +16,8 @@ and limitations under the License. /// +/// + interface WeakRef { readonly [Symbol.toStringTag]: "WeakRef"; diff --git a/internal/bundled/libs/lib.es2022.d.ts b/internal/bundled/libs/lib.es2022.d.ts index 2ae78aba3f..ca7cc91ac9 100644 --- a/internal/bundled/libs/lib.es2022.d.ts +++ b/internal/bundled/libs/lib.es2022.d.ts @@ -21,6 +21,5 @@ and limitations under the License. /// /// /// -/// -/// /// +/// diff --git a/internal/bundled/libs/lib.es2022.error.d.ts b/internal/bundled/libs/lib.es2022.error.d.ts index 782c485e7c..5e02521b42 100644 --- a/internal/bundled/libs/lib.es2022.error.d.ts +++ b/internal/bundled/libs/lib.es2022.error.d.ts @@ -16,6 +16,8 @@ and limitations under the License. /// +/// + interface ErrorOptions { cause?: unknown; } diff --git a/internal/bundled/libs/lib.es2022.intl.d.ts b/internal/bundled/libs/lib.es2022.intl.d.ts index cd8eb11408..3f4a2ca1e4 100644 --- a/internal/bundled/libs/lib.es2022.intl.d.ts +++ b/internal/bundled/libs/lib.es2022.intl.d.ts @@ -20,7 +20,7 @@ declare namespace Intl { /** * An object with some or all properties of the `Intl.Segmenter` constructor `options` parameter. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/Segmenter#parameters) + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/Segmenter#parameters) */ interface SegmenterOptions { /** The locale matching algorithm to use. For information about this option, see [Intl page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation). */ @@ -84,14 +84,14 @@ declare namespace Intl { * * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings. * For the general form and interpretation of the `locales` argument, - * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). + * see the [`Intl` page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). * - * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/Segmenter#parameters) + * @param options - An [object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/Segmenter#parameters) * with some or all options of `SegmenterOptions`. * - * @returns [Intl.Segmenter](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segments) object. + * @returns [Intl.Segmenter](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segments) object. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter). + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter). */ new (locales?: LocalesArgument, options?: SegmenterOptions): Segmenter; @@ -100,19 +100,19 @@ declare namespace Intl { * * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings. * For the general form and interpretation of the `locales` argument, - * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). + * see the [`Intl` page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation). * - * @param options An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/supportedLocalesOf#parameters). + * @param options An [object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/supportedLocalesOf#parameters). * with some or all possible options. * - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/supportedLocalesOf) + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/supportedLocalesOf) */ supportedLocalesOf(locales: LocalesArgument, options?: Pick): UnicodeBCP47LocaleIdentifier[]; }; /** * Returns a sorted array of the supported collation, calendar, currency, numbering system, timezones, and units by the implementation. - * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/supportedValuesOf) + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/supportedValuesOf) * * @param key A string indicating the category of values to return. * @returns A sorted array of the supported values. diff --git a/internal/bundled/libs/lib.es2024.arraybuffer.d.ts b/internal/bundled/libs/lib.es2024.arraybuffer.d.ts new file mode 100644 index 0000000000..2a5623d90c --- /dev/null +++ b/internal/bundled/libs/lib.es2024.arraybuffer.d.ts @@ -0,0 +1,65 @@ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + + +/// + +interface ArrayBuffer { + /** + * If this ArrayBuffer is resizable, returns the maximum byte length given during construction; returns the byte length if not. + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/maxByteLength) + */ + get maxByteLength(): number; + + /** + * Returns true if this ArrayBuffer can be resized. + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/resizable) + */ + get resizable(): boolean; + + /** + * Resizes the ArrayBuffer to the specified size (in bytes). + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/resize) + */ + resize(newByteLength?: number): void; + + /** + * Returns a boolean indicating whether or not this buffer has been detached (transferred). + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/detached) + */ + get detached(): boolean; + + /** + * Creates a new ArrayBuffer with the same byte content as this buffer, then detaches this buffer. + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/transfer) + */ + transfer(newByteLength?: number): ArrayBuffer; + + /** + * Creates a new non-resizable ArrayBuffer with the same byte content as this buffer, then detaches this buffer. + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/transferToFixedLength) + */ + transferToFixedLength(newByteLength?: number): ArrayBuffer; +} + +interface ArrayBufferConstructor { + new (byteLength: number, options?: { maxByteLength?: number; }): ArrayBuffer; +} diff --git a/internal/bundled/libs/lib.es2024.collection.d.ts b/internal/bundled/libs/lib.es2024.collection.d.ts new file mode 100644 index 0000000000..a48fd93d5f --- /dev/null +++ b/internal/bundled/libs/lib.es2024.collection.d.ts @@ -0,0 +1,29 @@ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + + +/// + +interface MapConstructor { + /** + * Groups members of an iterable according to the return value of the passed callback. + * @param items An iterable. + * @param keySelector A callback which will be invoked for each item in items. + */ + groupBy( + items: Iterable, + keySelector: (item: T, index: number) => K, + ): Map; +} diff --git a/internal/bundled/libs/lib.es2024.d.ts b/internal/bundled/libs/lib.es2024.d.ts new file mode 100644 index 0000000000..44311afb00 --- /dev/null +++ b/internal/bundled/libs/lib.es2024.d.ts @@ -0,0 +1,26 @@ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + + +/// + +/// +/// +/// +/// +/// +/// +/// +/// diff --git a/internal/bundled/libs/lib.es2024.full.d.ts b/internal/bundled/libs/lib.es2024.full.d.ts new file mode 100644 index 0000000000..b8c6e74867 --- /dev/null +++ b/internal/bundled/libs/lib.es2024.full.d.ts @@ -0,0 +1,24 @@ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + + +/// + +/// +/// +/// +/// +/// +/// diff --git a/internal/bundled/libs/lib.esnext.object.d.ts b/internal/bundled/libs/lib.es2024.object.d.ts similarity index 100% rename from internal/bundled/libs/lib.esnext.object.d.ts rename to internal/bundled/libs/lib.es2024.object.d.ts diff --git a/internal/bundled/libs/lib.esnext.promise.d.ts b/internal/bundled/libs/lib.es2024.promise.d.ts similarity index 100% rename from internal/bundled/libs/lib.esnext.promise.d.ts rename to internal/bundled/libs/lib.es2024.promise.d.ts diff --git a/internal/bundled/libs/lib.esnext.regexp.d.ts b/internal/bundled/libs/lib.es2024.regexp.d.ts similarity index 100% rename from internal/bundled/libs/lib.esnext.regexp.d.ts rename to internal/bundled/libs/lib.es2024.regexp.d.ts diff --git a/internal/bundled/libs/lib.es2022.sharedmemory.d.ts b/internal/bundled/libs/lib.es2024.sharedmemory.d.ts similarity index 67% rename from internal/bundled/libs/lib.es2022.sharedmemory.d.ts rename to internal/bundled/libs/lib.es2024.sharedmemory.d.ts index ea67b0081b..1d6bb455a9 100644 --- a/internal/bundled/libs/lib.es2022.sharedmemory.d.ts +++ b/internal/bundled/libs/lib.es2024.sharedmemory.d.ts @@ -16,6 +16,8 @@ and limitations under the License. /// +/// + interface Atomics { /** * A non-blocking, asynchronous version of wait which is usable on the main thread. @@ -37,3 +39,30 @@ interface Atomics { */ waitAsync(typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } + +interface SharedArrayBuffer { + /** + * Returns true if this SharedArrayBuffer can be grown. + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer/growable) + */ + get growable(): number; + + /** + * If this SharedArrayBuffer is growable, returns the maximum byte length given during construction; returns the byte length if not. + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer/maxByteLength) + */ + get maxByteLength(): number; + + /** + * Grows the SharedArrayBuffer to the specified size (in bytes). + * + * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer/grow) + */ + grow(newByteLength?: number): void; +} + +interface SharedArrayBufferConstructor { + new (byteLength: number, options?: { maxByteLength?: number; }): SharedArrayBuffer; +} diff --git a/internal/bundled/libs/lib.esnext.string.d.ts b/internal/bundled/libs/lib.es2024.string.d.ts similarity index 100% rename from internal/bundled/libs/lib.esnext.string.d.ts rename to internal/bundled/libs/lib.es2024.string.d.ts diff --git a/internal/bundled/libs/lib.es5.d.ts b/internal/bundled/libs/lib.es5.d.ts index c29d5acc7b..f0ff2f8656 100644 --- a/internal/bundled/libs/lib.es5.d.ts +++ b/internal/bundled/libs/lib.es5.d.ts @@ -1701,7 +1701,7 @@ interface ArrayBuffer { /** * Returns a section of an ArrayBuffer. */ - slice(begin: number, end?: number): ArrayBuffer; + slice(begin?: number, end?: number): ArrayBuffer; } /** diff --git a/internal/bundled/libs/lib.esnext.collection.d.ts b/internal/bundled/libs/lib.esnext.collection.d.ts index 1278a38f67..46b0b08951 100644 --- a/internal/bundled/libs/lib.esnext.collection.d.ts +++ b/internal/bundled/libs/lib.esnext.collection.d.ts @@ -16,17 +16,7 @@ and limitations under the License. /// -interface MapConstructor { - /** - * Groups members of an iterable according to the return value of the passed callback. - * @param items An iterable. - * @param keySelector A callback which will be invoked for each item in items. - */ - groupBy( - items: Iterable, - keySelector: (item: T, index: number) => K, - ): Map; -} +/// interface ReadonlySetLike { /** diff --git a/internal/bundled/libs/lib.esnext.d.ts b/internal/bundled/libs/lib.esnext.d.ts index e0217b6c60..37b5ea5ed6 100644 --- a/internal/bundled/libs/lib.esnext.d.ts +++ b/internal/bundled/libs/lib.esnext.d.ts @@ -16,14 +16,10 @@ and limitations under the License. /// -/// +/// /// /// /// -/// -/// /// /// -/// -/// /// diff --git a/internal/bundled/libs_generated.go b/internal/bundled/libs_generated.go index e232624310..79c5512b41 100644 --- a/internal/bundled/libs_generated.go +++ b/internal/bundled/libs_generated.go @@ -25,6 +25,7 @@ var LibNames = []string{ "lib.es2016.d.ts", "lib.es2016.full.d.ts", "lib.es2016.intl.d.ts", + "lib.es2017.arraybuffer.d.ts", "lib.es2017.d.ts", "lib.es2017.date.d.ts", "lib.es2017.full.d.ts", @@ -70,13 +71,21 @@ var LibNames = []string{ "lib.es2022.intl.d.ts", "lib.es2022.object.d.ts", "lib.es2022.regexp.d.ts", - "lib.es2022.sharedmemory.d.ts", "lib.es2022.string.d.ts", "lib.es2023.array.d.ts", "lib.es2023.collection.d.ts", "lib.es2023.d.ts", "lib.es2023.full.d.ts", "lib.es2023.intl.d.ts", + "lib.es2024.arraybuffer.d.ts", + "lib.es2024.collection.d.ts", + "lib.es2024.d.ts", + "lib.es2024.full.d.ts", + "lib.es2024.object.d.ts", + "lib.es2024.promise.d.ts", + "lib.es2024.regexp.d.ts", + "lib.es2024.sharedmemory.d.ts", + "lib.es2024.string.d.ts", "lib.es5.d.ts", "lib.es6.d.ts", "lib.esnext.array.d.ts", @@ -87,10 +96,6 @@ var LibNames = []string{ "lib.esnext.full.d.ts", "lib.esnext.intl.d.ts", "lib.esnext.iterator.d.ts", - "lib.esnext.object.d.ts", - "lib.esnext.promise.d.ts", - "lib.esnext.regexp.d.ts", - "lib.esnext.string.d.ts", "lib.scripthost.d.ts", "lib.webworker.asynciterable.d.ts", "lib.webworker.d.ts", diff --git a/internal/checker/utilities.go b/internal/checker/utilities.go index 0a69fd39f5..190b1f6073 100644 --- a/internal/checker/utilities.go +++ b/internal/checker/utilities.go @@ -1886,11 +1886,45 @@ var getFeatureMap = sync.OnceValue(func() map[string][]FeatureMapEntry { "AsyncIterator": { {lib: "es2015", props: []string{}}, }, + "ArrayBuffer": { + {lib: "es2024", props: []string{ + "maxByteLength", + "resizable", + "resize", + "detached", + "transfer", + "transferToFixedLength", + }}, + }, "Atomics": { - {lib: "es2017", props: []string{}}, + {lib: "es2017", props: []string{ + "add", + "and", + "compareExchange", + "exchange", + "isLockFree", + "load", + "or", + "store", + "sub", + "wait", + "notify", + "xor", + }}, + {lib: "es2024", props: []string{ + "waitAsync", + }}, }, "SharedArrayBuffer": { - {lib: "es2017", props: []string{}}, + {lib: "es2017", props: []string{ + "byteLength", + "slice", + }}, + {lib: "es2024", props: []string{ + "growable", + "maxByteLength", + "grow", + }}, }, "AsyncIterable": { {lib: "es2018", props: []string{}}, @@ -1907,6 +1941,7 @@ var getFeatureMap = sync.OnceValue(func() map[string][]FeatureMapEntry { "RegExp": { {lib: "es2015", props: []string{"flags", "sticky", "unicode"}}, {lib: "es2018", props: []string{"dotAll"}}, + {lib: "es2024", props: []string{"unicodeSets"}}, }, "Reflect": { {lib: "es2015", props: []string{"apply", "construct", "defineProperty", "deleteProperty", "get", "getOwnPropertyDescriptor", "getPrototypeOf", "has", "isExtensible", "ownKeys", "preventExtensions", "set", "setPrototypeOf"}}, @@ -1920,6 +1955,7 @@ var getFeatureMap = sync.OnceValue(func() map[string][]FeatureMapEntry { {lib: "es2017", props: []string{"values", "entries", "getOwnPropertyDescriptors"}}, {lib: "es2019", props: []string{"fromEntries"}}, {lib: "es2022", props: []string{"hasOwn"}}, + {lib: "es2024", props: []string{"groupBy"}}, }, "NumberConstructor": { {lib: "es2015", props: []string{"isFinite", "isInteger", "isNaN", "isSafeInteger", "parseFloat", "parseInt"}}, @@ -1930,13 +1966,26 @@ var getFeatureMap = sync.OnceValue(func() map[string][]FeatureMapEntry { "Map": { {lib: "es2015", props: []string{"entries", "keys", "values"}}, }, + "MapConstructor": { + {lib: "es2024", props: []string{"groupBy"}}, + }, "Set": { {lib: "es2015", props: []string{"entries", "keys", "values"}}, + {lib: "esnext", props: []string{ + "union", + "intersection", + "difference", + "symmetricDifference", + "isSubsetOf", + "isSupersetOf", + "isDisjointFrom", + }}, }, "PromiseConstructor": { {lib: "es2015", props: []string{"all", "race", "reject", "resolve"}}, {lib: "es2020", props: []string{"allSettled"}}, {lib: "es2021", props: []string{"any"}}, + {lib: "es2024", props: []string{"withResolvers"}}, }, "Symbol": { {lib: "es2015", props: []string{"for", "keyFor"}}, @@ -1955,7 +2004,7 @@ var getFeatureMap = sync.OnceValue(func() map[string][]FeatureMapEntry { {lib: "es2020", props: []string{"matchAll"}}, {lib: "es2021", props: []string{"replaceAll"}}, {lib: "es2022", props: []string{"at"}}, - {lib: "esnext", props: []string{"isWellFormed", "toWellFormed"}}, + {lib: "es2024", props: []string{"isWellFormed", "toWellFormed"}}, }, "StringConstructor": { {lib: "es2015", props: []string{"fromCodePoint", "raw"}}, @@ -1981,6 +2030,11 @@ var getFeatureMap = sync.OnceValue(func() map[string][]FeatureMapEntry { }, "SymbolConstructor": { {lib: "es2020", props: []string{"matchAll"}}, + {lib: "esnext", props: []string{ + "metadata", + "dispose", + "asyncDispose", + }}, }, "DataView": { {lib: "es2020", props: []string{"setBigInt64", "setBigUint64", "getBigInt64", "getBigUint64"}}, diff --git a/internal/compiler/program_test.go b/internal/compiler/program_test.go index 93b08faaab..aa5ebf177e 100644 --- a/internal/compiler/program_test.go +++ b/internal/compiler/program_test.go @@ -34,6 +34,7 @@ var esnextLibs = []string{ "lib.es2021.d.ts", "lib.es2022.d.ts", "lib.es2023.d.ts", + "lib.es2024.d.ts", "lib.esnext.d.ts", "lib.dom.d.ts", "lib.dom.iterable.d.ts", @@ -51,6 +52,7 @@ var esnextLibs = []string{ "lib.es2015.symbol.wellknown.d.ts", "lib.es2016.array.include.d.ts", "lib.es2016.intl.d.ts", + "lib.es2017.arraybuffer.d.ts", "lib.es2017.date.d.ts", "lib.es2017.object.d.ts", "lib.es2017.sharedmemory.d.ts", @@ -83,21 +85,23 @@ var esnextLibs = []string{ "lib.es2022.error.d.ts", "lib.es2022.intl.d.ts", "lib.es2022.object.d.ts", - "lib.es2022.sharedmemory.d.ts", "lib.es2022.string.d.ts", "lib.es2022.regexp.d.ts", "lib.es2023.array.d.ts", "lib.es2023.collection.d.ts", "lib.es2023.intl.d.ts", + "lib.es2024.arraybuffer.d.ts", + "lib.es2024.collection.d.ts", + "lib.es2024.object.d.ts", + "lib.es2024.promise.d.ts", + "lib.es2024.regexp.d.ts", + "lib.es2024.sharedmemory.d.ts", + "lib.es2024.string.d.ts", "lib.esnext.array.d.ts", "lib.esnext.collection.d.ts", "lib.esnext.intl.d.ts", "lib.esnext.disposable.d.ts", - "lib.esnext.string.d.ts", - "lib.esnext.promise.d.ts", "lib.esnext.decorators.d.ts", - "lib.esnext.object.d.ts", - "lib.esnext.regexp.d.ts", "lib.esnext.iterator.d.ts", "lib.decorators.d.ts", "lib.decorators.legacy.d.ts", diff --git a/internal/core/compileroptions.go b/internal/core/compileroptions.go index b6d91351bc..abd3294021 100644 --- a/internal/core/compileroptions.go +++ b/internal/core/compileroptions.go @@ -400,6 +400,7 @@ const ( ScriptTargetES2021 ScriptTarget = 8 ScriptTargetES2022 ScriptTarget = 9 ScriptTargetES2023 ScriptTarget = 10 + ScriptTargetES2024 ScriptTarget = 11 ScriptTargetESNext ScriptTarget = 99 ScriptTargetJSON ScriptTarget = 100 ScriptTargetLatest ScriptTarget = ScriptTargetESNext diff --git a/internal/core/compileroptions_stringer_generated.go b/internal/core/compileroptions_stringer_generated.go index add7adb822..5f8705a9df 100644 --- a/internal/core/compileroptions_stringer_generated.go +++ b/internal/core/compileroptions_stringer_generated.go @@ -64,24 +64,25 @@ func _() { _ = x[ScriptTargetES2021-8] _ = x[ScriptTargetES2022-9] _ = x[ScriptTargetES2023-10] + _ = x[ScriptTargetES2024-11] _ = x[ScriptTargetESNext-99] _ = x[ScriptTargetJSON-100] _ = x[ScriptTargetLatest-99] } const ( - _ScriptTarget_name_0 = "ScriptTargetNoneScriptTargetES5ScriptTargetES2015ScriptTargetES2016ScriptTargetES2017ScriptTargetES2018ScriptTargetES2019ScriptTargetES2020ScriptTargetES2021ScriptTargetES2022ScriptTargetES2023" + _ScriptTarget_name_0 = "ScriptTargetNoneScriptTargetES5ScriptTargetES2015ScriptTargetES2016ScriptTargetES2017ScriptTargetES2018ScriptTargetES2019ScriptTargetES2020ScriptTargetES2021ScriptTargetES2022ScriptTargetES2023ScriptTargetES2024" _ScriptTarget_name_1 = "ScriptTargetESNextScriptTargetJSON" ) var ( - _ScriptTarget_index_0 = [...]uint8{0, 16, 31, 49, 67, 85, 103, 121, 139, 157, 175, 193} + _ScriptTarget_index_0 = [...]uint8{0, 16, 31, 49, 67, 85, 103, 121, 139, 157, 175, 193, 211} _ScriptTarget_index_1 = [...]uint8{0, 18, 34} ) func (i ScriptTarget) String() string { switch { - case 0 <= i && i <= 10: + case 0 <= i && i <= 11: return _ScriptTarget_name_0[_ScriptTarget_index_0[i]:_ScriptTarget_index_0[i+1]] case 99 <= i && i <= 100: i -= 99 diff --git a/internal/tsoptions/enummaps.go b/internal/tsoptions/enummaps.go index 3720220b6b..8c960d806e 100644 --- a/internal/tsoptions/enummaps.go +++ b/internal/tsoptions/enummaps.go @@ -22,6 +22,7 @@ var libMap = collections.NewOrderedMapFromList([]collections.MapEntry[string, an {Key: "es2021", Value: "lib.es2021.d.ts"}, {Key: "es2022", Value: "lib.es2022.d.ts"}, {Key: "es2023", Value: "lib.es2023.d.ts"}, + {Key: "es2024", Value: "lib.es2024.d.ts"}, {Key: "esnext", Value: "lib.esnext.d.ts"}, // Host only {Key: "dom", Value: "lib.dom.d.ts"}, @@ -44,6 +45,7 @@ var libMap = collections.NewOrderedMapFromList([]collections.MapEntry[string, an {Key: "es2015.symbol.wellknown", Value: "lib.es2015.symbol.wellknown.d.ts"}, {Key: "es2016.array.include", Value: "lib.es2016.array.include.d.ts"}, {Key: "es2016.intl", Value: "lib.es2016.intl.d.ts"}, + {Key: "es2017.arraybuffer", Value: "lib.es2017.arraybuffer.d.ts"}, {Key: "es2017.date", Value: "lib.es2017.date.d.ts"}, {Key: "es2017.object", Value: "lib.es2017.object.d.ts"}, {Key: "es2017.sharedmemory", Value: "lib.es2017.sharedmemory.d.ts"}, @@ -76,12 +78,18 @@ var libMap = collections.NewOrderedMapFromList([]collections.MapEntry[string, an {Key: "es2022.error", Value: "lib.es2022.error.d.ts"}, {Key: "es2022.intl", Value: "lib.es2022.intl.d.ts"}, {Key: "es2022.object", Value: "lib.es2022.object.d.ts"}, - {Key: "es2022.sharedmemory", Value: "lib.es2022.sharedmemory.d.ts"}, {Key: "es2022.string", Value: "lib.es2022.string.d.ts"}, {Key: "es2022.regexp", Value: "lib.es2022.regexp.d.ts"}, {Key: "es2023.array", Value: "lib.es2023.array.d.ts"}, {Key: "es2023.collection", Value: "lib.es2023.collection.d.ts"}, {Key: "es2023.intl", Value: "lib.es2023.intl.d.ts"}, + {Key: "es2024.arraybuffer", Value: "lib.es2024.arraybuffer.d.ts"}, + {Key: "es2024.collection", Value: "lib.es2024.collection.d.ts"}, + {Key: "es2024.object", Value: "lib.es2024.object.d.ts"}, + {Key: "es2024.promise", Value: "lib.es2024.promise.d.ts"}, + {Key: "es2024.regexp", Value: "lib.es2024.regexp.d.ts"}, + {Key: "es2024.sharedmemory", Value: "lib.es2024.sharedmemory.d.ts"}, + {Key: "es2024.string", Value: "lib.es2024.string.d.ts"}, {Key: "esnext.array", Value: "lib.es2023.array.d.ts"}, {Key: "esnext.collection", Value: "lib.esnext.collection.d.ts"}, {Key: "esnext.symbol", Value: "lib.es2019.symbol.d.ts"}, @@ -90,13 +98,13 @@ var libMap = collections.NewOrderedMapFromList([]collections.MapEntry[string, an {Key: "esnext.disposable", Value: "lib.esnext.disposable.d.ts"}, {Key: "esnext.bigint", Value: "lib.es2020.bigint.d.ts"}, {Key: "esnext.string", Value: "lib.es2022.string.d.ts"}, - {Key: "esnext.promise", Value: "lib.esnext.promise.d.ts"}, + {Key: "esnext.promise", Value: "lib.es2024.promise.d.ts"}, {Key: "esnext.weakref", Value: "lib.es2021.weakref.d.ts"}, {Key: "esnext.decorators", Value: "lib.esnext.decorators.d.ts"}, - {Key: "esnext.object", Value: "lib.esnext.object.d.ts"}, + {Key: "esnext.object", Value: "lib.es2024.object.d.ts"}, {Key: "esnext.array", Value: "lib.esnext.array.d.ts"}, - {Key: "esnext.regexp", Value: "lib.esnext.regexp.d.ts"}, - {Key: "esnext.string", Value: "lib.esnext.string.d.ts"}, + {Key: "esnext.regexp", Value: "lib.es2024.regexp.d.ts"}, + {Key: "esnext.string", Value: "lib.es2024.string.d.ts"}, {Key: "esnext.iterator", Value: "lib.esnext.iterator.d.ts"}, {Key: "decorators", Value: "lib.decorators.d.ts"}, {Key: "decorators.legacy", Value: "lib.decorators.legacy.d.ts"}, @@ -142,7 +150,7 @@ var targetOptionMap = collections.NewOrderedMapFromList([]collections.MapEntry[s {Key: "es2021", Value: core.ScriptTargetES2021}, {Key: "es2022", Value: core.ScriptTargetES2022}, {Key: "es2023", Value: core.ScriptTargetES2023}, - // {"es2024", string(core.ScriptTargetES2024}, + {Key: "es2024", Value: core.ScriptTargetES2024}, {Key: "esnext", Value: core.ScriptTargetESNext}, }) @@ -183,6 +191,7 @@ var newLineOptionMap = collections.NewOrderedMapFromList([]collections.MapEntry[ var targetToLibMap = map[core.ScriptTarget]string{ core.ScriptTargetESNext: "lib.esnext.full.d.ts", + core.ScriptTargetES2024: "lib.es2024.full.d.ts", core.ScriptTargetES2023: "lib.es2023.full.d.ts", core.ScriptTargetES2022: "lib.es2022.full.d.ts", core.ScriptTargetES2021: "lib.es2021.full.d.ts", diff --git a/testdata/baselines/reference/config/tsconfigParsing/reports errors for wrong type option and invalid enum value with jsonSourceFile api.js b/testdata/baselines/reference/config/tsconfigParsing/reports errors for wrong type option and invalid enum value with jsonSourceFile api.js index 10a64ebb70..9fabe67865 100644 --- a/testdata/baselines/reference/config/tsconfigParsing/reports errors for wrong type option and invalid enum value with jsonSourceFile api.js +++ b/testdata/baselines/reference/config/tsconfigParsing/reports errors for wrong type option and invalid enum value with jsonSourceFile api.js @@ -21,7 +21,7 @@ CompilerOptions:: FileNames:: /app.ts Errors:: -tsconfig.json:3:15 - error TS6046: Argument for '--target' option must be: 'es5', 'es6', 'es2015', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'esnext'. +tsconfig.json:3:15 - error TS6046: Argument for '--target' option must be: 'es5', 'es6', 'es2015', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'esnext'. 3 "target": "invalid value",    ~~~~~~~~~~~~~~~ diff --git a/testdata/baselines/reference/submodule/compiler/mapGroupBy.symbols b/testdata/baselines/reference/submodule/compiler/mapGroupBy.symbols index 940e6bbb8e..a626373f79 100644 --- a/testdata/baselines/reference/submodule/compiler/mapGroupBy.symbols +++ b/testdata/baselines/reference/submodule/compiler/mapGroupBy.symbols @@ -3,17 +3,17 @@ === mapGroupBy.ts === const basic = Map.groupBy([0, 2, 8], x => x < 5 ? 'small' : 'large'); >basic : Symbol(basic, Decl(mapGroupBy.ts, 0, 5)) ->Map.groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +>Map.groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >Map : Symbol(Map, Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) ->groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +>groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >x : Symbol(x, Decl(mapGroupBy.ts, 0, 36)) >x : Symbol(x, Decl(mapGroupBy.ts, 0, 36)) const chars = Map.groupBy('a string', c => c); >chars : Symbol(chars, Decl(mapGroupBy.ts, 2, 5)) ->Map.groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +>Map.groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >Map : Symbol(Map, Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) ->groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +>groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >c : Symbol(c, Decl(mapGroupBy.ts, 2, 37)) >c : Symbol(c, Decl(mapGroupBy.ts, 2, 37)) @@ -30,9 +30,9 @@ const employees: Set = new Set(); const byRole = Map.groupBy(employees, x => x.role); >byRole : Symbol(byRole, Decl(mapGroupBy.ts, 6, 5)) ->Map.groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +>Map.groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >Map : Symbol(Map, Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) ->groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +>groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >employees : Symbol(employees, Decl(mapGroupBy.ts, 5, 5)) >x : Symbol(x, Decl(mapGroupBy.ts, 6, 37)) >x.role : Symbol(role, Decl(mapGroupBy.ts, 4, 31)) @@ -41,9 +41,9 @@ const byRole = Map.groupBy(employees, x => x.role); const byNonKey = Map.groupBy(employees, x => x); >byNonKey : Symbol(byNonKey, Decl(mapGroupBy.ts, 8, 5)) ->Map.groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +>Map.groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >Map : Symbol(Map, Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) ->groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +>groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >employees : Symbol(employees, Decl(mapGroupBy.ts, 5, 5)) >x : Symbol(x, Decl(mapGroupBy.ts, 8, 39)) >x : Symbol(x, Decl(mapGroupBy.ts, 8, 39)) diff --git a/testdata/baselines/reference/submodule/compiler/mapGroupBy.symbols.diff b/testdata/baselines/reference/submodule/compiler/mapGroupBy.symbols.diff index a1b0f8fe20..88bd79e9e7 100644 --- a/testdata/baselines/reference/submodule/compiler/mapGroupBy.symbols.diff +++ b/testdata/baselines/reference/submodule/compiler/mapGroupBy.symbols.diff @@ -4,21 +4,21 @@ === mapGroupBy.ts === const basic = Map.groupBy([0, 2, 8], x => x < 5 ? 'small' : 'large'); >basic : Symbol(basic, Decl(mapGroupBy.ts, 0, 5)) -->Map.groupBy : Symbol(MapConstructor.groupBy, Decl(lib.esnext.collection.d.ts, --, --)) -+>Map.groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +->Map.groupBy : Symbol(MapConstructor.groupBy, Decl(lib.es2024.collection.d.ts, --, --)) ++>Map.groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >Map : Symbol(Map, Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) -->groupBy : Symbol(MapConstructor.groupBy, Decl(lib.esnext.collection.d.ts, --, --)) -+>groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +->groupBy : Symbol(MapConstructor.groupBy, Decl(lib.es2024.collection.d.ts, --, --)) ++>groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >x : Symbol(x, Decl(mapGroupBy.ts, 0, 36)) >x : Symbol(x, Decl(mapGroupBy.ts, 0, 36)) const chars = Map.groupBy('a string', c => c); >chars : Symbol(chars, Decl(mapGroupBy.ts, 2, 5)) -->Map.groupBy : Symbol(MapConstructor.groupBy, Decl(lib.esnext.collection.d.ts, --, --)) -+>Map.groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +->Map.groupBy : Symbol(MapConstructor.groupBy, Decl(lib.es2024.collection.d.ts, --, --)) ++>Map.groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >Map : Symbol(Map, Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) -->groupBy : Symbol(MapConstructor.groupBy, Decl(lib.esnext.collection.d.ts, --, --)) -+>groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +->groupBy : Symbol(MapConstructor.groupBy, Decl(lib.es2024.collection.d.ts, --, --)) ++>groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >c : Symbol(c, Decl(mapGroupBy.ts, 2, 37)) >c : Symbol(c, Decl(mapGroupBy.ts, 2, 37)) @@ -26,11 +26,11 @@ const byRole = Map.groupBy(employees, x => x.role); >byRole : Symbol(byRole, Decl(mapGroupBy.ts, 6, 5)) -->Map.groupBy : Symbol(MapConstructor.groupBy, Decl(lib.esnext.collection.d.ts, --, --)) -+>Map.groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +->Map.groupBy : Symbol(MapConstructor.groupBy, Decl(lib.es2024.collection.d.ts, --, --)) ++>Map.groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >Map : Symbol(Map, Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) -->groupBy : Symbol(MapConstructor.groupBy, Decl(lib.esnext.collection.d.ts, --, --)) -+>groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +->groupBy : Symbol(MapConstructor.groupBy, Decl(lib.es2024.collection.d.ts, --, --)) ++>groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >employees : Symbol(employees, Decl(mapGroupBy.ts, 5, 5)) >x : Symbol(x, Decl(mapGroupBy.ts, 6, 37)) >x.role : Symbol(role, Decl(mapGroupBy.ts, 4, 31)) @@ -38,11 +38,11 @@ const byNonKey = Map.groupBy(employees, x => x); >byNonKey : Symbol(byNonKey, Decl(mapGroupBy.ts, 8, 5)) -->Map.groupBy : Symbol(MapConstructor.groupBy, Decl(lib.esnext.collection.d.ts, --, --)) -+>Map.groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +->Map.groupBy : Symbol(MapConstructor.groupBy, Decl(lib.es2024.collection.d.ts, --, --)) ++>Map.groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >Map : Symbol(Map, Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.collection.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) -->groupBy : Symbol(MapConstructor.groupBy, Decl(lib.esnext.collection.d.ts, --, --)) -+>groupBy : Symbol(groupBy, Decl(lib.esnext.collection.d.ts, --, --)) +->groupBy : Symbol(MapConstructor.groupBy, Decl(lib.es2024.collection.d.ts, --, --)) ++>groupBy : Symbol(groupBy, Decl(lib.es2024.collection.d.ts, --, --)) >employees : Symbol(employees, Decl(mapGroupBy.ts, 5, 5)) >x : Symbol(x, Decl(mapGroupBy.ts, 8, 39)) >x : Symbol(x, Decl(mapGroupBy.ts, 8, 39)) diff --git a/testdata/baselines/reference/submodule/compiler/objectGroupBy.errors.txt b/testdata/baselines/reference/submodule/compiler/objectGroupBy.errors.txt index b748dc72da..bc7d4049ec 100644 --- a/testdata/baselines/reference/submodule/compiler/objectGroupBy.errors.txt +++ b/testdata/baselines/reference/submodule/compiler/objectGroupBy.errors.txt @@ -13,5 +13,5 @@ objectGroupBy.ts(9,49): error TS2322: Type 'Employee' is not assignable to type const byNonKey = Object.groupBy(employees, x => x); ~ !!! error TS2322: Type 'Employee' is not assignable to type 'PropertyKey'. -!!! related TS6502 lib.esnext.object.d.ts:--:--: The expected type comes from the return type of this signature. +!!! related TS6502 lib.es2024.object.d.ts:--:--: The expected type comes from the return type of this signature. \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/compiler/objectGroupBy.symbols b/testdata/baselines/reference/submodule/compiler/objectGroupBy.symbols index dd02e4e6ef..ee924959b1 100644 --- a/testdata/baselines/reference/submodule/compiler/objectGroupBy.symbols +++ b/testdata/baselines/reference/submodule/compiler/objectGroupBy.symbols @@ -3,17 +3,17 @@ === objectGroupBy.ts === const basic = Object.groupBy([0, 2, 8], x => x < 5 ? 'small' : 'large'); >basic : Symbol(basic, Decl(objectGroupBy.ts, 0, 5)) ->Object.groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +>Object.groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --)) ->groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +>groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >x : Symbol(x, Decl(objectGroupBy.ts, 0, 39)) >x : Symbol(x, Decl(objectGroupBy.ts, 0, 39)) const chars = Object.groupBy('a string', c => c); >chars : Symbol(chars, Decl(objectGroupBy.ts, 2, 5)) ->Object.groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +>Object.groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --)) ->groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +>groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >c : Symbol(c, Decl(objectGroupBy.ts, 2, 40)) >c : Symbol(c, Decl(objectGroupBy.ts, 2, 40)) @@ -30,9 +30,9 @@ const employees: Set = new Set(); const byRole = Object.groupBy(employees, x => x.role); >byRole : Symbol(byRole, Decl(objectGroupBy.ts, 6, 5)) ->Object.groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +>Object.groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --)) ->groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +>groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >employees : Symbol(employees, Decl(objectGroupBy.ts, 5, 5)) >x : Symbol(x, Decl(objectGroupBy.ts, 6, 40)) >x.role : Symbol(role, Decl(objectGroupBy.ts, 4, 31)) @@ -41,9 +41,9 @@ const byRole = Object.groupBy(employees, x => x.role); const byNonKey = Object.groupBy(employees, x => x); >byNonKey : Symbol(byNonKey, Decl(objectGroupBy.ts, 8, 5)) ->Object.groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +>Object.groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --)) ->groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +>groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >employees : Symbol(employees, Decl(objectGroupBy.ts, 5, 5)) >x : Symbol(x, Decl(objectGroupBy.ts, 8, 42)) >x : Symbol(x, Decl(objectGroupBy.ts, 8, 42)) diff --git a/testdata/baselines/reference/submodule/compiler/objectGroupBy.symbols.diff b/testdata/baselines/reference/submodule/compiler/objectGroupBy.symbols.diff index 4d6be556e0..e1415f590b 100644 --- a/testdata/baselines/reference/submodule/compiler/objectGroupBy.symbols.diff +++ b/testdata/baselines/reference/submodule/compiler/objectGroupBy.symbols.diff @@ -4,21 +4,21 @@ === objectGroupBy.ts === const basic = Object.groupBy([0, 2, 8], x => x < 5 ? 'small' : 'large'); >basic : Symbol(basic, Decl(objectGroupBy.ts, 0, 5)) -->Object.groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.esnext.object.d.ts, --, --)) -+>Object.groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +->Object.groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.es2024.object.d.ts, --, --)) ++>Object.groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --)) -->groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.esnext.object.d.ts, --, --)) -+>groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +->groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.es2024.object.d.ts, --, --)) ++>groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >x : Symbol(x, Decl(objectGroupBy.ts, 0, 39)) >x : Symbol(x, Decl(objectGroupBy.ts, 0, 39)) const chars = Object.groupBy('a string', c => c); >chars : Symbol(chars, Decl(objectGroupBy.ts, 2, 5)) -->Object.groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.esnext.object.d.ts, --, --)) -+>Object.groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +->Object.groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.es2024.object.d.ts, --, --)) ++>Object.groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --)) -->groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.esnext.object.d.ts, --, --)) -+>groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +->groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.es2024.object.d.ts, --, --)) ++>groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >c : Symbol(c, Decl(objectGroupBy.ts, 2, 40)) >c : Symbol(c, Decl(objectGroupBy.ts, 2, 40)) @@ -26,11 +26,11 @@ const byRole = Object.groupBy(employees, x => x.role); >byRole : Symbol(byRole, Decl(objectGroupBy.ts, 6, 5)) -->Object.groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.esnext.object.d.ts, --, --)) -+>Object.groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +->Object.groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.es2024.object.d.ts, --, --)) ++>Object.groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --)) -->groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.esnext.object.d.ts, --, --)) -+>groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +->groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.es2024.object.d.ts, --, --)) ++>groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >employees : Symbol(employees, Decl(objectGroupBy.ts, 5, 5)) >x : Symbol(x, Decl(objectGroupBy.ts, 6, 40)) >x.role : Symbol(role, Decl(objectGroupBy.ts, 4, 31)) @@ -38,11 +38,11 @@ const byNonKey = Object.groupBy(employees, x => x); >byNonKey : Symbol(byNonKey, Decl(objectGroupBy.ts, 8, 5)) -->Object.groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.esnext.object.d.ts, --, --)) -+>Object.groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +->Object.groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.es2024.object.d.ts, --, --)) ++>Object.groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --)) -->groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.esnext.object.d.ts, --, --)) -+>groupBy : Symbol(groupBy, Decl(lib.esnext.object.d.ts, --, --)) +->groupBy : Symbol(ObjectConstructor.groupBy, Decl(lib.es2024.object.d.ts, --, --)) ++>groupBy : Symbol(groupBy, Decl(lib.es2024.object.d.ts, --, --)) >employees : Symbol(employees, Decl(objectGroupBy.ts, 5, 5)) >x : Symbol(x, Decl(objectGroupBy.ts, 8, 42)) >x : Symbol(x, Decl(objectGroupBy.ts, 8, 42)) diff --git a/testdata/baselines/reference/submodule/compiler/promiseWithResolvers.symbols b/testdata/baselines/reference/submodule/compiler/promiseWithResolvers.symbols index 80c92d94f6..886ad8e294 100644 --- a/testdata/baselines/reference/submodule/compiler/promiseWithResolvers.symbols +++ b/testdata/baselines/reference/submodule/compiler/promiseWithResolvers.symbols @@ -8,8 +8,8 @@ const { promise, resolve, reject } = Promise.withResolvers(); >promise : Symbol(promise, Decl(promiseWithResolvers.ts, 1, 7)) >resolve : Symbol(resolve, Decl(promiseWithResolvers.ts, 1, 16)) >reject : Symbol(reject, Decl(promiseWithResolvers.ts, 1, 25)) ->Promise.withResolvers : Symbol(withResolvers, Decl(lib.esnext.promise.d.ts, --, --)) +>Promise.withResolvers : Symbol(withResolvers, Decl(lib.es2024.promise.d.ts, --, --)) >Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2018.promise.d.ts, --, --)) ->withResolvers : Symbol(withResolvers, Decl(lib.esnext.promise.d.ts, --, --)) +>withResolvers : Symbol(withResolvers, Decl(lib.es2024.promise.d.ts, --, --)) >T : Symbol(T, Decl(promiseWithResolvers.ts, 0, 0)) diff --git a/testdata/baselines/reference/submodule/compiler/promiseWithResolvers.symbols.diff b/testdata/baselines/reference/submodule/compiler/promiseWithResolvers.symbols.diff index 1b2287977c..95b3dac30a 100644 --- a/testdata/baselines/reference/submodule/compiler/promiseWithResolvers.symbols.diff +++ b/testdata/baselines/reference/submodule/compiler/promiseWithResolvers.symbols.diff @@ -4,10 +4,10 @@ >promise : Symbol(promise, Decl(promiseWithResolvers.ts, 1, 7)) >resolve : Symbol(resolve, Decl(promiseWithResolvers.ts, 1, 16)) >reject : Symbol(reject, Decl(promiseWithResolvers.ts, 1, 25)) -->Promise.withResolvers : Symbol(PromiseConstructor.withResolvers, Decl(lib.esnext.promise.d.ts, --, --)) -+>Promise.withResolvers : Symbol(withResolvers, Decl(lib.esnext.promise.d.ts, --, --)) +->Promise.withResolvers : Symbol(PromiseConstructor.withResolvers, Decl(lib.es2024.promise.d.ts, --, --)) ++>Promise.withResolvers : Symbol(withResolvers, Decl(lib.es2024.promise.d.ts, --, --)) >Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.promise.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2018.promise.d.ts, --, --)) -->withResolvers : Symbol(PromiseConstructor.withResolvers, Decl(lib.esnext.promise.d.ts, --, --)) -+>withResolvers : Symbol(withResolvers, Decl(lib.esnext.promise.d.ts, --, --)) +->withResolvers : Symbol(PromiseConstructor.withResolvers, Decl(lib.es2024.promise.d.ts, --, --)) ++>withResolvers : Symbol(withResolvers, Decl(lib.es2024.promise.d.ts, --, --)) >T : Symbol(T, Decl(promiseWithResolvers.ts, 0, 0)) diff --git a/testdata/baselines/reference/submodule/compiler/regExpWithOpenBracketInCharClass(target=es2015).errors.txt.diff b/testdata/baselines/reference/submodule/compiler/regExpWithOpenBracketInCharClass(target=es2015).errors.txt.diff index 03ed84211a..5d6155a1bf 100644 --- a/testdata/baselines/reference/submodule/compiler/regExpWithOpenBracketInCharClass(target=es2015).errors.txt.diff +++ b/testdata/baselines/reference/submodule/compiler/regExpWithOpenBracketInCharClass(target=es2015).errors.txt.diff @@ -2,7 +2,7 @@ +++ new.regExpWithOpenBracketInCharClass(target=es2015).errors.txt @@= skipped -0, +-1 lines =@@ -regExpWithOpenBracketInCharClass.ts(4,7): error TS1005: ']' expected. --regExpWithOpenBracketInCharClass.ts(4,8): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regExpWithOpenBracketInCharClass.ts(4,8): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - - -==== regExpWithOpenBracketInCharClass.ts (2 errors) ==== @@ -13,7 +13,7 @@ - -!!! error TS1005: ']' expected. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - ]; - @@= skipped --1, +1 lines =@@ diff --git a/testdata/baselines/reference/submodule/compiler/regExpWithOpenBracketInCharClass(target=es5).errors.txt.diff b/testdata/baselines/reference/submodule/compiler/regExpWithOpenBracketInCharClass(target=es5).errors.txt.diff index 5fd00fde2b..9185f38770 100644 --- a/testdata/baselines/reference/submodule/compiler/regExpWithOpenBracketInCharClass(target=es5).errors.txt.diff +++ b/testdata/baselines/reference/submodule/compiler/regExpWithOpenBracketInCharClass(target=es5).errors.txt.diff @@ -3,7 +3,7 @@ @@= skipped -0, +-1 lines =@@ -regExpWithOpenBracketInCharClass.ts(3,8): error TS1501: This regular expression flag is only available when targeting 'es6' or later. -regExpWithOpenBracketInCharClass.ts(4,7): error TS1005: ']' expected. --regExpWithOpenBracketInCharClass.ts(4,8): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regExpWithOpenBracketInCharClass.ts(4,8): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - - -==== regExpWithOpenBracketInCharClass.ts (3 errors) ==== @@ -16,7 +16,7 @@ - -!!! error TS1005: ']' expected. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - ]; - @@= skipped --1, +1 lines =@@ diff --git a/testdata/baselines/reference/submodule/compiler/regularExpressionScanning(target=es2015).errors.txt.diff b/testdata/baselines/reference/submodule/compiler/regularExpressionScanning(target=es2015).errors.txt.diff index 9309791011..ea240237f9 100644 --- a/testdata/baselines/reference/submodule/compiler/regularExpressionScanning(target=es2015).errors.txt.diff +++ b/testdata/baselines/reference/submodule/compiler/regularExpressionScanning(target=es2015).errors.txt.diff @@ -1,7 +1,7 @@ --- old.regularExpressionScanning(target=es2015).errors.txt +++ new.regularExpressionScanning(target=es2015).errors.txt @@= skipped -0, +-1 lines =@@ --regularExpressionScanning.ts(3,7): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(3,7): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(3,9): error TS1501: This regular expression flag is only available when targeting 'es2018' or later. -regularExpressionScanning.ts(3,10): error TS1502: The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously. -regularExpressionScanning.ts(3,11): error TS1499: Unknown regular expression flag. @@ -75,7 +75,7 @@ -regularExpressionScanning.ts(21,62): error TS1529: Unknown Unicode property name or value. -regularExpressionScanning.ts(22,28): error TS1529: Unknown Unicode property name or value. -regularExpressionScanning.ts(22,62): error TS1529: Unknown Unicode property name or value. --regularExpressionScanning.ts(22,72): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(22,72): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(23,3): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. -regularExpressionScanning.ts(23,6): error TS1524: Unknown Unicode property name. -regularExpressionScanning.ts(23,28): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -111,7 +111,7 @@ -regularExpressionScanning.ts(25,57): error TS1531: '\P' must be followed by a Unicode property value expression enclosed in braces. -regularExpressionScanning.ts(25,62): error TS1527: Expected a Unicode property name or value. -regularExpressionScanning.ts(25,66): error TS1527: Expected a Unicode property name or value. --regularExpressionScanning.ts(25,67): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(25,67): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(26,3): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. -regularExpressionScanning.ts(26,6): error TS1528: Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set. -regularExpressionScanning.ts(26,16): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -127,7 +127,7 @@ -regularExpressionScanning.ts(28,19): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(28,31): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(28,47): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(28,59): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(28,59): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(31,3): error TS1512: '\c' must be followed by an ASCII letter. -regularExpressionScanning.ts(31,6): error TS1512: '\c' must be followed by an ASCII letter. -regularExpressionScanning.ts(31,15): error TS1512: '\c' must be followed by an ASCII letter. @@ -159,7 +159,7 @@ -regularExpressionScanning.ts(34,43): error TS1535: This character cannot be escaped in a regular expression. -regularExpressionScanning.ts(34,45): error TS1508: Unexpected '{'. Did you mean to escape it with backslash? -regularExpressionScanning.ts(34,46): error TS1005: '}' expected. --regularExpressionScanning.ts(34,47): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(34,47): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(36,4): error TS1517: Range out of order in character class. -regularExpressionScanning.ts(36,8): error TS1517: Range out of order in character class. -regularExpressionScanning.ts(36,34): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -194,32 +194,32 @@ -regularExpressionScanning.ts(38,70): error TS1520: Expected a class set operand. -regularExpressionScanning.ts(38,75): error TS1508: Unexpected '&'. Did you mean to escape it with backslash? -regularExpressionScanning.ts(38,85): error TS1520: Expected a class set operand. --regularExpressionScanning.ts(38,87): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(38,87): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(39,56): error TS1519: Operators must not be mixed within a character class. Wrap it in a nested class instead. -regularExpressionScanning.ts(39,67): error TS1005: '&&' expected. --regularExpressionScanning.ts(39,77): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. --regularExpressionScanning.ts(40,83): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(39,77): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. +-regularExpressionScanning.ts(40,83): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(41,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(41,30): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(41,83): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(41,83): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(42,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(42,28): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(42,53): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(42,77): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. --regularExpressionScanning.ts(43,95): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(42,77): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. +-regularExpressionScanning.ts(43,95): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(44,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(44,34): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(44,95): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(44,95): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(45,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(45,32): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(45,61): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(45,89): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(45,89): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(46,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(46,79): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(46,91): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(46,91): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(47,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(47,89): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(47,101): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(47,101): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - - -==== regularExpressionScanning.ts (219 errors) ==== @@ -227,7 +227,7 @@ - // Flags - /foo/visualstudiocode, - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - ~ -!!! error TS1501: This regular expression flag is only available when targeting 'es2018' or later. - ~ @@ -394,7 +394,7 @@ - ~~~~~~~ -!!! error TS1529: Unknown Unicode property name or value. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /\p{InvalidProperty=Value}\p{=}\p{sc=}\P{=foo}[\p{}\p\\\P\P{]\p{/, - ~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -469,7 +469,7 @@ - -!!! error TS1527: Expected a Unicode property name or value. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /\p{RGI_Emoji}\P{RGI_Emoji}[^\p{RGI_Emoji}\P{RGI_Emoji}]/, - ~~~~~~~~~~~~~ -!!! error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -504,7 +504,7 @@ - ~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - // Character escapes - /\c[\c0\ca\cQ\c\C]\c1\C/, - /\c[\c0\ca\cQ\c\C]\c1\C/u, @@ -574,7 +574,7 @@ - -!!! error TS1005: '}' expected. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - // Unicode sets notation - /[a--b[--][\d++[]]&&[[&0-9--]&&[\p{L}]--\P{L}-_-]]&&&\q{foo}[0---9][&&q&&&\q{bar}&&]/, - ~~~ @@ -648,24 +648,24 @@ - -!!! error TS1520: Expected a class set operand. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[[^\P{Decimal_Number}&&[0-9]]&&\p{L}&&\p{ID_Continue}--\p{ASCII}\p{CWCF}]/v, - ~~ -!!! error TS1519: Operators must not be mixed within a character class. Wrap it in a nested class instead. - -!!! error TS1005: '&&' expected. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\p{Emoji}\p{RGI_Emoji}][^\p{Emoji}--\p{RGI_Emoji}][^\p{Emoji}&&\p{RGI_Emoji}]/v, - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\p{RGI_Emoji}\p{Emoji}][^\p{RGI_Emoji}--\p{Emoji}][^\p{RGI_Emoji}&&\p{Emoji}]/v, - ~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\p{RGI_Emoji}\q{foo}][^\p{RGI_Emoji}--\q{foo}][^\p{RGI_Emoji}&&\q{foo}]/v, - ~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. @@ -674,17 +674,17 @@ - ~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\p{Emoji}[[\p{RGI_Emoji}]]][^\p{Emoji}--[[\p{RGI_Emoji}]]][^\p{Emoji}&&[[\p{RGI_Emoji}]]]/v, - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^[[\p{RGI_Emoji}]]\p{Emoji}][^[[\p{RGI_Emoji}]]--\p{Emoji}][^[[\p{RGI_Emoji}]]&&\p{Emoji}]/v, - ~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^[[\p{RGI_Emoji}]]\q{foo}][^[[\p{RGI_Emoji}]]--\q{foo}][^[[\p{RGI_Emoji}]]&&\q{foo}]/v, - ~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. @@ -693,21 +693,21 @@ - ~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\q{foo|bar|baz}--\q{foo}--\q{bar}--\q{baz}][^\p{L}--\q{foo}--[\q{bar}]--[^[\q{baz}]]]/v, - ~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^[[\q{foo|bar|baz}]]--\q{foo}--\q{bar}--\q{baz}][^[^[^\p{L}]]--\q{foo}--[\q{bar}]--[^[\q{baz}]]]/v, - ~~~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - ]; - @@= skipped --1, +1 lines =@@ diff --git a/testdata/baselines/reference/submodule/compiler/regularExpressionScanning(target=es5).errors.txt.diff b/testdata/baselines/reference/submodule/compiler/regularExpressionScanning(target=es5).errors.txt.diff index a0b3226637..1e1a3ff839 100644 --- a/testdata/baselines/reference/submodule/compiler/regularExpressionScanning(target=es5).errors.txt.diff +++ b/testdata/baselines/reference/submodule/compiler/regularExpressionScanning(target=es5).errors.txt.diff @@ -1,7 +1,7 @@ --- old.regularExpressionScanning(target=es5).errors.txt +++ new.regularExpressionScanning(target=es5).errors.txt @@= skipped -0, +-1 lines =@@ --regularExpressionScanning.ts(3,7): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(3,7): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(3,9): error TS1501: This regular expression flag is only available when targeting 'es2018' or later. -regularExpressionScanning.ts(3,10): error TS1502: The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously. -regularExpressionScanning.ts(3,11): error TS1499: Unknown regular expression flag. @@ -77,7 +77,7 @@ -regularExpressionScanning.ts(21,72): error TS1501: This regular expression flag is only available when targeting 'es6' or later. -regularExpressionScanning.ts(22,28): error TS1529: Unknown Unicode property name or value. -regularExpressionScanning.ts(22,62): error TS1529: Unknown Unicode property name or value. --regularExpressionScanning.ts(22,72): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(22,72): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(23,3): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. -regularExpressionScanning.ts(23,6): error TS1524: Unknown Unicode property name. -regularExpressionScanning.ts(23,28): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -114,7 +114,7 @@ -regularExpressionScanning.ts(25,57): error TS1531: '\P' must be followed by a Unicode property value expression enclosed in braces. -regularExpressionScanning.ts(25,62): error TS1527: Expected a Unicode property name or value. -regularExpressionScanning.ts(25,66): error TS1527: Expected a Unicode property name or value. --regularExpressionScanning.ts(25,67): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(25,67): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(26,3): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. -regularExpressionScanning.ts(26,6): error TS1528: Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set. -regularExpressionScanning.ts(26,16): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -131,7 +131,7 @@ -regularExpressionScanning.ts(28,19): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(28,31): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(28,47): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(28,59): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(28,59): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(31,3): error TS1512: '\c' must be followed by an ASCII letter. -regularExpressionScanning.ts(31,6): error TS1512: '\c' must be followed by an ASCII letter. -regularExpressionScanning.ts(31,15): error TS1512: '\c' must be followed by an ASCII letter. @@ -165,7 +165,7 @@ -regularExpressionScanning.ts(34,43): error TS1535: This character cannot be escaped in a regular expression. -regularExpressionScanning.ts(34,45): error TS1508: Unexpected '{'. Did you mean to escape it with backslash? -regularExpressionScanning.ts(34,46): error TS1005: '}' expected. --regularExpressionScanning.ts(34,47): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(34,47): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(36,4): error TS1517: Range out of order in character class. -regularExpressionScanning.ts(36,8): error TS1517: Range out of order in character class. -regularExpressionScanning.ts(36,34): error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -201,32 +201,32 @@ -regularExpressionScanning.ts(38,70): error TS1520: Expected a class set operand. -regularExpressionScanning.ts(38,75): error TS1508: Unexpected '&'. Did you mean to escape it with backslash? -regularExpressionScanning.ts(38,85): error TS1520: Expected a class set operand. --regularExpressionScanning.ts(38,87): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(38,87): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(39,56): error TS1519: Operators must not be mixed within a character class. Wrap it in a nested class instead. -regularExpressionScanning.ts(39,67): error TS1005: '&&' expected. --regularExpressionScanning.ts(39,77): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. --regularExpressionScanning.ts(40,83): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(39,77): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. +-regularExpressionScanning.ts(40,83): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(41,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(41,30): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(41,83): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(41,83): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(42,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(42,28): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(42,53): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(42,77): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. --regularExpressionScanning.ts(43,95): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(42,77): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. +-regularExpressionScanning.ts(43,95): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(44,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(44,34): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(44,95): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(44,95): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(45,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(45,32): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(45,61): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(45,89): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(45,89): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(46,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(46,79): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(46,91): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(46,91): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. -regularExpressionScanning.ts(47,5): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. -regularExpressionScanning.ts(47,89): error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. --regularExpressionScanning.ts(47,101): error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-regularExpressionScanning.ts(47,101): error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - - -==== regularExpressionScanning.ts (226 errors) ==== @@ -234,7 +234,7 @@ - // Flags - /foo/visualstudiocode, - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - ~ -!!! error TS1501: This regular expression flag is only available when targeting 'es2018' or later. - ~ @@ -405,7 +405,7 @@ - ~~~~~~~ -!!! error TS1529: Unknown Unicode property name or value. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /\p{InvalidProperty=Value}\p{=}\p{sc=}\P{=foo}[\p{}\p\\\P\P{]\p{/, - ~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -482,7 +482,7 @@ - -!!! error TS1527: Expected a Unicode property name or value. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /\p{RGI_Emoji}\P{RGI_Emoji}[^\p{RGI_Emoji}\P{RGI_Emoji}]/, - ~~~~~~~~~~~~~ -!!! error TS1530: Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set. @@ -519,7 +519,7 @@ - ~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - // Character escapes - /\c[\c0\ca\cQ\c\C]\c1\C/, - /\c[\c0\ca\cQ\c\C]\c1\C/u, @@ -593,7 +593,7 @@ - -!!! error TS1005: '}' expected. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - // Unicode sets notation - /[a--b[--][\d++[]]&&[[&0-9--]&&[\p{L}]--\P{L}-_-]]&&&\q{foo}[0---9][&&q&&&\q{bar}&&]/, - ~~~ @@ -669,24 +669,24 @@ - -!!! error TS1520: Expected a class set operand. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[[^\P{Decimal_Number}&&[0-9]]&&\p{L}&&\p{ID_Continue}--\p{ASCII}\p{CWCF}]/v, - ~~ -!!! error TS1519: Operators must not be mixed within a character class. Wrap it in a nested class instead. - -!!! error TS1005: '&&' expected. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\p{Emoji}\p{RGI_Emoji}][^\p{Emoji}--\p{RGI_Emoji}][^\p{Emoji}&&\p{RGI_Emoji}]/v, - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\p{RGI_Emoji}\p{Emoji}][^\p{RGI_Emoji}--\p{Emoji}][^\p{RGI_Emoji}&&\p{Emoji}]/v, - ~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\p{RGI_Emoji}\q{foo}][^\p{RGI_Emoji}--\q{foo}][^\p{RGI_Emoji}&&\q{foo}]/v, - ~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. @@ -695,17 +695,17 @@ - ~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\p{Emoji}[[\p{RGI_Emoji}]]][^\p{Emoji}--[[\p{RGI_Emoji}]]][^\p{Emoji}&&[[\p{RGI_Emoji}]]]/v, - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^[[\p{RGI_Emoji}]]\p{Emoji}][^[[\p{RGI_Emoji}]]--\p{Emoji}][^[[\p{RGI_Emoji}]]&&\p{Emoji}]/v, - ~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^[[\p{RGI_Emoji}]]\q{foo}][^[[\p{RGI_Emoji}]]--\q{foo}][^[[\p{RGI_Emoji}]]&&\q{foo}]/v, - ~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. @@ -714,21 +714,21 @@ - ~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^\q{foo|bar|baz}--\q{foo}--\q{bar}--\q{baz}][^\p{L}--\q{foo}--[\q{bar}]--[^[\q{baz}]]]/v, - ~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - /[^[[\q{foo|bar|baz}]]--\q{foo}--\q{bar}--\q{baz}][^[^[^\p{L}]]--\q{foo}--[\q{bar}]--[^[\q{baz}]]]/v, - ~~~~~~~~~~~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~~~~~~~~~ -!!! error TS1518: Anything that would possibly match more than a single character is invalid inside a negated character class. - ~ --!!! error TS1501: This regular expression flag is only available when targeting 'esnext' or later. +-!!! error TS1501: This regular expression flag is only available when targeting 'es2024' or later. - ]; - @@= skipped --1, +1 lines =@@ diff --git a/testdata/baselines/reference/submodule/conformance/callChainWithSuper(target=es2024).js b/testdata/baselines/reference/submodule/conformance/callChainWithSuper(target=es2024).js new file mode 100644 index 0000000000..425949dba5 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/callChainWithSuper(target=es2024).js @@ -0,0 +1,19 @@ +//// [tests/cases/conformance/expressions/optionalChaining/callChain/callChainWithSuper.ts] //// + +//// [callChainWithSuper.ts] +// GH#34952 +class Base { method?() {} } +class Derived extends Base { + method1() { return super.method?.(); } + method2() { return super["method"]?.(); } +} + +//// [callChainWithSuper.js] +// GH#34952 +class Base { + method() { } +} +class Derived extends Base { + method1() { return super.method?.(); } + method2() { return super["method"]?.(); } +} diff --git a/testdata/baselines/reference/submodule/conformance/callChainWithSuper(target=es2024).js.diff b/testdata/baselines/reference/submodule/conformance/callChainWithSuper(target=es2024).js.diff new file mode 100644 index 0000000000..f1cd42e0f3 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/callChainWithSuper(target=es2024).js.diff @@ -0,0 +1,10 @@ +--- old.callChainWithSuper(target=es2024).js ++++ new.callChainWithSuper(target=es2024).js +@@= skipped -8, +8 lines =@@ + } + + //// [callChainWithSuper.js] +-"use strict"; + // GH#34952 + class Base { + method() { } diff --git a/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.errors.txt b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.errors.txt new file mode 100644 index 0000000000..387a82707a --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.errors.txt @@ -0,0 +1,31 @@ +es2024SharedMemory.ts(10,34): error TS2550: Property 'waitAsync' does not exist on type 'Atomics'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2024' or later. +es2024SharedMemory.ts(11,52): error TS2550: Property 'waitAsync' does not exist on type 'Atomics'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2024' or later. + + +==== es2024SharedMemory.ts (2 errors) ==== + // ES2024 Atomics.waitAsync was included in the ES2022 type file due to a mistake. + // This test file checks if it fails successfully. + // https://github.com/microsoft/TypeScript/pull/58573#issuecomment-2119347142 + + const sab = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024); + const int32 = new Int32Array(sab); + const sab64 = new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024); + const int64 = new BigInt64Array(sab64); + const waitValue = Atomics.wait(int32, 0, 0); + const { async, value } = Atomics.waitAsync(int32, 0, 0); + ~~~~~~~~~ +!!! error TS2550: Property 'waitAsync' does not exist on type 'Atomics'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2024' or later. + const { async: async64, value: value64 } = Atomics.waitAsync(int64, 0, BigInt(0)); + ~~~~~~~~~ +!!! error TS2550: Property 'waitAsync' does not exist on type 'Atomics'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2024' or later. + + const main = async () => { + if (async) { + await value; + } + if (async64) { + await value64; + } + } + main(); + \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.symbols b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.symbols new file mode 100644 index 0000000000..1247317f14 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.symbols @@ -0,0 +1,70 @@ +//// [tests/cases/conformance/es2022/es2024SharedMemory.ts] //// + +=== es2024SharedMemory.ts === +// ES2024 Atomics.waitAsync was included in the ES2022 type file due to a mistake. +// This test file checks if it fails successfully. +// https://github.com/microsoft/TypeScript/pull/58573#issuecomment-2119347142 + +const sab = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024); +>sab : Symbol(sab, Decl(es2024SharedMemory.ts, 4, 5)) +>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --)) +>Int32Array.BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) +>Int32Array : Symbol(Int32Array, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.core.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --) ... and 2 more) +>BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) + +const int32 = new Int32Array(sab); +>int32 : Symbol(int32, Decl(es2024SharedMemory.ts, 5, 5)) +>Int32Array : Symbol(Int32Array, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.core.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --) ... and 2 more) +>sab : Symbol(sab, Decl(es2024SharedMemory.ts, 4, 5)) + +const sab64 = new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024); +>sab64 : Symbol(sab64, Decl(es2024SharedMemory.ts, 6, 5)) +>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --)) +>BigInt64Array.BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) +>BigInt64Array : Symbol(BigInt64Array, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2022.array.d.ts, --, --)) +>BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) + +const int64 = new BigInt64Array(sab64); +>int64 : Symbol(int64, Decl(es2024SharedMemory.ts, 7, 5)) +>BigInt64Array : Symbol(BigInt64Array, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2022.array.d.ts, --, --)) +>sab64 : Symbol(sab64, Decl(es2024SharedMemory.ts, 6, 5)) + +const waitValue = Atomics.wait(int32, 0, 0); +>waitValue : Symbol(waitValue, Decl(es2024SharedMemory.ts, 8, 5)) +>Atomics.wait : Symbol(wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) +>Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) +>wait : Symbol(wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) +>int32 : Symbol(int32, Decl(es2024SharedMemory.ts, 5, 5)) + +const { async, value } = Atomics.waitAsync(int32, 0, 0); +>async : Symbol(async, Decl(es2024SharedMemory.ts, 9, 7)) +>value : Symbol(value, Decl(es2024SharedMemory.ts, 9, 14)) +>Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) +>int32 : Symbol(int32, Decl(es2024SharedMemory.ts, 5, 5)) + +const { async: async64, value: value64 } = Atomics.waitAsync(int64, 0, BigInt(0)); +>async64 : Symbol(async64, Decl(es2024SharedMemory.ts, 10, 7)) +>value64 : Symbol(value64, Decl(es2024SharedMemory.ts, 10, 23)) +>Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) +>int64 : Symbol(int64, Decl(es2024SharedMemory.ts, 7, 5)) +>BigInt : Symbol(BigInt, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --)) + +const main = async () => { +>main : Symbol(main, Decl(es2024SharedMemory.ts, 12, 5)) + + if (async) { +>async : Symbol(async, Decl(es2024SharedMemory.ts, 9, 7)) + + await value; +>value : Symbol(value, Decl(es2024SharedMemory.ts, 9, 14)) + } + if (async64) { +>async64 : Symbol(async64, Decl(es2024SharedMemory.ts, 10, 7)) + + await value64; +>value64 : Symbol(value64, Decl(es2024SharedMemory.ts, 10, 23)) + } +} +main(); +>main : Symbol(main, Decl(es2024SharedMemory.ts, 12, 5)) + diff --git a/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.symbols.diff b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.symbols.diff new file mode 100644 index 0000000000..48a0161879 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.symbols.diff @@ -0,0 +1,38 @@ +--- old.es2024SharedMemory.symbols ++++ new.es2024SharedMemory.symbols +@@= skipped -7, +7 lines =@@ + const sab = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024); + >sab : Symbol(sab, Decl(es2024SharedMemory.ts, 4, 5)) + >SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --)) +->Int32Array.BYTES_PER_ELEMENT : Symbol(Int32ArrayConstructor.BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) ++>Int32Array.BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) + >Int32Array : Symbol(Int32Array, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.core.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --) ... and 2 more) +->BYTES_PER_ELEMENT : Symbol(Int32ArrayConstructor.BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) ++>BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) + + const int32 = new Int32Array(sab); + >int32 : Symbol(int32, Decl(es2024SharedMemory.ts, 5, 5)) +@@= skipped -12, +12 lines =@@ + const sab64 = new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024); + >sab64 : Symbol(sab64, Decl(es2024SharedMemory.ts, 6, 5)) + >SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --)) +->BigInt64Array.BYTES_PER_ELEMENT : Symbol(BigInt64ArrayConstructor.BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) ++>BigInt64Array.BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) + >BigInt64Array : Symbol(BigInt64Array, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2022.array.d.ts, --, --)) +->BYTES_PER_ELEMENT : Symbol(BigInt64ArrayConstructor.BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) ++>BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) + + const int64 = new BigInt64Array(sab64); + >int64 : Symbol(int64, Decl(es2024SharedMemory.ts, 7, 5)) +@@= skipped -11, +11 lines =@@ + + const waitValue = Atomics.wait(int32, 0, 0); + >waitValue : Symbol(waitValue, Decl(es2024SharedMemory.ts, 8, 5)) +->Atomics.wait : Symbol(Atomics.wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) ++>Atomics.wait : Symbol(wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) + >Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) +->wait : Symbol(Atomics.wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) ++>wait : Symbol(wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) + >int32 : Symbol(int32, Decl(es2024SharedMemory.ts, 5, 5)) + + const { async, value } = Atomics.waitAsync(int32, 0, 0); diff --git a/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.types b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.types new file mode 100644 index 0000000000..18233acbda --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.types @@ -0,0 +1,98 @@ +//// [tests/cases/conformance/es2022/es2024SharedMemory.ts] //// + +=== es2024SharedMemory.ts === +// ES2024 Atomics.waitAsync was included in the ES2022 type file due to a mistake. +// This test file checks if it fails successfully. +// https://github.com/microsoft/TypeScript/pull/58573#issuecomment-2119347142 + +const sab = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024); +>sab : SharedArrayBuffer +>new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024) : SharedArrayBuffer +>SharedArrayBuffer : SharedArrayBufferConstructor +>Int32Array.BYTES_PER_ELEMENT * 1024 : number +>Int32Array.BYTES_PER_ELEMENT : number +>Int32Array : Int32ArrayConstructor +>BYTES_PER_ELEMENT : number +>1024 : 1024 + +const int32 = new Int32Array(sab); +>int32 : Int32Array +>new Int32Array(sab) : Int32Array +>Int32Array : Int32ArrayConstructor +>sab : SharedArrayBuffer + +const sab64 = new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024); +>sab64 : SharedArrayBuffer +>new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024) : SharedArrayBuffer +>SharedArrayBuffer : SharedArrayBufferConstructor +>BigInt64Array.BYTES_PER_ELEMENT * 1024 : number +>BigInt64Array.BYTES_PER_ELEMENT : number +>BigInt64Array : BigInt64ArrayConstructor +>BYTES_PER_ELEMENT : number +>1024 : 1024 + +const int64 = new BigInt64Array(sab64); +>int64 : BigInt64Array +>new BigInt64Array(sab64) : BigInt64Array +>BigInt64Array : BigInt64ArrayConstructor +>sab64 : SharedArrayBuffer + +const waitValue = Atomics.wait(int32, 0, 0); +>waitValue : "not-equal" | "ok" | "timed-out" +>Atomics.wait(int32, 0, 0) : "not-equal" | "ok" | "timed-out" +>Atomics.wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; } +>Atomics : Atomics +>wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; } +>int32 : Int32Array +>0 : 0 +>0 : 0 + +const { async, value } = Atomics.waitAsync(int32, 0, 0); +>async : any +>value : any +>Atomics.waitAsync(int32, 0, 0) : any +>Atomics.waitAsync : any +>Atomics : Atomics +>waitAsync : any +>int32 : Int32Array +>0 : 0 +>0 : 0 + +const { async: async64, value: value64 } = Atomics.waitAsync(int64, 0, BigInt(0)); +>async : any +>async64 : any +>value : any +>value64 : any +>Atomics.waitAsync(int64, 0, BigInt(0)) : any +>Atomics.waitAsync : any +>Atomics : Atomics +>waitAsync : any +>int64 : BigInt64Array +>0 : 0 +>BigInt(0) : bigint +>BigInt : BigIntConstructor +>0 : 0 + +const main = async () => { +>main : () => Promise +>async () => { if (async) { await value; } if (async64) { await value64; }} : () => Promise + + if (async) { +>async : any + + await value; +>await value : any +>value : any + } + if (async64) { +>async64 : any + + await value64; +>await value64 : any +>value64 : any + } +} +main(); +>main() : Promise +>main : () => Promise + diff --git a/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.types.diff b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.types.diff new file mode 100644 index 0000000000..afa27343da --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/es2024SharedMemory.types.diff @@ -0,0 +1,14 @@ +--- old.es2024SharedMemory.types ++++ new.es2024SharedMemory.types +@@= skipped -39, +39 lines =@@ + const waitValue = Atomics.wait(int32, 0, 0); + >waitValue : "not-equal" | "ok" | "timed-out" + >Atomics.wait(int32, 0, 0) : "not-equal" | "ok" | "timed-out" +->Atomics.wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number): "ok" | "not-equal" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): "ok" | "not-equal" | "timed-out"; } ++>Atomics.wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; } + >Atomics : Atomics +->wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number): "ok" | "not-equal" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): "ok" | "not-equal" | "timed-out"; } ++>wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; } + >int32 : Int32Array + >0 : 0 + >0 : 0 diff --git a/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.symbols b/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.symbols new file mode 100644 index 0000000000..580a1746a2 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.symbols @@ -0,0 +1,13 @@ +//// [tests/cases/conformance/es2024/resizableArrayBuffer.ts] //// + +=== resizableArrayBuffer.ts === +const buffer = new ArrayBuffer(8, { maxByteLength: 16 }); +>buffer : Symbol(buffer, Decl(resizableArrayBuffer.ts, 0, 5)) +>ArrayBuffer : Symbol(ArrayBuffer, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2024.arraybuffer.d.ts, --, --)) +>maxByteLength : Symbol(maxByteLength, Decl(resizableArrayBuffer.ts, 0, 35)) + +buffer.resizable; +>buffer.resizable : Symbol(resizable, Decl(lib.es2024.arraybuffer.d.ts, --, --)) +>buffer : Symbol(buffer, Decl(resizableArrayBuffer.ts, 0, 5)) +>resizable : Symbol(resizable, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + diff --git a/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.symbols.diff b/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.symbols.diff new file mode 100644 index 0000000000..309346bfb6 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.symbols.diff @@ -0,0 +1,12 @@ +--- old.resizableArrayBuffer.symbols ++++ new.resizableArrayBuffer.symbols +@@= skipped -6, +6 lines =@@ + >maxByteLength : Symbol(maxByteLength, Decl(resizableArrayBuffer.ts, 0, 35)) + + buffer.resizable; +->buffer.resizable : Symbol(ArrayBuffer.resizable, Decl(lib.es2024.arraybuffer.d.ts, --, --)) ++>buffer.resizable : Symbol(resizable, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + >buffer : Symbol(buffer, Decl(resizableArrayBuffer.ts, 0, 5)) +->resizable : Symbol(ArrayBuffer.resizable, Decl(lib.es2024.arraybuffer.d.ts, --, --)) ++>resizable : Symbol(resizable, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + diff --git a/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.types b/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.types new file mode 100644 index 0000000000..5d9a2e3fe9 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/resizableArrayBuffer.types @@ -0,0 +1,17 @@ +//// [tests/cases/conformance/es2024/resizableArrayBuffer.ts] //// + +=== resizableArrayBuffer.ts === +const buffer = new ArrayBuffer(8, { maxByteLength: 16 }); +>buffer : ArrayBuffer +>new ArrayBuffer(8, { maxByteLength: 16 }) : ArrayBuffer +>ArrayBuffer : ArrayBufferConstructor +>8 : 8 +>{ maxByteLength: 16 } : { maxByteLength: number; } +>maxByteLength : number +>16 : 16 + +buffer.resizable; +>buffer.resizable : boolean +>buffer : ArrayBuffer +>resizable : boolean + diff --git a/testdata/baselines/reference/submodule/conformance/sharedMemory.symbols b/testdata/baselines/reference/submodule/conformance/sharedMemory.symbols new file mode 100644 index 0000000000..c8271ecec6 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/sharedMemory.symbols @@ -0,0 +1,72 @@ +//// [tests/cases/conformance/es2024/sharedMemory.ts] //// + +=== sharedMemory.ts === +const sab = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024); +>sab : Symbol(sab, Decl(sharedMemory.ts, 0, 5)) +>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>Int32Array.BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) +>Int32Array : Symbol(Int32Array, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.core.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --) ... and 3 more) +>BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) + +const int32 = new Int32Array(sab); +>int32 : Symbol(int32, Decl(sharedMemory.ts, 1, 5)) +>Int32Array : Symbol(Int32Array, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.core.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --) ... and 3 more) +>sab : Symbol(sab, Decl(sharedMemory.ts, 0, 5)) + +const sab64 = new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024); +>sab64 : Symbol(sab64, Decl(sharedMemory.ts, 2, 5)) +>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>BigInt64Array.BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) +>BigInt64Array : Symbol(BigInt64Array, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2022.array.d.ts, --, --), Decl(lib.es2023.array.d.ts, --, --)) +>BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) + +const int64 = new BigInt64Array(sab64); +>int64 : Symbol(int64, Decl(sharedMemory.ts, 3, 5)) +>BigInt64Array : Symbol(BigInt64Array, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2022.array.d.ts, --, --), Decl(lib.es2023.array.d.ts, --, --)) +>sab64 : Symbol(sab64, Decl(sharedMemory.ts, 2, 5)) + +const waitValue = Atomics.wait(int32, 0, 0); +>waitValue : Symbol(waitValue, Decl(sharedMemory.ts, 4, 5)) +>Atomics.wait : Symbol(wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) +>Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>wait : Symbol(wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) +>int32 : Symbol(int32, Decl(sharedMemory.ts, 1, 5)) + +const { async, value } = Atomics.waitAsync(int32, 0, 0); +>async : Symbol(async, Decl(sharedMemory.ts, 5, 7)) +>value : Symbol(value, Decl(sharedMemory.ts, 5, 14)) +>Atomics.waitAsync : Symbol(waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>waitAsync : Symbol(waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>int32 : Symbol(int32, Decl(sharedMemory.ts, 1, 5)) + +const { async: async64, value: value64 } = Atomics.waitAsync(int64, 0, BigInt(0)); +>async : Symbol(async, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>async64 : Symbol(async64, Decl(sharedMemory.ts, 6, 7)) +>value : Symbol(value, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>value64 : Symbol(value64, Decl(sharedMemory.ts, 6, 23)) +>Atomics.waitAsync : Symbol(waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>waitAsync : Symbol(waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +>int64 : Symbol(int64, Decl(sharedMemory.ts, 3, 5)) +>BigInt : Symbol(BigInt, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --)) + +const main = async () => { +>main : Symbol(main, Decl(sharedMemory.ts, 8, 5)) + + if (async) { +>async : Symbol(async, Decl(sharedMemory.ts, 5, 7)) + + await value; +>value : Symbol(value, Decl(sharedMemory.ts, 5, 14)) + } + if (async64) { +>async64 : Symbol(async64, Decl(sharedMemory.ts, 6, 7)) + + await value64; +>value64 : Symbol(value64, Decl(sharedMemory.ts, 6, 23)) + } +} +main(); +>main : Symbol(main, Decl(sharedMemory.ts, 8, 5)) + diff --git a/testdata/baselines/reference/submodule/conformance/sharedMemory.symbols.diff b/testdata/baselines/reference/submodule/conformance/sharedMemory.symbols.diff new file mode 100644 index 0000000000..7df0270ad6 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/sharedMemory.symbols.diff @@ -0,0 +1,60 @@ +--- old.sharedMemory.symbols ++++ new.sharedMemory.symbols +@@= skipped -3, +3 lines =@@ + const sab = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024); + >sab : Symbol(sab, Decl(sharedMemory.ts, 0, 5)) + >SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +->Int32Array.BYTES_PER_ELEMENT : Symbol(Int32ArrayConstructor.BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) ++>Int32Array.BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) + >Int32Array : Symbol(Int32Array, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.core.d.ts, --, --), Decl(lib.es2015.iterable.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --) ... and 3 more) +->BYTES_PER_ELEMENT : Symbol(Int32ArrayConstructor.BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) ++>BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es5.d.ts, --, --)) + + const int32 = new Int32Array(sab); + >int32 : Symbol(int32, Decl(sharedMemory.ts, 1, 5)) +@@= skipped -12, +12 lines =@@ + const sab64 = new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024); + >sab64 : Symbol(sab64, Decl(sharedMemory.ts, 2, 5)) + >SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +->BigInt64Array.BYTES_PER_ELEMENT : Symbol(BigInt64ArrayConstructor.BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) ++>BigInt64Array.BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) + >BigInt64Array : Symbol(BigInt64Array, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2022.array.d.ts, --, --), Decl(lib.es2023.array.d.ts, --, --)) +->BYTES_PER_ELEMENT : Symbol(BigInt64ArrayConstructor.BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) ++>BYTES_PER_ELEMENT : Symbol(BYTES_PER_ELEMENT, Decl(lib.es2020.bigint.d.ts, --, --)) + + const int64 = new BigInt64Array(sab64); + >int64 : Symbol(int64, Decl(sharedMemory.ts, 3, 5)) +@@= skipped -11, +11 lines =@@ + + const waitValue = Atomics.wait(int32, 0, 0); + >waitValue : Symbol(waitValue, Decl(sharedMemory.ts, 4, 5)) +->Atomics.wait : Symbol(Atomics.wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) ++>Atomics.wait : Symbol(wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) + >Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +->wait : Symbol(Atomics.wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) ++>wait : Symbol(wait, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --)) + >int32 : Symbol(int32, Decl(sharedMemory.ts, 1, 5)) + + const { async, value } = Atomics.waitAsync(int32, 0, 0); + >async : Symbol(async, Decl(sharedMemory.ts, 5, 7)) + >value : Symbol(value, Decl(sharedMemory.ts, 5, 14)) +->Atomics.waitAsync : Symbol(Atomics.waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) ++>Atomics.waitAsync : Symbol(waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) + >Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +->waitAsync : Symbol(Atomics.waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) ++>waitAsync : Symbol(waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) + >int32 : Symbol(int32, Decl(sharedMemory.ts, 1, 5)) + + const { async: async64, value: value64 } = Atomics.waitAsync(int64, 0, BigInt(0)); +@@= skipped -18, +18 lines =@@ + >async64 : Symbol(async64, Decl(sharedMemory.ts, 6, 7)) + >value : Symbol(value, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) + >value64 : Symbol(value64, Decl(sharedMemory.ts, 6, 23)) +->Atomics.waitAsync : Symbol(Atomics.waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) ++>Atomics.waitAsync : Symbol(waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) + >Atomics : Symbol(Atomics, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2020.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) +->waitAsync : Symbol(Atomics.waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) ++>waitAsync : Symbol(waitAsync, Decl(lib.es2024.sharedmemory.d.ts, --, --), Decl(lib.es2024.sharedmemory.d.ts, --, --)) + >int64 : Symbol(int64, Decl(sharedMemory.ts, 3, 5)) + >BigInt : Symbol(BigInt, Decl(lib.es2020.bigint.d.ts, --, --), Decl(lib.es2020.bigint.d.ts, --, --)) + diff --git a/testdata/baselines/reference/submodule/conformance/sharedMemory.types b/testdata/baselines/reference/submodule/conformance/sharedMemory.types new file mode 100644 index 0000000000..adcb01a1bd --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/sharedMemory.types @@ -0,0 +1,94 @@ +//// [tests/cases/conformance/es2024/sharedMemory.ts] //// + +=== sharedMemory.ts === +const sab = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024); +>sab : SharedArrayBuffer +>new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 1024) : SharedArrayBuffer +>SharedArrayBuffer : SharedArrayBufferConstructor +>Int32Array.BYTES_PER_ELEMENT * 1024 : number +>Int32Array.BYTES_PER_ELEMENT : number +>Int32Array : Int32ArrayConstructor +>BYTES_PER_ELEMENT : number +>1024 : 1024 + +const int32 = new Int32Array(sab); +>int32 : Int32Array +>new Int32Array(sab) : Int32Array +>Int32Array : Int32ArrayConstructor +>sab : SharedArrayBuffer + +const sab64 = new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024); +>sab64 : SharedArrayBuffer +>new SharedArrayBuffer(BigInt64Array.BYTES_PER_ELEMENT * 1024) : SharedArrayBuffer +>SharedArrayBuffer : SharedArrayBufferConstructor +>BigInt64Array.BYTES_PER_ELEMENT * 1024 : number +>BigInt64Array.BYTES_PER_ELEMENT : number +>BigInt64Array : BigInt64ArrayConstructor +>BYTES_PER_ELEMENT : number +>1024 : 1024 + +const int64 = new BigInt64Array(sab64); +>int64 : BigInt64Array +>new BigInt64Array(sab64) : BigInt64Array +>BigInt64Array : BigInt64ArrayConstructor +>sab64 : SharedArrayBuffer + +const waitValue = Atomics.wait(int32, 0, 0); +>waitValue : "not-equal" | "ok" | "timed-out" +>Atomics.wait(int32, 0, 0) : "not-equal" | "ok" | "timed-out" +>Atomics.wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; } +>Atomics : Atomics +>wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; } +>int32 : Int32Array +>0 : 0 +>0 : 0 + +const { async, value } = Atomics.waitAsync(int32, 0, 0); +>async : boolean +>value : "not-equal" | "timed-out" | Promise<"ok" | "timed-out"> +>Atomics.waitAsync(int32, 0, 0) : { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; } +>Atomics.waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } +>Atomics : Atomics +>waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } +>int32 : Int32Array +>0 : 0 +>0 : 0 + +const { async: async64, value: value64 } = Atomics.waitAsync(int64, 0, BigInt(0)); +>async : any +>async64 : boolean +>value : any +>value64 : "not-equal" | "timed-out" | Promise<"ok" | "timed-out"> +>Atomics.waitAsync(int64, 0, BigInt(0)) : { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; } +>Atomics.waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } +>Atomics : Atomics +>waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } +>int64 : BigInt64Array +>0 : 0 +>BigInt(0) : bigint +>BigInt : BigIntConstructor +>0 : 0 + +const main = async () => { +>main : () => Promise +>async () => { if (async) { await value; } if (async64) { await value64; }} : () => Promise + + if (async) { +>async : boolean + + await value; +>await value : "ok" | "timed-out" +>value : Promise<"ok" | "timed-out"> + } + if (async64) { +>async64 : boolean + + await value64; +>await value64 : "ok" | "timed-out" +>value64 : Promise<"ok" | "timed-out"> + } +} +main(); +>main() : Promise +>main : () => Promise + diff --git a/testdata/baselines/reference/submodule/conformance/sharedMemory.types.diff b/testdata/baselines/reference/submodule/conformance/sharedMemory.types.diff new file mode 100644 index 0000000000..22d90fcb22 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/sharedMemory.types.diff @@ -0,0 +1,38 @@ +--- old.sharedMemory.types ++++ new.sharedMemory.types +@@= skipped -35, +35 lines =@@ + const waitValue = Atomics.wait(int32, 0, 0); + >waitValue : "not-equal" | "ok" | "timed-out" + >Atomics.wait(int32, 0, 0) : "not-equal" | "ok" | "timed-out" +->Atomics.wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number): "ok" | "not-equal" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): "ok" | "not-equal" | "timed-out"; } ++>Atomics.wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; } + >Atomics : Atomics +->wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number): "ok" | "not-equal" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): "ok" | "not-equal" | "timed-out"; } ++>wait : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): "not-equal" | "ok" | "timed-out"; } + >int32 : Int32Array + >0 : 0 + >0 : 0 +@@= skipped -11, +11 lines =@@ + >async : boolean + >value : "not-equal" | "timed-out" | Promise<"ok" | "timed-out"> + >Atomics.waitAsync(int32, 0, 0) : { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; } +->Atomics.waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } ++>Atomics.waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } + >Atomics : Atomics +->waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } ++>waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } + >int32 : Int32Array + >0 : 0 + >0 : 0 +@@= skipped -13, +13 lines =@@ + >value : any + >value64 : "not-equal" | "timed-out" | Promise<"ok" | "timed-out"> + >Atomics.waitAsync(int64, 0, BigInt(0)) : { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; } +->Atomics.waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } ++>Atomics.waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } + >Atomics : Atomics +->waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } ++>waitAsync : { (typedArray: Int32Array, index: number, value: number, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; (typedArray: BigInt64Array, index: number, value: bigint, timeout?: number | undefined): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; }; } + >int64 : BigInt64Array + >0 : 0 + >BigInt(0) : bigint diff --git a/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.symbols b/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.symbols new file mode 100644 index 0000000000..a3bf4f0c0b --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.symbols @@ -0,0 +1,23 @@ +//// [tests/cases/conformance/es2024/transferableArrayBuffer.ts] //// + +=== transferableArrayBuffer.ts === +const buffer = new ArrayBuffer(8); +>buffer : Symbol(buffer, Decl(transferableArrayBuffer.ts, 0, 5)) +>ArrayBuffer : Symbol(ArrayBuffer, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2024.arraybuffer.d.ts, --, --)) + +const buffer2 = buffer.transfer(); +>buffer2 : Symbol(buffer2, Decl(transferableArrayBuffer.ts, 1, 5)) +>buffer.transfer : Symbol(transfer, Decl(lib.es2024.arraybuffer.d.ts, --, --)) +>buffer : Symbol(buffer, Decl(transferableArrayBuffer.ts, 0, 5)) +>transfer : Symbol(transfer, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + +buffer.detached; +>buffer.detached : Symbol(detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) +>buffer : Symbol(buffer, Decl(transferableArrayBuffer.ts, 0, 5)) +>detached : Symbol(detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + +buffer2.detached; +>buffer2.detached : Symbol(detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) +>buffer2 : Symbol(buffer2, Decl(transferableArrayBuffer.ts, 1, 5)) +>detached : Symbol(detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + diff --git a/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.symbols.diff b/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.symbols.diff new file mode 100644 index 0000000000..a5909d9f7e --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.symbols.diff @@ -0,0 +1,26 @@ +--- old.transferableArrayBuffer.symbols ++++ new.transferableArrayBuffer.symbols +@@= skipped -6, +6 lines =@@ + + const buffer2 = buffer.transfer(); + >buffer2 : Symbol(buffer2, Decl(transferableArrayBuffer.ts, 1, 5)) +->buffer.transfer : Symbol(ArrayBuffer.transfer, Decl(lib.es2024.arraybuffer.d.ts, --, --)) ++>buffer.transfer : Symbol(transfer, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + >buffer : Symbol(buffer, Decl(transferableArrayBuffer.ts, 0, 5)) +->transfer : Symbol(ArrayBuffer.transfer, Decl(lib.es2024.arraybuffer.d.ts, --, --)) ++>transfer : Symbol(transfer, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + + buffer.detached; +->buffer.detached : Symbol(ArrayBuffer.detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) ++>buffer.detached : Symbol(detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + >buffer : Symbol(buffer, Decl(transferableArrayBuffer.ts, 0, 5)) +->detached : Symbol(ArrayBuffer.detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) ++>detached : Symbol(detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + + buffer2.detached; +->buffer2.detached : Symbol(ArrayBuffer.detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) ++>buffer2.detached : Symbol(detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + >buffer2 : Symbol(buffer2, Decl(transferableArrayBuffer.ts, 1, 5)) +->detached : Symbol(ArrayBuffer.detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) ++>detached : Symbol(detached, Decl(lib.es2024.arraybuffer.d.ts, --, --)) + diff --git a/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.types b/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.types new file mode 100644 index 0000000000..bb105a7396 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.types @@ -0,0 +1,26 @@ +//// [tests/cases/conformance/es2024/transferableArrayBuffer.ts] //// + +=== transferableArrayBuffer.ts === +const buffer = new ArrayBuffer(8); +>buffer : ArrayBuffer +>new ArrayBuffer(8) : ArrayBuffer +>ArrayBuffer : ArrayBufferConstructor +>8 : 8 + +const buffer2 = buffer.transfer(); +>buffer2 : ArrayBuffer +>buffer.transfer() : ArrayBuffer +>buffer.transfer : (newByteLength?: number | undefined) => ArrayBuffer +>buffer : ArrayBuffer +>transfer : (newByteLength?: number | undefined) => ArrayBuffer + +buffer.detached; +>buffer.detached : boolean +>buffer : ArrayBuffer +>detached : boolean + +buffer2.detached; +>buffer2.detached : boolean +>buffer2 : ArrayBuffer +>detached : boolean + diff --git a/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.types.diff b/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.types.diff new file mode 100644 index 0000000000..3e6b95fec1 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/transferableArrayBuffer.types.diff @@ -0,0 +1,14 @@ +--- old.transferableArrayBuffer.types ++++ new.transferableArrayBuffer.types +@@= skipped -9, +9 lines =@@ + const buffer2 = buffer.transfer(); + >buffer2 : ArrayBuffer + >buffer.transfer() : ArrayBuffer +->buffer.transfer : (newByteLength?: number) => ArrayBuffer ++>buffer.transfer : (newByteLength?: number | undefined) => ArrayBuffer + >buffer : ArrayBuffer +->transfer : (newByteLength?: number) => ArrayBuffer ++>transfer : (newByteLength?: number | undefined) => ArrayBuffer + + buffer.detached; + >buffer.detached : boolean diff --git a/testdata/baselines/reference/submodule/conformance/useSharedArrayBuffer1.types b/testdata/baselines/reference/submodule/conformance/useSharedArrayBuffer1.types index 0cb327a2e3..35971df27f 100644 --- a/testdata/baselines/reference/submodule/conformance/useSharedArrayBuffer1.types +++ b/testdata/baselines/reference/submodule/conformance/useSharedArrayBuffer1.types @@ -10,9 +10,9 @@ var foge = new SharedArrayBuffer(1024); var bar = foge.slice(1, 10); >bar : SharedArrayBuffer >foge.slice(1, 10) : SharedArrayBuffer ->foge.slice : (begin: number, end?: number) => SharedArrayBuffer +>foge.slice : (begin?: number, end?: number) => SharedArrayBuffer >foge : SharedArrayBuffer ->slice : (begin: number, end?: number) => SharedArrayBuffer +>slice : (begin?: number, end?: number) => SharedArrayBuffer >1 : 1 >10 : 10 diff --git a/testdata/baselines/reference/submodule/conformance/useSharedArrayBuffer4.types b/testdata/baselines/reference/submodule/conformance/useSharedArrayBuffer4.types index 83a9761bbb..1554e237ed 100644 --- a/testdata/baselines/reference/submodule/conformance/useSharedArrayBuffer4.types +++ b/testdata/baselines/reference/submodule/conformance/useSharedArrayBuffer4.types @@ -10,9 +10,9 @@ var foge = new SharedArrayBuffer(1024); var bar = foge.slice(1, 10); >bar : SharedArrayBuffer >foge.slice(1, 10) : SharedArrayBuffer ->foge.slice : (begin: number, end?: number) => SharedArrayBuffer +>foge.slice : (begin?: number, end?: number) => SharedArrayBuffer >foge : SharedArrayBuffer ->slice : (begin: number, end?: number) => SharedArrayBuffer +>slice : (begin?: number, end?: number) => SharedArrayBuffer >1 : 1 >10 : 10 diff --git a/testdata/baselines/reference/tsoptions/commandLineParsing/Parse empty options of --target.js b/testdata/baselines/reference/tsoptions/commandLineParsing/Parse empty options of --target.js index 216df16665..0084e7d5d7 100644 --- a/testdata/baselines/reference/tsoptions/commandLineParsing/Parse empty options of --target.js +++ b/testdata/baselines/reference/tsoptions/commandLineParsing/Parse empty options of --target.js @@ -9,4 +9,4 @@ FileNames:: Errors:: error TS6044: Compiler option 'target' expects an argument. -error TS6046: Argument for '--target' option must be: 'es5', 'es6', 'es2015', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'esnext'. +error TS6046: Argument for '--target' option must be: 'es5', 'es6', 'es2015', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'esnext'. diff --git a/testdata/baselines/reference/tsoptions/commandLineParsing/Parse invalid option of library flags.js b/testdata/baselines/reference/tsoptions/commandLineParsing/Parse invalid option of library flags.js index 61b5721259..74f8a2c6f0 100644 --- a/testdata/baselines/reference/tsoptions/commandLineParsing/Parse invalid option of library flags.js +++ b/testdata/baselines/reference/tsoptions/commandLineParsing/Parse invalid option of library flags.js @@ -8,4 +8,4 @@ FileNames:: 0.ts Errors:: -error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.sharedmemory', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'esnext.array', 'esnext.collection', 'esnext.symbol', 'esnext.asynciterable', 'esnext.intl', 'esnext.disposable', 'esnext.bigint', 'esnext.string', 'esnext.promise', 'esnext.weakref', 'esnext.decorators', 'esnext.object', 'esnext.regexp', 'esnext.iterator', 'decorators', 'decorators.legacy'. +error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.arraybuffer', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'es2024.arraybuffer', 'es2024.collection', 'es2024.object', 'es2024.promise', 'es2024.regexp', 'es2024.sharedmemory', 'es2024.string', 'esnext.array', 'esnext.collection', 'esnext.symbol', 'esnext.asynciterable', 'esnext.intl', 'esnext.disposable', 'esnext.bigint', 'esnext.string', 'esnext.promise', 'esnext.weakref', 'esnext.decorators', 'esnext.object', 'esnext.regexp', 'esnext.iterator', 'decorators', 'decorators.legacy'.