Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature URIError #806

Merged
merged 1 commit into from
Oct 6, 2020
Merged

Feature URIError #806

merged 1 commit into from
Oct 6, 2020

Conversation

HalidOdat
Copy link
Member

@HalidOdat HalidOdat commented Oct 5, 2020

It changes the following:

  • Add URIError
  • Add tests

@HalidOdat HalidOdat added enhancement New feature or request builtins PRs and Issues related to builtins/intrinsics labels Oct 5, 2020
@HalidOdat HalidOdat added this to the v0.11.0 milestone Oct 5, 2020
@codecov
Copy link

codecov bot commented Oct 5, 2020

Codecov Report

Merging #806 into master will decrease coverage by 0.00%.
The diff coverage is 55.17%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #806      +/-   ##
==========================================
- Coverage   59.68%   59.67%   -0.01%     
==========================================
  Files         156      157       +1     
  Lines       10020    10052      +32     
==========================================
+ Hits         5980     5999      +19     
- Misses       4040     4053      +13     
Impacted Files Coverage Δ
boa/src/builtins/error/mod.rs 66.66% <ø> (ø)
boa/src/builtins/mod.rs 23.52% <0.00%> (-0.72%) ⬇️
boa/src/context.rs 68.01% <28.57%> (-1.29%) ⬇️
boa/src/builtins/error/uri.rs 65.00% <65.00%> (ø)
boa/src/builtins/object/mod.rs 61.68% <100.00%> (+1.86%) ⬆️
boa/src/builtins/regexp/mod.rs 70.00% <0.00%> (-1.16%) ⬇️
boa/src/builtins/string/mod.rs 54.13% <0.00%> (-0.37%) ⬇️
boa/src/builtins/function/mod.rs 63.80% <0.00%> (+1.56%) ⬆️
... and 1 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 03f9632...78d44b0. Read the comment docs.

@github-actions
Copy link

github-actions bot commented Oct 5, 2020

Benchmark for 88dd25f

