cheesy-gallery 0.8.0 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/publish.yaml +20 -0
- data/.github/workflows/tests.yaml +39 -0
- data/CHANGELOG.md +16 -0
- data/README.md +40 -18
- data/cheesy-gallery.gemspec +0 -2
- data/lib/cheesy-gallery/base_image_file.rb +21 -7
- data/lib/cheesy-gallery/gallery_index.rb +2 -5
- data/lib/cheesy-gallery/generator.rb +2 -6
- data/lib/cheesy-gallery/image_file.rb +9 -7
- data/lib/cheesy-gallery/image_thumb.rb +3 -7
- data/lib/cheesy-gallery/version.rb +1 -2
- data/lib/cheesy-gallery.rb +0 -2
- metadata +6 -79
- data/.travis.yml +0 -33
- data/sorbet/config +0 -2
- data/sorbet/rbi/gems/addressable.rbi +0 -147
- data/sorbet/rbi/gems/ast.rbi +0 -49
- data/sorbet/rbi/gems/codecov.rbi +0 -49
- data/sorbet/rbi/gems/coderay.rbi +0 -285
- data/sorbet/rbi/gems/colorator.rbi +0 -60
- data/sorbet/rbi/gems/concurrent-ruby.rbi +0 -225
- data/sorbet/rbi/gems/docile.rbi +0 -36
- data/sorbet/rbi/gems/ffi.rbi +0 -560
- data/sorbet/rbi/gems/forwardable-extended.rbi +0 -24
- data/sorbet/rbi/gems/i18n.rbi +0 -108
- data/sorbet/rbi/gems/jekyll-sass-converter.rbi +0 -61
- data/sorbet/rbi/gems/jekyll.rbi +0 -726
- data/sorbet/rbi/gems/kramdown.rbi +0 -250
- data/sorbet/rbi/gems/liquid.rbi +0 -649
- data/sorbet/rbi/gems/method_source.rbi +0 -64
- data/sorbet/rbi/gems/parallel.rbi +0 -83
- data/sorbet/rbi/gems/parser.rbi +0 -1429
- data/sorbet/rbi/gems/pathutil.rbi +0 -188
- data/sorbet/rbi/gems/pry.rbi +0 -1898
- data/sorbet/rbi/gems/public_suffix.rbi +0 -104
- data/sorbet/rbi/gems/rainbow.rbi +0 -118
- data/sorbet/rbi/gems/rake.rbi +0 -647
- data/sorbet/rbi/gems/regexp_parser.rbi +0 -926
- data/sorbet/rbi/gems/rexml.rbi +0 -599
- data/sorbet/rbi/gems/rmagick.rbi +0 -1249
- data/sorbet/rbi/gems/rspec-core.rbi +0 -1894
- data/sorbet/rbi/gems/rspec-expectations.rbi +0 -1148
- data/sorbet/rbi/gems/rspec-mocks.rbi +0 -1091
- data/sorbet/rbi/gems/rspec-support.rbi +0 -280
- data/sorbet/rbi/gems/rspec.rbi +0 -15
- data/sorbet/rbi/gems/rubocop-ast.rbi +0 -1357
- data/sorbet/rbi/gems/rubocop.rbi +0 -8027
- data/sorbet/rbi/gems/ruby-progressbar.rbi +0 -304
- data/sorbet/rbi/gems/safe_yaml.rbi +0 -124
- data/sorbet/rbi/gems/sassc.rbi +0 -532
- data/sorbet/rbi/gems/simplecov-html.rbi +0 -35
- data/sorbet/rbi/gems/simplecov.rbi +0 -419
- data/sorbet/rbi/gems/unicode-display_width.rbi +0 -22
- data/sorbet/rbi/hidden-definitions/errors.txt +0 -6233
- data/sorbet/rbi/hidden-definitions/hidden.rbi +0 -13059
- data/sorbet/rbi/rmagick.rbi +0 -18
- data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +0 -276
- data/sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi +0 -645
- data/sorbet/rbi/sorbet-typed/lib/rspec-core/all/rspec-core.rbi +0 -1891
- data/sorbet/rbi/sorbet-typed/lib/rubocop/>=1.8/rubocop.rbi +0 -7799
- data/sorbet/rbi/todo.rbi +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0af87d93a01619b196b1c7bfb162ee12d309f53961e3a04f523eed0e9c178f52
|
4
|
+
data.tar.gz: 1c52d18ca5e5eff07b51224b0b67f9ae16b6e58304ff76d09de53cbfd4488655
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d876cfc12640e0d2688ac2c51d636c38083624d278031e32bfbbf6ce5ad54157c9e5299cfb0cd733d0b368006c5d32eb060f41907b3d05eeb1b308ad496e037d
|
7
|
+
data.tar.gz: a2ccf221f4575749a555f6d8a9e7d46c050327bd41ad30861c58f3ed20365e52373a3227c4b7960c052eea3675e7b00fbaa82db2baa2664cfc9ad11ff8245070
|
@@ -0,0 +1,20 @@
|
|
1
|
+
name: Publish Gem
|
2
|
+
on:
|
3
|
+
push:
|
4
|
+
tags:
|
5
|
+
- "*"
|
6
|
+
workflow_dispatch:
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
publish:
|
10
|
+
runs-on: ubuntu-latest
|
11
|
+
steps:
|
12
|
+
- uses: actions/checkout@v3
|
13
|
+
- uses: ruby/setup-ruby@v1
|
14
|
+
with:
|
15
|
+
ruby-version: "3.0"
|
16
|
+
bundler-cache: true
|
17
|
+
- uses: dawidd6/action-publish-gem@v1
|
18
|
+
with:
|
19
|
+
api_key: ${{secrets.RUBYGEMS_API_KEY}}
|
20
|
+
github_token: ${{secrets.GITHUB_TOKEN}}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
name: Tests
|
2
|
+
on: [push, pull_request]
|
3
|
+
jobs:
|
4
|
+
base-test:
|
5
|
+
strategy:
|
6
|
+
fail-fast: false
|
7
|
+
matrix:
|
8
|
+
# Due to https://github.com/actions/runner/issues/849, we have to use quotes for '3.0'
|
9
|
+
ruby: ["2.7", "3.0", "3.1"]
|
10
|
+
runs-on: ubuntu-latest
|
11
|
+
steps:
|
12
|
+
- uses: actions/checkout@v3
|
13
|
+
- uses: ruby/setup-ruby@v1
|
14
|
+
with:
|
15
|
+
ruby-version: ${{ matrix.ruby }}
|
16
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
17
|
+
- run: bundle exec rake
|
18
|
+
test-site:
|
19
|
+
strategy:
|
20
|
+
fail-fast: false
|
21
|
+
matrix:
|
22
|
+
# Due to https://github.com/actions/runner/issues/849, we have to use quotes for '3.0'
|
23
|
+
ruby: ["2.7", "3.0", "3.1"]
|
24
|
+
runs-on: ubuntu-latest
|
25
|
+
steps:
|
26
|
+
- uses: actions/checkout@v3
|
27
|
+
- uses: ruby/setup-ruby@v1
|
28
|
+
with:
|
29
|
+
ruby-version: ${{ matrix.ruby }}
|
30
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
31
|
+
working-directory: spec/fixtures/test_site
|
32
|
+
- id: build-test-site
|
33
|
+
working-directory: spec/fixtures/test_site
|
34
|
+
run: |
|
35
|
+
bundle exec jekyll build --strict --trace --verbose
|
36
|
+
find _site -type f
|
37
|
+
echo -e '\n===\n'
|
38
|
+
cat _site/gallery_one/index.html
|
39
|
+
file _site/gallery_two/third/Morgenspaziergang-3.jpg_thumb.jpg
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
# 1.1.1
|
2
|
+
|
3
|
+
* Address some deprecations warnings thanks to @pdxmph
|
4
|
+
* CI housekeeping: move to GHA from travis
|
5
|
+
|
6
|
+
# 1.1.0
|
7
|
+
|
8
|
+
* Adds aggressive caching to reduce rebuild times.
|
9
|
+
If you need to re-render images for any reason, remove the `.jekyll-cache` folder or change the `_config.yml` file.
|
10
|
+
|
11
|
+
* Changes default quality to 85, and instead strips alls comments.
|
12
|
+
This results in better quality pictures with less size.
|
13
|
+
|
14
|
+
# 1.0.0
|
15
|
+
|
16
|
+
Initial Release
|
data/README.md
CHANGED
@@ -1,39 +1,61 @@
|
|
1
1
|
# Cheesy::Gallery
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
TODO: Delete this and the text above, and describe your gem
|
3
|
+
This is a jekyll photo gallery to manage large amounts of galleries and pictures. You can see the results at https://www.cheesy.at/fotos/.
|
6
4
|
|
7
5
|
## Installation
|
8
6
|
|
9
|
-
|
7
|
+
Follow Jekyll's documentation on [how to install plugins](https://jekyllrb.com/docs/plugins/installation/) using "cheesy-gallery" as name for the gem and plugin.
|
8
|
+
|
9
|
+
## Usage
|
10
|
+
|
11
|
+
After successful installation, enable gallery processing for a subdirectory of your site.
|
12
|
+
For this example, the folder is called `_my_gallery`:
|
10
13
|
|
11
|
-
```
|
12
|
-
|
14
|
+
```yaml
|
15
|
+
collections:
|
16
|
+
my_gallery:
|
17
|
+
cheesy-gallery: true
|
13
18
|
```
|
14
19
|
|
15
|
-
|
20
|
+
From now on, every Jekyll build will take all JPGs in all folders under `_my_gallery` and create a gallery for each folder, linking them according to their structure in the file system.
|
16
21
|
|
17
|
-
|
22
|
+
To add a thumbnail to a gallery, put it inside the gallery folder and call it `thumbnail.jpg`.
|
18
23
|
|
19
|
-
|
24
|
+
Frontmatter, like titles, etc., are read from the `index.md` file in the gallery.
|
20
25
|
|
21
|
-
|
26
|
+
Galleries and their contents are sorted by filename.
|
22
27
|
|
23
|
-
|
28
|
+
To layout galleries, check out the [example layout](spec/fixtures/test_site/_layouts/gallery.html) and adapt it to your site's style.
|
29
|
+
|
30
|
+
If you want an inline display of your photos, I recommend [glightbox](https://github.com/biati-digital/glightbox) by [biati-digital](https://github.com/biati-digital). Add their CSS and JavaScript to your assets, and link them in the `<head>` of your site:
|
31
|
+
|
32
|
+
```html
|
33
|
+
<link rel="stylesheet" href="{{ "/assets/glb/glightbox.min.css" | relative_url }}">
|
34
|
+
<script src="{{ "/assets/glb/glightbox.min.js" | relative_url }}"></script>
|
35
|
+
```
|
24
36
|
|
25
|
-
|
37
|
+
Then, in the gallery layout, add `data-gallery="gallery"` attribute to the `<a>` tag linking to each image, and put
|
38
|
+
|
39
|
+
```html
|
40
|
+
<script type="text/javascript">
|
41
|
+
const lightbox = GLightbox({selector: '*[data-gallery]'});
|
42
|
+
</script>
|
43
|
+
```
|
44
|
+
|
45
|
+
at the bottom of the layout.
|
46
|
+
|
47
|
+
## Caching
|
48
|
+
|
49
|
+
This plugin uses aggressive caching to keep render times short.
|
50
|
+
If you need to re-render images for any reason, remove the `.jekyll-cache` folder or change the `_config.yml` file.
|
51
|
+
See the [Cache API tutorial](https://jekyllrb.com/tutorials/cache-api/) for some background.
|
26
52
|
|
27
53
|
## Development
|
28
54
|
|
29
|
-
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
55
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. There is also a test site in `spec/fixtures/test_site` that you can use to try out changes.
|
30
56
|
|
31
57
|
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
32
58
|
|
33
59
|
## Contributing
|
34
60
|
|
35
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/DavidS/cheesy-gallery. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
36
|
-
|
37
|
-
## Code of Conduct
|
38
|
-
|
39
|
-
Everyone interacting in the Cheesy::Gallery project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/DavidS/cheesy-gallery/blob/main/CODE_OF_CONDUCT.md).
|
61
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/DavidS/cheesy-gallery. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct. See [code of conduct](https://github.com/DavidS/cheesy-gallery/blob/main/CODE_OF_CONDUCT.md) for a local copy.
|
data/cheesy-gallery.gemspec
CHANGED
@@ -38,9 +38,7 @@ Gem::Specification.new do |spec|
|
|
38
38
|
spec.add_development_dependency 'rake', '~> 13.0'
|
39
39
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
40
40
|
spec.add_development_dependency 'rubocop'
|
41
|
-
spec.add_development_dependency 'sorbet'
|
42
41
|
|
43
42
|
spec.add_dependency 'jekyll', '~> 4.0'
|
44
43
|
spec.add_dependency 'rmagick', '~> 4.0'
|
45
|
-
spec.add_dependency 'sorbet-runtime'
|
46
44
|
end
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# typed: strict
|
2
1
|
# frozen_string_literal: true
|
3
2
|
|
4
3
|
require 'rmagick'
|
@@ -6,32 +5,47 @@ require 'rmagick'
|
|
6
5
|
# This StaticFile subclass adds additional functionality for images in the
|
7
6
|
# gallery
|
8
7
|
class CheesyGallery::BaseImageFile < Jekyll::StaticFile
|
9
|
-
|
8
|
+
@@render_cache = Jekyll::Cache.new('CheesyGallery::Render') # don't need to worry about inheritance here # rubocop:disable Style/ClassVars
|
10
9
|
|
11
|
-
sig { params(site: Jekyll::Site, collection: Jekyll::Collection, file: Jekyll::StaticFile, dest_path: T.nilable(String)).void }
|
12
10
|
def initialize(site, collection, file, dest_path = nil)
|
13
|
-
@source_file =
|
11
|
+
@source_file = file
|
14
12
|
super(site, site.source, File.dirname(file.relative_path), dest_path || file.name, collection)
|
15
13
|
end
|
16
14
|
|
17
15
|
# use the source file's path for this, as this value is used all over the
|
18
16
|
# place for mtime checking
|
19
|
-
sig { returns String }
|
20
17
|
def path
|
21
18
|
@source_file.path
|
22
19
|
end
|
23
20
|
|
24
21
|
# overwrite this method to add additional processing
|
25
|
-
sig { params(img: Magick::ImageList, path: String).void }
|
26
22
|
def process_and_write(img, path)
|
27
23
|
img.write(path) {}
|
28
24
|
end
|
29
25
|
|
26
|
+
# Inject cache here to override default delete-before-copy behaviour
|
27
|
+
# See jekyll:lib/jekyll/static_file.rb for source
|
28
|
+
def write(dest)
|
29
|
+
dest_path = destination(dest)
|
30
|
+
return false if File.exist?(dest_path) && !modified?
|
31
|
+
|
32
|
+
self.class.mtimes[path] = mtime
|
33
|
+
|
34
|
+
return if @@render_cache.key?("#{dest_path}-rendered") && File.exist?(dest_path)
|
35
|
+
|
36
|
+
FileUtils.mkdir_p(File.dirname(dest_path))
|
37
|
+
FileUtils.rm(dest_path) if File.exist?(dest_path)
|
38
|
+
copy_file(dest_path)
|
39
|
+
|
40
|
+
@@render_cache["#{dest_path}-rendered"] = true
|
41
|
+
|
42
|
+
true
|
43
|
+
end
|
44
|
+
|
30
45
|
private
|
31
46
|
|
32
47
|
# instead of copying, allow rmagick processing
|
33
48
|
# this is only called if the mtime doesn't match
|
34
|
-
sig { params(dest_path: String).void }
|
35
49
|
def copy_file(dest_path)
|
36
50
|
source = Magick::ImageList.new(path)
|
37
51
|
begin
|
@@ -1,14 +1,11 @@
|
|
1
|
-
# typed: strict
|
2
1
|
# frozen_string_literal: true
|
3
2
|
|
4
3
|
# This Document subclass is used to stand in for gallery indices which do not have a `index.html`
|
5
4
|
class CheesyGallery::GalleryIndex < Jekyll::Document
|
6
|
-
extend T::Sig
|
7
|
-
|
8
5
|
DEFAULT_CONTENT = "This page intentionally left plank.\n"
|
6
|
+
|
9
7
|
# skip reading content, as there is by definition no backing file for this
|
10
|
-
|
11
|
-
def read_content(_opts)
|
8
|
+
def read_content(_opts = nil)
|
12
9
|
self.content = DEFAULT_CONTENT
|
13
10
|
end
|
14
11
|
end
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# typed: strict
|
2
1
|
# frozen_string_literal: true
|
3
2
|
|
4
3
|
require 'jekyll'
|
@@ -9,11 +8,8 @@ require 'cheesy-gallery/image_thumb'
|
|
9
8
|
|
10
9
|
# The generator modifies the `site` data structure to contain all data necessary by the layouts and tags to render the galleries
|
11
10
|
class CheesyGallery::Generator < Jekyll::Generator
|
12
|
-
extend T::Sig
|
13
|
-
|
14
|
-
sig { params(site: Jekyll::Site).void }
|
15
11
|
def generate(site)
|
16
|
-
@site =
|
12
|
+
@site = site
|
17
13
|
(site.collections.values.find_all { |c| c.metadata['cheesy-gallery'] } || [site.collections['galleries']]).compact.each do |collection|
|
18
14
|
collection.metadata['output'] = true unless collection.metadata.key? 'output'
|
19
15
|
|
@@ -36,7 +32,7 @@ class CheesyGallery::Generator < Jekyll::Generator
|
|
36
32
|
CheesyGallery::ImageFile.new(
|
37
33
|
site, collection, f,
|
38
34
|
max_size: collection.metadata['max_size'] || '1920x1080',
|
39
|
-
quality: collection.metadata['quality'] ||
|
35
|
+
quality: collection.metadata['quality'] || 85
|
40
36
|
)
|
41
37
|
end
|
42
38
|
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# typed: strict
|
2
1
|
# frozen_string_literal: true
|
3
2
|
|
4
3
|
require 'rmagick'
|
@@ -7,14 +6,13 @@ require 'cheesy-gallery/base_image_file'
|
|
7
6
|
# This StaticFile subclass adds additional functionality for images in the
|
8
7
|
# gallery
|
9
8
|
class CheesyGallery::ImageFile < CheesyGallery::BaseImageFile
|
10
|
-
@@geometry_cache =
|
9
|
+
@@geometry_cache = Jekyll::Cache.new('CheesyGallery::Geometry') # don't need to worry about inheritance here # rubocop:disable Style/ClassVars
|
11
10
|
|
12
|
-
sig { params(site: Jekyll::Site, collection: Jekyll::Collection, file: Jekyll::StaticFile, max_size: String, quality: Integer).void }
|
13
11
|
def initialize(site, collection, file, max_size:, quality:)
|
14
12
|
super(site, collection, file)
|
15
13
|
|
16
|
-
@max_size =
|
17
|
-
@quality =
|
14
|
+
@max_size = max_size
|
15
|
+
@quality = quality
|
18
16
|
|
19
17
|
realpath = File.realdirpath(path)
|
20
18
|
mtime = File.mtime(realpath)
|
@@ -35,13 +33,17 @@ class CheesyGallery::ImageFile < CheesyGallery::BaseImageFile
|
|
35
33
|
end
|
36
34
|
|
37
35
|
# instead of copying, renders an optimised version
|
38
|
-
sig { params(img: Magick::ImageList, path: String).void }
|
39
36
|
def process_and_write(img, path)
|
40
37
|
img.change_geometry!(@max_size) do |cols, rows, i|
|
41
38
|
i.resize!(cols, rows)
|
42
39
|
end
|
40
|
+
# follow recommendations from https://stackoverflow.com/a/7262050/4918 to get better compression
|
41
|
+
img.interlace = Magick::PlaneInterlace
|
42
|
+
# but skip the blur to avoid too many changes to the data
|
43
|
+
# img.gaussian_blur(0.05)
|
44
|
+
img.strip!
|
43
45
|
# workaround weird {self} initialisation pattern
|
44
46
|
quality = @quality
|
45
|
-
img.write(path) {
|
47
|
+
img.write(path) { |image| image.quality = quality }
|
46
48
|
end
|
47
49
|
end
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# typed: strict
|
2
1
|
# frozen_string_literal: true
|
3
2
|
|
4
3
|
require 'rmagick'
|
@@ -6,21 +5,18 @@ require 'cheesy-gallery/base_image_file'
|
|
6
5
|
|
7
6
|
# This StaticFile subclass represents thumbnail images for each image. On `write()` it renders a 150x150 center crop of the source
|
8
7
|
class CheesyGallery::ImageThumb < CheesyGallery::BaseImageFile
|
9
|
-
sig { returns(Integer) }
|
10
8
|
attr_reader :height, :width
|
11
9
|
|
12
|
-
sig { params(site: Jekyll::Site, collection: Jekyll::Collection, file: Jekyll::StaticFile, postfix: String, height: Integer, width: Integer).void }
|
13
10
|
def initialize(site, collection, file, postfix, height, width)
|
14
11
|
super(site, collection, file, file.name + postfix)
|
15
12
|
|
16
|
-
@height =
|
17
|
-
@width =
|
13
|
+
@height = height
|
14
|
+
@width = width
|
18
15
|
end
|
19
16
|
|
20
17
|
# instead of copying, renders the thumbnail
|
21
|
-
sig { params(img: Magick::ImageList, path: String).void }
|
22
18
|
def process_and_write(img, path)
|
23
19
|
img.resize_to_fill!(height, width)
|
24
|
-
img.write(path)
|
20
|
+
img.write(path)
|
25
21
|
end
|
26
22
|
end
|
data/lib/cheesy-gallery.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cheesy-gallery
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Schmitt
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-06-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -94,20 +94,6 @@ dependencies:
|
|
94
94
|
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: sorbet
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - ">="
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - ">="
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
111
97
|
- !ruby/object:Gem::Dependency
|
112
98
|
name: jekyll
|
113
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,20 +122,6 @@ dependencies:
|
|
136
122
|
- - "~>"
|
137
123
|
- !ruby/object:Gem::Version
|
138
124
|
version: '4.0'
|
139
|
-
- !ruby/object:Gem::Dependency
|
140
|
-
name: sorbet-runtime
|
141
|
-
requirement: !ruby/object:Gem::Requirement
|
142
|
-
requirements:
|
143
|
-
- - ">="
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
version: '0'
|
146
|
-
type: :runtime
|
147
|
-
prerelease: false
|
148
|
-
version_requirements: !ruby/object:Gem::Requirement
|
149
|
-
requirements:
|
150
|
-
- - ">="
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
version: '0'
|
153
125
|
description:
|
154
126
|
email:
|
155
127
|
- david@black.co.at
|
@@ -158,10 +130,12 @@ extensions: []
|
|
158
130
|
extra_rdoc_files: []
|
159
131
|
files:
|
160
132
|
- ".github/dependabot.yml"
|
133
|
+
- ".github/workflows/publish.yaml"
|
134
|
+
- ".github/workflows/tests.yaml"
|
161
135
|
- ".gitignore"
|
162
136
|
- ".rspec"
|
163
137
|
- ".rubocop.yml"
|
164
|
-
-
|
138
|
+
- CHANGELOG.md
|
165
139
|
- CODE_OF_CONDUCT.md
|
166
140
|
- Gemfile
|
167
141
|
- LICENSE.md
|
@@ -177,53 +151,6 @@ files:
|
|
177
151
|
- lib/cheesy-gallery/image_file.rb
|
178
152
|
- lib/cheesy-gallery/image_thumb.rb
|
179
153
|
- lib/cheesy-gallery/version.rb
|
180
|
-
- sorbet/config
|
181
|
-
- sorbet/rbi/gems/addressable.rbi
|
182
|
-
- sorbet/rbi/gems/ast.rbi
|
183
|
-
- sorbet/rbi/gems/codecov.rbi
|
184
|
-
- sorbet/rbi/gems/coderay.rbi
|
185
|
-
- sorbet/rbi/gems/colorator.rbi
|
186
|
-
- sorbet/rbi/gems/concurrent-ruby.rbi
|
187
|
-
- sorbet/rbi/gems/docile.rbi
|
188
|
-
- sorbet/rbi/gems/ffi.rbi
|
189
|
-
- sorbet/rbi/gems/forwardable-extended.rbi
|
190
|
-
- sorbet/rbi/gems/i18n.rbi
|
191
|
-
- sorbet/rbi/gems/jekyll-sass-converter.rbi
|
192
|
-
- sorbet/rbi/gems/jekyll.rbi
|
193
|
-
- sorbet/rbi/gems/kramdown.rbi
|
194
|
-
- sorbet/rbi/gems/liquid.rbi
|
195
|
-
- sorbet/rbi/gems/method_source.rbi
|
196
|
-
- sorbet/rbi/gems/parallel.rbi
|
197
|
-
- sorbet/rbi/gems/parser.rbi
|
198
|
-
- sorbet/rbi/gems/pathutil.rbi
|
199
|
-
- sorbet/rbi/gems/pry.rbi
|
200
|
-
- sorbet/rbi/gems/public_suffix.rbi
|
201
|
-
- sorbet/rbi/gems/rainbow.rbi
|
202
|
-
- sorbet/rbi/gems/rake.rbi
|
203
|
-
- sorbet/rbi/gems/regexp_parser.rbi
|
204
|
-
- sorbet/rbi/gems/rexml.rbi
|
205
|
-
- sorbet/rbi/gems/rmagick.rbi
|
206
|
-
- sorbet/rbi/gems/rspec-core.rbi
|
207
|
-
- sorbet/rbi/gems/rspec-expectations.rbi
|
208
|
-
- sorbet/rbi/gems/rspec-mocks.rbi
|
209
|
-
- sorbet/rbi/gems/rspec-support.rbi
|
210
|
-
- sorbet/rbi/gems/rspec.rbi
|
211
|
-
- sorbet/rbi/gems/rubocop-ast.rbi
|
212
|
-
- sorbet/rbi/gems/rubocop.rbi
|
213
|
-
- sorbet/rbi/gems/ruby-progressbar.rbi
|
214
|
-
- sorbet/rbi/gems/safe_yaml.rbi
|
215
|
-
- sorbet/rbi/gems/sassc.rbi
|
216
|
-
- sorbet/rbi/gems/simplecov-html.rbi
|
217
|
-
- sorbet/rbi/gems/simplecov.rbi
|
218
|
-
- sorbet/rbi/gems/unicode-display_width.rbi
|
219
|
-
- sorbet/rbi/hidden-definitions/errors.txt
|
220
|
-
- sorbet/rbi/hidden-definitions/hidden.rbi
|
221
|
-
- sorbet/rbi/rmagick.rbi
|
222
|
-
- sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi
|
223
|
-
- sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi
|
224
|
-
- sorbet/rbi/sorbet-typed/lib/rspec-core/all/rspec-core.rbi
|
225
|
-
- sorbet/rbi/sorbet-typed/lib/rubocop/>=1.8/rubocop.rbi
|
226
|
-
- sorbet/rbi/todo.rbi
|
227
154
|
homepage: https://github.com/DavidS/cheesy-gallery
|
228
155
|
licenses: []
|
229
156
|
metadata:
|
@@ -245,7 +172,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
245
172
|
- !ruby/object:Gem::Version
|
246
173
|
version: '0'
|
247
174
|
requirements: []
|
248
|
-
rubygems_version: 3.
|
175
|
+
rubygems_version: 3.3.15
|
249
176
|
signing_key:
|
250
177
|
specification_version: 4
|
251
178
|
summary: A jekyll plugin for building galleries.
|
data/.travis.yml
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
---
|
2
|
-
os: linux
|
3
|
-
dist: focal
|
4
|
-
language: ruby
|
5
|
-
cache: bundler
|
6
|
-
rvm:
|
7
|
-
- 2.7.1
|
8
|
-
|
9
|
-
# adopt future bundler 3 config style
|
10
|
-
before_install:
|
11
|
-
- bundle config set path ${BUNDLE_PATH:-vendor/bundle}
|
12
|
-
- bundle config set jobs 3
|
13
|
-
- bundle config set retry 3
|
14
|
-
install: bundle install
|
15
|
-
|
16
|
-
jobs:
|
17
|
-
include:
|
18
|
-
- env: CHECK=ruby
|
19
|
-
script:
|
20
|
-
- bundle exec rake
|
21
|
-
- env: CHECK=sorbet
|
22
|
-
script:
|
23
|
-
- bundle exec srb tc --ignore=/vendor
|
24
|
-
- env: CHECK=build
|
25
|
-
gemfile: spec/fixtures/test_site/Gemfile
|
26
|
-
script:
|
27
|
-
- (cd spec/fixtures/test_site && bundle exec jekyll build --strict --trace --verbose)
|
28
|
-
- (cd spec/fixtures/test_site && find _site -type f && echo -e '\n===\n' && cat _site/gallery_one/index.html && file _site/gallery_two/third/Morgenspaziergang-3.jpg_thumb.jpg)
|
29
|
-
|
30
|
-
# only branch-test merges to main
|
31
|
-
branches:
|
32
|
-
only:
|
33
|
-
- main
|
data/sorbet/config
DELETED