maid 0.9.0.alpha.2 → 0.10.0.pre.alpha.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 59a42ca675fafa12a22f7610385f2e4dcd0ca1e3e6fc663befbf7c6f821e303f
4
- data.tar.gz: 381ae0030809aa1ac6847df528af641fb0b1a42d5387600a3de70c079fb10cc1
3
+ metadata.gz: 86f0caf9efcf85d866543e58ce5e4dd924106e2170cb5024239fed0e666393fc
4
+ data.tar.gz: 4ab003ac12ae07cc4764646f7d5f9dc609eb516c4c4fcfba2e9a3ff08d7aa5ab
5
5
  SHA512:
6
- metadata.gz: df4a95605641bba6cdf041925aab0832f40225548858bf0eb68d572447c6257c42b4695371790ab86c57d4e5ee78ee68267a384e5fa049309acac962a5fe748f
7
- data.tar.gz: 5f67557c5bdd8be613545b99602c5989dea1e976b677018e76eb9457be2546b27bc976774873e6b63505091c956c4cdc6dc4082bf1719df08d174a488395d599
6
+ metadata.gz: d22573a7e9a42c321d46ecf8fbd7ddafe0a2684685fa0d49b494d679d21abce21b790e06d04ce9ff1db4ac9193d9b80d71f527646f94402431c7e6a0e5d035f9
7
+ data.tar.gz: 0fe26f4a3b537ba0ac815d61ca42ef832fe770ef6298c736cb7ae6385ec38624c34cb4e01c118aeeef56ba8f131bd883fc1605cfe04178e907ba271f7c3a448d
data/.act-env ADDED
@@ -0,0 +1 @@
1
+ # Mirrors GitHub Actions' environment vars
@@ -0,0 +1,2 @@
1
+ # Mirrors GitHub Actions' secrets
2
+ BOT_GH_TOKEN=<get one from github.com/settings/tokens, make sure it's only allowed public_repo>
@@ -0,0 +1,59 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+
8
+ permissions:
9
+ contents: write
10
+ pull-requests: write
11
+
12
+ jobs:
13
+ release-please:
14
+ runs-on: ubuntu-latest
15
+ steps:
16
+ - uses: actions/checkout@v3
17
+ - name: Prepare release
18
+ id: release
19
+ uses: google-github-actions/release-please-action@v3
20
+ with:
21
+ release-type: ruby
22
+ package-name: maid
23
+ # Major bump is minor instead pre-1.0.0
24
+ bump-minor-pre-major: true
25
+ # Minor bump is patch instead pre-1.0.0
26
+ bump-patch-for-minor-pre-major: true
27
+ # Don't parse commits before this one as they don't follow the
28
+ # conventional commit format AND don't have `release-please`
29
+ # COMMIT_MESSAGE_OVERRIDE data.
30
+ # (https://www.conventionalcommits.org/en/v1.0.0/#summary)
31
+ bootstrap-sha: 0a6ff8abc6db00aca181d6bfed9751e332900ac9
32
+ # This is the last release before starting to use release-please
33
+ last-release-sha: 0a6ff8abc6db00aca181d6bfed9751e332900ac9
34
+ version-file: lib/maid/version.rb
35
+ # Don't use GITHUB_TOKEN because this doesn't allow workflows to
36
+ # trigger workflows; it leave the `release-please`-generated PR with
37
+ # pending checks as they're never started.
38
+ token: ${{ secrets.BOT_GH_TOKEN }}
39
+ # Uncomment for pre-releases, see
40
+ # https://github.com/maid/maid/wiki/Release-Process
41
+ prerelease: true
42
+ release-as: v0.10.0-alpha.1
43
+ - name: Set up Ruby
44
+ uses: ruby/setup-ruby@v1
45
+ with:
46
+ # ruby-version derived from .ruby-version file
47
+ bundler-cache: true
48
+ - name: Install dependencies
49
+ run: bundle install
50
+ - name: Run tests
51
+ run: bundle exec rake
52
+ - name: Publish gem
53
+ run: |
54
+ mkdir -p $HOME/.gem
55
+ touch $HOME/.gem/credentials
56
+ printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
57
+ env:
58
+ GEM_HOST_API_KEY: secrets.RUBYGEMS_AUTH_TOKEN
59
+ if: ${{ steps.release.outputs.release_created }}
@@ -1,4 +1,4 @@
1
- name: Maid
1
+ name: Test
2
2
 
