# Changelog

## [0.7.0](https://github.com/googleapis/google-cloud-java/compare/google-cloud-life-sciences-v0.6.1-SNAPSHOT...google-cloud-life-sciences-v0.7.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))

## [0.6.0](https://github.com/googleapis/google-cloud-java/compare/google-cloud-life-sciences-v0.5.7...google-cloud-life-sciences-v0.6.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))

## [0.5.7](https://github.com/googleapis/java-life-sciences/compare/v0.5.6...v0.5.7) (2022-10-05)


### Bug Fixes

* update protobuf to v3.21.7 ([1479321](https://github.com/googleapis/java-life-sciences/commit/1479321e19d58a59b28613911c810015d7e9d629))

## [0.5.6](https://github.com/googleapis/java-life-sciences/compare/v0.5.5...v0.5.6) (2022-10-03)


### Dependencies

* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.4 ([#254](https://github.com/googleapis/java-life-sciences/issues/254)) ([287fdd7](https://github.com/googleapis/java-life-sciences/commit/287fdd7a46f3b6dae73e1db9b6bcfd56aca5c6eb))

## [0.5.5](https://github.com/googleapis/java-life-sciences/compare/v0.5.4...v0.5.5) (2022-09-28)


### Dependencies

* Update dependency certifi to v2022.9.24 ([#234](https://github.com/googleapis/java-life-sciences/issues/234)) ([45ce6cc](https://github.com/googleapis/java-life-sciences/commit/45ce6cc4a2a11c5b81f115f852314d3f69343078))
* Update dependency charset-normalizer to v2.1.1 ([#239](https://github.com/googleapis/java-life-sciences/issues/239)) ([f851bd7](https://github.com/googleapis/java-life-sciences/commit/f851bd7da8410f3582adbe4def90528d05977513))
* Update dependency click to v8.1.3 ([#240](https://github.com/googleapis/java-life-sciences/issues/240)) ([9fda4ba](https://github.com/googleapis/java-life-sciences/commit/9fda4ba7383bcd8140d727b4ee29433a38184e5d))
* Update dependency gcp-releasetool to v1.8.8 ([#235](https://github.com/googleapis/java-life-sciences/issues/235)) ([baa744b](https://github.com/googleapis/java-life-sciences/commit/baa744b6bd5a69be3d21ddc0a2071ea705c41e3e))
* Update dependency google-api-core to v2.10.1 ([#241](https://github.com/googleapis/java-life-sciences/issues/241)) ([5d5cb62](https://github.com/googleapis/java-life-sciences/commit/5d5cb62bba4b3f95fc4c0e46b23651013d3ecbf4))
* Update dependency google-auth to v2.11.1 ([#236](https://github.com/googleapis/java-life-sciences/issues/236)) ([f8f4c5a](https://github.com/googleapis/java-life-sciences/commit/f8f4c5a267727b5f4eb650856e82574e51775d39))
* Update dependency google-cloud-core to v2.3.2 ([#237](https://github.com/googleapis/java-life-sciences/issues/237)) ([ab03a21](https://github.com/googleapis/java-life-sciences/commit/ab03a21dfa4661e23962b26a11e1295d5aee74e5))
* Update dependency google-cloud-storage to v2.5.0 ([#242](https://github.com/googleapis/java-life-sciences/issues/242)) ([3b54274](https://github.com/googleapis/java-life-sciences/commit/3b542748a442a08c9f010b97eed84070a5984024))
* Update dependency google-crc32c to v1.5.0 ([#243](https://github.com/googleapis/java-life-sciences/issues/243)) ([44a466e](https://github.com/googleapis/java-life-sciences/commit/44a466ea98b0f3c3412346cd2423eafefbf4bcae))
* Update dependency googleapis-common-protos to v1.56.4 ([#238](https://github.com/googleapis/java-life-sciences/issues/238)) ([c7dfd0e](https://github.com/googleapis/java-life-sciences/commit/c7dfd0eb1f24038f97e13f6e983302daad1a0612))
* Update dependency importlib-metadata to v4.12.0 ([#250](https://github.com/googleapis/java-life-sciences/issues/250)) ([13433c6](https://github.com/googleapis/java-life-sciences/commit/13433c6858237899029157f874d19ecf8d23a0d6))
* Update dependency markupsafe to v2.1.1 ([#244](https://github.com/googleapis/java-life-sciences/issues/244)) ([be3f732](https://github.com/googleapis/java-life-sciences/commit/be3f732f871ca2d67aa216c4fa50238e0de86f57))
* Update dependency protobuf to v3.20.2 ([#245](https://github.com/googleapis/java-life-sciences/issues/245)) ([e06fa36](https://github.com/googleapis/java-life-sciences/commit/e06fa362681858cc2d27b71bc6a06925e03a044a))
* Update dependency pyjwt to v2.5.0 ([#246](https://github.com/googleapis/java-life-sciences/issues/246)) ([1aeabf4](https://github.com/googleapis/java-life-sciences/commit/1aeabf43c22d826c0439bc14a0a534119bc7ba3d))
* Update dependency requests to v2.28.1 ([#247](https://github.com/googleapis/java-life-sciences/issues/247)) ([7c5d2d7](https://github.com/googleapis/java-life-sciences/commit/7c5d2d7a4b80916b53b77999bf649b99ac7842ea))
* Update dependency typing-extensions to v4.3.0 ([#248](https://github.com/googleapis/java-life-sciences/issues/248)) ([b22cfe0](https://github.com/googleapis/java-life-sciences/commit/b22cfe0795f526dcc0d9f17e6072b3ae79d03144))

## [0.5.4](https://github.com/googleapis/java-life-sciences/compare/v0.5.3...v0.5.4) (2022-09-15)


### Dependencies

* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.3 ([#228](https://github.com/googleapis/java-life-sciences/issues/228)) ([1778e15](https://github.com/googleapis/java-life-sciences/commit/1778e157bfed03d7f664a5f994bff506873be827))

## [0.5.3](https://github.com/googleapis/java-life-sciences/compare/v0.5.2...v0.5.3) (2022-09-09)


### Dependencies

* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.2 ([#224](https://github.com/googleapis/java-life-sciences/issues/224)) ([5c85a62](https://github.com/googleapis/java-life-sciences/commit/5c85a626cd030152f2565ed486bac936ec39cc5c))

## [0.5.2](https://github.com/googleapis/java-life-sciences/compare/v0.5.1...v0.5.2) (2022-08-09)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v3 ([#216](https://github.com/googleapis/java-life-sciences/issues/216)) ([7f8fd68](https://github.com/googleapis/java-life-sciences/commit/7f8fd687b56880d4dcd43ca12705af9dcbac7fd1))

## [0.5.1](https://github.com/googleapis/java-life-sciences/compare/v0.5.0...v0.5.1) (2022-07-13)


### Bug Fixes

* enable longpaths support for windows test ([#1485](https://github.com/googleapis/java-life-sciences/issues/1485)) ([#210](https://github.com/googleapis/java-life-sciences/issues/210)) ([98381b7](https://github.com/googleapis/java-life-sciences/commit/98381b758ec384688052a3751daf2ee0d46c3d27))

## [0.5.0](https://github.com/googleapis/java-life-sciences/compare/v0.4.1...v0.5.0) (2022-07-01)


### Features

* Enable REST transport for most of Java and Go clients ([#196](https://github.com/googleapis/java-life-sciences/issues/196)) ([ede5b3b](https://github.com/googleapis/java-life-sciences/commit/ede5b3b856dff94aa8ea48687531367f1086ec63))


### Bug Fixes

* update gapic-generator-java with mock service generation fixes ([#202](https://github.com/googleapis/java-life-sciences/issues/202)) ([96e93cb](https://github.com/googleapis/java-life-sciences/commit/96e93cb98baa006b435f0ae057cd59cfc824f056))

## [0.4.1](https://github.com/googleapis/java-life-sciences/compare/v0.4.0...v0.4.1) (2022-06-23)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.13.0 ([#195](https://github.com/googleapis/java-life-sciences/issues/195)) ([b8c64ea](https://github.com/googleapis/java-life-sciences/commit/b8c64ea802b50c41fb7da67a8efe8eca5d9ccd0a))

## [0.4.0](https://github.com/googleapis/java-life-sciences/compare/v0.3.10...v0.4.0) (2022-05-20)


### Features

* add build scripts for native image testing in Java 17 ([#1440](https://github.com/googleapis/java-life-sciences/issues/1440)) ([#185](https://github.com/googleapis/java-life-sciences/issues/185)) ([a066b86](https://github.com/googleapis/java-life-sciences/commit/a066b86da8647b7365d74504a731dc8ee8fbb221))

### [0.3.10](https://github.com/googleapis/java-life-sciences/compare/v0.3.9...v0.3.10) (2022-05-19)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.12.0 ([#184](https://github.com/googleapis/java-life-sciences/issues/184)) ([c3fd8ea](https://github.com/googleapis/java-life-sciences/commit/c3fd8eaf5976319ed1b333c4fade13e64d06498b))

### [0.3.9](https://github.com/googleapis/java-life-sciences/compare/v0.3.8...v0.3.9) (2022-04-15)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.10.0 ([#172](https://github.com/googleapis/java-life-sciences/issues/172)) ([afdaf4c](https://github.com/googleapis/java-life-sciences/commit/afdaf4c32e159350c39514b35b5076134c369a7b))

### [0.3.8](https://github.com/googleapis/java-life-sciences/compare/v0.3.7...v0.3.8) (2022-03-29)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.9.0 ([#165](https://github.com/googleapis/java-life-sciences/issues/165)) ([88d381f](https://github.com/googleapis/java-life-sciences/commit/88d381f951498942ee5806e9bf57a0dfe0980aa2))

### [0.3.7](https://github.com/googleapis/java-life-sciences/compare/v0.3.6...v0.3.7) (2022-03-02)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.8.0 ([#156](https://github.com/googleapis/java-life-sciences/issues/156)) ([b1cb16b](https://github.com/googleapis/java-life-sciences/commit/b1cb16b9de4d47d8b0f3310beb74061ec3382586))

### [0.3.6](https://github.com/googleapis/java-life-sciences/compare/v0.3.5...v0.3.6) (2022-02-28)


### Dependencies

* update actions/setup-java action to v3 ([#148](https://github.com/googleapis/java-life-sciences/issues/148)) ([f3e622d](https://github.com/googleapis/java-life-sciences/commit/f3e622d8f7bd148dc013697710f51b1c5ee61177))

### [0.3.5](https://github.com/googleapis/java-life-sciences/compare/v0.3.4...v0.3.5) (2022-02-11)


### Dependencies

* update actions/github-script action to v6 ([#140](https://github.com/googleapis/java-life-sciences/issues/140)) ([7f173c5](https://github.com/googleapis/java-life-sciences/commit/7f173c5483a9361a6a8c8ef6a2bf19553a8db3a4))

### [0.3.4](https://github.com/googleapis/java-life-sciences/compare/v0.3.3...v0.3.4) (2022-02-03)


### Dependencies

* **java:** update actions/github-script action to v5 ([#1339](https://github.com/googleapis/java-life-sciences/issues/1339)) ([#127](https://github.com/googleapis/java-life-sciences/issues/127)) ([05b6c2e](https://github.com/googleapis/java-life-sciences/commit/05b6c2edbd5686c32206391b6c930484905e108b))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.7.0 ([#130](https://github.com/googleapis/java-life-sciences/issues/130)) ([3dca253](https://github.com/googleapis/java-life-sciences/commit/3dca2539aabd055d3d705c02a1c813dd7d890db8))

### [0.3.3](https://www.github.com/googleapis/java-life-sciences/compare/v0.3.2...v0.3.3) (2022-01-07)


### Bug Fixes

* **java:** run Maven in plain console-friendly mode ([#1301](https://www.github.com/googleapis/java-life-sciences/issues/1301)) ([#111](https://www.github.com/googleapis/java-life-sciences/issues/111)) ([d6aebe4](https://www.github.com/googleapis/java-life-sciences/commit/d6aebe4c36c9b9fb6b2979a67d4e76abe66cd1b1))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.6.0 ([#114](https://www.github.com/googleapis/java-life-sciences/issues/114)) ([64d3c72](https://www.github.com/googleapis/java-life-sciences/commit/64d3c72465a237d6bb28878e0957e0470d6938b1))

### [0.3.2](https://www.github.com/googleapis/java-life-sciences/compare/v0.3.1...v0.3.2) (2021-12-06)


### Bug Fixes

* **java:** add -ntp flag to native image testing command ([#1299](https://www.github.com/googleapis/java-life-sciences/issues/1299)) ([#106](https://www.github.com/googleapis/java-life-sciences/issues/106)) ([2f0cde3](https://www.github.com/googleapis/java-life-sciences/commit/2f0cde30187389513a917db437dbce65db670a2e))
* **java:** java 17 dependency arguments ([#1266](https://www.github.com/googleapis/java-life-sciences/issues/1266)) ([#91](https://www.github.com/googleapis/java-life-sciences/issues/91)) ([420e09a](https://www.github.com/googleapis/java-life-sciences/commit/420e09ab11fe1394aec8740d8b48ab69ee41fd85))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.0 ([#100](https://www.github.com/googleapis/java-life-sciences/issues/100)) ([b23331f](https://www.github.com/googleapis/java-life-sciences/commit/b23331ff3624ae8ccd998f364c684c1f47df2660))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.1 ([#105](https://www.github.com/googleapis/java-life-sciences/issues/105)) ([0f64d03](https://www.github.com/googleapis/java-life-sciences/commit/0f64d03ce4d0918663758f9ec032d82cdd25ad80))

### [0.3.1](https://www.github.com/googleapis/java-life-sciences/compare/v0.3.0...v0.3.1) (2021-10-19)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.4.0 ([#85](https://www.github.com/googleapis/java-life-sciences/issues/85)) ([ed91878](https://www.github.com/googleapis/java-life-sciences/commit/ed91878c98145d20fe13a8c0bdc6343c3a833b6f))

## [0.3.0](https://www.github.com/googleapis/java-life-sciences/compare/v0.2.2...v0.3.0) (2021-09-27)


### Features

* Remove use of deprecated gradle command in java README ([#1196](https://www.github.com/googleapis/java-life-sciences/issues/1196)) ([#57](https://www.github.com/googleapis/java-life-sciences/issues/57)) ([3a9f8ae](https://www.github.com/googleapis/java-life-sciences/commit/3a9f8ae62a250d80a124c02eb88d4b46e36abfea))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.2.0 ([#60](https://www.github.com/googleapis/java-life-sciences/issues/60)) ([7247e57](https://www.github.com/googleapis/java-life-sciences/commit/7247e5738c9f126c088e12fd3a1b107efd849dbb))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.2.1 ([#69](https://www.github.com/googleapis/java-life-sciences/issues/69)) ([7c723fa](https://www.github.com/googleapis/java-life-sciences/commit/7c723fa88e109383cd43cdcb49b2a6844d8ebae3))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.3.0 ([#73](https://www.github.com/googleapis/java-life-sciences/issues/73)) ([95f64ec](https://www.github.com/googleapis/java-life-sciences/commit/95f64ec7f3d37c7a83039231e4f0dd4288afacba))

### [0.2.2](https://www.github.com/googleapis/java-life-sciences/compare/v0.2.1...v0.2.2) (2021-08-23)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.1.0 ([#51](https://www.github.com/googleapis/java-life-sciences/issues/51)) ([fbbe817](https://www.github.com/googleapis/java-life-sciences/commit/fbbe8172d39177e34724641300837b932ed067ec))

### [0.2.1](https://www.github.com/googleapis/java-life-sciences/compare/v0.2.0...v0.2.1) (2021-08-12)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.0.1 ([#45](https://www.github.com/googleapis/java-life-sciences/issues/45)) ([ed6be34](https://www.github.com/googleapis/java-life-sciences/commit/ed6be34fd5503f768a931a9691dcb304f036b6ef))

## [0.2.0](https://www.github.com/googleapis/java-life-sciences/compare/v0.1.1...v0.2.0) (2021-08-06)


### ⚠ BREAKING CHANGES

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

### Features

* release gapic-generator-java v2.0.0 ([#39](https://www.github.com/googleapis/java-life-sciences/issues/39)) ([8fef691](https://www.github.com/googleapis/java-life-sciences/commit/8fef691d5ebb3923325e040a66b091c0c392217f))


### Bug Fixes

* Add `shopt -s nullglob` to dependencies script ([#1130](https://www.github.com/googleapis/java-life-sciences/issues/1130)) ([#23](https://www.github.com/googleapis/java-life-sciences/issues/23)) ([5c4c2e8](https://www.github.com/googleapis/java-life-sciences/commit/5c4c2e832bb724e7295ba872e51aa5be7c866a03))
* owlbot post-processor should generate README ([#1154](https://www.github.com/googleapis/java-life-sciences/issues/1154)) ([#27](https://www.github.com/googleapis/java-life-sciences/issues/27)) ([320fee6](https://www.github.com/googleapis/java-life-sciences/commit/320fee6fcc429eaefadba5f4bc29b73903df49d4)), closes [#1146](https://www.github.com/googleapis/java-life-sciences/issues/1146) [#1147](https://www.github.com/googleapis/java-life-sciences/issues/1147)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v1.4.0 ([#25](https://www.github.com/googleapis/java-life-sciences/issues/25)) ([cac3c2c](https://www.github.com/googleapis/java-life-sciences/commit/cac3c2c2eb21d914214f4663d31eb070c43b5e00))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2 ([#40](https://www.github.com/googleapis/java-life-sciences/issues/40)) ([e0e2df5](https://www.github.com/googleapis/java-life-sciences/commit/e0e2df5a6f6c0cf2d08fa97c4f2b686e3401c7d7))

### [0.1.1](https://www.github.com/googleapis/java-life-sciences/compare/v0.1.0...v0.1.1) (2021-06-10)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v1 ([#15](https://www.github.com/googleapis/java-life-sciences/issues/15)) ([d3721c3](https://www.github.com/googleapis/java-life-sciences/commit/d3721c316245586a925f228c8dea02b84ce6124e))

## 0.1.0 (2021-06-09)


### Features

* initial generation ([a49131e](https://www.github.com/googleapis/java-life-sciences/commit/a49131ea010a6b979081b7e60310811ca59af9f5))
