Release History for gapic-generator
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 <2.5 pin for the protobuf dependency since new protobuf supports it again
- 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