3
3
  on:
4
4
  push:
@@ -9,7 +9,7 @@ on:
9
9
  - master
10
10
 
11
11
  jobs:
12
- test:
12
+ rspec:
13
13
  strategy:
14
14
  matrix:
15
15
  os:
data/.gitignore CHANGED
@@ -5,3 +5,4 @@
5
5
  Gemfile.lock
6
6
  tmp/*
7
7
  doc/*
8
+ .act-secrets
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.10.0-alpha.1"
3
+ }
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.1.3
1
+ 3.2.1
data/CHANGELOG.md ADDED
@@ -0,0 +1,24 @@
1
+ # Changelog
2
+
3
+ ## [0.10.0-alpha.1](https://github.com/maid/maid/compare/v0.9.0...v0.10.0-alpha.1) (2023-03-28)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * Drop support for ruby < 2.7
9
+
10
+ ### Features
11
+
12
+ * Add ruby 3+ support ([008ee83](https://github.com/maid/maid/commit/008ee83f1655a81e3523431ed35bc2dd20c10c6e))
13
+ * Pass scheduler options to Rufus for repeating tasks ([06a01d3](https://github.com/maid/maid/commit/06a01d3e847537bf8f3f51e6550969bf6123d9a1))
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * Unsafe regex for hostname in example rules ([#229](https://github.com/maid/maid/issues/229)) ([ffc793a](https://github.com/maid/maid/commit/ffc793a9c1e0f1ce433d75710cbd96626fd3835a))
19
+ * Use HTTPS for rubygems.org ([#219](https://github.com/maid/maid/issues/219)) ([ad0f81c](https://github.com/maid/maid/commit/ad0f81c6ffaed1fff2b91ce71f9b568b3f11b022))
20
+
21
+
22
+ ### Code Refactoring
23
+
24
+ * Drop support for ruby &lt; 2.7 ([33838aa](https://github.com/maid/maid/commit/33838aaaeed481158613ce620aeb3a7dc5989ced))
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source 'http://rubygems.org'
1
+ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in maid.gemspec
4
4
  gemspec
@@ -66,7 +66,7 @@ Maid.rules do
66
66
  # NOTE: Currently, only Mac OS X supports `downloaded_from`.
67
67
  rule 'Old files downloaded while developing/testing' do
68
68
  dir('~/Downloads/*').each do |path|
69
- if downloaded_from(path).any? { |u| u.match('http://localhost') || u.match('http://staging.yourcompany.com') } &&
69
+ if downloaded_from(path).any? { |u| u.match('http://localhost') || u.match('http://staging\.yourcompany\.com') } &&
70
70
  1.week.since?(accessed_at(path))
71
71
  trash(path)
72
72
  end
data/lib/maid/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module Maid
2
- VERSION = '0.9.0.alpha.2'
3
- SUMMARY = 'Be lazy. Let Maid clean up after you, based on rules you define. Think of it as "Hazel for hackers".'
2
+ VERSION = '0.10.0-alpha.1'.freeze
3
+ SUMMARY = 'Be lazy. Let Maid clean up after you, based on rules you define. Think of it as "Hazel for hackers".'.freeze
4
4
  end
data/maid.gemspec CHANGED
@@ -6,12 +6,20 @@ Gem::Specification.new do |s|
6
6
  s.name = 'maid'
7
7
  s.version = Maid::VERSION
8
8
  s.platform = Gem::Platform::RUBY
9
- s.authors = ['Benjamin Oakes']
10
- s.email = %w(hello@benjaminoakes.com)
9
+ s.authors = ['Benjamin Oakes', 'Coaxial']
10
+ s.email = ['hello@benjaminoakes.com', 'c+rubygems@64b.it']
11
11
  s.license = 'GPLv2'
12
- s.homepage = 'http://github.com/benjaminoakes/maid'
12
+ s.homepage = 'http://github.com/maid/maid'
13
13
  s.summary = Maid::SUMMARY
14
14
  s.description = s.summary
15
+ s.files = Dir['lib/**/*.rb'] + Dir['bin/maid']
16
+ s.metadata = {
17
+ "bug_tracker_uri" => "https://github.com/maid/maid/issues",
18
+ "changelog_uri" => "https://github.com/maid/maid/blob/master/CHANGELOG.md",
19
+ "documentation_uri" => "https://github.com/maid/maid/blob/master/README.md",
20
+ "source_code_uri" => "https://github.com/maid/maid",
21
+ "wiki_uri" => "https://github.com/maid/maid/wiki"
22
+ }
15
23
 
