dart-sdk/tests/lib
Nicholas Shahan 3c75002cee [ddc] Stop modifying the native JavaScript Object prototype
With this change the Dart Core Object members (`.hashCode`, 
`.runtimeType`, `.noSuchMethod()`, `.toString()`, and 
`operator ==`) are no longer installed onto the native JavaScript
Object prototype. This is done because the Object prototype will be 
sealed as a security precaution in some environments to avoid 
prototype pollution exploits.

This means that dispatching to these APIs will change when the 
compiler cannot know if the receiver may be null or a value from 
JavaScript interop. In those cases a call to a helper method is 
inserted instead. The helpers will probe for the API on the value, 
call it if available or execute a default version.

NOTE: Many other native JavaScript prototypes are still modified. This
change is only for the Object prototype.

Issue: https://github.com/dart-lang/sdk/issues/49670

Change-Id: Iddb3a48e790dd414aa3254d729535c4408e99b3d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/310971
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2023-08-10 19:45:59 +00:00
..
analyzer
async Add interface to a few classes which had missed it. 2023-05-24 14:04:27 +00:00
collection [flip-modifiers]: prep more tests for the class modifiers flag flip 2023-03-06 20:52:03 +00:00
convert Reland "Add class modifiers to dart:convert." again. 2023-03-29 16:54:23 +00:00
developer [ dart:developer ] Remove Metrics related classes 2023-03-10 16:50:10 +00:00
fix_data_tests Remove deprecated APIs from dart:developer 2022-07-19 07:10:03 +00:00
html Reland "[dart:html] Throw exception if Window.open opens null window" and 2023-07-06 15:50:48 +00:00
isolate [sdk] Provide Isolate.resolvePackageUriSync 2023-07-11 12:59:33 +00:00
js [ddc] Stop modifying the native JavaScript Object prototype 2023-08-10 19:45:59 +00:00
js_interop_unsafe [dart:js_interop] Fix JSNumber conversions/semantics and JSBoxedDartObject 2023-06-22 02:51:13 +00:00
math Spelling tests 2023-01-19 16:24:29 +00:00
mirrors [vm/ffi] Pointer.asTypedList finalizer 2023-05-10 11:38:57 +00:00
typed_data Migrate corelib and lib tests off @compile-error. 2023-04-20 19:19:01 +00:00
web [web] remove mirrors patch for web compilers. 2020-07-16 00:12:22 +00:00
lib.status [sdk] Provide Isolate.resolvePackageUriSync 2023-07-11 12:59:33 +00:00
lib_analyzer.status
lib_app_jit.status
lib_dart2js.status [dart2wasm] Rename the dart:wasm library to dart:_wasm. 2023-04-04 11:52:18 +00:00
lib_dartdevc.status [ddc] Temporarily skip tests that timeout 2023-05-11 23:03:38 +00:00
lib_kernel.status [gardening] Mark all tests as slow in debug-ia32 mode 2022-07-21 10:22:45 +00:00
lib_precompiled.status [testing] Remove --compiler=none from test.py 2022-10-19 08:09:58 +00:00
lib_vm.status [test] Introduce status variable $simulator, and fix some cases missing simarm_x64. 2023-04-04 03:10:26 +00:00