squib 0.14.3.pre1 → 0.15.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 02fb855cb49124e13f78a5361826e54a1f921cf9f47aca57f33a18a775acb3ac
4
- data.tar.gz: '087677bd892938447ba1ff883b5b0afb1ac491746bae3511ae5122097e692da3'
3
+ metadata.gz: 3b077243c2c4f5a02c6078f083718a80a1891b8c00b96aa74e2153febef85dd1
4
+ data.tar.gz: 63ae0b6ad0887bfb3b00eae08896a67e74f479de195f9555052e7827bc1c7552
5
5
  SHA512:
6
- metadata.gz: b51b86c5704cf98c3e09fc992820dda0823abda8ef896ee74fe6b663f8fec10f8f42d362c9aa48f199a9829bfc0ecce10752abe9bad3f5dfafbf68513eefc6d0
7
- data.tar.gz: 4e05243279ef11d8a1686592612624cd19b6fb910f284bd2bc28441c63a31a0f103b1645f36d21ebb45b06e4513e3c86b12697ea02c76675dc8dc9ebf31db386
6
+ metadata.gz: f2da10c5460d33005f5cd4fbef365021d51901fdd11ab32712f1a30653880f1ae1bc86727e8c70b065a64d752b4e3c3052382827504c7e6088811afa1d0d073f
7
+ data.tar.gz: 849c32f5a2d9704d81aea759a5c921b2d5fb5eaf3bc2ddd76b3fa1e2e37c4083d3bdd9ba502138d2bc03c839fee5c5c16367ddfd32e6206317ee19f4757d1d74
@@ -1,19 +1,17 @@
1
- dist: trusty
2
1
  language: ruby
3
2
  sudo: true # need this for libgirepository1.0-dev
4
- # sudo: false # taking advantage of container-based infrastructure
5
- # cache: bundler # cache bundled gems from build to build
6
3
  addons:
7
4
  apt:
8
5
  packages:
9
6
  - libgirepository1.0-dev # for gobject-introspection
10
7
  rvm:
11
- - 2.2
12
- - 2.3.3
13
- - 2.4.1
14
8
  - 2.4.2
15
- - 2.5.0
9
+ - 2.5.3
10
+ - 2.6.3
16
11
  - ruby-head
12
+ before_install:
13
+ - gem update --system
14
+ - gem install bundler
17
15
  matrix:
18
16
  allow_failures:
19
17
  - rvm: ruby-head