16
24
  s.rubyforge_project = 'maid'
17
25
 
@@ -58,4 +66,7 @@ Gem::Specification.new do |s|
58
66
  s.test_files = `git ls-files -z -- {test,spec,features}/*`.split("\0")
59
67
  s.executables = `git ls-files -z -- bin/*`.split("\0").map{ |f| File.basename(f) }
60
68
  s.require_paths = %w(lib)
69
+
70
+ s.post_install_message = "🙏 Thank you for installing Maid, we hope it's " \
71
+ "useful to you! Visit #{s.homepage} to report issues or contribute code."
61
72
  end
@@ -24,22 +24,22 @@ module Maid
24
24
 
25
25
  before do
26
26
  @app = App.new
27
- @app.stub(:maid_options)
28
- @app.stub(:say)
27
+ allow(@app).to receive(:maid_options)
28
+ allow(@app).to receive(:say)
29
29
 
30
- TrashMigration.stub(:needed?) { false }
30
+ allow(TrashMigration).to receive(:needed?).and_return(false)
31
31
 
32
32
  # NOTE: It's pretty important that this is stubbed, unless you want your rules to be run over and over when you test!
33
33
  @maid = double('Maid')
34
- @maid.stub(:clean)
35
- @maid.stub(:log_device)
36
- @maid.stub(:load_rules)
37
- Maid.stub(:new) { @maid }
34
+ allow(@maid).to receive(:clean)
35
+ allow(@maid).to receive(:log_device)
36
+ allow(@maid).to receive(:load_rules)
37
+ allow(Maid).to receive(:new).and_return(@maid)
38
38
  end
39
39
 
40
40
  it 'makes a new Maid with the options' do
41
41
  opts = { :foo => 'bar' }
42
- @app.stub(:maid_options).and_return(opts)
42
+ allow(@app).to receive(:maid_options).and_return(opts)
43
43
  expect(Maid).to receive(:new).with(opts).and_return(@maid)
44
44
  @app.clean
45
45
  end
@@ -100,7 +100,7 @@ module Maid
100
100
 
101
101
  it 'prints out the gem version' do
102
102
  ua = 'Maid/0.0.1'
103
- UserAgent.stub(:value) { ua }
103
+ allow(UserAgent).to receive(:value).and_return(ua)
104
104
  expect(@app).to receive(:say).with(ua)
105
105
  @app.version
106
106
  end
@@ -129,10 +129,10 @@ module Maid
129
129
  describe App, '#logs' do
130
130
  before do
131
131
  @maid = double('Maid')
132
- @maid.stub(:clean)
133
- @maid.stub(:log_device) { '/var/log/maid.log' }
134
- @maid.stub(:load_rules)
135
- Maid.stub(:new) { @maid }
132
+ allow(@maid).to receive(:clean)
133
+ allow(@maid).to receive(:log_device).and_return('/var/log/maid.log')
134
+ allow(@maid).to receive(:load_rules)
135
+ allow(Maid).to receive(:new).and_return(@maid)
136
136
  end
137
137
 
138
138
  describe 'prints out the log' do
@@ -142,7 +142,7 @@ module Maid
142
142
  @log_file.write(@log)
143
143
  @log_file.close
144
144
 
145
- @maid.stub(:log_device) { @log_file.path }
145
+ allow(@maid).to receive(:log_device).and_return(@log_file.path)
146
146
  end
147
147
 
148
148
  after do
@@ -154,14 +154,14 @@ module Maid
154
154
  end
155
155
 
156
156
  it 'prints an error when log does not exist' do
157
- @maid.stub(:log_device) { '/maid/file-does-not-exist' }
157
+ allow(@maid).to receive(:log_device).and_return('/maid/file-does-not-exist')
158
158
  message = "Log file #{@maid.log_device} does not exist.\n"
