occams 1.1.0 → 1.1.1.1

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: 4a97f751e8ded8222b0ef73e6f06b6633bdc5a2cef1858872d0e4ccbcdbc56c8
4
- data.tar.gz: 1c1b034bc1599c94a72e99bf67b5eecb45cdffc35d4bccd2aa1c906780e760a7
3
+ metadata.gz: de6711b997c207a91f021b6f4bfb158f8a4ab7763b533367ca2726edda6c4af4
4
+ data.tar.gz: da3e64509b1689282afcb484d1f6942db43945a39cdfcce2baf566ed4e0ce80f
5
5
  SHA512:
6
- metadata.gz: 2da69ad3d5a308ddc27208fba96417b6156029702f24337a76d43711ed9925cfe62b07cf52f413742aca58d0f01bc73391a3d59409936e904d88ab4b95cfe0a3
7
- data.tar.gz: 9ed1193e3ba2976446bba4c04092b9af3ec39430a54b75db05a4d0f26466b2de8fef6b6725d30e565ec7a82dde7f428c014cf60d9456922b46a414362b0cac4d
6
+ metadata.gz: f63e97f7e35f9d722ddc95aeff8cf71b22973f388b773dcab39a5b61a698b8b980e31134ee944731887cacda1be2dca9209c1dc169fe45f7fb8d62eb4cd0fdc7
7
+ data.tar.gz: 38a2af2e7b3f4ad037669ce10e14186a9cb07def0d36130c4331ebf041d34b02c8634d7631b99b67feb77ceddfebd5e8eb98c0c61da4795f21b40ad3694a33f1
@@ -10,9 +10,9 @@ jobs:
10
10
  strategy:
11
11
  matrix:
12
12
  ruby-version:
13
- - "3.2"
13
+ - "3.3"
14
14
  rails-version:
15
- - "7.0"
15
+ - "7.1"
16
16
  continue-on-error: [true]
17
17
  name: ${{ format('Coverage (Ruby {0}, Rails {1})', matrix.ruby-version, matrix.rails-version) }}
18
18
  runs-on: ubuntu-latest
@@ -10,7 +10,6 @@ jobs:
10
10
  strategy:
11
11
  matrix:
12
12
  ruby-version:
13
- - "2.7"
14
13
  - "3.1"
15
14
  - "3.2"
16
15
  - "3.3"
data/.rubocop.yml CHANGED
@@ -1,3 +1,7 @@
1
+ require:
2
+ # - rubocop-rails
3
+ # - rubocop-minitest
4
+
1
5
  AllCops:
2
6
  TargetRubyVersion: 2.7
3
7
  NewCops: enable
data/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## v.1.1.1 19 May 2024
4
+
5
+ - bump to Rails 7.1.3.3
6
+ - bugfix: uploaded files index page was blank
7
+ - create cms:image tag, simplifying from cms:file_link
8
+ - add 'title' attribute to images
9
+ - update and optimize test suite
10
+ - drop support for ruby < 3.0 - no longer supported
11
+
3
12
  ## v.1.1.0 13 May 2024
4
13
 
5
14
  - Rails 7.1 compatibility, all tests passing
data/Gemfile CHANGED
@@ -5,35 +5,34 @@ git_source(:github) { |repo| "https://github.com/#{repo}.git" }
5
5
 
6
6
  gemspec
7
7
 
8
- gem 'rails', '~> 7.1.2'
8
+ gem 'rails', '~> 7.1.3'
9
9
 
10
10
  group :development, :test do
11
- gem 'autoprefixer-rails', '~> 8.1.0'
11
+ gem 'autoprefixer-rails', '~> 10.4.16.0'
12
12
  gem 'byebug', '~> 11.1.0', platforms: %i[mri mingw x64_mingw]
13
- gem 'image_processing', '>= 1.2'
13
+ gem 'image_processing', '>= 1.12.0'
14
14
  gem 'sqlite3', '~> 1.6.7'
15
15
  # gem 'mysql2', '~> 0.5'
16
16
  # gem 'pg', '~> 1.5.4'
17
17
  end
18
18
 
19
19
  group :development do
20
- gem 'listen', '~> 3.8.0'
20
+ gem 'listen', '~> 3.9.0'
21
21
  gem 'web-console', '~> 4.2'