Click to view benchmark
Test PR Benchmark Master Benchmark %
Arithmetic operations (Execution) 386.9±13.57ns 415.9±43.32ns -6.97%
Arithmetic operations (Full) 295.0±17.91µs 290.4±20.37µs +1.58%
Array access (Execution) 9.0±0.51µs 9.8±1.06µs -8.16%
Array access (Full) 325.6±24.55µs 345.5±30.99µs -5.76%
Array creation (Execution) 3.4±0.16ms 3.6±0.26ms -5.56%
Array creation (Full) 4.0±0.17ms 4.1±0.25ms -2.44%
Array pop (Execution) 1179.8±71.13µs 1261.1±101.79µs -6.45%
Array pop (Full) 1788.6±97.09µs 1915.3±119.08µs -6.62%
Boolean Object Access (Execution) 5.4±0.42µs 6.1±0.49µs -11.48%
Boolean Object Access (Full) 302.3±15.14µs 314.7±15.24µs -3.94%
Clean js (Execution) 810.9±43.65µs 866.6±70.55µs -6.43%
Clean js (Full) 1177.7±54.40µs 1150.3±47.51µs +2.38%
Clean js (Parser) 40.3±2.52µs 41.2±1.64µs -2.18%
Create Realm 507.8±22.84ns 517.6±39.27ns -1.89%
Dynamic Object Property Access (Execution) 6.2±0.30µs 6.9±0.62µs -10.14%
Dynamic Object Property Access (Full) 312.5±22.93µs 336.7±30.24µs -7.19%
Expression (Parser) 7.2±0.28µs 7.4±0.30µs -2.70%
Fibonacci (Execution) 997.4±32.21µs 1086.8±141.91µs -8.23%
Fibonacci (Full) 1336.1±69.61µs 1435.0±114.62µs -6.89%
For loop (Execution) 25.2±1.47µs 26.7±2.70µs -5.62%
For loop (Full) 331.6±16.04µs 359.8±27.65µs -7.84%
For loop (Parser) 19.6±1.19µs 20.0±0.84µs -2.00%
Goal Symbols (Parser) 13.3±0.99µs 13.2±0.75µs +0.76%
Hello World (Parser) 3.5±0.21µs 3.4±0.17µs +2.94%
Long file (Parser) 836.8±25.98ns 830.9±31.78ns +0.71%
Mini js (Execution) 729.2±38.64µs 799.7±70.88µs -8.82%
Mini js (Full) 1069.3±39.11µs 1067.2±74.16µs +0.20%
Mini js (Parser) 36.5±2.87µs 36.0±1.32µs +1.39%
Number Object Access (Execution) 4.3±0.38µs 4.8±0.42µs -10.42%
Number Object Access (Full) 303.6±18.61µs 299.9±19.76µs +1.23%
Object Creation (Execution) 5.2±0.24µs 6.0±0.73µs -13.33%
Object Creation (Full) 309.7±18.80µs 330.5±25.02µs -6.29%
RegExp (Execution) 73.7±4.83µs 81.8±7.46µs -9.90%
RegExp (Full) 402.9±22.70µs 443.7±54.42µs -9.20%
RegExp Literal (Execution) 80.0±5.36µs 89.4±12.23µs -10.51%
RegExp Literal (Full) 405.2±18.73µs 424.8±33.91µs -4.61%
RegExp Literal Creation (Execution) 77.0±5.39µs 81.5±6.55µs -5.52%
RegExp Literal Creation (Full) 396.9±27.93µs 419.2±51.44µs -5.32%
Static Object Property Access (Execution) 5.6±0.26µs 6.2±0.61µs -9.68%
Static Object Property Access (Full) 313.7±15.01µs 323.3±27.98µs -2.97%
String Object Access (Execution) 7.9±0.28µs 8.6±0.53µs -8.14%
String Object Access (Full) 323.5±14.00µs 314.1±15.84µs +2.99%
String comparison (Execution) 7.1±0.57µs 7.5±0.56µs -5.33%
String comparison (Full) 308.4±16.29µs 325.9±23.85µs -5.37%
String concatenation (Execution) 6.0±0.31µs 6.4±0.57µs -6.25%
String concatenation (Full) 304.2±21.22µs 332.8±42.35µs -8.59%
String copy (Execution) 4.4±0.22µs 5.0±0.47µs -12.00%
String copy (Full) 303.0±14.20µs 330.8±28.07µs -8.40%
Symbols (Execution) 3.7±0.16µs 4.1±0.32µs -9.76%
Symbols (Full) 295.1±13.87µs 324.2±28.28µs -8.98%

@github-actions
Copy link

github-actions bot commented Oct 5, 2020

Benchmark for 5d49d88