159
159
 
160
160
  expect(capture_stderr { App.start(['logs']) }).to eq(message)
161
161
  end
162
162
 
163
163
  it 'does not tail when log does not exist' do
164
- @maid.stub(:log_device) { '/maid/file-does-not-exist' }
164
+ allow(@maid).to receive(:log_device).and_return('/maid/file-does-not-exist')
165
165
  message = "Log file #{@maid.log_device} does not exist.\n"
166
166
 
167
167
  expect(capture_stderr { App.start(['logs', '--tail']) }).to eq(message)
@@ -4,8 +4,8 @@ module Maid
4
4
  describe Maid do
5
5
  before do
6
6
  @logger = double('Logger').as_null_object
7
- Logger.stub(:new) { @logger }
8
- FileUtils.stub(:mkdir_p)
7
+ allow(Logger).to receive(:new).and_return(@logger)
8
+ allow(FileUtils).to receive(:mkdir_p)
9
9
  end
10
10
 
11
11
  describe '.new' do
@@ -36,22 +36,22 @@ module Maid
36
36
  end
37
37
 
38
38
  it 'takes a logger object during intialization' do
39
- Logger.unstub(:new)
39
+ allow(Logger).to receive(:new).and_call_original
40
40
  maid = Maid.new(:logger => @logger)
41
41
  expect(maid.logger).to eq(@logger)
42
42
  end
43
43
 
44
44
  describe 'platform-specific behavior' do
45
45
  before do
46
- Platform.stub(:linux?)
47
- Platform.stub(:osx?)
46
+ allow(Platform).to receive(:linux?)
47
+ allow(Platform).to receive(:osx?)
48
48
  @home = File.expand_path('~')
49
49
  end
50
50
 
51
51
  context 'when running on Linux' do
52
52
  before do
53
- Platform.stub(:linux?) { true }
54
- XDG.stub(:[]).with('DATA_HOME') { "#{ @home }/.local/share" }
53
+ allow(Platform).to receive(:linux?).and_return(true)
54
+ allow(XDG).to receive(:[]).with('DATA_HOME').and_return("#{ @home }/.local/share")
55
55
  end
56
56
 
57
57
  it 'set the trash to the correct default path' do
@@ -64,7 +64,7 @@ module Maid
64
64
 
65
65
  context 'when running on OS X' do
66
66
  before do
67
- Platform.stub(:osx?) { true }
67
+ allow(Platform).to receive(:osx?).and_return(true)
68
68
  end
69
69
 
70
70
  it 'sets the trash to the correct default path' do
@@ -77,7 +77,7 @@ module Maid
77
77
 
78
78
  context 'when running on an unsupported platform' do
79
79
  it 'does not implement trashing files' do
80
- expect(lambda { Maid.new }).to raise_error(NotImplementedError)
80
+ expect { Maid.new }.to raise_error(NotImplementedError)
81
81
  end
82
82
  end
83
83
  end
@@ -127,7 +127,7 @@ module Maid
127
127
  describe '#clean' do
128
128
  before do
129
129
  @maid = Maid.new
130
- @logger.stub(:info)
130
+ allow(@logger).to receive(:info)
131
131
  end
132
132
 
133
133
  it 'logs start and finish' do
@@ -144,7 +144,7 @@ module Maid
144
144
 
145
145
  describe '#load_rules' do
146
146
  before do
147
- Kernel.stub(:load)
147
+ allow(Kernel).to receive(:load)
148
148
  @maid = Maid.new
149
149
  end
150
150
 
@@ -154,7 +154,7 @@ module Maid
154
154
  end
155
155
 
156
156
  it 'gives an error on STDERR if there is a LoadError' do
157
- Kernel.stub(:load).and_raise(LoadError)
157
+ allow(Kernel).to receive(:load).and_raise(LoadError)
158
158
  expect(STDERR).to receive(:puts)
159
159
  @maid.load_rules
160
160
  end
@@ -179,8 +179,8 @@ module Maid
179
179
 
180
180
  describe '#watch' do
181
181
  before do
