darkroom 0.0.7 → 0.0.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/lib/darkroom/asset.rb +23 -11
- data/lib/darkroom/delegates/javascript.rb +1 -1
- data/lib/darkroom/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ff7abd45467a1fd1e3f3ae707ad1ff04ff45c9e0a4f4a512fb24fc6bd794879
|
4
|
+
data.tar.gz: 03f15709d9310d94068f3706e02ac1d4998887cf3c5bb09f3463eb72875a1ae9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bd87bd335cb7abb1e3bf26365d0dca2247b5d5450c82ded04d16709d97031bdcf2e4e59cf345c2f5a18218be05157ee2dc4c9f1d5ef27ed07ab433bf33a968aa
|
7
|
+
data.tar.gz: d1141e492dcedde15aca909de9354756d95db7ecf4b925421711589eeef96df973126e7d603ccde93ee6d078252ea56eba6d89c9c594eef00c9ff55a3fcb666c
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.8
|
data/lib/darkroom/asset.rb
CHANGED
@@ -61,7 +61,7 @@ class Darkroom
|
|
61
61
|
@extension = File.extname(@path).downcase
|
62
62
|
@delegate = Darkroom.delegate(@extension) or raise(UnrecognizedExtensionError.new(@path))
|
63
63
|
|
64
|
-
@
|
64
|
+
@ran = Set.new
|
65
65
|
|
66
66
|
if @delegate.compile_delegate && !intermediate
|
67
67
|
@delegate = @delegate.compile_delegate
|
@@ -283,13 +283,16 @@ class Darkroom
|
|
283
283
|
# error was recorded during the last processing run.
|
284
284
|
#
|
285
285
|
def modified?
|
286
|
-
|
286
|
+
@modified_key == @darkroom.process_key ? (return @modified) : @modified_key = @darkroom.process_key
|
287
287
|
|
288
288
|
begin
|
289
289
|
@modified = !!@error
|
290
290
|
@modified ||= (@mtime != (@mtime = File.mtime(@file)))
|
291
291
|
@modified ||= @intermediate_asset.modified? if @intermediate_asset
|
292
|
-
@modified ||=
|
292
|
+
@modified ||= dependencies.any? { |d| d.modified? }
|
293
|
+
|
294
|
+
@ran.clear if @modified
|
295
|
+
|
293
296
|
@modified
|
294
297
|
rescue Errno::ENOENT
|
295
298
|
@modified = true
|
@@ -382,7 +385,11 @@ class Darkroom
|
|
382
385
|
# Returns all dependencies (including dependencies of dependencies).
|
383
386
|
#
|
384
387
|
def dependencies
|
385
|
-
|
388
|
+
unless ran?(:dependencies)
|
389
|
+
parse
|
390
|
+
@dependencies = accumulate(:own_dependencies)
|
391
|
+
end
|
392
|
+
|
386
393
|
@dependencies
|
387
394
|
end
|
388
395
|
|
@@ -399,7 +406,11 @@ class Darkroom
|
|
399
406
|
# Returns all imports (including imports of imports).
|
400
407
|
#
|
401
408
|
def imports
|
402
|
-
|
409
|
+
unless ran?(:imports)
|
410
|
+
parse
|
411
|
+
@imports = accumulate(:own_imports)
|
412
|
+
end
|
413
|
+
|
403
414
|
@imports
|
404
415
|
end
|
405
416
|
|
@@ -502,10 +513,9 @@ class Darkroom
|
|
502
513
|
@own_content = compiled if compiled.kind_of?(String)
|
503
514
|
rescue => e
|
504
515
|
@errors << e
|
516
|
+
ensure
|
517
|
+
@own_content.freeze
|
505
518
|
end
|
506
|
-
ensure
|
507
|
-
@own_content.freeze
|
508
|
-
dependencies # Ensure dependency array gets built.
|
509
519
|
end
|
510
520
|
|
511
521
|
##
|
@@ -551,11 +561,13 @@ class Darkroom
|
|
551
561
|
# [name] Name of the method.
|
552
562
|
#
|
553
563
|
def ran?(name)
|
554
|
-
|
564
|
+
modified?
|
565
|
+
|
566
|
+
if @ran.member?(name)
|
555
567
|
true
|
556
568
|
else
|
557
|
-
@
|
558
|
-
|
569
|
+
@ran << name
|
570
|
+
false
|
559
571
|
end
|
560
572
|
end
|
561
573
|
|
@@ -120,7 +120,7 @@ class Darkroom
|
|
120
120
|
compile do |parse_data:, path:, own_content:|
|
121
121
|
next unless Darkroom.javascript_iife
|
122
122
|
|
123
|
-
(parse_data[:imports] || []).
|
123
|
+
(parse_data[:imports] || []).reverse_each do |import_path, items|
|
124
124
|
mod_suffix = nil
|
125
125
|
prefix = '{ ' if items.size != 1
|
126
126
|
suffix = ' }' if items.size != 1
|
data/lib/darkroom/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: darkroom
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nate Pickens
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-07-
|
11
|
+
date: 2023-07-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|