Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								c08a52dd97 
								
							 
						 
						
							
							
								
								LibJS: Remove the name prefix for wrapped functions  
							
							... 
							
							
							
							This is a normative change in the ShadowRealm spec.
See: 4ca634a 
							
						 
						
							2022-02-12 16:06:37 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								821ae3a479 
								
							 
						 
						
							
							
								
								LibJS: Add tests for Set.prototype.keys which is an alias for values  
							
							
							
						 
						
							2022-02-10 14:09:39 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								45646eee43 
								
							 
						 
						
							
							
								
								LibJS: Fix Map Iterators when elements are deleted during iteration  
							
							... 
							
							
							
							Before this would assume that the element found in operator++ was still
valid when dereferencing it in operator*.
Since any code can have been run since that increment this is not always
valid.
To further simplify the logic of the iterator we no longer store the
index in an optional. 
							
						 
						
							2022-02-10 14:09:39 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Luke Wilde 
								
							 
						 
						
							
							
							
							
								
							
							
								1bfbc0b6af 
								
							 
						 
						
							
							
								
								LibJS: Don't coerce this value to an object in Function.prototype.call  
							
							
							
						 
						
							2022-02-10 08:45:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Luke Wilde 
								
							 
						 
						
							
							
							
							
								
							
							
								12231068bd 
								
							 
						 
						
							
							
								
								LibJS: Don't coerce this value to an object in Function.prototype.apply  
							
							
							
						 
						
							2022-02-10 08:45:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								898ad7c682 
								
							 
						 
						
							
							
								
								LibJS: Implement Function.prototype.bind() according to the spec :^)  
							
							
							
						 
						
							2022-02-09 23:31:34 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ali Mohammad Pur 
								
							 
						 
						
							
							
							
							
								
							
							
								3bfcd7b52d 
								
							 
						 
						
							
							
								
								LibJS: Implement Sets using Maps  
							
							... 
							
							
							
							This implements ordered sets using Maps with a sentinel value, and
includes some extra set tests.
Fixes  #11004 .
Co-Authored-By: davidot <davidot@serenityos.org> 
							
						 
						
							2022-02-09 20:57:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Hendiadyoin1 
								
							 
						 
						
							
							
							
							
								
							
							
								89c82abf1f 
								
							 
						 
						
							
							
								
								LibJS: Implement non standard error.stack attribute  
							
							... 
							
							
							
							All other browser already support this feature.
There is a Stage 1 proposal to standardize this, but it does not seem
to be active. 
							
						 
						
							2022-02-07 14:17:57 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jorropo 
								
							 
						 
						
							
							
							
							
								
							
							
								dc42ca37bd 
								
							 
						 
						
							
							
								
								LibJS: Fix JSON.stringify with stale surrogate codepoints  
							
							... 
							
							
							
							This fix this test262 test:
built-ins/JSON/stringify/value-string-escape-unicode.js 
							
						 
						
							2022-02-07 13:53:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								b0e5609b88 
								
							 
						 
						
							
							
								
								LibJS: Use GetV to look up the toJSON property in SerializeJSONProperty  
							
							... 
							
							
							
							The current implementation of step 2a sort of manually implemented GetV
with a ToObject + Get combo. But in the call to Get, the receiver wasn't
the correct object. So when invoking toJSON, the receiver was an Object
type rather than a BigInt.
This also adds spec comments to SerializeJSONProperty. 
							
						 
						
							2022-02-07 09:24:09 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								cb57475168 
								
							 
						 
						
							
							
								
								LibJS: Implement BigInt.asUintN  
							
							
							
						 
						
							2022-02-06 15:49:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								460c2caaf7 
								
							 
						 
						
							
							
								
								LibJS: Implement BigInt.asIntN  
							
							
							
						 
						
							2022-02-06 15:49:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								72b3ea49d6 
								
							 
						 
						
							
							
								
								LibJS: Enable Temporal tests that now pass  
							
							... 
							
							
							
							These pass now that negative zero is disallowed by SignedBigInteger. 
							
						 
						
							2022-02-06 15:49:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								27d3de1f17 
								
							 
						 
						
							
							
								
								LibRegex: Do not continue searching input when the sticky bit is set  
							
							... 
							
							
							
							This partially reverts commit a962ee020a 
							
						 
						
							2022-02-05 19:06:50 +03:30 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								30a143c79e 
								
							 
						 
						
							
							
								
								LibJS: Explicitly handle invalid Date objects in UTC time setters  
							
							... 
							
							
							
							This is a normative change in the ECMA-262 spec:
