lock_diff 0.5.0 → 0.9.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/.github/dependabot.yml +6 -0
- data/.github/workflows/ruby.yml +27 -0
- data/README.md +1 -2
- data/exe/lock_diff +1 -1
- data/exe/lock_diff_for_tachikoma +1 -1
- data/lib/lock_diff/diff_info.rb +2 -1
- data/lib/lock_diff/github/changelog_url_finder.rb +10 -19
- data/lib/lock_diff/github/content.rb +21 -1
- data/lib/lock_diff/github/directory.rb +23 -0
- data/lib/lock_diff/github.rb +1 -0
- data/lib/lock_diff/version.rb +1 -1
- data/lock_diff.gemspec +2 -1
- metadata +21 -5
- data/.travis.yml +0 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2352d3618b0632d5974dd4100d8738ddacedfd2db5f556a7127a63b8dd7b2f33
|
4
|
+
data.tar.gz: da7ce8579cd45e5c420916388726bacb1ec99c4141293e4b7261ea8dca74af6e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cbf16abdf3b4053a28d1f59422b1e12d02cd6e184b2d2a6c28f6a5257f089cd9a22322bbb8021220f2758ed517a967e60abc85743d98851d03f293c497da8ee5
|
7
|
+
data.tar.gz: 90bf7c687b6768a27acc11b67791363b9495cdf4ba5b4e5dd9a07d30e9b508322998fcb656d355a57e93403b61707d35e2f1763c96ff8e68ec10ead34b3b19f0
|
@@ -0,0 +1,27 @@
|
|
1
|
+
name: Ruby
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ master ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ master ]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
test:
|
11
|
+
|
12
|
+
runs-on: ubuntu-latest
|
13
|
+
strategy:
|
14
|
+
matrix:
|
15
|
+
ruby-version: ['2.5', '2.6', '2.7', '3.0']
|
16
|
+
|
17
|
+
steps:
|
18
|
+
- uses: actions/checkout@v2
|
19
|
+
- name: Set up Ruby
|
20
|
+
uses: ruby/setup-ruby@v1
|
21
|
+
with:
|
22
|
+
ruby-version: ${{ matrix.ruby-version }}
|
23
|
+
bundler-cache: true
|
24
|
+
- name: Run tests
|
25
|
+
run: bundle exec rspec
|
26
|
+
env:
|
27
|
+
GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
data/README.md
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
# LockDiff
|
2
2
|
|
3
3
|
[](https://badge.fury.io/rb/lock_diff)
|
4
|
-
|
5
|
-
[](https://www.codacy.com/app/vividmuimui/lock_diff?utm_source=github.com&utm_medium=referral&utm_content=vividmuimui/lock_diff&utm_campaign=badger)
|
4
|
+

|
6
5
|
[](https://codeclimate.com/github/vividmuimui/lock_diff)
|
7
6
|
|
8
7
|
This gem detects changes to your package manager (e.g. Gemfile) and generates a Markdown-formatted diff including:
|
data/exe/lock_diff
CHANGED
data/exe/lock_diff_for_tachikoma
CHANGED
data/lib/lock_diff/diff_info.rb
CHANGED
@@ -63,7 +63,8 @@ module LockDiff
|
|
63
63
|
Github::ChangelogUrlFinder.new(
|
64
64
|
repository: package.repository,
|
65
65
|
repository_url: package.repository_url,
|
66
|
-
ref: @new_package.ref
|
66
|
+
ref: @new_package.ref,
|
67
|
+
package_name: package.name
|
67
68
|
).call.map do |url|
|
68
69
|
Changelog.new(url)
|
69
70
|
end
|
@@ -1,34 +1,26 @@
|
|
1
1
|
module LockDiff
|
2
2
|
module Github
|
3
3
|
class ChangelogUrlFinder
|
4
|
-
|
5
|
-
changelog
|
6
|
-
changes
|
7
|
-
history
|
8
|
-
releases
|
9
|
-
releasenote
|
10
|
-
news
|
11
|
-
)
|
12
|
-
|
13
|
-
def initialize(repository:, repository_url:, ref:)
|
4
|
+
def initialize(repository:, repository_url:, ref:, package_name:)
|
14
5
|
@repository = repository
|
15
6
|
@repository_url = repository_url
|
16
7
|
@ref = ref
|
8
|
+
@package_name = package_name
|
17
9
|
end
|
18
10
|
|
19
11
|
def call
|
20
|
-
change_log_urls.push(find_release_url).compact
|
12
|
+
directories.flat_map(&:change_log_urls).push(find_release_url).compact
|
21
13
|
end
|
22
14
|
|
23
15
|
private
|
24
16
|
|
25
|
-
def
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
17
|
+
def directories
|
18
|
+
[
|
19
|
+
Directory.new(@repository, @ref),
|
20
|
+
Directory.new(@repository, @ref, path: @package_name),
|
21
|
+
Directory.new(@repository, @ref, path: "gems/#{@package_name}"),
|
22
|
+
Directory.new(@repository, @ref, path: 'docs')
|
23
|
+
]
|
32
24
|
end
|
33
25
|
|
34
26
|
def find_release_url
|
@@ -37,7 +29,6 @@ module LockDiff
|
|
37
29
|
@repository_url + "/releases"
|
38
30
|
end
|
39
31
|
end
|
40
|
-
|
41
32
|
end
|
42
33
|
end
|
43
34
|
end
|
@@ -6,14 +6,34 @@ module LockDiff
|
|
6
6
|
|
7
7
|
def_delegators :@content, :name, :html_url
|
8
8
|
|
9
|
+
CHANGE_LOG_CANDIDATES = %w[
|
10
|
+
changelog
|
11
|
+
changes
|
12
|
+
history
|
13
|
+
releases
|
14
|
+
releasenote
|
15
|
+
news
|
16
|
+
].freeze
|
17
|
+
|
9
18
|
def initialize(content)
|
10
19
|
@content = content
|
11
20
|
end
|
12
21
|
|
22
|
+
def change_log?
|
23
|
+
file? && CHANGE_LOG_CANDIDATES.any? do |candidate|
|
24
|
+
normalized_name.start_with?(candidate)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
private
|
29
|
+
|
30
|
+
def normalized_name
|
31
|
+
@normalized_name ||= name.downcase.delete('_')
|
32
|
+
end
|
33
|
+
|
13
34
|
def file?
|
14
35
|
@content.type == 'file'
|
15
36
|
end
|
16
|
-
|
17
37
|
end
|
18
38
|
end
|
19
39
|
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
module LockDiff
|
2
|
+
module Github
|
3
|
+
class Directory
|
4
|
+
def initialize(repository, ref, path: nil)
|
5
|
+
@repository = repository
|
6
|
+
@ref = ref
|
7
|
+
@path = path
|
8
|
+
end
|
9
|
+
|
10
|
+
def change_log_urls
|
11
|
+
contents.select(&:change_log?).map(&:html_url)
|
12
|
+
rescue Octokit::NotFound
|
13
|
+
[]
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def contents
|
19
|
+
@contents ||= Github.client.contents(@repository, ref: @ref, path: @path)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
data/lib/lock_diff/github.rb
CHANGED
@@ -2,6 +2,7 @@ require_relative "github/access_token"
|
|
2
2
|
require_relative "github/changelog_url_finder"
|
3
3
|
require_relative "github/client"
|
4
4
|
require_relative "github/content"
|
5
|
+
require_relative "github/directory"
|
5
6
|
require_relative "github/url_detector"
|
6
7
|
require_relative "github/pull_request"
|
7
8
|
require_relative "github/repository_name_detector"
|
data/lib/lock_diff/version.rb
CHANGED
data/lock_diff.gemspec
CHANGED
@@ -31,5 +31,6 @@ Gem::Specification.new do |spec|
|
|
31
31
|
spec.add_development_dependency "rspec", "~> 3.0"
|
32
32
|
spec.add_development_dependency "pry"
|
33
33
|
spec.add_development_dependency "pry-byebug"
|
34
|
-
spec.add_development_dependency "
|
34
|
+
spec.add_development_dependency "vcr"
|
35
|
+
spec.add_development_dependency "webmock"
|
35
36
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lock_diff
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- vividmuimui
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-12-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: octokit
|
@@ -109,7 +109,21 @@ dependencies:
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: vcr
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: webmock
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
114
128
|
requirements:
|
115
129
|
- - ">="
|
@@ -132,9 +146,10 @@ executables:
|
|
132
146
|
extensions: []
|
133
147
|
extra_rdoc_files: []
|
134
148
|
files:
|
149
|
+
- ".github/dependabot.yml"
|
150
|
+
- ".github/workflows/ruby.yml"
|
135
151
|
- ".gitignore"
|
136
152
|
- ".rspec"
|
137
|
-
- ".travis.yml"
|
138
153
|
- CODE_OF_CONDUCT.md
|
139
154
|
- Gemfile
|
140
155
|
- LICENSE.txt
|
@@ -159,6 +174,7 @@ files:
|
|
159
174
|
- lib/lock_diff/github/changelog_url_finder.rb
|
160
175
|
- lib/lock_diff/github/client.rb
|
161
176
|
- lib/lock_diff/github/content.rb
|
177
|
+
- lib/lock_diff/github/directory.rb
|
162
178
|
- lib/lock_diff/github/pull_request.rb
|
163
179
|
- lib/lock_diff/github/repository_name_detector.rb
|
164
180
|
- lib/lock_diff/github/tag_finder.rb
|
@@ -186,7 +202,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
186
202
|
- !ruby/object:Gem::Version
|
187
203
|
version: '0'
|
188
204
|
requirements: []
|
189
|
-
rubygems_version: 3.0.3
|
205
|
+
rubygems_version: 3.0.3.1
|
190
206
|
signing_key:
|
191
207
|
specification_version: 4
|
192
208
|
summary: This gem detects changes to your package manager (e.g. Gemfile) and generates
|
data/.travis.yml
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
rvm:
|
3
|
-
- 2.4
|
4
|
-
- 2.5
|
5
|
-
- 2.6
|
6
|
-
- 2.7
|
7
|
-
script:
|
8
|
-
- bundle exec rspec
|
9
|
-
notifications:
|
10
|
-
slack:
|
11
|
-
secure: DKSdr5uEtNXGpAARGV+Q694eNv9IGi30RjSIjk8lRZrmLxE0WJbk/17FkmjgVF2w1onO/knFWgCiPBoIncihy4hh6nfAJZDaRI8AwXqYGGi10KeUBu4309r/7SL60KnFUFsQ9o47tar09TY6HS55IesNjN2/mKIEJlpw2c7McPz58rIzlFizTW5OPShsfWQnuLAz9iUYjknZfrntirav+mwkqVKqDZoMM7MRzedk1KjlkRbun/EVrgMEYPqsbpmhfYV0DZkcymorhH6d/FBsrWeqB7QMT6KwROMBHDZGeGzYgaN3KgjZV35gw6pK2VlsETm7E/Fk9Imrjalq87Q28aqX5nq/MR6Llo9yfE4J7PkGOTxcvZlXqp/W+2xT/8Ne6Dy29gb/7TeJY9K4nmkbkrmkanKBBmvIjbhwT46BOPjn1Sz4kbceoZNgihI2hMMPypH61+U6v0eUcGLuxRyDaUsyrgRnBEDHFZHMpfZ1eE7uXnCO9IvqGm5Tn4goP0s67H98CFhP+j3cIM2HKdns6ZyGsAHVakw7bnB90mKc9bIaaPSKEyZZD4MpkJxnMxR453OlSwJZIXesIkbBJMZA4wdOAsPQSBaSCY2w566LsUs4izRVLpdeILa/NOaxb+l1OvmejGyiihUjSUfH7fiIhoD5E0+SgOsDIdd0TV17rb4=
|