# Changelog

## [0.8.0](https://github.com/googleapis/google-cloud-java/compare/google-cloud-network-security-v0.7.1-SNAPSHOT...google-cloud-network-security-v0.8.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.7.0](https://github.com/googleapis/google-cloud-java/compare/google-cloud-network-security-v0.6.4...google-cloud-network-security-v0.7.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.6.4](https://github.com/googleapis/java-network-security/compare/v0.6.3...v0.6.4) (2022-10-05)


### Bug Fixes

* update protobuf to v3.21.7 ([c5f4762](https://github.com/googleapis/java-network-security/commit/c5f47626cc18e3fd42ffd4f1bdde5fc10ab6333f))

## [0.6.3](https://github.com/googleapis/java-network-security/compare/v0.6.2...v0.6.3) (2022-10-03)


### Dependencies

* Update dependency certifi to v2022.9.24 ([#207](https://github.com/googleapis/java-network-security/issues/207)) ([96bf4f8](https://github.com/googleapis/java-network-security/commit/96bf4f822590e0f96dbbcc0ee5a58491c06262d8))
* Update dependency charset-normalizer to v2.1.1 ([#211](https://github.com/googleapis/java-network-security/issues/211)) ([c6e5453](https://github.com/googleapis/java-network-security/commit/c6e5453051e036c3c56a68abbbd204be93f9970b))
* Update dependency click to v8.1.3 ([#212](https://github.com/googleapis/java-network-security/issues/212)) ([74e5b4c](https://github.com/googleapis/java-network-security/commit/74e5b4cec5d0ea0fc01e299e3997f467fcf0fb13))
* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.4 ([#232](https://github.com/googleapis/java-network-security/issues/232)) ([58e4bac](https://github.com/googleapis/java-network-security/commit/58e4bac35813d755ea5c4f5955ca666a955a5717))
* Update dependency gcp-releasetool to v1.8.8 ([#208](https://github.com/googleapis/java-network-security/issues/208)) ([ab4879d](https://github.com/googleapis/java-network-security/commit/ab4879d0f9500c4671223775b3275ce68a3e2e9f))
* Update dependency google-auth to v2.12.0 ([#214](https://github.com/googleapis/java-network-security/issues/214)) ([e711709](https://github.com/googleapis/java-network-security/commit/e7117095810ab9e4d9db0e33f3912027690498c4))
* Update dependency google-cloud-core to v2.3.2 ([#209](https://github.com/googleapis/java-network-security/issues/209)) ([4382c4e](https://github.com/googleapis/java-network-security/commit/4382c4e8fa2523aafdd6337d66fe230d7e343b82))
* Update dependency google-cloud-storage to v2.5.0 ([#215](https://github.com/googleapis/java-network-security/issues/215)) ([915d49e](https://github.com/googleapis/java-network-security/commit/915d49e4d6700316add4859c32becae7843cccdb))
* Update dependency google-crc32c to v1.5.0 ([#216](https://github.com/googleapis/java-network-security/issues/216)) ([00b50a0](https://github.com/googleapis/java-network-security/commit/00b50a0a70188e331540a9353e4455944359c446))
* Update dependency googleapis-common-protos to v1.56.4 ([#210](https://github.com/googleapis/java-network-security/issues/210)) ([cffbc84](https://github.com/googleapis/java-network-security/commit/cffbc84bda3cfe6eaec830b38476a9d1acddac3a))
* Update dependency importlib-metadata to v4.12.0 ([#217](https://github.com/googleapis/java-network-security/issues/217)) ([dbfd1f8](https://github.com/googleapis/java-network-security/commit/dbfd1f815c1ff869bce148e6b84e21b2912dc798))
* Update dependency jeepney to v0.8.0 ([#218](https://github.com/googleapis/java-network-security/issues/218)) ([03fa6af](https://github.com/googleapis/java-network-security/commit/03fa6af5c1b66537e9c9cd957201ab33970162e9))
* Update dependency jinja2 to v3.1.2 ([#219](https://github.com/googleapis/java-network-security/issues/219)) ([ec8a9ef](https://github.com/googleapis/java-network-security/commit/ec8a9ef18ab0f48e72d2912560f5a840e039cb77))
* Update dependency keyring to v23.9.3 ([#220](https://github.com/googleapis/java-network-security/issues/220)) ([c284b10](https://github.com/googleapis/java-network-security/commit/c284b10d8e697ba358cf04d193f46ed255da1528))
* Update dependency protobuf to v3.20.2 ([#222](https://github.com/googleapis/java-network-security/issues/222)) ([a6e05a1](https://github.com/googleapis/java-network-security/commit/a6e05a1828a6a36a6c50b4869ec8d1c0b41969a0))
* Update dependency protobuf to v4 ([#228](https://github.com/googleapis/java-network-security/issues/228)) ([9ae5581](https://github.com/googleapis/java-network-security/commit/9ae558182b7d9d5375164954b5e7e502167e242f))
* Update dependency pyjwt to v2.5.0 ([#223](https://github.com/googleapis/java-network-security/issues/223)) ([8935cf5](https://github.com/googleapis/java-network-security/commit/8935cf5501d89816326fc1ef15ae2dd3eb3cb551))
* Update dependency requests to v2.28.1 ([#224](https://github.com/googleapis/java-network-security/issues/224)) ([dc1d387](https://github.com/googleapis/java-network-security/commit/dc1d3873ad85ba387a263283d86b4dfac9ccb913))

## [0.6.2](https://github.com/googleapis/java-network-security/compare/v0.6.1...v0.6.2) (2022-09-15)


### Dependencies

* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.3 ([#200](https://github.com/googleapis/java-network-security/issues/200)) ([a10f027](https://github.com/googleapis/java-network-security/commit/a10f027883fefb7371dec4fc7d0bcf8e24a31f16))

## [0.6.1](https://github.com/googleapis/java-network-security/compare/v0.6.0...v0.6.1) (2022-09-09)


### Dependencies

* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.2 ([#195](https://github.com/googleapis/java-network-security/issues/195)) ([f15ff86](https://github.com/googleapis/java-network-security/commit/f15ff866411bca54e775f96c5e403ca0182f9af8))

## [0.6.0](https://github.com/googleapis/java-network-security/compare/v0.5.1...v0.6.0) (2022-08-08)


### Features

* publish cloud networksecurity v1 ([#183](https://github.com/googleapis/java-network-security/issues/183)) ([9c37c12](https://github.com/googleapis/java-network-security/commit/9c37c12219ccad6f1d8a73a54636d9b4a8bd9593))


### Bug Fixes

* enable longpaths support for windows test ([#1485](https://github.com/googleapis/java-network-security/issues/1485)) ([#181](https://github.com/googleapis/java-network-security/issues/181)) ([47d1104](https://github.com/googleapis/java-network-security/commit/47d1104ec950d5c93106821f8bbae8cfcf9e3111))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v3 ([#187](https://github.com/googleapis/java-network-security/issues/187)) ([36d3cdc](https://github.com/googleapis/java-network-security/commit/36d3cdca32a4103e610f91a89955b9ce98e5f953))


### Documentation

* update the comments of various networksecurity resources ([#186](https://github.com/googleapis/java-network-security/issues/186)) ([0b8e3c9](https://github.com/googleapis/java-network-security/commit/0b8e3c9bd8628c6acf251bc70c3eeb6fcede88f2))

## [0.5.1](https://github.com/googleapis/java-network-security/compare/v0.5.0...v0.5.1) (2022-07-01)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.13.0 ([#172](https://github.com/googleapis/java-network-security/issues/172)) ([2981851](https://github.com/googleapis/java-network-security/commit/29818511f8b3bbc43c75e62580899b3109107bb2))

## [0.5.0](https://github.com/googleapis/java-network-security/compare/v0.4.4...v0.5.0) (2022-05-19)


### Features

* add build scripts for native image testing in Java 17 ([#1440](https://github.com/googleapis/java-network-security/issues/1440)) ([#162](https://github.com/googleapis/java-network-security/issues/162)) ([413cc71](https://github.com/googleapis/java-network-security/commit/413cc715e29327523b4f1dfac65998b08ac8142d))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.11.0 ([#161](https://github.com/googleapis/java-network-security/issues/161)) ([5c97483](https://github.com/googleapis/java-network-security/commit/5c9748366c4b4dde640a90ed5b947750d1f06867))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.12.0 ([#163](https://github.com/googleapis/java-network-security/issues/163)) ([4e433f9](https://github.com/googleapis/java-network-security/commit/4e433f976c001d4e71a24519e4cc95c5f799600a))

### [0.4.4](https://github.com/googleapis/java-network-security/compare/v0.4.3...v0.4.4) (2022-04-15)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.10.0 ([#149](https://github.com/googleapis/java-network-security/issues/149)) ([92b918c](https://github.com/googleapis/java-network-security/commit/92b918c1c6310c9a1d44443b29e0f8a6ff2da66a))

### [0.4.3](https://github.com/googleapis/java-network-security/compare/v0.4.2...v0.4.3) (2022-03-29)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.9.0 ([#143](https://github.com/googleapis/java-network-security/issues/143)) ([bf5fac7](https://github.com/googleapis/java-network-security/commit/bf5fac7cce1a19a5f960180cbc28114d0435b428))

### [0.4.2](https://github.com/googleapis/java-network-security/compare/v0.4.1...v0.4.2) (2022-03-02)


### Dependencies

* update actions/setup-java action to v3 ([#130](https://github.com/googleapis/java-network-security/issues/130)) ([df95520](https://github.com/googleapis/java-network-security/commit/df9552071ae93ae02afddcba766562ce356d261f))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.8.0 ([#135](https://github.com/googleapis/java-network-security/issues/135)) ([8f96131](https://github.com/googleapis/java-network-security/commit/8f961318e8062fabef6fb1447320e87f22f533f0))

### [0.4.1](https://github.com/googleapis/java-network-security/compare/v0.4.0...v0.4.1) (2022-02-11)


### Dependencies

* update actions/github-script action to v6 ([#122](https://github.com/googleapis/java-network-security/issues/122)) ([f05c23a](https://github.com/googleapis/java-network-security/commit/f05c23ae72e4a77677ae563e3c6d337fd374f6dc))

## [0.4.0](https://github.com/googleapis/java-network-security/compare/v0.3.1...v0.4.0) (2022-02-03)


### ⚠ BREAKING CHANGES

* updating metadata messages for all long running operations (#94)

### Bug Fixes

* updating metadata messages for all long running operations ([#94](https://github.com/googleapis/java-network-security/issues/94)) ([ce84426](https://github.com/googleapis/java-network-security/commit/ce8442639ab2a99cd2aca6b6a337e1f5255e6cb2))


### Dependencies

* **java:** update actions/github-script action to v5 ([#1339](https://github.com/googleapis/java-network-security/issues/1339)) ([#109](https://github.com/googleapis/java-network-security/issues/109)) ([1f509c8](https://github.com/googleapis/java-network-security/commit/1f509c8d326961f02e7d8ad3d56ea3361dd55515))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.7.0 ([#112](https://github.com/googleapis/java-network-security/issues/112)) ([afc5aff](https://github.com/googleapis/java-network-security/commit/afc5affc6cec06290cd24ce4ceff8df0ba999319))

### [0.3.1](https://www.github.com/googleapis/java-network-security/compare/v0.3.0...v0.3.1) (2022-01-07)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.6.0 ([#95](https://www.github.com/googleapis/java-network-security/issues/95)) ([b08d486](https://www.github.com/googleapis/java-network-security/commit/b08d4866e73ddf4841d968d0d99a8e3decd89f4e))

## [0.3.0](https://www.github.com/googleapis/java-network-security/compare/v0.2.1...v0.3.0) (2021-12-06)


### Features

* Remove use of deprecated gradle command in java README ([#1196](https://www.github.com/googleapis/java-network-security/issues/1196)) ([#47](https://www.github.com/googleapis/java-network-security/issues/47)) ([eec9eae](https://www.github.com/googleapis/java-network-security/commit/eec9eae57a8edeffd78456e550c380a53d228d0c))


### Bug Fixes

* **java:** add -ntp flag to native image testing command ([#1299](https://www.github.com/googleapis/java-network-security/issues/1299)) ([#88](https://www.github.com/googleapis/java-network-security/issues/88)) ([f820e25](https://www.github.com/googleapis/java-network-security/commit/f820e25fae654e66b1ff9999752140422d3453bd))
* **java:** java 17 dependency arguments ([#1266](https://www.github.com/googleapis/java-network-security/issues/1266)) ([#74](https://www.github.com/googleapis/java-network-security/issues/74)) ([86c8175](https://www.github.com/googleapis/java-network-security/commit/86c8175c84ac8496b0b73ce715aa274865c0c10b))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.2.0 ([#50](https://www.github.com/googleapis/java-network-security/issues/50)) ([292dad2](https://www.github.com/googleapis/java-network-security/commit/292dad280b18a2ea677f19e282a070e6193a759f))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.2.1 ([#59](https://www.github.com/googleapis/java-network-security/issues/59)) ([541de5f](https://www.github.com/googleapis/java-network-security/commit/541de5fd8640a3d1a1f535dd794dee673c4cbe68))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.3.0 ([#63](https://www.github.com/googleapis/java-network-security/issues/63)) ([e729510](https://www.github.com/googleapis/java-network-security/commit/e729510344b4b1fb0b2c1996ae2dad5de3fcafe1))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.4.0 ([#72](https://www.github.com/googleapis/java-network-security/issues/72)) ([b33968f](https://www.github.com/googleapis/java-network-security/commit/b33968feb976238800a219a6a1d28cfe30667482))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.0 ([#82](https://www.github.com/googleapis/java-network-security/issues/82)) ([4089c8e](https://www.github.com/googleapis/java-network-security/commit/4089c8e4c51d1f627c4580a093fa4f591ad8c52c))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.5.1 ([#87](https://www.github.com/googleapis/java-network-security/issues/87)) ([3eb52d3](https://www.github.com/googleapis/java-network-security/commit/3eb52d348ae3c08341b6fe7d45eec45566006e01))

### [0.2.1](https://www.github.com/googleapis/java-network-security/compare/v0.2.0...v0.2.1) (2021-08-24)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.0.1 ([#36](https://www.github.com/googleapis/java-network-security/issues/36)) ([5b1733f](https://www.github.com/googleapis/java-network-security/commit/5b1733fa5057c4ef06c879253cbcc7b36da5e108))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.1.0 ([#41](https://www.github.com/googleapis/java-network-security/issues/41)) ([4ca76b0](https://www.github.com/googleapis/java-network-security/commit/4ca76b0b5930be7799d0db9f0dba6dc7bbd016f0))

## [0.2.0](https://www.github.com/googleapis/java-network-security/compare/v0.1.0...v0.2.0) (2021-08-10)


### ⚠ BREAKING CHANGES

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

### Features

* release gapic-generator-java v2.0.0 ([#30](https://www.github.com/googleapis/java-network-security/issues/30)) ([0616351](https://www.github.com/googleapis/java-network-security/commit/061635185fa0b3416248123990ac7a448305a86a))


### Bug Fixes

* owlbot post-processor should generate README ([#1154](https://www.github.com/googleapis/java-network-security/issues/1154)) ([#16](https://www.github.com/googleapis/java-network-security/issues/16)) ([c54e4ad](https://www.github.com/googleapis/java-network-security/commit/c54e4ad96a31dfb1816cf76dfe6443e0db11f3d1)), closes [#1146](https://www.github.com/googleapis/java-network-security/issues/1146) [#1147](https://www.github.com/googleapis/java-network-security/issues/1147)


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v2 ([#31](https://www.github.com/googleapis/java-network-security/issues/31)) ([7c9f533](https://www.github.com/googleapis/java-network-security/commit/7c9f5332e7e1acc50d848d855e9ba8f30f79db61))

## 0.1.0 (2021-07-06)


### Features

* initial generation ([446dc6a](https://www.github.com/googleapis/java-network-security/commit/446dc6a6114e1728b9475e0976122dfce7af6881))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v1.4.0 ([#9](https://www.github.com/googleapis/java-network-security/issues/9)) ([dc2e612](https://www.github.com/googleapis/java-network-security/commit/dc2e612d7deac35897c63f2cd503be8e0244259b))