ca53334 
							
						 
						
							2022-02-04 13:47:50 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								fd7d0a31d9 
								
							 
						 
						
							
							
								
								LibJS: Explicitly handle invalid Date objects in local time setters  
							
							... 
							
							
							
							This is a normative change in the ECMA-262 spec:
ca53334 
							
						 
						
							2022-02-04 13:47:50 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								19a2b32065 
								
							 
						 
						
							
							
								
								LibJS: Reject '-000000' as extended year  
							
							... 
							
							
							
							This is a normative change in the Temporal spec.
See: e60ef9e 
							
						 
						
							2022-02-02 14:46:52 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Idan Horowitz 
								
							 
						 
						
							
							
							
							
								
							
							
								2cd3d4a287 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl %SegmentIteratorPrototype%.next ( )  
							
							
							
						 
						
							2022-01-31 21:05:04 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Idan Horowitz 
								
							 
						 
						
							
							
							
							
								
							
							
								366468f1de 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl %SegmentsPrototype%.containing  
							
							
							
						 
						
							2022-01-31 21:05:04 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								02b7bf34c9 
								
							 
						 
						
							
							
								
								LibJS: Implement BigInt IsLessThan according to the spec  
							
							
							
						 
						
							2022-01-31 17:50:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								9ad3debf35 
								
							 
						 
						
							
							
								
								LibJS: Implement BigInt loose-equality according to the spec  
							
							
							
						 
						
							2022-01-31 17:50:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								281b0411f2 
								
							 
						 
						
							
							
								
								LibJS: Implement conversion of strings to BigInts according to the spec  
							
							... 
							
							
							
							The spec defines a StringToBigInt AO which allows for converting binary,
octal, decimal, and hexadecimal strings to a BigInt. Our conversion was
only allowing for decimal strings. 
							
						 
						
							2022-01-31 17:50:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								fb08a5a896 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.supportedValuesOf  
							
							... 
							
							
							
							This is a stage 3 ECMA-402 proposal:
https://tc39.es/proposal-intl-enumeration/  
							
						 
						
							2022-01-31 00:32:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								687276fc38 
								
							 
						 
						
							
							
								
								LibJS: Implement ECMA-402 BigInt.prototype.toLocaleString  
							
							
							
						 
						
							2022-01-30 20:05:27 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								d6e926e5b1 
								
							 
						 
						
							
							
								
								LibJS: Support BigInt number formatting with Intl.NumberFormat  
							
							
							
						 
						
							2022-01-30 20:05:27 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Idan Horowitz 
								
							 
						 
						
							
							
							
							
								
							
							
								4ba4e4c777 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl %SegmentsPrototype%[@@iterator]  
							
							
							
						 
						
							2022-01-30 19:47:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Idan Horowitz 
								
							 
						 
						
							
							
							
							
								
							
							
								9001a8cbe1 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.Segmenter.prototype.segment  
							
							
							
						 
						
							2022-01-30 19:47:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Idan Horowitz 
								
							 
						 
						
							
							
							
							
								
							
							
								891dfd9cbb 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.Segmenter.prototype.resolvedOptions  
							
							
							
						 
						
							2022-01-30 19:47:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Idan Horowitz 
								
							 
						 
						
							
							
							
							
								
							
							
								6b8dfefc20 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.Segmenter.supportedLocalesOf  
							
							
							
						 
						
							2022-01-30 19:47:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Idan Horowitz 
								
							 
						 
						
							
							
							
							
								
							
							
								a3bc06bb23 
								
							 
						 
						
							
							
								
								LibJS: Start implementing Intl.Segmenter  
							
							
							
						 
						
							2022-01-30 19:47:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								6b5c882af3 
								
							 
						 
						
							
							
								
								LibJS: Add support for JSON modules  
							
							... 
							
							
							
							We now have one supported assertion: 'type' if that is 'json' we attempt
