curl / Development / Project status dashboard

Dashboard

Daily updated graphs showing the state of the curl project in as much detail as possible.
[1 column] [3 columns] [5 columns] [data view]

Each image below links to the corresponding CSV file with recently updated source data. The first and last lines of data is shown on the right.

80-percent data

80 percent
2000-01-01;1;1.00;1
2001-01-01;1;1.00;1
2002-01-01;1;1.00;1
2003-01-01;1;1.00;1
2004-01-01;1;1.00;1
...
2017-01-01;9;6.40;4
2018-01-01;14;8.20;4
2019-01-01;8;8.80;5
2020-01-01;5;8.40;5
2021-01-01;12;9.60;5

days-per-release data

days per release
1998-03-20;0;0.0;0.0
1998-04-03;13;6.5;6.5
1998-04-15;12;8.3;8.3
1998-04-30;15;10.0;10.0
1998-05-13;13;10.6;10.6
...
2021-03-31;55;47.9;42.4
2021-04-14;14;44.1;42.2
2021-05-26;42;43.4;42.2
2021-07-21;56;48.0;42.3
2021-09-15;56;48.9;42.4
release date - days since previous release - 12 month average - all time average

This data comes from the main curl changelog's stored release dates.

authors-per-year data

authors per year
1999-01-01;1;1
2000-01-01;1;0
2001-01-01;4;3
2002-01-01;4;1
2003-01-01;3;1
...
2017-01-01;133;95
2018-01-01;158;112
2019-01-01;156;108
2020-01-01;147;103
2021-01-01;138;94
date (year) - number of commit authors that year - number of first time commit authors that year

Data from the git repository

todo data

todo
2000-08-21;17;0
2000-08-30;17;0
2000-09-28;15;0
2000-10-16;17;0
2000-12-04;20;0
...
2021-04-14;129;102
2021-05-26;128;106
2021-07-21;129;109
2021-09-14;130;118
2021-09-21;131;119
date - TODO items - KNOWN_BUGS items

This data comes from parsing the two files in git at the time of releases (and currently). The scripts understand the file format used for these files.

manpages data

manpages
curl 6.5;2000-03-14;0
curl 6.5.1;2000-03-21;0
curl 6.5.2;2000-03-21;0
curl 7.1.1;2000-08-21;11
curl 7.2;2000-08-30;11
...
curl 7.76.1;2021-04-14;459
curl 7.77.0;2021-05-26;461
curl 7.78.0;2021-07-21;461
curl 7.79.0;2021-09-14;461
now;2021-09-21;461

vulns-releases data

vulns releases
1998-03-20;4.0;0
1998-04-03;4.1;0
1998-04-15;4.2;0
1998-04-30;4.3;0
1998-05-13;4.4;0
...
2021-03-31;7.76.0;11
2021-04-14;7.76.1;11
2021-05-26;7.77.0;8
2021-07-21;7.78.0;3
2021-09-15;7.79.0;0
date - version - number of known vulnerabilities

This data comes from the release.csv table.

vulns-plot data

vulns plot
none;1998-03-20;0
CVE-2000-0973;2000-10-13;1
CVE-2003-1605;2003-08-03;2
CVE-2005-0490;2005-02-21;3
CVE-2005-3185;2005-10-13;4
...
CVE-2021-22926;2021-07-21;108
CVE-2021-22945;2021-09-15;109
CVE-2021-22946;2021-09-15;110
CVE-2021-22947;2021-09-15;111
now;2021-09-21;111
CVE id - announce date - index

This data comes from curl-www/docs/vuln.pm.

fixtime data

fixtime
CVE-2005-3185;2005-10-12;1;1.0;1;1.0;
CVE-2005-4077;2005-11-29;8;4.5;2;4.5;
CVE-2006-1061;2006-03-10;10;6.3;3;6.3;
CVE-2007-3564;2007-06-27;13;13.0;4;8.0;
CVE-2009-0037;2009-02-06;25;25.0;5;11.4;
...
CVE-2021-22925;2021-06-11;40;29.8;104;27.3;
CVE-2021-22926;2021-06-15;36;30.3;105;27.4;
CVE-2021-22945;2021-07-19;58;33.1;106;27.7;
CVE-2021-22946;2021-09-08;7;31.3;107;27.5;
CVE-2021-22947;2021-09-07;8;29.9;108;27.3;
CVE id - report date - time until fix in days - 12 month average - index counter - all-time average

