Skip to content

👥 Add jneidel as doc contributor#7108

Merged
dubzzz merged 1 commit into
mainfrom
contributor/add-jneidel
Jul 6, 2026
Merged

👥 Add jneidel as doc contributor#7108
dubzzz merged 1 commit into
mainfrom
contributor/add-jneidel

Conversation

@github-actions

@github-actions github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

This PR adds @jneidel as a contributor for: doc

Generated automatically by the add-contributor workflow.

@github-actions
github-actions Bot requested a review from dubzzz as a code owner July 6, 2026 22:03
@changeset-bot

changeset-bot Bot commented Jul 6, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 6adfd39

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@dubzzz
dubzzz enabled auto-merge (squash) July 6, 2026 22:04
@pkg-pr-new

pkg-pr-new Bot commented Jul 6, 2026

Copy link
Copy Markdown
@fast-check/ava

npm i https://pkg.pr.new/@fast-check/ava@7108

fast-check

npm i https://pkg.pr.new/fast-check@7108

@fast-check/jest

npm i https://pkg.pr.new/@fast-check/jest@7108

@fast-check/packaged

npm i https://pkg.pr.new/@fast-check/packaged@7108

@fast-check/poisoning

npm i https://pkg.pr.new/@fast-check/poisoning@7108

@fast-check/vitest

npm i https://pkg.pr.new/@fast-check/vitest@7108

@fast-check/worker

npm i https://pkg.pr.new/@fast-check/worker@7108

commit: 6adfd39

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

⏱️ Benchmark Results

