lt-lcms 0.2.0 → 0.4.2

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: 84c07108ce65653d8d1eb64efe0b6b3dcc6387cc5f9e450bed9c2cb67f228c32
4
- data.tar.gz: 90d198efaf3fd663794e8a79e62666219c4343238752b8b9a4369be8b461ba5b
3
+ metadata.gz: e6fa6eec6aaec43e52b7e25667f4cd8e15364c6615e2931bf6aa63f748b3498f
4
+ data.tar.gz: c5d0f60a81a653e5109595d60b47a9081b44610a08982c36c65c837ee04d1810
5
5
  SHA512:
6
- metadata.gz: f104f868d4ebc1507c8ca18fd05d0f14995da939f8fb3b07e59cba806181888c2efa54f8ed3f3eaa8b95958b34fb5f9945515552ccff3da54a66c3daf59af244
7
- data.tar.gz: 289c0edb917d19864e56b2064025d949185c81f150b63f12e9b5ad108fd0ac3ee84dbd6e0df68d91cdf8f61def79ab3c8e1ac65a64fb54969d43c2a10eb5c457
6
+ metadata.gz: 1fbc2e4759093153b8e789396b84c3ead44ad8f5db465f094a80ff6c77411e65eb57134c674e7aac83aa0414a890e80454ce3b2090aa0451ef98b6e106634403
7
+ data.tar.gz: b3ae6810500e62178bae6b281a62e683421ac9838c0868e0f8395bddfd8ace992e31eac77f15bf263b5655263b620bae5827689a7ef0a0945eed92f998e36b0f
data/.codeclimate.yml CHANGED
@@ -58,7 +58,7 @@ engines:
58
58
  # Style and quality checks for Ruby code.
59
59
  # Includes support for modern Rubies (2.2+).
60
60
  enabled: true
61
- channel: rubocop-0-59
61
+ channel: rubocop-0-93
62
62
  exclude_paths:
63
63
  - vendor/
64
64
  ratings:
@@ -0,0 +1,41 @@
1
+ name: "Rubocop"
2
+
3
+ on: pull_request
4
+
5
+ jobs:
6
+ rubocop:
7
+ runs-on: ubuntu-latest
8
+ strategy:
9
+ fail-fast: false
10
+
11
+ steps:
12
+ - name: Checkout repository
13
+ uses: actions/checkout@v2
14
+
15
+ # If running on a self-hosted runner, check it meets the requirements
16
+ # listed at https://github.com/ruby/setup-ruby#using-self-hosted-runners
17
+ - name: Set up Ruby
18
+ uses: ruby/setup-ruby@v1
19
+ with:
20
+ ruby-version: 2.6
21
+
22
+ - name: Intall legacy bundler version
23
+ run: gem install bundler -v 1.17.3
24
+
25
+ # This step is not necessary if you add the gem to your Gemfile
26
+ - name: Install Code Scanning integration
27
+ run: bundle _1.17.3_ add code-scanning-rubocop --version 0.4.0 --skip-install
28
+
29
+ - name: Install dependencies
30
+ run: bundle _1.17.3_ install
31
+
32
+ - name: Rubocop run
33
+ run: |
34
+ bash -c "
35
+ bundle exec rubocop --require code_scanning --format CodeScanning::SarifFormatter -o rubocop.sarif
36
+ [[ $? -ne 2 ]]
37
+ "
38
+ - name: Upload Sarif output
39
+ uses: github/codeql-action/upload-sarif@v1
40
+ with:
41
+ sarif_file: rubocop.sarif
data/.gitignore CHANGED
@@ -10,5 +10,4 @@
10
10
  # Ignore IDE specific files
11
11
  .idea/
12
12
 
13
- Gemfile.lock
14
13
  .DS_Store
data/.rubocop.yml CHANGED
@@ -12,7 +12,11 @@ AllCops:
12
12
  - bin/*
13
13
  - db/schema.rb
14
14
  - node_modules/**/*
