Release History for gapic-generator
0.47.2 / 2025-10-22
- Fix: Deprecate credentials via string or hash
0.47.1 / 2025-09-11
No significant changes
0.47.0 / 2025-09-08
- Feature: update gapic-common for generated libraries to 1.2
0.46.1 / 2025-08-25
- Fix: better compare for mixin package includes
0.46.0 / 2025-08-13
- Feature: use HTTP binding configuration class from new gapic-common
- Fix: Remove unnecessary services_pb import from tests
- Fix: no longer generate cross-package references for mixin objects
- Feature: add support for multiple patterns with same arguments
0.45.4 / 2025-06-26
- Fix: docs for oneof parameters
- Fix: remove require when rest operations are not generated
0.45.3 / 2025-06-21
- Fix: correct pagination heuristic for Compute
- Fix: add libyaml to checks and configure for the prebuilt binary
- Fix: update Ruby prebuilt binary (version 3.4.3)
0.45.2 / 2025-06-04
- Fix: update Ruby prebuilt binary, version 3.4.3
0.45.1 / 2025-05-01
No significant changes
0.45.0 / 2025-05-01
- Feature: Updated rails to 8.0
- Feature: Update protobuf to 4.30
- Feature: Update common dependencies for generated clients
- Fix: update Ruby prebuilt binary, version 3.4.3
0.44.0 / 2025-04-30
- Feature: Update Ruby for the generator to 3.2.8 including prebuilt binary
- Feature: Set minumum Ruby version for generated code to 3.1 and use google-style 1.31
0.43.0 / 2025-04-24
- Fix: Fixed typo in generated wrapper readmes
- Fix: Provide a better check for grpc when typechecking credentials
- Feature: bless “::Google::Auth::BaseClient” as an allowed by default credentials type in Config
0.42.1 / 2025-02-04
- Fix: Wrappers load release dependencies if local dependencies do not match
0.42.0 / 2025-01-30
- Feature: Change REGAPIC pagination algorithm to the standard algorithm for non-compute clients
0.41.0 / 2025-01-24
- Feature: Change minimum Ruby version to 3.0
0.40.0 / 2025-01-24
No significant changes
0.39.2 / 2025-01-24
- Fix: Add warning regarding external credential sourcing
0.39.1 / 2025-01-23
- Fix: Updated minimum gapic-common version to 0.25
0.39.0 / 2025-01-22
- Feature: Add clarifying notes to oneof members in proto_docs
0.38.3 / 2024-12-10
- Fix: Added logger methods to generated dummy stub classes in generated tests
0.38.2 / 2024-12-10
- Fix: Throw the correct result object for REST with nonstandard LRO
0.38.1 / 2024-12-09
- Fix: fix wrapper gem tests by stubbing the stub_logger method
0.38.0 / 2024-12-06
- Feature: Support request-response debug logging from generated GAPICs
0.37.0 / 2024-10-24
- Feature: Remove path tests for clients using REST without gRPC
0.36.1 / 2024-09-20
- Fix: Add missing local binding in resource path methods
0.36.0 / 2024-08-22
- Feature: Support local binding for variables with keyword collision
0.35.0 / 2024-08-15
- Feature: Disable xrefs for README files in wrapper gems
0.34.1 / 2024-08-08
No significant changes
0.34.0 / 2024-08-07
- Feature: Resolve keyword conflicts with path pattern variable names
- Feature: Prevent keyword collision with field names as values
- Feature: Refactor README.md and gemspec files
0.33.0 / 2024-07-02
- Fix: Resolve BigDecimal warning
- Feature: Format path pattern variables to snake case
0.32.0 / 2024-05-13
- Feature: Introduce google.api.api_version option to generated clients
0.31.0 / 2024-04-25
- Feature: Remove api-common-protos dependency
- Feature: Use module name to prevent keyword collision with enum values
0.30.0 / 2024-04-24
- Feature: support auto populating request fields with explicit presence
- Feature: avoid keyword collision for enum value names
- Fix: Start requiring ostruct in generated test helper files
0.29.0 / 2024-02-22
- Feature: Update minimum Ruby version of generated libraries to 2.7
- Fix: update gemfiles and set bundle platforms to x86_64-linux
0.28.0 / 2024-02-14
- Feature: introduce auto_populated_fields (uuid4) to generator
0.27.4 / 2024-01-12
No significant changes
0.27.3 / 2024-01-12
- Fix: Ensure the correct endpoint gets to mixin clients
0.27.2 / 2024-01-11
No significant changes
0.27.1 / 2024-01-09
- Fix: Update mixin dependencies to versions that support universe domain
0.27.0 / 2024-01-08
- Feature: update generated samples docs
- Feature: Update rubocop autofix to use Rubocop 1.59
- Feature: add @deprecated tags to document items
- Feature: Generate toys files
- Feature: Support universe domain in GAPIC
0.26.0 / 2023-12-04
- Feature: Use google-protobuf instead of third-party protobuf library
- Fix: clean up and update gem dependencies
0.25.1 / 2023-09-12
- Fix: Workaround for grpc windows issue during tests
0.25.0 / 2023-09-07
- Feature: Add support for channel pool in gapic generator
- Fix: Fix snippet generation for REGAPIC clients
0.24.0 / 2023-07-05
- Feature: Loosen parsing for extra_dependencies
0.23.4 / 2023-06-03
- Fix: Updates to the bundle locks
- Fix: Generated clients depend on gapic-common 0.19.1
- Fix: Fixes the enable_self_signed_jwt determination when the endpoint in the global configuration object (as opposed to the constructor configuration block) is modified
0.23.3 / 2023-05-26
- Fix: Generated clients depend on gapic-common 0.19
0.23.2 / 2023-03-08
- Fix: Remove html tags from description text parsed from service yaml
- Fix: Fail generation if Rubocop autoformatting fails
- Fix: Replace googleapis.dev links with equivalent cloud.google.com or rubydoc.info links
- Fix: Fix special case iam API shortname
0.23.1 / 2023-02-28
- Fix: update gapic-common version
- Fix: Handle empty fields in service yaml
0.23.0 / 2023-02-27
- Feature: Honor metadata from the service yaml
0.22.0 / 2023-02-14
- Feature: Update mixin dependency versions to 0.4
0.21.1 / 2023-02-13
- Fix: Get rubocop working in bazel
0.21.0 / 2023-02-09
- Feature: Load and interpret snippetgen phase 2 config data
- Feature: Added SnippetGen phase2 implementation
- Feature: Reimplemented snippetgen phase 1 using phase 2
- Feature: Implemented enough of SnippetGen phase 2 to generate the initial test case
- Feature: add a transport operation class in Rest
- Fix: yield TransportOperation class instead of Faraday’s
0.20.0 / 2023-01-19
- Feature: migrate generator bazel (including prebuilts) to 3.1.3
0.19.0 / 2023-01-17
- Fix: fail on rest transport and no bindings
- Feature: Bump mixin minimum version to 0.3
0.18.1 / 2022-12-15
- Fix: Don’t generate bindings_override.rb unless REST transport is active
0.18.0 / 2022-12-15
- Feature: add quota project and misc to REGAPIC templates
- Feature: use retry policy in regapic templates
- Fix: avoid creating rest default configuration for non-rest methods
- Fix: transcoding in regapic tests
- Fix: Cross-ref links use the REST client class in REST client docs
- Feature: implements template changes for REST server-streaming.
- Feature: all fixes for the combined rest+grpc libraries
- Feature: generate bindings override for REST mixins
- Fix: handle only regapic errors for REST libraries
- Feature: Recognize transport argument for bazel jobs
- Feature: Updated wrapper generator to support multi-transport clients
0.17.2 / 2022-10-27
- Fix: Update snippetgen phase 1 to conform to standard sample style
0.17.1 / 2022-10-26
- Fix: Fixed typo in rest_numeric_enums bazel field handling
0.17.0 / 2022-10-21
- Feature: Recognize rest_numeric_enums argument for bazel jobs
0.16.1 / 2022-09-27
No significant changes
0.16.0 / 2022-09-16
- Feature: Support numeric enums
0.15.3 / 2022-08-18
- Fix: Fix out of date SDK auth documentation
0.15.2 / 2022-07-27
- Fix: only do service config http binding override on Operations
- Fix: Apply both namespace and service overrides to service names in yard links
0.15.1 / 2022-07-26
- Fix: mixin proto_docs removal works for iam
0.15.0 / 2022-07-25
- Feature: classic (AIP-151) LROs in REST
- Feature: grpc transcoding with
additional_bindings - Fix: Honor service overrides in yard cross-references
- Fix: suppress generation of mixin proto_docs and wrapper client factory methods
0.14.1 / 2022-06-29
- Fix: fix crash when generating generic endpoints
0.14.0 / 2022-06-27
- Feature: generate code using full GRPC transcoding for rest libraries
- Feature: generating libraries with rest and grpc transports
- Fix: LRO-wrapped methods of the internal Operations client not working
- Feature: Update minimum Ruby version to 2.6
0.13.0 / 2022-05-11
- Feature: Adjust links and repo metadata based on whether the product is part of gcp/cloud
- Fix: Loosen mixin dependencies to allow 1.x versions
- Fix: Disable generation of services that are handled as mixins
- Fix: Disable mixin generation when common services are configured
0.12.0 / 2022-04-29
- Feature: Generate snippet metadata files
0.11.1 / 2022-04-06
- Updated generated grpc-google-iam-v1 dependency to ~> 1.1
0.11.0 / 2022-03-01
- New: Added generation of nonstandard LRO wrapper calls (currently used for Compute)
- Fixed: Examples in the doc comments for modules are now generated with
@exampletags - Fixed: proto files without a proto service can again be generated
- Ruby prebuilt binaries used in Bazel rules updated to Ruby 2.6.6
0.10.6 / 2022-02-02
- Point default documentation URL to rubydoc.info.
0.10.5 / 2022-01-20
- No significant changes
0.10.4 / 2022-01-07
- Fixed: Set quota_project_id correctly for LRO clients
- Fixed: Remove old cloud-rad configs and rake tasks
- Fixed: Properly quote page titles in YARD configs
0.10.3 / 2021-11-04
- New: Enabled snippet-gen by default
0.10.2 / 2021-11-01
- New: Added support for service.yaml
- New: New mixin implementation
- New: Parse and generate explicit routing headers
- New: Preliminary support for extended operations for REST LROs
- Fixed: Potential failures in generated tests when routing headers reference sub-fields
- Fixed: Renamed service_config to grpc_service_config
0.10.1 / 2021-08-27
- New: Compute REST libraries are now generated with LRO wrappers
- Fixed: Rubocop is disabled for sample tests in generated versioned libraries
0.10.0 / 2021-08-09
- New: Enabled per-RPC configuration for generated REST libraries
- New: Generated docs include the deprecated YARD tag for deprecated protos
- New: Scopes can be passed to self-signed JWTs
- Fixed: Generated gRPC clients honor the client-default timeout config
- Fixed: Generated docs now use YARD example tags for inline samples related to configuration
- Fixed: Generated REST clients now require google/cloud/errors
- Generated libraries now require gapic-common 0.7.0 or later
0.9.2 / 2021-07-27
- REST libraries are now generated with pagination hepers
- REST libraries are now generated with correct examples in README.md and other documentation files
- It is now possible to generate inline snippets in yardocs
- Fixed the require path in the generated standalone snippets so it reflects the recommended require root rather than the service-specific require path.
- Prevent “duplicate” resources (with the same name but different namespaces) from producing duplicate helper methods.
0.9.1 / 2021-07-07
- Detect multiple resource parents for patterns used by multiple resources
0.9.0 / 2021-06-29
- Support for configuring the service/method used for the quickstart example
- Allow generation of libraries with no custom env prefix
- Add service override setting to the repo metadata
- Wrapper gem dependencies on pre-GA versioned gems now allow both 0.x and 1.x versions
- Scoped some String and Hash references to the global scope to avoid name collisions
- Reformat some config code to avoid rubocop indentation churn
- Bazel: Replace monolith deps with rules_gapic
0.8.0 / 2021-06-16
- Initial implementation of standalone snippet generation.
- Updated gapic-common dependencies to require at least 0.5 and to support future 1.x versions.
- Generated unit tests for REST clients.
- Generated proper x-goog-api-client headers for REST clients.
- Added generation arguments to generated repo metadata.
- Allow multiple versions in the extra-dependency command line argument.
- Fixed treatment of boolean-valued command line arguments to the generator.
- Fixed behavior of wrapper-gem-override if given an empty value.
- Fixed default env_prefix computation to avoid the version part of the proto namespace.
- Fixed Bazel front-end to preserve file permissions.
0.7.5 / 2021-05-18
- Bazel jobs now provide a prebuilt ruby binary.
- Fixed generated indentation for a few cases, by updating to Rubocop 1.15.
- Added library_type to generated repo metadata files.
0.7.4 / 2021-05-07
- Fixed the broken link in the generated libraries’ README.md
- Generated libraries with REST transport now use presense testing instead of rejecting defaults to determine which fields to transcode into the query string parameters
0.7.3 / 2021-03-24
- Fixed gapic metadata (drift manifest) generation
- Gapic metadata generation is disabled by default in gapic-generator (enabled by default in gapic-generator-cloud)
- Can now generate libraries with REST transport in addition to GRPC
- gapic-common 0.4 is the default version for the generated libraries now (was 0.3) (required for the generated libraries with the REST transport)
0.7.2 / 2021-03-05
- No changes.
0.7.1 / 2021-02-27
- Update generated readmes to reflect that Ruby 2.5 or later is now required.
0.7.0 / 2021-02-27
- Update minimum Ruby version to 2.5 for generated libraries.
- Update supported Rubocop to 1.x for generated libraries.
0.6.15 / 2021-02-22
- Really fixed encoding arguments in executable entrypoints
0.6.14 / 2021-02-22
- Fixed encoding arguments in executable entrypoints
0.6.13 / 2021-02-22
- Remove InputOnly and OutputOnly proto tags from docs to avoid confusing YARD.
- Generate drift manifest.
- Executable entrypoints set the default external locale to utf-8.
0.6.12 / 2021-02-01
- No changes.
0.6.11 / 2021-02-01
- Generated clients determine whether to use self-signed JWT credentials.
0.6.10 / 2021-01-13
- A set of human-readable command-line parameters can now be specified for the gapic-generator, e.g.
gem-name. These parameters strictly duplicate the existing behaviour of old command-line parameters, e.g.:gem.:name. - Documentation for the
timeoutparameter in some templates has been fixed to correctly specify ‘seconds’ where previously it incorrectly sais ‘milliseconds’. This is a purely documentation update, no functionality changes.
0.6.9 / 2020-12-07
- Load package-level handwritten helpers.
- Disable Names/PredicateName rubocop rule.
- Fix generated client tests when a request field name collides with a Ruby superclass method.
0.6.8 / 2020-09-16
- Add samples tasks to generated gapic rakefiles.
- Disable Style/AsciiComments rule.
0.6.7 / 2020-08-07
- Generated credentials config allows symbols.
0.6.6 / 2020-08-05
- Use numeric error codes rather than strings in generated retry configs.
0.6.5 / 2020-07-16
- Examples in auth, rakefile, and readme should pick a non-common service.
- Emit a warning if common_services config references a nonexistent service.
0.6.4 / 2020-07-13
- Fix rubocop warning on a generated multi-path helper if it could take no arguments.
- Run the rubocop file formatting step without caching.
- Fix an issue where generating a service with no options would fail.
0.6.3 / 2020-06-27
- Fixes for generated tests for some cases involving proto maps.
- Fix a Ruby 2.7 keyword arguments warning in generated tests.
- Clean up bundler references in gemspecs and Gemfiles.
0.6.2 / 2020-06-18
- Support for the proto3_optional
- Fixed an issue where tests for the oneof fields were not generating correctly
- Removed ruby
- Generated libraries now depend on gapic-common 0.3
0.6.1 / 2020-06-16
- Add auto-generated disclaimer to generated tests.
- Support shortname and issue tracker URL configs.
- Refactors and minor fixes around resource template parsing.
0.6.0 / 2020-06-02
- Support for clients with generic endpoint and credentials.
- Support for adding extra dependencies.
- Fixed a Ruby warning when looking up RPC-scoped configs with no parent.
- Internal: Presenters reference their parent rather than creating new objects.
0.5.1 / 2020-05-21
- Support a configuration for overriding service module names.
- Operations client honors the quota_project setting.
0.5.0 / 2020-05-19
- Add quota_project to the generated configs.
- Allow resource patterns with a star as a segment template.
- Generate tests for resource path helpers.
- Pin protobuf dependency for Ruby < 2.5.
- Create a test helper in for generated tests.
0.4.2 / 2020-04-28
- Prepend double-colon to absolute/global namespaces to prevent conflicts.
- Fix documentation/examples of timeouts to clarify they are in seconds.
0.4.0 / 2020-04-20
- Support generating clients of “common” interfaces by delegating to another service config.
- Added an accessor for the long-running-operation client from the main client.
- Generate tests for the configure method and operations client accessor.
- Prevent generation of RPC or factory methods with reserved names.
- Fixed: LRO clients weren’t inheriting custom endpoints from the main client.
- Fixed: Cross-references weren’t interpreted if the text included backticks, spaces, or hyphens.
0.3.3 / 2020-04-13
- Fix cross-reference links to multi-word enum values.
0.3.2 / 2020-04-12
- Fix the talent.v4beta1 hack.
0.3.1 / 2020-04-11
- Disable ModuleLength metric for generated code.
- Omit nonconforming resource patterns instead of crashing.
0.3.0 / 2020-04-10
- Detect when a resource is referenced implicitly via child_type, and generate path helpers.
- Update grpc-google-iam-v1 dependency to require the latest version.
- Generated require graph is more sane and does not include cycles.
- The bundler entrypoint now loads the entire gem for wrapper gems.
- Generated readmes are more useful and include a quickstart.
- Package and service modules now have basic documentation.
- Overloads for methods now have basic explanatory documentation, including how to pass an empty request.
- Request object documentation no longer duplicates the method documentation.
0.2.3 / 2020-04-06
- No changes
0.2.2 / 2020-03-31
- Updates to common protos, especially core types which were more than a year old.
0.2.1 / 2020-03-26
- Fix service address for LRO operation clients.
- Tweak sample task names for wrapper-gem Rakefiles.
0.2.0 / 2020-03-23
Generation updates:
- Proto service documentation is rendered into client class YARD docs.
- Generated Apache license is now well-formatted markdown.
- YARD titles updated with the word “API”.
- Tweaks to the default summary and description text.
- Generated rakefiles can run acceptance tests if present.
- Switch the order of summary and description in the readmes.
- Exempt a few more files (notably gemspec and rakefile) from rubocop.
- Several formatting tweaks, including removal of redundant whitespace.
Internal changes:
- New configuration allows path helpers to be generated from outputs.
- Moved presenters into lib so they can be changed/subclassed more easily.
- Several additions to GemPresenter to support new features.
0.1.7 / 2020-03-18
- Path modules extend self so helpers can be invoked on them directly
- Trigger IAM dependency for IAM V1 files other than iam_policy.proto
0.1.6 / 2020-03-17
- Generated libraries now depend on gapic-common 0.2
- Convert cross-reference syntax in proto docs to YARD cross-reference links.
- Preserve call options in LROs
- Fix implicit kwarg warnings under Ruby 2.7
0.1.5 / 2020-03-13
- More improvements to escaping of curly braces.
0.1.4 / 2020-03-12
- Fixed over-escaping of curly braces in preformatted blocks in the yardocs.
- Fixed typo in authentication document.
0.1.3 / 2020-03-11
- Generated numeric constants are formatted with underscores if necessary.
0.1.2 / 2020-03-09
- Support multiple grpc service config files
0.1.1 / 2020-03-09
- Relax rake dependency.
0.1.0 / 2020-03-07
- Generate default timeout and retry configs based on GRPC service configs.
- Send x-goog-user-project header based on quota_project_id.
0.0.6 / 2020-03-03
- Generated config classes now have full yardoc
- Yardoc types for enums reference the fully namespaced module
0.0.5 / 2020-02-25
- Require simplecov explicitly from generated test files
0.0.4 / 2020-02-19
- Fixed generation of methods with empty requests.
- Fixed references to the gem version constant if the library name doesn’t match the proto path.
- Disable line length cop for the generated gemspec file.
0.0.3 / 2020-02-05
- Fixed generated test failures on map fields
- Fixed generated test failures on single-precision float fields