Skip to content

THRIFT-6128: Exclude development files from the Ruby gem - #3684

Open
kpumuk wants to merge 1 commit into
apache:masterfrom
kpumuk:rb-gem-runtime-files
Open

THRIFT-6128: Exclude development files from the Ruby gem#3684
kpumuk wants to merge 1 commit into
apache:masterfrom
kpumuk:rb-gem-runtime-files

Conversation

@kpumuk

@kpumuk kpumuk commented Jul 28, 2026

Copy link
Copy Markdown
Member

The Ruby gem previously packaged spec/ directly and added test/, spec/, and benchmark/ through the obsolete test_files attribute. This change explicitly includes the Ruby runtime and native-extension sources, while retaining the README as RDoc input.

See rubygems/guides#90 for more information.

File list difference

I built gems from the pre-change and current gemspecs, then compared their data.tar.gz file lists:

diff -u \
  <(tar -xOf thrift-before.gem data.tar.gz | tar -tzf -) \
  <(tar -xOf thrift-after.gem data.tar.gz | tar -tzf -)
--- before
+++ after
@@ -1,9 +1,4 @@
 README.md
-benchmark/Benchmark.thrift
-benchmark/benchmark.rb
-benchmark/client.rb
-benchmark/server.rb
-benchmark/thin_server.rb
 ext/binary_protocol_accelerated.c
 ext/binary_protocol_accelerated.h
 ext/bytes.c
@@ -65,67 +60,3 @@
 lib/thrift/types.rb
 lib/thrift/union.rb
 lib/thrift/uuid.rb
-spec/BaseService.thrift
-spec/ExtendedService.thrift
-spec/Referenced.thrift
-spec/ThriftNamespacedSpec.thrift
-spec/ThriftSpec.thrift
-spec/base_protocol_spec.rb
-spec/base_transport_spec.rb
-spec/binary_protocol_accelerated_spec.rb
-spec/binary_protocol_spec.rb
-spec/binary_protocol_spec_shared.rb
-spec/bytes_spec.rb
-spec/client_spec.rb
-spec/compact_protocol_spec.rb
-spec/constants_demo_spec.rb
-spec/exception_spec.rb
-spec/flat_spec.rb
-spec/header_protocol_spec.rb
-spec/header_transport_spec.rb
-spec/http_client_spec.rb
-spec/json_protocol_spec.rb
-spec/multiplexed_processor_spec.rb
-spec/multiplexed_protocol_spec.rb
-spec/namespaced_spec.rb
-spec/nonblocking_server_spec.rb
-spec/processor_spec.rb
-spec/protocol_decorator_spec.rb
-spec/rack_application_spec.rb
-spec/recursion_depth_spec.rb
-spec/serializer_spec.rb
-spec/server_socket_spec.rb
-spec/server_spec.rb
-spec/socket_spec.rb
-spec/socket_spec_shared.rb
-spec/spec_helper.rb
-spec/ssl_server_socket_spec.rb
-spec/ssl_socket_spec.rb
-spec/struct_nested_containers_spec.rb
-spec/struct_spec.rb
-spec/support/header_protocol_helper.rb
-spec/thin_http_server_spec.rb
-spec/types_spec.rb
-spec/union_spec.rb
-spec/unix_socket_spec.rb
-spec/uuid_validation_spec.rb
-test/fuzz/Makefile.am
-test/fuzz/README.md
-test/fuzz/fuzz_common.rb
-test/fuzz/fuzz_parse_binary_protocol.rb
-test/fuzz/fuzz_parse_binary_protocol_accelerated.rb
-test/fuzz/fuzz_parse_binary_protocol_accelerated_harness.rb
-test/fuzz/fuzz_parse_binary_protocol_harness.rb
-test/fuzz/fuzz_parse_compact_protocol.rb
-test/fuzz/fuzz_parse_compact_protocol_harness.rb
-test/fuzz/fuzz_parse_json_protocol.rb
-test/fuzz/fuzz_parse_json_protocol_harness.rb
-test/fuzz/fuzz_roundtrip_binary_protocol.rb
-test/fuzz/fuzz_roundtrip_binary_protocol_harness.rb
-test/fuzz/fuzz_roundtrip_json_protocol.rb
-test/fuzz/fuzz_roundtrip_json_protocol_harness.rb
-test/fuzz/fuzz_tracer.rb
  • Did you create an Apache Jira ticket? (THRIFT-6128)
  • If a ticket exists: Does your pull request title follow the pattern "THRIFT-NNNN: describe my issue"?
  • Did you squash your changes to a single commit? (not required, but preferred)
  • Did you do your best to avoid breaking changes? If one was needed, did you label the Jira ticket with "Breaking-Change"?
  • This change involves code, so [skip ci] does not apply.

Client: rb

Co-Authored-By: OpenAI Codex (GPT-5.6) <codex@openai.com>
Copilot AI review requested due to automatic review settings July 28, 2026 22:37

This comment was marked as spam.

@mergeable mergeable Bot added the ruby Pull requests that update Ruby code label Jul 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ruby Pull requests that update Ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants