Skip to content

Commit 07dee5b

Browse files
author
David Personette
authored
update dev gems (rubocop and sqlite3) and their dependencies, and fix new rubocop warnings (stringer-rss#541)
1 parent 7b4935b commit 07dee5b

21 files changed

+71
-67
lines changed

.rubocop.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ AllCops:
55
- 'db/schema.rb'
66
- 'vendor/**/*'
77

8-
Metrics/LineLength:
8+
Layout/LineLength:
99
Max: 120
1010

1111
Metrics/MethodLength:

.rubocop_todo.yml

+1-2
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,13 @@ Style/PercentLiteralDelimiters:
5050
- 'spec/helpers/url_helpers_spec.rb'
5151
- 'spec/javascript/test_controller.rb'
5252

53-
# Offense count: 3
53+
# Offense count: 1
5454
# Cop supports --auto-correct.
5555
# Configuration parameters: ConvertCodeThatCanStartToReturnNil, Whitelist.
5656
# Whitelist: present?, blank?, presence, try, try!
5757
Style/SafeNavigation:
5858
Exclude:
5959
- 'app/controllers/feeds_controller.rb'
60-
- 'app/tasks/fetch_feed.rb'
6160

6261
# Offense count: 7
6362
# Cop supports --auto-correct.

Gemfile

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ group :production do
88
end
99

1010
group :development do
11-
gem "rubocop", ">= 0.61.1", require: false
12-
gem "sqlite3", "~> 1.3", ">= 1.3.8"
11+
gem "rubocop", require: false
12+
gem "sqlite3"
1313
end
1414

1515
group :development, :test do
@@ -36,8 +36,8 @@ gem "i18n"
3636
gem "loofah", "~> 2.3"
3737
gem "nokogiri", "~> 1.11"
3838
gem "rack-protection", "~> 2.0"
39-
gem "rack-ssl", "~> 1.4"
4039
gem "racksh", "~> 1.0"
40+
gem "rack-ssl", "~> 1.4"
4141
gem "rake", "~> 12.3"
4242
gem "sass"
4343
gem "sinatra", "~> 2.0"

Gemfile.lock

+19-14
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ GEM
1414
tzinfo (~> 1.1)
1515
addressable (2.4.0)
1616
arel (9.0.0)
17-
ast (2.4.0)
17+
ast (2.4.2)
1818
backports (3.6.8)
1919
bcrypt (3.1.11)
2020
builder (3.2.3)
@@ -59,7 +59,6 @@ GEM
5959
multi_xml (>= 0.5.2)
6060
i18n (0.9.5)
6161
concurrent-ruby (~> 1.0)
62-
jaro_winkler (1.5.4)
6362
json (1.8.6)
6463
kgio (2.11.2)
6564
loofah (2.3.1)
@@ -78,9 +77,9 @@ GEM
7877
nokogiri (1.11.0)
7978
mini_portile2 (~> 2.5.0)
8079
racc (~> 1.4)
81-
parallel (1.19.0)
82-
parser (2.6.5.0)
83-
ast (~> 2.4.0)
80+
parallel (1.20.1)
81+
parser (3.0.0.0)
82+
ast (~> 2.4.1)
8483
pg (0.18.4)
8584
pry (0.10.3)
8685
coderay (~> 1.1.0)
@@ -103,6 +102,8 @@ GEM
103102
rainbow (3.0.0)
104103
raindrops (0.19.0)
105104
rake (12.3.3)
105+
regexp_parser (2.1.1)
106+
rexml (3.2.4)
106107
rspec (3.4.0)
107108
rspec-core (~> 3.4.0)
108109
rspec-expectations (~> 3.4.0)
@@ -119,14 +120,18 @@ GEM
119120
diff-lcs (>= 1.2.0, < 2.0)
120121
rspec-support (~> 3.4.0)
121122
rspec-support (3.4.1)
122-
rubocop (0.76.0)
123-
jaro_winkler (~> 1.5.1)
123+
rubocop (1.10.0)
124124
parallel (~> 1.10)
125-
parser (>= 2.6)
125+
parser (>= 3.0.0.0)
126126
rainbow (>= 2.2.2, < 4.0)
127+
regexp_parser (>= 1.8, < 3.0)
128+
rexml
129+
rubocop-ast (>= 1.2.0, < 2.0)
127130
ruby-progressbar (~> 1.7)
128-
unicode-display_width (>= 1.4.0, < 1.7)
129-
ruby-progressbar (1.10.1)
131+
unicode-display_width (>= 1.4.0, < 3.0)
132+
rubocop-ast (1.4.1)
133+
parser (>= 2.7.1.5)
134+
ruby-progressbar (1.11.0)
130135
sass (3.4.22)
131136
sax-machine (1.3.2)
132137
shotgun (0.9.1)
@@ -159,7 +164,7 @@ GEM
159164
rack (> 1, < 3)
160165
sprockets-helpers (1.2.1)
161166
sprockets (>= 2.2)
162-
sqlite3 (1.3.11)
167+
sqlite3 (1.4.2)
163168
term-ansicolor (1.3.2)
164169
tins (~> 1.0)
165170
thor (0.19.1)
@@ -172,7 +177,7 @@ GEM
172177
thread_safe (~> 0.1)
173178
uglifier (3.0.2)
174179
execjs (>= 0.3.0, < 3)
175-
unicode-display_width (1.6.0)
180+
unicode-display_width (2.0.0)
176181
unicorn (5.4.0)
177182
kgio (~> 2.6)
178183
raindrops (~> 0.7)
@@ -206,7 +211,7 @@ DEPENDENCIES
206211
rake (~> 12.3)
207212
rspec (~> 3.4)
208213
rspec-html-matchers (~> 0.7)
209-
rubocop (>= 0.61.1)
214+
rubocop
210215
sass
211216
shotgun (~> 0.9)
212217
simplecov
@@ -216,7 +221,7 @@ DEPENDENCIES
216221
sinatra-flash (~> 0.3)
217222
sprockets (~> 3.7)
218223
sprockets-helpers
219-
sqlite3 (~> 1.3, >= 1.3.8)
224+
sqlite3
220225
thread (~> 0.2)
221226
timecop (~> 0.8)
222227
uglifier

Rakefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ require "./app"
1414
require_relative "./app/jobs/fetch_feed_job"
1515
require_relative "./app/tasks/fetch_feeds"
1616
require_relative "./app/tasks/change_password"
17-
require_relative "./app/tasks/remove_old_stories.rb"
17+
require_relative "./app/tasks/remove_old_stories"
1818

1919
desc "Fetch all feeds."
2020
task :fetch_feeds do
@@ -83,6 +83,6 @@ begin
8383
RSpec::Core::RakeTask.new(:spec)
8484

8585
task default: [:speedy_tests]
86-
rescue LoadError # rubocop:disable Lint/HandleExceptions
86+
rescue LoadError
8787
# allow for bundle install --without development:test
8888
end

app/fever_api/read_items.rb

+4-4
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ def initialize(options = {})
99
def call(params = {})
1010
if params.keys.include?("items")
1111
item_ids = begin
12-
params[:with_ids].split(",")
13-
rescue StandardError
14-
nil
15-
end
12+
params[:with_ids].split(",")
13+
rescue StandardError
14+
nil
15+
end
1616

1717
{
1818
items: items(item_ids, params[:since_id]),

app/helpers/url_helpers.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ def expand_absolute_urls(content, base_url)
1414

1515
begin
1616
node.set_attribute(attr, URI.join(base_url, url).to_s)
17-
rescue URI::InvalidURIError # rubocop:disable Lint/HandleExceptions
17+
rescue URI::InvalidURIError
1818
# Just ignore. If we cannot parse the url, we don't want the entire
1919
# import to blow up.
2020
end

app/tasks/change_password.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ def ask_confirmation
2626

2727
def ask_hidden(question)
2828
print(question)
29-
input = STDIN.noecho(&:gets).chomp
29+
input = $stdin.noecho(&:gets).chomp
3030
puts
3131
input
3232
end

app/tasks/fetch_feed.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ def fetch
2626
rescue StandardError => e
2727
FeedRepository.set_status(:red, @feed)
2828

29-
@logger.error "Something went wrong when parsing #{@feed.url}: #{e}" if @logger
29+
@logger&.error "Something went wrong when parsing #{@feed.url}: #{e}"
3030
end
3131

3232
private
@@ -37,7 +37,7 @@ def fetch_raw_feed
3737
end
3838

3939
def feed_not_modified
40-
@logger.info "#{@feed.url} has not been modified since last fetch" if @logger
40+
@logger&.info "#{@feed.url} has not been modified since last fetch"
4141
end
4242

4343
def feed_modified(raw_feed)

app/utils/sample_story.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
SampleStory = Struct.new(:source, :title, :lead, :is_read, :published) do # rubocop:disable Metrics/BlockLength
2-
BODY = <<~EOS.freeze
1+
SampleStory = Struct.new(:source, :title, :lead, :is_read, :published) do
2+
BODY = <<~EOS.freeze # rubocop:disable Lint/ConstantDefinitionInBlock
33
<p>Tofu shoreditch intelligentsia <a href="#">umami</a>, fashion axe photo booth
44
try-hard terry richardson quinoa actually fingerstache meggings fixie. Aesthetic
55
salvia vinyl raw denim, keffiyeh master cleanse tonx selfies mlkshk occupy twee

db/migrate/20130409010818_create_feeds.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ def change
55
t.string :url
66
t.timestamp :last_fetched
77

8-
t.timestamps
8+
t.timestamps null: false
99
end
1010
end
1111
end

db/migrate/20130409010826_create_stories.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ def change
77

88
t.references :feed
99

10-
t.timestamps
10+
t.timestamps null: false
1111
end
1212
end
1313
end

db/migrate/20130418221144_add_user_model.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ def change
44
t.string :email
55
t.string :password_digest
66

7-
t.timestamps
7+
t.timestamps null: false
88
end
99
end
1010
end

db/migrate/20130425222157_add_delayed_job.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def self.up
3030
# The name of the queue this job is in
3131
table.string :queue
3232

33-
table.timestamps
33+
table.timestamps null: false
3434
end
3535

3636
add_index :delayed_jobs, [:priority, :run_at], name: "delayed_jobs_priority"

spec/commands/feeds/import_from_opml_spec.rb

+23-23
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@ def import
1414
Group.delete_all
1515
end
1616

17-
let(:group_1) { Group.find_by_name("Football News") }
18-
let(:group_2) { Group.find_by_name("RoR") }
17+
let(:group1) { Group.find_by_name("Football News") }
18+
let(:group2) { Group.find_by_name("RoR") }
1919

2020
context "adding group_id for existing feeds" do
21-
let!(:feed_1) do
21+
let!(:feed1) do
2222
Feed.create(name: "TMW Football Transfer News", url: "http://www.transfermarketweb.com/rss")
2323
end
24-
let!(:feed_2) do
24+
let!(:feed2) do
2525
Feed.create(
2626
name: "GIANT ROBOTS SMASHING INTO OTHER GIANT ROBOTS - Home",
2727
url: "http://feeds.feedburner.com/GiantRobotsSmashingIntoOtherGiantRobots"
@@ -30,26 +30,26 @@ def import
3030
before { import }
3131

3232
it "retains exising feeds" do
33-
expect(feed_1).to be_valid
34-
expect(feed_2).to be_valid
33+
expect(feed1).to be_valid
34+
expect(feed2).to be_valid
3535
end
3636

3737
it "creates new groups" do
38-
expect(group_1).to be
39-
expect(group_2).to be
38+
expect(group1).to be
39+
expect(group2).to be
4040
end
4141

4242
it "sets group_id for existing feeds" do
43-
expect(feed_1.reload.group).to eq group_1
44-
expect(feed_2.reload.group).to eq group_2
43+
expect(feed1.reload.group).to eq group1
44+
expect(feed2.reload.group).to eq group2
4545
end
4646
end
4747

4848
context "creates new feeds with groups" do
49-
let(:feed_1) do
49+
let(:feed1) do
5050
Feed.where(name: "TMW Football Transfer News", url: "http://www.transfermarketweb.com/rss")
5151
end
52-
let(:feed_2) do
52+
let(:feed2) do
5353
Feed.where(
5454
name: "GIANT ROBOTS SMASHING INTO OTHER GIANT ROBOTS - Home",
5555
url: "http://feeds.feedburner.com/GiantRobotsSmashingIntoOtherGiantRobots"
@@ -58,34 +58,34 @@ def import
5858
before { import }
5959

6060
it "creates groups" do
61-
expect(group_1).to be
62-
expect(group_1).to be
61+
expect(group1).to be
62+
expect(group1).to be
6363
end
6464

6565
it "creates feeds" do
66-
expect(feed_1).to exist
67-
expect(feed_2).to exist
66+
expect(feed1).to exist
67+
expect(feed2).to exist
6868
end
6969

7070
it "sets group" do
71-
expect(feed_1.first.group).to eq group_1
72-
expect(feed_2.first.group).to eq group_2
71+
expect(feed1.first.group).to eq group1
72+
expect(feed2.first.group).to eq group2
7373
end
7474
end
7575

7676
context "creates new feeds without group" do
77-
let(:feed_1) { Feed.where(name: "Autoblog", url: "http://feeds.autoblog.com/weblogsinc/autoblog/").first }
78-
let(:feed_2) { Feed.where(name: "City Guide News", url: "http://www.probki.net/news/RSS_news_feed.asp").first }
77+
let(:feed1) { Feed.where(name: "Autoblog", url: "http://feeds.autoblog.com/weblogsinc/autoblog/").first }
78+
let(:feed2) { Feed.where(name: "City Guide News", url: "http://www.probki.net/news/RSS_news_feed.asp").first }
7979

8080
before { import }
8181

8282
it "does not create any new group for feeds without group" do
83-
expect(Group.where("id NOT IN (?)", [group_1.id, group_2.id]).count).to eq 0
83+
expect(Group.where("id NOT IN (?)", [group1.id, group2.id]).count).to eq 0
8484
end
8585

8686
it "creates feeds without group_id" do
87-
expect(feed_1.group_id).to be_nil
88-
expect(feed_2.group_id).to be_nil
87+
expect(feed1.group_id).to be_nil
88+
expect(feed2.group_id).to be_nil
8989
end
9090
end
9191
end

spec/factories/feed_factory.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def self.build(params = {})
1717
FakeFeed.new(
1818
id: rand(100),
1919
group_id: params[:group_id] || rand(100),
20-
name: params[:name] || Faker::Name.name + " on Software",
20+
name: params[:name] || Faker::Name.name + " on Software", # rubocop:disable Style/StringConcatenation
2121
url: params[:url] || Faker::Internet.url,
2222
last_fetched: params[:last_fetched] || Time.now,
2323
stories: params[:stories] || [],

spec/factories/group_factory.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ def as_fever_json
1111
def self.build(params = {})
1212
FakeGroup.new(
1313
id: rand(100),
14-
name: params[:name] || Faker::Name.name + " group"
14+
name: params[:name] || Faker::Name.name + " group" # rubocop:disable Style/StringConcatenation
1515
)
1616
end
1717
end

spec/fever_api/read_groups_spec.rb

+3-3
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
app_require "fever_api/read_groups"
44

55
describe FeverAPI::ReadGroups do
6-
let(:group_1) { double("group_1", as_fever_json: { id: 1, title: "IT news" }) }
7-
let(:group_2) { double("group_2", as_fever_json: { id: 2, title: "World news" }) }
6+
let(:group1) { double("group1", as_fever_json: { id: 1, title: "IT news" }) }
7+
let(:group2) { double("group2", as_fever_json: { id: 2, title: "World news" }) }
88
let(:group_repository) { double("repo") }
99

1010
subject { FeverAPI::ReadGroups.new(group_repository: group_repository) }
1111

1212
it "returns a group list if requested" do
13-
expect(group_repository).to receive(:list).and_return([group_1, group_2])
13+
expect(group_repository).to receive(:list).and_return([group1, group2])
1414
expect(subject.call("groups" => nil)).to eq(
1515
groups: [
1616
{

0 commit comments

Comments
 (0)