diff --git a/.github/workflows/ruby_h_to_go.yml b/.github/workflows/ruby_h_to_go.yml index 1838ad4f..29d530c0 100644 --- a/.github/workflows/ruby_h_to_go.yml +++ b/.github/workflows/ruby_h_to_go.yml @@ -61,8 +61,6 @@ jobs: - run: sudo apt-get update - run: sudo apt-get install -y universal-ctags - - run: go install golang.org/x/tools/cmd/goimports@latest - - run: bundle exec rspec - name: Slack Notification (not success) diff --git a/_tools/ruby_h_to_go/README.md b/_tools/ruby_h_to_go/README.md index b5860737..998e00d5 100644 --- a/_tools/ruby_h_to_go/README.md +++ b/_tools/ruby_h_to_go/README.md @@ -7,8 +7,6 @@ Convert Ruby C function definition in `ruby.h` to Go source and dump to `dist/`. * ctags * macOS: `brew install universal-ctags` * Ubuntu: `apt-get install -y universal-ctags` -* [goimports](https://pkg.go.dev/golang.org/x/tools/cmd/goimports) - * `go install golang.org/x/tools/cmd/goimports@latest` ## Usage Output binding to [/ruby/](/ruby/) using Ruby available in current context **(recommended)** diff --git a/_tools/ruby_h_to_go/lib/ruby_h_to_go/cli.rb b/_tools/ruby_h_to_go/lib/ruby_h_to_go/cli.rb index 430b120d..8210849e 100644 --- a/_tools/ruby_h_to_go/lib/ruby_h_to_go/cli.rb +++ b/_tools/ruby_h_to_go/lib/ruby_h_to_go/cli.rb @@ -119,11 +119,8 @@ def copy_go_files end def remove_unused_imports - ret = system("which goimports") - raise "goimports isn't installed. Run `go install golang.org/x/tools/cmd/goimports@latest`" unless ret - Dir.chdir(dist_dir) do - system("goimports -w *.go", exception: true) + system("go tool goimports -w *.go", exception: true) end end diff --git a/_tools/ruby_h_to_go/spec/ruby_h_to_go/cli_spec.rb b/_tools/ruby_h_to_go/spec/ruby_h_to_go/cli_spec.rb index ccf0f8fa..e1c27f1d 100644 --- a/_tools/ruby_h_to_go/spec/ruby_h_to_go/cli_spec.rb +++ b/_tools/ruby_h_to_go/spec/ruby_h_to_go/cli_spec.rb @@ -19,6 +19,10 @@ before do FileUtils.cp(File.join(project_root_dir, "go.mod"), temp_dir) + + Dir.chdir(temp_dir) do + system("go mod tidy", exception: true) + end end it { expect { subject }.not_to raise_error } diff --git a/go.mod b/go.mod index 1fd39fc1..1249e00e 100644 --- a/go.mod +++ b/go.mod @@ -2,10 +2,19 @@ module github.com/ruby-go-gem/go-gem-wrapper go 1.24 +toolchain go1.25.0 + require github.com/stretchr/testify v1.11.1 require ( github.com/davecgh/go-spew v1.1.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect + golang.org/x/mod v0.33.0 // indirect + golang.org/x/sync v0.19.0 // indirect + golang.org/x/sys v0.41.0 // indirect + golang.org/x/telemetry v0.0.0-20260209163413-e7419c687ee4 // indirect + golang.org/x/tools v0.42.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) + +tool golang.org/x/tools/cmd/goimports diff --git a/go.sum b/go.sum index c4c1710c..b1362161 100644 --- a/go.sum +++ b/go.sum @@ -1,9 +1,21 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= +golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= +golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= +golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= +golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= +golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k= +golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +golang.org/x/telemetry v0.0.0-20260209163413-e7419c687ee4 h1:bTLqdHv7xrGlFbvf5/TXNxy/iUwwdkjhqQTJDjW7aj0= +golang.org/x/telemetry v0.0.0-20260209163413-e7419c687ee4/go.mod h1:g5NllXBEermZrmR51cJDQxmJUHUOfRAaNyWBM+R+548= +golang.org/x/tools v0.42.0 h1:uNgphsn75Tdz5Ji2q36v/nsFSfR/9BRFvqhGBaJGd5k= +golang.org/x/tools v0.42.0/go.mod h1:Ma6lCIwGZvHK6XtgbswSoWroEkhugApmsXyrUmBhfr0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=