roda-tags 0.1.1 → 0.2.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
- SHA1:
3
- metadata.gz: ebccb23d95fa9ec3d66cc17bb37eff691b99636d
4
- data.tar.gz: d818548ad0699a72f7683d6d536f3c77f21aeb4b
2
+ SHA256:
3
+ metadata.gz: aa178f86ef46ab232994a1dfd3c258af3e17b0c4fea89306f0ea25a13da0b0df
4
+ data.tar.gz: 85182aa12331f7cf769118b18559e5c2c6163df4bb174c29faf3eb49639515fd
5
5
  SHA512:
6
- metadata.gz: e4c391ba728a0dc9848d143591ccb9f64bccb735176992519ee689b1922f8d45bfe9c7a49591e11b511603ff924a6a7806931fd1be947eaf77c622d6b5ef8e66
7
- data.tar.gz: b1b41384c842744c45483715e3fda84455dda1c17db71e5757ae92802d708c404007ffe973efb71ad200391c748fcb3b58c50773987701a0cded46dc9354e89f
6
+ metadata.gz: 1520651d453044cc24d6755621befd207294ce41f682c27b93b53df7a56d46ab83a5d0e8a1a71e4559695770cdef5050c3814d8ebf160ce50c222776b92c3bbb
7
+ data.tar.gz: 9c64e4afc3c3cae26a1a58091576ca22130429133decaf808d83907238404c56b0c10e9f9a2115df51df1e042de95910a6637195fe96121edb2fce316c553e14
@@ -0,0 +1,24 @@
1
+ # To get started with Dependabot version updates, you'll need to specify which
2
+ # package ecosystems to update and where the package manifests are located.
3
+ # Please see the documentation for all configuration options:
4
+ # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5
+
6
+ version: 2
7
+ updates:
8
+ - package-ecosystem: "github-actions"
9
+ directory: "/"
10
+ schedule:
11
+ interval: "weekly"
12
+ day: "saturday"
13
+ time: "21:30"
14
+ timezone: Asia/Kuala_Lumpur
15
+ - package-ecosystem: "bundler" # See documentation for possible values
16
+ directory: "/" # Location of package manifests
17
+ groups:
18
+ patch-and-minor-dependencies:
19
+ update-types: ["patch", "minor"]
20
+ schedule:
21
+ interval: "weekly"
22
+ day: "saturday"
23
+ time: "21:30"
24
+ timezone: Asia/Kuala_Lumpur
@@ -0,0 +1,45 @@
1
+ # This workflow uses actions that are not certified by GitHub.
2
+ # They are provided by a third-party and are governed by
3
+ # separate terms of service, privacy policy, and support
4
+ # documentation.
5
+
6
+ # GitHub recommends pinning actions to a commit SHA.
7
+ # To get a newer version, you will need to update the SHA.
8
+ # You can also reference a tag or branch, but the action may change without warning.
9
+
10
+ name: Ruby
11
+
12
+ on:
13
+ push:
14
+ branches: ["master", "ruby-v3x"]
15
+ pull_request:
16
+ branches: ["master", "ruby-v3x"]
17
+
18
+ permissions:
19
+ contents: read
20
+
21
+ jobs:
22
+ lint_and_test:
23
+ env:
24
+ RACK_ENV: test
25
+ COVERAGE: "true"
26
+ strategy:
27
+ matrix:
28
+ os: [ubuntu-latest, macos-latest]
29
+ ruby-version: ["3.0", "3.1", "3.2", "3.3"]
30
+ # Disable JRuby for now
31
+ # ruby-version: ["3.0", "3.1", "3.2", "3.3", "jruby-9.4"]
32
+ runs-on: ${{ matrix.os }}
33
+ timeout-minutes: 3
34
+
35
+ steps:
36
+ - uses: actions/checkout@v4
37
+ - name: Set up Ruby
38
+ # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
39
+ # change this to (see https://github.com/ruby/setup-ruby#versioning):
40
+ uses: ruby/setup-ruby@v1
41
+ with:
42
+ ruby-version: ${{ matrix.ruby-version }}
43
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
44
+ - name: Run rake (lint and test)
45
+ run: bundle exec rake
data/.gitignore CHANGED
@@ -1,9 +1,9 @@
1
1
  /.bundle/
2
2
  /.yardoc
3
- /Gemfile.lock
4
3
  /_yardoc/
5
4
  /coverage/
6
5
  /doc/
7
6
  /pkg/
8
7
  /spec/reports/
9
8
  /tmp/
9
+ /Gemfile.lock
data/.rubocop.yml ADDED
@@ -0,0 +1,33 @@
1
+ inherit_from: .rubocop_todo.yml
2
+
3
+ require:
4
+ - rubocop-minitest
5
+ - rubocop-performance
6
+ - rubocop-rake
7
+
8
+ # The behavior of RuboCop can be controlled via the .rubocop.yml
9
+ # configuration file. It makes it possible to enable/disable
10
+ # certain cops (checks) and to alter their behavior if they accept
11
+ # any parameters. The file can be placed either in your home
12
+ # directory or in some project directory.
13
+ #
14
+ # RuboCop will start looking for the configuration file in the directory
15
+ # where the inspected file is and continue its way up to the root directory.
16
+ #
17
+ # See https://docs.rubocop.org/rubocop/configuration
18
+
19
+ AllCops:
20
+ TargetRubyVersion: "3.0"
21
+ NewCops: enable
22
+
23
+ Style/StringLiterals:
24
+ EnforcedStyle: single_quotes
25
+
26
+ Style/StringLiteralsInInterpolation:
27
+ EnforcedStyle: double_quotes
28
+
29
+ Layout/LineLength:
30
+ Enabled: true
31
+ Max: 100
32
+ Exclude:
33
+ - "**/*.gemspec"
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,7 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config`
3
+ # on 2024-11-11 09:26:46 UTC using RuboCop version 1.68.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
data/CODE_OF_CONDUCT.md CHANGED
@@ -1,24 +1,30 @@
1
1
  # Contributor Code of Conduct
2
2
 
3
- As contributors and maintainers of this project, we pledge to respect all people who contribute
4
- through reporting issues, posting feature requests, updating documentation, submitting pull
5
- requests or patches, and other activities.
3
+ As contributors and maintainers of this project, we pledge to respect all
4
+ people who contribute through reporting issues, posting feature requests,
5
+ updating documentation, submitting pull requests or patches, and other
6
+ activities.
6
7
 
7
- We are committed to making participation in this project a harassment-free experience for everyone,
8
- regardless of level of experience, gender, gender identity and expression, sexual orientation,
9
- disability, personal appearance, body size, race, ethnicity, age, or religion.
8
+ We are committed to making participation in this project a harassment-free
9
+ experience for everyone, regardless of level of experience, gender, gender
10
+ identity and expression, sexual orientation, disability, personal appearance,
11
+ body size, race, ethnicity, age, or religion.
10
12
 
11
- Examples of unacceptable behavior by participants include the use of sexual language or imagery,
12
- derogatory comments or personal attacks, trolling, public or private harassment, insults, or other
13
- unprofessional conduct.
13
+ Examples of unacceptable behavior by participants include the use of sexual
14
+ language or imagery, derogatory comments or personal attacks, trolling,
15
+ public or private harassment, insults, or other unprofessional conduct.
14
16
 
15
- Project maintainers have the right and responsibility to remove, edit, or reject comments, commits,
16
- code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct.
17
- Project maintainers who do not follow the Code of Conduct may be removed from the project team.
17
+ Project maintainers have the right and responsibility to remove, edit, or
18
+ reject comments, commits, code, wiki edits, issues, and other contributions
19
+ that are not aligned to this Code of Conduct.
18
20
 
19
- Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an
20
- issue or contacting one or more of the project maintainers.
21
+ Project maintainers who do not follow the Code of Conduct may be removed from
22
+ the project team.
21
23
 
22
- This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org),
23
- version 1.0.0, available at [http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/)
24
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
25
+ reported by opening an issue or contacting one or more of the project
26
+ maintainers.
24
27
 
28
+ This Code of Conduct is adapted from the
29
+ [Contributor Covenant](http://contributor-covenant.org), version 1.0.0,
30
+ available at [http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/)
data/Gemfile CHANGED
@@ -1,4 +1,90 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in roda-tags.gemspec
4
6
  gemspec
7
+
8
+ # adding these to silence warnings for Ruby v3.5
9
+ gem 'base64'
10
+ gem 'fiddle'
11
+ gem 'logger'
12
+ gem 'ostruct'
13
+
14
+ group :development do
15
+ # A command line tool to easily handle events on file system modifications
16
+ # DOCS: https://github.com/guard/guard
17
+ gem 'guard'
18
+ # automatically runs your tests with Minitest framework
19
+ # DOCS: https://github.com/guard/guard-minitest
20
+ gem 'guard-minitest'
21
+
22
+ # Ruby testing framework
23
+ # DOCS: https://github.com/seattlerb/minitest
24
+ gem 'minitest', '~> 5.7', '>= 5.7.0'
25
+ # Minitest assertions testing HTML tags
26
+ # DOCS: https://github.com/kematzy/minitest-have_tag
27
+ gem 'minitest-have_tag', '~> 0.2.1', '>= 0.2.0'
28
+ # Around and before_all/after_all hooks for Minitest
29
+ # DOCS: https://github.com/jeremyevans/minitest-hooks
30
+ gem 'minitest-hooks', '~> 1.1', '>= 1.1.0'
31
+ # Colored red/green output for Minitest
32
+ # DOCS: https://github.com/blowmage/minitest-rg
33
+ gem 'minitest-rg', '~> 5.3', '>= 5.3.0'
34
+
35
+ # Ruby HTML/XML parser and document traversal helper
36
+ # DOCS: https://github.com/sparklemotion/nokogiri
37
+ gem 'nokogiri', '~> 1.16.7', '>= 1.16.0'
38
+ # Simple testing API for Rack based applications
39
+ # DOCS: https://github.com/rack/rack-test
40
+ gem 'rack-session', '~> 2.0.0', '>= 2.0.0'
41
+ # Simple testing API for Rack based applications
42
+ # DOCS: https://github.com/rack/rack-test
43
+ gem 'rack-test', '~> 2.1.0', '>= 2.1.0'
44
+
45
+ # Ruby build program with capabilities similar to Make
46
+ # DOCS: https://github.com/ruby/rake
47
+ gem 'rake', '~> 13.0'
48
+
49
+ # Ruby static code analyzer and formatter
50
+ # DOCS: https://github.com/rubocop/rubocop
51
+ gem 'rubocop', '~> 1.31', require: false
52
+ # Code style checking for Minitest files
53
+ # DOCS: https://github.com/rubocop/rubocop-minitest
54
+ gem 'rubocop-minitest', require: false
55
+ # Performance optimization analysis for your projects
56
+ # DOCS: https://github.com/rubocop/rubocop-performance
57
+ gem 'rubocop-performance', require: false
58
+ # A RuboCop extension focused on enforcing Rake best practices and coding conventions
59
+ # DOCS: https://github.com/rubocop/rubocop-rake
60
+ gem 'rubocop-rake', require: false
61
+
62
+ # Code coverage for Ruby
63
+ # DOCS: https://github.com/simplecov-ruby/simplecov
64
+ gem 'simplecov'
65
+
66
+ # A Ruby language server that provides intellisense, code completion, and inline documentation
67
+ # DOCS: https://github.com/castwide/solargraph
68
+ gem 'solargraph'
69
+ end
70
+
71
+ # Linux-specific gems
72
+ install_if -> { RUBY_PLATFORM.include?('linux') } do
73
+ # Linux inotify wrapper for Ruby
74
+ # DOCS: https://github.com/guard/rb-inotify
75
+ gem 'rb-inotify', require: false
76
+ end
77
+
78
+ # macOS-specific gems
79
+ install_if -> { RUBY_PLATFORM.include?('darwin') } do
80
+ # FSEvents API with signals handled for macOS
81
+ # DOCS: https://github.com/thibaudgg/rb-fsevent
82
+ gem 'rb-fsevent', require: false
83
+ end
84
+
85
+ # Windows-specific gems
86
+ install_if -> { Gem.win_platform? } do
87
+ # Windows Directory Monitor - A library which can be used to monitor directories for changes
88
+ # DOCS: https://github.com/Maher4Ever/wdm
89
+ gem 'wdm'
90
+ end
data/Guardfile ADDED
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ # A sample Guardfile
4
+ # More info at https://github.com/guard/guard#readme
5
+
6
+ ## Uncomment and set this to only include directories you want to watch
7
+ # directories %w(app lib config test spec features) \
8
+ # .select{|d| Dir.exist?(d) ? d : UI.warning("Directory #{d} does not exist")}
9
+
10
+ ## Note: if you are using the `directories` clause above and you are not
11
+ ## watching the project directory ('.'), then you will want to move
12
+ ## the Guardfile to a watched dir and symlink it back, e.g.
13
+ #
14
+ # $ mkdir config
15
+ # $ mv Guardfile config/
16
+ # $ ln -s config/Guardfile .
17
+ #
18
+ # and, you'll have to watch "config/Guardfile" instead of "Guardfile"
19
+
20
+ guard :minitest do
21
+ # with Minitest::Spec
22
+ watch(%r{^spec/(.*)_spec\.rb$})
23
+ watch(%r{^lib/(.+)\.rb$}) { 'spec' }
24
+ watch(%r{^spec/spec_helper\.rb$}) { 'spec' }
25
+ end