jekyll-github-metadata 2.4.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/jekyll-github-metadata/client.rb +10 -1
- data/lib/jekyll-github-metadata/metadata_drop.rb +2 -0
- data/lib/jekyll-github-metadata/repository.rb +8 -0
- data/lib/jekyll-github-metadata/site_github_munger.rb +23 -6
- data/lib/jekyll-github-metadata/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 503fb1e44f153839ed5415091c54cc808624b611
|
4
|
+
data.tar.gz: 8bfbc5fd294cbd2149471a24f50ea930dd2e3e9e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8938ee3c7ae483b1d7a7add1741ac06a965e1bc9345b4fe2e0f22928d98a0a429b55d05f229cb556937bfb51524bf594446c607a85e0158798111b7eb6ef35bd
|
7
|
+
data.tar.gz: 4c5503733a2c443acec81975235989d9b1bf1b924f25e198989a3415d6597cf3075bccdfb7697d1627390f8b58066eaf2be7cdc1d7c76a523f7c0554661cf173
|
@@ -14,6 +14,7 @@ module Jekyll
|
|
14
14
|
pages
|
15
15
|
contributors
|
16
16
|
releases
|
17
|
+
latest_release
|
17
18
|
list_repos
|
18
19
|
organization_public_members
|
19
20
|
))
|
@@ -29,12 +30,20 @@ module Jekyll
|
|
29
30
|
false
|
30
31
|
end
|
31
32
|
|
33
|
+
def default_octokit_options
|
34
|
+
{
|
35
|
+
:api_endpoint => Jekyll::GitHubMetadata::Pages.api_url,
|
36
|
+
:web_endpoint => Jekyll::GitHubMetadata::Pages.github_url,
|
37
|
+
:auto_paginate => true,
|
38
|
+
}
|
39
|
+
end
|
40
|
+
|
32
41
|
def build_octokit_client(options = nil)
|
33
42
|
options ||= {}
|
34
43
|
unless options.key? :access_token
|
35
44
|
options.merge! pluck_auth_method
|
36
45
|
end
|
37
|
-
Octokit::Client.new(
|
46
|
+
Octokit::Client.new(default_octokit_options.merge(options))
|
38
47
|
end
|
39
48
|
|
40
49
|
def accepts_client_method?(method_name)
|
@@ -63,6 +63,7 @@ module Jekyll
|
|
63
63
|
def_delegator :repository, :tar_url, :tar_url
|
64
64
|
def_delegator :repository, :repo_clone_url, :clone_url
|
65
65
|
def_delegator :repository, :releases_url, :releases_url
|
66
|
+
def_delegator :repository, :latest_release_url, :latest_release_url
|
66
67
|
def_delegator :repository, :issues_url, :issues_url
|
67
68
|
def_delegator :repository, :wiki_url, :wiki_url
|
68
69
|
def_delegator :repository, :language, :language
|
@@ -73,6 +74,7 @@ module Jekyll
|
|
73
74
|
def_delegator :repository, :baseurl, :baseurl
|
74
75
|
def_delegator :repository, :contributors, :contributors
|
75
76
|
def_delegator :repository, :releases, :releases
|
77
|
+
def_delegator :repository, :latest_release, :latest_release
|
76
78
|
|
77
79
|
private
|
78
80
|
attr_reader :site
|
@@ -64,6 +64,10 @@ module Jekyll
|
|
64
64
|
"#{repository_url}/releases"
|
65
65
|
end
|
66
66
|
|
67
|
+
def latest_release_url
|
68
|
+
latest_release["url"]
|
69
|
+
end
|
70
|
+
|
67
71
|
def issues_url
|
68
72
|
"#{repository_url}/issues" if repo_info["has_issues"]
|
69
73
|
end
|
@@ -98,6 +102,10 @@ module Jekyll
|
|
98
102
|
memoize_value :@releases, Value.new(proc { |c| c.releases(nwo) })
|
99
103
|
end
|
100
104
|
|
105
|
+
def latest_release
|
106
|
+
memoize_value :@latest_release, Value.new(proc { |c| c.latest_release(nwo) })
|
107
|
+
end
|
108
|
+
|
101
109
|
def git_ref
|
102
110
|
if repo_pages_info["source"]
|
103
111
|
repo_pages_info["source"]["branch"]
|
@@ -15,7 +15,10 @@ module Jekyll
|
|
15
15
|
|
16
16
|
# This is the good stuff.
|
17
17
|
site.config["github"] = github_namespace
|
18
|
+
|
19
|
+
return unless should_add_fallbacks?
|
18
20
|
add_url_and_baseurl_fallbacks!
|
21
|
+
add_title_and_description_fallbacks!
|
19
22
|
end
|
20
23
|
|
21
24
|
private
|
@@ -37,13 +40,27 @@ module Jekyll
|
|
37
40
|
|
38
41
|
# Set `site.url` and `site.baseurl` if unset.
|
39
42
|
def add_url_and_baseurl_fallbacks!
|
40
|
-
|
43
|
+
site.config["url"] ||= repository.url_without_path
|
44
|
+
site.config["baseurl"] = repository.baseurl if should_set_baseurl?
|
45
|
+
end
|
41
46
|
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
+
# Set the baseurl only if it is `nil` or `/`
|
48
|
+
# Baseurls should never be "/". See http://bit.ly/2s1Srid
|
49
|
+
def should_set_baseurl?
|
50
|
+
site.config["baseurl"].nil? || site.config["baseurl"] == "/"
|
51
|
+
end
|
52
|
+
|
53
|
+
def add_title_and_description_fallbacks!
|
54
|
+
site.config["title"] ||= repository.name
|
55
|
+
site.config["description"] ||= repository.tagline
|
56
|
+
end
|
57
|
+
|
58
|
+
def should_add_fallbacks?
|
59
|
+
Jekyll.env == "production" || Pages.page_build?
|
60
|
+
end
|
61
|
+
|
62
|
+
def repository
|
63
|
+
drop.send(:repository)
|
47
64
|
end
|
48
65
|
end
|
49
66
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-github-metadata
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Parker Moore
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-07-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: octokit
|