This data comes from curl-www/docs/vuln.pm.

The time is simply the number of days from the report to the curl project until the fix was released and annnounced publicly.

The graph has all the CVE ids on the xaxes under their corresponding bars.

github-age data

github age
2010-10-01;1.96;1.96;1.96;1.96
2010-11-01;0.05;0.05;1.00;0.05
2010-12-01;0.88;0.88;0.96;0.88
2011-01-01;0.00;0.00;0.72;0.00
2011-02-01;1.66;1.66;0.91;1.66
...
2021-05-01;0.83;15.62;13.44;2.39
2021-06-01;0.73;8.95;13.15;2.34
2021-07-01;1.03;4.59;11.73;4.03
2021-08-01;1.09;16.72;11.47;10.45
2021-09-01;0.69;10.32;10.82;1.88
date - median - average - 12 month aver average - 75th percentile

This data is fetched from github daily using their API, then stored and massaged by scripts on our server.

vulns-per-year data

vulns per year
1998-01-01;0;1;0;0.00;1.00
1999-01-01;0;5;0;0.00;3.00
2000-01-01;1;16;1;0.33;7.33
2001-01-01;0;5;1;0.25;6.75
2002-01-01;0;0;1;0.20;5.40
...
2017-01-01;12;5;72;11.60;5.80
2018-01-01;12;6;84;13.00;4.60
2019-01-01;8;0;92;13.00;3.80
2020-01-01;6;1;98;12.40;3.40
2021-01-01;13;2;111;10.20;2.80
date (year) - vulns within that year - accumulated number of vulns

The data comes from the vuln.pm file.

github-open data

github open
2010-10-01;1;1.0;1;0;1;1
2010-10-02;1;1.0;0;0;1;1
2010-10-03;1;1.0;0;0;1;1
2010-10-04;1;1.0;0;0;1;1
2010-10-05;1;1.0;0;1;1;1
...
2021-09-16;44;55.0;6;13;39;86
2021-09-17;47;55.0;9;6;39;86
2021-09-18;48;55.1;1;0;39;86
2021-09-19;49;55.2;3;2;39;86
2021-09-20;51;55.3;2;0;40;86
date - number of open issues end of day - created that day - closed that day - 90 day average - 90 day minimum - 90 day maximum

This data is fetched from github daily using their API, then stored and massaged by scripts on our server.

firsttimers data

firsttimers
2010-01-01;1;1.00
2010-02-01;0;0.50
2010-03-01;7;2.67
2010-04-01;6;3.50
2010-05-01;6;4.00
...
2021-05-01;11;9.08
2021-06-01;22;9.83
2021-07-01;12;10.17
2021-08-01;11;10.00
2021-09-01;3;9.67
date (month) - first time committers that month - 12 month average first time committers

This data comes from git repository.

ci-services data

ci services
2013-10-17;2;2;0;0;0;0
2016-07-28;4;4;0;0;0;0
2017-06-14;8;8;0;0;0;0;0;0
2017-08-09;11;11;0;0;0;0;0;0
2017-08-13;11;11;0;0;0;0;0;0
...
2021-04-14;93;33;2;23;16;19;0;0
2021-05-26;99;32;6;23;16;22;0;0
2021-07-21;97;0;6;23;16;20;2;30
2021-09-14;99;0;7;23;16;20;2;31
2021-09-19;99;0;7;23;16;20;2;31

api-calls data

api calls
2000-08-21;31
2005-02-01;46
2005-05-16;46
2005-10-13;46
2006-02-27;46
...
2021-04-14;85
2021-05-26;85
2021-07-21;85
2021-09-14;85
2021-09-21;85
date - number of API calls

The number of calls is extracted by parsing the include/curl.h file in git at the time of past releases

bugbounty data