182
- Listen.stub(:to)
183
- Listen.stub(:start)
182
+ allow(Listen).to receive(:to)
183
+ allow(Listen).to receive(:start)
184
184
  @maid = Maid.new
185
185
  end
186
186
 
@@ -270,11 +270,11 @@ module Maid
270
270
  end
271
271
 
272
272
  it 'reports `not-a-real-command` as not being a supported command' do
273
- expect(lambda { @maid.cmd('not-a-real-command arg1 arg2') }).to raise_error(NotImplementedError)
273
+ expect { @maid.cmd('not-a-real-command arg1 arg2') }.to raise_error(NotImplementedError)
274
274
  end
275
275
 
276
276
  it 'should report `echo` as a real command' do
277
- expect(lambda { @maid.cmd('echo .') }).not_to raise_error
277
+ expect { @maid.cmd('echo .') }.not_to raise_error
278
278
  end
279
279
  end
280
280
  end
@@ -3,7 +3,7 @@ require 'spec_helper'
3
3
  module Maid
4
4
  describe Platform do
5
5
  def stub_host_os(value)
6
- RbConfig::CONFIG.stub(:[]).with('host_os') { value }
6
+ allow(RbConfig::CONFIG).to receive(:[]).with('host_os').and_return(value)
7
7
  end
8
8
 
9
9
  describe 'determining the host OS' do
@@ -2,11 +2,17 @@ require 'spec_helper'
2
2
 
3
3
  module Maid
4
4
  module Rake
5
- describe SingleRule do
5
+ describe SingleRule, fakefs: true do
6
6
  subject(:single_rule) { described_class.new name, task }
7
7
  let(:name) { double(:rule_description) }
8
8
  let(:task) { Proc.new {} }
9
9
 
10
+ before do
11
+ logfile = File.join('~', '.maid', 'maid.log')
12
+ FileUtils.mkdir_p(File.expand_path(File.dirname(logfile)))
13
+ FileUtils.touch(File.expand_path(logfile))
14
+ end
15
+
10
16
  describe '#initialize' do
11
17
  it 'has a name' do
12
18
  expect(single_rule.name). to eq(name)
@@ -18,10 +18,10 @@ module Maid
18
18
  @maid = Maid.new(:logger => @logger)
19
19
 
20
20
  # Prevent warnings from showing when testing deprecated methods:
21
- @maid.stub(:__deprecated_run_action__)
21
+ allow(@maid).to receive(:__deprecated_run_action__)
22
22
 
23
23
  # For safety, stub `cmd` to prevent running commands:
24
- @maid.stub(:cmd)
24
+ allow(@maid).to receive(:cmd)
25
25
  end
26
26
 
27
27
  describe '#move' do
@@ -156,14 +156,14 @@ module Maid
156
156
  end
157
157
 
158
158
  it 'removes files greater then the remove option size' do
159
- @maid.stub(:disk_usage) { 1025 }
159
+ allow(@maid).to receive(:disk_usage).and_return(1025)
160
160
  @maid.trash(@src_file, :remove_over => 1.mb)
161
161
  expect(File.exist?(@src_file)).not_to be(true)
162
162
  expect(File.exist?(@trash_file)).not_to be(true)
163
163
  end
164
164
 
165
165
  it 'trashes files less then the remove option size' do
166
- @maid.stub(:disk_usage) { 1023 }
166
+ allow(@maid).to receive(:disk_usage).and_return(1023)
167
167
  @maid.trash(@src_file, :remove_over => 1.mb)
168
168
  expect(File.exist?(@trash_file)).to be(true)
169
169
  end
@@ -225,7 +225,7 @@ module Maid
225
225
  it 'lists multiple files in alphabetical order' do
226
226
  # It doesn't occur with `FakeFS` as far as I can tell, but Ubuntu (and possibly OS X) can give the results out
227
227
  # of lexical order. That makes using the `dry-run` output difficult to use.
228
- Dir.stub(:glob) { %w(/home/foo/b.zip /home/foo/a.zip /home/foo/c.zip) }
228
+ allow(Dir).to receive(:glob).and_return(%w(/home/foo/b.zip /home/foo/a.zip /home/foo/c.zip))
229
229
  expect(@maid.dir('~/Downloads/*.zip')).to eq(%w(/home/foo/a.zip /home/foo/b.zip /home/foo/c.zip))
