Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

⬆️ kettle-dev v1.1.9 #669

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
pboling merged 6 commits into main from kettle-dev-v1.1.9
Sep 8, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .aiignore
View file Open in desktop
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# An .aiignore file follows the same syntax as a .gitignore file.
# .gitignore documentation: https://git-scm.com/docs/gitignore

# you can ignore files
.DS_Store
*.log
*.tmp

# or folders
.devcontainer/
.qlty/
.yardoc/
dist/
build/
out/
coverage/
docs/
pkg/
results/
15 changes: 14 additions & 1 deletion .env.local.example
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,17 @@ export AUTOGEN_FIXTURE_CLEANUP=false # autogenerated gem fixture cleanup after e
export GIT_HOOK_FOOTER_APPEND=false
export GIT_HOOK_FOOTER_APPEND_DEBUG=false
export GIT_HOOK_FOOTER_SENTINEL="⚡️ A message from a fellow meat-based-AI ⚡️"
export GITHUB_TOKEN=<your GH PAT, for the GHA console bin/rake ci:act - DO NOT EVER COMMIT IT>

# Tokens used by ci:act and CI helpers for reading workflow/pipeline status via APIs
# GitHub (either GITHUB_TOKEN or GH_TOKEN will be used; fine-grained recommended)
# - Scope/permissions: For fine-grained tokens, grant repository access (Read) and Actions: Read
# - For classic tokens, public repos need no scopes; private repos typically require repo
export GITHUB_TOKEN=<your GH token for GHA status; NEVER COMMIT>
# Alternatively:
# export GH_TOKEN=<your GH token>

# GitLab (either GITLAB_TOKEN or GL_TOKEN will be used)
# - Scope: read_api is sufficient to read pipelines
export GITLAB_TOKEN=<your GitLab token for pipeline status; NEVER COMMIT>
# Alternatively:
# export GL_TOKEN=<your GitLab token>
39 changes: 23 additions & 16 deletions .git-hooks/commit-msg
View file Open in desktop
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
#!/usr/bin/env ruby
# vim: set syntax=ruby

ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)

require "rubygems"
require "bundler/setup"

# External gems
require "gitmoji/regex"
# Do not rely on Bundler; allow running outside a Bundler context
begin
require "rubygems"
rescue LoadError
# continue
end

full_text = File.read(ARGV[0])
# Is the first character a GitMoji?
gitmoji_index = full_text =~ Gitmoji::Regex::REGEX
if gitmoji_index == 0
exit 0
else
denied = <<EOM
begin
# External gems
require "gitmoji/regex"

full_text = File.read(ARGV[0])
# Is the first character a GitMoji?
gitmoji_index = full_text =~ Gitmoji::Regex::REGEX
if gitmoji_index == 0
exit 0
else
denied = <<EOM
Oh snap, think again...

______ _______ ___ _______ _______ _______ _______ ______ __
Expand All @@ -36,6 +39,10 @@ Must match: #{Gitmoji::Regex::REGEX.to_s}
Example: git commit -m "✨ My excellent new feature"

EOM
puts denied
exit 1
puts denied
exit 1
end
rescue LoadError => e
warn("gitmoji-regex gem not found: #{e.class}: #{e.message}.\n\tSkipping gitmoji check and allowing commit to proceed.\n\tRecommendation: add 'gitmoji-regex' to your development dependencies to enable this check.")
exit 0
end
3 changes: 1 addition & 2 deletions .git-hooks/prepare-commit-msg
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@ PROJECT_ROOT="$(CDPATH= cd -- "$(dirname -- "0ドル")"/.. && pwd)"
# One of the things .envrc needs to do is add $PROJECT_ROOT/bin/ to the path.
# You should have this line at the top of .envrc
# PATH_add bin
# NOTE: this project needs to also add exe as well,
# but other libraries won't generally need to do that.
# NOTE: If this project ships exe scripts it should also add that.
if command -v direnv >/dev/null 2>&1; then
exec direnv exec "$PROJECT_ROOT" "kettle-commit-msg" "$@"
else
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/current.yml
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -65,9 +65,11 @@ jobs:

steps:
- name: Checkout
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
uses: actions/checkout@v5

- name: Setup Ruby & RubyGems
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
Expand All @@ -79,8 +81,11 @@ jobs:
# We need to do this first to get appraisal installed.
# NOTE: This does not use the primary Gemfile at all.
- name: Install Root Appraisal
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
run: bundle
- name: Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
- name: Tests for ${{ matrix.ruby }}@${{ matrix.appraisal }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -29,18 +29,19 @@ concurrency:

jobs:
test:
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}${{ matrix.name_extra || '' }}
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }}.gemfile
strategy:
fail-fast: true
matrix:
include:
# Ruby 3.4
- ruby: "ruby"
appraisal: "current-runtime-heads"
appraisal: "dep-heads"
exec_cmd: "rake test"
gemfile: "Appraisal.root"
rubygems: latest
Expand All @@ -50,25 +51,27 @@ jobs:
# (according to documentation: targets Ruby 3.3 compatibility)
# (according to runtime: targets Ruby 3.2 compatibility)
- ruby: "truffleruby"
appraisal: "current-runtime-heads"
appraisal: "dep-heads"
exec_cmd: "rake test"
gemfile: "Appraisal.root"
rubygems: default
bundler: default

# jruby-10.0 (targets Ruby 3.4 compatibility)
- ruby: "jruby"
appraisal: "current-runtime-heads"
appraisal: "dep-heads"
exec_cmd: "rake test"
gemfile: "Appraisal.root"
rubygems: default
bundler: default

steps:
- name: Checkout
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
uses: actions/checkout@v5

- name: Setup Ruby & RubyGems
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
Expand All @@ -79,9 +82,24 @@ jobs:
# Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
# We need to do this first to get appraisal installed.
# NOTE: This does not use the primary Gemfile at all.
- name: Install Root Appraisal
- name: "Install Root Appraisal"
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
run: bundle
- name: Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}

- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
id: bundleAttempt1
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: ${{ steps.bundleAttempt1.outcome == 'failure' && !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
id: bundleAttempt2
run: bundle exec appraisal ${{ matrix.appraisal }} bundle

- name: Tests for ${{ matrix.ruby }}@${{ matrix.appraisal }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
9 changes: 7 additions & 2 deletions .github/workflows/heads.yml
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,11 @@ jobs:

steps:
- name: Checkout
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
uses: actions/checkout@v5

- name: Setup Ruby & RubyGems
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
Expand All @@ -78,20 +80,23 @@ jobs:
# We need to do this first to get appraisal installed.
# NOTE: This does not use the primary Gemfile at all.
- name: "Install Root Appraisal"
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
run: bundle

- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
id: bundleAttempt1
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
# Continue to the next step on failure
continue-on-error: true

# Effectively an automatic retry of the previous step.
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
id: bundleAttempt2
# If bundleAttempt1 failed, try again here; Otherwise skip.
if: steps.bundleAttempt1.outcome == 'failure'
if: ${{ steps.bundleAttempt1.outcome == 'failure' && !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
id: bundleAttempt2
run: bundle exec appraisal ${{ matrix.appraisal }} bundle

- name: Tests for ${{ matrix.ruby }}@${{ matrix.appraisal }} via ${{ matrix.exec_cmd }}
if: ${{ !(env.ACT && startsWith(matrix.ruby, 'jruby')) }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
5 changes: 5 additions & 0 deletions .github/workflows/jruby.yml
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,11 @@ jobs:

steps:
- name: Checkout
if: ${{ !env.ACT }}
uses: actions/checkout@v5

- name: Setup Ruby & RubyGems
if: ${{ !env.ACT }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
Expand All @@ -60,8 +62,11 @@ jobs:
# We need to do this first to get appraisal installed.
# NOTE: This does not use the primary Gemfile at all.
- name: Install Root Appraisal
if: ${{ !env.ACT }}
run: bundle
- name: Appraisal for ${{ matrix.appraisal }}
if: ${{ !env.ACT }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
if: ${{ !env.ACT }}
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
1 change: 1 addition & 0 deletions .gitignore
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Appraisal.*.gemfile.lock
/coverage/
/spec/reports/
/results/
.output.txt

# Documentation
/.yardoc/
Expand Down
Loading
Loading

AltStyle によって変換されたページ (->オリジナル) /