From 60deead669acb9381379f21aac724f482ea6def0 Mon Sep 17 00:00:00 2001 From: Adam Roben Date: Fri, 20 Feb 2015 09:53:07 -0500 Subject: [PATCH 1/5] Add a couple more documentation patterns These are used in repositories like jashkenas/coffeescript and tj/git-extras. --- lib/linguist/documentation.yml | 3 ++- test/test_blob.rb | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/linguist/documentation.yml b/lib/linguist/documentation.yml index b884cd35..a2578040 100644 --- a/lib/linguist/documentation.yml +++ b/lib/linguist/documentation.yml @@ -10,7 +10,8 @@ ## Documentation Conventions ## - ^docs?/ -- ^Documentation/ +- ^[Dd]ocumentation/ +- ^man/ - (^|/)CONTRIBUTING(\.|$) - (^|/)COPYING(\.|$) diff --git a/test/test_blob.rb b/test/test_blob.rb index d59e6794..6c071420 100644 --- a/test/test_blob.rb +++ b/test/test_blob.rb @@ -448,7 +448,12 @@ class TestBlob < Minitest::Test refute_predicate fixture_blob("project/docs/foo.html"), :documentation? assert_predicate fixture_blob("Documentation/foo.md"), :documentation? + assert_predicate fixture_blob("documentation/foo.md"), :documentation? refute_predicate fixture_blob("project/Documentation/foo.md"), :documentation? + refute_predicate fixture_blob("project/documentation/foo.md"), :documentation? + + assert_predicate fixture_blob("man/foo.html"), :documentation? + refute_predicate fixture_blob("project/man/foo.html"), :documentation? assert_predicate fixture_blob("README"), :documentation? assert_predicate fixture_blob("README.md"), :documentation? From c7c0c30ecfd873500c3e8c475fd9162f03f3ec58 Mon Sep 17 00:00:00 2001 From: Adam Roben Date: Fri, 20 Feb 2015 10:24:38 -0500 Subject: [PATCH 2/5] Classify javadoc/ directories as documentation --- lib/linguist/documentation.yml | 5 ++++- test/test_blob.rb | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/linguist/documentation.yml b/lib/linguist/documentation.yml index a2578040..a29a3d2f 100644 --- a/lib/linguist/documentation.yml +++ b/lib/linguist/documentation.yml @@ -7,12 +7,15 @@ # Please add additional test coverage to # `test/test_blob.rb#test_documentation` if you make any changes. -## Documentation Conventions ## +## Documentation directories ## - ^docs?/ - ^[Dd]ocumentation/ +- (^|/)javadoc/ - ^man/ +## Documentation files ## + - (^|/)CONTRIBUTING(\.|$) - (^|/)COPYING(\.|$) - (^|/)INSTALL(\.|$) diff --git a/test/test_blob.rb b/test/test_blob.rb index 6c071420..ec1d6ea3 100644 --- a/test/test_blob.rb +++ b/test/test_blob.rb @@ -452,6 +452,9 @@ class TestBlob < Minitest::Test refute_predicate fixture_blob("project/Documentation/foo.md"), :documentation? refute_predicate fixture_blob("project/documentation/foo.md"), :documentation? + assert_predicate fixture_blob("javadoc/foo.html"), :documentation? + assert_predicate fixture_blob("project/javadoc/foo.html"), :documentation? + assert_predicate fixture_blob("man/foo.html"), :documentation? refute_predicate fixture_blob("project/man/foo.html"), :documentation? From 9e020dd15da47b19c59ccfbba98212b14874ebbf Mon Sep 17 00:00:00 2001 From: Adam Roben Date: Fri, 20 Feb 2015 10:24:59 -0500 Subject: [PATCH 3/5] Classify "documentation/" directories (lowercase) as documentation This is used in repositories like jashkenas/coffeescript. --- lib/linguist/documentation.yml | 2 +- test/test_blob.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/linguist/documentation.yml b/lib/linguist/documentation.yml index a29a3d2f..6e06329f 100644 --- a/lib/linguist/documentation.yml +++ b/lib/linguist/documentation.yml @@ -10,7 +10,7 @@ ## Documentation directories ## - ^docs?/ -- ^[Dd]ocumentation/ +- (^|/)[Dd]ocumentation/ - (^|/)javadoc/ - ^man/ diff --git a/test/test_blob.rb b/test/test_blob.rb index ec1d6ea3..ce6cde92 100644 --- a/test/test_blob.rb +++ b/test/test_blob.rb @@ -449,8 +449,8 @@ class TestBlob < Minitest::Test assert_predicate fixture_blob("Documentation/foo.md"), :documentation? assert_predicate fixture_blob("documentation/foo.md"), :documentation? - refute_predicate fixture_blob("project/Documentation/foo.md"), :documentation? - refute_predicate fixture_blob("project/documentation/foo.md"), :documentation? + assert_predicate fixture_blob("project/Documentation/foo.md"), :documentation? + assert_predicate fixture_blob("project/documentation/foo.md"), :documentation? assert_predicate fixture_blob("javadoc/foo.html"), :documentation? assert_predicate fixture_blob("project/javadoc/foo.html"), :documentation? From df552c241e5a3ab4c80c3664aea16b38e3f06989 Mon Sep 17 00:00:00 2001 From: Adam Roben Date: Fri, 20 Feb 2015 10:30:44 -0500 Subject: [PATCH 4/5] Classify XML as a data language While XML is technically a markup language, in the majority of cases it is just a serialization format for a tool (e.g., project files for IDEs) rather than hand-authored markup. As such it isn't really useful to include it in repository language statistics. A C# project doesn't really care whether Visual Studio uses XML, JSON, or some other format to serialize its project files, for example. --- lib/linguist/languages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index bca601eb..0ac757f6 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -3165,7 +3165,7 @@ XC: ace_mode: c_cpp XML: - type: markup + type: data ace_mode: xml aliases: - rss From 80f72a5093c0ec343e6904b8b90dec6bdb45699b Mon Sep 17 00:00:00 2001 From: Adam Roben Date: Fri, 20 Feb 2015 10:36:47 -0500 Subject: [PATCH 5/5] Classify the .google_apis/ directory as vendored This is used in Android projects that use certain Google SDKs to store the SDKs locally. --- lib/linguist/vendor.yml | 3 +++ test/test_blob.rb | 3 +++ 2 files changed, 6 insertions(+) diff --git a/lib/linguist/vendor.yml b/lib/linguist/vendor.yml index 9f6b401b..0384a7db 100644 --- a/lib/linguist/vendor.yml +++ b/lib/linguist/vendor.yml @@ -251,3 +251,6 @@ # ProGuard - proguard.pro - proguard-rules.pro + +# Android Google APIs +- (^|/)\.google_apis/ diff --git a/test/test_blob.rb b/test/test_blob.rb index ce6cde92..022eb20b 100644 --- a/test/test_blob.rb +++ b/test/test_blob.rb @@ -439,6 +439,9 @@ class TestBlob < Minitest::Test assert sample_blob("activator.bat").vendored? assert sample_blob("subproject/activator").vendored? assert sample_blob("subproject/activator.bat").vendored? + + assert_predicate fixture_blob(".google_apis/bar.jar"), :vendored? + assert_predicate fixture_blob("foo/.google_apis/bar.jar"), :vendored? end def test_documentation