230
230
  end
231
231
 
@@ -278,7 +278,7 @@ module Maid
278
278
  it 'lists multiple files in alphabetical order' do
279
279
  # It doesn't occur with `FakeFS` as far as I can tell, but Ubuntu (and possibly OS X) can give the results out
280
280
  # of lexical order. That makes using the `dry-run` output difficult to use.
281
- Dir.stub(:glob) { %w(/home/foo/b.zip /home/foo/a.zip /home/foo/c.zip) }
281
+ allow(Dir).to receive(:glob).and_return(%w(/home/foo/b.zip /home/foo/a.zip /home/foo/c.zip))
282
282
  expect(@maid.dir('~/Downloads/*.zip')).to eq(%w(/home/foo/a.zip /home/foo/b.zip /home/foo/c.zip))
283
283
  end
284
284
 
@@ -373,7 +373,7 @@ module Maid
373
373
 
374
374
  describe '#downloaded_from' do
375
375
  before do
376
- Platform.stub(:osx?) { true }
376
+ allow(Platform).to receive(:osx?).and_return(true)
377
377
  end
378
378
 
379
379
  it 'determines the download site' do
@@ -410,7 +410,7 @@ module Maid
410
410
  describe '#zipfile_contents' do
411
411
  it 'inspects the contents of a .zip file' do
412
412
  entries = [double(:name => 'foo.exe'), double(:name => 'README.txt'), double(:name => 'subdir/anything.txt')]
413
- Zip::File.stub(:open).and_yield(entries)
413
+ allow(Zip::File).to receive(:open).and_yield(entries)
414
414
 
415
415
  expect(@maid.zipfile_contents('foo.zip')).to eq(['README.txt', 'foo.exe', 'subdir/anything.txt'])
416
416
  end
@@ -425,7 +425,7 @@ module Maid
425
425
  context 'when the file does not exist' do
426
426
  it 'raises an error' do
427
427
  expect(@maid).to receive(:cmd).and_return('du: cannot access `foo.zip\': No such file or directory')
428
- expect(lambda { @maid.disk_usage('foo.zip') }).to raise_error(RuntimeError)
428
+ expect { @maid.disk_usage('foo.zip') }.to raise_error(RuntimeError)
429
429
  end
430
430
  end
431
431
  end
@@ -6,7 +6,7 @@ module Maid
6
6
  describe TrashMigration, :fakefs => true do
7
7
  context 'when running on Linux' do
8
8
  before do
9
- Platform.stub(:linux?) { true }
9
+ allow(Platform).to receive(:linux?).and_return(true)
10
10
  end
11
11
 
12
12
  context 'and the incorrect trash path does not exist' do
@@ -26,7 +26,7 @@ module Maid
26
26
 
27
27
  context 'and the kill switch is activated' do
28
28
  before do
29
- ENV.stub(:[]).with('MAID_NO_MIGRATE_TRASH') { 'any-value' }
29
+ allow(ENV).to receive(:[]).with('MAID_NO_MIGRATE_TRASH').and_return('any-value')
30
30
  end
31
31
 
32
32
  it 'is not needed' do
@@ -38,7 +38,7 @@ module Maid
38
38
 
39
39
  context 'when running on OS X' do
40
40
  before do
41
- Platform.stub(:linux?) { false }
41
+ allow(Platform).to receive(:linux?).and_return(false)
42
42
  end
43
43
 
44
44
  it 'is not needed' do
@@ -48,7 +48,7 @@ module Maid
48
48
 
49
49
  describe 'performing' do
50
50
  before do
51
- Logger.stub(:new) { double('Logger').as_null_object }
51
+ allow(Logger).to receive(:new).and_return(double('Logger').as_null_object)
52
52
  end
53
53
 
54
54
  context 'in Linux' do
@@ -57,7 +57,7 @@ module Maid
57
57
  File::FNM_DOTMATCH) }
58
58
 
59
59
  before do
60
- subject.stub(:correct_trash) { File.expand_path('~/.local/share/Trash/files/') }
60
+ allow(subject).to receive(:correct_trash).and_return(File.expand_path('~/.local/share/Trash/files/'))
61
61
 
62
62
  FileUtils.mkdir_p(subject.incorrect_trash)
