# Changelog

## [2.5.0](https://github.com/googleapis/google-cloud-java/compare/google-cloud-workflows-v2.4.1-SNAPSHOT...google-cloud-workflows-v2.5.0) (2022-10-24)


### Features

* [analyticsdata] add `subject_to_thresholding` field to `ResponseMetadata` type ([#8545](https://github.com/googleapis/google-cloud-java/issues/8545)) ([8fdc6c1](https://github.com/googleapis/google-cloud-java/commit/8fdc6c1f10f88f30f4d1407579d645f75366b4cf))
* add `tokens_per_project_per_hour` field to `PropertyQuota` type ([8fdc6c1](https://github.com/googleapis/google-cloud-java/commit/8fdc6c1f10f88f30f4d1407579d645f75366b4cf))


### Bug Fixes

* **deps:** update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.2 ([#8325](https://github.com/googleapis/google-cloud-java/issues/8325)) ([01f492b](https://github.com/googleapis/google-cloud-java/commit/01f492be424acdb90edb23ba66656aeff7cf39eb))
* **deps:** update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.4 ([#8528](https://github.com/googleapis/google-cloud-java/issues/8528)) ([bd36199](https://github.com/googleapis/google-cloud-java/commit/bd361998ac4eb7c78eef3b3eac39aef31a0cf44e))
* owl-bot-staging should not be commited ([#8337](https://github.com/googleapis/google-cloud-java/issues/8337)) ([c9bb4a9](https://github.com/googleapis/google-cloud-java/commit/c9bb4a97aa19032b78c86c951fe9920f24ac4eec))


### Dependencies

* reverting renovate bot pull requests ([#8417](https://github.com/googleapis/google-cloud-java/issues/8417)) ([8f0c60b](https://github.com/googleapis/google-cloud-java/commit/8f0c60bde446acccc665eb7894723632eefc3503))

## [2.4.0](https://github.com/googleapis/google-cloud-java/compare/google-cloud-workflows-v2.3.6...google-cloud-workflows-v2.4.0) (2022-10-17)


### Features

* [analyticsdata] add `subject_to_thresholding` field to `ResponseMetadata` type ([#8545](https://github.com/googleapis/google-cloud-java/issues/8545)) ([8fdc6c1](https://github.com/googleapis/google-cloud-java/commit/8fdc6c1f10f88f30f4d1407579d645f75366b4cf))
* add `tokens_per_project_per_hour` field to `PropertyQuota` type ([8fdc6c1](https://github.com/googleapis/google-cloud-java/commit/8fdc6c1f10f88f30f4d1407579d645f75366b4cf))


### Bug Fixes

* **deps:** update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.2 ([#8325](https://github.com/googleapis/google-cloud-java/issues/8325)) ([01f492b](https://github.com/googleapis/google-cloud-java/commit/01f492be424acdb90edb23ba66656aeff7cf39eb))
* **deps:** update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.4 ([#8528](https://github.com/googleapis/google-cloud-java/issues/8528)) ([bd36199](https://github.com/googleapis/google-cloud-java/commit/bd361998ac4eb7c78eef3b3eac39aef31a0cf44e))
* owl-bot-staging should not be commited ([#8337](https://github.com/googleapis/google-cloud-java/issues/8337)) ([c9bb4a9](https://github.com/googleapis/google-cloud-java/commit/c9bb4a97aa19032b78c86c951fe9920f24ac4eec))


### Dependencies

* reverting renovate bot pull requests ([#8417](https://github.com/googleapis/google-cloud-java/issues/8417)) ([8f0c60b](https://github.com/googleapis/google-cloud-java/commit/8f0c60bde446acccc665eb7894723632eefc3503))

## [2.3.6](https://github.com/googleapis/java-workflows/compare/v2.3.5...v2.3.6) (2022-10-05)


### Bug Fixes

* update protobuf to v3.21.7 ([1801fe6](https://github.com/googleapis/java-workflows/commit/1801fe649d6ed1dae397e16c25a7954099cfd56b))

## [2.3.5](https://github.com/googleapis/java-workflows/compare/v2.3.4...v2.3.5) (2022-10-03)


### Dependencies

* Update dependency certifi to v2022.9.24 ([#500](https://github.com/googleapis/java-workflows/issues/500)) ([a2f473d](https://github.com/googleapis/java-workflows/commit/a2f473d185597e87c26623a5061c9a7a77897256))
* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.4 ([#510](https://github.com/googleapis/java-workflows/issues/510)) ([d96993d](https://github.com/googleapis/java-workflows/commit/d96993d3b448e2b7e692755c4d4de07589b2ff2c))
* Update dependency gcp-releasetool to v1.8.8 ([#501](https://github.com/googleapis/java-workflows/issues/501)) ([93c739b](https://github.com/googleapis/java-workflows/commit/93c739b003a5bbfa54c898f79ce97359125f029d))
* Update dependency google-auth to v2.11.1 ([#502](https://github.com/googleapis/java-workflows/issues/502)) ([7bae540](https://github.com/googleapis/java-workflows/commit/7bae540d91e8f1fababcf109979e1933ce865fd8))
* Update dependency googleapis-common-protos to v1.56.4 ([#504](https://github.com/googleapis/java-workflows/issues/504)) ([dc290f5](https://github.com/googleapis/java-workflows/commit/dc290f5f1d7fd6108ea18b2b38df0cdd0549c042))
* Update dependency pyjwt to v2.5.0 ([#505](https://github.com/googleapis/java-workflows/issues/505)) ([2e04e11](https://github.com/googleapis/java-workflows/commit/2e04e11635a737038a758de03b4d7cb3aafbb609))
* Update dependency requests to v2.28.1 ([#506](https://github.com/googleapis/java-workflows/issues/506)) ([6974473](https://github.com/googleapis/java-workflows/commit/6974473fc07943b6e94cff1a4186200c3afe905c))

## [2.3.4](https://github.com/googleapis/java-workflows/compare/v2.3.3...v2.3.4) (2022-09-15)


### Dependencies

* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.3 ([#494](https://github.com/googleapis/java-workflows/issues/494)) ([174b737](https://github.com/googleapis/java-workflows/commit/174b737e464cb6d06f52f60d8a5d90c99daa4112))

## [2.3.3](https://github.com/googleapis/java-workflows/compare/v2.3.2...v2.3.3) (2022-09-09)


### Dependencies

* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.2 ([#489](https://github.com/googleapis/java-workflows/issues/489)) ([6138420](https://github.com/googleapis/java-workflows/commit/61384202c7d421861502825488d9287f1984f5b0))

## [2.3.2](https://github.com/googleapis/java-workflows/compare/v2.3.1...v2.3.2) (2022-08-11)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v3 ([#480](https://github.com/googleapis/java-workflows/issues/480)) ([b2f56c2](https://github.com/googleapis/java-workflows/commit/b2f56c2f75cf810cdb6e105378bbdff4211bbb4e))

## [2.3.1](https://github.com/googleapis/java-workflows/compare/v2.3.0...v2.3.1) (2022-07-13)


### Bug Fixes

* enable longpaths support for windows test ([#1485](https://github.com/googleapis/java-workflows/issues/1485)) ([#473](https://github.com/googleapis/java-workflows/issues/473)) ([7081d23](https://github.com/googleapis/java-workflows/commit/7081d23b71fbeefc6a7146b32579078f4ab38796))

## [2.3.0](https://github.com/googleapis/java-workflows/compare/v2.2.1...v2.3.0) (2022-07-01)


### Features

* Enable REST transport for most of Java and Go clients ([503cc00](https://github.com/googleapis/java-workflows/commit/503cc00598e94741f72f4e25e82ab2768093350b))


### Bug Fixes

* update gapic-generator-java with mock service generation fixes ([#456](https://github.com/googleapis/java-workflows/issues/456)) ([503cc00](https://github.com/googleapis/java-workflows/commit/503cc00598e94741f72f4e25e82ab2768093350b))

## [2.2.1](https://github.com/googleapis/java-workflows/compare/v2.2.0...v2.2.1) (2022-06-23)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.13.0 ([#462](https://github.com/googleapis/java-workflows/issues/462)) ([15bdfd9](https://github.com/googleapis/java-workflows/commit/15bdfd9dc5edbbd77a16de4d4fa6519a8f7117f3))

## [2.2.0](https://github.com/googleapis/java-workflows/compare/v2.1.10...v2.2.0) (2022-05-24)


### Features

* add build scripts for native image testing in Java 17 ([#1440](https://github.com/googleapis/java-workflows/issues/1440)) ([#454](https://github.com/googleapis/java-workflows/issues/454)) ([5194c30](https://github.com/googleapis/java-workflows/commit/5194c303012675db89127e1581017ef7ecbda737))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.11.0 ([#453](https://github.com/googleapis/java-workflows/issues/453)) ([8241724](https://github.com/googleapis/java-workflows/commit/824172473845135eee1853aa9d9ccac096182328))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.12.0 ([#455](https://github.com/googleapis/java-workflows/issues/455)) ([3b68d9c](https://github.com/googleapis/java-workflows/commit/3b68d9ca4307fd34f913061363015decc73c1b23))

### [2.1.10](https://github.com/googleapis/java-workflows/compare/v2.1.9...v2.1.10) (2022-04-15)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.10.0 ([#442](https://github.com/googleapis/java-workflows/issues/442)) ([f4fad72](https://github.com/googleapis/java-workflows/commit/f4fad72758fb2ff59ff5d3444a6c8ce287e18153))

### [2.1.9](https://github.com/googleapis/java-workflows/compare/v2.1.8...v2.1.9) (2022-03-29)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.9.0 ([#436](https://github.com/googleapis/java-workflows/issues/436)) ([bb47b14](https://github.com/googleapis/java-workflows/commit/bb47b14f77e8246981a180e926fc2b8dff6d40f6))

### [2.1.8](https://github.com/googleapis/java-workflows/compare/v2.1.7...v2.1.8) (2022-03-02)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.8.0 ([#428](https://github.com/googleapis/java-workflows/issues/428)) ([a2773ed](https://github.com/googleapis/java-workflows/commit/a2773edbcefd2dea0d8541ac82b9a2e86458ea41))

### [2.1.7](https://github.com/googleapis/java-workflows/compare/v2.1.6...v2.1.7) (2022-02-11)


### Dependencies

* update actions/github-script action to v6 ([#415](https://github.com/googleapis/java-workflows/issues/415)) ([0b8a2c0](https://github.com/googleapis/java-workflows/commit/0b8a2c036739c6f8154699adb133e0574f10e495))

### [2.1.6](https://github.com/googleapis/java-workflows/compare/v2.1.5...v2.1.6) (2022-02-03)


### Dependencies

* **java:** update actions/github-script action to v5 ([#1339](https://github.com/googleapis/java-workflows/issues/1339)) ([#403](https://github.com/googleapis/java-workflows/issues/403)) ([e171805](https://github.com/googleapis/java-workflows/commit/e171805dfcdd621adcd60f6c4dafd58d0d897718))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.7.0 ([#406](https://github.com/googleapis/java-workflows/issues/406)) ([66d636f](https://github.com/googleapis/java-workflows/commit/66d636fda025b30c46929e3161d6d9afb726911b))

### [2.1.5](https://www.github.com/googleapis/java-workflows/compare/v2.1.4...v2.1.5) (2022-01-07)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.6.0 ([#389](https://www.github.com/googleapis/java-workflows/issues/389)) ([3f17bc2](https://www.github.com/googleapis/java-workflows/commit/3f17bc201e2e47ffeca90d84470fff7c2e1726c7))

### [2.1.4](https://www.github.com/googleapis/java-workflows/compare/v2.1.3...v2.1.4) (2021-12-06)


### Bug Fixes

* **java:** add -ntp flag to native image testing command ([#1299](https://www.github.com/googleapis/java-workflows/issues/1299)) ([#383](https://www.github.com/googleapis/java-workflows/issues/383)) ([e612767](https://www.github.com/googleapis/java-workflows/commit/e612767a7e52094293963097cb0b74345634f947))
* **java:** java 17 dependency arguments ([#1266](https://www.github.com/googleapis/java-workflows/issues/1266)) ([#367](https://www.github.com/googleapis/java-workflows/issues/367)) ([b144e95](https://www.github.com/googleapis/java-workflows/commit/b144e95a151e31bc57f51096aebe6eb06d281b5d))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.0 ([#376](https://www.github.com/googleapis/java-workflows/issues/376)) ([273fe9a](https://www.github.com/googleapis/java-workflows/commit/273fe9ae3b8190554320e916b7efd74d55d8123f))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.1 ([#382](https://www.github.com/googleapis/java-workflows/issues/382)) ([f1260d1](https://www.github.com/googleapis/java-workflows/commit/f1260d1295703e54886ee6ecc0de3bb8db08a780))

### [2.1.3](https://www.github.com/googleapis/java-workflows/compare/v2.1.2...v2.1.3) (2021-10-20)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.4.0 ([#361](https://www.github.com/googleapis/java-workflows/issues/361)) ([cf16a48](https://www.github.com/googleapis/java-workflows/commit/cf16a48f6bfc2dce29b061ab4ee74c4880008240))


### Documentation

* clarified format and semantics of service_account field ([fc2ba14](https://www.github.com/googleapis/java-workflows/commit/fc2ba141706b1aff0a089eec9050e1b71d5cd65d))
* clarified when revision_id of a workflow is updated ([#362](https://www.github.com/googleapis/java-workflows/issues/362)) ([fc2ba14](https://www.github.com/googleapis/java-workflows/commit/fc2ba141706b1aff0a089eec9050e1b71d5cd65d))
* documented expanded workflow size limit ([fc2ba14](https://www.github.com/googleapis/java-workflows/commit/fc2ba141706b1aff0a089eec9050e1b71d5cd65d))

### [2.1.2](https://www.github.com/googleapis/java-workflows/compare/v2.1.1...v2.1.2) (2021-09-22)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.3.0 ([#348](https://www.github.com/googleapis/java-workflows/issues/348)) ([31f5b07](https://www.github.com/googleapis/java-workflows/commit/31f5b0764d0d0d4989ff32683ea878ded2dd6ef3))

### [2.1.1](https://www.github.com/googleapis/java-workflows/compare/v2.1.0...v2.1.1) (2021-09-14)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.2.1 ([#341](https://www.github.com/googleapis/java-workflows/issues/341)) ([1e03836](https://www.github.com/googleapis/java-workflows/commit/1e0383668437594f9c18c933aa3e436754adef45))

## [2.1.0](https://www.github.com/googleapis/java-workflows/compare/v2.0.2...v2.1.0) (2021-09-01)


### Features

* Remove use of deprecated gradle command in java README ([#1196](https://www.github.com/googleapis/java-workflows/issues/1196)) ([#327](https://www.github.com/googleapis/java-workflows/issues/327)) ([e3c82d9](https://www.github.com/googleapis/java-workflows/commit/e3c82d994db99e9d8606a25faa8f6d763b38d94f))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.2.0 ([#329](https://www.github.com/googleapis/java-workflows/issues/329)) ([dfef32d](https://www.github.com/googleapis/java-workflows/commit/dfef32d14f3b5cf7cfc0b62b405f6ea67a637567))

### [2.0.2](https://www.github.com/googleapis/java-workflows/compare/v2.0.1...v2.0.2) (2021-08-23)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.1.0 ([#321](https://www.github.com/googleapis/java-workflows/issues/321)) ([31e602d](https://www.github.com/googleapis/java-workflows/commit/31e602d45f192bcab7ec23f3c725f341d7e91579))

### [2.0.1](https://www.github.com/googleapis/java-workflows/compare/v2.0.0...v2.0.1) (2021-08-12)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.0.1 ([#315](https://www.github.com/googleapis/java-workflows/issues/315)) ([1b0cf41](https://www.github.com/googleapis/java-workflows/commit/1b0cf4196e205bf73e1bdf3f852111dca6010fdc))

## [2.0.0](https://www.github.com/googleapis/java-workflows/compare/v1.0.2...v2.0.0) (2021-08-06)


### ⚠ BREAKING CHANGES

* release gapic-generator-java v2.0.0 (#308)

### Features

* release gapic-generator-java v2.0.0 ([#308](https://www.github.com/googleapis/java-workflows/issues/308)) ([4b2b88e](https://www.github.com/googleapis/java-workflows/commit/4b2b88e57de4fd2068a02bccd5e052a6e74f765c))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2 ([#309](https://www.github.com/googleapis/java-workflows/issues/309)) ([ad95ebd](https://www.github.com/googleapis/java-workflows/commit/ad95ebdeafffd92b8aaecf71cca9eaee87eba5db))

### [1.0.2](https://www.github.com/googleapis/java-workflows/compare/v1.0.1...v1.0.2) (2021-07-01)


### Bug Fixes

* Add `shopt -s nullglob` to dependencies script ([#1130](https://www.github.com/googleapis/java-workflows/issues/1130)) ([#286](https://www.github.com/googleapis/java-workflows/issues/286)) ([df42c3c](https://www.github.com/googleapis/java-workflows/commit/df42c3c22823e02aa8052ccf0990bcbb7988113c))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v1.4.0 ([#288](https://www.github.com/googleapis/java-workflows/issues/288)) ([50107b9](https://www.github.com/googleapis/java-workflows/commit/50107b99f17961b4b805d31c37c033ab395a9748))

### [1.0.1](https://www.github.com/googleapis/java-workflows/compare/v1.0.0...v1.0.1) (2021-06-09)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v1.3.0 ([#274](https://www.github.com/googleapis/java-workflows/issues/274)) ([9161126](https://www.github.com/googleapis/java-workflows/commit/9161126021e5b54cea3090b6cad852dfc1760375))

## [1.0.0](https://www.github.com/googleapis/java-workflows/compare/v0.4.2...v1.0.0) (2021-05-26)


### Features

* promote to 1.0.0 ([#267](https://www.github.com/googleapis/java-workflows/issues/267)) ([91404ce](https://www.github.com/googleapis/java-workflows/commit/91404cef3b9cef16c0e0c1e322a9eda0d4f80b24))

### [0.4.2](https://www.github.com/googleapis/java-workflows/compare/v0.4.1...v0.4.2) (2021-05-19)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v1.2.0 ([#257](https://www.github.com/googleapis/java-workflows/issues/257)) ([7971ae3](https://www.github.com/googleapis/java-workflows/commit/7971ae3a74995fd995a49c09dea8d33cd97a6ab7))

### [0.4.1](https://www.github.com/googleapis/java-workflows/compare/v0.4.0...v0.4.1) (2021-05-14)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v1.1.0 ([#249](https://www.github.com/googleapis/java-workflows/issues/249)) ([6c985db](https://www.github.com/googleapis/java-workflows/commit/6c985db4aaca7ba4a61edd3d27d4c02791b0f175))

## [0.4.0](https://www.github.com/googleapis/java-workflows/compare/v0.3.1...v0.4.0) (2021-04-29)


### Features

* v1 client generation ([#240](https://www.github.com/googleapis/java-workflows/issues/240)) ([9619ec1](https://www.github.com/googleapis/java-workflows/commit/9619ec1badf86746f02ff7675cd0c1bebe77309b))


### Bug Fixes

* release scripts from issuing overlapping phases ([#234](https://www.github.com/googleapis/java-workflows/issues/234)) ([fd2ed80](https://www.github.com/googleapis/java-workflows/commit/fd2ed802a86e6899562669daa47453e717abc385))
* typo ([#231](https://www.github.com/googleapis/java-workflows/issues/231)) ([6a883dc](https://www.github.com/googleapis/java-workflows/commit/6a883dc973f0ec59fca2049e8fcdb92f5ca06727))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.21.1 ([#235](https://www.github.com/googleapis/java-workflows/issues/235)) ([4b610fa](https://www.github.com/googleapis/java-workflows/commit/4b610fa70529db33ca807c1332b03a71fc9eec02))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v1 ([#238](https://www.github.com/googleapis/java-workflows/issues/238)) ([563e22b](https://www.github.com/googleapis/java-workflows/commit/563e22b476b3a495c05c392e929e436262caeca8))

### [0.3.1](https://www.github.com/googleapis/java-workflows/compare/v0.3.0...v0.3.1) (2021-04-09)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.21.0 ([#222](https://www.github.com/googleapis/java-workflows/issues/222)) ([f3abba3](https://www.github.com/googleapis/java-workflows/commit/f3abba3cd3ac823054bef16b7bb51adfab229987))

## [0.3.0](https://www.github.com/googleapis/java-workflows/compare/v0.2.1...v0.3.0) (2021-03-11)


### Features

* **generator:** update protoc to v3.15.3 ([#203](https://www.github.com/googleapis/java-workflows/issues/203)) ([607f990](https://www.github.com/googleapis/java-workflows/commit/607f9904330c68f624c37d040e2ffc5ab735ef50))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.20.1 ([#211](https://www.github.com/googleapis/java-workflows/issues/211)) ([47a3bf4](https://www.github.com/googleapis/java-workflows/commit/47a3bf4d8f12110af1fe4571e661dc08656644cb))

### [0.2.1](https://www.github.com/googleapis/java-workflows/compare/v0.2.0...v0.2.1) (2021-02-25)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.20.0 ([#199](https://www.github.com/googleapis/java-workflows/issues/199)) ([fcf1074](https://www.github.com/googleapis/java-workflows/commit/fcf1074f31a17284685be2817e9f6e60448c8767))

## [0.2.0](https://www.github.com/googleapis/java-workflows/compare/v0.1.4...v0.2.0) (2021-02-22)


### Features

* migrate to microgenerator ([#159](https://www.github.com/googleapis/java-workflows/issues/159)) ([fb32524](https://www.github.com/googleapis/java-workflows/commit/fb325248049da0109eb142107e91e0ae2b8ee39e))


### Bug Fixes

* update repo name ([#182](https://www.github.com/googleapis/java-workflows/issues/182)) ([529aa0e](https://www.github.com/googleapis/java-workflows/commit/529aa0e71150e7e6c1f99627e0bfc6c81b8a22dd))


### Documentation

* generate sample code in the Java microgenerator ([#185](https://www.github.com/googleapis/java-workflows/issues/185)) ([592501d](https://www.github.com/googleapis/java-workflows/commit/592501d6150886bf9531e669733f4dd3ed7f5fa8))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.16.0 ([#151](https://www.github.com/googleapis/java-workflows/issues/151)) ([a3003c8](https://www.github.com/googleapis/java-workflows/commit/a3003c8b601668c0e6b656aebf1fc1476083b4a2))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.16.1 ([ec15f27](https://www.github.com/googleapis/java-workflows/commit/ec15f2794dad3d9acfca3e9b7ccb876cd9be17f6))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.17.0 ([#166](https://www.github.com/googleapis/java-workflows/issues/166)) ([96e5909](https://www.github.com/googleapis/java-workflows/commit/96e5909d2ba0607e84df54f42df350a13a8eadf7))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.18.0 ([#171](https://www.github.com/googleapis/java-workflows/issues/171)) ([39e348c](https://www.github.com/googleapis/java-workflows/commit/39e348cb0012893da1a1fa37f00e28175928f0ce))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.19.0 ([#193](https://www.github.com/googleapis/java-workflows/issues/193)) ([098dbaa](https://www.github.com/googleapis/java-workflows/commit/098dbaaec94fe7fd9f0ea8c4a46c953a4dff2d70))

### [0.1.4](https://www.github.com/googleapis/java-workflows/compare/v0.1.3...v0.1.4) (2020-11-02)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.14.1 ([#114](https://www.github.com/googleapis/java-workflows/issues/114)) ([cc7ba2d](https://www.github.com/googleapis/java-workflows/commit/cc7ba2db20199bbffcf0e870454d30eac982fd12))

### [0.1.3](https://www.github.com/googleapis/java-workflows/compare/v0.1.2...v0.1.3) (2020-10-22)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.13.0 ([#78](https://www.github.com/googleapis/java-workflows/issues/78)) ([90b5113](https://www.github.com/googleapis/java-workflows/commit/90b511372c1d80cde6673f0ac551a268aab4184c))

### [0.1.2](https://www.github.com/googleapis/java-workflows/compare/v0.1.1...v0.1.2) (2020-10-19)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.12.1 ([#67](https://www.github.com/googleapis/java-workflows/issues/67)) ([a0b833a](https://www.github.com/googleapis/java-workflows/commit/a0b833afe2d2a34950bd00105cc0ddaad0e1c43b))

### [0.1.1](https://www.github.com/googleapis/java-workflows/compare/v0.1.0...v0.1.1) (2020-10-08)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.10.2 ([#23](https://www.github.com/googleapis/java-workflows/issues/23)) ([e91cb1e](https://www.github.com/googleapis/java-workflows/commit/e91cb1e5659d75e0626ed2ea4422a556f3c5e48e))

## 0.1.0 (2020-10-01)


### Features

* initial client generation ([42ce0b4](https://www.github.com/googleapis/java-workflows/commit/42ce0b46e60a653032e45642a6e96c5cbcd0b269))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.10.0 ([#15](https://www.github.com/googleapis/java-workflows/issues/15)) ([e396683](https://www.github.com/googleapis/java-workflows/commit/e39668313e4de72b37df3fbc20eefc0fbd4fa4ba))