15
- TargetRubyVersion: 2.5
15
+ NewCops: enable
16
+ TargetRubyVersion: 2.6
17
+
18
+ Layout/LineLength:
19
+ Max: 120
16
20
 
17
21
  Layout/MultilineMethodCallIndentation:
18
22
  EnforcedStyle: indented_relative_to_receiver
@@ -35,16 +39,13 @@ Metrics/ClassLength:
35
39
  Metrics/CyclomaticComplexity:
36
40
  Max: 9
37
41
 
38
- Metrics/LineLength:
39
- Max: 120
40
-
41
42
  Metrics/MethodLength:
42
43
  Max: 50
43
44
 
44
45
  Metrics/PerceivedComplexity:
45
46
  Max: 9
46
47
 
47
- Naming/UncommunicativeMethodParamName:
48
+ Naming/MethodParameterName:
48
49
  MinNameLength: 2
49
50
 
50
51
  Style/AndOr:
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.5.2
1
+ 2.6.5
data/CHANGELOG.md CHANGED
@@ -4,7 +4,35 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
5
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
- ## [Unreleased](https://github.com/learningtapestry/lt-lcms/compare/v0.2.0...HEAD)
7
+ ## [Unreleased](https://github.com/learningtapestry/lcms-engine/compare/v0.4.2...HEAD)
8
+
9
+ ## [0.4.2](https://github.com/learningtapestry/lt-lcms/compare/v0.4.1...v0.4.2) - 2021-06-21
10
+
11
+ ### Fixed
12
+
13
+ - Remove intermediate `encode('ASCII-8BIT')` call for downloaded file content
14
+
15
+ ## [0.4.1](https://github.com/learningtapestry/lt-lcms/compare/v0.4.0...v0.4.1) - 2020-10-19
16
+
17
+ ### Added
18
+
19
+ - Bump lt-google-api to 0.2.1 ([#13](https://github.com/learningtapestry/lt-lcms/pull/13))
20
+
21
+ ## [0.4.0](https://github.com/learningtapestry/lt-lcms/compare/v0.3.1...v0.4.0)
22
+
23
+ ### Added
24
+
25
+ - Add support for Google Shared Drives ([#12](https://github.com/learningtapestry/lt-lcms/pull/12))
26
+
27
+ ## [0.3.0](https://github.com/learningtapestry/lt-lcms/compare/v0.3.0...v0.3.1)
28
+
29
+ ### Fixed
30
+ - Fix the URLs inside links in the downloaded GDoc ([#9](https://github.com/learningtapestry/lt-lcms/pull/9))
31
+
32
+ ## [0.3.0](https://github.com/learningtapestry/lt-lcms/compare/v0.2.0...v0.3.0)
33
+
34
+ ### Added
35
+ - Add DPI param support for Google Drawings [@shlag3n](https://github.com/shlag3n)
8
36
 
9
37
  ## [0.2.0](https://github.com/learningtapestry/lt-lcms/compare/v0.1.1...v0.2.0) - 2020-01-13
10
38
 
data/Gemfile.lock ADDED
@@ -0,0 +1,150 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ lt-lcms (0.4.2)
5
+ google-api-client (~> 0.38)
6
+ httparty (~> 0.18)
7
+ lt-google-api (~> 0.2, >= 0.2.1)
8
+ nokogiri (~> 1.10, >= 1.10.8)
9
+ rubyzip (~> 2)
10
+
11
+ GEM
12
+ remote: https://rubygems.org/
13
+ specs:
14
+ activesupport (6.1.3.2)
15
+ concurrent-ruby (~> 1.0, >= 1.0.2)
16
+ i18n (>= 1.6, < 2)
17
+ minitest (>= 5.1)
18
+ tzinfo (~> 2.0)
19
+ zeitwerk (~> 2.3)
20
+ addressable (2.7.0)
21
+ public_suffix (>= 2.0.2, < 5.0)
22
+ ast (2.4.2)
23
+ childprocess (4.1.0)
24
+ concurrent-ruby (1.1.9)
25
+ declarative (0.0.20)
26
+ faraday (1.4.2)
27
+ faraday-em_http (~> 1.0)
28
+ faraday-em_synchrony (~> 1.0)
29
+ faraday-excon (~> 1.1)
30
+ faraday-net_http (~> 1.0)
31
+ faraday-net_http_persistent (~> 1.1)
32
+ multipart-post (>= 1.2, < 3)
33
+ ruby2_keywords (>= 0.0.4)
34
+ faraday-em_http (1.0.0)
35
+ faraday-em_synchrony (1.0.0)
36
+ faraday-excon (1.1.0)
37
+ faraday-net_http (1.0.1)
38
+ faraday-net_http_persistent (1.1.0)
39
+ gems (1.2.0)
40
+ google-api-client (0.53.0)
41
+ google-apis-core (~> 0.1)
42
+ google-apis-generator (~> 0.1)
43
+ google-apis-core (0.3.0)
44
+ addressable (~> 2.5, >= 2.5.1)
45
+ googleauth (~> 0.14)
46
+ httpclient (>= 2.8.1, < 3.0)
47
+ mini_mime (~> 1.0)
48
+ representable (~> 3.0)
49
+ retriable (>= 2.0, < 4.0)
50
+ rexml
51
+ signet (~> 0.14)
52
+ webrick
53
+ google-apis-discovery_v1 (0.4.0)
54
+ google-apis-core (~> 0.1)
55
+ google-apis-generator (0.3.0)
56
+ activesupport (>= 5.0)
57
+ gems (~> 1.2)
58
+ google-apis-core (~> 0.1)
59
+ google-apis-discovery_v1 (~> 0.0)
60
+ thor (>= 0.20, < 2.a)
61
+ googleauth (0.16.2)
62
+ faraday (>= 0.17.3, < 2.0)
63
+ jwt (>= 1.4, < 3.0)
64
+ memoist (~> 0.16)
65
+ multi_json (~> 1.11)
66
+ os (>= 0.9, < 2.0)
67
+ signet (~> 0.14)
68
+ httparty (0.18.1)
69
+ mime-types (~> 3.0)
70
+ multi_xml (>= 0.5.2)
71
+ httpclient (2.8.3)
72
+ i18n (1.8.10)
73
+ concurrent-ruby (~> 1.0)
74
+ iniparse (1.5.0)
75
+ jwt (2.2.3)
76
+ lt-google-api (0.2.2)
77
+ google-api-client (~> 0.46)
78
+ googleauth (~> 0.14)
79
+ memoist (0.16.2)
80
+ mime-types (3.3.1)
81
+ mime-types-data (~> 3.2015)
82
+ mime-types-data (3.2021.0225)
83
+ mini_mime (1.1.0)
84
+ mini_portile2 (2.5.3)
85
+ minitest (5.14.4)
86
+ multi_json (1.15.0)
87
+ multi_xml (0.6.0)
88
+ multipart-post (2.1.1)
89
+ nokogiri (1.11.7)
90
+ mini_portile2 (~> 2.5.0)
91
+ racc (~> 1.4)
92
+ os (1.1.1)
93
+ overcommit (0.58.0)
94
+ childprocess (>= 0.6.3, < 5)
95
+ iniparse (~> 1.4)
96
+ rexml (~> 3.2)
97
+ parallel (1.20.1)
98
+ parser (3.0.1.1)
99
+ ast (~> 2.4.1)
100
+ public_suffix (4.0.6)
101
+ racc (1.5.2)
102
+ rainbow (3.0.0)
103
+ rake (13.0.3)
104
+ regexp_parser (2.1.1)
105
+ representable (3.1.1)
106
+ declarative (< 0.1.0)
107
+ trailblazer-option (>= 0.1.1, < 0.2.0)
108
+ uber (< 0.2.0)
109
+ retriable (3.1.2)
110
+ rexml (3.2.5)
111
+ rubocop (0.93.1)
112
+ parallel (~> 1.10)
113
+ parser (>= 2.7.1.5)
114
+ rainbow (>= 2.2.2, < 4.0)
115
+ regexp_parser (>= 1.8)
116
+ rexml
117
+ rubocop-ast (>= 0.6.0)
118
+ ruby-progressbar (~> 1.7)
119
+ unicode-display_width (>= 1.4.0, < 2.0)
120
+ rubocop-ast (1.7.0)
121
+ parser (>= 3.0.1.1)
122
+ ruby-progressbar (1.11.0)
123
+ ruby2_keywords (0.0.4)
124
+ rubyzip (2.3.0)
125
+ signet (0.15.0)
126
+ addressable (~> 2.3)
127
+ faraday (>= 0.17.3, < 2.0)
128
+ jwt (>= 1.5, < 3.0)
129
+ multi_json (~> 1.10)
130
+ thor (1.1.0)
131
+ trailblazer-option (0.1.1)
132
+ tzinfo (2.0.4)
133
+ concurrent-ruby (~> 1.0)
134
+ uber (0.1.0)
135
+ unicode-display_width (1.7.0)
136
+ webrick (1.7.0)
137
+ zeitwerk (2.4.2)
138
+
139
+ PLATFORMS
140
+ ruby
141
+
142
+ DEPENDENCIES
143
+ bundler (~> 1.16)
144
+ lt-lcms!
145
+ overcommit (~> 0.57)
146
+ rake (~> 13.0)
147
+ rubocop (~> 0.93.1)
148
+
149
+ BUNDLED WITH
150
+ 1.17.3
@@ -12,8 +12,8 @@ module Lt
12
12
  MIME_TYPE_EXPORT = 'text/plain'
13
13
 
14
14
  def self.file_id_for(url)
15
- url.scan(%r{/d/([^\/]+)/?}).first.try(:first) ||
16
- url.scan(%r{/open\?id=([^\/]+)/?}).first.try(:first)
15
+ url.scan(%r{/d/([^/]+)/?}).first.try(:first) ||
16
+ url.scan(%r{/open\?id=([^/]+)/?}).first.try(:first)
17
17
  end
18
18
 
19
19
  attr_reader :content
@@ -26,10 +26,7 @@ module Lt
26
26
 
27
27
  def download(mime_type: self.class::MIME_TYPE_EXPORT)
28
28
  retry_attempt ||= 0
29
- raw_content = service
30
- .export_file(file_id, mime_type)
31
- .encode('ASCII-8BIT')
32
- .force_encoding('UTF-8')
29
+ raw_content = service.export_file(file_id, mime_type)&.force_encoding('UTF-8')
33
30
  @content =
34
31
  if block_given?
35
32
  yield raw_content
@@ -48,7 +45,9 @@ module Lt
48
45
 
49
46
  def file
50
47
  @file ||= service.get_file(
51
- file_id, fields: 'lastModifyingUser,modifiedTime,name,version'
48
+ file_id,
49
+ fields: 'lastModifyingUser,modifiedTime,name,version',
50
+ supports_all_drives: true
52
51
  )
53
52
  end
54
53
 
@@ -7,7 +7,8 @@ module Lt
7
7
  module Lesson
8
8
  module Downloader
9
9
  class Gdoc < Base
10
- GOOGLE_DRAWING_RE = %r{https?://docs\.google\.com/?[^"]*/drawings/[^"]*}i
10
+ GOOGLE_DRAWING_RE = %r{https?://docs\.google\.com/?[^"]*/drawings/[^"]*}i.freeze
11
+ GOOGLE_URL_RE = %r{https://www\.google\.com/url\?q=([^&]*)&?.*}i.freeze
11
12
  MIME_TYPE = 'application/vnd.google-apps.document'
12
13
  MIME_TYPE_EXPORT = 'text/html'
13
14
 
@@ -16,13 +17,28 @@ module Lt
16
17
  end
17
18
 
18
19
  def download
19
- super(&method(:handle_google_drawings))
20
+ super do |html|
21
+ fix_links handle_google_drawings(html)
22
+ end
20
23
  end
21
24
 
22
25
  private
23
26
 
24
27
  attr_reader :options
25
28
 
29
+ BASE_DPI = 72.0
30
+ private_constant :BASE_DPI
31
+
32
+ def fix_links(html)
33
+ doc = Nokogiri::HTML(html)
34
+ doc.css('a').each do |link|
35
+ next if link['href'].blank?
36
+
37
+ link['href'] = CGI.unescape_html(link['href']).gsub GOOGLE_URL_RE, '\1'
38
+ end
39
+ doc.to_s
40
+ end
41
+
26
42
  def handle_google_drawings(html)
27
43
  return html unless (match = html.scan(GOOGLE_DRAWING_RE))
28
44
 
@@ -30,16 +46,29 @@ module Lt
30
46
  headers = { 'Authorization' => "Bearer #{bearer}" }
31
47
 
32
48
  match.to_a.uniq.each do |url|
33
- response = HTTParty.get CGI.unescapeHTML(url), headers: headers
49
+ upd_url = updated_drawing_url_for(url)
50
+ response = HTTParty.get CGI.unescapeHTML(upd_url), headers: headers
34
51
 
35
52
  next unless response.code == 200
36
53
 
37
- new_src = "data:#{response.content_type};base64, #{Base64.encode64(response)}\" drawing_url=\"#{url}"
54
+ new_src = "data:#{response.content_type};base64, #{Base64.encode64(response)}\" drawing_url=\"#{upd_url}"
38
55
  html = html.gsub(url, new_src)
39
56
  end
40
57
 
41
58
  html
42
59
  end
60
+
61
+ # Update drawing url w/h parameters to download in better quality than default 72 dpi
62
+ def updated_drawing_url_for(url)
63
+ return url unless options[:dpi].present?
64
+
65
+ dpi_ratio = options[:dpi].to_f / BASE_DPI
66
+ uri = URI.parse(url)
67
+ query = CGI.parse(uri.query).transform_values(&:first)
68
+ query['w'] = (query['w'].to_i * dpi_ratio).round.to_s
69
+ query['h'] = (query['h'].to_i * dpi_ratio).round.to_s
70
+ URI::HTTPS.build(host: uri.host, path: uri.path, query: query.to_query).to_s
71
+ end
43
72
  end
44
73
  end
45
74
  end
@@ -12,7 +12,7 @@ module Lt
12
12
  end
13
13
 
14
14
  def pdf_content
15
- service.get_file(file_id, download_dest: StringIO.new).string
15
+ service.get_file(file_id, download_dest: StringIO.new, supports_all_drives: true).string
16
16
  end
17
17
  end
18
18
  end
@@ -19,7 +19,8 @@ module Lt
19
19
  file_metadata,
20
20
  fields: 'id',
21
21
  upload_source: StringIO.new(content),
22
- content_type: content_type
22
+ content_type: content_type,
23
+ supports_all_drives: true
23
24
  )
24
25
  file.id
25
26
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Lt
4
4
  module Lcms
5
- VERSION = '0.2.0'
5
+ VERSION = '0.4.2'
6
6
  end
7
7
  end
data/lt-lcms.gemspec CHANGED
@@ -15,6 +15,8 @@ Gem::Specification.new do |spec| # rubocop:disable Metrics/BlockLength
15
15
  spec.description = ''
16
16
  spec.license = 'Apache-2.0'
17
17
 
18
+ spec.required_ruby_version = '>= 2.6'
19
+
18
20
  # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
19
21
  # to allow pushing to a single host or delete this section to allow pushing to any host.
20
22
  if spec.respond_to?(:metadata)
@@ -31,14 +33,14 @@ Gem::Specification.new do |spec| # rubocop:disable Metrics/BlockLength
31
33
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
32
34
  spec.require_paths = ['lib']
33
35
 
34
- spec.add_dependency 'google-api-client'
35
- spec.add_dependency 'httparty'
36
- spec.add_dependency 'lt-google-api', '~> 0.1'
37
- spec.add_dependency 'rubyzip', '>= 1.3.0'
36
+ spec.add_dependency 'google-api-client', '~> 0.38'
37
+ spec.add_dependency 'httparty', '~> 0.18'
38
+ spec.add_dependency 'lt-google-api', '~> 0.2', '>= 0.2.1'
39
+ spec.add_dependency 'nokogiri', '~> 1.10', '>= 1.10.8'
40
+ spec.add_dependency 'rubyzip', '~> 2'
38
41
 
39
42
  spec.add_development_dependency 'bundler', '~> 1.16'
40
- spec.add_development_dependency 'bundler-audit'
41
- spec.add_development_dependency 'overcommit', '~> 0.49.1'
42
- spec.add_development_dependency 'rake', '~> 10.0'
43
- spec.add_development_dependency 'rubocop', '~> 0.59.2'
43
+ spec.add_development_dependency 'overcommit', '~> 0.57'
44
+ spec.add_development_dependency 'rake', '~> 13.0'
45
+ spec.add_development_dependency 'rubocop', '~> 0.93.1'
44
46
  end
metadata CHANGED
@@ -1,141 +1,153 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lt-lcms
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Kuznetsov
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-01-13 00:00:00.000000000 Z
11
+ date: 2021-06-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-api-client
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '0.38'
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: '0'
26
+ version: '0.38'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: httparty
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '0.18'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '0.18'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: lt-google-api
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.1'
47
+ version: '0.2'
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: 0.2.1
48
51
  type: :runtime
49
52
  prerelease: false
50
53
  version_requirements: !ruby/object:Gem::Requirement
51
54
  requirements:
52
55
  - - "~>"
53
56
  - !ruby/object:Gem::Version
54
- version: '0.1'
57
+ version: '0.2'
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 0.2.1
55
61
  - !ruby/object:Gem::Dependency
56
- name: rubyzip
62
+ name: nokogiri
57
63
  requirement: !ruby/object:Gem::Requirement
58
64
  requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '1.10'
59
68
  - - ">="
60
69
  - !ruby/object:Gem::Version
61
- version: 1.3.0
70
+ version: 1.10.8
62
71
  type: :runtime
63
72
  prerelease: false
64
73
  version_requirements: !ruby/object:Gem::Requirement
65
74
  requirements:
75
+ - - "~>"
76
+ - !ruby/object:Gem::Version
77
+ version: '1.10'
66
78
  - - ">="
67
79
  - !ruby/object:Gem::Version
68
- version: 1.3.0
80
+ version: 1.10.8
69
81
  - !ruby/object:Gem::Dependency
70
- name: bundler
82
+ name: rubyzip
71
83
  requirement: !ruby/object:Gem::Requirement
72
84
  requirements:
73
85
  - - "~>"
74
86
  - !ruby/object:Gem::Version
75
- version: '1.16'
76
- type: :development
87
+ version: '2'
88
+ type: :runtime
77
89
  prerelease: false
78
90
  version_requirements: !ruby/object:Gem::Requirement
79
91
  requirements:
80
92
  - - "~>"
81
93
  - !ruby/object:Gem::Version
82
- version: '1.16'
94
+ version: '2'
83
95
  - !ruby/object:Gem::Dependency
84
- name: bundler-audit
96
+ name: bundler
85
97
  requirement: !ruby/object:Gem::Requirement
86
98
  requirements:
87
- - - ">="
99
+ - - "~>"
88
100
  - !ruby/object:Gem::Version
89
- version: '0'
101
+ version: '1.16'
90
102
  type: :development
91
103
  prerelease: false
92
104
  version_requirements: !ruby/object:Gem::Requirement
93
105
  requirements:
94
- - - ">="
106
+ - - "~>"
95
107
  - !ruby/object:Gem::Version
96
- version: '0'
108
+ version: '1.16'
97
109
  - !ruby/object:Gem::Dependency
98
110
  name: overcommit
99
111
  requirement: !ruby/object:Gem::Requirement
100
112
  requirements:
101
113
  - - "~>"
102
114
  - !ruby/object:Gem::Version
103
- version: 0.49.1
115
+ version: '0.57'
104
116
  type: :development
105
117
  prerelease: false
106
118
  version_requirements: !ruby/object:Gem::Requirement
107
119
  requirements:
108
120
  - - "~>"
109
121
  - !ruby/object:Gem::Version
110
- version: 0.49.1
122
+ version: '0.57'
111
123
  - !ruby/object:Gem::Dependency
112
124
  name: rake
113
125
  requirement: !ruby/object:Gem::Requirement
114
126
  requirements:
115
127
  - - "~>"
116
128
  - !ruby/object:Gem::Version
117
- version: '10.0'
129
+ version: '13.0'
118
130
  type: :development
119
131
  prerelease: false
120
132
  version_requirements: !ruby/object:Gem::Requirement
121
133
  requirements:
122
134
  - - "~>"
123
135
  - !ruby/object:Gem::Version
124
- version: '10.0'
136
+ version: '13.0'
125
137
  - !ruby/object:Gem::Dependency
126
138
  name: rubocop
127
139
  requirement: !ruby/object:Gem::Requirement
128
140
  requirements:
129
141
  - - "~>"
130
142
  - !ruby/object:Gem::Version
131
- version: 0.59.2
143
+ version: 0.93.1
132
144
  type: :development
133
145
  prerelease: false
134
146
  version_requirements: !ruby/object:Gem::Requirement
135
147
  requirements:
136
148
  - - "~>"
137
149
  - !ruby/object:Gem::Version
138
- version: 0.59.2
150
+ version: 0.93.1
139
151
  description: ''
140
152
  email:
141
153
  - alexander@learningtapeestry.com
@@ -145,6 +157,7 @@ extensions: []
145
157
  extra_rdoc_files: []
146
158
  files:
147
159
  - ".codeclimate.yml"
160
+ - ".github/workflows/rubocop-analysis.yml"
148
161
  - ".gitignore"
149
162
  - ".overcommit.yml"
150
163
  - ".rubocop.yml"
@@ -152,6 +165,7 @@ files:
152
165
  - ".ruby-version"
153
166
  - CHANGELOG.md
154
167
  - Gemfile
168
+ - Gemfile.lock
155
169
  - LICENSE
156
170
  - README.md
157
171
  - Rakefile
@@ -173,7 +187,7 @@ licenses:
173
187
  - Apache-2.0
174
188
  metadata:
175
189
  allowed_push_host: https://rubygems.org
176
- post_install_message:
190
+ post_install_message:
177
191
  rdoc_options: []
178
192
  require_paths:
179
193
  - lib
@@ -181,7 +195,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
181
195
  requirements:
182
196
  - - ">="
183
197
  - !ruby/object:Gem::Version
184
- version: '0'
198
+ version: '2.6'
185
199
  required_rubygems_version: !ruby/object:Gem::Requirement
186
200
  requirements:
187
201
  - - ">="
@@ -189,7 +203,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
189
203
  version: '0'
190
204
  requirements: []
191
205
  rubygems_version: 3.0.6
192
- signing_key:
206
+ signing_key:
193
207
  specification_version: 4
194
208
  summary: Contains set of classes to work with Google Docs based lesson objects
195
209
  test_files: []