22
22
  end
23
23
 
24
24
  group :test do
25
- gem 'brakeman', '~> 5.4.1'
25
+ gem 'brakeman', '~> 6.1.2'
26
26
  gem 'bundler-audit', '~> 0.9.1'
27
- gem 'capybara', '~> 3.39.0'
28
27
  gem 'coveralls_reborn', '~> 0.28.0', require: false
29
- gem 'cuprite', '~> 0.14.3'
30
- gem 'diffy', '~> 3.4.2'
28
+ gem 'cuprite', '>= 0.15'
31
29
  gem 'equivalent-xml', '~> 0.6.0'
32
- gem 'minitest', '~> 5.20.0'
33
- gem 'minitest-reporters', '~> 1.6.1'
34
- gem 'mocha', '~> 2.1.0', require: false
35
- gem 'puma', '~> 6.4.0'
30
+ gem 'minitest', '>= 5.23.0'
31
+ gem 'minitest-reporters', '>= 1.6.1'
32
+ gem 'mocha', '>= 2.3.0', require: false
36
33
  gem 'rails-controller-testing', '~> 1.0.5'
37
- gem 'rubocop', '~> 1.56.0', require: false
38
- gem 'simplecov', '~> 0.22.0', require: false
34
+ gem 'rubocop', '~> 1.63.0', require: false
35
+ gem 'rubocop-minitest'
36
+ gem 'rubocop-rails'
37
+ gem 'simplecov', '~> 0.22.0', require: false
39
38
  end
