0.29.1 (2019-05-18)
0.29.0 (2019-05-15)
- deps: update dependency @google-cloud/paginator to v1 (#592) (181553a)
- deps: update dependency @google-cloud/precise-date to v1 (#603) (2e669a1)
- deps: update dependency @google-cloud/projectify to v1 (#588) (d01d010)
- deps: update dependency @google-cloud/promisify to v1 (#589) (dad7530)
- deps: update dependency arrify to v2 (#565) (8e3b7b8)
- deps: update dependency google-auth-library to v4 (#601) (baf9d39)
- deps: update dependency google-gax to v1 (#604) (6415e7c)
- DEADLINE_EXCEEDED no longer treated as idempotent and retried (39b1dac)
- DEADLINE_EXCEEDED retry code is idempotent (#605) (1ae8db9)
- deps: update dependency google-gax to ^0.26.0 (#583) (4214a4f)
- include 'x-goog-request-params' header in requests (#562) (482e745)
- relax strictEqual to match RegExp (#566) (3388fb7)
- deps: update dependency p-defer to v2 (#553) (fe33e40)
- subscriber: ordered messages (1ae4719)
- subscription: accept pull timeout option (#556) (468e1bf)
- subscription: ordered messages (#560) (38502ad)
- upgrade engines field to >=8.10.0 (#584)
03-11-2019 15:36 PDT
- fix(typescript): correctly import long (#541)
- testing: set skipLibCheck to false for ts install test (#543)
- refactor: fix/simplify proto gen scripts (#542)
03-11-2019 09:11 PDT
- feat(topic): create setMetadata method (#537)
- fix(deps): update dependency @google-cloud/paginator to ^0.2.0
- build: Add docuploader credentials to node publish jobs (#533)
- test: add missing packages and install test (#536)
- refactor(typescript): noImplicitAny for Subscription test file (#534)
03-06-2019 20:11 PST
- fix(typescript): correct response type of
Subscription.get
(#525)
- fix(typo): correct typo: recieved => received (#527)
- build: update release configuration
- refactor(typescript): noImplicitAny for message-stream test file (#522)
- build: use node10 to run samples-test, system-test etc (#529)
- refactor: type fixes and some light housekeeping (#528)
03-04-2019 08:42 PST
- refactor(typescript): various fixes/refactors to types (#515)
- fix(ts): fix getPolicy promise return signature (#511)
- fix(typescript): export all the types (#516)
- refactor: clean up unused packages (#517)
- refactor(typescript):noImplicitAny for index test file (#502)
- refactor(ts): enable noImplicitAny for IAM test file (#501)
- refactor(ts): enable noImplicitAny for lease-manager test file (#508)
- refactor(ts): enable noImplicitAny for Histogram and Message_queues test file (#510)
- refactor(ts): enable noImplicitAny for pubsub system test file (#519)
- refactor(ts): noImplicitAny for publisher test file (#520)
02-28-2019 05:42 PST
BREAKING: message.publishTime
is now represented by a PreciseDate
object. (#503)
The PreciseDate
class extends the native Date object, so most users should be unaffected by this change. The notable differences between PreciseDate and Date objects are:
toISOString()
now returns as a RFC 3339 formatted string.- Nano and microsecond data is available via
date.getNanoseconds()
anddate.getMicroseconds()
respectively.
- feat(typescript): ship typescript declaration files (#498)
- feat(subscription): support push config auth methods (#504)
- refactor(typescript): noImplicitAny for snapshot and subscriber test file (#490)
- fix(messageStream): remove call to destroy grpc stream (#499)
02-20-2019 10:35 PST
- fix: throw on invalid credentials and update retry config (#476)
The retry logic for all methods has changed. It is possible that this could go unnoticed, however if you suddenly start seeing errors in places that were previously quiet, this might account for said errors.
- refactor(ts): improve TypeScript types (#482)
- refactor(typescript): noImplicityAny for snapshot.ts and publisher.ts (#457)
- fix: ignore messages that come in after close (#485)
- chore(deps): update dependency mocha to v6 (#488)
- fix(deps): update dependency @google-cloud/promisify to ^0.4.0 (#478)
- fix(deps): update dependency yargs to v13 (#475)
- fix(deps): update dependency duplexify to v4 (#462)
- fix(deps): update dependency google-gax to ^0.25.0 (#456)
- docs: update links in contrib guide (#479)
- docs: update contributing path in README (#471)
- chore: move CONTRIBUTING.md to root (#470)
- docs: make mention of message change in changelog (#469)
- docs: add lint/fix example to contributing guide (#464)
- fix(sample): fix retry codes in retry sample code (#458)
- test(samples): correctly handle publishTime value (#495)
- test: fix publishTime issues (#494)
- refactor(typescript): noImplicityAny for Topic test file (#487)
- refactor(ts): noImplicitAny for subscription test file (#489)
- build: use linkinator for docs test (#477)
- build: create docs test npm scripts (#474)
- build: test using @grpc/grpc-js in CI (#472)
- test: update code style of smoke test (#463)
- test: make smoke test spam less (#459)
01-29-2019 13:17 PST
- fix(publisher): unbound max send message size (#454)
01-28-2019 09:54 PST
- fix(auth): pass project id to gax clients (#447)
- refactor(typescript): noImplicityAny for topic.ts and subscription.ts (#420)
- refactor: improve subscriber error handling (#440)
- feat(subscription): auto close sub on non-recoverable errors (#441)
- chore(deps): update dependency eslint-config-prettier to v4 (#450)
- fix(deps): update dependency google-gax to ^0.24.0 (#444)
- fix(deps): update dependency google-auth-library to v3 (#433)
- build: ignore googleapis.com in doc link check (#439)
- chore: update year in the license headers. (#434)
- chore: remove trailing whitespace in package.json
- fix(sample): factor setTimeout jitter into assertion (#449)
- fix(test): broken snapshot test hook (#448)
01-16-2019 13:09 PST
This release has breaking changes.
BREAKING: Topic#publisher()
has been removed in favor of Topic#publish()
(#426)
Before
const publisher = topic.publisher(publishOptions);
await publisher.publish(Buffer.from('Hello, world!'));
After
topic.setPublishOptions(publishOptions);
await topic.publish(Buffer.from('Hello, world!'));
BREAKING: Subscription
options have changed. (#388)
Before
const subscription = topic.subscription('my-sub', {
batching: {
maxMilliseconds: 100,
},
flowControl: {
maxBytes: os.freem() * 0.2,
maxMessages: 100,
},
maxConnections: 5,
});
After
const subscription = topic.subscription('my-sub', {
ackDeadline: 10,
batching: {
callOptions: {}, // gax call options
maxMessages: 3000,
maxMilliseconds: 100,
},
flowControl: {
allowExcessMessages: true,
maxBytes: os.freem() * 0.2,
maxExtension: Infinity,
maxMessages: 100
},
streamingOptions: {
highWaterMark: 0,
maxStreams: 5, // formerly known as maxConnections
timeout: 60000 * 5, // 5 minutes
}
});
BREAKING: messages are no longer plain objects. (#388)
Messages were refactored into a class, this will only affect (some) users who treat messages like plain old objects.
The following example is something that would have worked previously, but will
now throw a TypeError
since ack
lives on the prototype chain.
const m = Object.assign({}, message, customData);
m.ack(); // TypeError: m.ack is not a function
- feat(topic): create method for publishing json (#430)
- fix(deps): update dependency google-gax to ^0.23.0 (#423)
- chore(deps): update dependency @types/sinon to v7 (#411)
- chore: update nyc and eslint configs (#409)
- docs(samples): correct publish retry settings (#419)
- docs: sync generated grpc message type docs
- fix(docs): remove unused long running operations and IAM types
- fix: modernize the sample tests (#414)
- chore: update subscriber gapic
- fix: add getSubscriberStub to synth file (#425)
- build: check broken links in generated docs (#416)
- chore(build): inject yoshi automation key (#410)
- chore: fix publish.sh permission +x (#406)
- fix(build): fix Kokoro release script (#404)
12-10-2018 09:37 PST
TypeScript related changes:
- fix(ts): copy gapic code properly (#399)
- fix(docs): add subscription expiration policy docs (#400)
- Add migration for v0.20.0 from v0.19.0 (#398)
12-06-2018 17:11 PST
- chore(deps): update dependency typescript to ~3.2.0 (#380)
- fix(docs): place doc comment above the last overload (#393)
- docs: Update documentation for Subscription (#387)
- docs: Add documentation about defaults for publisher (#384)
- docs: update readme badges (#383)
- chore: always nyc report before calling codecov (#392)
- chore: nyc ignore build/test by default (#391)
- chore: update license file (#386)
- fix(ts): do not ship types (#377)
- refactor(ts): improve types (2) (#356)
- refactor(ts): updated lint and fix command to cover gts (#375)
- refactor(ts): added ts style fix for src/iam.ts (#352)
- refactor(ts): Added ts style fix for test/topic.ts (#373)
- refactor(ts): Added ts style fix for test/subscription.ts (#372)
- refactor(ts): Added ts style fix for test/subscriber.ts (#371)
- refactor(ts): Added ts style fix for test/snapshot.ts (#370)
- refactor(ts): Added ts style fix for test/publisher.ts (#369)
- refactor(ts): added ts style fix for src/index.ts (#351)
- refactor(ts): added ts style fix for src/publisher.ts (#357)
- refactor(ts): added ts style fix for src/snapshot.ts (#358)
- refactor(ts): added ts style fix for src/subscriber.ts (#359)
- refactor(ts): added ts style fix for src/subscription.ts (#360)
- refactor(ts): added ts style fix for src/topic.ts (#361)
- refactor(ts): added ts style fix for src/util.ts (#362)
- refactor(ts): added ts style fix for test/connection-pool.ts (#364)
- refactor(ts): added ts style fix for test/histogram.ts (#365)
- refactor(ts): added ts style fix for test/iam.ts (#366)
- refactor(ts): added ts style fix for test/index.ts (#368)
- refactor(ts): added ts style fix for src/connection-pool.ts (#353)
- refactor(ts): added ts style fix for src/histogram.ts (#354)
- refactor(ts): enable noImplicitAny on src/iam.ts (#348)
- added ts style fix for system-test/pubsub.ts (#374)
- chore: ts-ignoring some stuff in tests (#343)
- fix: Pin @types/sinon to last compatible version (#345)
- chore(deps): update dependency @types/sinon to v5.0.7 (#349)
- fix: include protos in the package (#336)
11-12-2018 17:25 PST
BREAKING CHANGE
@google-cloud/pubsub
now uses ES6 import/export syntax since v0.21.0.
Before:
const pubsub = require('@google-cloud/pubsub')();
// OR
const PubSub = require('@google-cloud/pubsub');
const pubsub = new PubSub();
Now:
const {PubSub} = require('@google-cloud/pubsub');
const pubsub = new PubSub();
- refactor: use Object.assign where possible (#324)
- fix(subscription): promisify Subscription#close (#282)
- fix: maxBytes batching sending empty messages (#281)
- (New) Synchronous Pull with Lease Management (#272)
- Switch to let/const (#254)
- refactor(ts): introduce a round of types (#319)
- refactor(ts): enable noImplicitThis (#316)
- refactor(ts): convert to typescript (#310)
- feat: add expiration policy (#287)
- chore(deps): update dependency eslint-plugin-prettier to v3 (#274)
- fix(deps): update dependency google-proto-files to ^0.17.0 (#284)
- chore(deps): update dependency sinon to v7 (#285)
- chore(deps): update dependency eslint-plugin-node to v8 (#300)
- fix(deps): update dependency through2 to v3 (#320)
- refactor: drop dependencies on google-proto-files and async (#329)
- chore(deps): update dependency @google-cloud/nodejs-repo-tools to v3 (#328)
- chore(deps): update dependency @types/is to v0.0.21 (#323)
- fix(deps): update dependency google-gax to ^0.20.0 (#252)
- fix quickstart tag in v0.20 docs (#271)
- Pub/Sub Synchronous Pull Example (#259)
- Update sample topic and subscription names
- Add Pub/Sub ack deadline example (#315)
- docs(samples): update samples to use async/await (#305)
- chore: adjust samples timeout (#283)
- Fix the topic name in the samples (#262)
- chore: update eslintignore config (#332)
- chore(build): eslint all js files, and use js for all generated files (#331)
- chore: drop contributors from multiple places (#325)
- chore: use latest npm on Windows (#322)
- chore: update CircleCI config (#309)
- chore: include build in eslintignore (#304)
- chore: update issue templates (#299)
- chore: remove old issue template (#297)
- build: run tests on node11 (#296)
- chores(build): do not collect sponge.xml from windows builds (#295)
- chores(build): run codecov on continuous builds (#294)
- chore: update new issue template (#293)
- build: fix codecov uploading on Kokoro (#286)
- Update kokoro config (#275)
- Update Kokoro configs (#270)
- Update kokoro config (#269)
- test: remove appveyor config (#268)
- Update CI config (#266)
- Run prettier on smoke tests (#265)
- Fix the linter (#261)
- Enable prefer-const in the eslint config (#260)
- Enable no-var in eslint (#257)
- fix(docs): correct region tag for sample documentation (#272)
BREAKING CHANGE: - fix: drop support for node.js 4.x and 9.x (#171)
BREAKING CHANGE
@google-cloud/pubsub
now requires new
.
Before:
const PubSub = require('@google-cloud/pubsub');
const pubsub = PubSub();
Now:
const PubSub = require('@google-cloud/pubsub');
const pubsub = new PubSub();
- Re-generate library using /synth.py (#227)
- some minor proto documentation changes
- fix(deps): update dependency google-auth-library to v2 (#228)
- chore(deps): update dependency nyc to v13 (#225)
- fix(deps): update dependency google-gax to ^0.19.0 (#216)
- chore(deps): update dependency eslint-config-prettier to v3 (#213)
- chore: drop dependency on @google-cloud/common (#210)
- fix(deps): update dependency @google-cloud/common to ^0.21.0 (#206)
- chore(deps): lock file maintenance (#203)
- fix(deps): update dependency google-gax to ^0.18.0 (#197)
- chore(deps): lock file maintenance (#196)
- chore(deps): lock file maintenance (#188)
- chore(deps): update dependency eslint-plugin-node to v7 (#185)
- chore(deps): lock file maintenance (#182)
- chore(deps): lock file maintenance (#174)
- chore(deps): lock file maintenance (#173)
- chore(deps): lock file maintenance (#172)
- chore(deps): lock file maintenance (#168)
- chore(deps): lock file maintenance (#167)
- chore(deps): lock file maintenance (#166)
- fix(deps): update dependency delay to v3 (#165)
- fix(deps): update dependency @google-cloud/common to ^0.20.0 (#155)
- chore(deps): update dependency proxyquire to v2 (#160)
- chore(deps): update dependency nyc to v12 (#159)
- Update google-gax and add Synth.py (#158)
- chore(deps): update dependency sinon to v6 (#161)
- fix(deps): update dependency yargs to v12 (#164)
- fix(deps): update dependency yargs to v11 (#163)
- fix(deps): update dependency yargs to v10.1.2 (#157)
- chore(deps): update dependency ava to ^0.25.0 (#153)
- chore(deps): update dependency sinon to v4.5.0 (#154)
- fix docs (#229)
- test: fix import sample failures (#218)
- fix: correct the documentation (#117)
- fix: Fix sample region tag in JSDoc (#184)
- Fixes 179: Adds missing return statement in docs (#180)
- Update the CI config (#220)
- chore: make the CircleCI config consistent
- chore: use arrow functions (#215)
- chore: convert to es classes (#211)
- chore: do not use npm ci (#209)
- chore: use let and const (#204)
- chore: ignore package-lock.json (#207)
- chore: use split common modules (#200)
- chore: update renovate config (#199)
- chore: move mocha options to mocha.opts (#194)
- chore: require node 8 for samples (#195)
- chore: add node templates to synth.py (#191)
- chore: fix the eslint errors (#190)
- refactor: use google-auth-library (#189)
- Fixes 177: Prevents publishing attributes that have non-string values (#183)
- chore(build): use
npm ci
instead ofnpm install
(#175) - chore(package): update eslint to version 5.0.0 (#145)
- chore: update sample lockfiles (#149)
- test: use strictEqual in tests (#186)
- Configure Renovate (#144)
- refactor: drop repo-tool as an exec wrapper (#150)
- fix: update linking for samples (#146)