blockbuster 0.4.1 → 0.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/.rubocop.yml +4 -0
- data/README.md +33 -1
- data/Rakefile +2 -2
- data/blockbuster.gemspec +1 -2
- data/lib/blockbuster/concerns/extractor.rb +1 -0
- data/lib/blockbuster/delta.rb +1 -1
- data/lib/blockbuster/manager.rb +5 -5
- data/lib/blockbuster/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: 22f608be7427bf5330f0c2221b67fb7957895de2
|
|
4
|
+
data.tar.gz: c166cf00c3791e77502bf7d0cf6f074f531a1ffd
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2e0307d93eac4eb8edaa6085afa291c9c94239d4ebcc59d0e4ff559011c3384e83e8733fbd02d15ae675e74eb38ff46f7eb18a09b96be6f3022841c480955e24
|
|
7
|
+
data.tar.gz: 56d22558cf5e7a1617652905225b35dd1fe24b0de14374161d6b55c2cf5ec231fdb1d6b59245ee8dcd73b506198d0952beb114f7094fc15c0c60f1679c3e71ee
|
data/.rubocop.yml
CHANGED
data/README.md
CHANGED
|
@@ -7,6 +7,38 @@ Managing your VCR cassettes since 2016.
|
|
|
7
7
|
The task of this gem is to take all your VCR cassettes and package them into one `.tar.gz` file
|
|
8
8
|
for adding to git or other distributed version control system.
|
|
9
9
|
|
|
10
|
+
## Use cases
|
|
11
|
+
|
|
12
|
+
Blockbuster was built to tackle some of the problems with VCR when
|
|
13
|
+
cassettes are checked into a version control system like git. Some of the problems
|
|
14
|
+
were the sheer amount of noise from all the cassette files,
|
|
15
|
+
merge conflicts, lost time, and failing builds due to old cassettes
|
|
16
|
+
overwriting new cassettes. The biggest issue we had was the inability to
|
|
17
|
+
review PR's in github as the enormous diffs generated would cause github
|
|
18
|
+
to hide changes that needed to be reviewed. Github's per-commit view has helped
|
|
19
|
+
mitigate this but that doesn't help in cases where PR's are squashed.
|
|
20
|
+
|
|
21
|
+
If you are checking in large amounts of cassettes to git
|
|
22
|
+
and they are changing regularly, Blockbuster can help
|
|
23
|
+
reduce noise, conflicts, and hopefully make the development
|
|
24
|
+
workflow easier.
|
|
25
|
+
|
|
26
|
+
#### Reduce noise:
|
|
27
|
+
|
|
28
|
+
If your workflow requires that every change is a review pull request, any
|
|
29
|
+
PR with several updated cassettes can make githubs diff comparison almost
|
|
30
|
+
useless. One small change to a client for a 3rd party service can result
|
|
31
|
+
in hundreds of files to diff.
|
|
32
|
+
|
|
33
|
+
#### Reduce merge conflicts
|
|
34
|
+
|
|
35
|
+
VCR cassettes are not always easily merged and dealing with the merge conflicts
|
|
36
|
+
is maddening and a huge time waster. Having a single master cassette file works
|
|
37
|
+
to fix merge conflicts but that introduced a new problem where multiple
|
|
38
|
+
PRs could have different master cassette files and the last file would win.
|
|
39
|
+
The delta feature keeps only new cassettes in a secondardy delta file that
|
|
40
|
+
is checked in.
|
|
41
|
+
|
|
10
42
|
## Installation
|
|
11
43
|
|
|
12
44
|
Add this line to your application's Gemfile:
|
|
@@ -187,7 +219,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
|
|
|
187
219
|
|
|
188
220
|
## Contributing
|
|
189
221
|
|
|
190
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/
|
|
222
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/fastly/blockbuster. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](contributor-covenant.org) code of conduct.
|
|
191
223
|
|
|
192
224
|
|
|
193
225
|
## License
|
data/Rakefile
CHANGED
data/blockbuster.gemspec
CHANGED
data/lib/blockbuster/delta.rb
CHANGED
data/lib/blockbuster/manager.rb
CHANGED
|
@@ -40,10 +40,10 @@ module Blockbuster
|
|
|
40
40
|
|
|
41
41
|
# repackages cassettes into a compressed tarball
|
|
42
42
|
def drop_off(force: false)
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
return unless comparator.rewind?(configuration.cassette_files) || force
|
|
44
|
+
|
|
45
|
+
silent_puts "Recreating cassette file #{@extraction_list.primary.target_path}"
|
|
46
|
+
@extraction_list.primary.create_cassette_file
|
|
47
47
|
end
|
|
48
48
|
|
|
49
49
|
alias setup rent
|
|
@@ -57,7 +57,7 @@ module Blockbuster
|
|
|
57
57
|
dir = configuration.cassette_dir
|
|
58
58
|
|
|
59
59
|
silent_puts "Wiping cassettes directory: #{dir}"
|
|
60
|
-
FileUtils.
|
|
60
|
+
FileUtils.rm_rf(dir) if Dir.exist?(dir)
|
|
61
61
|
end
|
|
62
62
|
end
|
|
63
63
|
end
|
data/lib/blockbuster/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: blockbuster
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.5.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Lukas Eklund
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: exe
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date:
|
|
13
|
+
date: 2018-10-31 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: bundler
|