moby.rb 2.1.1 → 2.1.3
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/CHANGELOG +128 -2
- data/lib/Moby/VERSION.rb +1 -1
- data/moby.rb.gemspec +5 -5
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1f1d55b4208687cb63e58b7ca69bfef874829c8e11cf001d49c93414208f6d8d
|
|
4
|
+
data.tar.gz: 783be3fe1903bb3f53501df75f08a1697cece9be77652581d3e6ab0e071c56fa
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bb161f90168d0c40281772bea8e9d9cd72042dc352733a19201c86252868511cdddb9a56260386f28181ae95191c98ccd8bc8b923f05a53d9de11738edab6535
|
|
7
|
+
data.tar.gz: 259a606027e52766ae504972dc49fbf31978d24bbf0f18d6109c249cd951426da59efb7d2e948343226e12a5e3bd72904cd3bea1b5041dd27f8dad6b7e673cef
|
data/CHANGELOG
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
+
## 20260820
|
|
4
|
+
|
|
5
|
+
2.1.3: Backfill the CHANGELOG below 0.7.0 to the 0.0.0 origin.
|
|
6
|
+
|
|
7
|
+
1. + CHANGELOG: 0.0.0 through 0.6.0, the series 1.0.1 left out. 1.0.1 floored the record at 0.7.0 on the view that below it "neither a reliable date nor a reliable version can be had"; the git-importall revisions carry more than that allowed, and their commit messages have since been rewritten to name a version apiece, so the CHANGELOG now reaches as far back as they do.
|
|
8
|
+
2. The versions are mostly read off the source, not guessed: 0.0.1 to 0.4.3 each carry a `# X.Y.Z` header, and 0.4.4 to 0.5.0 a WHALE_VERSION constant. Three are a judgement call — 0.0.0 (the bare spike, no stamp), 0.5.1 (a patch left standing on 0.5.0's unbumped WHALE_VERSION), and 0.6.0 (the extraction commit, where the constant does not survive the move) — each placed one commit, one version, sized by its change.
|
|
9
|
+
3. The dates are shakier than the versions. The 2006 series stamps every version with the one creation date, 20061009; the 2008 headers are per-revision but not always bumped — 0.4.8 stamps 20080829, later than the 0.5.0 and 0.5.1 above it, so the series is ordered by version and 0.4.8 sits by its number, under its own out-of-sequence date. 0.0.0 carries no date at all.
|
|
10
|
+
4. ~ CHANGELOG: the 0.7.0 entry no longer calls itself "the earliest recoverable version" — it is not, now — and reads as the change it was.
|
|
11
|
+
5. ~ lib/Moby/VERSION.rb: VERSION: /2.1.2/2.1.3/
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## 20260819
|
|
15
|
+
|
|
16
|
+
2.1.2: ~ moby.rb.gemspec: spec.files as [...].flatten with a Dir[] per glob, in place of one Dir[] over the lot.
|
|
17
|
+
|
|
18
|
+
1. ~ moby.rb.gemspec: spec.files built as an array with Dir[] around each glob and flattened, rather than a single Dir[] taking the globs and the loose filenames together. This is the form the other six gems use, and it is the safer one. Dir[] answers with what matches, so under the old form a loose filename naming a file which is not there contributes nothing and the gem builds anyway, short of what its manifest said. Under this one the name reaches spec.files as a literal and gem build refuses: "[\"LICENSE\"] are not files". Nothing was being dropped here — all six loose files are present and the same 27 ship — but the old form could not have told me so.
|
|
19
|
+
2. The same applies to a filename holding a glob character. Under the old form weird[1].txt is read as a character class and matches nothing; under this one it is a name.
|
|
20
|
+
3. impuri went five published versions declaring spec.license = 'MIT' with no LICENSE in the repository, which is this failure in the shape it actually takes. Its 0.12.4 added the file. Under a Dir[] over the lot, adding 'LICENSE' to the manifest would have gone on building quietly until somebody thought to look inside the gem.
|
|
21
|
+
4. The order is unchanged, the globs having already been first with the loose files alphabetically after them.
|
|
22
|
+
5. ~ Moby::VERSION: /2.1.1/2.1.2/
|
|
23
|
+
|
|
24
|
+
|
|
3
25
|
## 20260817
|
|
4
26
|
|
|
5
27
|
2.1.1: Bring the .gitignore into line with the template.
|
|
@@ -145,6 +167,110 @@
|
|
|
145
167
|
|
|
146
168
|
## 20190815
|
|
147
169
|
|
|
148
|
-
0.7.0:
|
|
170
|
+
0.7.0: Move to a Whale library: add #switches and #main.
|
|
171
|
+
|
|
172
|
+
1. The engine 0.6.0 pulled into lib/Whale.rb becomes the library the bin drives: + switches(), + main(). whale floods a phishing form with fake credentials — counter_phish() loads the page, then loops submitting a generated username and password, each built from random dictionary words and TLDs.
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
## 20110907
|
|
176
|
+
|
|
177
|
+
0.6.0: Extract the engine from bin/whale into lib/Whale.rb.
|
|
178
|
+
|
|
179
|
+
1. The class and its methods move out of bin/whale into lib/Whale.rb, leaving the bin to require and drive it — the split 0.7.0 builds #switches and #main on. Version inferred: the WHALE_VERSION constant does not survive the move.
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
## 20080521
|
|
183
|
+
|
|
184
|
+
0.5.1: Small #initialize and #parse_options fix.
|
|
185
|
+
|
|
186
|
+
1. Version inferred: it patches #initialize and #parse_options but leaves WHALE_VERSION at 0.5.0.
|
|
187
|
+
|
|
188
|
+
0.5.0: Rebuild Options on OpenStruct: #set, #on, #banner=, #parse!.
|
|
189
|
+
|
|
190
|
+
1. + require 'ostruct'; Options rebuilt on OpenStruct — + set(), + on(), + banner=(), + parse!().
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
## 20080829
|
|
194
|
+
|
|
195
|
+
0.4.8: Small #initialize and #parse_options fixes.
|
|
196
|
+
|
|
197
|
+
1. Its 20080829 header is out of sequence — later than the 0.5.0 and 0.5.1 above — an unbumped stamp, not a later release; ordered here by version.
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
## 20080521
|
|
201
|
+
|
|
202
|
+
0.4.7: Add File.collect and #words; drop #read_words_file.
|
|
203
|
+
|
|
204
|
+
1. + class File with self.collect(), + words(); - read_words_file(). The word list is read through File.collect now.
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
## 20080520
|
|
208
|
+
|
|
209
|
+
0.4.6: Switch to OptionParser: add #parse and #parse_url.
|
|
210
|
+
|
|
211
|
+
1. + require 'optparse'; + parse(), + parse_url() — option handling through OptionParser.
|
|
212
|
+
|
|
213
|
+
0.4.5: Add page and form fetching and the username and password field setters.
|
|
214
|
+
|
|
215
|
+
1. + page, + form, + username, + password, + set_username_field(), + set_password_field().
|
|
216
|
+
|
|
217
|
+
0.4.4: Add option parsing: class Options and #parse_options.
|
|
218
|
+
|
|
219
|
+
1. + class Options, + parse_options() — a first cut at command-line options, before the OptionParser switch at 0.4.6.
|
|
220
|
+
|
|
221
|
+
0.4.3: Small #initialize and #counter_phish fixes.
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
## 20061009
|
|
225
|
+
|
|
226
|
+
0.4.2: Small #initialize and #counter_phish fixes.
|
|
227
|
+
|
|
228
|
+
0.4.1: Drop the pp require again.
|
|
229
|
+
|
|
230
|
+
0.4.0: Re-add pp; tidy the loop.
|
|
231
|
+
|
|
232
|
+
0.3.1: Drop the pp require.
|
|
233
|
+
|
|
234
|
+
0.3.0: Add #random_TLD for email-shaped usernames.
|
|
235
|
+
|
|
236
|
+
1. + random_TLD(), so a generated username can be shaped like an email address.
|
|
237
|
+
|
|
238
|
+
0.2.4: Small #initialize and #counter_phish fixes.
|
|
239
|
+
|
|
240
|
+
0.2.3: Small #initialize and #counter_phish fixes.
|
|
241
|
+
|
|
242
|
+
0.2.2: Small #initialize and #counter_phish fixes.
|
|
243
|
+
|
|
244
|
+
0.2.1: Small #initialize and #counter_phish fixes.
|
|
245
|
+
|
|
246
|
+
0.2.0: Small #initialize and #counter_phish fixes.
|
|
247
|
+
|
|
248
|
+
0.1.2: Small #initialize fix.
|
|
249
|
+
|
|
250
|
+
0.1.1: Small #initialize and #counter_phish fixes.
|
|
251
|
+
|
|
252
|
+
0.1.0: Drop the pp require; tidy the loop.
|
|
253
|
+
|
|
254
|
+
0.0.7: Small #initialize and #counter_phish fixes.
|
|
255
|
+
|
|
256
|
+
0.0.6: Small #initialize and #counter_phish fixes.
|
|
257
|
+
|
|
258
|
+
0.0.5: Adjust the word-file reading.
|
|
259
|
+
|
|
260
|
+
0.0.4: Refine #initialize and #counter_phish.
|
|
261
|
+
|
|
262
|
+
0.0.3: Replace RandomMethod with #random_word.
|
|
263
|
+
|
|
264
|
+
1. - module RandomMethod (- random(), - random_method()); + random_word() in its place.
|
|
265
|
+
|
|
266
|
+
0.0.2: Add #counter_phish and random-word selection.
|
|
267
|
+
|
|
268
|
+
1. + counter_phish(), + read_words_file(), random-word selection; - select().
|
|
269
|
+
|
|
270
|
+
0.0.1: First cut: class Whale, #initialize, #select.
|
|
271
|
+
|
|
272
|
+
1. + class Whale, + initialize(), + select() — the spike turned into a class.
|
|
273
|
+
|
|
274
|
+
0.0.0: A Mechanize spike — fetch a page and submit its form.
|
|
149
275
|
|
|
150
|
-
1.
|
|
276
|
+
1. The bare origin: require 'rubygems', 'mechanize', 'pp'; fetch a page and submit its form. No Whale class, and no version or date stamp of its own — the inventory slot the 0.7.0 entry used to hold.
|
data/lib/Moby/VERSION.rb
CHANGED
data/moby.rb.gemspec
CHANGED
|
@@ -39,17 +39,17 @@ Gem::Specification.new do |spec|
|
|
|
39
39
|
'webmock'
|
|
40
40
|
]
|
|
41
41
|
|
|
42
|
-
spec.files =
|
|
43
|
-
'bin/*',
|
|
44
|
-
'lib/**/*.rb',
|
|
45
|
-
'test/**/*.rb',
|
|
42
|
+
spec.files = [
|
|
43
|
+
Dir['bin/*'],
|
|
44
|
+
Dir['lib/**/*.rb'],
|
|
45
|
+
Dir['test/**/*.rb'],
|
|
46
46
|
'CHANGELOG',
|
|
47
47
|
'Gemfile',
|
|
48
48
|
'LICENSE.txt',
|
|
49
49
|
'moby.rb.gemspec',
|
|
50
50
|
'Rakefile',
|
|
51
51
|
'README.md',
|
|
52
|
-
]
|
|
52
|
+
].flatten
|
|
53
53
|
|
|
54
54
|
spec.bindir = 'bin'
|
|
55
55
|
spec.executables = ['moby']
|