bugbounty
CVE-2000-0973;2000-10-13;0;0
CVE-2003-1605;2003-08-03;0;0
CVE-2005-0490;2005-02-21;0;0
CVE-2005-3185;2005-10-13;0;0
CVE-2005-4077;2005-12-07;0;0
...
CVE-2021-22925;2021-07-21;12400;800
CVE-2021-22926;2021-07-21;13400;1000
CVE-2021-22945;2021-09-15;14400;1000
CVE-2021-22946;2021-09-15;15400;1000
CVE-2021-22947;2021-09-15;16900;1500
CVE id - date of publication - accumulated bounty - invidual bounty

This information comes from curl-www/docs/vuln.pm.

authors data

authors
1999-12-29;0;1;0.00;1;1;1
2001-05-30;0;2;0.00;1;2;2
2001-05-31;0;3;0.00;2;3;3
2001-08-09;0;4;0.00;3;4;4
2002-08-03;0;5;0.00;3;4;5
...
2021-08-23;606;945;64.13;66;123;338
2021-09-06;607;947;64.10;66;123;338
2021-09-06;608;947;64.20;66;123;338
2021-09-13;609;948;64.24;66;123;338
2021-09-21;609;948;64.24;66;123;338
date - single commit authors - total authors - the single authors' share among all authors - 10+ committers - 5+ committers - 2+ committers

The data comes from the git repository

comments data

comments
curl 6.5;2000-03-14;1900;3785;11469;64;22.06
curl 6.5.1;2000-03-21;1903;3779;11439;64;22.07
curl 6.5.2;2000-03-21;1903;3779;11504;64;21.99
curl 7.1.1;2000-08-21;2109;4430;12632;71;23.11
curl 7.2;2000-08-30;2135;4439;12749;71;22.97
...
curl 7.76.1;2021-04-14;20828;33006;111610;406;19.95
curl 7.77.0;2021-05-26;20856;33204;112217;408;19.97
curl 7.78.0;2021-07-21;20705;33018;111680;406;19.96
curl 7.79.0;2021-09-14;20750;33043;112032;407;19.93
now;2021-09-21;20751;33046;112046;407;19.93

lines data

lines
1999-12-01;37273;0;0;0;37273
2000-01-01;37810;0;10960;0;26850
2000-02-01;39181;0;11739;0;27442
2000-03-01;41627;0;13327;0;28300
2000-04-01;42256;0;13513;0;28743
...
2021-05-01;619541;538499;414225;229110;514705
2021-06-01;621232;540947;418348;231368;512463
2021-07-01;623269;541490;421059;231931;511769
2021-08-01;624304;542329;421450;232477;512706
2021-09-01;626317;542929;422539;232601;514106
date (month) - Daniel's added lines - others' added lines - Daniel's deleted lines - others' deleted lines - total amount of lines present

The data comes from analyzing the git changes and includes all files and directories.

bugfix-frequency data

bugfix frequency
1998-03-20;0;0.000
1998-04-03;3;0.231
1998-04-15;7;0.280
1998-04-30;8;0.200
1998-05-13;10;0.189
...
2021-03-31;6812;2.601
2021-04-14;6833;2.557
2021-05-26;6966;2.658
2021-07-21;7142;2.723
2021-09-15;7270;2.807
date - accumulated number of bugfixes through time - average number of fixes per day over the last 12 months

This data comes from parsing the RELEASE-NOTES file in git at the time of each release.

cmdline-options-over-time data

cmdline options over time
1998-03-20;24
1998-08-27;29
1999-05-22;46
1999-09-13;48
2000-03-21;48
...
2021-04-14;240
2021-05-26;242
2021-07-21;242
2021-09-14;242
2021-09-21;242
date - number of command line options

This data comes the counter in RELEASE-NOTES in git at the time of releases. The time from before we started doing that, the count has been manually counted.

loc data

loc
1998-03-18;2200
1998-09-20;3379
1999-05-22;12289
1999-09-13;14060
1999-11-23;14826
...
2021-05-01;173200;577
2021-06-01;172046;-1154
2021-07-01;172069;23
2021-08-01;172478;409
2021-09-01;172581;103
date - lines of code

Lines of code means lines in the src, lib and include directories and is extracted from the git history of the repository.

http-versions data

http versions
1998-03-20;HTTP/1.0;1
1999-05-22;HTTP/0.9;2
2001-03-22;HTTP/1.1;3
2013-09-01;HTTP/2;4
2019-08-01;HTTP/3;5
...
2021-09-21;;5
date - HTTP version