data/README.md CHANGED
@@ -47,9 +47,8 @@ ocCaM'S, pronounced "AH-kums" is a nod to [Occam's Razor](https://en.wikipedia.o
47
47
 
48
48
  ## Compatibility
49
49
 
50
- - [Test suite](https://github.com/avonderluft/occams/actions/workflows/rubyonrails.yml) on Ruby >= 2.7 with Rails >= 6.1
51
- - On Ruby 3.2, Rails 7.x + is recommended, since performance is noticably better than on 6.x
52
- - Sites do run on Rails 7.1, e.g. [GKNT](https://gknt.org/), but some tests fail in [Github Actions](https://github.com/avonderluft/occams/actions). Your mileage may vary.
50
+ - [Test suite](https://github.com/avonderluft/occams/actions/workflows/rubyonrails.yml) on Ruby >= 3.0 with Rails >= 6.1
51
+ - On Ruby 3.x, Rails 7.x + is recommended, since performance is noticably better than on 6.x
53
52
 
54
53
  ## Installation
55
54
 
data/TODOS.md CHANGED
@@ -1,7 +1,6 @@
1
1
  # ToDos
2
2
 
3
- - set up Buildkite CI and add build badge to README
4
3
  - add duplicate page function in admin UI
5
4
  - add admin content search to list layouts, pages and snippets - see https://blog.robertsj.com/search/
6
- - add application console for testing
7
- - add feature to resize file_link'd images
5
+ - diagnose and correct failure of ImageMagick params in file_link and image cms tags
6
+ - lint for rubocop-rails and rubocop-minitest
@@ -2,8 +2,10 @@
2
2
 
3
3
  module Occams::Paginate
4
4
  def occams_paginate(scope, per_page: 50)
5
- return unless defined?(Kaminari)
6
-
7
- scope.page(params[:page]).per(per_page)
5
+ if defined?(Kaminari)
6
+ scope.page(params[:page]).per(per_page)
7
+ else
8
+ scope
9
+ end
8
10
  end
9
11
  end
@@ -127,8 +127,8 @@ protected
127
127
 
128
128
  def build_page
129
129
  @page = @site.pages.new(page_params)
130
- @page.parent ||= (@site.pages.find_by_id(params[:parent_id]) || @site.pages.root)
131
- @page.layout ||= (@page.parent&.layout || @site.layouts.first)
130
+ @page.parent ||= @site.pages.find_by_id(params[:parent_id]) || @site.pages.root
131
+ @page.layout ||= @page.parent&.layout || @site.layouts.first
132
132
  end
133
133
 
134
134
  def load_page
@@ -39,8 +39,11 @@ module Occams
39
39
  # @param [Occams::Cms::File] file
40
40
  # @return [String] {{ cms:file_link #{file.id}, ... }}
41
41
  def cms_file_link_tag(file)
42
- as = ', as: image' if file.attachment.image?
43
- "{{ cms:file_link #{file.id}#{as} }}"
42
+ if file.attachment.image?
43
+ "{{ cms:image #{file.label} }}"
44
+ else
45
+ "{{ cms:file_link #{file.id} }}"
46
+ end
44
47
  end
45
48
  end
46
49
  end
@@ -65,9 +65,7 @@ module Occams
65
65
  def occams_paginate(collection)
66
66
  return unless collection
67
67
 
68
- return unless defined?(Kaminari)
69
-
70
- paginate collection, theme: 'occams'
68
+ paginate collection, theme: 'occams' if defined?(Kaminari)
71
69
  end
72
70
  end
73
71
  end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  # Be sure to restart your server when you modify this file.
3
4
 
4
5
  # Define an application-wide content security policy.
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  # Be sure to restart your server when you modify this file.
3
4
 
4
5
  # Add new inflection rules using the following format. Inflections
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  # Be sure to restart your server when you modify this file.
3
4
  #
4
5
  # This file eases your Rails 7.1 framework defaults upgrade.
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  # Be sure to restart your server when you modify this file.
3
4
 
4
5
  # Define an application-wide HTTP permissions policy. For further
data/gemfiles/6.1.gemfile CHANGED
@@ -8,31 +8,24 @@ gemspec path: '../'
8
8
  gem 'rails', '~> 6.1.0'
9
9
 
10
10
  group :development, :test do
11
- gem 'autoprefixer-rails', '~> 8.1.0'
12
- gem 'byebug', '~> 10.0.0', platforms: %i[mri mingw x64_mingw]
13
- gem 'image_processing', '>= 1.2'
11
+ gem 'autoprefixer-rails', '~> 10.4.16.0'
12
+ gem 'byebug', '~> 11.1.0', platforms: %i[mri mingw x64_mingw]
13
+ gem 'image_processing', '>= 1.12.0'
14
14
  gem 'sqlite3', '~> 1.6.7'
15
15
  end
16
16
 
17
- group :development do
18
- gem 'listen', '~> 3.8.0'
19
- gem 'web-console', '~> 4.2'
20
- end
21
-
22
17
  group :test do
23
- gem 'brakeman', '~> 5.4.1'
18
+ gem 'brakeman', '~> 6.1.2'
24
19
  gem 'bundler-audit', '~> 0.9.1'
25
- gem 'capybara', '~> 3.39.0'
26
20
  gem 'coveralls_reborn', '~> 0.28.0', require: false
27
- gem 'cuprite', '~> 0.14.3'
28
- gem 'diffy', '~> 3.4.2'
21
+ gem 'cuprite', '>= 0.15'
29
22
  gem 'equivalent-xml', '~> 0.6.0'
30
- gem 'minitest', '~> 5.20.0'
31
- gem 'minitest-reporters', '~> 1.6.1'
32
- gem 'mocha', '~> 2.1.0', require: false
33
- gem 'puma', '~> 6.4.0'
23
+ gem 'minitest', '>= 5.23.0'
24
+ gem 'minitest-reporters', '>= 1.6.1'
25
+ gem 'mocha', '>= 2.3.0', require: false
34
26
  gem 'rails-controller-testing', '~> 1.0.5'
35
- gem 'rubocop', '~> 1.56.0', require: false
36
- gem 'selenium-webdriver', '~> 4.9.0'
27
+ gem 'rubocop', '~> 1.63.0', require: false
28
+ gem 'rubocop-minitest'
29
+ gem 'rubocop-rails'
37
30
  gem 'simplecov', '~> 0.22.0', require: false
38
31
  end
data/gemfiles/7.0.gemfile CHANGED
@@ -8,30 +8,24 @@ gemspec path: '../'
8
8
  gem 'rails', '~> 7.0.0'
9
9
 
10
10
  group :development, :test do
11
- gem 'autoprefixer-rails', '~> 8.1.0'
12
- gem 'byebug', '~> 10.0.0', platforms: %i[mri mingw x64_mingw]
13
- gem 'image_processing', '>= 1.2'
11
+ gem 'autoprefixer-rails', '~> 10.4.16.0'
12
+ gem 'byebug', '~> 11.1.0', platforms: %i[mri mingw x64_mingw]
13
+ gem 'image_processing', '>= 1.12.0'
14
14
  gem 'sqlite3', '~> 1.6.7'
15
15
  end
16
16
 
17
- group :development do
18
- gem 'listen', '~> 3.8.0'
19
- gem 'web-console', '~> 4.2'
20
- end
21
-
22
17
  group :test do
23
- gem 'brakeman', '~> 5.4.1'
18
+ gem 'brakeman', '~> 6.1.2'
24
19
  gem 'bundler-audit', '~> 0.9.1'
25
- gem 'capybara', '~> 3.39.0'
26
20
  gem 'coveralls_reborn', '~> 0.28.0', require: false
27
- gem 'cuprite', '~> 0.14.3'
28
- gem 'diffy', '~> 3.4.2'
21
+ gem 'cuprite', '>= 0.15'
29
22
  gem 'equivalent-xml', '~> 0.6.0'
30
- gem 'minitest', '~> 5.20.0'
31
- gem 'minitest-reporters', '~> 1.6.1'
32
- gem 'mocha', '~> 2.1.0', require: false
33
- gem 'puma', '~> 6.4.0'
23
+ gem 'minitest', '>= 5.23.0'
24
+ gem 'minitest-reporters', '>= 1.6.1'
25
+ gem 'mocha', '>= 2.3.0', require: false
34
26
  gem 'rails-controller-testing', '~> 1.0.5'
35
- gem 'rubocop', '~> 1.56.0', require: false
36
- gem 'simplecov', '~> 0.22.0', require: false
27
+ gem 'rubocop', '~> 1.63.0', require: false
28
+ gem 'rubocop-minitest'
29
+ gem 'rubocop-rails'
30
+ gem 'simplecov', '~> 0.22.0', require: false
37
31
  end
data/gemfiles/7.1.gemfile CHANGED
@@ -8,30 +8,24 @@ gemspec path: '../'
8
8
  gem 'rails', '~> 7.1.0', '>= 7.1.1'
9
9
 
10
10
  group :development, :test do
11
- gem 'autoprefixer-rails', '~> 8.1.0'
12
- gem 'byebug', '~> 10.0.0', platforms: %i[mri mingw x64_mingw]
13
- gem 'image_processing', '>= 1.2'
11
+ gem 'autoprefixer-rails', '~> 10.4.16.0'
12
+ gem 'byebug', '~> 11.1.0', platforms: %i[mri mingw x64_mingw]
13
+ gem 'image_processing', '>= 1.12.0'
14
14
  gem 'sqlite3', '~> 1.6.7'
15
15
  end
16
16
 
17
- group :development do
18
- gem 'listen', '~> 3.8.0'
19
- gem 'web-console', '~> 4.2'
20
- end
21
-
22
17
  group :test do
23
- gem 'brakeman', '~> 5.4.1'
18
+ gem 'brakeman', '~> 6.1.2'
24
19
  gem 'bundler-audit', '~> 0.9.1'
25
- gem 'capybara', '~> 3.39.0'
26
20
  gem 'coveralls_reborn', '~> 0.28.0', require: false
27
- gem 'cuprite', '~> 0.14.3'
28
- gem 'diffy', '~> 3.4.2'
21
+ gem 'cuprite', '>= 0.15'
29
22
  gem 'equivalent-xml', '~> 0.6.0'
30
- gem 'minitest', '~> 5.20.0'
31
- gem 'minitest-reporters', '~> 1.6.1'
32
- gem 'mocha', '~> 2.1.0', require: false
33
- gem 'puma', '~> 6.4.0'
23
+ gem 'minitest', '>= 5.23.0'
24
+ gem 'minitest-reporters', '>= 1.6.1'
25
+ gem 'mocha', '>= 2.3.0', require: false
34
26
  gem 'rails-controller-testing', '~> 1.0.5'
35
- gem 'rubocop', '~> 1.56.0', require: false
36
- gem 'simplecov', '~> 0.22.0', require: false
27
+ gem 'rubocop', '~> 1.63.0', require: false
28
+ gem 'rubocop-minitest'
29
+ gem 'rubocop-rails'
30
+ gem 'simplecov', '~> 0.22.0', require: false
37
31
  end
@@ -7,23 +7,19 @@ require_relative 'mixins/file_content'
7
7
  # {{cms:file_link id, as: image}}
8
8
  #
9
9
  # `as` - url (default) | link | image - how file gets rendered out
10
- # `label` - attach label attribute to link or image tag
11
- # `resize` - imagemagic option. For example: "100x50>"
12
- # `gravity` - imagemagic option. For example: "center"
13
- # `crop` - imagemagic option. For example: "100x50+0+0"
14
10
  # `class` - any html classes that you want on the result link or image tag. For example "class1 class2"
15
11
  #
12
+ # - variant_attrs are not functional, perhaps due to some change in ImageMagick
13
+ # - Simply use a class in your CSS / SASS to style your image display
14
+ # `label` - attach label attribute to link or image tag
15
+ # `resize` - imagemagick option. For example: "100x50>"
16
+ # `gravity` - imagemagick option. For example: "center"
17
+ # `crop` - imagemagick option. For example: "100x50+0+0"
18
+ #
16
19
  class Occams::Content::Tags::FileLink < Occams::Content::Tag
17
20
  include Occams::Content::Tags::Mixins::FileContent
18
21
 
19
- # @return [String] A {Occams::Cms::Site#files} ID.
20
- attr_reader :identifier
21
-
22
- # @type ["url", "link", "image"]
23
- attr_reader :as
24
-
25
- # @type [{String => String}]
26
- attr_reader :variant_attrs
22
+ attr_reader :identifier, :as, :variant_attrs
27
23
 
28
24
  def initialize(context:, params: [], source: nil)
29
25
  super
@@ -32,7 +28,7 @@ class Occams::Content::Tags::FileLink < Occams::Content::Tag
32
28
  @identifier = params[0]
33
29
  @as = options['as'] || 'url'
34
30
  @class = options['class']
35
- @variant_attrs = options.slice('resize', 'gravity', 'crop')
31
+ @variant_attrs = options.slice('resize', 'gravity', 'crop') # broken for ImageMagick
36
32
 
37
33
  return if @identifier.present?
38
34
 
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'mixins/file_content'
4
+
5
+ # This is like the the file_link tag, but specifically for images
6
+ # Identify the image by its label {{ cms:image label }}
7
+ #
8
+ # `class` - any html classes that you want on the image tag. For example "class1 class2"
9
+ #
10
+ # - variant_attrs are not functional, perhaps due to some change in ImageMagick
11
+ # - Simply use a class in your CSS / SASS to style your image display
12
+ # `label` - attach label attribute to link or image tag
13
+ # `resize` - imagemagick option. For example: "100x50>"
14
+ # `gravity` - imagemagick option. For example: "center"
15
+ # `crop` - imagemagick option. For example: "100x50+0+0"
16
+
17
+ class Occams::Content::Tags::Image < Occams::Content::Tag
18
+ include Occams::Content::Tags::Mixins::FileContent
19
+
20
+ attr_reader :identifier, :as, :variant_attrs
21
+
22
+ def initialize(context:, params: [], source: nil)
23
+ super
24
+
25
+ options = params.extract_options!
26
+ @identifier = params[0]
27
+ @as = 'image'
28
+ @class = options['class']
29
+ @variant_attrs = options.slice('resize', 'gravity', 'crop') # broken for ImageMagick
30
+
31
+ return if @identifier.present?
32
+
33
+ raise Error, 'Missing identifier label for image tag'
34
+ end
35
+
36
+ # @return [Occams::Cms::File]
37
+ def file_record
38
+ @file_record ||= context.site.files.detect { |f| f.label == identifier }
39
+ end
40
+
41
+ # @return [ActiveStorage::Blob]
42
+ def file
43
+ file_record&.attachment
44
+ end
45
+
46
+ # @return [String]
47
+ def label
48
+ return '' if file_record.nil?
49
+
50
+ file_record.label.presence || file.filename.to_s
51
+ end
52
+ end
53
+
54
+ Occams::Content::Renderer.register_tag(
55
+ :image, Occams::Content::Tags::Image
56
+ )
@@ -25,7 +25,7 @@ module Occams::Content::Tags::Mixins
25
25
  when 'link'
26
26
  "<a href='#{attachment_url}'#{html_class_attribute} target='_blank'>#{label}</a>"
27
27
  when 'image'
28
- "<img src='#{attachment_url}'#{html_class_attribute} alt='#{label}'/>"
28
+ "<img src='#{attachment_url}'#{html_class_attribute} alt='#{label}' title='#{label}'/>"
29
29
  else
30
30
  attachment_url
31
31
  end
@@ -16,11 +16,14 @@ require_relative 'mixins/file_content'
16
16
  # {{ cms:page_file_link attachments, filename: "cat.jpg" }}
17
17
  #
18
18
  # `as` - url (default) | link | image - how file gets rendered out
19
+ # `class` - any html classes that you want on the result link or image tag. For example "class1 class2"
20
+ #
21
+ # - the following params are deprecated / not functional, perhaps due to some change in ImageMagick
22
+ # - Simply use a class in your CSS / SASS to style your image display
19
23
  # `label` - attach label attribute to link or image tag
20
24
  # `resize` - imagemagick option. For example: "100x50>"
21
25
  # `gravity` - imagemagick option. For example: "center"
22
26
  # `crop` - imagemagick option. For example: "100x50+0+0"
23
- # `class` - any html classes that you want on the result link or image tag. For example "class1 class2"
24
27
  #
25
28
  class Occams::Content::Tags::PageFileLink < Occams::Content::Tag
26
29
  include Occams::Content::Tags::Mixins::FileContent
@@ -18,6 +18,7 @@ require_relative 'tags/files'
18
18
  require_relative 'tags/snippet'
19
19
  require_relative 'tags/asset'
20
20
  require_relative 'tags/file_link'
21
+ require_relative 'tags/image'
21
22
  require_relative 'tags/page_file_link'
22
23
  require_relative 'tags/helper'
23
24
  require_relative 'tags/partial'
data/lib/occams/error.rb CHANGED
@@ -6,19 +6,19 @@ module Occams
6
6
 
7
7
  class MissingSite < Occams::Error
8
8
  def initialize(identifier)
9
- super "Cannot find CMS Site with identifier: #{identifier}"
9
+ super("Cannot find CMS Site with identifier: #{identifier}")
10
10
  end
11
11
  end
12
12
 
13
13
  class MissingLayout < Occams::Error
14
14
  def initialize(identifier)
15
- super "Cannot find CMS Layout with identifier: #{identifier}"
15
+ super("Cannot find CMS Layout with identifier: #{identifier}")
16
16
  end
17
17
  end
18
18
 
19
19
  class MissingPage < Occams::Error
20
20
  def initialize(path)
21
- super "Cannot find CMS Page at #{path}"
21
+ super("Cannot find CMS Page at #{path}")
22
22
  end
23
23
  end
24
24
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Occams
4
- VERSION = '1.1.0'
4
+ VERSION = '1.1.1.1'
5
5
  end
data/occams.gemspec CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |spec|
16
16
  f.match(%r{^(test|doc)/})
17
17
  end
18
18
 
19
- spec.required_ruby_version = '>= 2.7.0'
19
+ spec.required_ruby_version = '>= 3.0.0'
20
20
  spec.metadata['rubygems_mfa_required'] = 'true'
21
21
 
22
22
  spec.add_dependency 'active_link_to', '~> 1.0', '>= 1.0.5'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: occams
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew vonderLuft
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-04 00:00:00.000000000 Z
11
+ date: 2024-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_link_to
@@ -719,6 +719,7 @@ files:
719
719
  - lib/occams/content/tags/files.rb
720
720
  - lib/occams/content/tags/fragment.rb
721
721
  - lib/occams/content/tags/helper.rb
722
+ - lib/occams/content/tags/image.rb
722
723
  - lib/occams/content/tags/markdown.rb
723
724
  - lib/occams/content/tags/mixins/file_content.rb
724
725
  - lib/occams/content/tags/number.rb
@@ -765,7 +766,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
765
766
  requirements:
766
767
  - - ">="
767
768
  - !ruby/object:Gem::Version
768
- version: 2.7.0
769
+ version: 3.0.0
769
770
  required_rubygems_version: !ruby/object:Gem::Requirement
770
771
  requirements:
771
772
  - - ">="