- Fix missing
fromTimestamp
import in generated code, fixes #200 (jessebutterfield)
- Fix
google.protobuf.BytesValue
infromPartial
&fromJSON
(ebakoba)
- Fix typo for method names in service output (willclarktech)
- Fix
stringEnums=true
infromJSON
andfromPartial
output (mharsat)
- Re-publish to fix previous publish error.
- Allow setting
addGrpcMetadata=true
w/o using NestJS (#188)
- Add
exportCommonSymbols
flag (defaultstrue
) that, whenfalse
skipsexport
ing a few common symbols (i.e.DeepPartial
) that make it more likely for multiple generated files to be imported byimport * from ...
and not have import conflicts, i.e. for barrel imports.
- Tweak
atob
&btoa
utility methods to prefixBuffer
withglobalThis
to avoid issues in non-node envs. Fixes #77.
- Avoid import conflicts when an imported message name matches a locally-declared message name, see #36.
- Import
protobufjs/minimal
as a default import when usingesModuleInterop
- This should fix running in "type: module" ESM modules, see #181
- Add new
esModuleInterop
option to fixLong
imports for projects that useesModuleInterop: true
in theirtsconfig.json
.
- Fix
DeepPartial
when used withLong
s (willclarktech)
- Polyfill
globalThis
for Node v10 support (willclarktech)
- Handle
@deprecated
when there are no other comments (ShakedH)
- Messages and fields that are marked as
deprecated
in*.proto
files will have a@deprecated
marker included in their JSDoc output (ShakedH) - Upgraded to the latest ts-poet
- [grpc-web] Remove
import =
to support not using synthetic default imports
- [grpc-web] Fix code generation errors introduced in v1.40.0
- [grpc-web] Revert breaking change of
unaryTransport
/invokeTransport
- Now client constructors take
transport
&streamingTransport
, and streaming calls will usestreamingTransport
is set, and otherwise fallback ontransport
.
- Now client constructors take
- [grpc-web] Remove
rxjs
dependency unless streaming is actually used
- Add support for grpc-web streaming responses (PhilipMantrov)
- Add
unrecognizedEnum
option for disabling theUNRECOGNIZED
enum values (ShakedH)
- Fix
forceLong
behavior when using wrapper types (Graham) - Add
rpcDataLoaderOptions
(Felix Mo) - Add
useDate
option to disablejava.util.Date
mapping (Graham)- This is primarily useful for NestJS which can only encode the original
google.protobuf.Timestamp
type
- This is primarily useful for NestJS which can only encode the original
- Add
stringEnums
option (Bastian Eicher)- Note this is not supported in the binary
encode
/decode
methods yet
- Note this is not supported in the binary
- Avoid unnecessary
import =
usage (Graham)
- Add a
protobufPackage
exportedconst
for metadata
- Fix maps of enums (@ahmadj-levelbenefits)
- Fix proto3 optional support
- Fix
blob
s infromPartial
andtoJSON
- Automatically configure
protobuf.util.Long
when 64-bit numbers are used (fixes #78)
- Add support for the experimental proto3
optional
keyword
- Fix
oneof=unions
not decoding default values correctly (@philikon)
- Accept cross-call metadata args in the
GrpcWebImpl
constructor - Accept
DeepPartial
request types for grpc-web calls
- Fix
toJSON
with maps of messages (#124 by @mscolnick)
- Use
enum
keyword for modeling keywords again - Fix maps of
google.protobuf.Timestamp
s - Fix name conflicts when using
google.type.Date
- Fix maps of bytes in JSON
- Add initial support for grpc-web using the
@improbable-eng/grpc-web
runtime
- Extra release to ensure the build output is correct.
- Added a
addNestjsRestParameter=true
that adds a...rest: any
parameter to use NestJS decorators like@CurrentUser
(@ToonvanStrijp)
- Added a
oneof=properties
that generatesoneof
s as an Abstract Data Type (ADT) of each option (@philikon)
- Added a
useOptionals=true
option that makes non-scaler/oneof fields optional, i.e.message?: Message
instead ofmessage: Message | undefined
(@philikon)
- Messages no longer use a base prototype to get default values. (@cliedeman)
-
Added a
env=both
option and made that the defaultThis restores the pre-1.22.0 behavior that bytes are
Uint8Array
so that theBuffer
support is not a breaking change. Users have to opt-in withenv=node
.Also fixes a bug introduced in 1.22.0 that output an
as Buffer
without first checkingenv=node
.
-
Added a
env=node
/env=browser
option that defaults toenv=node
Currently
env=node
only changes the types ofbytes
fromUint8Array
toBuffer
, as a convenience for Node programming whereBuffer
(which is the defacto subclass ofUint8Array
) is more widely used (@dolsup)
- Drop drop falsey values in maps in
decode
andfromPartial
. Fixes #79. (@timostamm)
- Repeated fields cannot be optional, fixes #80 (@philikon)
- Use
globalThis.Error
instead ofglobal.Error
for browsers, fix for #70
- Fix NestJS decorator for only-stream-in / only-stream-out methods
- Allow
Message.decode
methods to take aUint8Array
(orBuffer
) directly instead of having to pass aReader
- Another fix for NestJS-related
PACKAGE_NAME
consts
- Fix for NestJS-related
PACKAGE_NAME
consts
- Support for NestJS streams
- Added support for generating NestJS friendly output (thanks Ian Gregson!)
- See the readme for new options
nestJs
,lowerCaseServiceMethods
,returnObservable
, etc.
- See the readme for new options