This data comes from a manually maintained file. Based on code inspection.

commits-per-month data

commits per month
1999-12-01;1;1.00;1.00
2000-01-01;22;11.50;11.50
2000-02-01;42;21.67;21.67
2000-03-01;70;33.75;33.75
2000-04-01;17;30.40;30.40
...
2021-05-01;136;115.92;105.53
2021-06-01;165;120.75;105.76
2021-07-01;106;123.25;105.76
2021-08-01;103;121.42;105.75
2021-09-01;64;114.92;105.59
date (month) - commits that month - 12 month commit count average

The data comes from the git repository.

github-monthly data

github monthly
2010-10-01;2;2;0;2.0;0.0;
2010-11-01;1;1;0;1.5;0.0;
2010-12-01;2;2;0;1.7;0.0;
2011-01-01;1;1;0;1.5;0.0;
2011-02-01;3;3;0;1.8;0.0;
...
2021-05-01;165;116;49;88.5;44.2;
2021-06-01;165;118;47;91.6;43.2;
2021-07-01;185;115;70;94.6;45.8;
2021-08-01;124;84;40;93.8;45.1;
2021-09-01;92;48;44;89.6;45.8;
date (month) - join total count this month - number of created PRs this month - number of created issues this month - 12 month average created PRs - 12 month average created issues

This data is fetched from github daily using their API, then stored and massaged by scripts on our server.

ci-jobs data

ci jobs
2013-10-17;2;2;0;0;0;0
2016-07-28;4;4;0;0;0;0
2017-06-14;8;8;0;0;0;0;0;0
2017-08-09;11;11;0;0;0;0;0;0
2017-08-13;11;11;0;0;0;0;0;0
...
2021-04-14;93;33;2;23;16;19;0;0
2021-05-26;99;32;6;23;16;22;0;0
2021-07-21;97;0;6;23;16;20;2;30
2021-09-14;99;0;7;23;16;20;2;31
2021-09-19;99;0;7;23;16;20;2;31
date - all jobs accumulated - travis - cirrus - appveyor - azure pipelines - github actions

The data comes from parsing the CI services instruction meta data files as stored in git.

daniel-vs-rest data

daniel vs rest
1999-12-01;100.00;0.00;100.00;100.00;100.00
2000-01-01;100.00;0.00;100.00;100.00;100.00
2000-02-01;100.00;0.00;100.00;100.00;100.00
2000-03-01;100.00;0.00;100.00;100.00;100.00
2000-04-01;100.00;0.00;100.00;100.00;100.00
...
2021-05-01;57.40;42.60;53.68;53.50;64.39
2021-06-01;57.42;42.58;61.21;53.45;64.39
2021-07-01;57.35;42.65;38.68;53.51;64.48
2021-08-01;57.33;42.67;52.43;53.51;64.45
2021-09-01;57.38;42.62;78.12;53.57;64.50
date - accumulated commit count - Daniel's share - everyone else's share

The data comes from the git repository.

ci-platforms data

ci platforms
2017-06-14;8;6;2;0;0
2017-08-09;11;6;5;0;0
2017-08-13;11;6;5;0;0
2017-10-04;15;9;6;0;0
2017-10-23;15;9;6;0;0
...
2021-04-14;94;41;17;33;3
2021-05-26;100;40;20;37;3
2021-07-21;98;41;17;37;3
2021-09-14;99;42;17;37;3
2021-09-19;99;42;17;37;3
date - all jobs accumulated - travis - linux - mac - windows - freebsd

The data comes from parsing the CI services instruction meta data files as stored in git.

commits data

commits
1999-12-01;1;1;0
2000-01-01;23;23;0
2000-02-01;65;65;0
2000-03-01;135;135;0
2000-04-01;152;152;0
...
2021-05-01;27227;15628;11599
2021-06-01;27392;15729;11663
2021-07-01;27498;15770;11728
2021-08-01;27601;15824;11777
2021-09-01;27665;15874;11791
date (month) - number of commits until and including that month

The data comes from the git repository.

contributors data

contributors
1998-07-30;7
1999-09-13;30
2000-08-21;48
2001-06-07;67
2001-09-23;73
...
2021-04-14;2366
2021-05-26;2408
2021-07-21;2459
2021-09-14;2484
2021-09-21;2489
date (month) - accumulated number of authors until then