to parse the module as JSON. 
							
						 
						
							2022-01-30 17:40:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								f568939568 
								
							 
						 
						
							
							
								
								LibJS: Implement the import assertions proposal  
							
							... 
							
							
							
							The hard part of parsing them in import statements and calls was already
done so this is just removing some check which threw before on
assertions. And filtering the assertions based on the result of a new
host hook. 
							
						 
						
							2022-01-30 17:40:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								e0e4ead2c8 
								
							 
						 
						
							
							
								
								LibJS: Follow the spec with storing im- and export entries  
							
							... 
							
							
							
							Because we can have arbitrary in- and export names with strings we can
have '*' and '' which means using '*' as an indicating namespace imports
failed / behaved incorrectly for string imports '*'.
We now use more specific types to indicate these special states instead
of these 'magic' string values.
Do note that 'default' is not actually a magic string value but one
specified by the spec. And you can in fact export the default value by
doing: `export { 1 as default }`. 
							
						 
						
							2022-01-30 17:40:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								4a99170cd2 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.Collator.prototype.resolvedOptions  
							
							
							
						 
						
							2022-01-29 20:27:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								17306078b5 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.Collator.supportedLocalesOf  
							
							
							
						 
						
							2022-01-29 20:27:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								06a6100b12 
								
							 
						 
						
							
							
								
								LibJS: Implement the Intl.Collator constructor  
							
							
							
						 
						
							2022-01-29 20:27:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								4a3e142d55 
								
							 
						 
						
							
							
								
								LibJS: Implement a nearly empty Intl.Collator object  
							
							... 
							
							
							
							This adds plumbing for the Intl.Collator object, constructor, and
prototype. 
							
						 
						
							2022-01-29 20:27:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								74939eb943 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.PluralRules.prototype.resolvedOptions  
							
							
							
						 
						
							2022-01-28 19:38:47 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								8b3f49ff84 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.PluralRules.supportedLocalesOf  
							
							
							
						 
						
							2022-01-28 19:38:47 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								348059bffd 
								
							 
						 
						
							
							
								
								LibJS: Implement the Intl.PluralRules constructor  
							
							
							
						 
						
							2022-01-28 19:38:47 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								0087804d10 
								
							 
						 
						
							
							
								
								LibJS: Implement a nearly empty Intl.PluralRules object  
							
							... 
							
							
							
							This adds plumbing for the Intl.PluralRules object, constructor, and
prototype. 
							
						 
						
							2022-01-28 19:38:47 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								a2e791277e 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.RelativeTimeFormat.prototype.formatToParts  
							
							
							
						 
						
							2022-01-27 21:16:44 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								9c5d7e515c 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.RelativeTimeFormat.prototype.format  
							
							
							
						 
						
							2022-01-27 21:16:44 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								cf92bc42a2 
								
							 
						 
						
							
							
								
								LibJS: Respect per-locale minimum grouping digits when number formatting  
							
							
							
						 
						
							2022-01-27 20:30:52 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								0c630d5687 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.RelativeTimeFormat.prototype.resolvedOptions  
							
							
							
						 
						
							2022-01-25 19:02:59 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								b50880f28c 
								
							 
						 
						
							
							
								
								LibJS: Fix errors in Intl.DateTimeFormat.prototype.resolvedOptions tests  
							
							... 
							
							
							
							Noticed these while implementing this prototype for RelativeTimeFormat. 
							
						 
						
							2022-01-25 19:02:59 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								cf166c1d93 
								
							 
						 
						
							
							
								
								LibJS: Implement Intl.RelativeTimeFormat.supportedLocalesOf  
							
							
							
						 
						
							2022-01-25 19:02:59 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								a2e31ed736 
								
							 
						 
						
							
							
								
								LibJS: Implement the Intl.RelativeTimeFormat constructor  
							
							
							
						 
						
							2022-01-25 19:02:59 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								79fdec85de 
								
							 
						 
						
							
							
								
								LibJS: Implement a nearly empty Intl.RelativeTimeFormat object  
							
							... 
							
							
							
							This adds plumbing for the Intl.RelativeTimeFormat object, constructor,
and prototype. 
							
						 
						
							2022-01-25 19:02:59 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								140f1d9e55 
								
							 
						 
						
							
							
								
								LibJS/Tests: Enable Number.isInteger() test that now passes  
							
							
							
						 
						
							2022-01-24 20:39:01 +00:00