63
63
  FileUtils.touch(File.join(subject.incorrect_trash, filename))
@@ -2,18 +2,19 @@ require 'spec_helper'
2
2
 
3
3
  module Maid
4
4
  describe UserAgent do
5
+ before do
6
+ allow(::Maid).to receive(:const_get).with(:VERSION).and_return('0.0.1')
7
+ stub_const('RUBY_DESCRIPTION', 'ruby 1.8.8p0 (1970-01-01 revision 1) [pdp7-unix]')
8
+ end
9
+
5
10
  describe 'the user agent string' do
6
11
  it 'is formatted with the Maid version, platform version, and Ruby version' do
7
- stub_const('RUBY_DESCRIPTION', 'ruby 1.8.8p0 (1970-01-01 revision 1) [pdp7-unix]')
8
- ::Maid.stub(:const_get).with(:VERSION) { '0.0.1' }
9
-
10
12
  expect(UserAgent.value).to eq('Maid/0.0.1 (ruby 1.8.8p0 (1970-01-01 revision 1) [pdp7-unix])')
11
13
  end
12
14
  end
13
15
 
14
16
  describe 'the short user agent string' do
15
17
  it 'is formatted with the Maid version' do
16
- ::Maid.stub(:const_get).with(:VERSION) { '0.0.1' }
17
18
  expect(UserAgent.short).to eq('Maid/0.0.1')
18
19
  end
19
20
  end
data/spec/spec_helper.rb CHANGED
@@ -9,6 +9,7 @@ require 'maid'
9
9
  RSpec.configure do |config|
10
10
  config.mock_with(:rspec)
11
11
  config.include(FakeFS::SpecHelpers, :fakefs => true)
12
+ config.raise_errors_for_deprecations!
12
13
  end
13
14
 
14
15
  RSpec::Matchers.define :have_deprecated_method do |expected|
metadata CHANGED
@@ -1,14 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0.alpha.2
4
+ version: 0.10.0.pre.alpha.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Benjamin Oakes
8
+ - Coaxial
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2023-03-19 00:00:00.000000000 Z
12
+ date: 2023-03-28 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: escape
@@ -340,18 +341,24 @@ description: Be lazy. Let Maid clean up after you, based on rules you define. Th
340
341
  of it as "Hazel for hackers".
341
342
  email:
342
343
  - hello@benjaminoakes.com
344
+ - c+rubygems@64b.it
343
345
  executables:
344
346
  - maid
345
347
  extensions: []
346
348
  extra_rdoc_files: []
347
349
  files:
350
+ - ".act-env"
351
+ - ".act-secrets.example"
352
+ - ".github/workflows/release.yml"
348
353
  - ".github/workflows/test.yml"
349
354
  - ".gitignore"
355
+ - ".release-please-manifest.json"
350
356
  - ".rspec"
351
357
  - ".ruby-gemset"
352
358
  - ".ruby-version"
353
359
  - ".yardopts"
354
360
  - AUTHORS.md
361
+ - CHANGELOG.md
355
362
  - CONTRIBUTING.md
356
363
  - ChangeLog
357
364
  - Gemfile
@@ -407,11 +414,17 @@ files:
407
414
  - spec/lib/maid/user_agent_spec.rb
408
415
  - spec/lib/maid_spec.rb
409
416
  - spec/spec_helper.rb
410
- homepage: http://github.com/benjaminoakes/maid
417
+ homepage: http://github.com/maid/maid
411
418
  licenses:
412
419
  - GPLv2
413
- metadata: {}
414
- post_install_message:
420
+ metadata:
421
+ bug_tracker_uri: https://github.com/maid/maid/issues
422
+ changelog_uri: https://github.com/maid/maid/blob/master/CHANGELOG.md
423
+ documentation_uri: https://github.com/maid/maid/blob/master/README.md
424
+ source_code_uri: https://github.com/maid/maid
425
+ wiki_uri: https://github.com/maid/maid/wiki
426
+ post_install_message: "\U0001F64F Thank you for installing Maid, we hope it's useful
427
+ to you! Visit http://github.com/maid/maid to report issues or contribute code."
415
428
  rdoc_options: []
416
429
  require_paths:
417
430
  - lib