The data comes from the git repository.

setopts data

setopts
2000-08-21;59
2000-10-16;63
2001-09-23;82
2002-10-01;100
2003-07-28;107
...
2021-04-14;288
2021-05-26;290
2021-07-21;290
2021-09-14;290
2021-09-21;290
date - number of options curl_easy_setopt accepts

The number of options comes from parsing the include/curl.h header file from git as it changed over time.

tls-backends data

tls backends
1998-03-20;;0
1998-06-01;OpenSSL;1
2005-04-01;GnuTLS;2
2006-06-29;wolfSSL;3
2007-02-01;NSS;4
...
2019-03-08;AmiSSL;13
2019-11-01;BearSSL;14
2020-01-16;-PolarSSL;13
2021-02-09;rustls;14
2021-09-21;;14
date - TLS backend - accumlated number of backends supported

This data comes from a list curated by hand.

third-parties data

third parties
1998-03-20;;0
1998-06-01;OpenSSL;1
1999-08-01;OpenLDAP;2
2002-09-07;zlib;3
2003-08-05;c-ares;4
...
2020-05-25;zstd;33
2020-12-14;hyper;34
2020-12-24;libgsasl;35
2021-02-09;rustls;36
2021-09-21;;36
date - third party name

If the name starts with a minus, support for that third party was removed.

This data comes from a list in the stats repository curated by hand.

tests data

tests
2000-03-14;0
2000-03-21;0
2000-03-21;0
2000-08-21;0
2000-08-30;0
...
2021-04-14;1421
2021-05-26;1427
2021-07-21;1420
2021-09-14;1432
2021-09-21;1433
date - number of tests

This data comes from counting the test files present in git at the time of releases.

releases data

releases
1998-03-20;4.0;1
1998-04-03;4.1;2
1998-04-15;4.2;3
1998-04-30;4.3;4
1998-05-13;4.4;5
...
2021-03-31;7.76.0;198
2021-04-14;7.76.1;199
2021-05-26;7.77.0;200
2021-07-21;7.78.0;201
2021-09-15;7.79.0;202
date - version - accumlated release number

This data comes from the main curl changelog's stored release dates.

docs data

docs
2000-05-22;6235
2000-05-26;6331
2000-05-29;6589
2000-05-30;6588
2000-06-02;6588
...
2021-09-14;82494
2021-09-15;82520
2021-09-16;82522
2021-09-19;82532
2021-09-21;82532
date - lines of documentation

This data comes from checking the docs/ subdiretory in git.

cve-time data

cve time
CVE-2000-0973;2000-10-13;396;937;937;1;396.0;396.0
CVE-2003-1605;2003-08-03;1091;1961;1024;2;1091.0;743.5
CVE-2005-0490;2005-02-21;1607;2530;568;3;1607.0;1031.3
CVE-2005-3185;2005-10-13;808;2763;233;4;1207.5;975.5
CVE-2005-4077;2005-12-07;590;2819;55;5;1001.7;898.4
...
CVE-2021-22925;2021-07-21;7425;8523;0;107;4197.0;2836.5
CVE-2021-22926;2021-07-21;2837;8523;0;108;4099.9;2836.5
CVE-2021-22945;2021-09-15;336;8579;56;109;3927.4;2813.6
CVE-2021-22946;2021-09-15;4235;8579;0;110;3947.9;2826.5
CVE-2021-22947;2021-09-15;4235;8579;0;111;3965.9;2839.2
CVE id - report date - CVE age - project age - delta age since prev - index - 12 month average

This data comes from curl-www/docs/vuln.pm.

The "CVE age" is the number of days the vulnerability had been present in source code when reported. Project age is how old the project was in number of days at the time that vulnerability was reported.

The graph has all the CVE ids on the xaxes under their corresponding bars.

commits-per-year data

commits per year
2000-01-01;709;709.0
2001-01-01;1346;1027.5
2002-01-01;937;997.3
2003-01-01;1218;1052.5
2004-01-01;2102;1262.4
...
2017-01-01;1381;1416.4
2018-01-01;1083;1329.4
2019-01-01;1263;1233.0
2020-01-01;1481;1288.0
2021-01-01;1077;1257.0
date (year) - commit authors this year