@@ -5,12 +5,28 @@ Squib follows [semantic versioning](http://semver.org).
5
5
 
6
6
  Features:
7
7
  * Added check for malformed PNG files (#250, #218)
8
+ * Sprues: you can now flip individual cards (#251)
9
+
10
+ Bugs
11
+ * `trim_radius` now defaults to 0 on `save_pdf`, not 38. (#270)
12
+ * `explode` on `xlsx` and `csv` now defaults to `qty`, not `Qty` (#262)
8
13
 
9
14
  Docs:
10
15
  * Documented the n-sided-ness of polygons and stars
11
16
  * svg: document rasterization on mask (#192)
17
+ * Document how to run the code (#186)
18
+ * Document some ways of using `prefix` in `save_png` (#268)
19
+ * `showcase` option `trim_radius` defaults to 38, not 0
20
+ * Add sample for color switch in colors docs (#274)
21
+
22
+ Chores:
23
+ * Bumped deps: Pango et al. to 3.3.6, Cairo to 1.16.4, Nokogiri to 1.10.3, Highline to 2.0.2
24
+
25
+ Compatibility:
26
+ * A LOT more pre-defined colors built into Cairo. Some of the named colors got redefined with the upgrade to the latest Cairo. This means that named colors like `:gray` and `:green` may look slightly different.
27
+ * Dropped support for EOL'd Rubies. Minimum support is 2.4
12
28
 
13
- Special thanks to @lcarlsen
29
+ Special thanks to @lcarlsen, @Karneades
14
30
 
15
31
  ## v0.14.2 / 2018-08-01
16
32
 
@@ -0,0 +1,25 @@
1
+ FROM ruby:2.5-alpine
2
+ WORKDIR /usr/src/app
3
+
4
+ LABEL org.squib.url=http://squib.rocks \
5
+ org.squib.github=https://github.com/andymeneely/squib
6
+
7
+ RUN apk --no-cache add --update \
8
+ ruby-dev \
9
+ build-base \
10
+ libxml2-dev \
11
+ libxslt-dev \
12
+ pcre-dev \
13
+ libffi-dev \
14
+ cairo
15
+
16
+ # Just for devving on
17
+ COPY . /app
18
+
19
+ CMD ["sh"]
20
+
21
+ # RUN gem install \
22
+ # squib \
23
+ # -- --use-system-libraries
24
+
25
+ # NOTE: STILL UNDER DEVELOPMENT! Don't use this just yet.
data/README.md CHANGED
@@ -31,7 +31,7 @@ Wanna see more? Check out the website: http://andymeneely.github.io/squib/
31
31
 
32
32
  ## Installation
33
33
 
34
- Squib requires Ruby 2.2 or later.
34
+ Squib requires Ruby 2.4 or later.
35
35
 
36
36
  Install it yourself with:
37
37
 
@@ -4,21 +4,22 @@ skip_tags: true
4
4
 
5
5
  environment:
6
6
  matrix:
7
- - ruby_version: "23"
8
- - ruby_version: "23-x64"
7
+ - ruby_version: "24"
8
+ - ruby_version: "24-x64"
9
+ - ruby_version: "25"
10
+ - ruby_version: "25-x64"
11
+ - ruby_version: "26"
12
+ - ruby_version: "26-x64"
9
13
 
10
14
  install:
11
15
  - SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
12
16
  - ruby --version
13
17
  - gem --version
14
- - gem install bundler --quiet --no-ri --no-rdoc
18
+ - gem install bundler
15
19
  - bundler --version
16
20
  - bundle install
17
21
 
18
22
  test_script:
19
23
  - rake
20
24
 
21
- artifacts:
22
- - path: pkg\*.gem
23
-
24
25
  build: off
@@ -9,7 +9,7 @@ module Squib
9
9
 
10
10
  def self.parameters
11
11
  { strip: true,
12
- explode: 'Qty'
12
+ explode: 'qty'
13
13
  }
14
14
  end
15
15
 
@@ -39,7 +39,7 @@ module Squib
39
39
  prefix: 'sheet_',
40
40
  rows: :infinite,
41
41
  columns: 5,
42
- trim_radius: 38,
42
+ trim_radius: 0,
43
43
  trim: 0,
44
44
  width: 3300,
45
45
  range: :all,
@@ -11,7 +11,10 @@ module Squib
11
11
  include DirValidator
12
12
 
13
13
  def self.parameters
14
- { scale: 0.85,
14
+ {
15
+ scale: 0.85,
16
+ trim: 0,
17
+ trim_radius: 38,
15
18
  offset: 1.1,
16
19
  reflect_offset: 15,
17
20
  reflect_percent: 0.25,
@@ -20,7 +20,7 @@ module Squib
20
20
  end
21
21
 
22
22
  def validate_id(arg, _i)
23
- return nil if arg.nil?
23
+ return nil if arg.to_s.empty?
24
24
  arg = '#' << arg unless arg.start_with? '#'
25
25
  arg
26
26
  end
@@ -47,7 +47,3 @@ warn_ellipsize: true # default
47
47
  # By default, Squib will warn if a PNG is being up-scaled.
48
48
  warn_png_scale: true # default
49
49
  # warn_png_scale: false # turn off entirely
50
-
51
- # By default, Squib warns if you try to draw an image at zero width or height
52
- warn_zero_size_image: true # default
53
- # warn_zero_size_image: false # turn off warnings
@@ -47,7 +47,3 @@
47
47
  # By default, Squib will warn if a PNG is being up-scaled.
48
48
  # warn_png_scale: true # default
49
49
  # warn_png_scale: false # turn off entirely
50
-
51
- # By default, Squib warns if you try to draw an image at zero width or height
52
- # warn_zero_size_image: true # default
53
- # warn_zero_size_image: false # turn off warnings
@@ -156,6 +156,8 @@ module Squib
156
156
  val_mm = val * 25.4
157
157
  elsif from_unit == :cm
158
158
  val_mm = val * 10.0
159
+ else
160
+ val_mm = val
159
161
  end
160
162
 
161
163
  if to_unit == :in
@@ -35,7 +35,6 @@ module Squib
35
35
  'text_hint' => 'off',
36
36
  'warn_ellipsize' => true,
37
37
  'warn_png_scale' => true,
38
- 'warn_zero_size_image' => true,
39
38
  }
40
39
 
41
40
  # Translate the hints to the methods.
@@ -121,10 +120,6 @@ module Squib
121
120
  def warn_png_scale?
122
121
  @config_hash['warn_png_scale']
123
122
  end
124
-
125
- def warn_zero_size_image?
126
- @config_hash['warn_zero_size_image']
127
- end
128
123
 
129
124
  private
130
125
 
@@ -20,11 +20,11 @@ module Squib
20
20
 
21
21
  def_delegators :cairo_cxt, :save, :set_source_color, :paint, :restore,
22
22
  :translate, :rotate, :move_to, :update_pango_layout, :width, :height,
23
- :show_pango_layout, :rounded_rectangle, :set_line_width, :stroke, :fill,
23
+ :show_pango_layout, :rectangle, :rounded_rectangle, :set_line_width, :stroke, :fill,
24
24
  :set_source, :scale, :render_rsvg_handle, :circle, :triangle, :line_to,
25
25
  :operator=, :show_page, :clip, :transform, :mask, :create_pango_layout,
26
26
  :antialias=, :curve_to, :matrix, :matrix=, :identity_matrix, :pango_layout_path,
27
- :stroke_preserve, :target, :new_path, :fill_preserve, :close_path,
27
+ :stroke_preserve, :target, :new_path, :new_sub_path, :reset_clip, :fill_preserve, :close_path,
28
28
  :set_line_join, :set_line_cap, :set_dash, :arc, :arc_negative
29
29
 
30
30
  # :nodoc:
@@ -81,12 +81,6 @@ module Squib
81
81
  Squib.logger.debug {"Rendering: #{file}, id: #{id} @#{x},#{y} #{width}x#{height}, alpha: #{alpha}, blend: #{blend}, angle: #{angle}, mask: #{mask}"}
82
82
  Squib.logger.warn 'Both an SVG file and SVG data were specified' unless file.to_s.empty? || svg_args.data.to_s.empty?
83
83
  return if (file.nil? or file.eql? '') and svg_args.data.nil? # nothing specified TODO Move this out to arg validator
84
- if(box.width == 0 || box.height == 0)
85
- if @deck.conf.warn_zero_size_image?
86
- Squib.logger.warn "svg: zero-sized width or height detected for #{file}. SVG not drawn."
87
- end
88
- return
89
- end
90
84
  svg_args.data = File.read(file) if svg_args.data.to_s.empty?
91
85
  begin
92
86
  svg = Rsvg::Handle.new_from_data(svg_args.data)
@@ -30,10 +30,11 @@ module Squib
30
30
  slot = slots[i % per_sheet]
31
31
 
32
32
  draw_card cc, card,
33
- slot['x'], slot['y'],
33
+ slot['x'] - @sheet_args.trim,
34
+ slot['y'] - @sheet_args.trim,
34
35
  slot['rotate'],
36
+ slot['flip_vertical'], slot['flip_horizontal'],
35
37
  @sheet_args.trim, @sheet_args.trim_radius
36
-
37
38
  bar.increment
38
39
  end
39
40
 
@@ -128,7 +129,7 @@ module Squib
128
129
  (@deck.height - 2.0 * @sheet_args.trim) > @tmpl.card_height
129
130
  end
130
131
 
131
- def draw_card(cc, card, x, y, angle, trim, trim_radius)
132
+ def draw_card(cc, card, x, y, angle, flip_v, flip_h, trim, trim_radius)
132
133
  # Compute the true size of the card after trimming
133
134
  w = @deck.width - 2.0 * trim
134
135
  h = @deck.height - 2.0 * trim
@@ -142,6 +143,7 @@ module Squib
142
143
  mat = cc.matrix # Save the transformation matrix to revert later
143
144
  cc.translate x, y
144
145
  cc.translate @deck.width / 2.0, @deck.height / 2.0
146
+ cc.flip(flip_v, flip_h, 0, 0)
145
147
  cc.rotate angle
146
148
  cc.translate -@deck.width / 2.0, -@deck.height / 2.0
147
149
  cc.rounded_rectangle(trim, trim, w, h, trim_radius, trim_radius) # clip
@@ -158,13 +160,25 @@ module Squib
158
160
  def init_cc
159
161
  ratio = 72.0 / @deck.dpi
160
162
 
161
- surface = Cairo::PDFSurface.new(
162
- full_filename,
163
- @tmpl.sheet_width * ratio,
164
- @tmpl.sheet_height * ratio
165
- )
163
+ slots = @tmpl.cards
164
+ per_sheet = slots.size
165
+
166
+ surface = if per_sheet == 1
167
+ Cairo::PDFSurface.new(
168
+ full_filename,
169
+ (@tmpl.sheet_width - 2 * @sheet_args.trim) * ratio,
170
+ (@tmpl.sheet_height - 2 *@sheet_args.trim) * ratio
171
+ )
172
+ else
173
+ Cairo::PDFSurface.new(
174
+ full_filename,
175
+ @tmpl.sheet_width * ratio,
176
+ @tmpl.sheet_height * ratio
177
+ )
178
+ end
166
179
 
167
- cc = Cairo::Context.new(surface)
180
+ cc = CairoContextWrapper.new(Cairo::Context.new(surface))
181
+ # cc = Cairo::Context.new(surface)
168
182
  cc.scale(72.0 / @deck.dpi, 72.0 / @deck.dpi) # make it like pixels
169
183
  cc
170
184
  end
@@ -185,7 +199,8 @@ module Squib
185
199
  class SaveSpruePNG < SaveSprue
186
200
  def init_cc
187
201
  surface = Cairo::ImageSurface.new @tmpl.sheet_width, @tmpl.sheet_height
188
- Cairo::Context.new(surface)
202
+ CairoContextWrapper.new(Cairo::Context.new(surface))
203
+ # Cairo::Context.new(surface)
189
204
  end
190
205
 
191
206
  def draw_page(cc)
@@ -21,7 +21,7 @@ module Squib
21
21
 
22
22
  cards = range.collect { |i| @cards[i] }
23
23
  cards.each_with_index do |card, i|
24
- trimmed = trim_rounded(card.cairo_surface, sheet.trim, sheet.trim_radius)
24
+ trimmed = trim_rounded(card.cairo_surface, showcase.trim, showcase.trim_radius)
25
25
  reflected = reflect(trimmed, showcase.reflect_offset, showcase.reflect_percent, showcase.reflect_strength)
26
26
  perspectived = perspective(reflected, showcase.scale, showcase.face_right?)
27
27
  out_cc.set_source(perspectived, sheet.margin + i * perspectived.width * showcase.offset, sheet.margin)
@@ -175,6 +175,8 @@ module Squib
175
175
  new_card['y'] = y
176
176
  new_card['rotate'] = parse_rotate_param(
177
177
  card['rotate'] ? card['rotate'] : @template_hash['rotate'])
178
+ new_card['flip_vertical'] = card['flip_vertical'] == true
179
+ new_card['flip_horizontal'] = card['flip_horizontal'] == true
178
180
  new_card
179
181
  end
180
182
 
@@ -199,5 +201,6 @@ module Squib
199
201
  val.to_f
200
202
  end
201
203
  end
204
+
202
205
  end
203
206
  end
@@ -41,8 +41,10 @@ module Squib
41
41
  :optional, Numeric,
42
42
  ClassyHash::G.enum(:clockwise, :counterclockwise, :turnaround),
43
43
  ROTATE_REGEX
44
- ]
45
- }]]
44
+ ],
45
+ 'flip_vertical' => [ :optional, FalseClass ],
46
+ 'flip_horizontal' => [ :optional, FalseClass ],
47
+ }]]
46
48
  }.freeze
47
49
  end
48
50
  end
@@ -6,5 +6,5 @@ module Squib
6
6
  # Most of the time this is in the alpha of the next release.
7
7
  # e.g. v0.0.5a is on its way to becoming v0.0.5
8
8
  #
9
- VERSION = '0.14.3.pre1'
9
+ VERSION = '0.15.0'
10
10
  end
@@ -19,17 +19,23 @@ Squib::Deck.new(width: 825, height: 1125, cards: 1) do
19
19
  end
20
20
 
21
21
  # This script generates a table of the built-in constants
22
- Squib::Deck.new(width: 3000, height: 1500) do
22
+ colors = (Cairo::Color.constants - %i(HEX_RE Base RGB CMYK HSV X11))
23
+ colors.sort_by! do |c|
24
+ hsv = Cairo::Color.parse(c).to_hsv
25
+ [(hsv.hue / 16.0).to_i, hsv.value, hsv.saturation]
26
+ end
27
+ w, h = 300, 50
28
+ deck_height = 4000
29
+ deck_width = (colors.size / ((deck_height / h) + 1)) * w
30
+ Squib::Deck.new(width: deck_width, height: deck_height) do
23
31
  background color: :white
24
- colors = (Cairo::Color.constants - %i(HEX_RE Base RGB CMYK HSV X11))
25
- colors.sort_by! {|c| Cairo::Color.parse(c).to_s}
26
- x, y, w, h = 0, 0, 300, 50
32
+ x, y = 0, 0
27
33
  colors.each_with_index do |color, i|
28
34
  rect x: x, y: y, width: w, height: h, fill_color: color
29
35
  text str: color.to_s, x: x + 5, y: y + 13, font: 'Sans Bold 5',
30
36
  color: (Cairo::Color.parse(color).to_hsv.v > 0.9) ? '#000' : '#fff'
31
37
  y += h
32
- if y > @height
38
+ if y > deck_height
33
39
  x += w
34
40
  y = 0
35
41
  end
@@ -0,0 +1,33 @@
1
+ require 'squib'
2
+
3
+ # Choose between black and white color theme for type snake
4
+ # * Allow using white snake cards with black text or
5
+ # black snake cards with white text
6
+ color = 'white'
7
+
8
+ cards = Squib.csv file: '_switch_color_data.csv', col_sep: "\t"
9
+
10
+ Squib::Deck.new cards: cards['Type'].size do
11
+
12
+ background_color = cards['Type'].map do |t|
13
+ if color == 'black' && t == "Snake" then
14
+ "black"
15
+ else
16
+ "white"
17
+ end
18
+ end
19
+ background color: background_color
20
+
21
+ text_color = cards['Type'].map do |t|
22
+ if color == 'black' && t == "Snake" then
23
+ "white"
24
+ else
25
+ "black"
26
+ end
27
+ end
28
+
29
+ text str: cards['Text'], color: text_color
30
+
31
+ save_png prefix: '_switch_color_sample_'
32
+
33
+ end
@@ -93,7 +93,7 @@ Squib::Deck.new(width: 825, height: 1125, cards: 1, config: 'load_images_config.
93
93
  # but sometimes want to use none.
94
94
  # e.g. id: [:attack, :defend, nil]
95
95
  svg file: 'spanner.svg', width: :deck, height: :deck,
96
- force_id: true, id: '' # <-- the important part
96
+ force_id: true, id: nil # <-- the important part
97
97
 
98
98
  # Squib can handle incorrectly formatted svg files
99
99
  svg file: 'bad-svg.svg'
@@ -0,0 +1,24 @@
1
+ require 'squib'
2
+
3
+ # This demonstrates the many ways you can save file to save_png and the like
4
+ Squib::Deck.new(width: 50, height: 50, cards: 2) do
5
+ background color: :white
6
+ text str: (0..16).to_a, font: 'Arial Bold 12'
7
+
8
+ # three digits, e.g. save_three_digits_000.png
9
+ save_png prefix: 'save_three_digits_', count_format: '%03d'
10
+
11
+ # foo_0.png
12
+ # bar_1.png
13
+ save_png prefix: ['foo_', 'bar_'], count_format: '%01d'
14
+
15
+ # foo.png
16
+ # bar.png
17
+ save_png prefix: ['foo', 'bar'], count_format: ''
18
+
19
+ # thief.png
20
+ # thug.png
21
+ data = csv data: "filename\nthief\nthug"
22
+ save_png prefix: data.filename, count_format: ''
23
+
24
+ end
@@ -1,4 +1,5 @@
1
- require 'squib'
1
+ # require 'squib'
2
+ require_relative '../../lib/squib'
2
3
 
3
4
  # This is a more advanced example of Sprues
4
5
  # (mostly so we can have a torturous regression test)
@@ -14,10 +15,10 @@ Squib::Deck.new(cards: 6, width: '2.2in', height: '2.1in') do
14
15
 
15
16
  circle x: width/2, y: height/2, radius: 20 # midpoint
16
17
 
17
- text str: (0..9).map{ |i| "Card #{i}\n\n" },
18
+ text str: (0..9).map{ |i| "Card! #{i}\n\n" },
18
19
  font: 'Sans 32', align: :center, valign: :middle,
19
20
  height: :deck, width: :deck
20
-
21
+
21
22
  save_sheet sprue: 'my_sprues/weird_sprue.yml',
22
23
  trim: '0.2in', trim_radius: '10pt',
23
24
  prefix: "advanced_sprues_"
@@ -7,7 +7,7 @@ Gem::Specification.new do |spec|
7
7
  spec.specification_version = 2 if spec.respond_to? :specification_version=
8
8
  spec.required_rubygems_version = Gem::Requirement.new('>= 0') if spec.respond_to? :required_rubygems_version=
9
9
  spec.rubygems_version = '2.2.2'
10
- spec.required_ruby_version = '>= 2.2.0'
10
+ spec.required_ruby_version = '>= 2.4.0'
11
11
 
12
12
  spec.name = 'squib'
13
13
  spec.version = Squib::VERSION
@@ -29,17 +29,17 @@ Gem::Specification.new do |spec|
29
29
  spec.test_files = spec.files.grep(/^(spec|samples|docs|benchmarks)\//)
30
30
  spec.require_paths = ['lib']
31
31
 
32
- spec.add_runtime_dependency 'cairo', '1.15.14'
32
+ spec.add_runtime_dependency 'cairo', '1.16.4'
33
33
  spec.add_runtime_dependency 'classy_hash', '0.2.1'
34
- spec.add_runtime_dependency 'gio2', '3.2.9'
35
- spec.add_runtime_dependency 'gobject-introspection', '3.2.9'
36
- spec.add_runtime_dependency 'highline', '1.7.10'
34
+ spec.add_runtime_dependency 'gio2', '3.3.6'
35
+ spec.add_runtime_dependency 'gobject-introspection', '3.3.6'
36
+ spec.add_runtime_dependency 'highline', '2.0.2'
37
37
  spec.add_runtime_dependency 'mercenary', '0.3.6'
38
- spec.add_runtime_dependency 'nokogiri', '1.8.4'
39
- spec.add_runtime_dependency 'pango', '3.2.9'
40
- spec.add_runtime_dependency 'roo', '2.7.1'
41
- spec.add_runtime_dependency 'rsvg2', '3.2.9'
42
- spec.add_runtime_dependency 'ruby-progressbar', '1.9.0'
38
+ spec.add_runtime_dependency 'nokogiri', '1.10.3'
39
+ spec.add_runtime_dependency 'pango', '3.3.6'
40
+ spec.add_runtime_dependency 'roo', '2.8.2'
41
+ spec.add_runtime_dependency 'rsvg2', '3.3.6'
42
+ spec.add_runtime_dependency 'ruby-progressbar', '1.10.0'
43
43
 
44
44
  spec.add_development_dependency 'bundler'
45
45
  spec.add_development_dependency 'coveralls', '>= 0.8.21'
@@ -47,6 +47,6 @@ Gem::Specification.new do |spec|
47
47
  spec.add_development_dependency 'launchy'
48
48
  spec.add_development_dependency 'rake'
49
49
  spec.add_development_dependency 'byebug'
50
- spec.add_development_dependency 'rspec', '~> 3.3'
50
+ spec.add_development_dependency 'rspec', '~> 3.8'
51
51
 
52
52
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: squib
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.3.pre1
4
+ version: 0.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andy Meneely
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-19 00:00:00.000000000 Z
11
+ date: 2019-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cairo
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 1.15.14
19
+ version: 1.16.4
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 1.15.14
26
+ version: 1.16.4
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: classy_hash
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,42 +44,42 @@ dependencies:
44
44
  requirements:
45
45
  - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: 3.2.9
47
+ version: 3.3.6
48
48
  type: :runtime
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: 3.2.9
54
+ version: 3.3.6
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: gobject-introspection
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 3.2.9
61
+ version: 3.3.6
62
62
  type: :runtime
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: 3.2.9
68
+ version: 3.3.6
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: highline
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - '='
74
74
  - !ruby/object:Gem::Version
75
- version: 1.7.10
75
+ version: 2.0.2
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - '='
81
81
  - !ruby/object:Gem::Version
82
- version: 1.7.10
82
+ version: 2.0.2
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: mercenary
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -100,70 +100,70 @@ dependencies:
100
100
  requirements:
101
101
  - - '='
102
102
  - !ruby/object:Gem::Version
103
- version: 1.8.4
103
+ version: 1.10.3
104
104
  type: :runtime
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: 1.8.4
110
+ version: 1.10.3
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: pango
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - '='
116
116
  - !ruby/object:Gem::Version
117
- version: 3.2.9
117
+ version: 3.3.6
118
118
  type: :runtime
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: 3.2.9
124
+ version: 3.3.6
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: roo
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - '='
130
130
  - !ruby/object:Gem::Version
131
- version: 2.7.1
131
+ version: 2.8.2
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - '='
137
137
  - !ruby/object:Gem::Version
138
- version: 2.7.1
138
+ version: 2.8.2
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: rsvg2
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - '='
144
144
  - !ruby/object:Gem::Version
145
- version: 3.2.9
145
+ version: 3.3.6
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - '='
151
151
  - !ruby/object:Gem::Version
152
- version: 3.2.9
152
+ version: 3.3.6
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: ruby-progressbar
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - '='
158
158
  - !ruby/object:Gem::Version
159
- version: 1.9.0
159
+ version: 1.10.0
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - '='
165
165
  - !ruby/object:Gem::Version
166
- version: 1.9.0
166
+ version: 1.10.0
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: bundler
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -254,14 +254,14 @@ dependencies:
254
254
  requirements:
255
255
  - - "~>"
256
256
  - !ruby/object:Gem::Version
257
- version: '3.3'
257
+ version: '3.8'
258
258
  type: :development
259
259
  prerelease: false
260
260
  version_requirements: !ruby/object:Gem::Requirement
261
261
  requirements:
262
262
  - - "~>"
263
263
  - !ruby/object:Gem::Version
264
- version: '3.3'
264
+ version: '3.8'
265
265
  description: Squib is a Ruby DSL for prototyping card games
266
266
  email: andy.meneely@gmail.com
267
267
  executables:
@@ -272,10 +272,10 @@ extra_rdoc_files:
272
272
  - samples/autoscale_font/_autoscale_font.rb
273
273
  - samples/backend/_backend.rb
274
274
  - samples/basic.rb
275
- - samples/bug256/_bug256.rb
276
275
  - samples/build_groups/build_groups.rb
277
276
  - samples/colors/_colors.rb
278
277
  - samples/colors/_gradients.rb
278
+ - samples/colors/_switch_color.rb
279
279
  - samples/config/config_text_markup.rb
280
280
  - samples/config/custom_config.rb
281
281
  - samples/data/_csv.rb
@@ -299,6 +299,7 @@ extra_rdoc_files:
299
299
  - samples/saves/_hand.rb
300
300
  - samples/saves/_portrait_landscape.rb
301
301
  - samples/saves/_saves.rb
302
+ - samples/saves/_save_filenames.rb
302
303
  - samples/saves/_save_pdf.rb
303
304
  - samples/saves/_showcase.rb
304
305
  - samples/shapes/_draw_shapes.rb
@@ -319,6 +320,7 @@ files:
319
320
  - ".travis.yml"
320
321
  - CHANGELOG.md
321
322
  - CONTRIBUTING.md
323
+ - Dockerfile
322
324
  - Gemfile
323
325
  - LICENSE.txt
324
326
  - README.md
@@ -437,10 +439,10 @@ files:
437
439
  - samples/autoscale_font/_autoscale_font.rb
438
440
  - samples/backend/_backend.rb
439
441
  - samples/basic.rb
440
- - samples/bug256/_bug256.rb
441
442
  - samples/build_groups/build_groups.rb
442
443
  - samples/colors/_colors.rb
443
444
  - samples/colors/_gradients.rb
445
+ - samples/colors/_switch_color.rb
444
446
  - samples/config/config_text_markup.rb
445
447
  - samples/config/custom_config.rb
446
448
  - samples/data/_csv.rb
@@ -463,6 +465,7 @@ files:
463
465
  - samples/ranges/_ranges.rb
464
466
  - samples/saves/_hand.rb
465
467
  - samples/saves/_portrait_landscape.rb
468
+ - samples/saves/_save_filenames.rb
466
469
  - samples/saves/_save_pdf.rb
467
470
  - samples/saves/_saves.rb
468
471
  - samples/saves/_showcase.rb
@@ -493,15 +496,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
493
496
  requirements:
494
497
  - - ">="
495
498
  - !ruby/object:Gem::Version
496
- version: 2.2.0
499
+ version: 2.4.0
497
500
  required_rubygems_version: !ruby/object:Gem::Requirement
498
501
  requirements:
499
- - - ">"
502
+ - - ">="
500
503
  - !ruby/object:Gem::Version
501
- version: 1.3.1
504
+ version: '0'
502
505
  requirements: []
503
506
  rubyforge_project:
504
- rubygems_version: 2.7.7
507
+ rubygems_version: 2.7.6
505
508
  signing_key:
506
509
  specification_version: 2
507
510
  summary: A Ruby DSL for prototyping card games
@@ -509,10 +512,10 @@ test_files:
509
512
  - samples/autoscale_font/_autoscale_font.rb
510
513
  - samples/backend/_backend.rb
511
514
  - samples/basic.rb
512
- - samples/bug256/_bug256.rb
513
515
  - samples/build_groups/build_groups.rb
514
516
  - samples/colors/_colors.rb
515
517
  - samples/colors/_gradients.rb
518
+ - samples/colors/_switch_color.rb
516
519
  - samples/config/config_text_markup.rb
517
520
  - samples/config/custom_config.rb
518
521
  - samples/data/_csv.rb
@@ -535,6 +538,7 @@ test_files:
535
538
  - samples/ranges/_ranges.rb
536
539
  - samples/saves/_hand.rb
537
540
  - samples/saves/_portrait_landscape.rb
541
+ - samples/saves/_save_filenames.rb
538
542
  - samples/saves/_save_pdf.rb
539
543
  - samples/saves/_saves.rb
540
544
  - samples/saves/_showcase.rb
@@ -1,13 +0,0 @@
1
- # require 'squib'
2
- require_relative '../../lib/squib'
3
-
4
-
5
- Squib::Deck.new do
6
- background color: :white
7
- # text str: 'Hello, :world:', font_size: 10 do |embed|
8
- # embed.svg key: ':world:', file: 'A01.svg', width: 10, height: 0
9
- # end
10
- svg file: 'A01.svg', width: 0
11
-
12
- save_png
13
- end