Click to view benchmark
Test PR Benchmark Master Benchmark %
Arithmetic operations (Execution) 378.9±5.02ns 376.7±6.65ns +0.58%
Arithmetic operations (Full) 267.7±14.48µs 264.3±11.23µs +1.29%
Array access (Execution) 8.1±0.32µs 8.1±0.39µs 0.00%
Array access (Full) 293.2±6.59µs 287.0±10.66µs +2.16%
Array creation (Execution) 3.4±0.08ms 3.4±0.06ms 0.00%
Array creation (Full) 3.8±0.21ms 3.8±0.17ms 0.00%
Array pop (Execution) 1210.3±37.03µs 1217.2±29.79µs -0.57%
Array pop (Full) 1731.1±58.61µs 1746.1±29.71µs -0.86%
Boolean Object Access (Execution) 5.2±0.19µs 5.1±0.26µs +1.96%
Boolean Object Access (Full) 278.9±10.53µs 271.7±11.11µs +2.65%
Clean js (Execution) 760.5±24.05µs 757.1±20.43µs +0.45%
Clean js (Full) 1086.9±25.79µs 1089.0±27.91µs -0.19%
Clean js (Parser) 37.2±5.66µs 36.4±1.13µs +2.20%
Create Realm 488.0±15.74ns 474.6±26.30ns +2.82%
Dynamic Object Property Access (Execution) 5.6±0.13µs 5.7±0.14µs -1.75%
Dynamic Object Property Access (Full) 281.1±13.98µs 279.8±13.12µs +0.46%
Expression (Parser) 6.8±0.21µs 6.7±0.11µs +1.49%
Fibonacci (Execution) 829.9±13.86µs 837.6±30.07µs -0.92%
Fibonacci (Full) 1154.9±61.12µs 1168.3±66.53µs -1.15%
For loop (Execution) 23.1±0.48µs 23.4±1.17µs -1.28%
For loop (Full) 306.9±9.50µs 299.6±9.66µs +2.44%
For loop (Parser) 17.9±0.47µs 17.8±0.65µs +0.56%
Goal Symbols (Parser) 12.1±0.14µs 12.2±0.46µs -0.82%
Hello World (Parser) 3.2±0.04µs 3.2±0.17µs 0.00%
Long file (Parser) 806.8±21.99ns 781.1±49.83ns +3.29%
Mini js (Execution) 688.9±32.60µs 675.0±16.55µs +2.06%
Mini js (Full) 990.7±31.07µs 1009.7±44.13µs -1.88%
Mini js (Parser) 32.3±1.39µs 32.0±0.90µs +0.94%
Number Object Access (Execution) 4.1±0.62µs 4.0±0.22µs +2.50%
Number Object Access (Full) 277.0±8.65µs 268.2±5.14µs +3.28%
Object Creation (Execution) 4.6±0.06µs 4.7±0.12µs -2.13%
Object Creation (Full) 279.0±9.37µs 276.8±8.09µs +0.79%
RegExp (Execution) 65.6±1.41µs 66.3±1.88µs -1.06%
RegExp (Full) 367.0±19.94µs 360.3±9.49µs +1.86%
RegExp Literal (Execution) 70.9±3.40µs 70.1±2.32µs +1.14%
RegExp Literal (Full) 365.5±29.62µs 360.4±11.71µs +1.42%
RegExp Literal Creation (Execution) 65.7±1.54µs 67.2±4.68µs -2.23%
RegExp Literal Creation (Full) 354.5±13.24µs 349.5±10.82µs +1.43%
Static Object Property Access (Execution) 5.1±1.18µs 5.0±0.09µs +2.00%
Static Object Property Access (Full) 278.9±26.79µs 272.7±9.27µs +2.27%
String Object Access (Execution) 7.3±0.25µs 7.2±0.13µs +1.39%
String Object Access (Full) 286.1±17.11µs 280.2±44.05µs +2.11%
String comparison (Execution) 6.7±0.39µs 6.5±0.36µs +3.08%
String comparison (Full) 285.7±13.62µs 278.3±20.80µs +2.66%
String concatenation (Execution) 5.4±0.21µs 5.4±0.16µs 0.00%
String concatenation (Full) 275.6±7.69µs 267.8±7.77µs +2.91%
String copy (Execution) 4.0±0.22µs 4.0±0.09µs 0.00%
String copy (Full) 276.8±19.92µs 265.1±6.31µs +4.41%
Symbols (Execution) 3.3±0.09µs 3.3±0.15µs 0.00%
Symbols (Full) 266.2±7.30µs 261.2±5.71µs +1.91%

@github-actions
Copy link

github-actions bot commented Oct 6, 2020

Benchmark for ce80b77