The data comes from the git repository

contribs-release data

contribs release
2003-11-01;48;48
2004-01-22;40;44
2004-03-18;30;40
2004-04-26;25;35
2004-06-02;21;30
...
2021-03-31;58;58
2021-04-14;23;52
2021-05-26;82;58
2021-07-21;83;58
2021-09-14;62;58
date - number of contributors in that release - 7 release median

The data for this comes from the RELEASE-NOTES file in git at the time of releases. It can be noted that since this is per-release and some releases are done very quickly in time after a previous one, it is just natural that such releases have much fewer contributors.

contrib-tail data

contrib tail
badness ensued:

symbols data

symbols
2009-03-02;303
2009-05-18;427
2009-08-12;428
2009-11-04;428
2010-02-09;451
...
2021-04-14;1040
2021-05-26;1045
2021-07-21;1047
2021-09-14;1047
2021-09-21;1047
date - number of symbols in the file

The symbols are counted in the symbols-in-versions file in git at the time of releases.

files data

files
2000-03-14;110
2000-03-21;111
2000-03-21;111
2000-08-21;136
2000-08-30;137
...
2021-04-14;3385
2021-05-26;3411
2021-07-21;3409
2021-09-14;3422
2021-09-19;3423
date - number of files

This data comes from counting the files present in git at the time of releases.

authors-per-month data

authors per month
2010-01-01;6;6.00
2010-02-01;6;6.00
2010-03-01;14;8.67
2010-04-01;13;9.75
2010-05-01;13;10.40
...
2021-05-01;35;20.58
2021-06-01;38;22.08
2021-07-01;26;22.42
2021-08-01;27;22.58
2021-09-01;13;22.33
date (month) - authots that month - 12 month author average

The data comes from the git repository.

deltaloc data

deltaloc
1999-12-01;19213;19213.0;100.0000,19213
2000-01-01;-794;9209.5;50.0000,18419
2000-02-01;518;6312.3;33.3333,18937
2000-03-01;315;4813.0;25.0000,19252
2000-04-01;62;3862.8;20.0000,19314
...
2021-05-01;577;462.8;0.2672,173200
2021-06-01;-1154;348.0;0.2023,172046
2021-07-01;23;319.6;0.1857,172069
2021-08-01;409;259.1;0.1502,172478
2021-09-01;103;372.8;0.2160,172581
date (month) - number of lines added that month - 12 month average number of added lines - the average amount as a share of total number of code - total number of lines of code

The data counts lines added and removed to files in src, lib and include over time, in the git repository.

coreteam-per-year data

coreteam per year
1999-01-01;0
2000-01-01;1
2001-01-01;2
2002-01-01;2
2003-01-01;1
...
2017-01-01;13
2018-01-01;10
2019-01-01;9
2020-01-01;10
2021-01-01;12
date (year) - number of core team members

The data comes from the git repository. A "core team" member is everyone who did 10 or more commits to the main git repository within the same calendar year.

mail data

mail
2000-01-01;0;2;0.0;2.0
2000-02-01;0;71;0.0;36.5
2000-03-01;0;82;0.0;51.7
2000-04-01;0;27;0.0;45.5
2000-05-01;0;117;0.0;59.8
...
2021-05-01;77;27;89.8;38.5
2021-06-01;82;37;86.8;36.8
2021-07-01;61;26;85.7;35.8
2021-08-01;74;28;88.0;36.2
2021-09-01;70;10;86.2;33.5
date (a month really) - curl-library mails - curl-users mails - 12 month curl-library average - 12 month curl-users average

This data is extracted from the mailing archives as stored on the web server.

protocols data

protocols
1996-10-01;HTTP;1
1997-06-01;GOPHER;2
1997-08-01;FTP;3
1998-06-01;HTTPS;4
1998-11-01;TELNET;5
...
2014-11-29;SMB;23
2014-11-29;SMBS;24
2020-04-14;MQTT;25
2020-12-15;GOPHERS;26
2021-09-21;;26
date - protocol added - accumlated number of protocols supported

This data comes from a list curated by hand.


Updated 2021-09-21 03:16:42 UTC


The scripts for generating all these images are available at github.com/curl/stats.