mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
Compare commits
23 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f100dc91c2 | ||
|
|
fd9d63d605 | ||
|
|
5c21c35875 | ||
|
|
370d55fd74 | ||
|
|
8dd2ddcbf7 | ||
|
|
037857623d | ||
|
|
d7b19d577b | ||
|
|
c70048a3e2 | ||
|
|
6d51117a91 | ||
|
|
848a1cc1e5 | ||
|
|
9092dfdc7f | ||
|
|
d7fe0cc5c7 | ||
|
|
15ec37d4bc | ||
|
|
43cc701ac3 | ||
|
|
7cb8357f73 | ||
|
|
4b46bcf649 | ||
|
|
a954a6465e | ||
|
|
b8a5e8505a | ||
|
|
3087d640a3 | ||
|
|
e87b89ab5b | ||
|
|
7aabc6a5ad | ||
|
|
5cc053694a | ||
|
|
653314448c |
@@ -34,7 +34,7 @@ The repository stats API, accessed through `#languages`, can be used on a direct
|
|||||||
|
|
||||||
***API UPDATE***
|
***API UPDATE***
|
||||||
|
|
||||||
Since [Version 3.0.0](https://github.com/github/linguist/releases/tag/v3.0.0) Linguist requires a git repository (in the form of a [Rugged::Repository](https://github.com/libgit2/rugged#repositories)) to be passed when initializing `Linguist::Repository`.
|
Since [Version 3.0.0](https://github.com/github/linguist/releases/tag/v3.0.0) Linguist expects a git repository (in the form of a [Rugged::Repository](https://github.com/libgit2/rugged#repositories)) to be passed when initializing `Linguist::Repository`.
|
||||||
|
|
||||||
|
|
||||||
```ruby
|
```ruby
|
||||||
@@ -165,7 +165,7 @@ If you are the current maintainer of this gem:
|
|||||||
0. Ensure that tests are green: `bundle exec rake test`
|
0. Ensure that tests are green: `bundle exec rake test`
|
||||||
0. Bump gem version in `lib/linguist/version.rb`. For example, [like this](https://github.com/github/linguist/commit/8d2ea90a5ba3b2fe6e1508b7155aa4632eea2985).
|
0. Bump gem version in `lib/linguist/version.rb`. For example, [like this](https://github.com/github/linguist/commit/8d2ea90a5ba3b2fe6e1508b7155aa4632eea2985).
|
||||||
0. Make a PR to github/linguist. For example, [#1238](https://github.com/github/linguist/pull/1238).
|
0. Make a PR to github/linguist. For example, [#1238](https://github.com/github/linguist/pull/1238).
|
||||||
0. Build a local gem: `gem build github-linguist.gemspec`
|
0. Build a local gem: `bundle exec rake build_gem`
|
||||||
0. Testing:
|
0. Testing:
|
||||||
0. Bump the Gemfile and Gemfile.lock versions for an app which relies on this gem
|
0. Bump the Gemfile and Gemfile.lock versions for an app which relies on this gem
|
||||||
0. Install the new gem locally
|
0. Install the new gem locally
|
||||||
|
|||||||
@@ -949,6 +949,7 @@ HTML:
|
|||||||
|
|
||||||
HTML+Django:
|
HTML+Django:
|
||||||
type: markup
|
type: markup
|
||||||
|
tm_scope: text.html.django
|
||||||
group: HTML
|
group: HTML
|
||||||
lexer: HTML+Django/Jinja
|
lexer: HTML+Django/Jinja
|
||||||
extensions:
|
extensions:
|
||||||
@@ -957,6 +958,7 @@ HTML+Django:
|
|||||||
|
|
||||||
HTML+ERB:
|
HTML+ERB:
|
||||||
type: markup
|
type: markup
|
||||||
|
tm_scope: text.html.ruby
|
||||||
group: HTML
|
group: HTML
|
||||||
lexer: RHTML
|
lexer: RHTML
|
||||||
aliases:
|
aliases:
|
||||||
@@ -967,6 +969,7 @@ HTML+ERB:
|
|||||||
|
|
||||||
HTML+PHP:
|
HTML+PHP:
|
||||||
type: markup
|
type: markup
|
||||||
|
tm_scope: text.html.php
|
||||||
group: HTML
|
group: HTML
|
||||||
extensions:
|
extensions:
|
||||||
- .phtml
|
- .phtml
|
||||||
@@ -1102,6 +1105,7 @@ J:
|
|||||||
|
|
||||||
JSON:
|
JSON:
|
||||||
type: data
|
type: data
|
||||||
|
tm_scope: source.json
|
||||||
group: JavaScript
|
group: JavaScript
|
||||||
ace_mode: json
|
ace_mode: json
|
||||||
searchable: false
|
searchable: false
|
||||||
@@ -1293,6 +1297,7 @@ Literate Agda:
|
|||||||
|
|
||||||
Literate CoffeeScript:
|
Literate CoffeeScript:
|
||||||
type: programming
|
type: programming
|
||||||
|
tm_scope: source.litcoffee
|
||||||
group: CoffeeScript
|
group: CoffeeScript
|
||||||
lexer: Text only
|
lexer: Text only
|
||||||
ace_mode: markdown
|
ace_mode: markdown
|
||||||
@@ -1587,6 +1592,7 @@ Objective-C:
|
|||||||
|
|
||||||
Objective-C++:
|
Objective-C++:
|
||||||
type: programming
|
type: programming
|
||||||
|
tm_scope: source.objc++
|
||||||
color: "#4886FC"
|
color: "#4886FC"
|
||||||
aliases:
|
aliases:
|
||||||
- obj-c++
|
- obj-c++
|
||||||
@@ -2084,6 +2090,7 @@ SAS:
|
|||||||
|
|
||||||
SCSS:
|
SCSS:
|
||||||
type: markup
|
type: markup
|
||||||
|
tm_scope: source.scss
|
||||||
group: CSS
|
group: CSS
|
||||||
ace_mode: scss
|
ace_mode: scss
|
||||||
extensions:
|
extensions:
|
||||||
@@ -2124,6 +2131,7 @@ Sage:
|
|||||||
|
|
||||||
Sass:
|
Sass:
|
||||||
type: markup
|
type: markup
|
||||||
|
tm_scope: source.sass
|
||||||
group: CSS
|
group: CSS
|
||||||
extensions:
|
extensions:
|
||||||
- .sass
|
- .sass
|
||||||
@@ -2598,6 +2606,7 @@ Xtend:
|
|||||||
|
|
||||||
YAML:
|
YAML:
|
||||||
type: data
|
type: data
|
||||||
|
tm_scope: source.yaml
|
||||||
aliases:
|
aliases:
|
||||||
- yml
|
- yml
|
||||||
extensions:
|
extensions:
|
||||||
|
|||||||
@@ -128,13 +128,20 @@ module Linguist
|
|||||||
protected
|
protected
|
||||||
|
|
||||||
def compute_stats(old_commit_oid, cache = nil)
|
def compute_stats(old_commit_oid, cache = nil)
|
||||||
file_map = cache ? cache.dup : {}
|
|
||||||
old_tree = old_commit_oid && Rugged::Commit.lookup(repository, old_commit_oid).tree
|
old_tree = old_commit_oid && Rugged::Commit.lookup(repository, old_commit_oid).tree
|
||||||
|
|
||||||
read_index
|
read_index
|
||||||
|
|
||||||
diff = Rugged::Tree.diff(repository, old_tree, current_tree)
|
diff = Rugged::Tree.diff(repository, old_tree, current_tree)
|
||||||
|
|
||||||
|
# Clear file map and fetch full diff if any .gitattributes files are changed
|
||||||
|
if cache && diff.each_delta.any? { |delta| File.basename(delta.new_file[:path]) == ".gitattributes" }
|
||||||
|
diff = Rugged::Tree.diff(repository, old_tree = nil, current_tree)
|
||||||
|
file_map = {}
|
||||||
|
else
|
||||||
|
file_map = cache ? cache.dup : {}
|
||||||
|
end
|
||||||
|
|
||||||
diff.each_delta do |delta|
|
diff.each_delta do |delta|
|
||||||
old = delta.old_file[:path]
|
old = delta.old_file[:path]
|
||||||
new = delta.new_file[:path]
|
new = delta.new_file[:path]
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
module Linguist
|
module Linguist
|
||||||
VERSION = "3.3.0"
|
VERSION = "3.4.0"
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -68,6 +68,19 @@ class TestRepository < Test::Unit::TestCase
|
|||||||
assert !repo.breakdown_by_file["Ruby"].empty?
|
assert !repo.breakdown_by_file["Ruby"].empty?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_commit_with_git_attributes_data
|
||||||
|
# Before we had any .gitattributes data
|
||||||
|
old_commit = '4a017d9033f91b2776eb85275463f9613cc371ef'
|
||||||
|
old_repo = linguist_repo(old_commit)
|
||||||
|
|
||||||
|
# With some .gitattributes data
|
||||||
|
attr_commit = '7ee006cbcb2d7261f9e648510a684ee9ac64126b'
|
||||||
|
# It's incremental but should bust the cache
|
||||||
|
new_repo = Linguist::Repository.incremental(rugged_repository, attr_commit, old_commit, old_repo.cache)
|
||||||
|
|
||||||
|
assert new_repo.breakdown_by_file["Java"].include?("lib/linguist.rb")
|
||||||
|
end
|
||||||
|
|
||||||
def test_linguist_override_vendored?
|
def test_linguist_override_vendored?
|
||||||
attr_commit = '351c1cc8fd57340839bdb400d7812332af80e9bd'
|
attr_commit = '351c1cc8fd57340839bdb400d7812332af80e9bd'
|
||||||
repo = linguist_repo(attr_commit).read_index
|
repo = linguist_repo(attr_commit).read_index
|
||||||
|
|||||||
Reference in New Issue
Block a user