uber / libphutil
File Change Frequency

File change frequency (churn) shows the distribution of file updates (days with at least one commit).

Overview
File Change Frequency Overall
  • There are 331 files with 39,556 lines of code.
    • 1 file changed more than 100 times (918 lines of code)
    • 7 files changed 51-100 times (11,552 lines of code)
    • 22 files changed 21-50 times (6,317 lines of code)
    • 112 files changed 6-20 times (13,928 lines of code)
    • 189 files changed 1-5 times (6,841 lines of code)
2% | 29% | 15% | 35% | 17%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 331 files with 39,556 lines of code.
    • 1 file changed by more than 25 contributors (918 lines of code)
    • 4 files changed by 11-25 contributors (4,153 lines of code)
    • 36 files changed by 6-10 contributors (14,741 lines of code)
    • 215 files changed by 2-5 contributors (16,620 lines of code)
    • 75 files changed by 1 contributor (3,124 lines of code)
2% | 10% | 37% | 42% | 7%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
php, txt, editorconfig, hpp, json, cpp, xml, md, yaml, gitignore, arcconfig, l, y
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
php3% | 8% | 18% | 47% | 22%
cpp0% | 100% | 0% | 0% | 0%
y0% | 100% | 0% | 0% | 0%
hpp0% | 0% | 65% | 34% | 0%
l0% | 0% | 100% | 0% | 0%
xml0% | 0% | 0% | 0% | 100%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
src3% | 8% | 19% | 46% | 22%
support0% | 84% | 9% | 5% | <1%
scripts0% | 0% | 11% | 63% | 25%
externals0% | 0% | 0% | 25% | 74%
Most Frequently Changed Files (Top 50)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
918 - 2011-01-10 2020-04-24 339 31 epriestley@javelinjs.com arturas@uber.com
utils.php
in src/utils
888 49 2011-01-13 2021-12-03 98 16 epriestley@javelinjs.com arturas@uber.com
xhpast.cpp
in support/xhpast
97 3 2011-01-10 2019-10-03 70 15 epriestley@javelinjs.com arturas@uber.com
Filesystem.php
in src/filesystem
640 34 2011-01-15 2019-03-20 62 16 epriestley@javelinjs.com povilas@uber.com
y
parser.y
in support/xhpast
2528 - 2011-01-10 2019-10-03 60 15 epriestley@javelinjs.com arturas@uber.com
ExecFuture.php
in src/future/exec
503 34 2011-01-15 2019-02-07 54 10 epriestley@javelinjs.com povilas@uber.com
parser.yacc.cpp
in support/xhpast
6589 1 2011-06-13 2019-10-03 53 8 git@epriestley.com arturas@uber.com
307 14 2012-06-01 2020-04-24 51 10 jakubv@fb.com arturas@uber.com
utf8.php
in src/utils
559 23 2011-06-23 2018-08-20 43 10 git@epriestley.com povilas@uber.com
54 1 2011-01-10 2019-03-20 39 9 epriestley@javelinjs.com povilas@uber.com
ConduitClient.php
in src/conduit
326 22 2012-06-01 2020-12-15 38 10 jakubv@fb.com arturas@uber.com
HTTPSFuture.php
in src/future/http
484 25 2012-06-01 2020-12-15 37 9 jakubv@fb.com arturas@uber.com
PhutilServiceProfiler.php
in src/serviceprofiler
189 12 2011-05-16 2023-09-21 36 8 git@epriestley.com asemia@ext.uber.com
PhutilURI.php
in src/parser
394 34 2012-06-01 2019-03-20 34 7 jakubv@fb.com povilas@uber.com
scanner.lex.hpp
in support/xhpast
549 - 2011-06-13 2019-02-07 33 8 git@epriestley.com povilas@uber.com
PhutilArgumentParser.php
in src/parser/argument
630 26 2012-06-01 2018-10-22 33 9 jakubv@fb.com povilas@uber.com
PhutilTranslator.php
in src/internationalization
176 11 2012-06-13 2016-11-12 32 8 jakubv@fb.com git@epriestley.com
322 15 2011-04-05 2021-12-03 32 8 tuomas.pelkonen@fb.com arturas@uber.com
render.php
in src/markup
128 10 2011-01-15 2018-09-05 31 7 epriestley@javelinjs.com povilas@uber.com
199 11 2011-01-12 2019-03-20 30 7 epriestley@javelinjs.com povilas@uber.com
42 1 2011-02-22 2021-12-03 26 8 epriestley@javelinjs.com arturas@uber.com
PhutilDaemon.php
in src/daemon
244 34 2012-06-01 2018-05-23 26 7 jakubv@fb.com povilas@uber.com
379 40 2015-02-22 2020-04-24 26 5 git@epriestley.com arturas@uber.com
l
scanner.l
in support/xhpast
457 - 2011-01-10 2016-05-20 26 7 epriestley@javelinjs.com git@epriestley.com
PhutilBootloader.php
in src/moduleutils
221 14 2014-07-05 2019-03-20 24 4 josh@joshuaspence.com povilas@uber.com
BaseHTTPFuture.php
in src/future/http
199 22 2012-06-01 2020-12-15 23 8 jakubv@fb.com arturas@uber.com
AASTNode.php
in src/parser/aast/api
293 39 2012-06-01 2016-03-05 22 4 jakubv@fb.com git@epriestley.com
exec_daemon.php
in scripts/daemon/exec
112 - 2011-02-22 2017-02-25 21 5 epriestley@javelinjs.com git@epriestley.com
format.php
in src/console
149 7 2011-01-15 2018-06-25 21 7 epriestley@javelinjs.com povilas@uber.com
PhutilLibraryMapBuilder.php
in src/moduleutils
211 17 2014-07-05 2021-09-04 21 5 josh@joshuaspence.com cspeckrun@gmail.com
79 5 2011-01-15 2015-09-26 20 9 epriestley@javelinjs.com git@epriestley.com
generate_nodes.php
in support/xhpast
150 1 2011-01-10 2018-06-26 19 8 epriestley@javelinjs.com povilas@uber.com
PhutilPygmentsSyntaxHighlighter.php
in src/markup/syntax/highlighter
204 3 2012-06-01 2019-03-20 19 7 jakubv@fb.com povilas@uber.com
csprintf.php
in src/xsprintf
82 3 2012-06-01 2017-02-25 18 5 jakubv@fb.com git@epriestley.com
XHPASTNode.php
in src/parser/xhpast/api
212 7 2012-06-01 2020-08-28 18 6 jakubv@fb.com arturas@uber.com
FileFinder.php
in src/filesystem
247 15 2012-06-01 2018-06-26 18 6 jakubv@fb.com povilas@uber.com
PhutilDefaultSyntaxHighlighterEngine.php
in src/markup/syntax/engine
90 3 2012-06-01 2019-03-20 17 6 jakubv@fb.com povilas@uber.com
131 12 2012-06-01 2019-10-03 17 7 jakubv@fb.com arturas@uber.com
PhutilOAuth1Future.php
in src/future/oauth
234 22 2013-08-08 2019-10-03 17 5 git@epriestley.com arturas@uber.com
parser_nodes.php
in support/xhpast
122 1 2011-01-10 2018-06-26 16 6 epriestley@javelinjs.com povilas@uber.com
parser.yacc.hpp
in support/xhpast
160 - 2011-06-13 2016-05-20 16 5 git@epriestley.com git@epriestley.com
HTTPFuture.php
in src/future/http
229 11 2011-01-15 2019-03-20 16 7 epriestley@javelinjs.com povilas@uber.com
PhutilDeferredLog.php
in src/filesystem
91 9 2012-06-01 2018-06-13 15 5 jakubv@fb.com povilas@uber.com
PhutilAWSFuture.php
in src/future/aws
132 21 2012-06-01 2019-03-20 15 6 jakubv@fb.com povilas@uber.com
400 3 2014-07-05 2018-10-15 15 5 josh@joshuaspence.com povilas@uber.com
117 15 2012-06-08 2015-05-12 14 3 git@epriestley.com josh@joshuaspence.com
134 9 2015-06-23 2020-04-24 14 3 git@epriestley.com arturas@uber.com
FutureIterator.php
in src/future
162 12 2011-01-15 2015-06-15 14 6 epriestley@javelinjs.com josh@joshuaspence.com
PhutilConsole.php
in src/console
185 26 2012-06-25 2015-06-15 14 3 git@epriestley.com josh@joshuaspence.com
PhutilTypeSpec.php
in src/parser
1847 12 2013-08-22 2021-12-07 14 5 git@epriestley.com arturas@uber.com
Files With Most Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
918 - 2011-01-10 2020-04-24 339 31 epriestley@javelinjs.com arturas@uber.com
utils.php
in src/utils
888 49 2011-01-13 2021-12-03 98 16 epriestley@javelinjs.com arturas@uber.com
Filesystem.php
in src/filesystem
640 34 2011-01-15 2019-03-20 62 16 epriestley@javelinjs.com povilas@uber.com
xhpast.cpp
in support/xhpast
97 3 2011-01-10 2019-10-03 70 15 epriestley@javelinjs.com arturas@uber.com
y
parser.y
in support/xhpast
2528 - 2011-01-10 2019-10-03 60 15 epriestley@javelinjs.com arturas@uber.com
ExecFuture.php
in src/future/exec
503 34 2011-01-15 2019-02-07 54 10 epriestley@javelinjs.com povilas@uber.com
307 14 2012-06-01 2020-04-24 51 10 jakubv@fb.com arturas@uber.com
utf8.php
in src/utils
559 23 2011-06-23 2018-08-20 43 10 git@epriestley.com povilas@uber.com
ConduitClient.php
in src/conduit
326 22 2012-06-01 2020-12-15 38 10 jakubv@fb.com arturas@uber.com
54 1 2011-01-10 2019-03-20 39 9 epriestley@javelinjs.com povilas@uber.com
HTTPSFuture.php
in src/future/http
484 25 2012-06-01 2020-12-15 37 9 jakubv@fb.com arturas@uber.com
PhutilArgumentParser.php
in src/parser/argument
630 26 2012-06-01 2018-10-22 33 9 jakubv@fb.com povilas@uber.com
79 5 2011-01-15 2015-09-26 20 9 epriestley@javelinjs.com git@epriestley.com
parser.yacc.cpp
in support/xhpast
6589 1 2011-06-13 2019-10-03 53 8 git@epriestley.com arturas@uber.com
PhutilServiceProfiler.php
in src/serviceprofiler
189 12 2011-05-16 2023-09-21 36 8 git@epriestley.com asemia@ext.uber.com
scanner.lex.hpp
in support/xhpast
549 - 2011-06-13 2019-02-07 33 8 git@epriestley.com povilas@uber.com
322 15 2011-04-05 2021-12-03 32 8 tuomas.pelkonen@fb.com arturas@uber.com
PhutilTranslator.php
in src/internationalization
176 11 2012-06-13 2016-11-12 32 8 jakubv@fb.com git@epriestley.com
42 1 2011-02-22 2021-12-03 26 8 epriestley@javelinjs.com arturas@uber.com
BaseHTTPFuture.php
in src/future/http
199 22 2012-06-01 2020-12-15 23 8 jakubv@fb.com arturas@uber.com
generate_nodes.php
in support/xhpast
150 1 2011-01-10 2018-06-26 19 8 epriestley@javelinjs.com povilas@uber.com
PhutilURI.php
in src/parser
394 34 2012-06-01 2019-03-20 34 7 jakubv@fb.com povilas@uber.com
render.php
in src/markup
128 10 2011-01-15 2018-09-05 31 7 epriestley@javelinjs.com povilas@uber.com
199 11 2011-01-12 2019-03-20 30 7 epriestley@javelinjs.com povilas@uber.com
l
scanner.l
in support/xhpast
457 - 2011-01-10 2016-05-20 26 7 epriestley@javelinjs.com git@epriestley.com
PhutilDaemon.php
in src/daemon
244 34 2012-06-01 2018-05-23 26 7 jakubv@fb.com povilas@uber.com
format.php
in src/console
149 7 2011-01-15 2018-06-25 21 7 epriestley@javelinjs.com povilas@uber.com
PhutilPygmentsSyntaxHighlighter.php
in src/markup/syntax/highlighter
204 3 2012-06-01 2019-03-20 19 7 jakubv@fb.com povilas@uber.com
131 12 2012-06-01 2019-10-03 17 7 jakubv@fb.com arturas@uber.com
HTTPFuture.php
in src/future/http
229 11 2011-01-15 2019-03-20 16 7 epriestley@javelinjs.com povilas@uber.com
FileFinder.php
in src/filesystem
247 15 2012-06-01 2018-06-26 18 6 jakubv@fb.com povilas@uber.com
XHPASTNode.php
in src/parser/xhpast/api
212 7 2012-06-01 2020-08-28 18 6 jakubv@fb.com arturas@uber.com
PhutilDefaultSyntaxHighlighterEngine.php
in src/markup/syntax/engine
90 3 2012-06-01 2019-03-20 17 6 jakubv@fb.com povilas@uber.com
parser_nodes.php
in support/xhpast
122 1 2011-01-10 2018-06-26 16 6 epriestley@javelinjs.com povilas@uber.com
PhutilAWSFuture.php
in src/future/aws
132 21 2012-06-01 2019-03-20 15 6 jakubv@fb.com povilas@uber.com
FutureIterator.php
in src/future
162 12 2011-01-15 2015-06-15 14 6 epriestley@javelinjs.com josh@joshuaspence.com
168 7 2012-06-01 2021-12-03 13 6 jakubv@fb.com arturas@uber.com
parser_nodes.php
in src/parser/xhpast
122 1 2012-06-01 2018-06-26 11 6 jakubv@fb.com povilas@uber.com
PhutilAWSException.php
in src/future/aws
40 3 2012-06-01 2018-06-19 11 6 jakubv@fb.com povilas@uber.com
ConduitFuture.php
in src/conduit
72 3 2012-06-01 2020-12-15 9 6 jakubv@fb.com arturas@uber.com
astnode.hpp
in support/xhpast
81 - 2011-01-10 2015-11-10 8 6 epriestley@javelinjs.com git@epriestley.com
379 40 2015-02-22 2020-04-24 26 5 git@epriestley.com arturas@uber.com
exec_daemon.php
in scripts/daemon/exec
112 - 2011-02-22 2017-02-25 21 5 epriestley@javelinjs.com git@epriestley.com
PhutilLibraryMapBuilder.php
in src/moduleutils
211 17 2014-07-05 2021-09-04 21 5 josh@joshuaspence.com cspeckrun@gmail.com
csprintf.php
in src/xsprintf
82 3 2012-06-01 2017-02-25 18 5 jakubv@fb.com git@epriestley.com
PhutilOAuth1Future.php
in src/future/oauth
234 22 2013-08-08 2019-10-03 17 5 git@epriestley.com arturas@uber.com
parser.yacc.hpp
in support/xhpast
160 - 2011-06-13 2016-05-20 16 5 git@epriestley.com git@epriestley.com
400 3 2014-07-05 2018-10-15 15 5 josh@joshuaspence.com povilas@uber.com
PhutilDeferredLog.php
in src/filesystem
91 9 2012-06-01 2018-06-13 15 5 jakubv@fb.com povilas@uber.com
PhutilTypeSpec.php
in src/parser
1847 12 2013-08-22 2021-12-07 14 5 git@epriestley.com arturas@uber.com
Files With Least Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
503 - 2016-11-16 2016-11-18 2 1 git@epriestley.com git@epriestley.com
PhageAgentAction.php
in src/phage/action
204 15 2017-02-17 2017-03-05 7 1 git@epriestley.com git@epriestley.com
PhutilConsoleTable.php
in src/console/view
186 16 2015-09-21 2015-09-26 3 1 git@epriestley.com git@epriestley.com
168 5 2016-12-02 2016-12-10 3 1 git@epriestley.com git@epriestley.com
118 4 2015-05-18 2015-06-15 3 1 josh@joshuaspence.com josh@joshuaspence.com
103 1 2014-07-05 2015-05-17 5 1 josh@joshuaspence.com josh@joshuaspence.com
PhutilGitHubFuture.php
in src/future/github
101 9 2016-03-08 2016-03-12 2 1 git@epriestley.com git@epriestley.com
PhutilRope.php
in src/utils
78 6 2013-12-15 2016-01-23 6 1 git@epriestley.com git@epriestley.com
73 8 2016-06-09 2016-06-11 2 1 git@epriestley.com git@epriestley.com
PhutilAWSManagementWorkflow.php
in src/future/aws/management
69 3 2016-01-09 2016-01-15 2 1 git@epriestley.com git@epriestley.com
AphrontRequestStream.php
in src/aphront/requeststream
69 6 2016-03-16 2016-03-19 3 1 git@epriestley.com git@epriestley.com
68 5 2016-12-02 2016-12-10 3 1 git@epriestley.com git@epriestley.com
PhutilConsoleView.php
in src/console/view
65 7 2015-09-21 2015-09-26 2 1 git@epriestley.com git@epriestley.com
HTTPFutureCURLResponseStatus.php
in src/future/http/status
61 4 2014-07-22 2015-05-13 4 1 josh@joshuaspence.com josh@joshuaspence.com
58 3 2016-05-05 2016-05-13 2 1 git@epriestley.com git@epriestley.com
56 5 2015-05-24 2016-11-25 3 1 git@epriestley.com git@epriestley.com
49 6 2016-03-18 2016-03-19 2 1 git@epriestley.com git@epriestley.com
PhutilConsoleList.php
in src/console/view
49 7 2015-09-21 2016-11-25 6 1 git@epriestley.com git@epriestley.com
PhutilAWSS3GetManagementWorkflow.php
in src/future/aws/management
48 2 2016-01-09 2016-01-15 2 1 git@epriestley.com git@epriestley.com
PhageExecuteAction.php
in src/phage/action
47 11 2017-02-17 2017-03-05 6 1 git@epriestley.com git@epriestley.com
44 3 2014-06-19 2015-06-15 5 1 josh@joshuaspence.com josh@joshuaspence.com
PhagePlanAction.php
in src/phage/action
42 5 2017-02-17 2017-02-18 2 1 git@epriestley.com git@epriestley.com
41 8 2016-03-18 2016-03-19 2 1 git@epriestley.com git@epriestley.com
PhutilAWSS3PutManagementWorkflow.php
in src/future/aws/management
41 2 2016-01-09 2016-01-15 2 1 git@epriestley.com git@epriestley.com
PhutilConsoleBlock.php
in src/console/view
38 3 2015-09-21 2016-11-25 4 1 git@epriestley.com git@epriestley.com
HTTPFutureTransportResponseStatus.php
in src/future/http/status
37 4 2014-07-22 2015-05-12 2 1 josh@joshuaspence.com josh@joshuaspence.com
PhutilAWSS3DeleteManagementWorkflow.php
in src/future/aws/management
37 2 2016-01-09 2016-01-15 2 1 git@epriestley.com git@epriestley.com
PhutilGitHubResponse.php
in src/future/github
37 7 2016-03-08 2016-03-12 2 1 git@epriestley.com git@epriestley.com
PhageAction.php
in src/phage/action
35 5 2017-02-17 2017-02-18 2 1 git@epriestley.com git@epriestley.com
PhutilJSONParserException.php
in src/parser/exception
32 5 2014-06-19 2014-06-23 3 1 josh@joshuaspence.com josh@joshuaspence.com
31 - 2016-11-16 2016-11-18 2 1 git@epriestley.com git@epriestley.com
30 5 2016-03-18 2016-03-19 2 1 git@epriestley.com git@epriestley.com
27 4 2014-07-05 2015-05-12 3 1 josh@joshuaspence.com josh@joshuaspence.com
PhutilAllCapsEnglishLocale.php
in src/internationalization/locales
25 6 2015-02-11 2015-02-11 1 1 git@epriestley.com git@epriestley.com
24 3 2015-05-13 2015-05-13 1 1 josh@joshuaspence.com josh@joshuaspence.com
tsprintf.php
in src/xsprintf
24 2 2015-05-24 2015-09-26 3 1 git@epriestley.com git@epriestley.com
22 3 2014-12-30 2014-12-30 1 1 git@epriestley.com git@epriestley.com
pregsprintf.php
in src/xsprintf
22 2 2015-07-07 2015-07-07 1 1 josh@joshuaspence.com josh@joshuaspence.com
PhutilEmojiLocale.php
in src/internationalization/locales
21 5 2016-05-26 2016-05-30 2 1 git@epriestley.com git@epriestley.com
21 1 2015-10-17 2015-10-24 2 1 git@epriestley.com git@epriestley.com
PhutilAWSS3ManagementWorkflow.php
in src/future/aws/management
20 2 2016-01-09 2016-01-15 2 1 git@epriestley.com git@epriestley.com
19 4 2014-07-21 2014-07-21 1 1 josh@joshuaspence.com josh@joshuaspence.com
PhutilCzechLocale.php
in src/internationalization/locales
19 3 2015-02-11 2016-05-30 4 1 git@epriestley.com git@epriestley.com
aws-s3.php
in scripts/utils
16 - 2016-01-09 2016-01-15 2 1 git@epriestley.com git@epriestley.com
PhutilVeryWowEnglishLocale.php
in src/internationalization/locales
15 4 2015-02-11 2015-02-11 1 1 git@epriestley.com git@epriestley.com
15 3 2016-09-07 2016-09-17 2 1 git@epriestley.com git@epriestley.com
14 2 2013-08-22 2013-08-22 1 1 git@epriestley.com git@epriestley.com
14 2 2013-08-22 2013-08-22 1 1 git@epriestley.com git@epriestley.com
ParsingException.php
in externals/jsonlint/src/Seld/JsonLint
14 2 2014-06-19 2014-06-19 1 1 josh@joshuaspence.com josh@joshuaspence.com
13 2 2016-09-07 2016-09-17 2 1 git@epriestley.com git@epriestley.com