Click to view benchmark
Test PR Benchmark Master Benchmark %
Arithmetic operations (Execution) 365.8±10.71ns 365.3±8.55ns +0.14%
Arithmetic operations (Full) 265.4±9.92µs 246.5±6.61µs +7.67%
Array access (Execution) 8.4±0.24µs 8.5±0.22µs -1.18%
Array access (Full) 281.8±11.75µs 278.6±14.65µs +1.15%
Array creation (Execution) 3.2±0.11ms 3.2±0.11ms 0.00%
Array creation (Full) 3.5±0.06ms 3.7±0.10ms -5.41%
Array pop (Execution) 1133.1±63.29µs 1104.1±27.71µs +2.63%
Array pop (Full) 1659.7±51.99µs 1654.6±66.58µs +0.31%
Boolean Object Access (Execution) 5.1±0.23µs 5.1±0.11µs 0.00%
Boolean Object Access (Full) 269.7±7.58µs 260.0±9.08µs +3.73%
Clean js (Execution) 760.8±49.17µs 755.9±26.72µs +0.65%
Clean js (Full) 1069.8±33.34µs 1084.8±29.09µs -1.38%
Clean js (Parser) 38.5±1.13µs 39.3±2.21µs -2.04%
Create Realm 505.2±12.58ns 499.7±49.82ns +1.10%
Dynamic Object Property Access (Execution) 5.9±0.19µs 6.1±0.14µs -3.28%
Dynamic Object Property Access (Full) 272.9±4.31µs 268.4±8.88µs +1.68%
Expression (Parser) 7.2±0.22µs 7.0±0.20µs +2.86%
Fibonacci (Execution) 918.0±27.14µs 926.3±45.57µs -0.90%
Fibonacci (Full) 1197.5±27.65µs 1234.0±62.40µs -2.96%
For loop (Execution) 24.9±1.51µs 23.7±0.59µs +5.06%
For loop (Full) 292.2±7.91µs 275.1±6.60µs +6.22%
For loop (Parser) 18.7±0.56µs 18.8±0.74µs -0.53%
Goal Symbols (Parser) 12.7±0.46µs 12.7±0.56µs 0.00%
Hello World (Parser) 3.4±0.13µs 3.4±0.14µs 0.00%
Long file (Parser) 805.4±13.92ns 810.6±43.73ns -0.64%
Mini js (Execution) 676.6±28.70µs 671.0±20.81µs +0.83%
Mini js (Full) 985.4±182.27µs 969.5±16.17µs +1.64%
Mini js (Parser) 34.1±0.97µs 33.8±0.43µs +0.89%
Number Object Access (Execution) 4.2±0.16µs 4.0±0.13µs +5.00%
Number Object Access (Full) 264.1±10.21µs 256.3±5.88µs +3.04%
Object Creation (Execution) 5.1±0.21µs 5.1±0.25µs 0.00%
Object Creation (Full) 274.1±15.83µs 261.5±6.29µs +4.82%
RegExp (Execution) 72.4±2.75µs 70.9±1.59µs +2.12%
RegExp (Full) 353.5±8.69µs 345.9±8.87µs +2.20%
RegExp Literal (Execution) 75.0±2.27µs 77.2±2.92µs -2.85%
RegExp Literal (Full) 349.2±7.02µs 347.5±17.68µs +0.49%
RegExp Literal Creation (Execution) 73.1±2.20µs 72.8±2.10µs +0.41%
RegExp Literal Creation (Full) 342.2±12.63µs 334.1±10.76µs +2.42%
Static Object Property Access (Execution) 5.3±0.30µs 5.3±0.13µs 0.00%
Static Object Property Access (Full) 269.4±8.58µs 261.6±13.51µs +2.98%
String Object Access (Execution) 7.4±0.34µs 7.3±0.12µs +1.37%
String Object Access (Full) 274.2±16.37µs 264.3±9.94µs +3.75%
String comparison (Execution) 6.7±0.21µs 6.9±0.27µs -2.90%
String comparison (Full) 276.0±18.17µs 264.4±6.64µs +4.39%
String concatenation (Execution) 5.6±0.32µs 5.6±0.12µs 0.00%
String concatenation (Full) 271.5±16.81µs 264.6±15.14µs +2.61%
String copy (Execution) 4.3±0.18µs 4.3±0.17µs 0.00%
String copy (Full) 258.7±6.68µs 255.6±9.61µs +1.21%
Symbols (Execution) 3.5±0.17µs 3.6±0.25µs -2.78%
Symbols (Full) 246.4±12.70µs 239.5±6.59µs +2.88%

boa/src/builtins/error/uri.rs Show resolved Hide resolved
- Add tests
@github-actions
Copy link

github-actions bot commented Oct 6, 2020

Benchmark for ad42800

Click to view benchmark
Test PR Benchmark Master Benchmark %
Arithmetic operations (Execution) 355.4±14.14ns 357.4±23.91ns -0.56%
Arithmetic operations (Full) 243.3±8.85µs 245.6±9.63µs -0.94%
Array access (Execution) 8.1±0.33µs 8.4±0.42µs -3.57%
Array access (Full) 274.1±10.38µs 274.2±11.66µs -0.04%
Array creation (Execution) 3.2±0.13ms 3.3±0.15ms -3.03%
Array creation (Full) 3.5±0.18ms 3.4±0.15ms +2.94%
Array pop (Execution) 1153.9±42.43µs 1151.5±57.66µs +0.21%
Array pop (Full) 1604.5±55.01µs 1620.1±88.11µs -0.96%
Boolean Object Access (Execution) 4.9±0.30µs 4.9±0.19µs 0.00%
Boolean Object Access (Full) 260.8±11.18µs 266.2±20.05µs -2.03%
Clean js (Execution) 748.5±28.91µs 749.1±30.71µs -0.08%
Clean js (Full) 1028.0±38.11µs 1036.8±50.65µs -0.85%
Clean js (Parser) 37.6±1.54µs 37.2±1.86µs +1.08%
Create Realm 473.7±16.66ns 462.3±29.16ns +2.47%
Dynamic Object Property Access (Execution) 5.8±0.37µs 5.5±0.19µs +5.45%
Dynamic Object Property Access (Full) 279.0±10.94µs 263.4±12.11µs +5.92%
Expression (Parser) 6.9±0.26µs 6.7±0.23µs +2.99%
Fibonacci (Execution) 895.7±43.46µs 897.3±43.27µs -0.18%
Fibonacci (Full) 1185.5±52.18µs 1175.3±61.73µs +0.87%
For loop (Execution) 23.3±0.81µs 22.9±0.83µs +1.75%
For loop (Full) 299.7±15.68µs 279.2±13.44µs +7.34%
For loop (Parser) 18.5±0.85µs 18.4±2.35µs +0.54%
Goal Symbols (Parser) 12.4±0.78µs 12.2±0.45µs +1.64%
Hello World (Parser) 3.2±0.13µs 3.2±0.56µs 0.00%
Long file (Parser) 783.9±26.09ns 799.5±35.44ns -1.95%
Mini js (Execution) 676.5±24.93µs 661.3±22.28µs +2.30%
Mini js (Full) 941.2±35.28µs 950.6±35.09µs -0.99%
Mini js (Parser) 33.9±2.17µs 32.8±1.28µs +3.35%
Number Object Access (Execution) 3.9±0.30µs 3.9±0.16µs 0.00%
Number Object Access (Full) 256.6±7.98µs 257.3±13.13µs -0.27%
Object Creation (Execution) 4.9±0.18µs 4.8±0.18µs +2.08%
Object Creation (Full) 261.4±10.72µs 266.4±29.04µs -1.88%
RegExp (Execution) 9.5±0.37µs 9.7±0.38µs -2.06%
RegExp (Full) 274.4±9.18µs 270.7±9.63µs +1.37%
RegExp Literal (Execution) 10.8±1.18µs 10.7±0.75µs +0.93%
RegExp Literal (Full) 272.0±11.40µs 265.5±9.54µs +2.45%
RegExp Literal Creation (Execution) 10.0±0.64µs 9.5±0.38µs +5.26%
RegExp Literal Creation (Full) 266.1±9.77µs 260.1±8.87µs +2.31%
Static Object Property Access (Execution) 5.3±0.37µs 5.1±0.35µs +3.92%
Static Object Property Access (Full) 274.1±20.85µs 260.1±17.01µs +5.38%
String Object Access (Execution) 6.8±0.38µs 7.1±0.24µs -4.23%
String Object Access (Full) 264.3±11.08µs 262.1±7.99µs +0.84%
String comparison (Execution) 6.7±0.40µs 6.7±0.31µs 0.00%
String comparison (Full) 266.4±10.97µs 265.5±20.17µs +0.34%
String concatenation (Execution) 5.4±0.28µs 5.5±0.34µs -1.82%
String concatenation (Full) 260.0±21.27µs 261.1±11.62µs -0.42%
String copy (Execution) 4.1±0.22µs 4.1±0.18µs 0.00%
String copy (Full) 258.6±11.82µs 256.9±18.80µs +0.66%
Symbols (Execution) 3.3±0.09µs 3.4±0.11µs -2.94%
Symbols (Full) 246.9±10.50µs 245.3±11.92µs +0.65%

@HalidOdat HalidOdat merged commit a77ceb6 into master Oct 6, 2020
@HalidOdat HalidOdat deleted the feature/urierror branch October 6, 2020 16:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
builtins PRs and Issues related to builtins/intrinsics enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants