grover 1.1.2 → 1.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b99e2ab2724c1384347e40dd33199bd943fd4ec371f0cbf1c539ce6e3cca81f7
4
- data.tar.gz: eb96813f2e5ef10d50ce5b1dfe4bb0cfaffc54d7dd212c10901e7f85ff8b9fdf
3
+ metadata.gz: 605a1ddd3d51f652e03c28d8f6ab97b45e9f026884da2ea4772b57fc83287dd2
4
+ data.tar.gz: c4bc0069f551b4e15df0b59b42175b20bc3d8130fb2981b947b832e0f2e48e14
5
5
  SHA512:
6
- metadata.gz: 633d31ee5053ec6d6c00f0e0ac2e68c0a5768cfbf201be61b56e35b6912d1f8f1720e56457eb8fb212bd85842a74a16e3a4d806f2dccfd166223df0ffae3163d
7
- data.tar.gz: 714be51eb85beae33685cf8d11812fbb62fa3dfaec16a5da599ec96b26982c3dacdf916630eed9775567275cdee229c780a00a79435be9b1237ba38ec6e72381
6
+ metadata.gz: cfdb35168bba8db20bc0ba7cf027d13ebb61670f2a89f059710129cdd3c7460f0b95f80a0cc7fbd2f334ca25348e733eccd1ce00bd380e6d65282e3018161572
7
+ data.tar.gz: '08cdc3c9c5ce2bf8c3d9c7d155db3cb558dd77e718008f7c8d5662188bf78071b611e3ad3aa2b3f32800b6595c492222c6f1a99768a2be983aa4e5e7f37b12f5'
@@ -31,88 +31,6 @@ class Object
31
31
  end
32
32
  end
33
33
 
34
- class NilClass
35
- begin
36
- nil.dup
37
- rescue TypeError
38
- # +nil+ is not duplicable:
39
- #
40
- # nil.duplicable? # => false
41
- # nil.dup # => TypeError: can't dup NilClass
42
- def duplicable?
43
- false
44
- end
45
- end
46
- end
47
-
48
- class FalseClass
49
- begin
50
- false.dup
51
- rescue TypeError
52
- # +false+ is not duplicable:
53
- #
54
- # false.duplicable? # => false
55
- # false.dup # => TypeError: can't dup FalseClass
56
- def duplicable?
57
- false
58
- end
59
- end
60
- end
61
-
62
- class TrueClass
63
- begin
64
- true.dup
65
- rescue TypeError
66
- # +true+ is not duplicable:
67
- #
68
- # true.duplicable? # => false
69
- # true.dup # => TypeError: can't dup TrueClass
70
- def duplicable?
71
- false
72
- end
73
- end
74
- end
75
-
76
- class Symbol
77
- begin
78
- :symbol.dup # Ruby 2.4.x.
79
- 'symbol_from_string'.to_sym.dup # Some symbols can't `dup` in Ruby 2.4.0.
80
- rescue TypeError
81
- # Symbols are not duplicable:
82
- #
83
- # :my_symbol.duplicable? # => false
84
- # :my_symbol.dup # => TypeError: can't dup Symbol
85
- def duplicable?
86
- false
87
- end
88
- end
89
- end
90
-
91
- class Numeric
92
- begin
93
- 1.dup
94
- rescue TypeError
95
- # Numbers are not duplicable:
96
- #
97
- # 3.duplicable? # => false
98
- # 3.dup # => TypeError: can't dup Integer
99
- def duplicable?
100
- false
101
- end
102
- end
103
- end
104
-
105
- require 'bigdecimal'
106
- class BigDecimal
107
- # BigDecimals are duplicable:
108
- #
109
- # BigDecimal("1.2").duplicable? # => true
110
- # BigDecimal("1.2").dup # => #<BigDecimal:...,'0.12E1',18(18)>
111
- def duplicable?
112
- true
113
- end
114
- end
115
-
116
34
  class Method
117
35
  # Methods are not duplicable:
118
36
  #
@@ -123,30 +41,12 @@ class Method
123
41
  end
124
42
  end
125
43
 
126
- class Complex
127
- begin
128
- Complex(1).dup
129
- rescue TypeError
130
- # Complexes are not duplicable:
131
- #
132
- # Complex(1).duplicable? # => false
133
- # Complex(1).dup # => TypeError: can't copy Complex
134
- def duplicable?
135
- false
136
- end
137
- end
138
- end
139
-
140
- class Rational
141
- begin
142
- Rational(1).dup
143
- rescue TypeError
144
- # Rationals are not duplicable:
145
- #
146
- # Rational(1).duplicable? # => false
147
- # Rational(1).dup # => TypeError: can't copy Rational
148
- def duplicable?
149
- false
150
- end
44
+ class UnboundMethod
45
+ # Unbound methods are not duplicable:
46
+ #
47
+ # method(:puts).unbind.duplicable? # => false
48
+ # method(:puts).unbind.dup # => TypeError: allocator undefined for UnboundMethod
49
+ def duplicable?
50
+ false
151
51
  end
152
52
  end
@@ -10,11 +10,18 @@ try {
10
10
  }
11
11
  process.stdout.write("[\"ok\"]\n");
12
12
 
13
+ const fs = require('fs');
14
+ const os = require('os');
15
+ const path = require('path');
16
+
13
17
  const _processPage = (async (convertAction, urlOrHtml, options) => {
14
- let browser, errors = [];
18
+ let browser, errors = [], tmpDir;
15
19
  try {
20
+ tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'grover-'));
21
+
16
22
  const launchParams = {
17
- args: process.env.GROVER_NO_SANDBOX === 'true' ? ['--no-sandbox', '--disable-setuid-sandbox'] : []
23
+ args: process.env.GROVER_NO_SANDBOX === 'true' ? ['--no-sandbox', '--disable-setuid-sandbox'] : [],
24
+ userDataDir: tmpDir
18
25
  };
19
26
 
20
27
  // Configure puppeteer debugging options
@@ -245,6 +252,10 @@ const _processPage = (async (convertAction, urlOrHtml, options) => {
245
252
  if (browser) {
246
253
  await browser.close();
247
254
  }
255
+
256
+ try {
257
+ if (tmpDir) fs.rmSync(tmpDir, { recursive: true });
258
+ } catch { }
248
259
  }
249
260
  });
250
261
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Grover
4
- VERSION = '1.1.2'
4
+ VERSION = '1.1.4'
5
5
  end
data/lib/grover.rb CHANGED
@@ -30,7 +30,8 @@ class Grover
30
30
  #
31
31
  # @param [String] url URL of the page to convert
32
32
  # @param [Hash] options Optional parameters to pass to PDF processor
33
- # see https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md#pagepdfoptions
33
+ # see https://github.com/puppeteer/puppeteer/blob/main/docs/api/puppeteer.pdfoptions.md
34
+ # and https://github.com/puppeteer/puppeteer/blob/main/docs/api/puppeteer.screenshotoptions.md
34
35
  #
35
36
  def initialize(url, **options)
36
37
  @url = url.to_s
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grover
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Bromwich
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-09-12 00:00:00.000000000 Z
11
+ date: 2023-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: combine_pdf
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '4.9'
47
+ version: '4.12'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '4.9'
54
+ version: '4.12'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: pdf-reader
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '2.2'
61
+ version: '2.11'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '2.2'
68
+ version: '2.11'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rack-test
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -86,56 +86,70 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '12.3'
89
+ version: '13.0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '12.3'
96
+ version: '13.0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rspec
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '3.8'
103
+ version: '3.12'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '3.8'
110
+ version: '3.12'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rubocop
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '0.72'
117
+ version: '1.43'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '0.72'
124
+ version: '1.43'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rubocop-rake
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '0.6'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '0.6'
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: rubocop-rspec
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
143
  - - "~>"
130
144
  - !ruby/object:Gem::Version
131
- version: '1.33'
145
+ version: '2.18'
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '1.33'
152
+ version: '2.18'
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: simplecov
141
155
  requirement: !ruby/object:Gem::Requirement
@@ -191,17 +205,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
191
205
  requirements:
192
206
  - - ">="
193
207
  - !ruby/object:Gem::Version
194
- version: 2.6.0
208
+ version: 2.7.0
195
209
  - - "<"
196
210
  - !ruby/object:Gem::Version
197
- version: 3.2.0
211
+ version: 3.3.0
198
212
  required_rubygems_version: !ruby/object:Gem::Requirement
199
213
  requirements:
200
214
  - - ">="
201
215
  - !ruby/object:Gem::Version
202
216
  version: '0'
203
217
  requirements: []
204
- rubygems_version: 3.3.7
218
+ rubygems_version: 3.4.4
205
219
  signing_key:
206
220
  specification_version: 4
207
221
  summary: A Ruby gem to transform HTML into PDF, PNG or JPEG by wrapping the NodeJS