discreet_proxy 1.0.0 → 1.0.2
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 +7 -0
- data/Gemfile +3 -8
- data/README.rdoc +26 -9
- data/Rakefile +10 -23
- data/bin/flame_proxy_icon +3 -3
- data/discreet_proxy.gemspec +12 -63
- data/lib/discreet_proxy.rb +10 -9
- data/test/converted_png_proxies/AB_Halation.glsl.p.p.png +0 -0
- data/test/helper.rb +6 -9
- data/test/test_cli.rb +8 -6
- data/test/test_discreet_proxy.rb +4 -3
- data/test/test_proxies/AB_Halation.glsl.p +0 -0
- metadata +64 -40
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 6d604d587652c9e262e170bd071de1228856038a645e316ccf395d6542437bcc
|
|
4
|
+
data.tar.gz: 3b80ad22e6c84ce89c881247dcd412df4ca9d7c2d23e51959b50fe3fb50e1d82
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: b7fdb9c9232138db58ea42e4ba487eeb4f049090f958364e3c67587e2addd9ede917a08d0457bed2208c100793c0d6aa2bce4a14851dc68d9c843406f97c4503
|
|
7
|
+
data.tar.gz: bc37f8eced2f798ccaed0d922fe48487ab9772df462ffcafc23a04d0a295891d4135c24c53f4e7f8499178dbd6f755ab4d2e9f9636d5ffce18d4034e072293b2
|
data/Gemfile
CHANGED
data/README.rdoc
CHANGED
|
@@ -2,15 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
Writes and reads Flame/Smoke proxy files (.p) using ChunkyPNG.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
== Installation
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
7
|
+
Run these two commands in your terminal:
|
|
8
|
+
|
|
9
|
+
$sudo gem install discreet_proxy
|
|
10
|
+
$flame_proxy_icon --help
|
|
11
|
+
|
|
12
|
+
If the first one does not work - make sure you have Ruby installed.
|
|
13
|
+
|
|
14
|
+
== Usage from the command line
|
|
15
|
+
|
|
16
|
+
The builtin `flame_proxy_icon` binary is used to convert to and from the `.p` format.
|
|
14
17
|
|
|
15
18
|
$flame_proxy_icon --from-png my_icon.png
|
|
16
19
|
|
|
@@ -20,6 +23,20 @@ will create "my_icon.p", and the reverse
|
|
|
20
23
|
|
|
21
24
|
will create a SuperSetup.batch.png file that you can massage in, say, Photoshop.
|
|
22
25
|
|
|
26
|
+
== Usage from Ruby
|
|
27
|
+
|
|
28
|
+
To read every .p file on your Flame system and write it out as a PNG preview to the /tmp
|
|
29
|
+
|
|
30
|
+
require "rubygems"
|
|
31
|
+
require "discreet_proxy"
|
|
32
|
+
Dir.glob("/usr/discreet/project/**/*.p").each do | icon_path |
|
|
33
|
+
proxy = DiscreetProxy.from_file(icon_path)
|
|
34
|
+
dest_path = "/tmp/" + File.basename(icon_path) + ".png"
|
|
35
|
+
proxy.save_png(dest_path)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
From there on the possibilities are endless.
|
|
39
|
+
|
|
23
40
|
== Contributing to discreet_proxy
|
|
24
41
|
|
|
25
42
|
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
|
|
@@ -32,6 +49,6 @@ will create a SuperSetup.batch.png file that you can massage in, say, Photoshop.
|
|
|
32
49
|
|
|
33
50
|
== Copyright
|
|
34
51
|
|
|
35
|
-
Copyright (c) 2011 Julik Tarkhanov. See LICENSE.txt for
|
|
52
|
+
Copyright (c) 2011 and on Julik Tarkhanov. See LICENSE.txt for
|
|
36
53
|
further details.
|
|
37
54
|
|
data/Rakefile
CHANGED
|
@@ -1,28 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# encoding: utf-8
|
|
2
|
-
require 'rubygems'
|
|
3
|
-
require 'bundler'
|
|
4
|
-
require 'jeweler'
|
|
5
|
-
require './lib/discreet_proxy'
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
gem.homepage = "http://github.com/julik/discreet_proxy"
|
|
12
|
-
gem.license = "MIT"
|
|
13
|
-
gem.summary = %Q{Parses and creates Flame/Smoke .p proxy icon files}
|
|
14
|
-
gem.email = "me@julik.nl"
|
|
15
|
-
gem.authors = ["Julik Tarkhanov"]
|
|
16
|
-
gem.executables = ["flame_proxy_icon"]
|
|
17
|
-
# dependencies defined in Gemfile
|
|
18
|
-
end
|
|
19
|
-
Jeweler::RubygemsDotOrgTasks.new
|
|
5
|
+
# frozen_string_literal: true
|
|
6
|
+
|
|
7
|
+
require "bundler/gem_tasks"
|
|
8
|
+
require "rake/testtask"
|
|
20
9
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
test.pattern = 'test/**/test_*.rb'
|
|
25
|
-
test.verbose = true
|
|
10
|
+
Rake::TestTask.new(:test) do |t|
|
|
11
|
+
t.libs << "lib"
|
|
12
|
+
t.test_files = FileList["test/test_*.rb"]
|
|
26
13
|
end
|
|
27
14
|
|
|
28
|
-
task :
|
|
15
|
+
task default: [:test]
|
data/bin/flame_proxy_icon
CHANGED
|
@@ -6,7 +6,7 @@ require "optparse"
|
|
|
6
6
|
$from_png = false
|
|
7
7
|
$error = true
|
|
8
8
|
OptionParser.new do | op |
|
|
9
|
-
op.banner = "Usage: flame_proxy_icon --png convert_from_this_png.png"
|
|
9
|
+
op.banner = "Usage: flame_proxy_icon --from-png convert_from_this_png.png"
|
|
10
10
|
op.on("--from-png", "Generate a .p proxy from a PNG file") { $from_png = true; $error = false}
|
|
11
11
|
op.on("--from-icon", "Generate a .png file from a proxy .p file") { $from_png = false; $error = false}
|
|
12
12
|
end.parse!
|
|
@@ -18,7 +18,7 @@ ARGV.each do | filename_to_convert |
|
|
|
18
18
|
proxy = DiscreetProxy.from_png(png)
|
|
19
19
|
proxy.save(destination_filename)
|
|
20
20
|
else
|
|
21
|
-
destination_filename = filename_to_convert
|
|
21
|
+
destination_filename = filename_to_convert + "ng" # .png
|
|
22
22
|
proxy = DiscreetProxy.from_file(filename_to_convert)
|
|
23
23
|
proxy.save_png(destination_filename)
|
|
24
24
|
end
|
|
@@ -27,4 +27,4 @@ end
|
|
|
27
27
|
if $error
|
|
28
28
|
$stderr.puts "You need to provide the path to the file being converted. Also use the --help option."
|
|
29
29
|
exit(1)
|
|
30
|
-
end
|
|
30
|
+
end
|
data/discreet_proxy.gemspec
CHANGED
|
@@ -1,83 +1,32 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
# -*- encoding: utf-8 -*-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative "lib/discreet_proxy"
|
|
5
4
|
|
|
6
5
|
Gem::Specification.new do |s|
|
|
7
6
|
s.name = "discreet_proxy"
|
|
8
|
-
s.version =
|
|
7
|
+
s.version = DiscreetProxy::VERSION
|
|
9
8
|
|
|
10
9
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
11
10
|
s.authors = ["Julik Tarkhanov"]
|
|
12
|
-
s.date = "2011-12-13"
|
|
13
11
|
s.email = "me@julik.nl"
|
|
14
12
|
s.executables = ["flame_proxy_icon"]
|
|
15
13
|
s.extra_rdoc_files = [
|
|
16
14
|
"LICENSE.txt",
|
|
17
15
|
"README.rdoc"
|
|
18
16
|
]
|
|
19
|
-
s.files =
|
|
20
|
-
".document",
|
|
21
|
-
"Gemfile",
|
|
22
|
-
"LICENSE.txt",
|
|
23
|
-
"README.rdoc",
|
|
24
|
-
"Rakefile",
|
|
25
|
-
"bin/flame_proxy_icon",
|
|
26
|
-
"discreet_proxy.gemspec",
|
|
27
|
-
"lib/discreet_proxy.rb",
|
|
28
|
-
"test/converted_png_proxies/Kanaty.stabilizer.p.p.png",
|
|
29
|
-
"test/converted_png_proxies/Medianize.stabilizer.p.p.png",
|
|
30
|
-
"test/converted_png_proxies/Ripples.glsl.p.p.png",
|
|
31
|
-
"test/converted_png_proxies/Tezt_flame_5_trackers.stabilizer.p.p.png",
|
|
32
|
-
"test/converted_png_proxies/doberman.batch.p.p.png",
|
|
33
|
-
"test/converted_png_proxies/e292_v02.batch.p.p.png",
|
|
34
|
-
"test/converted_png_proxies/e292_v02shadow.batch.p.p.png",
|
|
35
|
-
"test/converted_png_proxies/spontaan.stabilizer.p.p.png",
|
|
36
|
-
"test/converted_png_proxies/spontaan2.stabilizer.p.p.png",
|
|
37
|
-
"test/converted_png_proxies/t2.batch.p.p.png",
|
|
38
|
-
"test/helper.rb",
|
|
39
|
-
"test/test_cli.rb",
|
|
40
|
-
"test/test_discreet_proxy.rb",
|
|
41
|
-
"test/test_proxies/Kanaty.stabilizer.p",
|
|
42
|
-
"test/test_proxies/Medianize.stabilizer.p",
|
|
43
|
-
"test/test_proxies/Ripples.glsl.p",
|
|
44
|
-
"test/test_proxies/Tezt_flame_5_trackers.stabilizer.p",
|
|
45
|
-
"test/test_proxies/doberman.batch.p",
|
|
46
|
-
"test/test_proxies/e292_v02.batch.p",
|
|
47
|
-
"test/test_proxies/e292_v02shadow.batch.p",
|
|
48
|
-
"test/test_proxies/spontaan.stabilizer.p",
|
|
49
|
-
"test/test_proxies/spontaan2.stabilizer.p",
|
|
50
|
-
"test/test_proxies/t2.batch.p",
|
|
51
|
-
"test/test_proxy_out/Kanaty.stabilizer.p"
|
|
52
|
-
]
|
|
17
|
+
s.files = `git ls-files -z`.split("\x0").reject { |f| f == ".gitignore" }
|
|
53
18
|
s.homepage = "http://github.com/julik/discreet_proxy"
|
|
54
19
|
s.licenses = ["MIT"]
|
|
55
20
|
s.require_paths = ["lib"]
|
|
56
|
-
s.rubygems_version = "1.8.11"
|
|
57
21
|
s.summary = "Parses and creates Flame/Smoke .p proxy icon files"
|
|
22
|
+
s.specification_version = 4
|
|
58
23
|
|
|
59
|
-
|
|
60
|
-
s.specification_version = 3
|
|
24
|
+
s.add_runtime_dependency "chunky_png"#, "~>1.2"
|
|
61
25
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
s.add_development_dependency(%q<cli_test>, [">= 0"])
|
|
68
|
-
else
|
|
69
|
-
s.add_dependency(%q<chunky_png>, [">= 0"])
|
|
70
|
-
s.add_dependency(%q<rake>, [">= 0"])
|
|
71
|
-
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
|
72
|
-
s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
|
|
73
|
-
s.add_dependency(%q<cli_test>, [">= 0"])
|
|
74
|
-
end
|
|
75
|
-
else
|
|
76
|
-
s.add_dependency(%q<chunky_png>, [">= 0"])
|
|
77
|
-
s.add_dependency(%q<rake>, [">= 0"])
|
|
78
|
-
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
|
79
|
-
s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
|
|
80
|
-
s.add_dependency(%q<cli_test>, [">= 0"])
|
|
81
|
-
end
|
|
26
|
+
s.add_development_dependency "rake"
|
|
27
|
+
s.add_development_dependency "cli_test"
|
|
28
|
+
s.add_development_dependency "minitest"
|
|
29
|
+
s.add_development_dependency "ostruct"
|
|
30
|
+
s.add_development_dependency "magic_frozen_string_literal"
|
|
82
31
|
end
|
|
83
32
|
|
data/lib/discreet_proxy.rb
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
require "chunky_png"
|
|
2
4
|
|
|
3
5
|
# The whole module for making and reading Flame proxy icon files
|
|
4
6
|
module DiscreetProxy
|
|
5
|
-
VERSION = "1.0.
|
|
7
|
+
VERSION = "1.0.2"
|
|
6
8
|
|
|
7
9
|
# Parse a .p file and return a Proxy
|
|
8
10
|
def self.from_file(path)
|
|
@@ -96,15 +98,13 @@ module DiscreetProxy
|
|
|
96
98
|
def to_dotp
|
|
97
99
|
# Pack the header
|
|
98
100
|
buf = StringIO.new(0xFF.chr * 40)
|
|
99
|
-
byteswap_version = [PROXY_VERSION].pack("e").reverse
|
|
100
101
|
header = [MAGIC, VERSION_BSWAP, width, height, PROXY_DEPTH].pack("na6nnn")
|
|
101
102
|
buf.write(header)
|
|
102
103
|
buf.seek(40)
|
|
103
104
|
|
|
104
|
-
#
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
@rows[row_idx].each do | pix |
|
|
105
|
+
# Write out all the rows starting with the last one
|
|
106
|
+
@rows.reverse.each do | row |
|
|
107
|
+
row.each do | pix |
|
|
108
108
|
rgb = unpack_rgb(pix).pack("CCC")
|
|
109
109
|
buf.write(rgb)
|
|
110
110
|
end
|
|
@@ -159,10 +159,11 @@ module DiscreetProxy
|
|
|
159
159
|
|
|
160
160
|
private
|
|
161
161
|
|
|
162
|
-
# Rows
|
|
163
|
-
# fact that this is a BDSM Silicon Graphics format the start of
|
|
162
|
+
# Rows are padded so the byte count is a multiple of 4 (32-bit alignment).
|
|
163
|
+
# BUT due to the fact that this is a BDSM Silicon Graphics format the start of
|
|
164
|
+
# the row is END of the image.
|
|
164
165
|
def row_pad
|
|
165
|
-
@row_pad ||= (
|
|
166
|
+
@row_pad ||= (-@width * 3) % 4
|
|
166
167
|
end
|
|
167
168
|
|
|
168
169
|
def pack_rgb(r,g,b)
|
|
Binary file
|
data/test/helper.rb
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
2
3
|
require 'bundler'
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
|
8
|
-
exit e.status_code
|
|
9
|
-
end
|
|
10
|
-
require 'test/unit'
|
|
4
|
+
Bundler.setup
|
|
5
|
+
|
|
6
|
+
require "minitest"
|
|
7
|
+
require "minitest/autorun"
|
|
11
8
|
|
|
12
9
|
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
|
13
10
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
data/test/test_cli.rb
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative "helper"
|
|
2
4
|
require "cli_test"
|
|
3
5
|
|
|
4
|
-
class CliTest < Test
|
|
6
|
+
class CliTest < Minitest::Test
|
|
5
7
|
TEMP_DIR = File.expand_path(File.dirname(__FILE__) + "/tmp")
|
|
6
8
|
BIN_P = File.expand_path(File.dirname(__FILE__) + "/../bin/flame_proxy_icon")
|
|
7
9
|
|
|
@@ -19,14 +21,14 @@ class CliTest < Test::Unit::TestCase
|
|
|
19
21
|
end
|
|
20
22
|
|
|
21
23
|
def test_cli_with_no_args_produces_usage
|
|
22
|
-
status,
|
|
24
|
+
status, _o, e = cli('')
|
|
23
25
|
assert_equal 1, status
|
|
24
|
-
assert_match /Also use the --help option/, e
|
|
26
|
+
assert_match( /Also use the --help option/, e)
|
|
25
27
|
end
|
|
26
28
|
|
|
27
29
|
def test_cli_from_png
|
|
28
30
|
FileUtils.cp(File.dirname(__FILE__) + "/converted_png_proxies/Kanaty.stabilizer.p.p.png", TEMP_DIR)
|
|
29
|
-
status,
|
|
31
|
+
status, _o, e = cli("--from-png #{TEMP_DIR}/Kanaty.stabilizer.p.p.png")
|
|
30
32
|
assert status.zero?, e
|
|
31
33
|
assert File.exist?(TEMP_DIR + "/Kanaty.stabilizer.p.p.p")
|
|
32
34
|
end
|
|
@@ -34,7 +36,7 @@ class CliTest < Test::Unit::TestCase
|
|
|
34
36
|
def test_cli_from_p
|
|
35
37
|
FileUtils.cp(File.dirname(__FILE__) + "/test_proxies/Kanaty.stabilizer.p", TEMP_DIR)
|
|
36
38
|
|
|
37
|
-
status,
|
|
39
|
+
status, _o, e = cli("--from-icon #{TEMP_DIR}/Kanaty.stabilizer.p")
|
|
38
40
|
assert status.zero?, e
|
|
39
41
|
assert File.exist?(TEMP_DIR + "/Kanaty.stabilizer.png")
|
|
40
42
|
end
|
data/test/test_discreet_proxy.rb
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
require_relative "helper"
|
|
4
|
+
|
|
5
|
+
class TestDiscreetProxy < Minitest::Test
|
|
4
6
|
def test_reading
|
|
5
7
|
f = DiscreetProxy.from_file(File.dirname(__FILE__) + "/test_proxies/e292_v02.batch.p")
|
|
6
8
|
assert_equal 126, f.width, "Width should be correct"
|
|
@@ -18,7 +20,6 @@ class TestDiscreetProxy < Test::Unit::TestCase
|
|
|
18
20
|
def test_to_dotp
|
|
19
21
|
Dir.glob(File.dirname(__FILE__) + "/test_proxies/*.p").each do | f |
|
|
20
22
|
proxy = DiscreetProxy.from_file(f)
|
|
21
|
-
repl = '/tmp/%s.p' % File.basename(f)
|
|
22
23
|
message = "Roundtripping #{File.basename(f)}"
|
|
23
24
|
|
|
24
25
|
pixdata = proxy.to_dotp # Package up
|
|
Binary file
|
metadata
CHANGED
|
@@ -1,72 +1,98 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: discreet_proxy
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
5
|
-
prerelease:
|
|
4
|
+
version: 1.0.2
|
|
6
5
|
platform: ruby
|
|
7
6
|
authors:
|
|
8
7
|
- Julik Tarkhanov
|
|
9
|
-
autorequire:
|
|
10
8
|
bindir: bin
|
|
11
9
|
cert_chain: []
|
|
12
|
-
date:
|
|
10
|
+
date: 2026-06-03 00:00:00.000000000 Z
|
|
13
11
|
dependencies:
|
|
14
12
|
- !ruby/object:Gem::Dependency
|
|
15
13
|
name: chunky_png
|
|
16
|
-
requirement:
|
|
17
|
-
none: false
|
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
|
18
15
|
requirements:
|
|
19
|
-
- -
|
|
16
|
+
- - ">="
|
|
20
17
|
- !ruby/object:Gem::Version
|
|
21
18
|
version: '0'
|
|
22
19
|
type: :runtime
|
|
23
20
|
prerelease: false
|
|
24
|
-
version_requirements:
|
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
22
|
+
requirements:
|
|
23
|
+
- - ">="
|
|
24
|
+
- !ruby/object:Gem::Version
|
|
25
|
+
version: '0'
|
|
25
26
|
- !ruby/object:Gem::Dependency
|
|
26
27
|
name: rake
|
|
27
|
-
requirement:
|
|
28
|
-
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - ">="
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '0'
|
|
33
|
+
type: :development
|
|
34
|
+
prerelease: false
|
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
29
36
|
requirements:
|
|
30
|
-
- -
|
|
37
|
+
- - ">="
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: '0'
|
|
40
|
+
- !ruby/object:Gem::Dependency
|
|
41
|
+
name: cli_test
|
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
|
43
|
+
requirements:
|
|
44
|
+
- - ">="
|
|
31
45
|
- !ruby/object:Gem::Version
|
|
32
46
|
version: '0'
|
|
33
47
|
type: :development
|
|
34
48
|
prerelease: false
|
|
35
|
-
version_requirements:
|
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - ">="
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: '0'
|
|
36
54
|
- !ruby/object:Gem::Dependency
|
|
37
|
-
name:
|
|
38
|
-
requirement:
|
|
39
|
-
none: false
|
|
55
|
+
name: minitest
|
|
56
|
+
requirement: !ruby/object:Gem::Requirement
|
|
40
57
|
requirements:
|
|
41
|
-
- -
|
|
58
|
+
- - ">="
|
|
42
59
|
- !ruby/object:Gem::Version
|
|
43
|
-
version:
|
|
60
|
+
version: '0'
|
|
44
61
|
type: :development
|
|
45
62
|
prerelease: false
|
|
46
|
-
version_requirements:
|
|
63
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
64
|
+
requirements:
|
|
65
|
+
- - ">="
|
|
66
|
+
- !ruby/object:Gem::Version
|
|
67
|
+
version: '0'
|
|
47
68
|
- !ruby/object:Gem::Dependency
|
|
48
|
-
name:
|
|
49
|
-
requirement:
|
|
50
|
-
none: false
|
|
69
|
+
name: ostruct
|
|
70
|
+
requirement: !ruby/object:Gem::Requirement
|
|
51
71
|
requirements:
|
|
52
|
-
- -
|
|
72
|
+
- - ">="
|
|
53
73
|
- !ruby/object:Gem::Version
|
|
54
|
-
version:
|
|
74
|
+
version: '0'
|
|
55
75
|
type: :development
|
|
56
76
|
prerelease: false
|
|
57
|
-
version_requirements:
|
|
77
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
78
|
+
requirements:
|
|
79
|
+
- - ">="
|
|
80
|
+
- !ruby/object:Gem::Version
|
|
81
|
+
version: '0'
|
|
58
82
|
- !ruby/object:Gem::Dependency
|
|
59
|
-
name:
|
|
60
|
-
requirement:
|
|
61
|
-
none: false
|
|
83
|
+
name: magic_frozen_string_literal
|
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
|
62
85
|
requirements:
|
|
63
|
-
- -
|
|
86
|
+
- - ">="
|
|
64
87
|
- !ruby/object:Gem::Version
|
|
65
88
|
version: '0'
|
|
66
89
|
type: :development
|
|
67
90
|
prerelease: false
|
|
68
|
-
version_requirements:
|
|
69
|
-
|
|
91
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
92
|
+
requirements:
|
|
93
|
+
- - ">="
|
|
94
|
+
- !ruby/object:Gem::Version
|
|
95
|
+
version: '0'
|
|
70
96
|
email: me@julik.nl
|
|
71
97
|
executables:
|
|
72
98
|
- flame_proxy_icon
|
|
@@ -75,7 +101,7 @@ extra_rdoc_files:
|
|
|
75
101
|
- LICENSE.txt
|
|
76
102
|
- README.rdoc
|
|
77
103
|
files:
|
|
78
|
-
- .document
|
|
104
|
+
- ".document"
|
|
79
105
|
- Gemfile
|
|
80
106
|
- LICENSE.txt
|
|
81
107
|
- README.rdoc
|
|
@@ -83,6 +109,7 @@ files:
|
|
|
83
109
|
- bin/flame_proxy_icon
|
|
84
110
|
- discreet_proxy.gemspec
|
|
85
111
|
- lib/discreet_proxy.rb
|
|
112
|
+
- test/converted_png_proxies/AB_Halation.glsl.p.p.png
|
|
86
113
|
- test/converted_png_proxies/Kanaty.stabilizer.p.p.png
|
|
87
114
|
- test/converted_png_proxies/Medianize.stabilizer.p.p.png
|
|
88
115
|
- test/converted_png_proxies/Ripples.glsl.p.p.png
|
|
@@ -96,6 +123,7 @@ files:
|
|
|
96
123
|
- test/helper.rb
|
|
97
124
|
- test/test_cli.rb
|
|
98
125
|
- test/test_discreet_proxy.rb
|
|
126
|
+
- test/test_proxies/AB_Halation.glsl.p
|
|
99
127
|
- test/test_proxies/Kanaty.stabilizer.p
|
|
100
128
|
- test/test_proxies/Medianize.stabilizer.p
|
|
101
129
|
- test/test_proxies/Ripples.glsl.p
|
|
@@ -110,26 +138,22 @@ files:
|
|
|
110
138
|
homepage: http://github.com/julik/discreet_proxy
|
|
111
139
|
licenses:
|
|
112
140
|
- MIT
|
|
113
|
-
|
|
141
|
+
metadata: {}
|
|
114
142
|
rdoc_options: []
|
|
115
143
|
require_paths:
|
|
116
144
|
- lib
|
|
117
145
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
118
|
-
none: false
|
|
119
146
|
requirements:
|
|
120
|
-
- -
|
|
147
|
+
- - ">="
|
|
121
148
|
- !ruby/object:Gem::Version
|
|
122
149
|
version: '0'
|
|
123
150
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
124
|
-
none: false
|
|
125
151
|
requirements:
|
|
126
|
-
- -
|
|
152
|
+
- - ">="
|
|
127
153
|
- !ruby/object:Gem::Version
|
|
128
154
|
version: '0'
|
|
129
155
|
requirements: []
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
signing_key:
|
|
133
|
-
specification_version: 3
|
|
156
|
+
rubygems_version: 3.6.2
|
|
157
|
+
specification_version: 4
|
|
134
158
|
summary: Parses and creates Flame/Smoke .p proxy icon files
|
|
135
159
|
test_files: []
|