Releases: grpc-ecosystem/grpc-gateway
Releases · grpc-ecosystem/grpc-gateway
v2.0.0
The grpc-gateway maintainers are pleased to announce the long anticipated release of v2.0.0
v2.0.0 includes ground-up rewrites of many parts of the runtime and generators to be compatible with the Go APIv2 Protobuf release. To help transition users to v2, we've put together a migration guide. Among the notable changes in v2 are:
- Support the Go APIv2 Protobuf stack
- Many changes to make the grpc-gateway behaviour more consistent with Protobuf JSON conventions
- Rename protoc-gen-swagger to protoc-gen-openapiv2
- Minimize the public API
- Consolidation of error handling configuration
- Enable HTTPBodyMarshaler by default
- Use the gRPC status JSON representation for errors
- Much more!
For a complete list of all the changes, please see the full changelog.
Note that GOPATH users will no longer be supported with this release. This was not a decision taken lightly, but on balance we expect the community to have moved to modules, or be in a position to move to modules, and the maintenance burden is significant smaller for us. If this is a significant issue for your or your organization, please let us know on the Slack channel or by raising an issue.
v1.15.2
The grpc-gateway v1 is in maintenance mode, you are encouraged to migrate to v2.
See #1223 for more information and check out our v2 migration guide.
v1.15.2 (2020-10-10)
v1.15.1
This will be the last release of v1 on the master branch
The grpc-gateway v1 is in maintenance mode, you are encouraged to migrate to v2.
See #1223 for more information and check out our v2 migration guide.
v1.15.1 (2020-10-10)
v2.0.0-beta.5
We've got some really cool new features in this release:
- New support for using YAML to annotate the generated swagger output. See the docs for more information. This was implemented by @jasonewang.
- New support for generating a gateway for completely unannotated proto files. See the docs for more information. The was implemented by @plaflamme.
v2.0.0-beta.5 (2020-09-24)
Closed issues:
- Sending NULL for int64/uint64 types calls gRPC server with zero-value #1681
- protoc-gen-swagger: allow
-output
dir #1679 - Empty json array is passed as nil #1673
- Lightweight support for custom protobuf annotations on RPCs #1666
- undefined: runtime.ServerTransportStream #1664
- Merge swagger definitions generated by swaggo/swag init and protoc --swagger_out command #1651
- Add base_path as constant in generated gateway files #1650
- Support service definitions without any annotations. #1649
- proto directory names preclude using protos in python code #1647
- Generated files contain calls to methods that don't exist #1643
- TestConvertDuration/invalid_duration failure #1630
runtime.WithForwardResponseOption\(\)
is not respected #1625- same field in params #1621
- Use grpc gateway to create rest API whose body is a list #1617
- grpc-gateway equivalent in the grpc python package #1613
- Migrate away from importing
github.com/golang/protobuf/{descriptor,proto}
in generated code (similar to #1260). #1608 - runtime.WithForwardResponseOption compile error #1607
- Apply FiedMask to the GET (and LIST) returns #1605
- code: 32603, message
types.Coin
is neither a v1 or v2 Message #1603 - protoc-gen-swagger map type filed doesn't support options.openapiv2_field #1601
- 🐛HttpRule is stated in unannotated_echo_service.yaml, but warning is still issued #1578
- CVE-2020-14001: Unintended read access in kramdown gem #1579
Merged pull requests:
- Update dependency com_github_bazelbuild_buildtools to v3.5.0 (v2) #1690 (renovate[bot])
- Update google.golang.org/genproto commit hash to 5646d36 (v2) #1688 (renovate[bot])
- Add devcontainer.json #1687 (johanbrandhorst)
- Update dependency io_bazel_rules_go to v0.24.3 (v2) #1686 (renovate[bot])
- Update dependency bazel_gazelle to v0.22.1 (v2) #1685 (renovate[bot])
- Support generating unbound methods #1684 (johanbrandhorst)
- Update google.golang.org/genproto commit hash to b9da36f (v2) #1682 (renovate[bot])
- Fix link in migration doc #1678 (johanbrandhorst)
- Update google.golang.org/genproto commit hash to d0d6055 (v2) #1677 (renovate[bot])
- Update google.golang.org/genproto commit hash to bb4cff5 (v2) #1674 (renovate[bot])
- Update google.golang.org/genproto commit hash to f6a2fa7 (v2) #1672 (renovate[bot])
- Update google.golang.org/genproto commit hash to 9f80d06 (v2) #1671 (renovate[bot])
- Update google.golang.org/genproto commit hash to 75d14da (v2) #1669 (renovate[bot])
- refactor: upgrade protoc-gen-grpc-gateway to use the new Go code generator #1668 (adambabik)
- End default swagger response desc with period - v2 #1667 (rubda)
- Add support for OpenAPI YAML annotations #1665 (jasonewang)
- Update google.golang.org/genproto commit hash to 645f7a4 (v2) #1662 (renovate[bot])
- Update google.golang.org/genproto commit hash to 8ad3c7e (v2) #1661 (renovate[bot])
- Update golang Docker tag to v1.15.2 (v2) #1658 (renovate[bot])
- Update dependency io_bazel_rules_go to v0.24.2 (v2) #1656 (renovate[bot])
- Update module google.golang.org/grpc to v1.32.0 (v2) #1654 (renovate[bot])
- Update google.golang.org/genproto commit hash to 0bd0a95 (v2) #1648 (renovate[bot])
- Update dependency bazel_gazelle to v0.22.0 (v2) #1622 (renovate[bot])
- Update golang.org/x/oauth2 #1645 (johanbrandhorst)
- Update google.golang.org/genproto commit hash to 9bfcb51 (v2) #1642 (renovate[bot])
- fix SendHeader/SetTrailer when use grpc-gateway standalone server (v2) #1638 (ghostiam)
- Change example field #1636 (johanbrandhorst)
- Update golang Docker tag to v1.15.1 (v2) #1635 (renovate[bot])
- Update dependency io_bazel_rules_go to v0.24.1 (v2) #1633 (renovate[bot])
- Update google.golang.org/genproto commit hash to b3bf27a (v2) #1632 (renovate[bot])
- Update google.golang.org/genproto commit hash to d751682 (v2) #1629 (renovate[bot])
- Update google.golang.org/genproto commit hash to 2bf3329 (v2) #1626 (renovate[bot])
- Update google.golang.org/genproto commit hash to 73b5761 (v2) #1624 (renovate[bot])
- Update dependency io_bazel_rules_go to v0.24.0 (v2) #1623 (renovate[bot])
- Update google.golang.org/genproto commit hash to ac2560b (v2) #1620 (renovate[bot])
- Update dependency bazel_skylib to v1.0.3 (v2) [#1619](https://github.c...
v1.15.0
The grpc-gateway v1 is in maintenance mode, you are encouraged to migrate to v2.
See #1223 for more information and check out our v2 migration guide.
v1.15.0 (2020-09-18)
New Features:
Closed issues:
- Empty json array is passed as nil #1673
- Lightweight support for custom protobuf annotations on RPCs #1666
- undefined: runtime.ServerTransportStream #1664
- Merge swagger definitions generated by swaggo/swag init and protoc --swagger_out command #1651
- Add base_path as constant in generated gateway files #1650
- Support service definitions without any annotations. #1649
- proto directory names preclude using protos in python code #1647
Merged pull requests:
- Regenerate files #1676 (johanbrandhorst)
- End default response desc with period #1663 (rubda)
- Update golang Docker tag to v1.15.2 (master) #1657 (renovate[bot])
- Update module google.golang.org/grpc to v1.32.0 (master) #1653 (renovate[bot])
- Deprecate example field #1637 (johanbrandhorst)
v1.14.8
The grpc-gateway v1 is in maintenance mode, you are encouraged to migrate to v2.
See #1223 for more information and check out our v2 migration guide.
v1.14.8 (2020-09-03)
Closed issues:
- Generated files contain calls to methods that don't exist #1643
- TestConvertDuration/invalid_duration failure #1630
runtime.WithForwardResponseOption\(\)
is not respected #1625- same field in params #1621
- Use grpc gateway to create rest API whose body is a list #1617
- grpc-gateway equivalent in the grpc python package #1613
- Migrate away from importing
github.com/golang/protobuf/{descriptor,proto}
in generated code (similar to #1260). #1608 - runtime.WithForwardResponseOption compile error #1607
- Apply FiedMask to the GET (and LIST) returns #1605
- code: 32603, message
types.Coin
is neither a v1 or v2 Message #1603 - protoc-gen-swagger map type filed doesn't support options.openapiv2_field #1601
- 🐛HttpRule is stated in unannotated_echo_service.yaml, but warning is still issued #1578
Merged pull requests:
- Add ignore for golang.org/x/oauth2 #1644 (johanbrandhorst)
- fix SendHeader/SetTrailer when use grpc-gateway standalone server (master) #1639 (ghostiam)
- Update golang Docker tag to v1.15.1 (master) #1634 (renovate[bot])
- runtime: fix duration test #1631 (johanbrandhorst)
- Update dependency bazel_skylib to v1.0.3 (master) #1618 (renovate[bot])
- Update module google.golang.org/grpc to v1.31.1 (master) #1614 (renovate[bot])
- Control warning behavior on unbound methods using a flag #1606 (yousseftelda)
- protoc-gen-swagger: fix map field options (#1601) #1602 (yangxikun)
- protoc-gen-swagger: remove boolean format #1597 (algas)
- document optional swagger plugin for unannotated grpc_api_configuration #1588 (piengeng)
v1.14.7
The grpc-gateway v1 is in maintenance mode, you are encouraged to migrate to v2.
See #1223 for more information and check out our v2 migration guide.
v1.14.7 (2020-08-12)
Fixed bugs:
- Flaky Timeout test #1258
Closed issues:
- CVE-2020-14001: Unintended read access in kramdown gem #1579
- [v2] expose defaultHTTPErrorHandler (and perhaps defaultStreamErrorHandler) #1576
- protoc-gen-swagger: Add prefix to all paths #1567
- Generate Swagger description using proto comments. #1552
- incorrect field mask generated for deeply nested struct #1549
- connection error occurs if the grpc server restarts #1547
- Log spam during attempt to append remote address to the XFF header when the transport is a unix domain socket #1538
- Can not use evans cli or other grpc gui tool when using http annotations #1535
- reverse gateway file not getting generated (.pb.gw.go) not getting generated no error just warning #1530
- does this support grpc-node? #1525
- With v2 we should be able to detect real NotFound responses from gRPC service NotFound responses #1513
- runtime.MarshalerForRequest: Content-Type should have been parsed before querying mimeMap #1505
- Invalid test cases for runtime.Marshaler #1501
- Need help in enabling log in grpc-gateway application #1495
- WithForwardResponseOption can't cast proto.Message when response_body is defined on the rpc method #1493
- should it support jsonp? #1480
- Any option to set per route middleware instead of using the global route/handler/mux middleware? #1473
- How to JSON Transcode Protos With Naming Equal to Generated Typescript Repeated Fields #1465
- Boolean type should not have a format (OAS) #1463
- Performance implications of using the grpc-gateway for a REST API #1458
- Trying to generate properties using the camelCase from underscores #1426
- question: tensorflow serving #1425
- Documentation: clarify RegisterXXXHandlerServer compromises #1398
- errors when building with bazel #1392
- Enums from other packages as path parameters is missing package name in front of enumValMap. #1203
- Reference not imported properly #1190
- Merging swagger specs fails to use rpc comments #664
Merged pull requests:
- chore(deps): update golang docker tag to v1.15.0 (master) #1585 (renovate[bot])
- Update github-pages #1581 (johanbrandhorst)
- chore(deps): update golang docker tag to v1.14.7 (master) #1571 (renovate[bot])
- Only canonicalize header key once in each iteration #1564 (ziyi-yan)
- chore(deps): update module google.golang.org/grpc to v1.31.0 (master) #1561 (renovate[bot])
- fix slice appendings in generating field mask paths #1555 (houz42)
- chore(deps): update dependency com_github_bazelbuild_buildtools to v3.4.0 (master) #1544 (renovate[bot])
- Eliminate log messages resulting from requests being sent over a Unix Domain Socket #1543 (janzantinge)
- docs: fix broken screenshot paths #1540 (dufcrule)
- Update golang Docker tag to v1.14.6 (master) #1531 (renovate[bot])
- Adds fqn_for_swagger_name to bazel defs #1528 (chriserickson)
- Update golang Docker tag to v1.14.5 (master) #1521 (renovate[bot])
- protoc-gen-swagger: add example similar to AIP-133 #1514 (jonathaningram)
- Parse media type for inbound marshaler #1506 (movsb)
- Corrects an invalid test #1502 (yugui)
- forward trailers on error only if client send TE header #1499 (strobil)
- docs: fix broken season of docs links #1497 (dufcrule)
- docs: clean up cygwin instructions #1490 (dufcrule)
- Add
descriptor
todeps
ofgo\_gen\_grpc\_gateway
. #1487 (bartle-stripe) - Update dependency com_github_bazelbuild_buildtools to v3.3.0 (master) #1481 (renovate[bot])
- Standardize way GitHub is written in CONTRIBUTING.md #1479 (dufcrule)
- Update module google.golang.org/grpc to v1.30.0 (master) #1476 (renovate[bot])
- protoc-gen-swagger: Update internal mapping for boolean type #1466 (ozraza)
- Update dependency com_github_bazelbuild_buildtools to v3.2.1 (master) #1460 (renovate[bot])
- Fix for referenced enums in field params #1453 (sgtsquiggs)
- fix rpc comment generation against allow_merge #1445 (kentdotn)
- protoc-gen-swagger: Fix message recursion detection #1437 (doylezdead)
- chore(deps): update dependency com_github_bazelbuild_buildtools to v3.2.0 (master) #1434 (renovate[bot])
- chore(deps): update golang docker tag to v1.14.4 (master) #1430 (renovate[bot])
- Add openapi protobuf documentation examples #1427 (bvwells)
- Enable auto merge and automate updates #1416 (johanbrandhorst)
- added issue template of various forms #1411 (iamrajiv)
- fix documentation error introduced by #1399 #1402 (joesonw)
- Add module generator option [#1400](https://github.com/grpc-ecosystem/g...
v2.0.0-beta.4
v2.0.0-beta.4 (2020-08-10)
Fixed bugs:
- Flaky Timeout test #1258
Closed issues:
- [v2] expose defaultHTTPErrorHandler (and perhaps defaultStreamErrorHandler) #1576
- protoc-gen-swagger: Add prefix to all paths #1567
- Generate Swagger description using proto comments. #1552
- incorrect field mask generated for deeply nested struct #1549
- connection error occurs if the grpc server restarts #1547
- Log spam during attempt to append remote address to the XFF header when the transport is a unix domain socket #1538
- Can not use evans cli or other grpc gui tool when using http annotations #1535
- reverse gateway file not getting generated (.pb.gw.go) not getting generated no error just warning #1530
- does this support grpc-node? #1525
- With v2 we should be able to detect real NotFound responses from gRPC service NotFound responses #1513
- runtime.MarshalerForRequest: Content-Type should have been parsed before querying mimeMap #1505
- Invalid test cases for runtime.Marshaler #1501
- Need help in enabling log in grpc-gateway application #1495
- WithForwardResponseOption can't cast proto.Message when response_body is defined on the rpc method #1493
- should it support jsonp? #1480
- Any option to set per route middleware instead of using the global route/handler/mux middleware? #1473
- How to JSON Transcode Protos With Naming Equal to Generated Typescript Repeated Fields #1465
- Boolean type should not have a format (OAS) #1463
- Performance implications of using the grpc-gateway for a REST API #1458
- Trying to generate properties using the camelCase from underscores #1426
- question: tensorflow serving #1425
- Documentation: clarify RegisterXXXHandlerServer compromises #1398
- errors when building with bazel #1392
- Enums from other packages as path parameters is missing package name in front of enumValMap. #1203
- Reference not imported properly #1190
- Merging swagger specs fails to use rpc comments #664
Merged pull requests:
- chore(deps): update google.golang.org/genproto commit hash to a062522 (v2) #1574 (renovate[bot])
- chore(deps): update golang docker tag to v1.14.7 (v2) #1573 (renovate[bot])
- chore(deps): update dependency io_bazel_rules_go to v0.23.7 (v2) #1572 (renovate[bot])
- chore(deps): update google.golang.org/genproto commit hash to 86f49bd (v2) #1569 (renovate[bot])
- chore(deps): update google.golang.org/genproto commit hash to 45615f5 (v2) #1568 (renovate[bot])
- Only canonicalize header key once in each iteration #1565 (ziyi-yan)
- chore(deps): update google.golang.org/genproto commit hash to 8145dea (v2) #1563 (renovate[bot])
- chore(deps): update module google.golang.org/grpc to v1.31.0 (v2) #1562 (renovate[bot])
- chore(deps): update google.golang.org/genproto commit hash to 007c33d (v2) #1560 (renovate[bot])
- protoc-gen-openapiv2: Fix so that FieldMasks descriptions are correctly generated #1558 (krosen040)
- chore(deps): update google.golang.org/genproto commit hash to 053ba62 (v2) #1557 (renovate[bot])
- chore(deps): update google.golang.org/genproto commit hash to 3dc8dca (v2) #1554 (renovate[bot])
- fix slice appending in generating field mask paths #1553 (houz42)
- chore(deps): update google.golang.org/genproto commit hash to da3ae01 (v2) #1551 (renovate[bot])
- chore(deps): update google.golang.org/genproto commit hash to 43cab47 (v2) #1550 (renovate[bot])
- chore(deps): update dependency io_bazel_rules_go to v0.23.6 (v2) #1548 (renovate[bot])
- Removed the "invalid remote addr" log (#1543) #1546 (janzantinge)
- chore(deps): update dependency com_github_bazelbuild_buildtools to v3.4.0 (v2) #1545 (renovate[bot])
- docs: change back name of file to OpenAPI #1542 (dufcrule)
- docs: fix broken screenshot paths #1541 (dufcrule)
- Update google.golang.org/genproto commit hash to 88e3419 (v2) #1539 (renovate[bot])
- Update module google/go-cmp to v0.5.1 (v2) #1537 (renovate[bot])
- Update google.golang.org/genproto commit hash to 5044d0e (v2) #1536 (renovate[bot])
- Update google.golang.org/genproto commit hash to 1244ee2 (v2) #1534 (renovate[bot])
- Update dependency io_bazel_rules_go to v0.23.5 (v2) #1533 (renovate[bot])
- Update golang Docker tag to v1.14.6 (v2) #1532 (renovate[bot])
- Adds fqn_for_swagger_name to bazel defs #1529 (chriserickson)
- Update google.golang.org/genproto commit hash to 11fb19a (v2) #1526 (renovate[bot])
- protoc-gen-openapiv2: add example for AIP-133 #1524 (jonathaningram)
- Update golang Docker tag to v1.14.5 (v2) #1523 (renovate[bot])
- Update dependency io_bazel_rules_go to v0.23.4 (v2) #1522 (renovate[bot])
- Update google.golang.org/genproto commit hash to f631a03 (v2) #1520 (renovate[bot])
- Add http routing errors handler #1517 (octo47)
- Update google.golang.org/genproto commit hash to 8698661 (v2) [#1...
v2.0.0-beta.3
v2.0.0-beta.3 (2020-05-25)
Merged pull requests:
- utilities: move package to public API #1395 (johanbrandhorst)
v2.0.0-beta.1
This release marks the completion of all the must-haves for v2.0.0, as detailed in #1223. We still wait for a few external dependencies before we can seriously consider a stable v2 release, but at this point we invite users to try out v2 and give feedback on the changes.
If you are trying out v2, please consult the migration guide before raising issues.
v2.0.0-beta.1 (2020-05-25)
Implemented enhancements:
- Feature request: support of go protocol buffer v2 #1147
Fixed bugs:
- Bazel tests are flaky #968
Closed issues:
- Merging swagger specs (for multiple protos belonging to same package) fails to emit summary for some RPCs #1387
- Remove result/error envelope in streaming RPC response #1254
- cleanup: rename 'swagger' references to 'openapi' #675
- Swagger: JSON definitions aren't CamelCased #375
- Support emitting default values in JSON #233
Merged pull requests:
- Generate changelog for v2.0.0-beta1 #1393 (johanbrandhorst)
- Rename protoc-gen-swagger to protoc-gen-openapi #1390 (johanbrandhorst)
- Update docs for v2 #1388 (johanbrandhorst)
- runtime: remove DisallowUnknownFields() #1386 (johanbrandhorst)
- runtime: make HTTPBodyMarshaler the default #1385 (johanbrandhorst)
- Implement last-match-wins behaviour in mux #1384 (johanbrandhorst)
- Fix various misspellings (#1381) #1383 (bvwells)
- Remove usage of deprecated grpc.Errorf API (#1380) #1382 (bvwells)
- Add missing documentation for openapiv2 proto definition (#1375) #1378 (bvwells)
- runtime: make default marshaler emit default values #1377 (johanbrandhorst)
- Turn off UseProtoNames in default marshaler #1376 (johanbrandhorst)
- cherry-picked the commit from master to v2 in customizingyourgateway.md #1374 (iamrajiv)
- Update google.golang.org/genproto commit hash to e9a78aa (v2) #1372 (renovate[bot])
- PR and Issue template added to v2 branch #1371 (iamrajiv)
- Update google.golang.org/genproto commit hash to 08726f3 (v2) #1369 (renovate[bot])
- Improve README.md #1363 (amanjain97)
- all: replace all uses of golang/protobuf/proto #1358 (johanbrandhorst)
- Update module google/go-cmp to v0.4.1 (v2) #1357 (renovate[bot])
- chore(deps): update golang docker tag to v1.14.3 (v2) #1356 (renovate[bot])
- Update dependency io_bazel_rules_go to v0.23.1 (v2) #1355 (renovate[bot])
- remove unused PKGMAP #1353 (johanbrandhorst)
- internal/descriptor: move to generated apiconfig test #1352 (johanbrandhorst)
- Update google.golang.org/genproto commit hash to fc4c6c6 (v2) #1349 (renovate[bot])
- Renovate changes from master #1348 (johanbrandhorst)
- docs: add example customizing unmarshal options (#1335) #1341 (srenatus)
- chore(deps): update module golang/protobuf to v1.4.2 (v2) #1333 (renovate[bot])
- Update google.golang.org/genproto commit hash to 8feb7f2 (v2) #1331 (renovate[bot])
- all: correct use of go_package #1329 (johanbrandhorst)
- Update dependency io_bazel_rules_go to v0.23.0 (v2) #1328 (renovate[bot])
- Update dependency bazel_gazelle to v0.21.0 (v2) #1327 (renovate[bot])
- Renovate: run go mod tidy after updates #1324 (johanbrandhorst)
- Update google.golang.org/genproto commit hash to 09dca8e (v2) #1322 (renovate[bot])
- fixed typo in docs/_docs/usage.md in v2 branch #1320 (iamrajiv)
- improved docs/_docs/season_of_docs.md in v2 branch #1319 (iamrajiv)
- Add Bazel CI caching #1314 (johanbrandhorst)
- Update module antihax/optional to v1 (v2) #1311 (renovate[bot])
- Update dependency com_github_bazelbuild_buildtools to v3 (v2) #1310 (renovate[bot])
- runtime: rewrite fieldmask logic with protoreflect #1309 (johanbrandhorst)
- Update module google.golang.org/grpc to v1.29.1 (v2) #1307 (renovate[bot])
- Update module golang/protobuf to v1.4.1 (v2) #1306 (renovate[bot])
- Update golang Docker tag to v1.14.2 (v2) #1305 (renovate[bot])
- Update dependency io_bazel_rules_go to v0.22.4 (v2) #1301 (renovate[bot])
- Update dependency com_github_bazelbuild_buildtools to v0.29.0 (v2) #1300 (renovate[bot])
- Update dependency bazel_gazelle to v0.20.0 (v2) #1299 (renovate[bot])
- Update google.golang.org/genproto commit hash to 43844f6 (v2) #1298 (renovate[bot])
- Update golang.org/x/oauth2 commit hash to bf48bf1 (v2) #1297 (renovate[bot])
- Add more instructions on the GitHub releases UI #1277 (achew22)
- HttpBody mesage feature for stream RPC #1273 (adasari)
- Consolidate error handling configuration #1265 (johanbrandhorst)