nodemailer

298 releases measured. Default branch at 1d36a5e2, 2026-10-19, 36 files.

Source lines
13,178
+30.6% in a year
Maintainability index
49.1
-0.7 in a year
Mean CC per function
4.14
Functions with CC > 20
17
of 781
Size

Lines of code, comments and blank lines left out

Maintainability index

Mean over functions, weighted by their lines. Higher is better

Cyclomatic complexity per function

Lower is better

Hard to maintain

Share of functions, and of function code, past the usual limits. Lower is better

Least maintainable functions now

Function Location MI CC Lines
nmfetch src/fetch/index.ts:144 21.3 43 131
_setEnvelope src/smtp-connection/index.ts:1933 26.1 36 89
_handleAddress src/addressparser/index.ts:778 27.1 37 85
checkChar src/addressparser/index.ts:1090 27.3 46 78
login src/smtp-connection/index.ts:1095 27.7 29 92
buildHeaderParam src/mime-funcs/index.ts:311 30.1 20 90
_stripAddressComments src/addressparser/index.ts:547 30.3 31 77
<anonymous> src/mime-node/index.ts:881 30.5 29 74
_collectAddressParts src/addressparser/index.ts:655 31.2 28 71
resolveHostname src/shared/index.ts:294 32.3 20 73
wrap src/qp/index.ts:78 32.4 24 65
parseHeaderValue src/mime-funcs/index.ts:477 32.6 20 77
send src/sendmail-transport/index.ts:105 32.8 12 75
<anonymous> src/fetch/index.ts:364 33.3 21 64
<anonymous> src/mail-composer/index.ts:271 33.6 28 59
Every measured release 298
Release Date Files Source lines Functions MI Mean CC P90 CC Max CC CC > 10 CC > 20
default branch 2026-10-19 36 13,178 781 49.1 4.14 10 46 77 17
v10.1.7 2026-10-18 36 13,358 781 48.9 4.14 10 46 77 17
v10.1.6 2026-10-18 36 13,355 780 48.9 4.15 10 46 77 17
v10.1.5 2026-10-18 36 13,349 778 48.6 4.15 10 68 76 16
v10.1.4 2026-10-18 36 13,276 773 48.6 4.15 10 74 75 16
v10.1.3 2026-10-18 36 13,117 767 48.8 4.09 10 63 74 15
v10.1.2 2026-10-16 36 13,091 768 48.8 4.07 10 63 74 15
v10.1.1 2026-10-14 36 13,022 762 48.9 4.06 10 63 72 15
v10.1.0 2026-10-10 36 13,017 761 48.9 4.06 10 63 72 15
v10.0.16 2026-10-07 36 12,522 701 48.7 4.11 10 63 69 15
v10.0.15 2026-10-05 36 12,518 701 48.7 4.10 10 63 69 15
v10.0.14 2026-10-03 36 12,519 701 48.7 4.10 10 63 69 15
v10.0.13 2026-09-30 36 12,444 691 48.6 4.12 11 63 70 15
v10.0.12 2026-09-28 36 12,371 689 48.8 4.09 11 57 69 14
v10.0.11 2026-09-27 36 12,309 686 49.0 4.08 10 57 66 13
v10.0.10 2026-09-14 36 12,106 684 49.0 4.08 10 57 66 13
v10.0.9 2026-09-12 36 12,081 682 49.0 4.08 10 57 65 13
v10.0.8 2026-09-11 36 12,065 681 49.0 4.08 10 49 65 14
v10.0.7 2026-09-11 36 12,064 681 49.0 4.08 10 49 65 14
v10.0.6 2026-09-11 36 12,061 680 49.0 4.08 10 49 65 14
v10.0.5 2026-09-11 36 11,988 677 49.1 4.03 10 47 63 13
v10.0.4 2026-09-11 36 11,982 677 49.1 4.03 10 46 63 13
v10.0.3 2026-09-10 36 11,972 677 49.1 4.03 10 46 62 13
v10.0.2 2026-09-09 36 11,968 677 49.2 4.02 10 46 61 13
v10.0.1 2026-09-07 36 11,931 677 49.2 4.01 10 46 60 13
v10.0.0 2026-09-04 36 11,937 677 49.2 4.01 10 46 60 13
v9.1.1 2026-09-01 36 10,591 672 49.5 4.06 10 46 58 15
v9.1.0 2026-08-31 36 10,564 670 49.5 4.05 10 46 58 15
v9.0.6 2026-08-27 36 10,508 670 49.5 4.03 10 43 58 15
v9.0.5 2026-08-07 35 10,384 657 49.6 4.06 10 43 56 15
v9.0.4 2026-08-04 35 10,328 647 49.5 4.09 10 41 56 15
v9.0.3 2026-06-30 35 10,327 647 49.5 4.09 10 41 56 16
v9.0.2 2026-06-30 35 10,316 646 49.5 4.09 10 41 56 16
v9.0.1 2026-06-17 35 10,256 639 49.6 4.09 10 41 55 15
v9.0.0 2026-06-14 35 10,252 639 49.6 4.09 10 41 55 15
v8.0.11 2026-06-10 34 10,151 633 49.6 4.07 10 41 53 15
v8.0.10 2026-05-29 34 10,103 629 49.6 4.07 10 41 53 14
v8.0.9 2026-05-26 34 10,097 628 49.6 4.07 10 41 53 14
v8.0.8 2026-05-23 34 10,065 626 49.6 4.07 10 41 53 14
v8.0.7 2026-04-27 34 10,021 623 49.6 4.07 10 41 53 14
v8.0.6 2026-04-24 34 10,017 623 49.6 4.07 10 41 53 14
v8.0.5 2026-04-07 34 10,019 623 49.6 4.07 10 41 53 14
v8.0.4 2026-03-25 34 10,012 622 49.6 4.07 10 41 53 14
v8.0.3 2026-03-18 34 10,009 622 49.6 4.07 10 41 53 14
v8.0.2 2026-03-09 34 10,242 650 49.6 3.98 9 43 51 14
v8.0.1 2026-02-07 34 10,234 650 49.7 3.96 9 43 50 14
v8.0.0 2026-02-04 34 10,232 649 49.7 3.97 9 43 50 14
v7.0.13 2026-01-27 33 10,129 645 49.7 3.97 9 43 50 14
v7.0.12 2025-12-22 33 10,124 645 49.7 3.97 9 43 50 14
v7.0.11 2025-11-26 33 10,102 645 49.8 3.96 9 43 50 14
v7.0.10 2025-10-23 33 10,097 645 49.8 3.96 9 43 50 14
v7.0.9 2025-10-07 33 10,088 645 49.8 3.95 9 43 50 14
v7.0.8 2025-10-07 33 10,088 645 49.8 3.95 9 43 50 14
v7.0.7 2025-10-05 33 10,077 644 49.9 3.96 9 43 50 14
v7.0.6 2025-08-30 33 9,960 641 50.1 3.95 9 41 48 14
v7.0.5 2025-07-07 33 9,888 640 50.3 3.93 9 41 46 14
v7.0.4 2025-06-29 33 9,888 640 50.3 3.93 9 41 46 14
v7.0.3 2025-05-08 33 9,882 639 50.3 3.93 9 41 46 14
v7.0.2 2025-05-04 33 9,874 639 50.3 3.93 9 41 46 14
v7.0.1 2025-05-04 33 9,869 639 50.3 3.92 9 41 46 14
v7.0.0 2025-05-03 33 9,868 638 50.3 3.93 9 41 46 14
v6.10.1 2025-04-13 33 9,943 646 50.4 3.93 9 41 46 14
v6.10.0 2025-01-23 33 9,943 646 50.4 3.93 9 41 46 14
v6.9.16 2024-10-28 33 9,942 646 50.4 3.93 9 41 46 14
v6.9.15 2024-09-03 33 9,934 646 50.4 3.92 9 41 46 14
v6.9.14 2024-06-19 33 9,925 646 50.4 3.92 9 41 46 14
v6.9.13 2024-03-20 33 9,920 646 50.4 3.91 9 41 46 14
v6.9.12 2024-03-08 33 9,913 646 50.5 3.91 9 41 46 14
v6.9.11 2024-02-29 33 9,913 646 50.5 3.91 9 41 46 14
v6.9.10 2024-02-22 33 9,906 646 50.5 3.90 9 41 46 14
v6.9.9 2024-02-01 33 9,864 646 50.5 3.89 9 41 45 14
v6.9.8 2023-12-30 33 9,862 646 50.5 3.89 9 41 45 14
v6.9.7 2023-10-22 32 9,643 632 50.6 3.88 9 41 43 14
v6.9.6 2023-10-09 32 9,643 632 50.6 3.88 9 41 43 14
v6.9.5 2023-09-06 32 9,637 632 50.6 3.87 9 41 43 14
v6.9.4 2023-07-19 33 9,721 640 50.7 3.85 9 41 43 14
v6.9.3 2023-05-29 33 9,721 640 50.7 3.85 9 41 43 14
v6.9.2 2023-05-11 33 9,707 640 50.7 3.84 9 41 43 14
v6.9.1 2023-01-27 33 9,695 640 50.7 3.84 9 41 43 14
v6.9.0 2023-01-12 33 9,692 640 50.7 3.84 9 41 43 13
v6.8.0 2022-09-28 33 9,681 638 50.8 3.83 9 41 43 13
v6.7.8 2022-08-11 33 9,677 638 50.8 3.83 9 41 41 13
v6.7.7 2022-07-06 33 9,677 638 50.8 3.83 9 41 41 13
v6.7.6 2022-06-30 33 9,652 637 50.8 3.82 9 41 40 13
v6.7.5 2022-05-04 33 9,640 637 50.8 3.81 9 41 40 13
v6.7.4 2022-04-28 33 9,640 637 50.8 3.81 9 41 40 13
v6.7.3 2022-03-21 33 9,626 634 50.8 3.82 9 41 39 13
v6.7.2 2021-11-26 33 9,626 634 50.8 3.82 9 41 39 13
v6.7.1 2021-11-15 33 9,622 634 50.8 3.81 9 41 39 13
v6.7.0 2021-10-11 33 9,622 634 50.8 3.81 9 41 39 13
v6.6.5 2021-09-23 33 9,552 633 50.9 3.81 9 41 39 13
v6.6.4 2021-09-23 33 9,550 631 50.9 3.82 9 41 39 13
v6.6.3 2021-07-14 33 9,540 629 50.9 3.82 9 41 39 13
v6.6.1 2021-05-23 33 9,520 629 50.9 3.82 9 41 39 13
v6.6.0 2021-04-28 33 9,505 629 51.0 3.81 9 41 39 13
v6.5.0 2021-02-26 33 9,490 630 51.0 3.80 9 41 39 13
v6.4.18 2021-02-11 33 9,467 625 50.9 3.80 9 41 39 13
v6.4.17 2020-12-11 33 9,467 625 50.9 3.80 9 41 39 13
v6.4.16 2020-11-12 33 9,467 625 50.9 3.81 9 43 39 13
v6.4.15 2020-11-06 33 9,509 624 50.9 3.81 9 43 38 13
v6.4.14 2020-10-14 33 9,509 624 50.9 3.81 9 43 38 13
v6.4.13 2020-10-02 33 9,509 624 50.9 3.81 9 43 38 13
v6.4.12 2020-09-30 33 9,508 624 50.9 3.81 9 43 38 13
v6.4.11 2020-07-29 33 9,507 624 50.9 3.80 9 43 38 12
v6.4.10 2020-06-17 33 9,494 623 50.9 3.81 9 43 38 12
v6.4.8 2020-05-28 33 9,503 624 50.9 3.80 9 43 38 12
v6.4.7 2020-05-28 33 9,481 621 50.9 3.81 9 43 38 12
v6.4.6 2020-03-20 33 9,489 621 50.8 3.82 9 51 38 12
v6.4.5 2020-03-10 33 9,489 621 50.8 3.82 9 51 38 12
v6.4.4 2020-03-01 32 9,441 617 50.8 3.83 9 51 38 12
v6.4.3 2020-02-22 32 9,441 617 50.8 3.82 9 51 38 12
v6.4.2 2019-12-11 32 9,405 614 50.8 3.82 9 51 38 12
v6.4.1 2019-12-07 32 9,405 614 50.8 3.82 9 51 38 12
v6.4.0 2019-12-04 32 9,399 614 50.8 3.82 9 51 38 12
v6.3.1 2019-10-09 32 9,402 614 50.8 3.81 9 51 38 12
v6.3.0 2019-07-14 32 9,409 614 50.8 3.80 8 51 38 12
v6.2.1 2019-05-27 32 9,408 614 50.8 3.80 8 51 38 12
v6.2.0 2019-05-24 32 9,408 614 50.8 3.80 8 51 38 12
v6.1.1 2019-04-20 32 9,393 612 50.8 3.81 8 51 38 12
v6.1.0 2019-04-06 32 9,393 612 50.8 3.81 8 51 38 12
v6.0.0 2019-03-25 32 9,381 612 50.9 3.79 8 42 38 12
v5.1.1 2019-01-09 32 9,378 617 50.9 3.77 8 42 38 12
v5.1.0 2019-01-09 32 9,375 617 50.9 3.76 8 42 38 12
v5.0.1 2019-01-08 32 9,347 615 51.0 3.77 8 42 38 12
v5.0.0 2018-12-28 32 9,292 610 51.0 3.78 8 42 38 12
v4.7.0 2018-11-19 32 9,069 593 51.0 3.78 8 42 39 12
v4.6.8 2018-08-15 32 9,027 591 51.0 3.78 8 42 38 12
v4.6.7 2018-06-15 32 9,026 591 51.0 3.78 8 42 38 12
v4.6.6 2018-06-10 32 9,025 591 51.0 3.77 8 42 38 12
v4.6.5 2018-05-23 32 9,016 591 51.0 3.77 8 42 38 12
v4.6.4 2018-03-31 32 9,015 591 51.0 3.77 8 42 38 12
v4.6.3 2018-03-13 32 9,013 591 51.0 3.77 8 42 38 12
v4.6.2 2018-03-06 32 9,013 591 51.0 3.77 8 42 38 12
v4.6.1 2018-03-06 32 9,011 591 51.0 3.77 8 42 38 12
v4.6.0 2018-02-22 32 8,985 590 51.1 3.76 8 42 38 12
v4.5.0 2018-02-21 32 8,968 589 51.1 3.76 8 42 38 12
v4.4.2 2018-01-20 32 8,955 589 51.1 3.75 8 42 38 11
v4.4.1 2017-12-08 32 8,944 589 51.2 3.75 8 42 38 11
v4.4.0 2017-11-10 32 8,938 590 51.3 3.74 8 42 37 10
v4.3.1 2017-10-25 32 8,938 590 51.3 3.74 8 42 37 10
v4.3.0 2017-10-23 32 8,927 590 51.3 3.73 8 42 37 10
v4.2.0 2017-10-13 32 8,891 585 51.2 3.73 8 42 36 10
v4.1.3 2017-10-06 32 8,766 585 51.5 3.73 8 42 35 10
v4.1.2 2017-10-03 32 8,764 585 51.5 3.73 8 42 35 10
v4.1.1 2017-09-25 32 8,764 585 51.5 3.73 8 42 35 10
v4.1.0 2017-08-28 32 8,754 585 51.5 3.71 8 42 35 10
v4.0.1 2017-04-13 32 8,626 577 51.9 3.72 8 42 35 10
v4.0.0 2017-04-06 32 8,621 577 51.9 3.72 8 42 35 10
v3.1.8 2017-03-21 32 8,621 577 51.9 3.72 8 42 35 10
v3.1.7 2017-03-14 32 8,621 577 51.9 3.72 8 42 35 10
v3.1.6 2017-03-14 32 8,619 577 51.9 3.71 8 42 35 10
v3.1.5 2017-03-08 32 8,618 577 51.9 3.71 8 42 35 10
v3.1.4 2017-02-26 32 8,617 577 51.9 3.71 8 42 35 10
v3.1.3 2017-02-17 31 8,585 573 51.9 3.73 8 42 35 10
v3.1.2 2017-02-17 31 8,564 570 51.8 3.73 8 42 35 10
v3.1.1 2017-02-15 31 8,518 565 51.9 3.76 8 42 35 10
v3.1.0 2017-02-13 31 8,498 563 51.9 3.76 8 42 35 10
v3.0.2 2017-02-04 29 8,168 525 51.6 3.80 9 42 34 10
v3.0.1 2017-02-03 29 8,168 525 51.6 3.80 9 42 34 10
v3.0.0 2017-01-31 29 8,168 525 51.6 3.80 9 42 34 10
v2.7.2 2017-01-22 3 480 54 56.9 2.96 6 16 1 0
v2.7.1 2017-01-22 3 480 54 56.9 2.96 6 16 1 0
v2.7.0 2016-12-08 3 480 54 56.9 2.96 6 16 1 0
v2.6.4 2016-09-21 3 480 54 56.9 2.96 6 16 1 0
v2.6.3 2016-09-21 3 480 54 56.9 2.96 6 16 1 0
v2.6.2 2016-09-21 3 480 54 56.9 2.96 6 16 1 0
v2.6.1 2016-09-21 3 480 54 56.9 2.96 6 16 1 0
v2.6.0 2016-09-05 3 480 54 56.9 2.96 6 16 1 0
v2.5.0 2016-07-08 3 474 53 56.9 2.96 6 16 1 0
v2.4.2 2016-05-25 3 474 53 56.9 2.96 6 16 1 0
v2.4.1 2016-05-12 3 474 53 56.9 2.96 6 16 1 0
v2.4.0 2016-05-11 3 474 53 56.9 2.96 6 16 1 0
v2.3.2 2016-04-11 3 473 53 56.9 2.96 6 16 1 0
v2.3.0 2016-03-03 3 473 53 56.9 2.96 6 16 1 0
v2.2.1 2016-02-20 2 318 42 59.6 2.71 5 10 0 0
v2.2.0 2016-02-18 2 318 42 59.6 2.71 5 10 0 0
v2.1.0 2016-02-01 2 273 35 59.5 2.71 6 10 0 0
v2.0.0 2016-01-11 1 171 18 56.7 3.17 8 10 0 0
v1.11.0 2015-12-28 1 240 25 55.9 3.48 7 22 1 1
v1.10.0 2015-11-13 1 237 25 56.1 3.40 7 22 1 1
v1.9.0 2015-11-09 1 225 23 55.8 3.39 7 22 1 1
v1.8.0 2015-10-08 1 200 19 55.9 3.63 8 20 1 0
v1.7.0 2015-10-06 1 185 19 57.3 3.42 5 20 1 0
v1.6.0 2015-10-05 1 169 18 58.7 3.50 5 20 1 0
v1.5.0 2015-09-24 1 169 18 58.7 3.50 5 20 1 0
v1.4.0 2015-06-27 2 450 38 52.6 4.84 13 26 6 1
v1.3.4 2015-04-15 2 440 38 53.2 4.63 13 20 6 0
v1.3.3 2015-04-15 2 440 38 53.2 4.63 13 20 6 0
v1.3.2 2015-03-09 2 440 38 53.2 4.63 13 20 6 0
v1.3.1 2015-02-18 2 440 38 53.2 4.63 13 20 6 0
v1.3.0 2014-09-12 2 439 38 53.3 4.63 13 20 6 0
v1.2.2 2014-09-05 2 439 38 53.3 4.63 13 20 6 0
v1.2.1 2014-08-21 2 406 36 54.0 4.33 13 18 6 0
v1.2.0 2014-08-18 2 406 36 54.0 4.33 13 18 6 0
v1.1.2 2014-08-18 2 393 36 54.7 4.14 12 16 4 0
v1.1.1 2014-07-30 2 382 36 55.3 3.94 10 16 3 0
v1.1.0 2014-07-29 2 382 36 55.3 3.94 10 16 3 0
v1.0.4 2014-07-23 2 332 32 54.8 3.88 10 16 3 0
v1.0.3 2014-07-16 2 330 32 54.8 3.81 10 16 3 0
v1.0.2 2014-07-16 2 329 32 54.8 3.81 10 16 3 0
v1.0.1 2014-07-15 2 329 32 54.8 3.81 10 16 3 0
v1.0.0 2014-07-15 2 323 31 54.6 3.87 10 16 3 0
v0.7.1 2014-07-09 11 962 90 58.3 3.04 7 26 2 1
v0.7.0 2014-06-17 11 959 89 58.2 3.07 8 26 2 1
v0.6.5 2014-05-15 11 1,034 96 57.8 3.00 7 26 2 1
v0.6.4 2014-05-13 11 1,031 96 57.8 2.99 7 26 2 1
v0.6.3 2014-04-16 11 1,024 96 57.8 2.99 7 26 2 1
v0.6.2 2014-04-09 11 1,024 96 57.8 2.99 7 26 2 1
v0.6.1 2014-02-26 11 1,013 96 57.9 2.96 7 26 2 1
v0.6.0 2013-12-30 11 1,016 95 57.8 2.98 7 26 2 1
v0.5.15 2013-12-13 10 904 85 57.8 3.02 7 26 2 1
v0.5.14 2013-12-05 10 869 80 57.5 3.05 7 26 2 1
v0.5.13 2013-12-03 10 862 80 57.7 3.04 7 26 2 1
v0.5.12 2013-12-01 10 862 80 57.7 3.01 7 26 1 1
v0.5.11 2013-11-28 10 887 82 57.0 2.89 6 26 1 1
v0.5.9 2013-11-25 10 879 80 56.8 2.94 6 26 1 1
v0.5.8 2013-11-22 10 875 80 56.9 2.93 6 26 1 1
v0.5.7 2013-11-18 9 834 73 56.4 3.03 6 26 1 1
v0.5.6 2013-11-15 9 823 71 56.2 3.08 6 26 1 1
v0.5.5 2013-10-30 9 820 71 56.2 3.11 6 26 1 1
v0.5.4 2013-10-29 9 823 70 56.1 3.06 6 26 1 1
v0.5.3 2013-10-03 9 803 70 56.1 3.04 6 26 1 1
v0.5.2 2013-07-25 9 798 70 56.2 3.01 6 26 1 1
v0.5.1 2013-07-25 9 791 69 56.2 3.00 6 26 1 1
v0.5.0 2013-07-05 9 790 69 56.2 3.00 6 26 1 1
v0.4.4 2013-05-22 9 772 69 56.2 3.00 6 26 1 1
v0.4.3 2013-05-20 9 743 69 56.3 2.97 6 26 1 1
v0.4.2 2013-05-15 9 743 69 56.3 2.97 6 26 1 1
v0.4.1 2013-03-23 9 742 69 56.3 2.97 6 26 1 1
v0.4.0 2013-03-23 9 742 69 56.3 2.97 6 26 1 1
v0.3.45 2013-03-23 9 742 69 56.3 2.97 6 26 1 1
v0.3.44 2013-03-10 9 742 69 56.3 2.97 6 26 1 1
v0.3.43 2013-02-28 9 738 69 56.4 2.96 6 26 1 1
v0.3.42 2013-02-08 9 736 69 56.4 2.96 6 26 1 1
v0.3.41 2013-02-04 9 715 68 56.6 2.87 6 19 1 0
v0.3.40 2013-02-01 9 713 68 56.6 2.87 6 19 1 0
v0.3.39 2013-02-01 9 713 68 56.6 2.87 6 19 1 0
v0.3.38 2013-02-01 9 713 68 56.6 2.87 6 19 1 0
v0.3.37 2012-12-17 9 702 67 56.5 2.85 6 19 1 0
v0.3.35 2012-11-30 9 693 67 56.8 2.79 6 19 1 0
v0.3.34 2012-11-28 9 703 67 56.6 2.84 6 19 1 0
v0.3.33 2012-11-27 9 700 67 56.7 2.82 6 19 1 0
v0.3.32 2012-11-24 9 700 67 56.7 2.82 6 19 1 0
v0.3.31 2012-11-06 9 685 66 56.6 2.83 6 18 1 0
v0.3.30 2012-11-02 9 681 66 56.7 2.82 6 18 1 0
v0.3.29 2012-10-29 9 673 66 56.8 2.80 6 18 1 0
v0.3.28 2012-09-13 9 667 66 56.8 2.80 6 18 1 0
v0.3.27 2012-09-10 9 666 66 56.8 2.80 6 18 1 0
v0.3.26 2012-09-07 9 665 66 56.9 2.77 6 17 1 0
v0.3.25 2012-09-04 9 664 66 56.9 2.76 6 16 1 0
v0.3.22 2012-08-07 9 668 66 56.7 2.80 6 16 1 0
v0.3.21 2012-07-17 9 668 66 56.7 2.80 6 16 1 0
v0.3.20 2012-05-09 9 668 66 56.7 2.80 6 16 1 0
v0.3.19 2012-05-02 9 657 66 56.8 2.76 6 16 1 0
v0.3.18 2012-04-16 9 653 66 56.9 2.73 6 16 1 0
v0.3.17 2012-04-15 9 652 66 56.9 2.71 6 16 1 0
v0.3.16 2012-04-14 9 652 66 56.9 2.71 6 16 1 0
v0.3.15 2012-04-14 9 627 65 56.8 2.71 6 16 1 0
v0.3.14 2012-04-03 9 627 65 56.8 2.71 6 16 1 0
v0.3.13 2012-04-03 9 610 65 57.1 2.66 6 16 1 0
v0.3.12 2012-03-28 9 603 64 57.0 2.67 6 16 1 0
v0.3.11 2012-03-27 9 602 64 57.1 2.67 6 16 1 0
v0.3.10 2012-03-23 8 576 59 56.8 2.76 6 16 1 0
v0.3.9 2012-03-21 7 520 49 56.0 2.88 6 16 1 0
v0.3.8 2012-03-19 7 519 49 56.1 2.82 6 14 1 0
v0.3.7 2012-03-13 7 519 49 56.1 2.82 6 14 1 0
v0.3.6 2012-03-05 7 519 49 56.1 2.82 6 14 1 0
v0.3.5 2012-03-02 7 510 48 56.0 2.75 6 14 1 0
v0.3.4 2012-02-28 7 509 48 57.8 2.75 6 14 1 0
v0.3.3 2012-02-20 8 511 48 57.8 2.75 6 14 1 0
v0.3.2 2012-02-15 8 510 48 57.9 2.73 6 14 1 0
v0.3.1 2012-02-10 7 378 36 59.0 2.86 5 14 1 0
v0.3.0 2012-02-10 7 373 35 58.8 2.91 5 14 1 0
v0.2.4 2011-12-08 5 980 91 53.3 3.07 6 19 6 0
v0.2.3 2011-10-26 5 978 91 53.3 3.04 6 19 5 0
v0.2.2 2011-08-24 5 936 88 53.6 3.02 6 18 4 0
v0.2.0 2011-08-13 5 923 88 53.9 2.99 6 16 4 0
v0.1.24 2011-08-05 3 815 74 53.1 3.12 6 15 4 0
v0.1.23 2011-08-03 3 802 72 53.0 3.11 6 15 4 0
v0.1.22 2011-07-26 3 784 72 53.3 3.01 6 15 4 0
v0.1.21 2011-07-25 3 784 72 53.3 3.01 6 15 4 0
v0.1.20 2011-07-24 3 784 72 53.3 3.01 6 15 4 0
v0.1.19 2011-07-21 3 784 72 53.3 3.01 6 15 4 0
v0.1.17 2011-06-09 3 786 72 53.3 3.00 6 14 4 0
v0.1.16 2011-06-08 3 786 72 53.3 3.00 6 14 4 0
v0.1.15 2011-05-24 3 780 72 53.6 2.97 6 14 4 0
v0.1.14 2011-05-24 3 730 67 53.3 3.01 6 14 4 0
v0.1.13 2011-05-17 3 730 67 53.3 3.00 6 14 4 0
v0.1.12 2011-05-17 3 728 66 53.3 3.02 6 14 4 0
v0.1.10 2011-04-28 4 978 91 54.0 3.25 7 16 5 0
v0.1.9 2011-03-14 3 831 74 52.9 3.55 9 16 5 0
v0.1.8 2011-03-09 3 826 73 52.8 3.53 9 16 5 0
v0.1.7 2011-03-07 3 824 73 52.9 3.48 9 16 4 0
v0.1.6 2011-02-25 3 809 71 52.8 3.44 9 14 4 0
v0.1.5 2011-02-25 3 813 70 52.7 3.47 9 14 4 0
v0.1.4 2011-02-21 3 806 70 52.9 3.44 7 14 4 0
v0.1.3 2011-02-14 3 806 70 52.9 3.40 7 14 4 0
v0.1.2 2011-01-21 3 787 70 53.1 3.33 7 14 4 0
v0.1.1 2011-01-21 3 781 70 53.2 3.30 7 14 4 0
How the numbers are made

Library source only: lib/, src/, workers/, bin/ and top-level source files. Tests, examples, tooling, type declarations and generated or minified files are left out.

Source lines are lines carrying code, with blank lines and comments dropped.

Cyclomatic complexity (CC) counts the independent paths through a function: 1 plus every if, loop, case, catch, ternary, && / || / ??, optional chain and default parameter. Above 10 a function is commonly considered hard to test, above 20 hard to understand.

Maintainability index (MI) is computed per function as max(0, (171 - 5.2 ln(Halstead volume) - 0.23 CC - 16.2 ln(lines)) * 100 / 171), the 0 to 100 scale Visual Studio uses, where below 20 is poor. The repository figure weights each function by its lines. Code outside any function (lookup tables, schemas, declarations) counts toward size only. MI is driven mostly by size, so read it as a trend, not a grade.

A move from JavaScript to TypeScript adds type annotations to every function, which raises the Halstead volume and lowers MI without the logic changing. Expect a step at that release.

Measured Mon, 19 Oct 2026 19:28:19 GMT.