Click to expand

 RUN  v4.1.8 /home/runner/work/fast-check/fast-check


 ✓  fast-check  test/bench/arbitraries.bench.ts > generate 26280ms
     name                                                      hz      min      max     mean      p75      p99     p995     p999      rme  samples
   · boolean()                                           9,937.54   0.0863   0.8046   0.1006   0.1062   0.1627   0.1746   0.4309   ±0.66%     4969  [0.74x] ⇓
     boolean()                                          13,514.10   0.0697   0.4392   0.0740   0.0725   0.1081   0.1386   0.2750   ±0.40%     6758  (baseline)
   · integer()                                          11,790.45   0.0789   0.6526   0.0848   0.0849   0.0977   0.1030   0.1291   ±0.29%     5896  [1.12x] ⇑
     integer()                                          10,540.43   0.0878   0.5240   0.0949   0.0948   0.1099   0.1181   0.1375   ±0.33%     5271  (baseline)
   · maxSafeInteger()                                    7,448.27   0.1290   0.6282   0.1343   0.1328   0.1539   0.1656   0.4124   ±0.35%     3725  [0.97x] ⇓
     maxSafeInteger()                                    7,667.36   0.1248   0.5320   0.1304   0.1291   0.1552   0.1876   0.3728   ±0.32%     3834  (baseline)
   · bigInt()                                            1,268.25   0.7518   1.2421   0.7885   0.7881   1.0673   1.0849   1.2421   ±0.45%      635  [0.92x] ⇓
     bigInt()                                            1,380.22   0.6901   1.0957   0.7245   0.7271   0.9407   0.9464   1.0957   ±0.36%      691  (baseline)
   · float()                                             5,560.86   0.1652   0.6926   0.1798   0.1860   0.2252   0.2393   0.5247   ±0.45%     2781  [0.86x] ⇓
     float()                                             6,491.34   0.1455   0.5348   0.1541   0.1527   0.1907   0.2139   0.4014   ±0.37%     3246  (baseline)
   · double()                                            1,658.13   0.5006   5.5368   0.6031   0.5307   4.9814   5.3514   5.5368   ±6.33%      831  [0.76x] ⇓
     double()                                            2,173.67   0.4371   0.8561   0.4601   0.4626   0.6652   0.7081   0.7668   ±0.39%     1087  (baseline)
   · date()                                              3,469.59   0.2595   5.4947   0.2882   0.2731   0.3091   0.3615   5.4709   ±5.30%     1735  [0.81x] ⇓
     date()                                              4,281.43   0.2218   0.6061   0.2336   0.2354   0.4006   0.4350   0.5646   ±0.51%     2141  (baseline)
   · string()                                              861.00   0.8705  10.8824   1.1614   0.9360   7.8370   8.2666  10.8824   ±9.24%      431  [0.71x] ⇓
     string()                                            1,218.31   0.7639   1.8793   0.8208   0.8212   1.1235   1.1619   1.8793   ±0.65%      610  (baseline)
   · string({ maxLength: 100, size: 'max' })               158.99   5.2517  13.1892   6.2898   5.8218  13.1892  13.1892  13.1892   ±5.43%       80  [0.90x] ⇓
     string({ maxLength: 100, size: 'max' })               176.76   4.9191  15.8595   5.6575   5.3803  15.8595  15.8595  15.8595   ±6.32%       89  (baseline)
   · string({ unit: 'grapheme' })                          505.56   1.3058  18.3716   1.9780   1.7403  13.0339  18.0539  18.3716  ±13.06%      253  [0.66x] ⇓
     string({ unit: 'grapheme' })                          766.60   1.2378   1.7306   1.3045   1.3143   1.6219   1.6576   1.7306   ±0.46%      384  (baseline)
   · base64String()                                        791.95   0.9030  11.1487   1.2627   0.9701  10.0122  10.2056  11.1487   ±9.97%      396  [0.67x] ⇓
     base64String()                                      1,188.46   0.7980   1.2113   0.8414   0.8451   1.0671   1.1516   1.2113   ±0.41%      595  (baseline)
   · array(integer())                                    1,312.08   0.5077  11.8960   0.7622   0.5582   7.3466   7.8425  11.8960  ±10.38%      657  [0.59x] ⇓
     array(integer())                                    2,213.87   0.4205   0.7702   0.4517   0.4557   0.6368   0.6653   0.7475   ±0.38%     1107  (baseline)
   · array(integer(), { maxLength: 100, size: 'max' })     278.45   2.9795   7.4436   3.5913   3.2704   7.4391   7.4436   7.4436   ±5.65%      140  [0.79x] ⇓
     array(integer(), { maxLength: 100, size: 'max' })     352.59   2.4857   4.8147   2.8362   2.8063   4.5348   4.8147   4.8147   ±2.09%      177  (baseline)
   · uniqueArray(integer())                              1,071.28   0.6951   9.0059   0.9335   0.7642   6.2236   6.5749   9.0059   ±8.19%      536  [0.73x] ⇓
     uniqueArray(integer())                              1,469.05   0.6307   1.0900   0.6807   0.6835   0.9158   0.9774   1.0900   ±0.46%      735  (baseline)
   · set(integer())                                        938.50   0.8923   5.9471   1.0655   0.9465   5.5721   5.6649   5.9471   ±6.49%      470  [0.83x] ⇓
     set(integer())                                      1,135.14   0.8168   1.2159   0.8810   0.8852   1.1139   1.1945   1.2159   ±0.41%      568  (baseline)
   · tuple(integer())                                    5,707.70   0.1669   0.4621   0.1752   0.1735   0.2260   0.3347   0.3619   ±0.36%     2854  [1.02x] ⇑
     tuple(integer())                                    5,615.71   0.1669   0.7689   0.1781   0.1754   0.3497   0.4120   0.5357   ±0.63%     2808  (baseline)
   · record({ a: integer() })                            1,742.94   0.3629  12.1614   0.5737   0.3814  11.7862  11.8846  12.1614  ±17.24%      872  [0.62x] ⇓
     record({ a: integer() })                            2,796.14   0.3420   0.7297   0.3576   0.3582   0.5619   0.5969   0.6657   ±0.48%     1399  (baseline)
   · dictionary(string(), integer())                      87.8548   8.3729  25.5457  11.3824   9.2349  25.5457  25.5457  25.5457  ±13.31%       44  [0.78x] ⇓
     dictionary(string(), integer())                       112.78   7.9199  13.2457   8.8671   8.8894  13.2457  13.2457  13.2457   ±2.94%       57  (baseline)
   · map(string(), integer())                              125.56   5.4661  26.9634   7.9646   6.0946  26.9634  26.9634  26.9634  ±14.11%       63  [0.66x] ⇓
     map(string(), integer())                              188.99   4.9231   5.7210   5.2912   5.3678   5.7210   5.7210   5.7210   ±0.52%       95  (baseline)
   · constant(1)                                        27,684.76   0.0339   0.5569   0.0361   0.0354   0.0475   0.0554   0.4094   ±0.73%    13843  [0.98x] ⇓
     constant(1)                                        28,284.82   0.0337   0.4043   0.0354   0.0350   0.0468   0.0500   0.2314   ±0.45%    14143  (baseline)
   · constantFrom(1, 2)                                 12,453.83   0.0762   0.6274   0.0803   0.0791   0.0968   0.1060   0.4836   ±0.53%     6227  [0.96x] ⇓
     constantFrom(1, 2)                                 13,019.39   0.0731   0.4685   0.0768   0.0760   0.0906   0.1011   0.3080   ±0.36%     6510  (baseline)
   · oneof(integer(), integer())                         5,237.93   0.1830   0.7529   0.1909   0.1892   0.2142   0.2245   0.6140   ±0.48%     2619  [0.95x] ⇓
     oneof(integer(), integer())                         5,519.24   0.1710   0.6026   0.1812   0.1805   0.2031   0.2156   0.4811   ±0.35%     2760  (baseline)
   · oneof({ weight, arbitrary }, ...)                   5,281.15   0.1808   0.7363   0.1894   0.1878   0.2154   0.2377   0.5982   ±0.46%     2641  [0.94x] ⇓
     oneof({ weight, arbitrary }, ...)                   5,637.05   0.1693   0.5505   0.1774   0.1769   0.1997   0.2140   0.4678   ±0.33%     2819  (baseline)
   · option(integer())                                   5,444.09   0.1737   0.7266   0.1837   0.1810   0.2470   0.3011   0.6391   ±0.60%     2723  [0.91x] ⇓
     option(integer())                                   5,968.07   0.1591   0.5550   0.1676   0.1662   0.1924   0.2364   0.4705   ±0.40%     2985  (baseline)
   · subarray([1, 2, 3, 4, 5])                           2,204.59   0.4197   1.0384   0.4536   0.4530   0.8541   0.8764   1.0371   ±0.74%     1103  [0.89x] ⇓
     subarray([1, 2, 3, 4, 5])                           2,480.11   0.3764   1.1387   0.4032   0.4048   0.6181   0.6626   0.7751   ±0.56%     1241  (baseline)
   · letrec(tree)                                          663.89   0.8991  14.3471   1.5063   1.0821  13.3399  14.0422  14.3471  ±15.48%      332  [1.18x] ⇑
     letrec(tree)                                          563.39   1.4374   5.3509   1.7750   1.7293   5.1352   5.2830   5.3509   ±3.70%      282  (baseline)
   · memo(tree)                                            672.84   0.8896  17.2595   1.4862   1.0239  13.5953  15.0243  17.2595  ±16.53%      337  [1.22x] ⇑
     memo(tree)                                            553.54   1.5595   6.1412   1.8066   1.7461   5.3556   5.5372   6.1412   ±4.06%      277  (baseline)
   · anything()                                           65.2672  11.1865  23.9336  15.3216  21.7238  23.9336  23.9336  23.9336  ±11.31%       33  [0.82x] ⇓
     anything()                                           79.5075  11.3248  22.6595  12.5774  13.0518  22.6595  22.6595  22.6595   ±4.70%       40  (baseline)
   · json()                                               59.0571  12.1527  26.5982  16.9328  24.1560  26.5982  26.5982  26.5982  ±12.04%       30  [0.78x] ⇓
     json()                                               75.6178  11.5811  15.6457  13.2244  13.7616  15.6457  15.6457  15.6457   ±2.31%       38  (baseline)
   · entityGraph(employee -> manager? and team)           10.5795  86.7830   108.38  94.5228   101.27   108.38   108.38   108.38   ±6.16%       10  [0.74x] ⇓
     entityGraph(employee -> manager? and team)           14.2040  63.1091   104.71  70.4027  69.0487   104.71   104.71   104.71  ±12.51%       10  (baseline)
   · emailAddress()                                       71.2609  10.5267  21.3081  14.0329  20.1398  21.3081  21.3081  21.3081  ±11.12%       36  [0.70x] ⇓
     emailAddress()                                        101.29   9.5345  10.5130   9.8723  10.0028  10.5130  10.5130  10.5130   ±0.64%       51  (baseline)
   · webUrl()                                              120.20   5.3878  22.8502   8.3195   6.3840  22.8502  22.8502  22.8502  ±15.54%       61  [0.63x] ⇓
     webUrl()                                              190.69   4.9733   5.8100   5.2442   5.2499   5.8100   5.8100   5.8100   ±0.55%       96  (baseline)
   · ipV4()                                              1,077.22   0.6845  12.7946   0.9283   0.7087  11.6278  11.9170  12.7946  ±13.07%      539  [0.70x] ⇓
     ipV4()                                              1,537.60   0.6265   1.0736   0.6504   0.6502   0.9526   1.0055   1.0736   ±0.44%      769  (baseline)
   · ipV6()                                                178.12   3.8855  17.5921   5.6142   4.1560  17.5921  17.5921  17.5921  ±12.93%       90  [0.65x] ⇓
     ipV6()                                                275.59   3.4624   4.1434   3.6286   3.6258   4.1401   4.1434   4.1434   ±0.64%      138  (baseline)
   · uuid()                                                571.25   1.3126  14.9012   1.7505   1.3351  14.7201  14.8558  14.9012  ±15.46%      286  [0.72x] ⇓
     uuid()                                                797.26   1.2195   1.7426   1.2543   1.2479   1.5610   1.7229   1.7426   ±0.50%      399  (baseline)
   · stringMatching(/^abc$/)                            28,161.08   0.0335   0.3734   0.0355   0.0354   0.0468   0.0491   0.2189   ±0.40%    14081  [1.05x] ⇑
     stringMatching(/^abc$/)                            26,752.89   0.0356   0.4206   0.0374   0.0369   0.0489   0.0522   0.2748   ±0.48%    13377  (baseline)
   · stringMatching(/^[a-zA-Z0-9]+$/)                      499.73   1.4972  11.5407   2.0011   1.5875  11.4284  11.4945  11.5407  ±12.50%      250  [0.74x] ⇓
     stringMatching(/^[a-zA-Z0-9]+$/)                      676.73   1.3866   2.9156   1.4777   1.4765   1.9244   2.7560   2.9156   ±0.92%      339  (baseline)
   · mixedCase(string())                                   495.02   1.7066   9.1524   2.0201   1.7960   5.9564   6.0789   9.1524   ±5.84%      248  [0.81x] ⇓
     mixedCase(string())                                   611.03   1.5561   2.0592   1.6366   1.6387   2.0213   2.0465   2.0592   ±0.58%      306  (baseline)
   · integer().map(value+1)                              7,546.03   0.1250   0.5995   0.1325   0.1323   0.1542   0.1612   0.5207   ±0.43%     3774  [0.95x] ⇓
     integer().map(value+1)                              7,939.23   0.1184   0.5977   0.1260   0.1253   0.1421   0.1584   0.4546   ±0.44%     3970  (baseline)
   · integer().chain(integer())                          3,612.75   0.2637   0.7967   0.2768   0.2779   0.3468   0.6412   0.7641   ±0.67%     1807  [0.95x] ⇓
     integer().chain(integer())                          3,821.74   0.2482   0.6964   0.2617   0.2635   0.3328   0.5260   0.6949   ±0.51%     1911  (baseline)
   · integer().filter(true)                              8,588.79   0.1089   0.6897   0.1164   0.1156   0.1394   0.1751   0.2117   ±0.42%     4295  [0.94x] ⇓
     integer().filter(true)                              9,139.18   0.1017   0.6102   0.1094   0.1095   0.1232   0.1333   0.1701   ±0.35%     4570  (baseline)

 ✓  fast-check  test/bench/runners.bench.ts > runner 2432ms
     name                                                     hz     min     max    mean     p75     p99    p995    p999     rme  samples
   · assert on sync predicate not returning anything   16,117.03  0.0599  0.2699  0.0620  0.0605  0.0954  0.1407  0.1678  ±0.33%     8059  [1.27x] ⇑
     assert on sync predicate not returning anything   12,646.25  0.0763  0.3533  0.0791  0.0773  0.1416  0.1645  0.1883  ±0.35%     6324  (baseline)
   · assert on sync predicate returning true           16,172.58  0.0596  0.2429  0.0618  0.0604  0.0898  0.1367  0.1732  ±0.32%     8087  [1.29x] ⇑
     assert on sync predicate returning true           12,575.63  0.0760  0.3430  0.0795  0.0773  0.1579  0.1844  0.2679  ±0.44%     6288  (baseline)
   · assert on async predicate not returning anything  10,099.15  0.0935  0.3701  0.0990  0.0954  0.1731  0.1802  0.2290  ±0.44%     5050  [1.18x] ⇑
     assert on async predicate not returning anything   8,575.32  0.1102  0.3921  0.1166  0.1131  0.1973  0.2021  0.2324  ±0.43%     4288  (baseline)
   · check on sync predicate not returning anything    15,625.55  0.0614  0.2553  0.0640  0.0622  0.1305  0.1389  0.1857  ±0.35%     7813  [1.24x] ⇑
     check on sync predicate not returning anything    12,613.26  0.0761  0.3716  0.0793  0.0773  0.1529  0.1679  0.2664  ±0.39%     6307  (baseline)

 BENCH  Summary

   fast-check  stringMatching(/^abc$/) - test/bench/arbitraries.bench.ts > generate
    1.02x faster than constant(1)
    2.26x faster than constantFrom(1, 2)
    2.39x faster than integer()
    2.83x faster than boolean()
    3.28x faster than integer().filter(true)
    3.73x faster than integer().map(value+1)
    3.78x faster than maxSafeInteger()
    4.93x faster than tuple(integer())
    5.06x faster than float()
    5.17x faster than option(integer())
    5.33x faster than oneof({ weight, arbitrary }, ...)
    5.38x faster than oneof(integer(), integer())
    7.79x faster than integer().chain(integer())
    8.12x faster than date()
    12.77x faster than subarray([1, 2, 3, 4, 5])
    16.16x faster than record({ a: integer() })
    16.98x faster than double()
    21.46x faster than array(integer())
    22.20x faster than bigInt()
    26.14x faster than ipV4()
    26.29x faster than uniqueArray(integer())
    30.01x faster than set(integer())
    32.71x faster than string()
    35.56x faster than base64String()
    41.85x faster than memo(tree)
    42.42x faster than letrec(tree)
    49.30x faster than uuid()
    55.70x faster than string({ unit: 'grapheme' })
    56.35x faster than stringMatching(/^[a-zA-Z0-9]+$/)
    56.89x faster than mixedCase(string())
    101.13x faster than array(integer(), { maxLength: 100, size: 'max' })
    158.10x faster than ipV6()
    177.13x faster than string({ maxLength: 100, size: 'max' })
    224.29x faster than map(string(), integer())
    234.29x faster than webUrl()
    320.54x faster than dictionary(string(), integer())
    395.18x faster than emailAddress()
    431.47x faster than anything()
    476.84x faster than json()
    2661.86x faster than entityGraph(employee -> manager? and team)

   fast-check  assert on sync predicate returning true - test/bench/runners.bench.ts > runner
    1.00x faster than assert on sync predicate not returning anything
    1.04x faster than check on sync predicate not returning anything
    1.60x faster than assert on async predicate not returning anything

Benchmark report written to /home/runner/work/fast-check/fast-check/benchmark.json

Commit: 6adfd39 (merge: 572e030)

@dubzzz
dubzzz merged commit 6538ff0 into main Jul 6, 2026
53 of 54 checks passed
@dubzzz
dubzzz deleted the contributor/add-jneidel branch July 6, 2026 22:27
@codecov

codecov Bot commented Jul 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.89%. Comparing base (13fd4a6) to head (6adfd39).
⚠️ Report is 12 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #7108   +/-   ##
=======================================
  Coverage   94.89%   94.89%           
=======================================
  Files         212      212           
  Lines        5951     5951           
  Branches     1565     1565           
=======================================
  Hits         5647     5647           
  Misses        296      296           
  Partials        8        8           
Flag Coverage Δ
tests 94.89% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant