Skip to content
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

tapioca issue with latest version of google-protobuf blocking Ruby 3.2 upgrade #1410

Closed
spy-v2 bot opened this issue Feb 22, 2023 · 2 comments
Closed
Labels
bug Something isn't working @high

Comments

@spy-v2
Copy link

spy-v2 bot commented Feb 22, 2023

Background

In order to update repo to Ruby 3.2, we need to update a list of gems including google-protobuf to 3.22.0.

Issue

After doing so, when running bin/tapioca dsl for updating DSL or bin/tapioca dsl --verify during build, we got the following exception:

Error: `Tapioca::Dsl::Compilers::Protobuf` failed to generate RBI for `Google::Protobuf::AbstractMessage`
/tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/dsl/compilers/protobuf.rb:148:in `block in decorate': TypeError: Unexpected descriptor class: NilClass (Parallel::UndumpableException)
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/rbi_ext/model.rb:40:in `block in create_class'
	from <internal:kernel>:90:in `tap'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/rbi_ext/model.rb:39:in `create_class'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/rbi_ext/model.rb:16:in `create_path'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/dsl/compilers/protobuf.rb:87:in `decorate'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/dsl/pipeline.rb:170:in `block in rbi_for_constant'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/dsl/pipeline.rb:166:in `each'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/dsl/pipeline.rb:166:in `rbi_for_constant'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/dsl/pipeline.rb:75:in `block in run'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:587:in `call_with_index'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:557:in `process_incoming_jobs'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:537:in `block in worker'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:528:in `fork'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:528:in `worker'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:519:in `block in create_workers'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:518:in `each'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:518:in `each_with_index'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:518:in `create_workers'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:457:in `work_in_processes'
	from /tmp/bundle/ruby/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:294:in `map'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/executor.rb:31:in `run_in_parallel'
	from /tmp/bundle/ruby/3.2.0/gems/sorbet-runtime-0.5.10679/lib/types/private/methods/_methods.rb:277:in `bind_call'
	from /tmp/bundle/ruby/3.2.0/gems/sorbet-runtime-0.5.10679/lib/types/private/methods/_methods.rb:277:in `block in _on_method_added'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/dsl/pipeline.rb:74:in `run'
	from /tmp/bundle/ruby/3.2.0/gems/sorbet-runtime-0.5.10679/lib/types/private/methods/_methods.rb:277:in `bind_call'
	from /tmp/bundle/ruby/3.2.0/gems/sorbet-runtime-0.5.10679/lib/types/private/methods/_methods.rb:277:in `block in _on_method_added'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/commands/dsl.rb:121:in `execute'
	from /tmp/bundle/ruby/3.2.0/gems/sorbet-runtime-0.5.10679/lib/types/private/methods/_methods.rb:277:in `bind_call'
	from /tmp/bundle/ruby/3.2.0/gems/sorbet-runtime-0.5.10679/lib/types/private/methods/_methods.rb:277:in `block in _on_method_added'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/cli.rb:159:in `block in dsl'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca.rb:23:in `block in silence_warnings'
	from /usr/local/ruby/lib/ruby/3.2.0/rubygems/user_interaction.rb:46:in `use_ui'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca.rb:22:in `silence_warnings'
	from /tmp/bundle/ruby/3.2.0/gems/sorbet-runtime-0.5.10679/lib/types/private/methods/_methods.rb:277:in `bind_call'
	from /tmp/bundle/ruby/3.2.0/gems/sorbet-runtime-0.5.10679/lib/types/private/methods/_methods.rb:277:in `block in _on_method_added'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/lib/tapioca/cli.rb:155:in `dsl'
	from /tmp/bundle/ruby/3.2.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
	from /tmp/bundle/ruby/3.2.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
	from /tmp/bundle/ruby/3.2.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
	from /tmp/bundle/ruby/3.2.0/gems/thor-1.2.1/lib/thor/base.rb:485:in `start'
	from /tmp/bundle/ruby/3.2.0/gems/tapioca-0.11.0/exe/tapioca:25:in `<top (required)>'
	from bin/tapioca:29:in `load'
	from bin/tapioca:29:in `<main>'
@spy-v2 spy-v2 bot added bug Something isn't working @high labels Feb 22, 2023
@dirceu dirceu closed this as completed in c09b0ea Feb 23, 2023
@eddiecheung-shopify
Copy link

@dirceu Thanks for addressing this issue. Just want to know when will this new version of tapioca be ready.

@dirceu
Copy link
Contributor

dirceu commented Feb 23, 2023

we're working on releasing it today @eddiecheung-shopify!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working @high
Projects
None yet
Development

No branches or pull requests

2 participants