From 982a7a84054962e6859c5140762ef74a9b10f2c5 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 8 Nov 2022 02:02:30 +0000 Subject: [PATCH 1/6] chore(python): update dependencies in .kokoro/requirements.txt [autoapprove] (#226) Source-Link: https://togithub.com/googleapis/synthtool/commit/e3a1277ac35fc88c09db1930533e24292b132ced Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:452901c74a22f9b9a3bd02bce780b8e8805c97270d424684bff809ce5be8c2a2 --- .github/.OwlBot.lock.yaml | 2 +- .kokoro/requirements.txt | 325 +++++++++++++++++++++----------------- noxfile.py | 11 +- 3 files changed, 187 insertions(+), 151 deletions(-) diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml index 3815c98..12edee7 100644 --- a/.github/.OwlBot.lock.yaml +++ b/.github/.OwlBot.lock.yaml @@ -13,4 +13,4 @@ # limitations under the License. docker: image: gcr.io/cloud-devrel-public-resources/owlbot-python:latest - digest: sha256:7a40313731a7cb1454eef6b33d3446ebb121836738dc3ab3d2d3ded5268c35b6 + digest: sha256:452901c74a22f9b9a3bd02bce780b8e8805c97270d424684bff809ce5be8c2a2 diff --git a/.kokoro/requirements.txt b/.kokoro/requirements.txt index d15994b..31425f1 100644 --- a/.kokoro/requirements.txt +++ b/.kokoro/requirements.txt @@ -20,9 +20,9 @@ cachetools==5.2.0 \ --hash=sha256:6a94c6402995a99c3970cc7e4884bb60b4a8639938157eeed436098bf9831757 \ --hash=sha256:f9f17d2aec496a9aa6b76f53e3b614c965223c061982d434d160f930c698a9db # via google-auth -certifi==2022.6.15 \ - --hash=sha256:84c85a9078b11105f04f3036a9482ae10e4621616db313fe045dd24743a0820d \ - --hash=sha256:fe86415d55e84719d75f8b69414f6438ac3547d2078ab91b67e779ef69378412 +certifi==2022.9.24 \ + --hash=sha256:0d9c601124e5a6ba9712dbc60d9c53c21e34f5f641fe83002317394311bdce14 \ + --hash=sha256:90c1a32f1d68f940488354e36370f6cca89f0f106db09518524c88d6ed83f382 # via requests cffi==1.15.1 \ --hash=sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5 \ @@ -110,29 +110,33 @@ commonmark==0.9.1 \ --hash=sha256:452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60 \ --hash=sha256:da2f38c92590f83de410ba1a3cbceafbc74fee9def35f9251ba9a971d6d66fd9 # via rich -cryptography==37.0.4 \ - --hash=sha256:190f82f3e87033821828f60787cfa42bff98404483577b591429ed99bed39d59 \ - --hash=sha256:2be53f9f5505673eeda5f2736bea736c40f051a739bfae2f92d18aed1eb54596 \ - --hash=sha256:30788e070800fec9bbcf9faa71ea6d8068f5136f60029759fd8c3efec3c9dcb3 \ - --hash=sha256:3d41b965b3380f10e4611dbae366f6dc3cefc7c9ac4e8842a806b9672ae9add5 \ - --hash=sha256:4c590ec31550a724ef893c50f9a97a0c14e9c851c85621c5650d699a7b88f7ab \ - --hash=sha256:549153378611c0cca1042f20fd9c5030d37a72f634c9326e225c9f666d472884 \ - --hash=sha256:63f9c17c0e2474ccbebc9302ce2f07b55b3b3fcb211ded18a42d5764f5c10a82 \ - --hash=sha256:6bc95ed67b6741b2607298f9ea4932ff157e570ef456ef7ff0ef4884a134cc4b \ - --hash=sha256:7099a8d55cd49b737ffc99c17de504f2257e3787e02abe6d1a6d136574873441 \ - --hash=sha256:75976c217f10d48a8b5a8de3d70c454c249e4b91851f6838a4e48b8f41eb71aa \ - --hash=sha256:7bc997818309f56c0038a33b8da5c0bfbb3f1f067f315f9abd6fc07ad359398d \ - --hash=sha256:80f49023dd13ba35f7c34072fa17f604d2f19bf0989f292cedf7ab5770b87a0b \ - --hash=sha256:91ce48d35f4e3d3f1d83e29ef4a9267246e6a3be51864a5b7d2247d5086fa99a \ - --hash=sha256:a958c52505c8adf0d3822703078580d2c0456dd1d27fabfb6f76fe63d2971cd6 \ - --hash=sha256:b62439d7cd1222f3da897e9a9fe53bbf5c104fff4d60893ad1355d4c14a24157 \ - --hash=sha256:b7f8dd0d4c1f21759695c05a5ec8536c12f31611541f8904083f3dc582604280 \ - --hash=sha256:d204833f3c8a33bbe11eda63a54b1aad7aa7456ed769a982f21ec599ba5fa282 \ - --hash=sha256:e007f052ed10cc316df59bc90fbb7ff7950d7e2919c9757fd42a2b8ecf8a5f67 \ - --hash=sha256:f2dcb0b3b63afb6df7fd94ec6fbddac81b5492513f7b0436210d390c14d46ee8 \ - --hash=sha256:f721d1885ecae9078c3f6bbe8a88bc0786b6e749bf32ccec1ef2b18929a05046 \ - --hash=sha256:f7a6de3e98771e183645181b3627e2563dcde3ce94a9e42a3f427d2255190327 \ - --hash=sha256:f8c0a6e9e1dd3eb0414ba320f85da6b0dcbd543126e30fcc546e7372a7fbf3b9 +cryptography==38.0.3 \ + --hash=sha256:068147f32fa662c81aebab95c74679b401b12b57494872886eb5c1139250ec5d \ + --hash=sha256:06fc3cc7b6f6cca87bd56ec80a580c88f1da5306f505876a71c8cfa7050257dd \ + --hash=sha256:25c1d1f19729fb09d42e06b4bf9895212292cb27bb50229f5aa64d039ab29146 \ + --hash=sha256:402852a0aea73833d982cabb6d0c3bb582c15483d29fb7085ef2c42bfa7e38d7 \ + --hash=sha256:4e269dcd9b102c5a3d72be3c45d8ce20377b8076a43cbed6f660a1afe365e436 \ + --hash=sha256:5419a127426084933076132d317911e3c6eb77568a1ce23c3ac1e12d111e61e0 \ + --hash=sha256:554bec92ee7d1e9d10ded2f7e92a5d70c1f74ba9524947c0ba0c850c7b011828 \ + --hash=sha256:5e89468fbd2fcd733b5899333bc54d0d06c80e04cd23d8c6f3e0542358c6060b \ + --hash=sha256:65535bc550b70bd6271984d9863a37741352b4aad6fb1b3344a54e6950249b55 \ + --hash=sha256:6ab9516b85bebe7aa83f309bacc5f44a61eeb90d0b4ec125d2d003ce41932d36 \ + --hash=sha256:6addc3b6d593cd980989261dc1cce38263c76954d758c3c94de51f1e010c9a50 \ + --hash=sha256:728f2694fa743a996d7784a6194da430f197d5c58e2f4e278612b359f455e4a2 \ + --hash=sha256:785e4056b5a8b28f05a533fab69febf5004458e20dad7e2e13a3120d8ecec75a \ + --hash=sha256:78cf5eefac2b52c10398a42765bfa981ce2372cbc0457e6bf9658f41ec3c41d8 \ + --hash=sha256:7f836217000342d448e1c9a342e9163149e45d5b5eca76a30e84503a5a96cab0 \ + --hash=sha256:8d41a46251bf0634e21fac50ffd643216ccecfaf3701a063257fe0b2be1b6548 \ + --hash=sha256:984fe150f350a3c91e84de405fe49e688aa6092b3525f407a18b9646f6612320 \ + --hash=sha256:9b24bcff7853ed18a63cfb0c2b008936a9554af24af2fb146e16d8e1aed75748 \ + --hash=sha256:b1b35d9d3a65542ed2e9d90115dfd16bbc027b3f07ee3304fc83580f26e43249 \ + --hash=sha256:b1b52c9e5f8aa2b802d48bd693190341fae201ea51c7a167d69fc48b60e8a959 \ + --hash=sha256:bbf203f1a814007ce24bd4d51362991d5cb90ba0c177a9c08825f2cc304d871f \ + --hash=sha256:be243c7e2bfcf6cc4cb350c0d5cdf15ca6383bbcb2a8ef51d3c9411a9d4386f0 \ + --hash=sha256:bfbe6ee19615b07a98b1d2287d6a6073f734735b49ee45b11324d85efc4d5cbd \ + --hash=sha256:c46837ea467ed1efea562bbeb543994c2d1f6e800785bd5a2c98bc096f5cb220 \ + --hash=sha256:dfb4f4dd568de1b6af9f4cda334adf7d72cf5bc052516e1b2608b683375dd95c \ + --hash=sha256:ed7b00096790213e09eb11c97cc6e2b757f15f3d2f85833cd2d3ec3fe37c1722 # via # gcp-releasetool # secretstorage @@ -148,23 +152,23 @@ filelock==3.8.0 \ --hash=sha256:55447caa666f2198c5b6b13a26d2084d26fa5b115c00d065664b2124680c4edc \ --hash=sha256:617eb4e5eedc82fc5f47b6d61e4d11cb837c56cb4544e39081099fa17ad109d4 # via virtualenv -gcp-docuploader==0.6.3 \ - --hash=sha256:ba8c9d76b3bbac54b0311c503a373b00edc2dc02d6d54ea9507045adb8e870f7 \ - --hash=sha256:c0f5aaa82ce1854a386197e4e359b120ad6d4e57ae2c812fce42219a3288026b +gcp-docuploader==0.6.4 \ + --hash=sha256:01486419e24633af78fd0167db74a2763974765ee8078ca6eb6964d0ebd388af \ + --hash=sha256:70861190c123d907b3b067da896265ead2eeb9263969d6955c9e0bb091b5ccbf # via -r requirements.in -gcp-releasetool==1.8.7 \ - --hash=sha256:3d2a67c9db39322194afb3b427e9cb0476ce8f2a04033695f0aeb63979fc2b37 \ - --hash=sha256:5e4d28f66e90780d77f3ecf1e9155852b0c3b13cbccb08ab07e66b2357c8da8d +gcp-releasetool==1.9.1 \ + --hash=sha256:952f4055d5d986b070ae2a71c4410b250000f9cc5a1e26398fcd55a5bbc5a15f \ + --hash=sha256:d0d3c814a97c1a237517e837d8cfa668ced8df4b882452578ecef4a4e79c583b # via -r requirements.in -google-api-core==2.8.2 \ - --hash=sha256:06f7244c640322b508b125903bb5701bebabce8832f85aba9335ec00b3d02edc \ - --hash=sha256:93c6a91ccac79079ac6bbf8b74ee75db970cc899278b97d53bc012f35908cf50 +google-api-core==2.10.2 \ + --hash=sha256:10c06f7739fe57781f87523375e8e1a3a4674bf6392cd6131a3222182b971320 \ + --hash=sha256:34f24bd1d5f72a8c4519773d99ca6bf080a6c4e041b4e9f024fe230191dda62e # via # google-cloud-core # google-cloud-storage -google-auth==2.11.0 \ - --hash=sha256:be62acaae38d0049c21ca90f27a23847245c9f161ff54ede13af2cb6afecbac9 \ - --hash=sha256:ed65ecf9f681832298e29328e1ef0a3676e3732b2e56f41532d45f70a22de0fb +google-auth==2.14.0 \ + --hash=sha256:1ad5b0e6eba5f69645971abb3d2c197537d5914070a8c6d30299dfdb07c5c700 \ + --hash=sha256:cf24817855d874ede2efd071aa22125445f555de1685b739a9782fcf408c2a3d # via # gcp-releasetool # google-api-core @@ -178,72 +182,97 @@ google-cloud-storage==2.5.0 \ --hash=sha256:19a26c66c317ce542cea0830b7e787e8dac2588b6bfa4d3fd3b871ba16305ab0 \ --hash=sha256:382f34b91de2212e3c2e7b40ec079d27ee2e3dbbae99b75b1bcd8c63063ce235 # via gcp-docuploader -google-crc32c==1.3.0 \ - --hash=sha256:04e7c220798a72fd0f08242bc8d7a05986b2a08a0573396187fd32c1dcdd58b3 \ - --hash=sha256:05340b60bf05b574159e9bd940152a47d38af3fb43803ffe71f11d704b7696a6 \ - --hash=sha256:12674a4c3b56b706153a358eaa1018c4137a5a04635b92b4652440d3d7386206 \ - --hash=sha256:127f9cc3ac41b6a859bd9dc4321097b1a4f6aa7fdf71b4f9227b9e3ebffb4422 \ - --hash=sha256:13af315c3a0eec8bb8b8d80b8b128cb3fcd17d7e4edafc39647846345a3f003a \ - --hash=sha256:1926fd8de0acb9d15ee757175ce7242e235482a783cd4ec711cc999fc103c24e \ - --hash=sha256:226f2f9b8e128a6ca6a9af9b9e8384f7b53a801907425c9a292553a3a7218ce0 \ - --hash=sha256:276de6273eb074a35bc598f8efbc00c7869c5cf2e29c90748fccc8c898c244df \ - --hash=sha256:318f73f5484b5671f0c7f5f63741ab020a599504ed81d209b5c7129ee4667407 \ - --hash=sha256:3bbce1be3687bbfebe29abdb7631b83e6b25da3f4e1856a1611eb21854b689ea \ - --hash=sha256:42ae4781333e331a1743445931b08ebdad73e188fd554259e772556fc4937c48 \ - --hash=sha256:58be56ae0529c664cc04a9c76e68bb92b091e0194d6e3c50bea7e0f266f73713 \ - --hash=sha256:5da2c81575cc3ccf05d9830f9e8d3c70954819ca9a63828210498c0774fda1a3 \ - --hash=sha256:6311853aa2bba4064d0c28ca54e7b50c4d48e3de04f6770f6c60ebda1e975267 \ - --hash=sha256:650e2917660e696041ab3dcd7abac160b4121cd9a484c08406f24c5964099829 \ - --hash=sha256:6a4db36f9721fdf391646685ecffa404eb986cbe007a3289499020daf72e88a2 \ - --hash=sha256:779cbf1ce375b96111db98fca913c1f5ec11b1d870e529b1dc7354b2681a8c3a \ - --hash=sha256:7f6fe42536d9dcd3e2ffb9d3053f5d05221ae3bbcefbe472bdf2c71c793e3183 \ - --hash=sha256:891f712ce54e0d631370e1f4997b3f182f3368179198efc30d477c75d1f44942 \ - --hash=sha256:95c68a4b9b7828ba0428f8f7e3109c5d476ca44996ed9a5f8aac6269296e2d59 \ - --hash=sha256:96a8918a78d5d64e07c8ea4ed2bc44354e3f93f46a4866a40e8db934e4c0d74b \ - --hash=sha256:9c3cf890c3c0ecfe1510a452a165431b5831e24160c5fcf2071f0f85ca5a47cd \ - --hash=sha256:9f58099ad7affc0754ae42e6d87443299f15d739b0ce03c76f515153a5cda06c \ - --hash=sha256:a0b9e622c3b2b8d0ce32f77eba617ab0d6768b82836391e4f8f9e2074582bf02 \ - --hash=sha256:a7f9cbea4245ee36190f85fe1814e2d7b1e5f2186381b082f5d59f99b7f11328 \ - --hash=sha256:bab4aebd525218bab4ee615786c4581952eadc16b1ff031813a2fd51f0cc7b08 \ - --hash=sha256:c124b8c8779bf2d35d9b721e52d4adb41c9bfbde45e6a3f25f0820caa9aba73f \ - --hash=sha256:c9da0a39b53d2fab3e5467329ed50e951eb91386e9d0d5b12daf593973c3b168 \ - --hash=sha256:ca60076c388728d3b6ac3846842474f4250c91efbfe5afa872d3ffd69dd4b318 \ - --hash=sha256:cb6994fff247987c66a8a4e550ef374671c2b82e3c0d2115e689d21e511a652d \ - --hash=sha256:d1c1d6236feab51200272d79b3d3e0f12cf2cbb12b208c835b175a21efdb0a73 \ - --hash=sha256:dd7760a88a8d3d705ff562aa93f8445ead54f58fd482e4f9e2bafb7e177375d4 \ - --hash=sha256:dda4d8a3bb0b50f540f6ff4b6033f3a74e8bf0bd5320b70fab2c03e512a62812 \ - --hash=sha256:e0f1ff55dde0ebcfbef027edc21f71c205845585fffe30d4ec4979416613e9b3 \ - --hash=sha256:e7a539b9be7b9c00f11ef16b55486141bc2cdb0c54762f84e3c6fc091917436d \ - --hash=sha256:eb0b14523758e37802f27b7f8cd973f5f3d33be7613952c0df904b68c4842f0e \ - --hash=sha256:ed447680ff21c14aaceb6a9f99a5f639f583ccfe4ce1a5e1d48eb41c3d6b3217 \ - --hash=sha256:f52a4ad2568314ee713715b1e2d79ab55fab11e8b304fd1462ff5cccf4264b3e \ - --hash=sha256:fbd60c6aaa07c31d7754edbc2334aef50601b7f1ada67a96eb1eb57c7c72378f \ - --hash=sha256:fc28e0db232c62ca0c3600884933178f0825c99be4474cdd645e378a10588125 \ - --hash=sha256:fe31de3002e7b08eb20823b3735b97c86c5926dd0581c7710a680b418a8709d4 \ - --hash=sha256:fec221a051150eeddfdfcff162e6db92c65ecf46cb0f7bb1bf812a1520ec026b \ - --hash=sha256:ff71073ebf0e42258a42a0b34f2c09ec384977e7f6808999102eedd5b49920e3 +google-crc32c==1.5.0 \ + --hash=sha256:024894d9d3cfbc5943f8f230e23950cd4906b2fe004c72e29b209420a1e6b05a \ + --hash=sha256:02c65b9817512edc6a4ae7c7e987fea799d2e0ee40c53ec573a692bee24de876 \ + --hash=sha256:02ebb8bf46c13e36998aeaad1de9b48f4caf545e91d14041270d9dca767b780c \ + --hash=sha256:07eb3c611ce363c51a933bf6bd7f8e3878a51d124acfc89452a75120bc436289 \ + --hash=sha256:1034d91442ead5a95b5aaef90dbfaca8633b0247d1e41621d1e9f9db88c36298 \ + --hash=sha256:116a7c3c616dd14a3de8c64a965828b197e5f2d121fedd2f8c5585c547e87b02 \ + --hash=sha256:19e0a019d2c4dcc5e598cd4a4bc7b008546b0358bd322537c74ad47a5386884f \ + --hash=sha256:1c7abdac90433b09bad6c43a43af253e688c9cfc1c86d332aed13f9a7c7f65e2 \ + --hash=sha256:1e986b206dae4476f41bcec1faa057851f3889503a70e1bdb2378d406223994a \ + --hash=sha256:272d3892a1e1a2dbc39cc5cde96834c236d5327e2122d3aaa19f6614531bb6eb \ + --hash=sha256:278d2ed7c16cfc075c91378c4f47924c0625f5fc84b2d50d921b18b7975bd210 \ + --hash=sha256:2ad40e31093a4af319dadf503b2467ccdc8f67c72e4bcba97f8c10cb078207b5 \ + --hash=sha256:2e920d506ec85eb4ba50cd4228c2bec05642894d4c73c59b3a2fe20346bd00ee \ + --hash=sha256:3359fc442a743e870f4588fcf5dcbc1bf929df1fad8fb9905cd94e5edb02e84c \ + --hash=sha256:37933ec6e693e51a5b07505bd05de57eee12f3e8c32b07da7e73669398e6630a \ + --hash=sha256:398af5e3ba9cf768787eef45c803ff9614cc3e22a5b2f7d7ae116df8b11e3314 \ + --hash=sha256:3b747a674c20a67343cb61d43fdd9207ce5da6a99f629c6e2541aa0e89215bcd \ + --hash=sha256:461665ff58895f508e2866824a47bdee72497b091c730071f2b7575d5762ab65 \ + --hash=sha256:4c6fdd4fccbec90cc8a01fc00773fcd5fa28db683c116ee3cb35cd5da9ef6c37 \ + --hash=sha256:5829b792bf5822fd0a6f6eb34c5f81dd074f01d570ed7f36aa101d6fc7a0a6e4 \ + --hash=sha256:596d1f98fc70232fcb6590c439f43b350cb762fb5d61ce7b0e9db4539654cc13 \ + --hash=sha256:5ae44e10a8e3407dbe138984f21e536583f2bba1be9491239f942c2464ac0894 \ + --hash=sha256:635f5d4dd18758a1fbd1049a8e8d2fee4ffed124462d837d1a02a0e009c3ab31 \ + --hash=sha256:64e52e2b3970bd891309c113b54cf0e4384762c934d5ae56e283f9a0afcd953e \ + --hash=sha256:66741ef4ee08ea0b2cc3c86916ab66b6aef03768525627fd6a1b34968b4e3709 \ + --hash=sha256:67b741654b851abafb7bc625b6d1cdd520a379074e64b6a128e3b688c3c04740 \ + --hash=sha256:6ac08d24c1f16bd2bf5eca8eaf8304812f44af5cfe5062006ec676e7e1d50afc \ + --hash=sha256:6f998db4e71b645350b9ac28a2167e6632c239963ca9da411523bb439c5c514d \ + --hash=sha256:72218785ce41b9cfd2fc1d6a017dc1ff7acfc4c17d01053265c41a2c0cc39b8c \ + --hash=sha256:74dea7751d98034887dbd821b7aae3e1d36eda111d6ca36c206c44478035709c \ + --hash=sha256:759ce4851a4bb15ecabae28f4d2e18983c244eddd767f560165563bf9aefbc8d \ + --hash=sha256:77e2fd3057c9d78e225fa0a2160f96b64a824de17840351b26825b0848022906 \ + --hash=sha256:7c074fece789b5034b9b1404a1f8208fc2d4c6ce9decdd16e8220c5a793e6f61 \ + --hash=sha256:7c42c70cd1d362284289c6273adda4c6af8039a8ae12dc451dcd61cdabb8ab57 \ + --hash=sha256:7f57f14606cd1dd0f0de396e1e53824c371e9544a822648cd76c034d209b559c \ + --hash=sha256:83c681c526a3439b5cf94f7420471705bbf96262f49a6fe546a6db5f687a3d4a \ + --hash=sha256:8485b340a6a9e76c62a7dce3c98e5f102c9219f4cfbf896a00cf48caf078d438 \ + --hash=sha256:84e6e8cd997930fc66d5bb4fde61e2b62ba19d62b7abd7a69920406f9ecca946 \ + --hash=sha256:89284716bc6a5a415d4eaa11b1726d2d60a0cd12aadf5439828353662ede9dd7 \ + --hash=sha256:8b87e1a59c38f275c0e3676fc2ab6d59eccecfd460be267ac360cc31f7bcde96 \ + --hash=sha256:8f24ed114432de109aa9fd317278518a5af2d31ac2ea6b952b2f7782b43da091 \ + --hash=sha256:98cb4d057f285bd80d8778ebc4fde6b4d509ac3f331758fb1528b733215443ae \ + --hash=sha256:998679bf62b7fb599d2878aa3ed06b9ce688b8974893e7223c60db155f26bd8d \ + --hash=sha256:9ba053c5f50430a3fcfd36f75aff9caeba0440b2d076afdb79a318d6ca245f88 \ + --hash=sha256:9c99616c853bb585301df6de07ca2cadad344fd1ada6d62bb30aec05219c45d2 \ + --hash=sha256:a1fd716e7a01f8e717490fbe2e431d2905ab8aa598b9b12f8d10abebb36b04dd \ + --hash=sha256:a2355cba1f4ad8b6988a4ca3feed5bff33f6af2d7f134852cf279c2aebfde541 \ + --hash=sha256:b1f8133c9a275df5613a451e73f36c2aea4fe13c5c8997e22cf355ebd7bd0728 \ + --hash=sha256:b8667b48e7a7ef66afba2c81e1094ef526388d35b873966d8a9a447974ed9178 \ + --hash=sha256:ba1eb1843304b1e5537e1fca632fa894d6f6deca8d6389636ee5b4797affb968 \ + --hash=sha256:be82c3c8cfb15b30f36768797a640e800513793d6ae1724aaaafe5bf86f8f346 \ + --hash=sha256:c02ec1c5856179f171e032a31d6f8bf84e5a75c45c33b2e20a3de353b266ebd8 \ + --hash=sha256:c672d99a345849301784604bfeaeba4db0c7aae50b95be04dd651fd2a7310b93 \ + --hash=sha256:c6c777a480337ac14f38564ac88ae82d4cd238bf293f0a22295b66eb89ffced7 \ + --hash=sha256:cae0274952c079886567f3f4f685bcaf5708f0a23a5f5216fdab71f81a6c0273 \ + --hash=sha256:cd67cf24a553339d5062eff51013780a00d6f97a39ca062781d06b3a73b15462 \ + --hash=sha256:d3515f198eaa2f0ed49f8819d5732d70698c3fa37384146079b3799b97667a94 \ + --hash=sha256:d5280312b9af0976231f9e317c20e4a61cd2f9629b7bfea6a693d1878a264ebd \ + --hash=sha256:de06adc872bcd8c2a4e0dc51250e9e65ef2ca91be023b9d13ebd67c2ba552e1e \ + --hash=sha256:e1674e4307fa3024fc897ca774e9c7562c957af85df55efe2988ed9056dc4e57 \ + --hash=sha256:e2096eddb4e7c7bdae4bd69ad364e55e07b8316653234a56552d9c988bd2d61b \ + --hash=sha256:e560628513ed34759456a416bf86b54b2476c59144a9138165c9a1575801d0d9 \ + --hash=sha256:edfedb64740750e1a3b16152620220f51d58ff1b4abceb339ca92e934775c27a \ + --hash=sha256:f13cae8cc389a440def0c8c52057f37359014ccbc9dc1f0827936bcd367c6100 \ + --hash=sha256:f314013e7dcd5cf45ab1945d92e713eec788166262ae8deb2cfacd53def27325 \ + --hash=sha256:f583edb943cf2e09c60441b910d6a20b4d9d626c75a36c8fcac01a6c96c01183 \ + --hash=sha256:fd8536e902db7e365f49e7d9029283403974ccf29b13fc7028b97e2295b33556 \ + --hash=sha256:fe70e325aa68fa4b5edf7d1a4b6f691eb04bbccac0ace68e34820d283b5f80d4 # via google-resumable-media -google-resumable-media==2.3.3 \ - --hash=sha256:27c52620bd364d1c8116eaac4ea2afcbfb81ae9139fb3199652fcac1724bfb6c \ - --hash=sha256:5b52774ea7a829a8cdaa8bd2d4c3d4bc660c91b30857ab2668d0eb830f4ea8c5 +google-resumable-media==2.4.0 \ + --hash=sha256:2aa004c16d295c8f6c33b2b4788ba59d366677c0a25ae7382436cb30f776deaa \ + --hash=sha256:8d5518502f92b9ecc84ac46779bd4f09694ecb3ba38a3e7ca737a86d15cbca1f # via google-cloud-storage googleapis-common-protos==1.56.4 \ --hash=sha256:8eb2cbc91b69feaf23e32452a7ae60e791e09967d81d4fcc7fc388182d1bd394 \ --hash=sha256:c25873c47279387cfdcbdafa36149887901d36202cb645a0e4f29686bf6e4417 # via google-api-core -idna==3.3 \ - --hash=sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff \ - --hash=sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d +idna==3.4 \ + --hash=sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4 \ + --hash=sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2 # via requests -importlib-metadata==4.12.0 \ - --hash=sha256:637245b8bab2b6502fcbc752cc4b7a6f6243bb02b31c5c26156ad103d3d45670 \ - --hash=sha256:7401a975809ea1fdc658c3aa4f78cc2195a0e019c5cbc4c06122884e9ae80c23 +importlib-metadata==5.0.0 \ + --hash=sha256:da31db32b304314d044d3c12c79bd59e307889b287ad12ff387b3500835fc2ab \ + --hash=sha256:ddb0e35065e8938f867ed4928d0ae5bf2a53b7773871bfe6bcc7e4fcdc7dea43 # via # -r requirements.in # twine -jaraco-classes==3.2.2 \ - --hash=sha256:6745f113b0b588239ceb49532aa09c3ebb947433ce311ef2f8e3ad64ebb74594 \ - --hash=sha256:e6ef6fd3fcf4579a7a019d87d1e56a883f4e4c35cfe925f86731abc58804e647 +jaraco-classes==3.2.3 \ + --hash=sha256:2353de3288bc6b82120752201c6b1c1a14b058267fa424ed5ce5984e3b922158 \ + --hash=sha256:89559fa5c1d3c34eff6f631ad80bb21f378dbcbb35dd161fd2c6b93f5be2f98a # via keyring jeepney==0.8.0 \ --hash=sha256:5efe48d255973902f6badc3ce55e2aa6c5c3b3bc642059ef3a91247bcfcc5806 \ @@ -255,9 +284,9 @@ jinja2==3.1.2 \ --hash=sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852 \ --hash=sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61 # via gcp-releasetool -keyring==23.9.0 \ - --hash=sha256:4c32a31174faaee48f43a7e2c7e9c3216ec5e95acf22a2bebfb4a1d05056ee44 \ - --hash=sha256:98f060ec95ada2ab910c195a2d4317be6ef87936a766b239c46aa3c7aac4f0db +keyring==23.9.3 \ + --hash=sha256:69732a15cb1433bdfbc3b980a8a36a04878a6cfd7cb99f497b573f31618001c0 \ + --hash=sha256:69b01dd83c42f590250fe7a1f503fc229b14de83857314b1933a3ddbf595c4a5 # via # gcp-releasetool # twine @@ -303,9 +332,9 @@ markupsafe==2.1.1 \ --hash=sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a \ --hash=sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7 # via jinja2 -more-itertools==8.14.0 \ - --hash=sha256:1bc4f91ee5b1b31ac7ceacc17c09befe6a40a503907baf9c839c229b5095cfd2 \ - --hash=sha256:c09443cd3d5438b8dafccd867a6bc1cb0894389e90cb53d227456b0b0bccb750 +more-itertools==9.0.0 \ + --hash=sha256:250e83d7e81d0c87ca6bd942e6aeab8cc9daa6096d12c5308f3f92fa5e5c1f41 \ + --hash=sha256:5a6257e40878ef0520b1803990e3e22303a41b5714006c32a3fd8304b26ea1ab # via jaraco-classes nox==2022.8.7 \ --hash=sha256:1b894940551dc5c389f9271d197ca5d655d40bdc6ccf93ed6880e4042760a34b \ @@ -325,34 +354,34 @@ platformdirs==2.5.2 \ --hash=sha256:027d8e83a2d7de06bbac4e5ef7e023c02b863d7ea5d079477e722bb41ab25788 \ --hash=sha256:58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19 # via virtualenv -protobuf==3.20.2 \ - --hash=sha256:03d76b7bd42ac4a6e109742a4edf81ffe26ffd87c5993126d894fe48a120396a \ - --hash=sha256:09e25909c4297d71d97612f04f41cea8fa8510096864f2835ad2f3b3df5a5559 \ - --hash=sha256:18e34a10ae10d458b027d7638a599c964b030c1739ebd035a1dfc0e22baa3bfe \ - --hash=sha256:291fb4307094bf5ccc29f424b42268640e00d5240bf0d9b86bf3079f7576474d \ - --hash=sha256:2c0b040d0b5d5d207936ca2d02f00f765906622c07d3fa19c23a16a8ca71873f \ - --hash=sha256:384164994727f274cc34b8abd41a9e7e0562801361ee77437099ff6dfedd024b \ - --hash=sha256:3cb608e5a0eb61b8e00fe641d9f0282cd0eedb603be372f91f163cbfbca0ded0 \ - --hash=sha256:5d9402bf27d11e37801d1743eada54372f986a372ec9679673bfcc5c60441151 \ - --hash=sha256:712dca319eee507a1e7df3591e639a2b112a2f4a62d40fe7832a16fd19151750 \ - --hash=sha256:7a5037af4e76c975b88c3becdf53922b5ffa3f2cddf657574a4920a3b33b80f3 \ - --hash=sha256:8228e56a865c27163d5d1d1771d94b98194aa6917bcfb6ce139cbfa8e3c27334 \ - --hash=sha256:84a1544252a933ef07bb0b5ef13afe7c36232a774affa673fc3636f7cee1db6c \ - --hash=sha256:84fe5953b18a383fd4495d375fe16e1e55e0a3afe7b4f7b4d01a3a0649fcda9d \ - --hash=sha256:9c673c8bfdf52f903081816b9e0e612186684f4eb4c17eeb729133022d6032e3 \ - --hash=sha256:9f876a69ca55aed879b43c295a328970306e8e80a263ec91cf6e9189243c613b \ - --hash=sha256:a9e5ae5a8e8985c67e8944c23035a0dff2c26b0f5070b2f55b217a1c33bbe8b1 \ - --hash=sha256:b4fdb29c5a7406e3f7ef176b2a7079baa68b5b854f364c21abe327bbeec01cdb \ - --hash=sha256:c184485e0dfba4dfd451c3bd348c2e685d6523543a0f91b9fd4ae90eb09e8422 \ - --hash=sha256:c9cdf251c582c16fd6a9f5e95836c90828d51b0069ad22f463761d27c6c19019 \ - --hash=sha256:e39cf61bb8582bda88cdfebc0db163b774e7e03364bbf9ce1ead13863e81e359 \ - --hash=sha256:e8fbc522303e09036c752a0afcc5c0603e917222d8bedc02813fd73b4b4ed804 \ - --hash=sha256:f34464ab1207114e73bba0794d1257c150a2b89b7a9faf504e00af7c9fd58978 \ - --hash=sha256:f52dabc96ca99ebd2169dadbe018824ebda08a795c7684a0b7d203a290f3adb0 +protobuf==3.20.3 \ + --hash=sha256:03038ac1cfbc41aa21f6afcbcd357281d7521b4157926f30ebecc8d4ea59dcb7 \ + --hash=sha256:28545383d61f55b57cf4df63eebd9827754fd2dc25f80c5253f9184235db242c \ + --hash=sha256:2e3427429c9cffebf259491be0af70189607f365c2f41c7c3764af6f337105f2 \ + --hash=sha256:398a9e0c3eaceb34ec1aee71894ca3299605fa8e761544934378bbc6c97de23b \ + --hash=sha256:44246bab5dd4b7fbd3c0c80b6f16686808fab0e4aca819ade6e8d294a29c7050 \ + --hash=sha256:447d43819997825d4e71bf5769d869b968ce96848b6479397e29fc24c4a5dfe9 \ + --hash=sha256:67a3598f0a2dcbc58d02dd1928544e7d88f764b47d4a286202913f0b2801c2e7 \ + --hash=sha256:74480f79a023f90dc6e18febbf7b8bac7508420f2006fabd512013c0c238f454 \ + --hash=sha256:819559cafa1a373b7096a482b504ae8a857c89593cf3a25af743ac9ecbd23480 \ + --hash=sha256:899dc660cd599d7352d6f10d83c95df430a38b410c1b66b407a6b29265d66469 \ + --hash=sha256:8c0c984a1b8fef4086329ff8dd19ac77576b384079247c770f29cc8ce3afa06c \ + --hash=sha256:9aae4406ea63d825636cc11ffb34ad3379335803216ee3a856787bcf5ccc751e \ + --hash=sha256:a7ca6d488aa8ff7f329d4c545b2dbad8ac31464f1d8b1c87ad1346717731e4db \ + --hash=sha256:b6cc7ba72a8850621bfec987cb72623e703b7fe2b9127a161ce61e61558ad905 \ + --hash=sha256:bf01b5720be110540be4286e791db73f84a2b721072a3711efff6c324cdf074b \ + --hash=sha256:c02ce36ec760252242a33967d51c289fd0e1c0e6e5cc9397e2279177716add86 \ + --hash=sha256:d9e4432ff660d67d775c66ac42a67cf2453c27cb4d738fc22cb53b5d84c135d4 \ + --hash=sha256:daa564862dd0d39c00f8086f88700fdbe8bc717e993a21e90711acfed02f2402 \ + --hash=sha256:de78575669dddf6099a8a0f46a27e82a1783c557ccc38ee620ed8cc96d3be7d7 \ + --hash=sha256:e64857f395505ebf3d2569935506ae0dfc4a15cb80dc25261176c784662cdcc4 \ + --hash=sha256:f4bd856d702e5b0d96a00ec6b307b0f51c1982c2bf9c0052cf9019e9a544ba99 \ + --hash=sha256:f4c42102bc82a51108e449cbb32b19b180022941c727bac0cfd50170341f16ee # via # gcp-docuploader # gcp-releasetool # google-api-core + # googleapis-common-protos py==1.11.0 \ --hash=sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719 \ --hash=sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378 @@ -377,9 +406,9 @@ pygments==2.13.0 \ # via # readme-renderer # rich -pyjwt==2.4.0 \ - --hash=sha256:72d1d253f32dbd4f5c88eaf1fdc62f3a19f676ccbadb9dbc5d07e951b2b26daf \ - --hash=sha256:d42908208c699b3b973cbeb01a969ba6a96c821eefb1c5bfe4c390c01d67abba +pyjwt==2.6.0 \ + --hash=sha256:69285c7e31fc44f68a1feb309e948e0df53259d579295e6cfe2b1792329f05fd \ + --hash=sha256:d83c3d892a77bbb74d3e1a2cfa90afaadb60945205d1095d9221f04466f64c14 # via gcp-releasetool pyparsing==3.0.9 \ --hash=sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb \ @@ -392,9 +421,9 @@ python-dateutil==2.8.2 \ --hash=sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86 \ --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 # via gcp-releasetool -readme-renderer==37.0 \ - --hash=sha256:07b7ea234e03e58f77cc222e206e6abb8f4c0435becce5104794ee591f9301c5 \ - --hash=sha256:9fa416704703e509eeb900696751c908ddeb2011319d93700d8f18baff887a69 +readme-renderer==37.3 \ + --hash=sha256:cd653186dfc73055656f090f227f5cb22a046d7f71a841dfa305f55c9a513273 \ + --hash=sha256:f67a16caedfa71eef48a31b39708637a6f4664c4394801a7b0d6432d13907343 # via twine requests==2.28.1 \ --hash=sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983 \ @@ -405,17 +434,17 @@ requests==2.28.1 \ # google-cloud-storage # requests-toolbelt # twine -requests-toolbelt==0.9.1 \ - --hash=sha256:380606e1d10dc85c3bd47bf5a6095f815ec007be7a8b69c878507068df059e6f \ - --hash=sha256:968089d4584ad4ad7c171454f0a5c6dac23971e9472521ea3b6d49d610aa6fc0 +requests-toolbelt==0.10.1 \ + --hash=sha256:18565aa58116d9951ac39baa288d3adb5b3ff975c4f25eee78555d89e8f247f7 \ + --hash=sha256:62e09f7ff5ccbda92772a29f394a49c3ad6cb181d568b1337626b2abb628a63d # via twine rfc3986==2.0.0 \ --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd \ --hash=sha256:97aacf9dbd4bfd829baad6e6309fa6573aaf1be3f6fa735c8ab05e46cecb261c # via twine -rich==12.5.1 \ - --hash=sha256:2eb4e6894cde1e017976d2975ac210ef515d7548bc595ba20e195fb9628acdeb \ - --hash=sha256:63a5c5ce3673d3d5fbbf23cd87e11ab84b6b451436f1b7f19ec54b6bc36ed7ca +rich==12.6.0 \ + --hash=sha256:a4eb26484f2c82589bd9a17c73d32a010b1e29d89f1604cd9bf3a2097b81bb5e \ + --hash=sha256:ba3a3775974105c221d31141f2c116f4fd65c5ceb0698657a11e9f295ec93fd0 # via twine rsa==4.9 \ --hash=sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7 \ @@ -437,9 +466,9 @@ twine==4.0.1 \ --hash=sha256:42026c18e394eac3e06693ee52010baa5313e4811d5a11050e7d48436cf41b9e \ --hash=sha256:96b1cf12f7ae611a4a40b6ae8e9570215daff0611828f5fe1f37a16255ab24a0 # via -r requirements.in -typing-extensions==4.3.0 \ - --hash=sha256:25642c956049920a5aa49edcdd6ab1e06d7e5d467fc00e0506c44ac86fbfca02 \ - --hash=sha256:e6d2677a32f47fc7eb2795db1dd15c1f34eff616bcaf2cfb5e997f854fa1c4a6 +typing-extensions==4.4.0 \ + --hash=sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa \ + --hash=sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e # via -r requirements.in urllib3==1.26.12 \ --hash=sha256:3fa96cf423e6987997fc326ae8df396db2a8b7c667747d47ddd8ecba91f4a74e \ @@ -447,9 +476,9 @@ urllib3==1.26.12 \ # via # requests # twine -virtualenv==20.16.4 \ - --hash=sha256:014f766e4134d0008dcaa1f95bafa0fb0f575795d07cae50b1bee514185d6782 \ - --hash=sha256:035ed57acce4ac35c82c9d8802202b0e71adac011a511ff650cbcf9635006a22 +virtualenv==20.16.6 \ + --hash=sha256:186ca84254abcbde98180fd17092f9628c5fe742273c02724972a1d8a2035108 \ + --hash=sha256:530b850b523c6449406dfba859d6345e48ef19b8439606c5d74d7d3c9e14d76e # via nox webencodings==0.5.1 \ --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 \ @@ -459,13 +488,13 @@ wheel==0.37.1 \ --hash=sha256:4bdcd7d840138086126cd09254dc6195fb4fc6f01c050a1d7236f2630db1d22a \ --hash=sha256:e9a504e793efbca1b8e0e9cb979a249cf4a0a7b5b8c9e8b65a5e39d49529c1c4 # via -r requirements.in -zipp==3.8.1 \ - --hash=sha256:05b45f1ee8f807d0cc928485ca40a07cb491cf092ff587c0df9cb1fd154848d2 \ - --hash=sha256:47c40d7fe183a6f21403a199b3e4192cca5774656965b0a4988ad2f8feb5f009 +zipp==3.10.0 \ + --hash=sha256:4fcb6f278987a6605757302a6e40e896257570d11c51628968ccb2a47e80c6c1 \ + --hash=sha256:7a7262fd930bd3e36c50b9a64897aec3fafff3dfdeec9623ae22b40e93f99bb8 # via importlib-metadata # The following packages are considered to be unsafe in a requirements file: -setuptools==65.2.0 \ - --hash=sha256:7f4bc85450898a09f76ebf28b72fa25bc7111f6c7d665d514a60bba9c75ef2a9 \ - --hash=sha256:a3ca5857c89f82f5c9410e8508cb32f4872a3bafd4aa7ae122a24ca33bccc750 +setuptools==65.5.0 \ + --hash=sha256:512e5536220e38146176efb833d4a62aa726b7bbff82cfbc8ba9eaa3996e0b17 \ + --hash=sha256:f62ea9da9ed6289bfe868cd6845968a2c854d1427f8548d52cae02a42b4f0356 # via -r requirements.in diff --git a/noxfile.py b/noxfile.py index 5f898a7..35f3976 100644 --- a/noxfile.py +++ b/noxfile.py @@ -277,7 +277,11 @@ def docs(session): """Build the docs for this library.""" session.install("-e", ".") - session.install("sphinx==4.0.1", "alabaster", "recommonmark") + session.install( + "sphinx==4.0.1", + "alabaster", + "recommonmark", + ) shutil.rmtree(os.path.join("docs", "_build"), ignore_errors=True) session.run( @@ -300,7 +304,10 @@ def docfx(session): session.install("-e", ".") session.install( - "sphinx==4.0.1", "alabaster", "recommonmark", "gcp-sphinx-docfx-yaml" + "sphinx==4.0.1", + "alabaster", + "recommonmark", + "gcp-sphinx-docfx-yaml", ) shutil.rmtree(os.path.join("docs", "_build"), ignore_errors=True) From 1b7a3b2e597adc9bb9d75e5720882cde62cbebb0 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Fri, 18 Nov 2022 11:48:19 +0000 Subject: [PATCH 2/6] chore(python): update release script dependencies [autoapprove] (#228) Source-Link: https://togithub.com/googleapis/synthtool/commit/25083af347468dd5f90f69627420f7d452b6c50e Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:e6cbd61f1838d9ff6a31436dfc13717f372a7482a82fc1863ca954ec47bff8c8 --- .github/.OwlBot.lock.yaml | 2 +- .github/workflows/docs.yml | 4 +-- .github/workflows/lint.yml | 2 +- .github/workflows/unittest.yml | 2 +- .kokoro/docker/docs/Dockerfile | 12 +++---- .kokoro/requirements.in | 4 ++- .kokoro/requirements.txt | 61 ++++++++++++++++++---------------- noxfile.py | 4 +-- 8 files changed, 48 insertions(+), 43 deletions(-) diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml index 12edee7..3f1ccc0 100644 --- a/.github/.OwlBot.lock.yaml +++ b/.github/.OwlBot.lock.yaml @@ -13,4 +13,4 @@ # limitations under the License. docker: image: gcr.io/cloud-devrel-public-resources/owlbot-python:latest - digest: sha256:452901c74a22f9b9a3bd02bce780b8e8805c97270d424684bff809ce5be8c2a2 + digest: sha256:e6cbd61f1838d9ff6a31436dfc13717f372a7482a82fc1863ca954ec47bff8c8 diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 7092a13..e97d89e 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -12,7 +12,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: "3.10" + python-version: "3.9" - name: Install nox run: | python -m pip install --upgrade setuptools pip wheel @@ -28,7 +28,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: "3.10" + python-version: "3.9" - name: Install nox run: | python -m pip install --upgrade setuptools pip wheel diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index d2aee5b..16d5a9e 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -12,7 +12,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: "3.10" + python-version: "3.8" - name: Install nox run: | python -m pip install --upgrade setuptools pip wheel diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 87ade4d..23000c0 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -41,7 +41,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: "3.10" + python-version: "3.8" - name: Install coverage run: | python -m pip install --upgrade setuptools pip wheel diff --git a/.kokoro/docker/docs/Dockerfile b/.kokoro/docker/docs/Dockerfile index 238b87b..f8137d0 100644 --- a/.kokoro/docker/docs/Dockerfile +++ b/.kokoro/docker/docs/Dockerfile @@ -60,16 +60,16 @@ RUN apt-get update \ && rm -rf /var/lib/apt/lists/* \ && rm -f /var/cache/apt/archives/*.deb -###################### Install python 3.8.11 +###################### Install python 3.9.13 -# Download python 3.8.11 -RUN wget https://www.python.org/ftp/python/3.8.11/Python-3.8.11.tgz +# Download python 3.9.13 +RUN wget https://www.python.org/ftp/python/3.9.13/Python-3.9.13.tgz # Extract files -RUN tar -xvf Python-3.8.11.tgz +RUN tar -xvf Python-3.9.13.tgz -# Install python 3.8.11 -RUN ./Python-3.8.11/configure --enable-optimizations +# Install python 3.9.13 +RUN ./Python-3.9.13/configure --enable-optimizations RUN make altinstall ###################### Install pip diff --git a/.kokoro/requirements.in b/.kokoro/requirements.in index 7718391..cbd7e77 100644 --- a/.kokoro/requirements.in +++ b/.kokoro/requirements.in @@ -5,4 +5,6 @@ typing-extensions twine wheel setuptools -nox \ No newline at end of file +nox +charset-normalizer<3 +click<8.1.0 diff --git a/.kokoro/requirements.txt b/.kokoro/requirements.txt index 31425f1..9c1b9be 100644 --- a/.kokoro/requirements.txt +++ b/.kokoro/requirements.txt @@ -93,11 +93,14 @@ cffi==1.15.1 \ charset-normalizer==2.1.1 \ --hash=sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845 \ --hash=sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f - # via requests + # via + # -r requirements.in + # requests click==8.0.4 \ --hash=sha256:6a7a62563bbfabfda3a38f3023a1db4a35978c0abd76f6c9605ecd6554d6d9b1 \ --hash=sha256:8458d7b1287c5fb128c90e23381cf99dcde74beaf6c7ff6384ce84d6fe090adb # via + # -r requirements.in # gcp-docuploader # gcp-releasetool colorlog==6.7.0 \ @@ -156,9 +159,9 @@ gcp-docuploader==0.6.4 \ --hash=sha256:01486419e24633af78fd0167db74a2763974765ee8078ca6eb6964d0ebd388af \ --hash=sha256:70861190c123d907b3b067da896265ead2eeb9263969d6955c9e0bb091b5ccbf # via -r requirements.in -gcp-releasetool==1.9.1 \ - --hash=sha256:952f4055d5d986b070ae2a71c4410b250000f9cc5a1e26398fcd55a5bbc5a15f \ - --hash=sha256:d0d3c814a97c1a237517e837d8cfa668ced8df4b882452578ecef4a4e79c583b +gcp-releasetool==1.10.0 \ + --hash=sha256:72a38ca91b59c24f7e699e9227c90cbe4dd71b789383cb0164b088abae294c83 \ + --hash=sha256:8c7c99320208383d4bb2b808c6880eb7a81424afe7cdba3c8d84b25f4f0e097d # via -r requirements.in google-api-core==2.10.2 \ --hash=sha256:10c06f7739fe57781f87523375e8e1a3a4674bf6392cd6131a3222182b971320 \ @@ -166,9 +169,9 @@ google-api-core==2.10.2 \ # via # google-cloud-core # google-cloud-storage -google-auth==2.14.0 \ - --hash=sha256:1ad5b0e6eba5f69645971abb3d2c197537d5914070a8c6d30299dfdb07c5c700 \ - --hash=sha256:cf24817855d874ede2efd071aa22125445f555de1685b739a9782fcf408c2a3d +google-auth==2.14.1 \ + --hash=sha256:ccaa901f31ad5cbb562615eb8b664b3dd0bf5404a67618e642307f00613eda4d \ + --hash=sha256:f5d8701633bebc12e0deea4df8abd8aff31c28b355360597f7f2ee60f2e4d016 # via # gcp-releasetool # google-api-core @@ -178,9 +181,9 @@ google-cloud-core==2.3.2 \ --hash=sha256:8417acf6466be2fa85123441696c4badda48db314c607cf1e5d543fa8bdc22fe \ --hash=sha256:b9529ee7047fd8d4bf4a2182de619154240df17fbe60ead399078c1ae152af9a # via google-cloud-storage -google-cloud-storage==2.5.0 \ - --hash=sha256:19a26c66c317ce542cea0830b7e787e8dac2588b6bfa4d3fd3b871ba16305ab0 \ - --hash=sha256:382f34b91de2212e3c2e7b40ec079d27ee2e3dbbae99b75b1bcd8c63063ce235 +google-cloud-storage==2.6.0 \ + --hash=sha256:104ca28ae61243b637f2f01455cc8a05e8f15a2a18ced96cb587241cdd3820f5 \ + --hash=sha256:4ad0415ff61abdd8bb2ae81c1f8f7ec7d91a1011613f2db87c614c550f97bfe9 # via gcp-docuploader google-crc32c==1.5.0 \ --hash=sha256:024894d9d3cfbc5943f8f230e23950cd4906b2fe004c72e29b209420a1e6b05a \ @@ -256,9 +259,9 @@ google-resumable-media==2.4.0 \ --hash=sha256:2aa004c16d295c8f6c33b2b4788ba59d366677c0a25ae7382436cb30f776deaa \ --hash=sha256:8d5518502f92b9ecc84ac46779bd4f09694ecb3ba38a3e7ca737a86d15cbca1f # via google-cloud-storage -googleapis-common-protos==1.56.4 \ - --hash=sha256:8eb2cbc91b69feaf23e32452a7ae60e791e09967d81d4fcc7fc388182d1bd394 \ - --hash=sha256:c25873c47279387cfdcbdafa36149887901d36202cb645a0e4f29686bf6e4417 +googleapis-common-protos==1.57.0 \ + --hash=sha256:27a849d6205838fb6cc3c1c21cb9800707a661bb21c6ce7fb13e99eb1f8a0c46 \ + --hash=sha256:a9f4a1d7f6d9809657b7f1316a1aa527f6664891531bcfcc13b6696e685f443c # via google-api-core idna==3.4 \ --hash=sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4 \ @@ -269,6 +272,7 @@ importlib-metadata==5.0.0 \ --hash=sha256:ddb0e35065e8938f867ed4928d0ae5bf2a53b7773871bfe6bcc7e4fcdc7dea43 # via # -r requirements.in + # keyring # twine jaraco-classes==3.2.3 \ --hash=sha256:2353de3288bc6b82120752201c6b1c1a14b058267fa424ed5ce5984e3b922158 \ @@ -284,9 +288,9 @@ jinja2==3.1.2 \ --hash=sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852 \ --hash=sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61 # via gcp-releasetool -keyring==23.9.3 \ - --hash=sha256:69732a15cb1433bdfbc3b980a8a36a04878a6cfd7cb99f497b573f31618001c0 \ - --hash=sha256:69b01dd83c42f590250fe7a1f503fc229b14de83857314b1933a3ddbf595c4a5 +keyring==23.11.0 \ + --hash=sha256:3dd30011d555f1345dec2c262f0153f2f0ca6bca041fb1dc4588349bb4c0ac1e \ + --hash=sha256:ad192263e2cdd5f12875dedc2da13534359a7e760e77f8d04b50968a821c2361 # via # gcp-releasetool # twine @@ -350,9 +354,9 @@ pkginfo==1.8.3 \ --hash=sha256:848865108ec99d4901b2f7e84058b6e7660aae8ae10164e015a6dcf5b242a594 \ --hash=sha256:a84da4318dd86f870a9447a8c98340aa06216bfc6f2b7bdc4b8766984ae1867c # via twine -platformdirs==2.5.2 \ - --hash=sha256:027d8e83a2d7de06bbac4e5ef7e023c02b863d7ea5d079477e722bb41ab25788 \ - --hash=sha256:58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19 +platformdirs==2.5.4 \ + --hash=sha256:1006647646d80f16130f052404c6b901e80ee4ed6bef6792e1f238a8969106f7 \ + --hash=sha256:af0276409f9a02373d540bf8480021a048711d572745aef4b7842dad245eba10 # via virtualenv protobuf==3.20.3 \ --hash=sha256:03038ac1cfbc41aa21f6afcbcd357281d7521b4157926f30ebecc8d4ea59dcb7 \ @@ -381,7 +385,6 @@ protobuf==3.20.3 \ # gcp-docuploader # gcp-releasetool # google-api-core - # googleapis-common-protos py==1.11.0 \ --hash=sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719 \ --hash=sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378 @@ -476,17 +479,17 @@ urllib3==1.26.12 \ # via # requests # twine -virtualenv==20.16.6 \ - --hash=sha256:186ca84254abcbde98180fd17092f9628c5fe742273c02724972a1d8a2035108 \ - --hash=sha256:530b850b523c6449406dfba859d6345e48ef19b8439606c5d74d7d3c9e14d76e +virtualenv==20.16.7 \ + --hash=sha256:8691e3ff9387f743e00f6bb20f70121f5e4f596cae754531f2b3b3a1b1ac696e \ + --hash=sha256:efd66b00386fdb7dbe4822d172303f40cd05e50e01740b19ea42425cbe653e29 # via nox webencodings==0.5.1 \ --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 \ --hash=sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923 # via bleach -wheel==0.37.1 \ - --hash=sha256:4bdcd7d840138086126cd09254dc6195fb4fc6f01c050a1d7236f2630db1d22a \ - --hash=sha256:e9a504e793efbca1b8e0e9cb979a249cf4a0a7b5b8c9e8b65a5e39d49529c1c4 +wheel==0.38.4 \ + --hash=sha256:965f5259b566725405b05e7cf774052044b1ed30119b5d586b2703aafe8719ac \ + --hash=sha256:b60533f3f5d530e971d6737ca6d58681ee434818fab630c83a734bb10c083ce8 # via -r requirements.in zipp==3.10.0 \ --hash=sha256:4fcb6f278987a6605757302a6e40e896257570d11c51628968ccb2a47e80c6c1 \ @@ -494,7 +497,7 @@ zipp==3.10.0 \ # via importlib-metadata # The following packages are considered to be unsafe in a requirements file: -setuptools==65.5.0 \ - --hash=sha256:512e5536220e38146176efb833d4a62aa726b7bbff82cfbc8ba9eaa3996e0b17 \ - --hash=sha256:f62ea9da9ed6289bfe868cd6845968a2c854d1427f8548d52cae02a42b4f0356 +setuptools==65.5.1 \ + --hash=sha256:d0b9a8433464d5800cbe05094acf5c6d52a91bfac9b52bcfc4d41382be5d5d31 \ + --hash=sha256:e197a19aa8ec9722928f2206f8de752def0e4c9fc6953527360d1c36d94ddb2f # via -r requirements.in diff --git a/noxfile.py b/noxfile.py index 35f3976..d752b54 100644 --- a/noxfile.py +++ b/noxfile.py @@ -272,7 +272,7 @@ def cover(session): session.run("coverage", "erase") -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python="3.9") def docs(session): """Build the docs for this library.""" @@ -298,7 +298,7 @@ def docs(session): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python="3.9") def docfx(session): """Build the docfx yaml files for this library.""" From f23464470009cbdd0c4893263dbfdeba26c80419 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Sat, 26 Nov 2022 07:01:54 -0500 Subject: [PATCH 3/6] chore: Update gapic-generator-python to v1.6.1 (#225) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: update to gapic-generator-python 1.5.0 feat: add support for `google.cloud..__version__` PiperOrigin-RevId: 484665853 Source-Link: https://github.com/googleapis/googleapis/commit/8eb249a19db926c2fbc4ecf1dc09c0e521a88b22 Source-Link: https://github.com/googleapis/googleapis-gen/commit/c8aa327b5f478865fc3fd91e3c2768e54e26ad44 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYzhhYTMyN2I1ZjQ3ODg2NWZjM2ZkOTFlM2MyNzY4ZTU0ZTI2YWQ0NCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * update version in gapic_version.py * add .release-please-manifest.json with correct version * set manifest to true in .github/release-please.yml * add release-please-config.json * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * chore: Update to gapic-generator-python 1.6.0 feat(python): Add typing to proto.Message based class attributes feat(python): Snippetgen handling of repeated enum field PiperOrigin-RevId: 487326846 Source-Link: https://github.com/googleapis/googleapis/commit/da380c77bb87ba0f752baf07605dd1db30e1f7e1 Source-Link: https://github.com/googleapis/googleapis-gen/commit/61ef5762ee6731a0cbbfea22fd0eecee51ab1c8e Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNjFlZjU3NjJlZTY3MzFhMGNiYmZlYTIyZmQwZWVjZWU1MWFiMWM4ZSJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * feat: new APIs added to reflect updates to the filestore service - Add ENTERPRISE Tier - Add snapshot APIs: RevertInstance, ListSnapshots, CreateSnapshot, DeleteSnapshot, UpdateSnapshot - Add multi-share APIs: ListShares, GetShare, CreateShare, DeleteShare, UpdateShare - Add ConnectMode to NetworkConfig (for Private Service Access support) - New status codes (SUSPENDED/SUSPENDING, REVERTING/RESUMING) - Add SuspensionReason (for KMS related suspension) - Add new fields to Instance information: max_capacity_gb, capacity_step_size_gb, max_share_count, capacity_gb, multi_share_enabled PiperOrigin-RevId: 487492758 Source-Link: https://github.com/googleapis/googleapis/commit/5be5981f50322cf0c7388595e0f31ac5d0693469 Source-Link: https://github.com/googleapis/googleapis-gen/commit/ab0e217f560cc2c1afc11441c2eab6b6950efd2b Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYWIwZTIxN2Y1NjBjYzJjMWFmYzExNDQxYzJlYWI2YjY5NTBlZmQyYiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * update path to snippet metadata json * chore: Update gapic-generator-python to v1.6.1 PiperOrigin-RevId: 488036204 Source-Link: https://github.com/googleapis/googleapis/commit/08f275f5c1c0d99056e1cb68376323414459ee19 Source-Link: https://github.com/googleapis/googleapis-gen/commit/555c0945e60649e38739ae64bc45719cdf72178f Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNTU1YzA5NDVlNjA2NDllMzg3MzlhZTY0YmM0NTcxOWNkZjcyMTc4ZiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * use templated owlbot.py and setup.py * configure release-please to use manifest * run nox format session Co-authored-by: Owl Bot Co-authored-by: Anthonios Partheniou --- .github/release-please.yml | 1 + .release-please-manifest.json | 3 + docs/conf.py | 2 +- docs/executions_v1/types.rst | 1 - docs/executions_v1beta/types.rst | 1 - docs/index.rst | 17 +- docs/workflows_v1/types.rst | 1 - docs/workflows_v1beta/types.rst | 1 - google/cloud/workflows/__init__.py | 25 +- google/cloud/workflows/executions/__init__.py | 25 +- .../workflows/executions/gapic_version.py | 16 + .../cloud/workflows/executions_v1/__init__.py | 22 +- .../services/executions/__init__.py | 2 +- .../services/executions/async_client.py | 64 +- .../services/executions/client.py | 60 +- .../services/executions/pagers.py | 4 +- .../executions/transports/__init__.py | 1 - .../services/executions/transports/base.py | 8 +- .../services/executions/transports/grpc.py | 29 +- .../executions/transports/grpc_asyncio.py | 25 +- .../workflows/executions_v1/types/__init__.py | 2 +- .../executions_v1/types/executions.py | 68 +- .../workflows/executions_v1beta/__init__.py | 22 +- .../services/executions/__init__.py | 2 +- .../services/executions/async_client.py | 64 +- .../services/executions/client.py | 60 +- .../services/executions/pagers.py | 4 +- .../executions/transports/__init__.py | 1 - .../services/executions/transports/base.py | 8 +- .../services/executions/transports/grpc.py | 29 +- .../executions/transports/grpc_asyncio.py | 25 +- .../executions_v1beta/types/__init__.py | 2 +- .../executions_v1beta/types/executions.py | 48 +- google/cloud/workflows/gapic_version.py | 16 + google/cloud/workflows_v1/__init__.py | 24 +- .../services/workflows/__init__.py | 2 +- .../services/workflows/async_client.py | 76 +- .../workflows_v1/services/workflows/client.py | 70 +- .../workflows_v1/services/workflows/pagers.py | 4 +- .../services/workflows/transports/__init__.py | 1 - .../services/workflows/transports/base.py | 11 +- .../services/workflows/transports/grpc.py | 32 +- .../workflows/transports/grpc_asyncio.py | 28 +- google/cloud/workflows_v1/types/workflows.py | 70 +- google/cloud/workflows_v1beta/__init__.py | 24 +- .../services/workflows/__init__.py | 2 +- .../services/workflows/async_client.py | 76 +- .../services/workflows/client.py | 70 +- .../services/workflows/pagers.py | 4 +- .../services/workflows/transports/__init__.py | 1 - .../services/workflows/transports/base.py | 11 +- .../services/workflows/transports/grpc.py | 32 +- .../workflows/transports/grpc_asyncio.py | 28 +- .../cloud/workflows_v1beta/types/workflows.py | 70 +- noxfile.py | 1 + owlbot.py | 67 +- release-please-config.json | 29 + .../snippet_metadata_executions_v1.json | 666 ------------------ .../snippet_metadata_executions_v1beta.json | 666 ------------------ ...t_metadata_google.cloud.workflows.v1.json} | 3 +- ...tadata_google.cloud.workflows.v1beta.json} | 3 +- ...rated_executions_cancel_execution_async.py | 52 -- ...erated_executions_cancel_execution_sync.py | 52 -- ...rated_executions_create_execution_async.py | 52 -- ...erated_executions_create_execution_sync.py | 52 -- ...enerated_executions_get_execution_async.py | 52 -- ...generated_executions_get_execution_sync.py | 52 -- ...erated_executions_list_executions_async.py | 53 -- ...nerated_executions_list_executions_sync.py | 53 -- ...rated_executions_cancel_execution_async.py | 52 -- ...erated_executions_cancel_execution_sync.py | 52 -- ...rated_executions_create_execution_async.py | 52 -- ...erated_executions_create_execution_sync.py | 52 -- ...enerated_executions_get_execution_async.py | 52 -- ...generated_executions_get_execution_sync.py | 52 -- ...erated_executions_list_executions_async.py | 53 -- ...nerated_executions_list_executions_sync.py | 53 -- scripts/fixup_executions_v1_keywords.py | 179 +++++ scripts/fixup_executions_v1beta_keywords.py | 179 +++++ scripts/fixup_workflows_v1_keywords.py | 180 +++++ scripts/fixup_workflows_v1beta_keywords.py | 180 +++++ setup.py | 62 +- testing/constraints-3.10.txt | 6 + testing/constraints-3.11.txt | 6 + testing/constraints-3.7.txt | 9 +- testing/constraints-3.8.txt | 6 + testing/constraints-3.9.txt | 6 + .../gapic/executions_v1/test_executions.py | 28 +- .../executions_v1beta/test_executions.py | 28 +- .../unit/gapic/workflows_v1/test_workflows.py | 42 +- .../gapic/workflows_v1beta/test_workflows.py | 42 +- 91 files changed, 1647 insertions(+), 2872 deletions(-) create mode 100644 .release-please-manifest.json create mode 100644 google/cloud/workflows/executions/gapic_version.py create mode 100644 google/cloud/workflows/gapic_version.py create mode 100644 release-please-config.json delete mode 100644 samples/generated_samples/snippet_metadata_executions_v1.json delete mode 100644 samples/generated_samples/snippet_metadata_executions_v1beta.json rename samples/generated_samples/{snippet_metadata_workflows_v1.json => snippet_metadata_google.cloud.workflows.v1.json} (99%) rename samples/generated_samples/{snippet_metadata_workflows_v1beta.json => snippet_metadata_google.cloud.workflows.v1beta.json} (99%) delete mode 100644 samples/generated_samples/workflowexecutions_v1_generated_executions_cancel_execution_async.py delete mode 100644 samples/generated_samples/workflowexecutions_v1_generated_executions_cancel_execution_sync.py delete mode 100644 samples/generated_samples/workflowexecutions_v1_generated_executions_create_execution_async.py delete mode 100644 samples/generated_samples/workflowexecutions_v1_generated_executions_create_execution_sync.py delete mode 100644 samples/generated_samples/workflowexecutions_v1_generated_executions_get_execution_async.py delete mode 100644 samples/generated_samples/workflowexecutions_v1_generated_executions_get_execution_sync.py delete mode 100644 samples/generated_samples/workflowexecutions_v1_generated_executions_list_executions_async.py delete mode 100644 samples/generated_samples/workflowexecutions_v1_generated_executions_list_executions_sync.py delete mode 100644 samples/generated_samples/workflowexecutions_v1beta_generated_executions_cancel_execution_async.py delete mode 100644 samples/generated_samples/workflowexecutions_v1beta_generated_executions_cancel_execution_sync.py delete mode 100644 samples/generated_samples/workflowexecutions_v1beta_generated_executions_create_execution_async.py delete mode 100644 samples/generated_samples/workflowexecutions_v1beta_generated_executions_create_execution_sync.py delete mode 100644 samples/generated_samples/workflowexecutions_v1beta_generated_executions_get_execution_async.py delete mode 100644 samples/generated_samples/workflowexecutions_v1beta_generated_executions_get_execution_sync.py delete mode 100644 samples/generated_samples/workflowexecutions_v1beta_generated_executions_list_executions_async.py delete mode 100644 samples/generated_samples/workflowexecutions_v1beta_generated_executions_list_executions_sync.py create mode 100644 scripts/fixup_executions_v1_keywords.py create mode 100644 scripts/fixup_executions_v1beta_keywords.py create mode 100644 scripts/fixup_workflows_v1_keywords.py create mode 100644 scripts/fixup_workflows_v1beta_keywords.py diff --git a/.github/release-please.yml b/.github/release-please.yml index 6def37a..e9a4f00 100644 --- a/.github/release-please.yml +++ b/.github/release-please.yml @@ -1,5 +1,6 @@ releaseType: python handleGHRelease: true +manifest: true # NOTE: this section is generated by synthtool.languages.python # See https://github.com/googleapis/synthtool/blob/master/synthtool/languages/python.py branches: diff --git a/.release-please-manifest.json b/.release-please-manifest.json new file mode 100644 index 0000000..54e21e5 --- /dev/null +++ b/.release-please-manifest.json @@ -0,0 +1,3 @@ +{ + ".": "1.7.4" +} diff --git a/docs/conf.py b/docs/conf.py index a0e91f3..f898a7a 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -24,9 +24,9 @@ # All configuration values have a default; values that are commented out # serve to show the default. -import sys import os import shlex +import sys # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the diff --git a/docs/executions_v1/types.rst b/docs/executions_v1/types.rst index 9210a22..e17d766 100644 --- a/docs/executions_v1/types.rst +++ b/docs/executions_v1/types.rst @@ -3,5 +3,4 @@ Types for Google Cloud Workflows Executions v1 API .. automodule:: google.cloud.workflows.executions_v1.types :members: - :undoc-members: :show-inheritance: diff --git a/docs/executions_v1beta/types.rst b/docs/executions_v1beta/types.rst index 0bb638b..6c92f22 100644 --- a/docs/executions_v1beta/types.rst +++ b/docs/executions_v1beta/types.rst @@ -3,5 +3,4 @@ Types for Google Cloud Workflows Executions v1beta API .. automodule:: google.cloud.workflows.executions_v1beta.types :members: - :undoc-members: :show-inheritance: diff --git a/docs/index.rst b/docs/index.rst index 36c5a5f..2198898 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -2,10 +2,12 @@ .. include:: multiprocessing.rst -This package includes clients for multiple versions of the Workflows API By default, you will get ``v1``, the latest version. +This package includes clients for multiple versions of Cloud Workflows. +By default, you will get version ``workflows_v1``. -v1 ---- + +API Reference +------------- .. toctree:: :maxdepth: 2 @@ -14,9 +16,7 @@ v1 workflows_v1/types executions_v1/types -The previous beta release, spelled ``v1beta`` is provided to continue to support code previously written against it. In order to use it, you will want to import from it e.g., ``google.cloud.workflows_v1`` in lieu of ``google.cloud.workflows`` (or the equivalent ``google.cloud.workflows_v1``). - -v1beta +API Reference ------------- .. toctree:: :maxdepth: 2 @@ -26,12 +26,13 @@ v1beta workflows_v1beta/types executions_v1beta/types + Changelog --------- For a list of all ``google-cloud-workflows`` releases: .. toctree:: - :maxdepth: 2 + :maxdepth: 2 - changelog + changelog diff --git a/docs/workflows_v1/types.rst b/docs/workflows_v1/types.rst index 31d6c6e..054c4fe 100644 --- a/docs/workflows_v1/types.rst +++ b/docs/workflows_v1/types.rst @@ -3,5 +3,4 @@ Types for Google Cloud Workflows v1 API .. automodule:: google.cloud.workflows_v1.types :members: - :undoc-members: :show-inheritance: diff --git a/docs/workflows_v1beta/types.rst b/docs/workflows_v1beta/types.rst index 35bf3fd..0b7a857 100644 --- a/docs/workflows_v1beta/types.rst +++ b/docs/workflows_v1beta/types.rst @@ -3,5 +3,4 @@ Types for Google Cloud Workflows v1beta API .. automodule:: google.cloud.workflows_v1beta.types :members: - :undoc-members: :show-inheritance: diff --git a/google/cloud/workflows/__init__.py b/google/cloud/workflows/__init__.py index 6011caa..5ef6e5d 100644 --- a/google/cloud/workflows/__init__.py +++ b/google/cloud/workflows/__init__.py @@ -13,20 +13,25 @@ # See the License for the specific language governing permissions and # limitations under the License. # +from google.cloud.workflows import gapic_version as package_version + +__version__ = package_version.__version__ + -from google.cloud.workflows_v1.services.workflows.client import WorkflowsClient from google.cloud.workflows_v1.services.workflows.async_client import ( WorkflowsAsyncClient, ) - -from google.cloud.workflows_v1.types.workflows import CreateWorkflowRequest -from google.cloud.workflows_v1.types.workflows import DeleteWorkflowRequest -from google.cloud.workflows_v1.types.workflows import GetWorkflowRequest -from google.cloud.workflows_v1.types.workflows import ListWorkflowsRequest -from google.cloud.workflows_v1.types.workflows import ListWorkflowsResponse -from google.cloud.workflows_v1.types.workflows import OperationMetadata -from google.cloud.workflows_v1.types.workflows import UpdateWorkflowRequest -from google.cloud.workflows_v1.types.workflows import Workflow +from google.cloud.workflows_v1.services.workflows.client import WorkflowsClient +from google.cloud.workflows_v1.types.workflows import ( + CreateWorkflowRequest, + DeleteWorkflowRequest, + GetWorkflowRequest, + ListWorkflowsRequest, + ListWorkflowsResponse, + OperationMetadata, + UpdateWorkflowRequest, + Workflow, +) __all__ = ( "WorkflowsClient", diff --git a/google/cloud/workflows/executions/__init__.py b/google/cloud/workflows/executions/__init__.py index 2b4e725..6ea3ddf 100644 --- a/google/cloud/workflows/executions/__init__.py +++ b/google/cloud/workflows/executions/__init__.py @@ -13,22 +13,27 @@ # See the License for the specific language governing permissions and # limitations under the License. # +from google.cloud.workflows.executions import gapic_version as package_version +__version__ = package_version.__version__ + + +from google.cloud.workflows.executions_v1.services.executions.async_client import ( + ExecutionsAsyncClient, +) from google.cloud.workflows.executions_v1.services.executions.client import ( ExecutionsClient, ) -from google.cloud.workflows.executions_v1.services.executions.async_client import ( - ExecutionsAsyncClient, +from google.cloud.workflows.executions_v1.types.executions import ( + CancelExecutionRequest, + CreateExecutionRequest, + Execution, + ExecutionView, + GetExecutionRequest, + ListExecutionsRequest, + ListExecutionsResponse, ) -from google.cloud.workflows.executions_v1.types.executions import CancelExecutionRequest -from google.cloud.workflows.executions_v1.types.executions import CreateExecutionRequest -from google.cloud.workflows.executions_v1.types.executions import Execution -from google.cloud.workflows.executions_v1.types.executions import GetExecutionRequest -from google.cloud.workflows.executions_v1.types.executions import ListExecutionsRequest -from google.cloud.workflows.executions_v1.types.executions import ListExecutionsResponse -from google.cloud.workflows.executions_v1.types.executions import ExecutionView - __all__ = ( "ExecutionsClient", "ExecutionsAsyncClient", diff --git a/google/cloud/workflows/executions/gapic_version.py b/google/cloud/workflows/executions/gapic_version.py new file mode 100644 index 0000000..35859c3 --- /dev/null +++ b/google/cloud/workflows/executions/gapic_version.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +__version__ = "0.1.0" diff --git a/google/cloud/workflows/executions_v1/__init__.py b/google/cloud/workflows/executions_v1/__init__.py index 813c180..fb930f8 100644 --- a/google/cloud/workflows/executions_v1/__init__.py +++ b/google/cloud/workflows/executions_v1/__init__.py @@ -13,17 +13,21 @@ # See the License for the specific language governing permissions and # limitations under the License. # +from google.cloud.workflows.executions import gapic_version as package_version -from .services.executions import ExecutionsClient -from .services.executions import ExecutionsAsyncClient +__version__ = package_version.__version__ -from .types.executions import CancelExecutionRequest -from .types.executions import CreateExecutionRequest -from .types.executions import Execution -from .types.executions import GetExecutionRequest -from .types.executions import ListExecutionsRequest -from .types.executions import ListExecutionsResponse -from .types.executions import ExecutionView + +from .services.executions import ExecutionsAsyncClient, ExecutionsClient +from .types.executions import ( + CancelExecutionRequest, + CreateExecutionRequest, + Execution, + ExecutionView, + GetExecutionRequest, + ListExecutionsRequest, + ListExecutionsResponse, +) __all__ = ( "ExecutionsAsyncClient", diff --git a/google/cloud/workflows/executions_v1/services/executions/__init__.py b/google/cloud/workflows/executions_v1/services/executions/__init__.py index 4b0fb4b..f92fc71 100644 --- a/google/cloud/workflows/executions_v1/services/executions/__init__.py +++ b/google/cloud/workflows/executions_v1/services/executions/__init__.py @@ -13,8 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # -from .client import ExecutionsClient from .async_client import ExecutionsAsyncClient +from .client import ExecutionsClient __all__ = ( "ExecutionsClient", diff --git a/google/cloud/workflows/executions_v1/services/executions/async_client.py b/google/cloud/workflows/executions_v1/services/executions/async_client.py index 46c4aa9..6c776c4 100644 --- a/google/cloud/workflows/executions_v1/services/executions/async_client.py +++ b/google/cloud/workflows/executions_v1/services/executions/async_client.py @@ -16,27 +16,39 @@ from collections import OrderedDict import functools import re -from typing import Dict, Mapping, Optional, Sequence, Tuple, Type, Union -import pkg_resources +from typing import ( + Dict, + Mapping, + MutableMapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, +) -from google.api_core.client_options import ClientOptions from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries +from google.api_core.client_options import ClientOptions from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] except AttributeError: # pragma: NO COVER OptionalRetry = Union[retries.Retry, object] # type: ignore +from google.protobuf import timestamp_pb2 # type: ignore + from google.cloud.workflows.executions_v1.services.executions import pagers from google.cloud.workflows.executions_v1.types import executions -from google.protobuf import timestamp_pb2 # type: ignore -from .transports.base import ExecutionsTransport, DEFAULT_CLIENT_INFO -from .transports.grpc_asyncio import ExecutionsGrpcAsyncIOTransport + from .client import ExecutionsClient +from .transports.base import DEFAULT_CLIENT_INFO, ExecutionsTransport +from .transports.grpc_asyncio import ExecutionsGrpcAsyncIOTransport class ExecutionsAsyncClient: @@ -157,9 +169,9 @@ def transport(self) -> ExecutionsTransport: def __init__( self, *, - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, transport: Union[str, ExecutionsTransport] = "grpc_asyncio", - client_options: ClientOptions = None, + client_options: Optional[ClientOptions] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, ) -> None: """Instantiates the executions client. @@ -203,11 +215,11 @@ def __init__( async def list_executions( self, - request: Union[executions.ListExecutionsRequest, dict] = None, + request: Optional[Union[executions.ListExecutionsRequest, dict]] = None, *, - parent: str = None, + parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExecutionsAsyncPager: r"""Returns a list of executions which belong to the @@ -244,7 +256,7 @@ async def sample_list_executions(): print(response) Args: - request (Union[google.cloud.workflows.executions_v1.types.ListExecutionsRequest, dict]): + request (Optional[Union[google.cloud.workflows.executions_v1.types.ListExecutionsRequest, dict]]): The request object. Request for the [ListExecutions][] method. @@ -326,12 +338,12 @@ async def sample_list_executions(): async def create_execution( self, - request: Union[executions.CreateExecutionRequest, dict] = None, + request: Optional[Union[executions.CreateExecutionRequest, dict]] = None, *, - parent: str = None, - execution: executions.Execution = None, + parent: Optional[str] = None, + execution: Optional[executions.Execution] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Creates a new execution using the latest revision of @@ -364,7 +376,7 @@ async def sample_create_execution(): print(response) Args: - request (Union[google.cloud.workflows.executions_v1.types.CreateExecutionRequest, dict]): + request (Optional[Union[google.cloud.workflows.executions_v1.types.CreateExecutionRequest, dict]]): The request object. Request for the [CreateExecution][google.cloud.workflows.executions.v1.Executions.CreateExecution] method. @@ -442,11 +454,11 @@ async def sample_create_execution(): async def get_execution( self, - request: Union[executions.GetExecutionRequest, dict] = None, + request: Optional[Union[executions.GetExecutionRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Returns an execution of the given name. @@ -478,7 +490,7 @@ async def sample_get_execution(): print(response) Args: - request (Union[google.cloud.workflows.executions_v1.types.GetExecutionRequest, dict]): + request (Optional[Union[google.cloud.workflows.executions_v1.types.GetExecutionRequest, dict]]): The request object. Request for the [GetExecution][google.cloud.workflows.executions.v1.Executions.GetExecution] method. @@ -546,11 +558,11 @@ async def sample_get_execution(): async def cancel_execution( self, - request: Union[executions.CancelExecutionRequest, dict] = None, + request: Optional[Union[executions.CancelExecutionRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Cancels an execution of the given name. @@ -582,7 +594,7 @@ async def sample_cancel_execution(): print(response) Args: - request (Union[google.cloud.workflows.executions_v1.types.CancelExecutionRequest, dict]): + request (Optional[Union[google.cloud.workflows.executions_v1.types.CancelExecutionRequest, dict]]): The request object. Request for the [CancelExecution][google.cloud.workflows.executions.v1.Executions.CancelExecution] method. @@ -658,7 +670,7 @@ async def __aexit__(self, exc_type, exc, tb): try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=pkg_resources.get_distribution( - "google-cloud-workflow", + "google-cloud-workflows", ).version, ) except pkg_resources.DistributionNotFound: diff --git a/google/cloud/workflows/executions_v1/services/executions/client.py b/google/cloud/workflows/executions_v1/services/executions/client.py index 19018b4..36f9a95 100644 --- a/google/cloud/workflows/executions_v1/services/executions/client.py +++ b/google/cloud/workflows/executions_v1/services/executions/client.py @@ -16,28 +16,41 @@ from collections import OrderedDict import os import re -from typing import Dict, Mapping, Optional, Sequence, Tuple, Type, Union -import pkg_resources +from typing import ( + Dict, + Mapping, + MutableMapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, + cast, +) from google.api_core import client_options as client_options_lib from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries from google.auth import credentials as ga_credentials # type: ignore +from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.auth.transport import mtls # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore -from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] except AttributeError: # pragma: NO COVER OptionalRetry = Union[retries.Retry, object] # type: ignore +from google.protobuf import timestamp_pb2 # type: ignore + from google.cloud.workflows.executions_v1.services.executions import pagers from google.cloud.workflows.executions_v1.types import executions -from google.protobuf import timestamp_pb2 # type: ignore -from .transports.base import ExecutionsTransport, DEFAULT_CLIENT_INFO + +from .transports.base import DEFAULT_CLIENT_INFO, ExecutionsTransport from .transports.grpc import ExecutionsGrpcTransport from .transports.grpc_asyncio import ExecutionsGrpcAsyncIOTransport @@ -56,7 +69,7 @@ class ExecutionsClientMeta(type): def get_transport_class( cls, - label: str = None, + label: Optional[str] = None, ) -> Type[ExecutionsTransport]: """Returns an appropriate transport class. @@ -357,8 +370,8 @@ def __init__( self, *, credentials: Optional[ga_credentials.Credentials] = None, - transport: Union[str, ExecutionsTransport, None] = None, - client_options: Optional[client_options_lib.ClientOptions] = None, + transport: Optional[Union[str, ExecutionsTransport]] = None, + client_options: Optional[Union[client_options_lib.ClientOptions, dict]] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, ) -> None: """Instantiates the executions client. @@ -372,7 +385,7 @@ def __init__( transport (Union[str, ExecutionsTransport]): The transport to use. If set to None, a transport is chosen automatically. - client_options (google.api_core.client_options.ClientOptions): Custom options for the + client_options (Optional[Union[google.api_core.client_options.ClientOptions, dict]]): Custom options for the client. It won't take effect if a ``transport`` instance is provided. (1) The ``api_endpoint`` property can be used to override the default endpoint provided by the client. GOOGLE_API_USE_MTLS_ENDPOINT @@ -402,6 +415,7 @@ def __init__( client_options = client_options_lib.from_dict(client_options) if client_options is None: client_options = client_options_lib.ClientOptions() + client_options = cast(client_options_lib.ClientOptions, client_options) api_endpoint, client_cert_source_func = self.get_mtls_endpoint_and_cert_source( client_options @@ -454,11 +468,11 @@ def __init__( def list_executions( self, - request: Union[executions.ListExecutionsRequest, dict] = None, + request: Optional[Union[executions.ListExecutionsRequest, dict]] = None, *, - parent: str = None, + parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExecutionsPager: r"""Returns a list of executions which belong to the @@ -577,12 +591,12 @@ def sample_list_executions(): def create_execution( self, - request: Union[executions.CreateExecutionRequest, dict] = None, + request: Optional[Union[executions.CreateExecutionRequest, dict]] = None, *, - parent: str = None, - execution: executions.Execution = None, + parent: Optional[str] = None, + execution: Optional[executions.Execution] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Creates a new execution using the latest revision of @@ -693,11 +707,11 @@ def sample_create_execution(): def get_execution( self, - request: Union[executions.GetExecutionRequest, dict] = None, + request: Optional[Union[executions.GetExecutionRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Returns an execution of the given name. @@ -797,11 +811,11 @@ def sample_get_execution(): def cancel_execution( self, - request: Union[executions.CancelExecutionRequest, dict] = None, + request: Optional[Union[executions.CancelExecutionRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Cancels an execution of the given name. @@ -916,7 +930,7 @@ def __exit__(self, type, value, traceback): try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=pkg_resources.get_distribution( - "google-cloud-workflow", + "google-cloud-workflows", ).version, ) except pkg_resources.DistributionNotFound: diff --git a/google/cloud/workflows/executions_v1/services/executions/pagers.py b/google/cloud/workflows/executions_v1/services/executions/pagers.py index bae03c5..ce25238 100644 --- a/google/cloud/workflows/executions_v1/services/executions/pagers.py +++ b/google/cloud/workflows/executions_v1/services/executions/pagers.py @@ -18,10 +18,10 @@ AsyncIterator, Awaitable, Callable, + Iterator, + Optional, Sequence, Tuple, - Optional, - Iterator, ) from google.cloud.workflows.executions_v1.types import executions diff --git a/google/cloud/workflows/executions_v1/services/executions/transports/__init__.py b/google/cloud/workflows/executions_v1/services/executions/transports/__init__.py index bfe2147..7ee7301 100644 --- a/google/cloud/workflows/executions_v1/services/executions/transports/__init__.py +++ b/google/cloud/workflows/executions_v1/services/executions/transports/__init__.py @@ -20,7 +20,6 @@ from .grpc import ExecutionsGrpcTransport from .grpc_asyncio import ExecutionsGrpcAsyncIOTransport - # Compile a registry of transports. _transport_registry = OrderedDict() # type: Dict[str, Type[ExecutionsTransport]] _transport_registry["grpc"] = ExecutionsGrpcTransport diff --git a/google/cloud/workflows/executions_v1/services/executions/transports/base.py b/google/cloud/workflows/executions_v1/services/executions/transports/base.py index 74d246f..216d3a4 100644 --- a/google/cloud/workflows/executions_v1/services/executions/transports/base.py +++ b/google/cloud/workflows/executions_v1/services/executions/transports/base.py @@ -15,22 +15,22 @@ # import abc from typing import Awaitable, Callable, Dict, Optional, Sequence, Union -import pkg_resources -import google.auth # type: ignore import google.api_core from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries +import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources from google.cloud.workflows.executions_v1.types import executions try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=pkg_resources.get_distribution( - "google-cloud-workflow", + "google-cloud-workflows", ).version, ) except pkg_resources.DistributionNotFound: @@ -48,7 +48,7 @@ def __init__( self, *, host: str = DEFAULT_HOST, - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, diff --git a/google/cloud/workflows/executions_v1/services/executions/transports/grpc.py b/google/cloud/workflows/executions_v1/services/executions/transports/grpc.py index c070d84..35db077 100644 --- a/google/cloud/workflows/executions_v1/services/executions/transports/grpc.py +++ b/google/cloud/workflows/executions_v1/services/executions/transports/grpc.py @@ -13,19 +13,18 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import warnings from typing import Callable, Dict, Optional, Sequence, Tuple, Union +import warnings -from google.api_core import grpc_helpers -from google.api_core import gapic_v1 +from google.api_core import gapic_v1, grpc_helpers import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore - import grpc # type: ignore from google.cloud.workflows.executions_v1.types import executions -from .base import ExecutionsTransport, DEFAULT_CLIENT_INFO + +from .base import DEFAULT_CLIENT_INFO, ExecutionsTransport class ExecutionsGrpcTransport(ExecutionsTransport): @@ -48,14 +47,14 @@ def __init__( self, *, host: str = "workflowexecutions.googleapis.com", - credentials: ga_credentials.Credentials = None, - credentials_file: str = None, - scopes: Sequence[str] = None, - channel: grpc.Channel = None, - api_mtls_endpoint: str = None, - client_cert_source: Callable[[], Tuple[bytes, bytes]] = None, - ssl_channel_credentials: grpc.ChannelCredentials = None, - client_cert_source_for_mtls: Callable[[], Tuple[bytes, bytes]] = None, + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, + scopes: Optional[Sequence[str]] = None, + channel: Optional[grpc.Channel] = None, + api_mtls_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, quota_project_id: Optional[str] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, always_use_jwt_access: Optional[bool] = False, @@ -182,8 +181,8 @@ def __init__( def create_channel( cls, host: str = "workflowexecutions.googleapis.com", - credentials: ga_credentials.Credentials = None, - credentials_file: str = None, + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, **kwargs, diff --git a/google/cloud/workflows/executions_v1/services/executions/transports/grpc_asyncio.py b/google/cloud/workflows/executions_v1/services/executions/transports/grpc_asyncio.py index b3b3d3f..c73f49a 100644 --- a/google/cloud/workflows/executions_v1/services/executions/transports/grpc_asyncio.py +++ b/google/cloud/workflows/executions_v1/services/executions/transports/grpc_asyncio.py @@ -13,19 +13,18 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import warnings from typing import Awaitable, Callable, Dict, Optional, Sequence, Tuple, Union +import warnings -from google.api_core import gapic_v1 -from google.api_core import grpc_helpers_async +from google.api_core import gapic_v1, grpc_helpers_async from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore - import grpc # type: ignore from grpc.experimental import aio # type: ignore from google.cloud.workflows.executions_v1.types import executions -from .base import ExecutionsTransport, DEFAULT_CLIENT_INFO + +from .base import DEFAULT_CLIENT_INFO, ExecutionsTransport from .grpc import ExecutionsGrpcTransport @@ -50,7 +49,7 @@ class ExecutionsGrpcAsyncIOTransport(ExecutionsTransport): def create_channel( cls, host: str = "workflowexecutions.googleapis.com", - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, @@ -93,15 +92,15 @@ def __init__( self, *, host: str = "workflowexecutions.googleapis.com", - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, - channel: aio.Channel = None, - api_mtls_endpoint: str = None, - client_cert_source: Callable[[], Tuple[bytes, bytes]] = None, - ssl_channel_credentials: grpc.ChannelCredentials = None, - client_cert_source_for_mtls: Callable[[], Tuple[bytes, bytes]] = None, - quota_project_id=None, + channel: Optional[aio.Channel] = None, + api_mtls_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + quota_project_id: Optional[str] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, always_use_jwt_access: Optional[bool] = False, api_audience: Optional[str] = None, diff --git a/google/cloud/workflows/executions_v1/types/__init__.py b/google/cloud/workflows/executions_v1/types/__init__.py index a68c3aa..2437040 100644 --- a/google/cloud/workflows/executions_v1/types/__init__.py +++ b/google/cloud/workflows/executions_v1/types/__init__.py @@ -17,10 +17,10 @@ CancelExecutionRequest, CreateExecutionRequest, Execution, + ExecutionView, GetExecutionRequest, ListExecutionsRequest, ListExecutionsResponse, - ExecutionView, ) __all__ = ( diff --git a/google/cloud/workflows/executions_v1/types/executions.py b/google/cloud/workflows/executions_v1/types/executions.py index ae9a43a..6a5e059 100644 --- a/google/cloud/workflows/executions_v1/types/executions.py +++ b/google/cloud/workflows/executions_v1/types/executions.py @@ -13,10 +13,10 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import proto # type: ignore +from typing import MutableMapping, MutableSequence from google.protobuf import timestamp_pb2 # type: ignore - +import proto # type: ignore __protobuf__ = proto.module( package="google.cloud.workflows.executions.v1", @@ -128,28 +128,28 @@ class Position(proto.Message): this stack trace element. """ - line = proto.Field( + line: int = proto.Field( proto.INT64, number=1, ) - column = proto.Field( + column: int = proto.Field( proto.INT64, number=2, ) - length = proto.Field( + length: int = proto.Field( proto.INT64, number=3, ) - step = proto.Field( + step: str = proto.Field( proto.STRING, number=1, ) - routine = proto.Field( + routine: str = proto.Field( proto.STRING, number=2, ) - position = proto.Field( + position: "Execution.StackTraceElement.Position" = proto.Field( proto.MESSAGE, number=3, message="Execution.StackTraceElement.Position", @@ -160,11 +160,11 @@ class StackTrace(proto.Message): occurred. Attributes: - elements (Sequence[google.cloud.workflows.executions_v1.types.Execution.StackTraceElement]): + elements (MutableSequence[google.cloud.workflows.executions_v1.types.Execution.StackTraceElement]): An array of stack elements. """ - elements = proto.RepeatedField( + elements: MutableSequence["Execution.StackTraceElement"] = proto.RepeatedField( proto.MESSAGE, number=1, message="Execution.StackTraceElement", @@ -184,57 +184,57 @@ class Error(proto.Message): where error was generated. """ - payload = proto.Field( + payload: str = proto.Field( proto.STRING, number=1, ) - context = proto.Field( + context: str = proto.Field( proto.STRING, number=2, ) - stack_trace = proto.Field( + stack_trace: "Execution.StackTrace" = proto.Field( proto.MESSAGE, number=3, message="Execution.StackTrace", ) - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) - start_time = proto.Field( + start_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=2, message=timestamp_pb2.Timestamp, ) - end_time = proto.Field( + end_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=3, message=timestamp_pb2.Timestamp, ) - state = proto.Field( + state: State = proto.Field( proto.ENUM, number=4, enum=State, ) - argument = proto.Field( + argument: str = proto.Field( proto.STRING, number=5, ) - result = proto.Field( + result: str = proto.Field( proto.STRING, number=6, ) - error = proto.Field( + error: Error = proto.Field( proto.MESSAGE, number=7, message=Error, ) - workflow_revision_id = proto.Field( + workflow_revision_id: str = proto.Field( proto.STRING, number=8, ) - call_log_level = proto.Field( + call_log_level: CallLogLevel = proto.Field( proto.ENUM, number=9, enum=CallLogLevel, @@ -270,19 +270,19 @@ class ListExecutionsRequest(proto.Message): will default to the BASIC view. """ - parent = proto.Field( + parent: str = proto.Field( proto.STRING, number=1, ) - page_size = proto.Field( + page_size: int = proto.Field( proto.INT32, number=2, ) - page_token = proto.Field( + page_token: str = proto.Field( proto.STRING, number=3, ) - view = proto.Field( + view: "ExecutionView" = proto.Field( proto.ENUM, number=4, enum="ExecutionView", @@ -295,7 +295,7 @@ class ListExecutionsResponse(proto.Message): method. Attributes: - executions (Sequence[google.cloud.workflows.executions_v1.types.Execution]): + executions (MutableSequence[google.cloud.workflows.executions_v1.types.Execution]): The executions which match the request. next_page_token (str): A token, which can be sent as ``page_token`` to retrieve the @@ -307,12 +307,12 @@ class ListExecutionsResponse(proto.Message): def raw_page(self): return self - executions = proto.RepeatedField( + executions: MutableSequence["Execution"] = proto.RepeatedField( proto.MESSAGE, number=1, message="Execution", ) - next_page_token = proto.Field( + next_page_token: str = proto.Field( proto.STRING, number=2, ) @@ -334,11 +334,11 @@ class CreateExecutionRequest(proto.Message): Required. Execution to be created. """ - parent = proto.Field( + parent: str = proto.Field( proto.STRING, number=1, ) - execution = proto.Field( + execution: "Execution" = proto.Field( proto.MESSAGE, number=2, message="Execution", @@ -361,11 +361,11 @@ class GetExecutionRequest(proto.Message): will default to the FULL view. """ - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) - view = proto.Field( + view: "ExecutionView" = proto.Field( proto.ENUM, number=2, enum="ExecutionView", @@ -384,7 +384,7 @@ class CancelExecutionRequest(proto.Message): projects/{project}/locations/{location}/workflows/{workflow}/executions/{execution} """ - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) diff --git a/google/cloud/workflows/executions_v1beta/__init__.py b/google/cloud/workflows/executions_v1beta/__init__.py index 813c180..fb930f8 100644 --- a/google/cloud/workflows/executions_v1beta/__init__.py +++ b/google/cloud/workflows/executions_v1beta/__init__.py @@ -13,17 +13,21 @@ # See the License for the specific language governing permissions and # limitations under the License. # +from google.cloud.workflows.executions import gapic_version as package_version -from .services.executions import ExecutionsClient -from .services.executions import ExecutionsAsyncClient +__version__ = package_version.__version__ -from .types.executions import CancelExecutionRequest -from .types.executions import CreateExecutionRequest -from .types.executions import Execution -from .types.executions import GetExecutionRequest -from .types.executions import ListExecutionsRequest -from .types.executions import ListExecutionsResponse -from .types.executions import ExecutionView + +from .services.executions import ExecutionsAsyncClient, ExecutionsClient +from .types.executions import ( + CancelExecutionRequest, + CreateExecutionRequest, + Execution, + ExecutionView, + GetExecutionRequest, + ListExecutionsRequest, + ListExecutionsResponse, +) __all__ = ( "ExecutionsAsyncClient", diff --git a/google/cloud/workflows/executions_v1beta/services/executions/__init__.py b/google/cloud/workflows/executions_v1beta/services/executions/__init__.py index 4b0fb4b..f92fc71 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/__init__.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/__init__.py @@ -13,8 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # -from .client import ExecutionsClient from .async_client import ExecutionsAsyncClient +from .client import ExecutionsClient __all__ = ( "ExecutionsClient", diff --git a/google/cloud/workflows/executions_v1beta/services/executions/async_client.py b/google/cloud/workflows/executions_v1beta/services/executions/async_client.py index 81794d0..3cf8094 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/async_client.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/async_client.py @@ -16,27 +16,39 @@ from collections import OrderedDict import functools import re -from typing import Dict, Mapping, Optional, Sequence, Tuple, Type, Union -import pkg_resources +from typing import ( + Dict, + Mapping, + MutableMapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, +) -from google.api_core.client_options import ClientOptions from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries +from google.api_core.client_options import ClientOptions from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] except AttributeError: # pragma: NO COVER OptionalRetry = Union[retries.Retry, object] # type: ignore +from google.protobuf import timestamp_pb2 # type: ignore + from google.cloud.workflows.executions_v1beta.services.executions import pagers from google.cloud.workflows.executions_v1beta.types import executions -from google.protobuf import timestamp_pb2 # type: ignore -from .transports.base import ExecutionsTransport, DEFAULT_CLIENT_INFO -from .transports.grpc_asyncio import ExecutionsGrpcAsyncIOTransport + from .client import ExecutionsClient +from .transports.base import DEFAULT_CLIENT_INFO, ExecutionsTransport +from .transports.grpc_asyncio import ExecutionsGrpcAsyncIOTransport class ExecutionsAsyncClient: @@ -158,9 +170,9 @@ def transport(self) -> ExecutionsTransport: def __init__( self, *, - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, transport: Union[str, ExecutionsTransport] = "grpc_asyncio", - client_options: ClientOptions = None, + client_options: Optional[ClientOptions] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, ) -> None: """Instantiates the executions client. @@ -204,11 +216,11 @@ def __init__( async def list_executions( self, - request: Union[executions.ListExecutionsRequest, dict] = None, + request: Optional[Union[executions.ListExecutionsRequest, dict]] = None, *, - parent: str = None, + parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExecutionsAsyncPager: r"""Returns a list of executions which belong to the @@ -245,7 +257,7 @@ async def sample_list_executions(): print(response) Args: - request (Union[google.cloud.workflows.executions_v1beta.types.ListExecutionsRequest, dict]): + request (Optional[Union[google.cloud.workflows.executions_v1beta.types.ListExecutionsRequest, dict]]): The request object. Request for the [ListExecutions][google.cloud.workflows.executions.v1beta.Executions.ListExecutions] method. @@ -327,12 +339,12 @@ async def sample_list_executions(): async def create_execution( self, - request: Union[executions.CreateExecutionRequest, dict] = None, + request: Optional[Union[executions.CreateExecutionRequest, dict]] = None, *, - parent: str = None, - execution: executions.Execution = None, + parent: Optional[str] = None, + execution: Optional[executions.Execution] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Creates a new execution using the latest revision of @@ -365,7 +377,7 @@ async def sample_create_execution(): print(response) Args: - request (Union[google.cloud.workflows.executions_v1beta.types.CreateExecutionRequest, dict]): + request (Optional[Union[google.cloud.workflows.executions_v1beta.types.CreateExecutionRequest, dict]]): The request object. Request for the [CreateExecution][google.cloud.workflows.executions.v1beta.Executions.CreateExecution] method. @@ -443,11 +455,11 @@ async def sample_create_execution(): async def get_execution( self, - request: Union[executions.GetExecutionRequest, dict] = None, + request: Optional[Union[executions.GetExecutionRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Returns an execution of the given name. @@ -479,7 +491,7 @@ async def sample_get_execution(): print(response) Args: - request (Union[google.cloud.workflows.executions_v1beta.types.GetExecutionRequest, dict]): + request (Optional[Union[google.cloud.workflows.executions_v1beta.types.GetExecutionRequest, dict]]): The request object. Request for the [GetExecution][google.cloud.workflows.executions.v1beta.Executions.GetExecution] method. @@ -547,11 +559,11 @@ async def sample_get_execution(): async def cancel_execution( self, - request: Union[executions.CancelExecutionRequest, dict] = None, + request: Optional[Union[executions.CancelExecutionRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Cancels an execution of the given name. @@ -583,7 +595,7 @@ async def sample_cancel_execution(): print(response) Args: - request (Union[google.cloud.workflows.executions_v1beta.types.CancelExecutionRequest, dict]): + request (Optional[Union[google.cloud.workflows.executions_v1beta.types.CancelExecutionRequest, dict]]): The request object. Request for the [CancelExecution][google.cloud.workflows.executions.v1beta.Executions.CancelExecution] method. @@ -659,7 +671,7 @@ async def __aexit__(self, exc_type, exc, tb): try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=pkg_resources.get_distribution( - "google-cloud-workflow", + "google-cloud-workflows", ).version, ) except pkg_resources.DistributionNotFound: diff --git a/google/cloud/workflows/executions_v1beta/services/executions/client.py b/google/cloud/workflows/executions_v1beta/services/executions/client.py index 1c4c97e..96d6502 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/client.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/client.py @@ -16,28 +16,41 @@ from collections import OrderedDict import os import re -from typing import Dict, Mapping, Optional, Sequence, Tuple, Type, Union -import pkg_resources +from typing import ( + Dict, + Mapping, + MutableMapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, + cast, +) from google.api_core import client_options as client_options_lib from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries from google.auth import credentials as ga_credentials # type: ignore +from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.auth.transport import mtls # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore -from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] except AttributeError: # pragma: NO COVER OptionalRetry = Union[retries.Retry, object] # type: ignore +from google.protobuf import timestamp_pb2 # type: ignore + from google.cloud.workflows.executions_v1beta.services.executions import pagers from google.cloud.workflows.executions_v1beta.types import executions -from google.protobuf import timestamp_pb2 # type: ignore -from .transports.base import ExecutionsTransport, DEFAULT_CLIENT_INFO + +from .transports.base import DEFAULT_CLIENT_INFO, ExecutionsTransport from .transports.grpc import ExecutionsGrpcTransport from .transports.grpc_asyncio import ExecutionsGrpcAsyncIOTransport @@ -56,7 +69,7 @@ class ExecutionsClientMeta(type): def get_transport_class( cls, - label: str = None, + label: Optional[str] = None, ) -> Type[ExecutionsTransport]: """Returns an appropriate transport class. @@ -358,8 +371,8 @@ def __init__( self, *, credentials: Optional[ga_credentials.Credentials] = None, - transport: Union[str, ExecutionsTransport, None] = None, - client_options: Optional[client_options_lib.ClientOptions] = None, + transport: Optional[Union[str, ExecutionsTransport]] = None, + client_options: Optional[Union[client_options_lib.ClientOptions, dict]] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, ) -> None: """Instantiates the executions client. @@ -373,7 +386,7 @@ def __init__( transport (Union[str, ExecutionsTransport]): The transport to use. If set to None, a transport is chosen automatically. - client_options (google.api_core.client_options.ClientOptions): Custom options for the + client_options (Optional[Union[google.api_core.client_options.ClientOptions, dict]]): Custom options for the client. It won't take effect if a ``transport`` instance is provided. (1) The ``api_endpoint`` property can be used to override the default endpoint provided by the client. GOOGLE_API_USE_MTLS_ENDPOINT @@ -403,6 +416,7 @@ def __init__( client_options = client_options_lib.from_dict(client_options) if client_options is None: client_options = client_options_lib.ClientOptions() + client_options = cast(client_options_lib.ClientOptions, client_options) api_endpoint, client_cert_source_func = self.get_mtls_endpoint_and_cert_source( client_options @@ -455,11 +469,11 @@ def __init__( def list_executions( self, - request: Union[executions.ListExecutionsRequest, dict] = None, + request: Optional[Union[executions.ListExecutionsRequest, dict]] = None, *, - parent: str = None, + parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExecutionsPager: r"""Returns a list of executions which belong to the @@ -578,12 +592,12 @@ def sample_list_executions(): def create_execution( self, - request: Union[executions.CreateExecutionRequest, dict] = None, + request: Optional[Union[executions.CreateExecutionRequest, dict]] = None, *, - parent: str = None, - execution: executions.Execution = None, + parent: Optional[str] = None, + execution: Optional[executions.Execution] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Creates a new execution using the latest revision of @@ -694,11 +708,11 @@ def sample_create_execution(): def get_execution( self, - request: Union[executions.GetExecutionRequest, dict] = None, + request: Optional[Union[executions.GetExecutionRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Returns an execution of the given name. @@ -798,11 +812,11 @@ def sample_get_execution(): def cancel_execution( self, - request: Union[executions.CancelExecutionRequest, dict] = None, + request: Optional[Union[executions.CancelExecutionRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Cancels an execution of the given name. @@ -917,7 +931,7 @@ def __exit__(self, type, value, traceback): try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=pkg_resources.get_distribution( - "google-cloud-workflow", + "google-cloud-workflows", ).version, ) except pkg_resources.DistributionNotFound: diff --git a/google/cloud/workflows/executions_v1beta/services/executions/pagers.py b/google/cloud/workflows/executions_v1beta/services/executions/pagers.py index f90d5b1..e54132f 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/pagers.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/pagers.py @@ -18,10 +18,10 @@ AsyncIterator, Awaitable, Callable, + Iterator, + Optional, Sequence, Tuple, - Optional, - Iterator, ) from google.cloud.workflows.executions_v1beta.types import executions diff --git a/google/cloud/workflows/executions_v1beta/services/executions/transports/__init__.py b/google/cloud/workflows/executions_v1beta/services/executions/transports/__init__.py index bfe2147..7ee7301 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/transports/__init__.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/transports/__init__.py @@ -20,7 +20,6 @@ from .grpc import ExecutionsGrpcTransport from .grpc_asyncio import ExecutionsGrpcAsyncIOTransport - # Compile a registry of transports. _transport_registry = OrderedDict() # type: Dict[str, Type[ExecutionsTransport]] _transport_registry["grpc"] = ExecutionsGrpcTransport diff --git a/google/cloud/workflows/executions_v1beta/services/executions/transports/base.py b/google/cloud/workflows/executions_v1beta/services/executions/transports/base.py index fb5d62e..6401f0d 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/transports/base.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/transports/base.py @@ -15,22 +15,22 @@ # import abc from typing import Awaitable, Callable, Dict, Optional, Sequence, Union -import pkg_resources -import google.auth # type: ignore import google.api_core from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries +import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources from google.cloud.workflows.executions_v1beta.types import executions try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( gapic_version=pkg_resources.get_distribution( - "google-cloud-workflow", + "google-cloud-workflows", ).version, ) except pkg_resources.DistributionNotFound: @@ -48,7 +48,7 @@ def __init__( self, *, host: str = DEFAULT_HOST, - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, diff --git a/google/cloud/workflows/executions_v1beta/services/executions/transports/grpc.py b/google/cloud/workflows/executions_v1beta/services/executions/transports/grpc.py index 7f7a360..c05f745 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/transports/grpc.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/transports/grpc.py @@ -13,19 +13,18 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import warnings from typing import Callable, Dict, Optional, Sequence, Tuple, Union +import warnings -from google.api_core import grpc_helpers -from google.api_core import gapic_v1 +from google.api_core import gapic_v1, grpc_helpers import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore - import grpc # type: ignore from google.cloud.workflows.executions_v1beta.types import executions -from .base import ExecutionsTransport, DEFAULT_CLIENT_INFO + +from .base import DEFAULT_CLIENT_INFO, ExecutionsTransport class ExecutionsGrpcTransport(ExecutionsTransport): @@ -49,14 +48,14 @@ def __init__( self, *, host: str = "workflowexecutions.googleapis.com", - credentials: ga_credentials.Credentials = None, - credentials_file: str = None, - scopes: Sequence[str] = None, - channel: grpc.Channel = None, - api_mtls_endpoint: str = None, - client_cert_source: Callable[[], Tuple[bytes, bytes]] = None, - ssl_channel_credentials: grpc.ChannelCredentials = None, - client_cert_source_for_mtls: Callable[[], Tuple[bytes, bytes]] = None, + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, + scopes: Optional[Sequence[str]] = None, + channel: Optional[grpc.Channel] = None, + api_mtls_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, quota_project_id: Optional[str] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, always_use_jwt_access: Optional[bool] = False, @@ -183,8 +182,8 @@ def __init__( def create_channel( cls, host: str = "workflowexecutions.googleapis.com", - credentials: ga_credentials.Credentials = None, - credentials_file: str = None, + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, **kwargs, diff --git a/google/cloud/workflows/executions_v1beta/services/executions/transports/grpc_asyncio.py b/google/cloud/workflows/executions_v1beta/services/executions/transports/grpc_asyncio.py index d560133..21dff7c 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/transports/grpc_asyncio.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/transports/grpc_asyncio.py @@ -13,19 +13,18 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import warnings from typing import Awaitable, Callable, Dict, Optional, Sequence, Tuple, Union +import warnings -from google.api_core import gapic_v1 -from google.api_core import grpc_helpers_async +from google.api_core import gapic_v1, grpc_helpers_async from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore - import grpc # type: ignore from grpc.experimental import aio # type: ignore from google.cloud.workflows.executions_v1beta.types import executions -from .base import ExecutionsTransport, DEFAULT_CLIENT_INFO + +from .base import DEFAULT_CLIENT_INFO, ExecutionsTransport from .grpc import ExecutionsGrpcTransport @@ -51,7 +50,7 @@ class ExecutionsGrpcAsyncIOTransport(ExecutionsTransport): def create_channel( cls, host: str = "workflowexecutions.googleapis.com", - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, @@ -94,15 +93,15 @@ def __init__( self, *, host: str = "workflowexecutions.googleapis.com", - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, - channel: aio.Channel = None, - api_mtls_endpoint: str = None, - client_cert_source: Callable[[], Tuple[bytes, bytes]] = None, - ssl_channel_credentials: grpc.ChannelCredentials = None, - client_cert_source_for_mtls: Callable[[], Tuple[bytes, bytes]] = None, - quota_project_id=None, + channel: Optional[aio.Channel] = None, + api_mtls_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + quota_project_id: Optional[str] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, always_use_jwt_access: Optional[bool] = False, api_audience: Optional[str] = None, diff --git a/google/cloud/workflows/executions_v1beta/types/__init__.py b/google/cloud/workflows/executions_v1beta/types/__init__.py index a68c3aa..2437040 100644 --- a/google/cloud/workflows/executions_v1beta/types/__init__.py +++ b/google/cloud/workflows/executions_v1beta/types/__init__.py @@ -17,10 +17,10 @@ CancelExecutionRequest, CreateExecutionRequest, Execution, + ExecutionView, GetExecutionRequest, ListExecutionsRequest, ListExecutionsResponse, - ExecutionView, ) __all__ = ( diff --git a/google/cloud/workflows/executions_v1beta/types/executions.py b/google/cloud/workflows/executions_v1beta/types/executions.py index 41f5458..856c80a 100644 --- a/google/cloud/workflows/executions_v1beta/types/executions.py +++ b/google/cloud/workflows/executions_v1beta/types/executions.py @@ -13,10 +13,10 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import proto # type: ignore +from typing import MutableMapping, MutableSequence from google.protobuf import timestamp_pb2 # type: ignore - +import proto # type: ignore __protobuf__ = proto.module( package="google.cloud.workflows.executions.v1beta", @@ -94,48 +94,48 @@ class Error(proto.Message): debugging purposes. """ - payload = proto.Field( + payload: str = proto.Field( proto.STRING, number=1, ) - context = proto.Field( + context: str = proto.Field( proto.STRING, number=2, ) - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) - start_time = proto.Field( + start_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=2, message=timestamp_pb2.Timestamp, ) - end_time = proto.Field( + end_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=3, message=timestamp_pb2.Timestamp, ) - state = proto.Field( + state: State = proto.Field( proto.ENUM, number=4, enum=State, ) - argument = proto.Field( + argument: str = proto.Field( proto.STRING, number=5, ) - result = proto.Field( + result: str = proto.Field( proto.STRING, number=6, ) - error = proto.Field( + error: Error = proto.Field( proto.MESSAGE, number=7, message=Error, ) - workflow_revision_id = proto.Field( + workflow_revision_id: str = proto.Field( proto.STRING, number=8, ) @@ -172,19 +172,19 @@ class ListExecutionsRequest(proto.Message): will default to the BASIC view. """ - parent = proto.Field( + parent: str = proto.Field( proto.STRING, number=1, ) - page_size = proto.Field( + page_size: int = proto.Field( proto.INT32, number=2, ) - page_token = proto.Field( + page_token: str = proto.Field( proto.STRING, number=3, ) - view = proto.Field( + view: "ExecutionView" = proto.Field( proto.ENUM, number=4, enum="ExecutionView", @@ -197,7 +197,7 @@ class ListExecutionsResponse(proto.Message): method. Attributes: - executions (Sequence[google.cloud.workflows.executions_v1beta.types.Execution]): + executions (MutableSequence[google.cloud.workflows.executions_v1beta.types.Execution]): The executions which match the request. next_page_token (str): A token, which can be sent as ``page_token`` to retrieve the @@ -209,12 +209,12 @@ class ListExecutionsResponse(proto.Message): def raw_page(self): return self - executions = proto.RepeatedField( + executions: MutableSequence["Execution"] = proto.RepeatedField( proto.MESSAGE, number=1, message="Execution", ) - next_page_token = proto.Field( + next_page_token: str = proto.Field( proto.STRING, number=2, ) @@ -236,11 +236,11 @@ class CreateExecutionRequest(proto.Message): Required. Execution to be created. """ - parent = proto.Field( + parent: str = proto.Field( proto.STRING, number=1, ) - execution = proto.Field( + execution: "Execution" = proto.Field( proto.MESSAGE, number=2, message="Execution", @@ -263,11 +263,11 @@ class GetExecutionRequest(proto.Message): will default to the FULL view. """ - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) - view = proto.Field( + view: "ExecutionView" = proto.Field( proto.ENUM, number=2, enum="ExecutionView", @@ -286,7 +286,7 @@ class CancelExecutionRequest(proto.Message): projects/{project}/locations/{location}/workflows/{workflow}/executions/{execution} """ - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) diff --git a/google/cloud/workflows/gapic_version.py b/google/cloud/workflows/gapic_version.py new file mode 100644 index 0000000..3372e01 --- /dev/null +++ b/google/cloud/workflows/gapic_version.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +__version__ = "1.7.4" # {x-release-please-version} diff --git a/google/cloud/workflows_v1/__init__.py b/google/cloud/workflows_v1/__init__.py index 44a9fc1..f3c84b7 100644 --- a/google/cloud/workflows_v1/__init__.py +++ b/google/cloud/workflows_v1/__init__.py @@ -13,18 +13,22 @@ # See the License for the specific language governing permissions and # limitations under the License. # +from google.cloud.workflows import gapic_version as package_version -from .services.workflows import WorkflowsClient -from .services.workflows import WorkflowsAsyncClient +__version__ = package_version.__version__ -from .types.workflows import CreateWorkflowRequest -from .types.workflows import DeleteWorkflowRequest -from .types.workflows import GetWorkflowRequest -from .types.workflows import ListWorkflowsRequest -from .types.workflows import ListWorkflowsResponse -from .types.workflows import OperationMetadata -from .types.workflows import UpdateWorkflowRequest -from .types.workflows import Workflow + +from .services.workflows import WorkflowsAsyncClient, WorkflowsClient +from .types.workflows import ( + CreateWorkflowRequest, + DeleteWorkflowRequest, + GetWorkflowRequest, + ListWorkflowsRequest, + ListWorkflowsResponse, + OperationMetadata, + UpdateWorkflowRequest, + Workflow, +) __all__ = ( "WorkflowsAsyncClient", diff --git a/google/cloud/workflows_v1/services/workflows/__init__.py b/google/cloud/workflows_v1/services/workflows/__init__.py index 93a7c47..dfc5625 100644 --- a/google/cloud/workflows_v1/services/workflows/__init__.py +++ b/google/cloud/workflows_v1/services/workflows/__init__.py @@ -13,8 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # -from .client import WorkflowsClient from .async_client import WorkflowsAsyncClient +from .client import WorkflowsClient __all__ = ( "WorkflowsClient", diff --git a/google/cloud/workflows_v1/services/workflows/async_client.py b/google/cloud/workflows_v1/services/workflows/async_client.py index 836d662..a08f88d 100644 --- a/google/cloud/workflows_v1/services/workflows/async_client.py +++ b/google/cloud/workflows_v1/services/workflows/async_client.py @@ -16,15 +16,25 @@ from collections import OrderedDict import functools import re -from typing import Dict, Mapping, Optional, Sequence, Tuple, Type, Union -import pkg_resources +from typing import ( + Dict, + Mapping, + MutableMapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, +) -from google.api_core.client_options import ClientOptions from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries +from google.api_core.client_options import ClientOptions from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -33,14 +43,16 @@ from google.api_core import operation # type: ignore from google.api_core import operation_async # type: ignore -from google.cloud.workflows_v1.services.workflows import pagers -from google.cloud.workflows_v1.types import workflows from google.protobuf import empty_pb2 # type: ignore from google.protobuf import field_mask_pb2 # type: ignore from google.protobuf import timestamp_pb2 # type: ignore -from .transports.base import WorkflowsTransport, DEFAULT_CLIENT_INFO -from .transports.grpc_asyncio import WorkflowsGrpcAsyncIOTransport + +from google.cloud.workflows_v1.services.workflows import pagers +from google.cloud.workflows_v1.types import workflows + from .client import WorkflowsClient +from .transports.base import DEFAULT_CLIENT_INFO, WorkflowsTransport +from .transports.grpc_asyncio import WorkflowsGrpcAsyncIOTransport class WorkflowsAsyncClient: @@ -160,9 +172,9 @@ def transport(self) -> WorkflowsTransport: def __init__( self, *, - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, transport: Union[str, WorkflowsTransport] = "grpc_asyncio", - client_options: ClientOptions = None, + client_options: Optional[ClientOptions] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, ) -> None: """Instantiates the workflows client. @@ -206,11 +218,11 @@ def __init__( async def list_workflows( self, - request: Union[workflows.ListWorkflowsRequest, dict] = None, + request: Optional[Union[workflows.ListWorkflowsRequest, dict]] = None, *, - parent: str = None, + parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListWorkflowsAsyncPager: r"""Lists Workflows in a given project and location. @@ -244,7 +256,7 @@ async def sample_list_workflows(): print(response) Args: - request (Union[google.cloud.workflows_v1.types.ListWorkflowsRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1.types.ListWorkflowsRequest, dict]]): The request object. Request for the [ListWorkflows][google.cloud.workflows.v1.Workflows.ListWorkflows] method. @@ -326,11 +338,11 @@ async def sample_list_workflows(): async def get_workflow( self, - request: Union[workflows.GetWorkflowRequest, dict] = None, + request: Optional[Union[workflows.GetWorkflowRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> workflows.Workflow: r"""Gets details of a single Workflow. @@ -362,7 +374,7 @@ async def sample_get_workflow(): print(response) Args: - request (Union[google.cloud.workflows_v1.types.GetWorkflowRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1.types.GetWorkflowRequest, dict]]): The request object. Request for the [GetWorkflow][google.cloud.workflows.v1.Workflows.GetWorkflow] method. @@ -430,13 +442,13 @@ async def sample_get_workflow(): async def create_workflow( self, - request: Union[workflows.CreateWorkflowRequest, dict] = None, + request: Optional[Union[workflows.CreateWorkflowRequest, dict]] = None, *, - parent: str = None, - workflow: workflows.Workflow = None, - workflow_id: str = None, + parent: Optional[str] = None, + workflow: Optional[workflows.Workflow] = None, + workflow_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Creates a new workflow. If a workflow with the specified name @@ -480,7 +492,7 @@ async def sample_create_workflow(): print(response) Args: - request (Union[google.cloud.workflows_v1.types.CreateWorkflowRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1.types.CreateWorkflowRequest, dict]]): The request object. Request for the [CreateWorkflow][google.cloud.workflows.v1.Workflows.CreateWorkflow] method. @@ -584,11 +596,11 @@ async def sample_create_workflow(): async def delete_workflow( self, - request: Union[workflows.DeleteWorkflowRequest, dict] = None, + request: Optional[Union[workflows.DeleteWorkflowRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Deletes a workflow with the specified name. @@ -626,7 +638,7 @@ async def sample_delete_workflow(): print(response) Args: - request (Union[google.cloud.workflows_v1.types.DeleteWorkflowRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1.types.DeleteWorkflowRequest, dict]]): The request object. Request for the [DeleteWorkflow][google.cloud.workflows.v1.Workflows.DeleteWorkflow] method. @@ -712,12 +724,12 @@ async def sample_delete_workflow(): async def update_workflow( self, - request: Union[workflows.UpdateWorkflowRequest, dict] = None, + request: Optional[Union[workflows.UpdateWorkflowRequest, dict]] = None, *, - workflow: workflows.Workflow = None, - update_mask: field_mask_pb2.FieldMask = None, + workflow: Optional[workflows.Workflow] = None, + update_mask: Optional[field_mask_pb2.FieldMask] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Updates an existing workflow. @@ -761,7 +773,7 @@ async def sample_update_workflow(): print(response) Args: - request (Union[google.cloud.workflows_v1.types.UpdateWorkflowRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1.types.UpdateWorkflowRequest, dict]]): The request object. Request for the [UpdateWorkflow][google.cloud.workflows.v1.Workflows.UpdateWorkflow] method. diff --git a/google/cloud/workflows_v1/services/workflows/client.py b/google/cloud/workflows_v1/services/workflows/client.py index e809844..5108ae3 100644 --- a/google/cloud/workflows_v1/services/workflows/client.py +++ b/google/cloud/workflows_v1/services/workflows/client.py @@ -16,18 +16,29 @@ from collections import OrderedDict import os import re -from typing import Dict, Mapping, Optional, Sequence, Tuple, Type, Union -import pkg_resources +from typing import ( + Dict, + Mapping, + MutableMapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, + cast, +) from google.api_core import client_options as client_options_lib from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries from google.auth import credentials as ga_credentials # type: ignore +from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.auth.transport import mtls # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore -from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -36,12 +47,14 @@ from google.api_core import operation # type: ignore from google.api_core import operation_async # type: ignore -from google.cloud.workflows_v1.services.workflows import pagers -from google.cloud.workflows_v1.types import workflows from google.protobuf import empty_pb2 # type: ignore from google.protobuf import field_mask_pb2 # type: ignore from google.protobuf import timestamp_pb2 # type: ignore -from .transports.base import WorkflowsTransport, DEFAULT_CLIENT_INFO + +from google.cloud.workflows_v1.services.workflows import pagers +from google.cloud.workflows_v1.types import workflows + +from .transports.base import DEFAULT_CLIENT_INFO, WorkflowsTransport from .transports.grpc import WorkflowsGrpcTransport from .transports.grpc_asyncio import WorkflowsGrpcAsyncIOTransport @@ -60,7 +73,7 @@ class WorkflowsClientMeta(type): def get_transport_class( cls, - label: str = None, + label: Optional[str] = None, ) -> Type[WorkflowsTransport]: """Returns an appropriate transport class. @@ -338,8 +351,8 @@ def __init__( self, *, credentials: Optional[ga_credentials.Credentials] = None, - transport: Union[str, WorkflowsTransport, None] = None, - client_options: Optional[client_options_lib.ClientOptions] = None, + transport: Optional[Union[str, WorkflowsTransport]] = None, + client_options: Optional[Union[client_options_lib.ClientOptions, dict]] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, ) -> None: """Instantiates the workflows client. @@ -353,7 +366,7 @@ def __init__( transport (Union[str, WorkflowsTransport]): The transport to use. If set to None, a transport is chosen automatically. - client_options (google.api_core.client_options.ClientOptions): Custom options for the + client_options (Optional[Union[google.api_core.client_options.ClientOptions, dict]]): Custom options for the client. It won't take effect if a ``transport`` instance is provided. (1) The ``api_endpoint`` property can be used to override the default endpoint provided by the client. GOOGLE_API_USE_MTLS_ENDPOINT @@ -383,6 +396,7 @@ def __init__( client_options = client_options_lib.from_dict(client_options) if client_options is None: client_options = client_options_lib.ClientOptions() + client_options = cast(client_options_lib.ClientOptions, client_options) api_endpoint, client_cert_source_func = self.get_mtls_endpoint_and_cert_source( client_options @@ -435,11 +449,11 @@ def __init__( def list_workflows( self, - request: Union[workflows.ListWorkflowsRequest, dict] = None, + request: Optional[Union[workflows.ListWorkflowsRequest, dict]] = None, *, - parent: str = None, + parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListWorkflowsPager: r"""Lists Workflows in a given project and location. @@ -555,11 +569,11 @@ def sample_list_workflows(): def get_workflow( self, - request: Union[workflows.GetWorkflowRequest, dict] = None, + request: Optional[Union[workflows.GetWorkflowRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> workflows.Workflow: r"""Gets details of a single Workflow. @@ -659,13 +673,13 @@ def sample_get_workflow(): def create_workflow( self, - request: Union[workflows.CreateWorkflowRequest, dict] = None, + request: Optional[Union[workflows.CreateWorkflowRequest, dict]] = None, *, - parent: str = None, - workflow: workflows.Workflow = None, - workflow_id: str = None, + parent: Optional[str] = None, + workflow: Optional[workflows.Workflow] = None, + workflow_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Creates a new workflow. If a workflow with the specified name @@ -813,11 +827,11 @@ def sample_create_workflow(): def delete_workflow( self, - request: Union[workflows.DeleteWorkflowRequest, dict] = None, + request: Optional[Union[workflows.DeleteWorkflowRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Deletes a workflow with the specified name. @@ -941,12 +955,12 @@ def sample_delete_workflow(): def update_workflow( self, - request: Union[workflows.UpdateWorkflowRequest, dict] = None, + request: Optional[Union[workflows.UpdateWorkflowRequest, dict]] = None, *, - workflow: workflows.Workflow = None, - update_mask: field_mask_pb2.FieldMask = None, + workflow: Optional[workflows.Workflow] = None, + update_mask: Optional[field_mask_pb2.FieldMask] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Updates an existing workflow. diff --git a/google/cloud/workflows_v1/services/workflows/pagers.py b/google/cloud/workflows_v1/services/workflows/pagers.py index 8917d48..8b726c7 100644 --- a/google/cloud/workflows_v1/services/workflows/pagers.py +++ b/google/cloud/workflows_v1/services/workflows/pagers.py @@ -18,10 +18,10 @@ AsyncIterator, Awaitable, Callable, + Iterator, + Optional, Sequence, Tuple, - Optional, - Iterator, ) from google.cloud.workflows_v1.types import workflows diff --git a/google/cloud/workflows_v1/services/workflows/transports/__init__.py b/google/cloud/workflows_v1/services/workflows/transports/__init__.py index 189d352..3508736 100644 --- a/google/cloud/workflows_v1/services/workflows/transports/__init__.py +++ b/google/cloud/workflows_v1/services/workflows/transports/__init__.py @@ -20,7 +20,6 @@ from .grpc import WorkflowsGrpcTransport from .grpc_asyncio import WorkflowsGrpcAsyncIOTransport - # Compile a registry of transports. _transport_registry = OrderedDict() # type: Dict[str, Type[WorkflowsTransport]] _transport_registry["grpc"] = WorkflowsGrpcTransport diff --git a/google/cloud/workflows_v1/services/workflows/transports/base.py b/google/cloud/workflows_v1/services/workflows/transports/base.py index f8c308e..574f54e 100644 --- a/google/cloud/workflows_v1/services/workflows/transports/base.py +++ b/google/cloud/workflows_v1/services/workflows/transports/base.py @@ -15,19 +15,18 @@ # import abc from typing import Awaitable, Callable, Dict, Optional, Sequence, Union -import pkg_resources -import google.auth # type: ignore import google.api_core from google.api_core import exceptions as core_exceptions -from google.api_core import gapic_v1 +from google.api_core import gapic_v1, operations_v1 from google.api_core import retry as retries -from google.api_core import operations_v1 +import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore +from google.longrunning import operations_pb2 # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources from google.cloud.workflows_v1.types import workflows -from google.longrunning import operations_pb2 # type: ignore try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( @@ -50,7 +49,7 @@ def __init__( self, *, host: str = DEFAULT_HOST, - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, diff --git a/google/cloud/workflows_v1/services/workflows/transports/grpc.py b/google/cloud/workflows_v1/services/workflows/transports/grpc.py index 9b5ae61..fd2e91a 100644 --- a/google/cloud/workflows_v1/services/workflows/transports/grpc.py +++ b/google/cloud/workflows_v1/services/workflows/transports/grpc.py @@ -13,21 +13,19 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import warnings from typing import Callable, Dict, Optional, Sequence, Tuple, Union +import warnings -from google.api_core import grpc_helpers -from google.api_core import operations_v1 -from google.api_core import gapic_v1 +from google.api_core import gapic_v1, grpc_helpers, operations_v1 import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore - +from google.longrunning import operations_pb2 # type: ignore import grpc # type: ignore from google.cloud.workflows_v1.types import workflows -from google.longrunning import operations_pb2 # type: ignore -from .base import WorkflowsTransport, DEFAULT_CLIENT_INFO + +from .base import DEFAULT_CLIENT_INFO, WorkflowsTransport class WorkflowsGrpcTransport(WorkflowsTransport): @@ -51,14 +49,14 @@ def __init__( self, *, host: str = "workflows.googleapis.com", - credentials: ga_credentials.Credentials = None, - credentials_file: str = None, - scopes: Sequence[str] = None, - channel: grpc.Channel = None, - api_mtls_endpoint: str = None, - client_cert_source: Callable[[], Tuple[bytes, bytes]] = None, - ssl_channel_credentials: grpc.ChannelCredentials = None, - client_cert_source_for_mtls: Callable[[], Tuple[bytes, bytes]] = None, + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, + scopes: Optional[Sequence[str]] = None, + channel: Optional[grpc.Channel] = None, + api_mtls_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, quota_project_id: Optional[str] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, always_use_jwt_access: Optional[bool] = False, @@ -186,8 +184,8 @@ def __init__( def create_channel( cls, host: str = "workflows.googleapis.com", - credentials: ga_credentials.Credentials = None, - credentials_file: str = None, + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, **kwargs, diff --git a/google/cloud/workflows_v1/services/workflows/transports/grpc_asyncio.py b/google/cloud/workflows_v1/services/workflows/transports/grpc_asyncio.py index 91dd411..2c28bc1 100644 --- a/google/cloud/workflows_v1/services/workflows/transports/grpc_asyncio.py +++ b/google/cloud/workflows_v1/services/workflows/transports/grpc_asyncio.py @@ -13,21 +13,19 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import warnings from typing import Awaitable, Callable, Dict, Optional, Sequence, Tuple, Union +import warnings -from google.api_core import gapic_v1 -from google.api_core import grpc_helpers_async -from google.api_core import operations_v1 +from google.api_core import gapic_v1, grpc_helpers_async, operations_v1 from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore - +from google.longrunning import operations_pb2 # type: ignore import grpc # type: ignore from grpc.experimental import aio # type: ignore from google.cloud.workflows_v1.types import workflows -from google.longrunning import operations_pb2 # type: ignore -from .base import WorkflowsTransport, DEFAULT_CLIENT_INFO + +from .base import DEFAULT_CLIENT_INFO, WorkflowsTransport from .grpc import WorkflowsGrpcTransport @@ -53,7 +51,7 @@ class WorkflowsGrpcAsyncIOTransport(WorkflowsTransport): def create_channel( cls, host: str = "workflows.googleapis.com", - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, @@ -96,15 +94,15 @@ def __init__( self, *, host: str = "workflows.googleapis.com", - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, - channel: aio.Channel = None, - api_mtls_endpoint: str = None, - client_cert_source: Callable[[], Tuple[bytes, bytes]] = None, - ssl_channel_credentials: grpc.ChannelCredentials = None, - client_cert_source_for_mtls: Callable[[], Tuple[bytes, bytes]] = None, - quota_project_id=None, + channel: Optional[aio.Channel] = None, + api_mtls_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + quota_project_id: Optional[str] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, always_use_jwt_access: Optional[bool] = False, api_audience: Optional[str] = None, diff --git a/google/cloud/workflows_v1/types/workflows.py b/google/cloud/workflows_v1/types/workflows.py index 888bba6..92cb9d5 100644 --- a/google/cloud/workflows_v1/types/workflows.py +++ b/google/cloud/workflows_v1/types/workflows.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import proto # type: ignore +from typing import MutableMapping, MutableSequence from google.protobuf import field_mask_pb2 # type: ignore from google.protobuf import timestamp_pb2 # type: ignore - +import proto # type: ignore __protobuf__ = proto.module( package="google.cloud.workflows.v1", @@ -73,7 +73,7 @@ class Workflow(proto.Message): revision_create_time (google.protobuf.timestamp_pb2.Timestamp): Output only. The timestamp that the latest revision of the workflow was created. - labels (Mapping[str, str]): + labels (MutableMapping[str, str]): Labels associated with this workflow. Labels can contain at most 64 entries. Keys and values can be no longer than 63 characters and @@ -110,48 +110,48 @@ class State(proto.Enum): STATE_UNSPECIFIED = 0 ACTIVE = 1 - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) - description = proto.Field( + description: str = proto.Field( proto.STRING, number=2, ) - state = proto.Field( + state: State = proto.Field( proto.ENUM, number=3, enum=State, ) - revision_id = proto.Field( + revision_id: str = proto.Field( proto.STRING, number=4, ) - create_time = proto.Field( + create_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=5, message=timestamp_pb2.Timestamp, ) - update_time = proto.Field( + update_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=6, message=timestamp_pb2.Timestamp, ) - revision_create_time = proto.Field( + revision_create_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=7, message=timestamp_pb2.Timestamp, ) - labels = proto.MapField( + labels: MutableMapping[str, str] = proto.MapField( proto.STRING, proto.STRING, number=8, ) - service_account = proto.Field( + service_account: str = proto.Field( proto.STRING, number=9, ) - source_contents = proto.Field( + source_contents: str = proto.Field( proto.STRING, number=10, oneof="source_code", @@ -195,23 +195,23 @@ class ListWorkflowsRequest(proto.Message): in an unspecified order. """ - parent = proto.Field( + parent: str = proto.Field( proto.STRING, number=1, ) - page_size = proto.Field( + page_size: int = proto.Field( proto.INT32, number=2, ) - page_token = proto.Field( + page_token: str = proto.Field( proto.STRING, number=3, ) - filter = proto.Field( + filter: str = proto.Field( proto.STRING, number=4, ) - order_by = proto.Field( + order_by: str = proto.Field( proto.STRING, number=5, ) @@ -223,13 +223,13 @@ class ListWorkflowsResponse(proto.Message): method. Attributes: - workflows (Sequence[google.cloud.workflows_v1.types.Workflow]): + workflows (MutableSequence[google.cloud.workflows_v1.types.Workflow]): The workflows which match the request. next_page_token (str): A token, which can be sent as ``page_token`` to retrieve the next page. If this field is omitted, there are no subsequent pages. - unreachable (Sequence[str]): + unreachable (MutableSequence[str]): Unreachable resources. """ @@ -237,16 +237,16 @@ class ListWorkflowsResponse(proto.Message): def raw_page(self): return self - workflows = proto.RepeatedField( + workflows: MutableSequence["Workflow"] = proto.RepeatedField( proto.MESSAGE, number=1, message="Workflow", ) - next_page_token = proto.Field( + next_page_token: str = proto.Field( proto.STRING, number=2, ) - unreachable = proto.RepeatedField( + unreachable: MutableSequence[str] = proto.RepeatedField( proto.STRING, number=3, ) @@ -264,7 +264,7 @@ class GetWorkflowRequest(proto.Message): projects/{project}/locations/{location}/workflows/{workflow} """ - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) @@ -294,16 +294,16 @@ class CreateWorkflowRequest(proto.Message): - Must be unique within the customer project and location. """ - parent = proto.Field( + parent: str = proto.Field( proto.STRING, number=1, ) - workflow = proto.Field( + workflow: "Workflow" = proto.Field( proto.MESSAGE, number=2, message="Workflow", ) - workflow_id = proto.Field( + workflow_id: str = proto.Field( proto.STRING, number=3, ) @@ -321,7 +321,7 @@ class DeleteWorkflowRequest(proto.Message): projects/{project}/locations/{location}/workflows/{workflow} """ - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) @@ -340,12 +340,12 @@ class UpdateWorkflowRequest(proto.Message): the entire workflow will be updated. """ - workflow = proto.Field( + workflow: "Workflow" = proto.Field( proto.MESSAGE, number=1, message="Workflow", ) - update_mask = proto.Field( + update_mask: field_mask_pb2.FieldMask = proto.Field( proto.MESSAGE, number=2, message=field_mask_pb2.FieldMask, @@ -369,25 +369,25 @@ class OperationMetadata(proto.Message): API version used to start the operation. """ - create_time = proto.Field( + create_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=1, message=timestamp_pb2.Timestamp, ) - end_time = proto.Field( + end_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=2, message=timestamp_pb2.Timestamp, ) - target = proto.Field( + target: str = proto.Field( proto.STRING, number=3, ) - verb = proto.Field( + verb: str = proto.Field( proto.STRING, number=4, ) - api_version = proto.Field( + api_version: str = proto.Field( proto.STRING, number=5, ) diff --git a/google/cloud/workflows_v1beta/__init__.py b/google/cloud/workflows_v1beta/__init__.py index 44a9fc1..f3c84b7 100644 --- a/google/cloud/workflows_v1beta/__init__.py +++ b/google/cloud/workflows_v1beta/__init__.py @@ -13,18 +13,22 @@ # See the License for the specific language governing permissions and # limitations under the License. # +from google.cloud.workflows import gapic_version as package_version -from .services.workflows import WorkflowsClient -from .services.workflows import WorkflowsAsyncClient +__version__ = package_version.__version__ -from .types.workflows import CreateWorkflowRequest -from .types.workflows import DeleteWorkflowRequest -from .types.workflows import GetWorkflowRequest -from .types.workflows import ListWorkflowsRequest -from .types.workflows import ListWorkflowsResponse -from .types.workflows import OperationMetadata -from .types.workflows import UpdateWorkflowRequest -from .types.workflows import Workflow + +from .services.workflows import WorkflowsAsyncClient, WorkflowsClient +from .types.workflows import ( + CreateWorkflowRequest, + DeleteWorkflowRequest, + GetWorkflowRequest, + ListWorkflowsRequest, + ListWorkflowsResponse, + OperationMetadata, + UpdateWorkflowRequest, + Workflow, +) __all__ = ( "WorkflowsAsyncClient", diff --git a/google/cloud/workflows_v1beta/services/workflows/__init__.py b/google/cloud/workflows_v1beta/services/workflows/__init__.py index 93a7c47..dfc5625 100644 --- a/google/cloud/workflows_v1beta/services/workflows/__init__.py +++ b/google/cloud/workflows_v1beta/services/workflows/__init__.py @@ -13,8 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # -from .client import WorkflowsClient from .async_client import WorkflowsAsyncClient +from .client import WorkflowsClient __all__ = ( "WorkflowsClient", diff --git a/google/cloud/workflows_v1beta/services/workflows/async_client.py b/google/cloud/workflows_v1beta/services/workflows/async_client.py index 9cccb4c..6505d3e 100644 --- a/google/cloud/workflows_v1beta/services/workflows/async_client.py +++ b/google/cloud/workflows_v1beta/services/workflows/async_client.py @@ -16,15 +16,25 @@ from collections import OrderedDict import functools import re -from typing import Dict, Mapping, Optional, Sequence, Tuple, Type, Union -import pkg_resources +from typing import ( + Dict, + Mapping, + MutableMapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, +) -from google.api_core.client_options import ClientOptions from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries +from google.api_core.client_options import ClientOptions from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -33,14 +43,16 @@ from google.api_core import operation # type: ignore from google.api_core import operation_async # type: ignore -from google.cloud.workflows_v1beta.services.workflows import pagers -from google.cloud.workflows_v1beta.types import workflows from google.protobuf import empty_pb2 # type: ignore from google.protobuf import field_mask_pb2 # type: ignore from google.protobuf import timestamp_pb2 # type: ignore -from .transports.base import WorkflowsTransport, DEFAULT_CLIENT_INFO -from .transports.grpc_asyncio import WorkflowsGrpcAsyncIOTransport + +from google.cloud.workflows_v1beta.services.workflows import pagers +from google.cloud.workflows_v1beta.types import workflows + from .client import WorkflowsClient +from .transports.base import DEFAULT_CLIENT_INFO, WorkflowsTransport +from .transports.grpc_asyncio import WorkflowsGrpcAsyncIOTransport class WorkflowsAsyncClient: @@ -160,9 +172,9 @@ def transport(self) -> WorkflowsTransport: def __init__( self, *, - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, transport: Union[str, WorkflowsTransport] = "grpc_asyncio", - client_options: ClientOptions = None, + client_options: Optional[ClientOptions] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, ) -> None: """Instantiates the workflows client. @@ -206,11 +218,11 @@ def __init__( async def list_workflows( self, - request: Union[workflows.ListWorkflowsRequest, dict] = None, + request: Optional[Union[workflows.ListWorkflowsRequest, dict]] = None, *, - parent: str = None, + parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListWorkflowsAsyncPager: r"""Lists Workflows in a given project and location. @@ -244,7 +256,7 @@ async def sample_list_workflows(): print(response) Args: - request (Union[google.cloud.workflows_v1beta.types.ListWorkflowsRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1beta.types.ListWorkflowsRequest, dict]]): The request object. Request for the [ListWorkflows][google.cloud.workflows.v1beta.Workflows.ListWorkflows] method. @@ -326,11 +338,11 @@ async def sample_list_workflows(): async def get_workflow( self, - request: Union[workflows.GetWorkflowRequest, dict] = None, + request: Optional[Union[workflows.GetWorkflowRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> workflows.Workflow: r"""Gets details of a single Workflow. @@ -362,7 +374,7 @@ async def sample_get_workflow(): print(response) Args: - request (Union[google.cloud.workflows_v1beta.types.GetWorkflowRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1beta.types.GetWorkflowRequest, dict]]): The request object. Request for the [GetWorkflow][google.cloud.workflows.v1beta.Workflows.GetWorkflow] method. @@ -430,13 +442,13 @@ async def sample_get_workflow(): async def create_workflow( self, - request: Union[workflows.CreateWorkflowRequest, dict] = None, + request: Optional[Union[workflows.CreateWorkflowRequest, dict]] = None, *, - parent: str = None, - workflow: workflows.Workflow = None, - workflow_id: str = None, + parent: Optional[str] = None, + workflow: Optional[workflows.Workflow] = None, + workflow_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Creates a new workflow. If a workflow with the specified name @@ -480,7 +492,7 @@ async def sample_create_workflow(): print(response) Args: - request (Union[google.cloud.workflows_v1beta.types.CreateWorkflowRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1beta.types.CreateWorkflowRequest, dict]]): The request object. Request for the [CreateWorkflow][google.cloud.workflows.v1beta.Workflows.CreateWorkflow] method. @@ -584,11 +596,11 @@ async def sample_create_workflow(): async def delete_workflow( self, - request: Union[workflows.DeleteWorkflowRequest, dict] = None, + request: Optional[Union[workflows.DeleteWorkflowRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Deletes a workflow with the specified name. @@ -626,7 +638,7 @@ async def sample_delete_workflow(): print(response) Args: - request (Union[google.cloud.workflows_v1beta.types.DeleteWorkflowRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1beta.types.DeleteWorkflowRequest, dict]]): The request object. Request for the [DeleteWorkflow][google.cloud.workflows.v1beta.Workflows.DeleteWorkflow] method. @@ -712,12 +724,12 @@ async def sample_delete_workflow(): async def update_workflow( self, - request: Union[workflows.UpdateWorkflowRequest, dict] = None, + request: Optional[Union[workflows.UpdateWorkflowRequest, dict]] = None, *, - workflow: workflows.Workflow = None, - update_mask: field_mask_pb2.FieldMask = None, + workflow: Optional[workflows.Workflow] = None, + update_mask: Optional[field_mask_pb2.FieldMask] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Updates an existing workflow. @@ -761,7 +773,7 @@ async def sample_update_workflow(): print(response) Args: - request (Union[google.cloud.workflows_v1beta.types.UpdateWorkflowRequest, dict]): + request (Optional[Union[google.cloud.workflows_v1beta.types.UpdateWorkflowRequest, dict]]): The request object. Request for the [UpdateWorkflow][google.cloud.workflows.v1beta.Workflows.UpdateWorkflow] method. diff --git a/google/cloud/workflows_v1beta/services/workflows/client.py b/google/cloud/workflows_v1beta/services/workflows/client.py index 5128767..5537779 100644 --- a/google/cloud/workflows_v1beta/services/workflows/client.py +++ b/google/cloud/workflows_v1beta/services/workflows/client.py @@ -16,18 +16,29 @@ from collections import OrderedDict import os import re -from typing import Dict, Mapping, Optional, Sequence, Tuple, Type, Union -import pkg_resources +from typing import ( + Dict, + Mapping, + MutableMapping, + MutableSequence, + Optional, + Sequence, + Tuple, + Type, + Union, + cast, +) from google.api_core import client_options as client_options_lib from google.api_core import exceptions as core_exceptions from google.api_core import gapic_v1 from google.api_core import retry as retries from google.auth import credentials as ga_credentials # type: ignore +from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.auth.transport import mtls # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore -from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -36,12 +47,14 @@ from google.api_core import operation # type: ignore from google.api_core import operation_async # type: ignore -from google.cloud.workflows_v1beta.services.workflows import pagers -from google.cloud.workflows_v1beta.types import workflows from google.protobuf import empty_pb2 # type: ignore from google.protobuf import field_mask_pb2 # type: ignore from google.protobuf import timestamp_pb2 # type: ignore -from .transports.base import WorkflowsTransport, DEFAULT_CLIENT_INFO + +from google.cloud.workflows_v1beta.services.workflows import pagers +from google.cloud.workflows_v1beta.types import workflows + +from .transports.base import DEFAULT_CLIENT_INFO, WorkflowsTransport from .transports.grpc import WorkflowsGrpcTransport from .transports.grpc_asyncio import WorkflowsGrpcAsyncIOTransport @@ -60,7 +73,7 @@ class WorkflowsClientMeta(type): def get_transport_class( cls, - label: str = None, + label: Optional[str] = None, ) -> Type[WorkflowsTransport]: """Returns an appropriate transport class. @@ -338,8 +351,8 @@ def __init__( self, *, credentials: Optional[ga_credentials.Credentials] = None, - transport: Union[str, WorkflowsTransport, None] = None, - client_options: Optional[client_options_lib.ClientOptions] = None, + transport: Optional[Union[str, WorkflowsTransport]] = None, + client_options: Optional[Union[client_options_lib.ClientOptions, dict]] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, ) -> None: """Instantiates the workflows client. @@ -353,7 +366,7 @@ def __init__( transport (Union[str, WorkflowsTransport]): The transport to use. If set to None, a transport is chosen automatically. - client_options (google.api_core.client_options.ClientOptions): Custom options for the + client_options (Optional[Union[google.api_core.client_options.ClientOptions, dict]]): Custom options for the client. It won't take effect if a ``transport`` instance is provided. (1) The ``api_endpoint`` property can be used to override the default endpoint provided by the client. GOOGLE_API_USE_MTLS_ENDPOINT @@ -383,6 +396,7 @@ def __init__( client_options = client_options_lib.from_dict(client_options) if client_options is None: client_options = client_options_lib.ClientOptions() + client_options = cast(client_options_lib.ClientOptions, client_options) api_endpoint, client_cert_source_func = self.get_mtls_endpoint_and_cert_source( client_options @@ -435,11 +449,11 @@ def __init__( def list_workflows( self, - request: Union[workflows.ListWorkflowsRequest, dict] = None, + request: Optional[Union[workflows.ListWorkflowsRequest, dict]] = None, *, - parent: str = None, + parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListWorkflowsPager: r"""Lists Workflows in a given project and location. @@ -555,11 +569,11 @@ def sample_list_workflows(): def get_workflow( self, - request: Union[workflows.GetWorkflowRequest, dict] = None, + request: Optional[Union[workflows.GetWorkflowRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> workflows.Workflow: r"""Gets details of a single Workflow. @@ -659,13 +673,13 @@ def sample_get_workflow(): def create_workflow( self, - request: Union[workflows.CreateWorkflowRequest, dict] = None, + request: Optional[Union[workflows.CreateWorkflowRequest, dict]] = None, *, - parent: str = None, - workflow: workflows.Workflow = None, - workflow_id: str = None, + parent: Optional[str] = None, + workflow: Optional[workflows.Workflow] = None, + workflow_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Creates a new workflow. If a workflow with the specified name @@ -813,11 +827,11 @@ def sample_create_workflow(): def delete_workflow( self, - request: Union[workflows.DeleteWorkflowRequest, dict] = None, + request: Optional[Union[workflows.DeleteWorkflowRequest, dict]] = None, *, - name: str = None, + name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Deletes a workflow with the specified name. @@ -941,12 +955,12 @@ def sample_delete_workflow(): def update_workflow( self, - request: Union[workflows.UpdateWorkflowRequest, dict] = None, + request: Optional[Union[workflows.UpdateWorkflowRequest, dict]] = None, *, - workflow: workflows.Workflow = None, - update_mask: field_mask_pb2.FieldMask = None, + workflow: Optional[workflows.Workflow] = None, + update_mask: Optional[field_mask_pb2.FieldMask] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: float = None, + timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Updates an existing workflow. diff --git a/google/cloud/workflows_v1beta/services/workflows/pagers.py b/google/cloud/workflows_v1beta/services/workflows/pagers.py index df59d04..a4fd9b2 100644 --- a/google/cloud/workflows_v1beta/services/workflows/pagers.py +++ b/google/cloud/workflows_v1beta/services/workflows/pagers.py @@ -18,10 +18,10 @@ AsyncIterator, Awaitable, Callable, + Iterator, + Optional, Sequence, Tuple, - Optional, - Iterator, ) from google.cloud.workflows_v1beta.types import workflows diff --git a/google/cloud/workflows_v1beta/services/workflows/transports/__init__.py b/google/cloud/workflows_v1beta/services/workflows/transports/__init__.py index 189d352..3508736 100644 --- a/google/cloud/workflows_v1beta/services/workflows/transports/__init__.py +++ b/google/cloud/workflows_v1beta/services/workflows/transports/__init__.py @@ -20,7 +20,6 @@ from .grpc import WorkflowsGrpcTransport from .grpc_asyncio import WorkflowsGrpcAsyncIOTransport - # Compile a registry of transports. _transport_registry = OrderedDict() # type: Dict[str, Type[WorkflowsTransport]] _transport_registry["grpc"] = WorkflowsGrpcTransport diff --git a/google/cloud/workflows_v1beta/services/workflows/transports/base.py b/google/cloud/workflows_v1beta/services/workflows/transports/base.py index a792d93..a9e2f1d 100644 --- a/google/cloud/workflows_v1beta/services/workflows/transports/base.py +++ b/google/cloud/workflows_v1beta/services/workflows/transports/base.py @@ -15,19 +15,18 @@ # import abc from typing import Awaitable, Callable, Dict, Optional, Sequence, Union -import pkg_resources -import google.auth # type: ignore import google.api_core from google.api_core import exceptions as core_exceptions -from google.api_core import gapic_v1 +from google.api_core import gapic_v1, operations_v1 from google.api_core import retry as retries -from google.api_core import operations_v1 +import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore +from google.longrunning import operations_pb2 # type: ignore from google.oauth2 import service_account # type: ignore +import pkg_resources from google.cloud.workflows_v1beta.types import workflows -from google.longrunning import operations_pb2 # type: ignore try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( @@ -50,7 +49,7 @@ def __init__( self, *, host: str = DEFAULT_HOST, - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, diff --git a/google/cloud/workflows_v1beta/services/workflows/transports/grpc.py b/google/cloud/workflows_v1beta/services/workflows/transports/grpc.py index 6108e1a..59b1d01 100644 --- a/google/cloud/workflows_v1beta/services/workflows/transports/grpc.py +++ b/google/cloud/workflows_v1beta/services/workflows/transports/grpc.py @@ -13,21 +13,19 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import warnings from typing import Callable, Dict, Optional, Sequence, Tuple, Union +import warnings -from google.api_core import grpc_helpers -from google.api_core import operations_v1 -from google.api_core import gapic_v1 +from google.api_core import gapic_v1, grpc_helpers, operations_v1 import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore - +from google.longrunning import operations_pb2 # type: ignore import grpc # type: ignore from google.cloud.workflows_v1beta.types import workflows -from google.longrunning import operations_pb2 # type: ignore -from .base import WorkflowsTransport, DEFAULT_CLIENT_INFO + +from .base import DEFAULT_CLIENT_INFO, WorkflowsTransport class WorkflowsGrpcTransport(WorkflowsTransport): @@ -51,14 +49,14 @@ def __init__( self, *, host: str = "workflows.googleapis.com", - credentials: ga_credentials.Credentials = None, - credentials_file: str = None, - scopes: Sequence[str] = None, - channel: grpc.Channel = None, - api_mtls_endpoint: str = None, - client_cert_source: Callable[[], Tuple[bytes, bytes]] = None, - ssl_channel_credentials: grpc.ChannelCredentials = None, - client_cert_source_for_mtls: Callable[[], Tuple[bytes, bytes]] = None, + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, + scopes: Optional[Sequence[str]] = None, + channel: Optional[grpc.Channel] = None, + api_mtls_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, quota_project_id: Optional[str] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, always_use_jwt_access: Optional[bool] = False, @@ -186,8 +184,8 @@ def __init__( def create_channel( cls, host: str = "workflows.googleapis.com", - credentials: ga_credentials.Credentials = None, - credentials_file: str = None, + credentials: Optional[ga_credentials.Credentials] = None, + credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, **kwargs, diff --git a/google/cloud/workflows_v1beta/services/workflows/transports/grpc_asyncio.py b/google/cloud/workflows_v1beta/services/workflows/transports/grpc_asyncio.py index dffd53a..09aa312 100644 --- a/google/cloud/workflows_v1beta/services/workflows/transports/grpc_asyncio.py +++ b/google/cloud/workflows_v1beta/services/workflows/transports/grpc_asyncio.py @@ -13,21 +13,19 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import warnings from typing import Awaitable, Callable, Dict, Optional, Sequence, Tuple, Union +import warnings -from google.api_core import gapic_v1 -from google.api_core import grpc_helpers_async -from google.api_core import operations_v1 +from google.api_core import gapic_v1, grpc_helpers_async, operations_v1 from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore - +from google.longrunning import operations_pb2 # type: ignore import grpc # type: ignore from grpc.experimental import aio # type: ignore from google.cloud.workflows_v1beta.types import workflows -from google.longrunning import operations_pb2 # type: ignore -from .base import WorkflowsTransport, DEFAULT_CLIENT_INFO + +from .base import DEFAULT_CLIENT_INFO, WorkflowsTransport from .grpc import WorkflowsGrpcTransport @@ -53,7 +51,7 @@ class WorkflowsGrpcAsyncIOTransport(WorkflowsTransport): def create_channel( cls, host: str = "workflows.googleapis.com", - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, quota_project_id: Optional[str] = None, @@ -96,15 +94,15 @@ def __init__( self, *, host: str = "workflows.googleapis.com", - credentials: ga_credentials.Credentials = None, + credentials: Optional[ga_credentials.Credentials] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, - channel: aio.Channel = None, - api_mtls_endpoint: str = None, - client_cert_source: Callable[[], Tuple[bytes, bytes]] = None, - ssl_channel_credentials: grpc.ChannelCredentials = None, - client_cert_source_for_mtls: Callable[[], Tuple[bytes, bytes]] = None, - quota_project_id=None, + channel: Optional[aio.Channel] = None, + api_mtls_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None, + client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + quota_project_id: Optional[str] = None, client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO, always_use_jwt_access: Optional[bool] = False, api_audience: Optional[str] = None, diff --git a/google/cloud/workflows_v1beta/types/workflows.py b/google/cloud/workflows_v1beta/types/workflows.py index 7d1d59d..385b839 100644 --- a/google/cloud/workflows_v1beta/types/workflows.py +++ b/google/cloud/workflows_v1beta/types/workflows.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import proto # type: ignore +from typing import MutableMapping, MutableSequence from google.protobuf import field_mask_pb2 # type: ignore from google.protobuf import timestamp_pb2 # type: ignore - +import proto # type: ignore __protobuf__ = proto.module( package="google.cloud.workflows.v1beta", @@ -70,7 +70,7 @@ class Workflow(proto.Message): revision_create_time (google.protobuf.timestamp_pb2.Timestamp): Output only. The timestamp that the latest revision of the workflow was created. - labels (Mapping[str, str]): + labels (MutableMapping[str, str]): Labels associated with this workflow. Labels can contain at most 64 entries. Keys and values can be no longer than 63 characters and @@ -107,48 +107,48 @@ class State(proto.Enum): STATE_UNSPECIFIED = 0 ACTIVE = 1 - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) - description = proto.Field( + description: str = proto.Field( proto.STRING, number=2, ) - state = proto.Field( + state: State = proto.Field( proto.ENUM, number=3, enum=State, ) - revision_id = proto.Field( + revision_id: str = proto.Field( proto.STRING, number=4, ) - create_time = proto.Field( + create_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=5, message=timestamp_pb2.Timestamp, ) - update_time = proto.Field( + update_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=6, message=timestamp_pb2.Timestamp, ) - revision_create_time = proto.Field( + revision_create_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=7, message=timestamp_pb2.Timestamp, ) - labels = proto.MapField( + labels: MutableMapping[str, str] = proto.MapField( proto.STRING, proto.STRING, number=8, ) - service_account = proto.Field( + service_account: str = proto.Field( proto.STRING, number=9, ) - source_contents = proto.Field( + source_contents: str = proto.Field( proto.STRING, number=10, oneof="source_code", @@ -192,23 +192,23 @@ class ListWorkflowsRequest(proto.Message): in an unspecified order. """ - parent = proto.Field( + parent: str = proto.Field( proto.STRING, number=1, ) - page_size = proto.Field( + page_size: int = proto.Field( proto.INT32, number=2, ) - page_token = proto.Field( + page_token: str = proto.Field( proto.STRING, number=3, ) - filter = proto.Field( + filter: str = proto.Field( proto.STRING, number=4, ) - order_by = proto.Field( + order_by: str = proto.Field( proto.STRING, number=5, ) @@ -220,13 +220,13 @@ class ListWorkflowsResponse(proto.Message): method. Attributes: - workflows (Sequence[google.cloud.workflows_v1beta.types.Workflow]): + workflows (MutableSequence[google.cloud.workflows_v1beta.types.Workflow]): The workflows which match the request. next_page_token (str): A token, which can be sent as ``page_token`` to retrieve the next page. If this field is omitted, there are no subsequent pages. - unreachable (Sequence[str]): + unreachable (MutableSequence[str]): Unreachable resources. """ @@ -234,16 +234,16 @@ class ListWorkflowsResponse(proto.Message): def raw_page(self): return self - workflows = proto.RepeatedField( + workflows: MutableSequence["Workflow"] = proto.RepeatedField( proto.MESSAGE, number=1, message="Workflow", ) - next_page_token = proto.Field( + next_page_token: str = proto.Field( proto.STRING, number=2, ) - unreachable = proto.RepeatedField( + unreachable: MutableSequence[str] = proto.RepeatedField( proto.STRING, number=3, ) @@ -261,7 +261,7 @@ class GetWorkflowRequest(proto.Message): projects/{project}/locations/{location}/workflows/{workflow} """ - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) @@ -291,16 +291,16 @@ class CreateWorkflowRequest(proto.Message): - Must be unique within the customer project and location. """ - parent = proto.Field( + parent: str = proto.Field( proto.STRING, number=1, ) - workflow = proto.Field( + workflow: "Workflow" = proto.Field( proto.MESSAGE, number=2, message="Workflow", ) - workflow_id = proto.Field( + workflow_id: str = proto.Field( proto.STRING, number=3, ) @@ -318,7 +318,7 @@ class DeleteWorkflowRequest(proto.Message): projects/{project}/locations/{location}/workflows/{workflow} """ - name = proto.Field( + name: str = proto.Field( proto.STRING, number=1, ) @@ -337,12 +337,12 @@ class UpdateWorkflowRequest(proto.Message): the entire workflow will be updated. """ - workflow = proto.Field( + workflow: "Workflow" = proto.Field( proto.MESSAGE, number=1, message="Workflow", ) - update_mask = proto.Field( + update_mask: field_mask_pb2.FieldMask = proto.Field( proto.MESSAGE, number=2, message=field_mask_pb2.FieldMask, @@ -366,25 +366,25 @@ class OperationMetadata(proto.Message): API version used to start the operation. """ - create_time = proto.Field( + create_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=1, message=timestamp_pb2.Timestamp, ) - end_time = proto.Field( + end_time: timestamp_pb2.Timestamp = proto.Field( proto.MESSAGE, number=2, message=timestamp_pb2.Timestamp, ) - target = proto.Field( + target: str = proto.Field( proto.STRING, number=3, ) - verb = proto.Field( + verb: str = proto.Field( proto.STRING, number=4, ) - api_version = proto.Field( + api_version: str = proto.Field( proto.STRING, number=5, ) diff --git a/noxfile.py b/noxfile.py index d752b54..d8440c0 100644 --- a/noxfile.py +++ b/noxfile.py @@ -17,6 +17,7 @@ # Generated by synthtool. DO NOT EDIT! from __future__ import absolute_import + import os import pathlib import re diff --git a/owlbot.py b/owlbot.py index 4e91774..38b165d 100644 --- a/owlbot.py +++ b/owlbot.py @@ -1,4 +1,4 @@ -# Copyright 2020 Google LLC +# Copyright 2022 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -12,15 +12,25 @@ # See the License for the specific language governing permissions and # limitations under the License. -"""This script is used to synthesize generated parts of this library.""" -from pathlib import Path +import json from typing import List, Optional +from pathlib import Path +import shutil import synthtool as s import synthtool.gcp as gcp from synthtool.languages import python -common = gcp.CommonTemplates() +# ---------------------------------------------------------------------------- +# Copy the generated client from the owl-bot staging directory +# ---------------------------------------------------------------------------- + +clean_up_generated_samples = True + +# Load the default version defined in .repo-metadata.json. +default_version = json.load(open(".repo-metadata.json", "rt")).get( + "default_version" +) # This is a customized version of the s.get_staging_dirs() function from synthtool to # cater for copying 2 different folders from googleapis-gen @@ -62,51 +72,36 @@ def get_staging_dirs( else: return [] -# This library ships clients for two different APIs, -# Workflows and Workflows Executions -workflows_default_version = "v1" -workflows_executions_default_version = "v1" -for library in get_staging_dirs(workflows_executions_default_version, "executions"): +for library in get_staging_dirs(default_version, "executions"): # Make sure this library is named 'google-cloud-workflows' s.replace( - library / "google/**/*.py", "google-cloud-workflows-executions", "google-cloud-workflow" - ) - - s.move( - library, - excludes=[ - "setup.py", - "README.rst", - "docs/index.rst", - f"scripts/fixup_executions_{library.name}_keywords.py", - ], + library / "google/**/*.py", "google-cloud-workflows-executions", "google-cloud-workflows" ) + s.move([library], excludes=["**/gapic_version.py", "docs/index.rst"]) # move workflows after executions, since we want to use "workflows" for the name -for library in get_staging_dirs(workflows_default_version, "workflows"): - s.move( - library, - excludes=[ - "setup.py", - "README.rst", - "docs/index.rst", - f"scripts/fixup_workflows_{library.name}_keywords.py", - ], - ) +for library in get_staging_dirs(default_version, "workflows"): + if clean_up_generated_samples: + shutil.rmtree("samples/generated_samples", ignore_errors=True) + clean_up_generated_samples = False + s.move([library], excludes=["**/gapic_version.py", "docs/index.rst"]) s.remove_staging_dirs() # ---------------------------------------------------------------------------- # Add templated files # ---------------------------------------------------------------------------- -templated_files = common.py_library(cov_level=100, microgenerator=True) -s.move( - templated_files, excludes=[".coveragerc"] -) # the microgenerator has a good coveragerc file +templated_files = gcp.CommonTemplates().py_library( + cov_level=100, + microgenerator=True, + versions=gcp.common.detect_versions(path="./google", default_first=True), +) +s.move(templated_files, excludes=[".coveragerc", ".github/release-please.yml", "docs/index.rst"]) python.py_samples(skip_readmes=True) -python.configure_previous_major_version_branches() -s.shell.run(["nox", "-s", "blacken"], hide_output=False) +# run format session for all directories which have a noxfile +for noxfile in Path(".").glob("**/noxfile.py"): + s.shell.run(["nox", "-s", "format"], cwd=noxfile.parent, hide_output=False) diff --git a/release-please-config.json b/release-please-config.json new file mode 100644 index 0000000..2cbf984 --- /dev/null +++ b/release-please-config.json @@ -0,0 +1,29 @@ +{ + "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json", + "packages": { + ".": { + "release-type": "python", + "extra-files": [ + "google/cloud/workflows/executions/gapic_version.py", + "google/cloud/workflows/gapic_version.py", + { + "type": "json", + "path": "samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json", + "jsonpath": "$.clientLibrary.version" + }, + { + "type": "json", + "path": "samples/generated_samples/snippet_metadata_google.cloud.workflows.v1.json", + "jsonpath": "$.clientLibrary.version" + } + ] + } + }, + "release-type": "python", + "plugins": [ + { + "type": "sentence-case" + } + ], + "initial-version": "0.1.0" +} diff --git a/samples/generated_samples/snippet_metadata_executions_v1.json b/samples/generated_samples/snippet_metadata_executions_v1.json deleted file mode 100644 index fa22665..0000000 --- a/samples/generated_samples/snippet_metadata_executions_v1.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "clientLibrary": { - "apis": [ - { - "id": "google.cloud.workflows.executions.v1", - "version": "v1" - } - ], - "language": "PYTHON", - "name": "google-cloud-workflows-executions" - }, - "snippets": [ - { - "canonical": true, - "clientMethod": { - "async": true, - "client": { - "fullName": "google.cloud.workflows.executions_v1.ExecutionsAsyncClient", - "shortName": "ExecutionsAsyncClient" - }, - "fullName": "google.cloud.workflows.executions_v1.ExecutionsAsyncClient.cancel_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1.Executions.CancelExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1.Executions", - "shortName": "Executions" - }, - "shortName": "CancelExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1.types.CancelExecutionRequest" - }, - { - "name": "name", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1.types.Execution", - "shortName": "cancel_execution" - }, - "description": "Sample for CancelExecution", - "file": "workflowexecutions_v1_generated_executions_cancel_execution_async.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1_generated_Executions_CancelExecution_async", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1_generated_executions_cancel_execution_async.py" - }, - { - "canonical": true, - "clientMethod": { - "client": { - "fullName": "google.cloud.workflows.executions_v1.ExecutionsClient", - "shortName": "ExecutionsClient" - }, - "fullName": "google.cloud.workflows.executions_v1.ExecutionsClient.cancel_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1.Executions.CancelExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1.Executions", - "shortName": "Executions" - }, - "shortName": "CancelExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1.types.CancelExecutionRequest" - }, - { - "name": "name", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1.types.Execution", - "shortName": "cancel_execution" - }, - "description": "Sample for CancelExecution", - "file": "workflowexecutions_v1_generated_executions_cancel_execution_sync.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1_generated_Executions_CancelExecution_sync", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1_generated_executions_cancel_execution_sync.py" - }, - { - "canonical": true, - "clientMethod": { - "async": true, - "client": { - "fullName": "google.cloud.workflows.executions_v1.ExecutionsAsyncClient", - "shortName": "ExecutionsAsyncClient" - }, - "fullName": "google.cloud.workflows.executions_v1.ExecutionsAsyncClient.create_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1.Executions.CreateExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1.Executions", - "shortName": "Executions" - }, - "shortName": "CreateExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1.types.CreateExecutionRequest" - }, - { - "name": "parent", - "type": "str" - }, - { - "name": "execution", - "type": "google.cloud.workflows.executions_v1.types.Execution" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1.types.Execution", - "shortName": "create_execution" - }, - "description": "Sample for CreateExecution", - "file": "workflowexecutions_v1_generated_executions_create_execution_async.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1_generated_Executions_CreateExecution_async", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1_generated_executions_create_execution_async.py" - }, - { - "canonical": true, - "clientMethod": { - "client": { - "fullName": "google.cloud.workflows.executions_v1.ExecutionsClient", - "shortName": "ExecutionsClient" - }, - "fullName": "google.cloud.workflows.executions_v1.ExecutionsClient.create_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1.Executions.CreateExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1.Executions", - "shortName": "Executions" - }, - "shortName": "CreateExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1.types.CreateExecutionRequest" - }, - { - "name": "parent", - "type": "str" - }, - { - "name": "execution", - "type": "google.cloud.workflows.executions_v1.types.Execution" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1.types.Execution", - "shortName": "create_execution" - }, - "description": "Sample for CreateExecution", - "file": "workflowexecutions_v1_generated_executions_create_execution_sync.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1_generated_Executions_CreateExecution_sync", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1_generated_executions_create_execution_sync.py" - }, - { - "canonical": true, - "clientMethod": { - "async": true, - "client": { - "fullName": "google.cloud.workflows.executions_v1.ExecutionsAsyncClient", - "shortName": "ExecutionsAsyncClient" - }, - "fullName": "google.cloud.workflows.executions_v1.ExecutionsAsyncClient.get_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1.Executions.GetExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1.Executions", - "shortName": "Executions" - }, - "shortName": "GetExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1.types.GetExecutionRequest" - }, - { - "name": "name", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1.types.Execution", - "shortName": "get_execution" - }, - "description": "Sample for GetExecution", - "file": "workflowexecutions_v1_generated_executions_get_execution_async.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1_generated_Executions_GetExecution_async", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1_generated_executions_get_execution_async.py" - }, - { - "canonical": true, - "clientMethod": { - "client": { - "fullName": "google.cloud.workflows.executions_v1.ExecutionsClient", - "shortName": "ExecutionsClient" - }, - "fullName": "google.cloud.workflows.executions_v1.ExecutionsClient.get_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1.Executions.GetExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1.Executions", - "shortName": "Executions" - }, - "shortName": "GetExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1.types.GetExecutionRequest" - }, - { - "name": "name", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1.types.Execution", - "shortName": "get_execution" - }, - "description": "Sample for GetExecution", - "file": "workflowexecutions_v1_generated_executions_get_execution_sync.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1_generated_Executions_GetExecution_sync", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1_generated_executions_get_execution_sync.py" - }, - { - "canonical": true, - "clientMethod": { - "async": true, - "client": { - "fullName": "google.cloud.workflows.executions_v1.ExecutionsAsyncClient", - "shortName": "ExecutionsAsyncClient" - }, - "fullName": "google.cloud.workflows.executions_v1.ExecutionsAsyncClient.list_executions", - "method": { - "fullName": "google.cloud.workflows.executions.v1.Executions.ListExecutions", - "service": { - "fullName": "google.cloud.workflows.executions.v1.Executions", - "shortName": "Executions" - }, - "shortName": "ListExecutions" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1.types.ListExecutionsRequest" - }, - { - "name": "parent", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1.services.executions.pagers.ListExecutionsAsyncPager", - "shortName": "list_executions" - }, - "description": "Sample for ListExecutions", - "file": "workflowexecutions_v1_generated_executions_list_executions_async.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1_generated_Executions_ListExecutions_async", - "segments": [ - { - "end": 52, - "start": 27, - "type": "FULL" - }, - { - "end": 52, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 53, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1_generated_executions_list_executions_async.py" - }, - { - "canonical": true, - "clientMethod": { - "client": { - "fullName": "google.cloud.workflows.executions_v1.ExecutionsClient", - "shortName": "ExecutionsClient" - }, - "fullName": "google.cloud.workflows.executions_v1.ExecutionsClient.list_executions", - "method": { - "fullName": "google.cloud.workflows.executions.v1.Executions.ListExecutions", - "service": { - "fullName": "google.cloud.workflows.executions.v1.Executions", - "shortName": "Executions" - }, - "shortName": "ListExecutions" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1.types.ListExecutionsRequest" - }, - { - "name": "parent", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1.services.executions.pagers.ListExecutionsPager", - "shortName": "list_executions" - }, - "description": "Sample for ListExecutions", - "file": "workflowexecutions_v1_generated_executions_list_executions_sync.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1_generated_Executions_ListExecutions_sync", - "segments": [ - { - "end": 52, - "start": 27, - "type": "FULL" - }, - { - "end": 52, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 53, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1_generated_executions_list_executions_sync.py" - } - ] -} diff --git a/samples/generated_samples/snippet_metadata_executions_v1beta.json b/samples/generated_samples/snippet_metadata_executions_v1beta.json deleted file mode 100644 index 8c508ac..0000000 --- a/samples/generated_samples/snippet_metadata_executions_v1beta.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "clientLibrary": { - "apis": [ - { - "id": "google.cloud.workflows.executions.v1beta", - "version": "v1beta" - } - ], - "language": "PYTHON", - "name": "google-cloud-workflows-executions" - }, - "snippets": [ - { - "canonical": true, - "clientMethod": { - "async": true, - "client": { - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsAsyncClient", - "shortName": "ExecutionsAsyncClient" - }, - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsAsyncClient.cancel_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions.CancelExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions", - "shortName": "Executions" - }, - "shortName": "CancelExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1beta.types.CancelExecutionRequest" - }, - { - "name": "name", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1beta.types.Execution", - "shortName": "cancel_execution" - }, - "description": "Sample for CancelExecution", - "file": "workflowexecutions_v1beta_generated_executions_cancel_execution_async.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1beta_generated_Executions_CancelExecution_async", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1beta_generated_executions_cancel_execution_async.py" - }, - { - "canonical": true, - "clientMethod": { - "client": { - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsClient", - "shortName": "ExecutionsClient" - }, - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsClient.cancel_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions.CancelExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions", - "shortName": "Executions" - }, - "shortName": "CancelExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1beta.types.CancelExecutionRequest" - }, - { - "name": "name", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1beta.types.Execution", - "shortName": "cancel_execution" - }, - "description": "Sample for CancelExecution", - "file": "workflowexecutions_v1beta_generated_executions_cancel_execution_sync.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1beta_generated_Executions_CancelExecution_sync", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1beta_generated_executions_cancel_execution_sync.py" - }, - { - "canonical": true, - "clientMethod": { - "async": true, - "client": { - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsAsyncClient", - "shortName": "ExecutionsAsyncClient" - }, - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsAsyncClient.create_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions.CreateExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions", - "shortName": "Executions" - }, - "shortName": "CreateExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1beta.types.CreateExecutionRequest" - }, - { - "name": "parent", - "type": "str" - }, - { - "name": "execution", - "type": "google.cloud.workflows.executions_v1beta.types.Execution" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1beta.types.Execution", - "shortName": "create_execution" - }, - "description": "Sample for CreateExecution", - "file": "workflowexecutions_v1beta_generated_executions_create_execution_async.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1beta_generated_Executions_CreateExecution_async", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1beta_generated_executions_create_execution_async.py" - }, - { - "canonical": true, - "clientMethod": { - "client": { - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsClient", - "shortName": "ExecutionsClient" - }, - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsClient.create_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions.CreateExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions", - "shortName": "Executions" - }, - "shortName": "CreateExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1beta.types.CreateExecutionRequest" - }, - { - "name": "parent", - "type": "str" - }, - { - "name": "execution", - "type": "google.cloud.workflows.executions_v1beta.types.Execution" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1beta.types.Execution", - "shortName": "create_execution" - }, - "description": "Sample for CreateExecution", - "file": "workflowexecutions_v1beta_generated_executions_create_execution_sync.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1beta_generated_Executions_CreateExecution_sync", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1beta_generated_executions_create_execution_sync.py" - }, - { - "canonical": true, - "clientMethod": { - "async": true, - "client": { - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsAsyncClient", - "shortName": "ExecutionsAsyncClient" - }, - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsAsyncClient.get_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions.GetExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions", - "shortName": "Executions" - }, - "shortName": "GetExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1beta.types.GetExecutionRequest" - }, - { - "name": "name", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1beta.types.Execution", - "shortName": "get_execution" - }, - "description": "Sample for GetExecution", - "file": "workflowexecutions_v1beta_generated_executions_get_execution_async.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1beta_generated_Executions_GetExecution_async", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1beta_generated_executions_get_execution_async.py" - }, - { - "canonical": true, - "clientMethod": { - "client": { - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsClient", - "shortName": "ExecutionsClient" - }, - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsClient.get_execution", - "method": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions.GetExecution", - "service": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions", - "shortName": "Executions" - }, - "shortName": "GetExecution" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1beta.types.GetExecutionRequest" - }, - { - "name": "name", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1beta.types.Execution", - "shortName": "get_execution" - }, - "description": "Sample for GetExecution", - "file": "workflowexecutions_v1beta_generated_executions_get_execution_sync.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1beta_generated_Executions_GetExecution_sync", - "segments": [ - { - "end": 51, - "start": 27, - "type": "FULL" - }, - { - "end": 51, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 52, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1beta_generated_executions_get_execution_sync.py" - }, - { - "canonical": true, - "clientMethod": { - "async": true, - "client": { - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsAsyncClient", - "shortName": "ExecutionsAsyncClient" - }, - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsAsyncClient.list_executions", - "method": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions.ListExecutions", - "service": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions", - "shortName": "Executions" - }, - "shortName": "ListExecutions" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1beta.types.ListExecutionsRequest" - }, - { - "name": "parent", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1beta.services.executions.pagers.ListExecutionsAsyncPager", - "shortName": "list_executions" - }, - "description": "Sample for ListExecutions", - "file": "workflowexecutions_v1beta_generated_executions_list_executions_async.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1beta_generated_Executions_ListExecutions_async", - "segments": [ - { - "end": 52, - "start": 27, - "type": "FULL" - }, - { - "end": 52, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 53, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1beta_generated_executions_list_executions_async.py" - }, - { - "canonical": true, - "clientMethod": { - "client": { - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsClient", - "shortName": "ExecutionsClient" - }, - "fullName": "google.cloud.workflows.executions_v1beta.ExecutionsClient.list_executions", - "method": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions.ListExecutions", - "service": { - "fullName": "google.cloud.workflows.executions.v1beta.Executions", - "shortName": "Executions" - }, - "shortName": "ListExecutions" - }, - "parameters": [ - { - "name": "request", - "type": "google.cloud.workflows.executions_v1beta.types.ListExecutionsRequest" - }, - { - "name": "parent", - "type": "str" - }, - { - "name": "retry", - "type": "google.api_core.retry.Retry" - }, - { - "name": "timeout", - "type": "float" - }, - { - "name": "metadata", - "type": "Sequence[Tuple[str, str]" - } - ], - "resultType": "google.cloud.workflows.executions_v1beta.services.executions.pagers.ListExecutionsPager", - "shortName": "list_executions" - }, - "description": "Sample for ListExecutions", - "file": "workflowexecutions_v1beta_generated_executions_list_executions_sync.py", - "language": "PYTHON", - "origin": "API_DEFINITION", - "regionTag": "workflowexecutions_v1beta_generated_Executions_ListExecutions_sync", - "segments": [ - { - "end": 52, - "start": 27, - "type": "FULL" - }, - { - "end": 52, - "start": 27, - "type": "SHORT" - }, - { - "end": 40, - "start": 38, - "type": "CLIENT_INITIALIZATION" - }, - { - "end": 45, - "start": 41, - "type": "REQUEST_INITIALIZATION" - }, - { - "end": 48, - "start": 46, - "type": "REQUEST_EXECUTION" - }, - { - "end": 53, - "start": 49, - "type": "RESPONSE_HANDLING" - } - ], - "title": "workflowexecutions_v1beta_generated_executions_list_executions_sync.py" - } - ] -} diff --git a/samples/generated_samples/snippet_metadata_workflows_v1.json b/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1.json similarity index 99% rename from samples/generated_samples/snippet_metadata_workflows_v1.json rename to samples/generated_samples/snippet_metadata_google.cloud.workflows.v1.json index b5192d0..5eeb3c2 100644 --- a/samples/generated_samples/snippet_metadata_workflows_v1.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1.json @@ -7,7 +7,8 @@ } ], "language": "PYTHON", - "name": "google-cloud-workflows" + "name": "google-cloud-workflows", + "version": "0.1.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_workflows_v1beta.json b/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json similarity index 99% rename from samples/generated_samples/snippet_metadata_workflows_v1beta.json rename to samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json index 92e9256..e6e1022 100644 --- a/samples/generated_samples/snippet_metadata_workflows_v1beta.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json @@ -7,7 +7,8 @@ } ], "language": "PYTHON", - "name": "google-cloud-workflows" + "name": "google-cloud-workflows", + "version": "0.1.0" }, "snippets": [ { diff --git a/samples/generated_samples/workflowexecutions_v1_generated_executions_cancel_execution_async.py b/samples/generated_samples/workflowexecutions_v1_generated_executions_cancel_execution_async.py deleted file mode 100644 index dec5b2f..0000000 --- a/samples/generated_samples/workflowexecutions_v1_generated_executions_cancel_execution_async.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for CancelExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1_generated_Executions_CancelExecution_async] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1 - - -async def sample_cancel_execution(): - # Create a client - client = executions_v1.ExecutionsAsyncClient() - - # Initialize request argument(s) - request = executions_v1.CancelExecutionRequest( - name="name_value", - ) - - # Make the request - response = await client.cancel_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1_generated_Executions_CancelExecution_async] diff --git a/samples/generated_samples/workflowexecutions_v1_generated_executions_cancel_execution_sync.py b/samples/generated_samples/workflowexecutions_v1_generated_executions_cancel_execution_sync.py deleted file mode 100644 index 5a21a7f..0000000 --- a/samples/generated_samples/workflowexecutions_v1_generated_executions_cancel_execution_sync.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for CancelExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1_generated_Executions_CancelExecution_sync] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1 - - -def sample_cancel_execution(): - # Create a client - client = executions_v1.ExecutionsClient() - - # Initialize request argument(s) - request = executions_v1.CancelExecutionRequest( - name="name_value", - ) - - # Make the request - response = client.cancel_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1_generated_Executions_CancelExecution_sync] diff --git a/samples/generated_samples/workflowexecutions_v1_generated_executions_create_execution_async.py b/samples/generated_samples/workflowexecutions_v1_generated_executions_create_execution_async.py deleted file mode 100644 index d8ea196..0000000 --- a/samples/generated_samples/workflowexecutions_v1_generated_executions_create_execution_async.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for CreateExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1_generated_Executions_CreateExecution_async] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1 - - -async def sample_create_execution(): - # Create a client - client = executions_v1.ExecutionsAsyncClient() - - # Initialize request argument(s) - request = executions_v1.CreateExecutionRequest( - parent="parent_value", - ) - - # Make the request - response = await client.create_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1_generated_Executions_CreateExecution_async] diff --git a/samples/generated_samples/workflowexecutions_v1_generated_executions_create_execution_sync.py b/samples/generated_samples/workflowexecutions_v1_generated_executions_create_execution_sync.py deleted file mode 100644 index ff6adb4..0000000 --- a/samples/generated_samples/workflowexecutions_v1_generated_executions_create_execution_sync.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for CreateExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1_generated_Executions_CreateExecution_sync] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1 - - -def sample_create_execution(): - # Create a client - client = executions_v1.ExecutionsClient() - - # Initialize request argument(s) - request = executions_v1.CreateExecutionRequest( - parent="parent_value", - ) - - # Make the request - response = client.create_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1_generated_Executions_CreateExecution_sync] diff --git a/samples/generated_samples/workflowexecutions_v1_generated_executions_get_execution_async.py b/samples/generated_samples/workflowexecutions_v1_generated_executions_get_execution_async.py deleted file mode 100644 index 1bb1ca2..0000000 --- a/samples/generated_samples/workflowexecutions_v1_generated_executions_get_execution_async.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for GetExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1_generated_Executions_GetExecution_async] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1 - - -async def sample_get_execution(): - # Create a client - client = executions_v1.ExecutionsAsyncClient() - - # Initialize request argument(s) - request = executions_v1.GetExecutionRequest( - name="name_value", - ) - - # Make the request - response = await client.get_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1_generated_Executions_GetExecution_async] diff --git a/samples/generated_samples/workflowexecutions_v1_generated_executions_get_execution_sync.py b/samples/generated_samples/workflowexecutions_v1_generated_executions_get_execution_sync.py deleted file mode 100644 index 8e3dab6..0000000 --- a/samples/generated_samples/workflowexecutions_v1_generated_executions_get_execution_sync.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for GetExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1_generated_Executions_GetExecution_sync] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1 - - -def sample_get_execution(): - # Create a client - client = executions_v1.ExecutionsClient() - - # Initialize request argument(s) - request = executions_v1.GetExecutionRequest( - name="name_value", - ) - - # Make the request - response = client.get_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1_generated_Executions_GetExecution_sync] diff --git a/samples/generated_samples/workflowexecutions_v1_generated_executions_list_executions_async.py b/samples/generated_samples/workflowexecutions_v1_generated_executions_list_executions_async.py deleted file mode 100644 index df96268..0000000 --- a/samples/generated_samples/workflowexecutions_v1_generated_executions_list_executions_async.py +++ /dev/null @@ -1,53 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for ListExecutions -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1_generated_Executions_ListExecutions_async] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1 - - -async def sample_list_executions(): - # Create a client - client = executions_v1.ExecutionsAsyncClient() - - # Initialize request argument(s) - request = executions_v1.ListExecutionsRequest( - parent="parent_value", - ) - - # Make the request - page_result = client.list_executions(request=request) - - # Handle the response - async for response in page_result: - print(response) - -# [END workflowexecutions_v1_generated_Executions_ListExecutions_async] diff --git a/samples/generated_samples/workflowexecutions_v1_generated_executions_list_executions_sync.py b/samples/generated_samples/workflowexecutions_v1_generated_executions_list_executions_sync.py deleted file mode 100644 index 229c9bc..0000000 --- a/samples/generated_samples/workflowexecutions_v1_generated_executions_list_executions_sync.py +++ /dev/null @@ -1,53 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for ListExecutions -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1_generated_Executions_ListExecutions_sync] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1 - - -def sample_list_executions(): - # Create a client - client = executions_v1.ExecutionsClient() - - # Initialize request argument(s) - request = executions_v1.ListExecutionsRequest( - parent="parent_value", - ) - - # Make the request - page_result = client.list_executions(request=request) - - # Handle the response - for response in page_result: - print(response) - -# [END workflowexecutions_v1_generated_Executions_ListExecutions_sync] diff --git a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_cancel_execution_async.py b/samples/generated_samples/workflowexecutions_v1beta_generated_executions_cancel_execution_async.py deleted file mode 100644 index ca8a192..0000000 --- a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_cancel_execution_async.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for CancelExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1beta_generated_Executions_CancelExecution_async] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1beta - - -async def sample_cancel_execution(): - # Create a client - client = executions_v1beta.ExecutionsAsyncClient() - - # Initialize request argument(s) - request = executions_v1beta.CancelExecutionRequest( - name="name_value", - ) - - # Make the request - response = await client.cancel_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1beta_generated_Executions_CancelExecution_async] diff --git a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_cancel_execution_sync.py b/samples/generated_samples/workflowexecutions_v1beta_generated_executions_cancel_execution_sync.py deleted file mode 100644 index 7c93d18..0000000 --- a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_cancel_execution_sync.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for CancelExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1beta_generated_Executions_CancelExecution_sync] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1beta - - -def sample_cancel_execution(): - # Create a client - client = executions_v1beta.ExecutionsClient() - - # Initialize request argument(s) - request = executions_v1beta.CancelExecutionRequest( - name="name_value", - ) - - # Make the request - response = client.cancel_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1beta_generated_Executions_CancelExecution_sync] diff --git a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_create_execution_async.py b/samples/generated_samples/workflowexecutions_v1beta_generated_executions_create_execution_async.py deleted file mode 100644 index 6547231..0000000 --- a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_create_execution_async.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for CreateExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1beta_generated_Executions_CreateExecution_async] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1beta - - -async def sample_create_execution(): - # Create a client - client = executions_v1beta.ExecutionsAsyncClient() - - # Initialize request argument(s) - request = executions_v1beta.CreateExecutionRequest( - parent="parent_value", - ) - - # Make the request - response = await client.create_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1beta_generated_Executions_CreateExecution_async] diff --git a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_create_execution_sync.py b/samples/generated_samples/workflowexecutions_v1beta_generated_executions_create_execution_sync.py deleted file mode 100644 index 52033ce..0000000 --- a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_create_execution_sync.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for CreateExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1beta_generated_Executions_CreateExecution_sync] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1beta - - -def sample_create_execution(): - # Create a client - client = executions_v1beta.ExecutionsClient() - - # Initialize request argument(s) - request = executions_v1beta.CreateExecutionRequest( - parent="parent_value", - ) - - # Make the request - response = client.create_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1beta_generated_Executions_CreateExecution_sync] diff --git a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_get_execution_async.py b/samples/generated_samples/workflowexecutions_v1beta_generated_executions_get_execution_async.py deleted file mode 100644 index 5cdbbec..0000000 --- a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_get_execution_async.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for GetExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1beta_generated_Executions_GetExecution_async] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1beta - - -async def sample_get_execution(): - # Create a client - client = executions_v1beta.ExecutionsAsyncClient() - - # Initialize request argument(s) - request = executions_v1beta.GetExecutionRequest( - name="name_value", - ) - - # Make the request - response = await client.get_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1beta_generated_Executions_GetExecution_async] diff --git a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_get_execution_sync.py b/samples/generated_samples/workflowexecutions_v1beta_generated_executions_get_execution_sync.py deleted file mode 100644 index 9e92969..0000000 --- a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_get_execution_sync.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for GetExecution -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1beta_generated_Executions_GetExecution_sync] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1beta - - -def sample_get_execution(): - # Create a client - client = executions_v1beta.ExecutionsClient() - - # Initialize request argument(s) - request = executions_v1beta.GetExecutionRequest( - name="name_value", - ) - - # Make the request - response = client.get_execution(request=request) - - # Handle the response - print(response) - -# [END workflowexecutions_v1beta_generated_Executions_GetExecution_sync] diff --git a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_list_executions_async.py b/samples/generated_samples/workflowexecutions_v1beta_generated_executions_list_executions_async.py deleted file mode 100644 index c81130a..0000000 --- a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_list_executions_async.py +++ /dev/null @@ -1,53 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for ListExecutions -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1beta_generated_Executions_ListExecutions_async] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1beta - - -async def sample_list_executions(): - # Create a client - client = executions_v1beta.ExecutionsAsyncClient() - - # Initialize request argument(s) - request = executions_v1beta.ListExecutionsRequest( - parent="parent_value", - ) - - # Make the request - page_result = client.list_executions(request=request) - - # Handle the response - async for response in page_result: - print(response) - -# [END workflowexecutions_v1beta_generated_Executions_ListExecutions_async] diff --git a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_list_executions_sync.py b/samples/generated_samples/workflowexecutions_v1beta_generated_executions_list_executions_sync.py deleted file mode 100644 index a47db99..0000000 --- a/samples/generated_samples/workflowexecutions_v1beta_generated_executions_list_executions_sync.py +++ /dev/null @@ -1,53 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2022 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Generated code. DO NOT EDIT! -# -# Snippet for ListExecutions -# NOTE: This snippet has been automatically generated for illustrative purposes only. -# It may require modifications to work in your environment. - -# To install the latest published package dependency, execute the following: -# python3 -m pip install google-cloud-workflows-executions - - -# [START workflowexecutions_v1beta_generated_Executions_ListExecutions_sync] -# This snippet has been automatically generated and should be regarded as a -# code template only. -# It will require modifications to work: -# - It may require correct/in-range values for request initialization. -# - It may require specifying regional endpoints when creating the service -# client as shown in: -# https://googleapis.dev/python/google-api-core/latest/client_options.html -from google.cloud.workflows import executions_v1beta - - -def sample_list_executions(): - # Create a client - client = executions_v1beta.ExecutionsClient() - - # Initialize request argument(s) - request = executions_v1beta.ListExecutionsRequest( - parent="parent_value", - ) - - # Make the request - page_result = client.list_executions(request=request) - - # Handle the response - for response in page_result: - print(response) - -# [END workflowexecutions_v1beta_generated_Executions_ListExecutions_sync] diff --git a/scripts/fixup_executions_v1_keywords.py b/scripts/fixup_executions_v1_keywords.py new file mode 100644 index 0000000..63927a2 --- /dev/null +++ b/scripts/fixup_executions_v1_keywords.py @@ -0,0 +1,179 @@ +#! /usr/bin/env python3 +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +import argparse +import os +import libcst as cst +import pathlib +import sys +from typing import (Any, Callable, Dict, List, Sequence, Tuple) + + +def partition( + predicate: Callable[[Any], bool], + iterator: Sequence[Any] +) -> Tuple[List[Any], List[Any]]: + """A stable, out-of-place partition.""" + results = ([], []) + + for i in iterator: + results[int(predicate(i))].append(i) + + # Returns trueList, falseList + return results[1], results[0] + + +class executionsCallTransformer(cst.CSTTransformer): + CTRL_PARAMS: Tuple[str] = ('retry', 'timeout', 'metadata') + METHOD_TO_PARAMS: Dict[str, Tuple[str]] = { + 'cancel_execution': ('name', ), + 'create_execution': ('parent', 'execution', ), + 'get_execution': ('name', 'view', ), + 'list_executions': ('parent', 'page_size', 'page_token', 'view', ), + } + + def leave_Call(self, original: cst.Call, updated: cst.Call) -> cst.CSTNode: + try: + key = original.func.attr.value + kword_params = self.METHOD_TO_PARAMS[key] + except (AttributeError, KeyError): + # Either not a method from the API or too convoluted to be sure. + return updated + + # If the existing code is valid, keyword args come after positional args. + # Therefore, all positional args must map to the first parameters. + args, kwargs = partition(lambda a: not bool(a.keyword), updated.args) + if any(k.keyword.value == "request" for k in kwargs): + # We've already fixed this file, don't fix it again. + return updated + + kwargs, ctrl_kwargs = partition( + lambda a: a.keyword.value not in self.CTRL_PARAMS, + kwargs + ) + + args, ctrl_args = args[:len(kword_params)], args[len(kword_params):] + ctrl_kwargs.extend(cst.Arg(value=a.value, keyword=cst.Name(value=ctrl)) + for a, ctrl in zip(ctrl_args, self.CTRL_PARAMS)) + + request_arg = cst.Arg( + value=cst.Dict([ + cst.DictElement( + cst.SimpleString("'{}'".format(name)), +cst.Element(value=arg.value) + ) + # Note: the args + kwargs looks silly, but keep in mind that + # the control parameters had to be stripped out, and that + # those could have been passed positionally or by keyword. + for name, arg in zip(kword_params, args + kwargs)]), + keyword=cst.Name("request") + ) + + return updated.with_changes( + args=[request_arg] + ctrl_kwargs + ) + + +def fix_files( + in_dir: pathlib.Path, + out_dir: pathlib.Path, + *, + transformer=executionsCallTransformer(), +): + """Duplicate the input dir to the output dir, fixing file method calls. + + Preconditions: + * in_dir is a real directory + * out_dir is a real, empty directory + """ + pyfile_gen = ( + pathlib.Path(os.path.join(root, f)) + for root, _, files in os.walk(in_dir) + for f in files if os.path.splitext(f)[1] == ".py" + ) + + for fpath in pyfile_gen: + with open(fpath, 'r') as f: + src = f.read() + + # Parse the code and insert method call fixes. + tree = cst.parse_module(src) + updated = tree.visit(transformer) + + # Create the path and directory structure for the new file. + updated_path = out_dir.joinpath(fpath.relative_to(in_dir)) + updated_path.parent.mkdir(parents=True, exist_ok=True) + + # Generate the updated source file at the corresponding path. + with open(updated_path, 'w') as f: + f.write(updated.code) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser( + description="""Fix up source that uses the executions client library. + +The existing sources are NOT overwritten but are copied to output_dir with changes made. + +Note: This tool operates at a best-effort level at converting positional + parameters in client method calls to keyword based parameters. + Cases where it WILL FAIL include + A) * or ** expansion in a method call. + B) Calls via function or method alias (includes free function calls) + C) Indirect or dispatched calls (e.g. the method is looked up dynamically) + + These all constitute false negatives. The tool will also detect false + positives when an API method shares a name with another method. +""") + parser.add_argument( + '-d', + '--input-directory', + required=True, + dest='input_dir', + help='the input directory to walk for python files to fix up', + ) + parser.add_argument( + '-o', + '--output-directory', + required=True, + dest='output_dir', + help='the directory to output files fixed via un-flattening', + ) + args = parser.parse_args() + input_dir = pathlib.Path(args.input_dir) + output_dir = pathlib.Path(args.output_dir) + if not input_dir.is_dir(): + print( + f"input directory '{input_dir}' does not exist or is not a directory", + file=sys.stderr, + ) + sys.exit(-1) + + if not output_dir.is_dir(): + print( + f"output directory '{output_dir}' does not exist or is not a directory", + file=sys.stderr, + ) + sys.exit(-1) + + if os.listdir(output_dir): + print( + f"output directory '{output_dir}' is not empty", + file=sys.stderr, + ) + sys.exit(-1) + + fix_files(input_dir, output_dir) diff --git a/scripts/fixup_executions_v1beta_keywords.py b/scripts/fixup_executions_v1beta_keywords.py new file mode 100644 index 0000000..63927a2 --- /dev/null +++ b/scripts/fixup_executions_v1beta_keywords.py @@ -0,0 +1,179 @@ +#! /usr/bin/env python3 +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +import argparse +import os +import libcst as cst +import pathlib +import sys +from typing import (Any, Callable, Dict, List, Sequence, Tuple) + + +def partition( + predicate: Callable[[Any], bool], + iterator: Sequence[Any] +) -> Tuple[List[Any], List[Any]]: + """A stable, out-of-place partition.""" + results = ([], []) + + for i in iterator: + results[int(predicate(i))].append(i) + + # Returns trueList, falseList + return results[1], results[0] + + +class executionsCallTransformer(cst.CSTTransformer): + CTRL_PARAMS: Tuple[str] = ('retry', 'timeout', 'metadata') + METHOD_TO_PARAMS: Dict[str, Tuple[str]] = { + 'cancel_execution': ('name', ), + 'create_execution': ('parent', 'execution', ), + 'get_execution': ('name', 'view', ), + 'list_executions': ('parent', 'page_size', 'page_token', 'view', ), + } + + def leave_Call(self, original: cst.Call, updated: cst.Call) -> cst.CSTNode: + try: + key = original.func.attr.value + kword_params = self.METHOD_TO_PARAMS[key] + except (AttributeError, KeyError): + # Either not a method from the API or too convoluted to be sure. + return updated + + # If the existing code is valid, keyword args come after positional args. + # Therefore, all positional args must map to the first parameters. + args, kwargs = partition(lambda a: not bool(a.keyword), updated.args) + if any(k.keyword.value == "request" for k in kwargs): + # We've already fixed this file, don't fix it again. + return updated + + kwargs, ctrl_kwargs = partition( + lambda a: a.keyword.value not in self.CTRL_PARAMS, + kwargs + ) + + args, ctrl_args = args[:len(kword_params)], args[len(kword_params):] + ctrl_kwargs.extend(cst.Arg(value=a.value, keyword=cst.Name(value=ctrl)) + for a, ctrl in zip(ctrl_args, self.CTRL_PARAMS)) + + request_arg = cst.Arg( + value=cst.Dict([ + cst.DictElement( + cst.SimpleString("'{}'".format(name)), +cst.Element(value=arg.value) + ) + # Note: the args + kwargs looks silly, but keep in mind that + # the control parameters had to be stripped out, and that + # those could have been passed positionally or by keyword. + for name, arg in zip(kword_params, args + kwargs)]), + keyword=cst.Name("request") + ) + + return updated.with_changes( + args=[request_arg] + ctrl_kwargs + ) + + +def fix_files( + in_dir: pathlib.Path, + out_dir: pathlib.Path, + *, + transformer=executionsCallTransformer(), +): + """Duplicate the input dir to the output dir, fixing file method calls. + + Preconditions: + * in_dir is a real directory + * out_dir is a real, empty directory + """ + pyfile_gen = ( + pathlib.Path(os.path.join(root, f)) + for root, _, files in os.walk(in_dir) + for f in files if os.path.splitext(f)[1] == ".py" + ) + + for fpath in pyfile_gen: + with open(fpath, 'r') as f: + src = f.read() + + # Parse the code and insert method call fixes. + tree = cst.parse_module(src) + updated = tree.visit(transformer) + + # Create the path and directory structure for the new file. + updated_path = out_dir.joinpath(fpath.relative_to(in_dir)) + updated_path.parent.mkdir(parents=True, exist_ok=True) + + # Generate the updated source file at the corresponding path. + with open(updated_path, 'w') as f: + f.write(updated.code) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser( + description="""Fix up source that uses the executions client library. + +The existing sources are NOT overwritten but are copied to output_dir with changes made. + +Note: This tool operates at a best-effort level at converting positional + parameters in client method calls to keyword based parameters. + Cases where it WILL FAIL include + A) * or ** expansion in a method call. + B) Calls via function or method alias (includes free function calls) + C) Indirect or dispatched calls (e.g. the method is looked up dynamically) + + These all constitute false negatives. The tool will also detect false + positives when an API method shares a name with another method. +""") + parser.add_argument( + '-d', + '--input-directory', + required=True, + dest='input_dir', + help='the input directory to walk for python files to fix up', + ) + parser.add_argument( + '-o', + '--output-directory', + required=True, + dest='output_dir', + help='the directory to output files fixed via un-flattening', + ) + args = parser.parse_args() + input_dir = pathlib.Path(args.input_dir) + output_dir = pathlib.Path(args.output_dir) + if not input_dir.is_dir(): + print( + f"input directory '{input_dir}' does not exist or is not a directory", + file=sys.stderr, + ) + sys.exit(-1) + + if not output_dir.is_dir(): + print( + f"output directory '{output_dir}' does not exist or is not a directory", + file=sys.stderr, + ) + sys.exit(-1) + + if os.listdir(output_dir): + print( + f"output directory '{output_dir}' is not empty", + file=sys.stderr, + ) + sys.exit(-1) + + fix_files(input_dir, output_dir) diff --git a/scripts/fixup_workflows_v1_keywords.py b/scripts/fixup_workflows_v1_keywords.py new file mode 100644 index 0000000..a48ee47 --- /dev/null +++ b/scripts/fixup_workflows_v1_keywords.py @@ -0,0 +1,180 @@ +#! /usr/bin/env python3 +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +import argparse +import os +import libcst as cst +import pathlib +import sys +from typing import (Any, Callable, Dict, List, Sequence, Tuple) + + +def partition( + predicate: Callable[[Any], bool], + iterator: Sequence[Any] +) -> Tuple[List[Any], List[Any]]: + """A stable, out-of-place partition.""" + results = ([], []) + + for i in iterator: + results[int(predicate(i))].append(i) + + # Returns trueList, falseList + return results[1], results[0] + + +class workflowsCallTransformer(cst.CSTTransformer): + CTRL_PARAMS: Tuple[str] = ('retry', 'timeout', 'metadata') + METHOD_TO_PARAMS: Dict[str, Tuple[str]] = { + 'create_workflow': ('parent', 'workflow', 'workflow_id', ), + 'delete_workflow': ('name', ), + 'get_workflow': ('name', ), + 'list_workflows': ('parent', 'page_size', 'page_token', 'filter', 'order_by', ), + 'update_workflow': ('workflow', 'update_mask', ), + } + + def leave_Call(self, original: cst.Call, updated: cst.Call) -> cst.CSTNode: + try: + key = original.func.attr.value + kword_params = self.METHOD_TO_PARAMS[key] + except (AttributeError, KeyError): + # Either not a method from the API or too convoluted to be sure. + return updated + + # If the existing code is valid, keyword args come after positional args. + # Therefore, all positional args must map to the first parameters. + args, kwargs = partition(lambda a: not bool(a.keyword), updated.args) + if any(k.keyword.value == "request" for k in kwargs): + # We've already fixed this file, don't fix it again. + return updated + + kwargs, ctrl_kwargs = partition( + lambda a: a.keyword.value not in self.CTRL_PARAMS, + kwargs + ) + + args, ctrl_args = args[:len(kword_params)], args[len(kword_params):] + ctrl_kwargs.extend(cst.Arg(value=a.value, keyword=cst.Name(value=ctrl)) + for a, ctrl in zip(ctrl_args, self.CTRL_PARAMS)) + + request_arg = cst.Arg( + value=cst.Dict([ + cst.DictElement( + cst.SimpleString("'{}'".format(name)), +cst.Element(value=arg.value) + ) + # Note: the args + kwargs looks silly, but keep in mind that + # the control parameters had to be stripped out, and that + # those could have been passed positionally or by keyword. + for name, arg in zip(kword_params, args + kwargs)]), + keyword=cst.Name("request") + ) + + return updated.with_changes( + args=[request_arg] + ctrl_kwargs + ) + + +def fix_files( + in_dir: pathlib.Path, + out_dir: pathlib.Path, + *, + transformer=workflowsCallTransformer(), +): + """Duplicate the input dir to the output dir, fixing file method calls. + + Preconditions: + * in_dir is a real directory + * out_dir is a real, empty directory + """ + pyfile_gen = ( + pathlib.Path(os.path.join(root, f)) + for root, _, files in os.walk(in_dir) + for f in files if os.path.splitext(f)[1] == ".py" + ) + + for fpath in pyfile_gen: + with open(fpath, 'r') as f: + src = f.read() + + # Parse the code and insert method call fixes. + tree = cst.parse_module(src) + updated = tree.visit(transformer) + + # Create the path and directory structure for the new file. + updated_path = out_dir.joinpath(fpath.relative_to(in_dir)) + updated_path.parent.mkdir(parents=True, exist_ok=True) + + # Generate the updated source file at the corresponding path. + with open(updated_path, 'w') as f: + f.write(updated.code) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser( + description="""Fix up source that uses the workflows client library. + +The existing sources are NOT overwritten but are copied to output_dir with changes made. + +Note: This tool operates at a best-effort level at converting positional + parameters in client method calls to keyword based parameters. + Cases where it WILL FAIL include + A) * or ** expansion in a method call. + B) Calls via function or method alias (includes free function calls) + C) Indirect or dispatched calls (e.g. the method is looked up dynamically) + + These all constitute false negatives. The tool will also detect false + positives when an API method shares a name with another method. +""") + parser.add_argument( + '-d', + '--input-directory', + required=True, + dest='input_dir', + help='the input directory to walk for python files to fix up', + ) + parser.add_argument( + '-o', + '--output-directory', + required=True, + dest='output_dir', + help='the directory to output files fixed via un-flattening', + ) + args = parser.parse_args() + input_dir = pathlib.Path(args.input_dir) + output_dir = pathlib.Path(args.output_dir) + if not input_dir.is_dir(): + print( + f"input directory '{input_dir}' does not exist or is not a directory", + file=sys.stderr, + ) + sys.exit(-1) + + if not output_dir.is_dir(): + print( + f"output directory '{output_dir}' does not exist or is not a directory", + file=sys.stderr, + ) + sys.exit(-1) + + if os.listdir(output_dir): + print( + f"output directory '{output_dir}' is not empty", + file=sys.stderr, + ) + sys.exit(-1) + + fix_files(input_dir, output_dir) diff --git a/scripts/fixup_workflows_v1beta_keywords.py b/scripts/fixup_workflows_v1beta_keywords.py new file mode 100644 index 0000000..a48ee47 --- /dev/null +++ b/scripts/fixup_workflows_v1beta_keywords.py @@ -0,0 +1,180 @@ +#! /usr/bin/env python3 +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +import argparse +import os +import libcst as cst +import pathlib +import sys +from typing import (Any, Callable, Dict, List, Sequence, Tuple) + + +def partition( + predicate: Callable[[Any], bool], + iterator: Sequence[Any] +) -> Tuple[List[Any], List[Any]]: + """A stable, out-of-place partition.""" + results = ([], []) + + for i in iterator: + results[int(predicate(i))].append(i) + + # Returns trueList, falseList + return results[1], results[0] + + +class workflowsCallTransformer(cst.CSTTransformer): + CTRL_PARAMS: Tuple[str] = ('retry', 'timeout', 'metadata') + METHOD_TO_PARAMS: Dict[str, Tuple[str]] = { + 'create_workflow': ('parent', 'workflow', 'workflow_id', ), + 'delete_workflow': ('name', ), + 'get_workflow': ('name', ), + 'list_workflows': ('parent', 'page_size', 'page_token', 'filter', 'order_by', ), + 'update_workflow': ('workflow', 'update_mask', ), + } + + def leave_Call(self, original: cst.Call, updated: cst.Call) -> cst.CSTNode: + try: + key = original.func.attr.value + kword_params = self.METHOD_TO_PARAMS[key] + except (AttributeError, KeyError): + # Either not a method from the API or too convoluted to be sure. + return updated + + # If the existing code is valid, keyword args come after positional args. + # Therefore, all positional args must map to the first parameters. + args, kwargs = partition(lambda a: not bool(a.keyword), updated.args) + if any(k.keyword.value == "request" for k in kwargs): + # We've already fixed this file, don't fix it again. + return updated + + kwargs, ctrl_kwargs = partition( + lambda a: a.keyword.value not in self.CTRL_PARAMS, + kwargs + ) + + args, ctrl_args = args[:len(kword_params)], args[len(kword_params):] + ctrl_kwargs.extend(cst.Arg(value=a.value, keyword=cst.Name(value=ctrl)) + for a, ctrl in zip(ctrl_args, self.CTRL_PARAMS)) + + request_arg = cst.Arg( + value=cst.Dict([ + cst.DictElement( + cst.SimpleString("'{}'".format(name)), +cst.Element(value=arg.value) + ) + # Note: the args + kwargs looks silly, but keep in mind that + # the control parameters had to be stripped out, and that + # those could have been passed positionally or by keyword. + for name, arg in zip(kword_params, args + kwargs)]), + keyword=cst.Name("request") + ) + + return updated.with_changes( + args=[request_arg] + ctrl_kwargs + ) + + +def fix_files( + in_dir: pathlib.Path, + out_dir: pathlib.Path, + *, + transformer=workflowsCallTransformer(), +): + """Duplicate the input dir to the output dir, fixing file method calls. + + Preconditions: + * in_dir is a real directory + * out_dir is a real, empty directory + """ + pyfile_gen = ( + pathlib.Path(os.path.join(root, f)) + for root, _, files in os.walk(in_dir) + for f in files if os.path.splitext(f)[1] == ".py" + ) + + for fpath in pyfile_gen: + with open(fpath, 'r') as f: + src = f.read() + + # Parse the code and insert method call fixes. + tree = cst.parse_module(src) + updated = tree.visit(transformer) + + # Create the path and directory structure for the new file. + updated_path = out_dir.joinpath(fpath.relative_to(in_dir)) + updated_path.parent.mkdir(parents=True, exist_ok=True) + + # Generate the updated source file at the corresponding path. + with open(updated_path, 'w') as f: + f.write(updated.code) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser( + description="""Fix up source that uses the workflows client library. + +The existing sources are NOT overwritten but are copied to output_dir with changes made. + +Note: This tool operates at a best-effort level at converting positional + parameters in client method calls to keyword based parameters. + Cases where it WILL FAIL include + A) * or ** expansion in a method call. + B) Calls via function or method alias (includes free function calls) + C) Indirect or dispatched calls (e.g. the method is looked up dynamically) + + These all constitute false negatives. The tool will also detect false + positives when an API method shares a name with another method. +""") + parser.add_argument( + '-d', + '--input-directory', + required=True, + dest='input_dir', + help='the input directory to walk for python files to fix up', + ) + parser.add_argument( + '-o', + '--output-directory', + required=True, + dest='output_dir', + help='the directory to output files fixed via un-flattening', + ) + args = parser.parse_args() + input_dir = pathlib.Path(args.input_dir) + output_dir = pathlib.Path(args.output_dir) + if not input_dir.is_dir(): + print( + f"input directory '{input_dir}' does not exist or is not a directory", + file=sys.stderr, + ) + sys.exit(-1) + + if not output_dir.is_dir(): + print( + f"output directory '{output_dir}' does not exist or is not a directory", + file=sys.stderr, + ) + sys.exit(-1) + + if os.listdir(output_dir): + print( + f"output directory '{output_dir}' is not empty", + file=sys.stderr, + ) + sys.exit(-1) + + fix_files(input_dir, output_dir) diff --git a/setup.py b/setup.py index 2aaac40..601a86a 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,5 @@ # -*- coding: utf-8 -*- - -# Copyright 2020 Google LLC +# Copyright 2022 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -14,12 +13,34 @@ # See the License for the specific language governing permissions and # limitations under the License. # - import io import os + import setuptools # type: ignore -version = "1.7.4" +package_root = os.path.abspath(os.path.dirname(__file__)) + +name = "google-cloud-workflows" + + +description = "Google Cloud Workflows API client library" + +version = {} +with open(os.path.join(package_root, "google/cloud/workflows/gapic_version.py")) as fp: + exec(fp.read(), version) +version = version["__version__"] + +if version[0] == "0": + release_status = "Development Status :: 4 - Beta" +else: + release_status = "Development Status :: 5 - Production/Stable" + +dependencies = [ + "google-api-core[grpc] >= 1.33.2, <3.0.0dev,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*", + "proto-plus >= 1.22.0, <2.0.0dev", + "protobuf>=3.19.5,<5.0.0dev,!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", +] +url = "https://github.com/googleapis/python-workflows" package_root = os.path.abspath(os.path.dirname(__file__)) @@ -33,34 +54,37 @@ if package.startswith("google") ] +namespaces = ["google"] +if "google.cloud" in packages: + namespaces.append("google.cloud") + setuptools.setup( - name="google-cloud-workflows", + name=name, version=version, + description=description, long_description=readme, author="Google LLC", author_email="googleapis-packages@google.com", license="Apache 2.0", - url="https://github.com/googleapis/python-workflows", - packages=packages, - namespace_packages=("google", "google.cloud"), - platforms="Posix; MacOS X; Windows", - include_package_data=True, - install_requires=( - "google-api-core[grpc] >= 1.32.0, <3.0.0dev,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*", - "proto-plus >= 1.22.0, <2.0.0dev", - "protobuf>=3.19.5,<5.0.0dev,!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", - ), - python_requires=">=3.7", + url=url, classifiers=[ - "Development Status :: 5 - Production/Stable", + release_status, "Intended Audience :: Developers", - "Operating System :: OS Independent", + "License :: OSI Approved :: Apache Software License", + "Programming Language :: Python", + "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", + "Operating System :: OS Independent", "Topic :: Internet", - "Topic :: Software Development :: Libraries :: Python Modules", ], + platforms="Posix; MacOS X; Windows", + packages=packages, + python_requires=">=3.7", + namespace_packages=namespaces, + install_requires=dependencies, + include_package_data=True, zip_safe=False, ) diff --git a/testing/constraints-3.10.txt b/testing/constraints-3.10.txt index e69de29..ed7f9ae 100644 --- a/testing/constraints-3.10.txt +++ b/testing/constraints-3.10.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/testing/constraints-3.11.txt b/testing/constraints-3.11.txt index e69de29..ed7f9ae 100644 --- a/testing/constraints-3.11.txt +++ b/testing/constraints-3.11.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/testing/constraints-3.7.txt b/testing/constraints-3.7.txt index 5dcaa6f..6f3158c 100644 --- a/testing/constraints-3.7.txt +++ b/testing/constraints-3.7.txt @@ -1,10 +1,9 @@ # This constraints file is used to check that lower bounds # are correct in setup.py -# List *all* library dependencies and extras in this file. +# List all library dependencies and extras in this file. # Pin the version to the lower bound. -# -# e.g., if setup.py has "foo >= 1.14.0, < 2.0.0dev", -# Then this file should have foo==1.14.0 -google-api-core==1.32.0 +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0dev", +# Then this file should have google-cloud-foo==1.14.0 +google-api-core==1.33.2 proto-plus==1.22.0 protobuf==3.19.5 diff --git a/testing/constraints-3.8.txt b/testing/constraints-3.8.txt index e69de29..ed7f9ae 100644 --- a/testing/constraints-3.8.txt +++ b/testing/constraints-3.8.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/testing/constraints-3.9.txt b/testing/constraints-3.9.txt index e69de29..ed7f9ae 100644 --- a/testing/constraints-3.9.txt +++ b/testing/constraints-3.9.txt @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +proto-plus +protobuf diff --git a/tests/unit/gapic/executions_v1/test_executions.py b/tests/unit/gapic/executions_v1/test_executions.py index 890f8bb..3495150 100644 --- a/tests/unit/gapic/executions_v1/test_executions.py +++ b/tests/unit/gapic/executions_v1/test_executions.py @@ -22,31 +22,29 @@ except ImportError: # pragma: NO COVER import mock -import grpc -from grpc.experimental import aio import math -import pytest -from proto.marshal.rules.dates import DurationRule, TimestampRule -from proto.marshal.rules import wrappers +from google.api_core import gapic_v1, grpc_helpers, grpc_helpers_async, path_template from google.api_core import client_options from google.api_core import exceptions as core_exceptions -from google.api_core import gapic_v1 -from google.api_core import grpc_helpers -from google.api_core import grpc_helpers_async -from google.api_core import path_template +import google.auth from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError +from google.oauth2 import service_account +from google.protobuf import timestamp_pb2 # type: ignore +import grpc +from grpc.experimental import aio +from proto.marshal.rules import wrappers +from proto.marshal.rules.dates import DurationRule, TimestampRule +import pytest + from google.cloud.workflows.executions_v1.services.executions import ( ExecutionsAsyncClient, + ExecutionsClient, + pagers, + transports, ) -from google.cloud.workflows.executions_v1.services.executions import ExecutionsClient -from google.cloud.workflows.executions_v1.services.executions import pagers -from google.cloud.workflows.executions_v1.services.executions import transports from google.cloud.workflows.executions_v1.types import executions -from google.oauth2 import service_account -from google.protobuf import timestamp_pb2 # type: ignore -import google.auth def client_cert_source_callback(): diff --git a/tests/unit/gapic/executions_v1beta/test_executions.py b/tests/unit/gapic/executions_v1beta/test_executions.py index 715fc7e..d974e60 100644 --- a/tests/unit/gapic/executions_v1beta/test_executions.py +++ b/tests/unit/gapic/executions_v1beta/test_executions.py @@ -22,33 +22,29 @@ except ImportError: # pragma: NO COVER import mock -import grpc -from grpc.experimental import aio import math -import pytest -from proto.marshal.rules.dates import DurationRule, TimestampRule -from proto.marshal.rules import wrappers +from google.api_core import gapic_v1, grpc_helpers, grpc_helpers_async, path_template from google.api_core import client_options from google.api_core import exceptions as core_exceptions -from google.api_core import gapic_v1 -from google.api_core import grpc_helpers -from google.api_core import grpc_helpers_async -from google.api_core import path_template +import google.auth from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError +from google.oauth2 import service_account +from google.protobuf import timestamp_pb2 # type: ignore +import grpc +from grpc.experimental import aio +from proto.marshal.rules import wrappers +from proto.marshal.rules.dates import DurationRule, TimestampRule +import pytest + from google.cloud.workflows.executions_v1beta.services.executions import ( ExecutionsAsyncClient, -) -from google.cloud.workflows.executions_v1beta.services.executions import ( ExecutionsClient, + pagers, + transports, ) -from google.cloud.workflows.executions_v1beta.services.executions import pagers -from google.cloud.workflows.executions_v1beta.services.executions import transports from google.cloud.workflows.executions_v1beta.types import executions -from google.oauth2 import service_account -from google.protobuf import timestamp_pb2 # type: ignore -import google.auth def client_cert_source_callback(): diff --git a/tests/unit/gapic/workflows_v1/test_workflows.py b/tests/unit/gapic/workflows_v1/test_workflows.py index 27c2857..46009d9 100644 --- a/tests/unit/gapic/workflows_v1/test_workflows.py +++ b/tests/unit/gapic/workflows_v1/test_workflows.py @@ -22,35 +22,41 @@ except ImportError: # pragma: NO COVER import mock -import grpc -from grpc.experimental import aio import math -import pytest -from proto.marshal.rules.dates import DurationRule, TimestampRule -from proto.marshal.rules import wrappers +from google.api_core import ( + future, + gapic_v1, + grpc_helpers, + grpc_helpers_async, + operation, + operations_v1, + path_template, +) from google.api_core import client_options from google.api_core import exceptions as core_exceptions -from google.api_core import future -from google.api_core import gapic_v1 -from google.api_core import grpc_helpers -from google.api_core import grpc_helpers_async -from google.api_core import operation from google.api_core import operation_async # type: ignore -from google.api_core import operations_v1 -from google.api_core import path_template +import google.auth from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError -from google.cloud.workflows_v1.services.workflows import WorkflowsAsyncClient -from google.cloud.workflows_v1.services.workflows import WorkflowsClient -from google.cloud.workflows_v1.services.workflows import pagers -from google.cloud.workflows_v1.services.workflows import transports -from google.cloud.workflows_v1.types import workflows from google.longrunning import operations_pb2 from google.oauth2 import service_account +from google.protobuf import empty_pb2 # type: ignore from google.protobuf import field_mask_pb2 # type: ignore from google.protobuf import timestamp_pb2 # type: ignore -import google.auth +import grpc +from grpc.experimental import aio +from proto.marshal.rules import wrappers +from proto.marshal.rules.dates import DurationRule, TimestampRule +import pytest + +from google.cloud.workflows_v1.services.workflows import ( + WorkflowsAsyncClient, + WorkflowsClient, + pagers, + transports, +) +from google.cloud.workflows_v1.types import workflows def client_cert_source_callback(): diff --git a/tests/unit/gapic/workflows_v1beta/test_workflows.py b/tests/unit/gapic/workflows_v1beta/test_workflows.py index 5226989..8c863d5 100644 --- a/tests/unit/gapic/workflows_v1beta/test_workflows.py +++ b/tests/unit/gapic/workflows_v1beta/test_workflows.py @@ -22,35 +22,41 @@ except ImportError: # pragma: NO COVER import mock -import grpc -from grpc.experimental import aio import math -import pytest -from proto.marshal.rules.dates import DurationRule, TimestampRule -from proto.marshal.rules import wrappers +from google.api_core import ( + future, + gapic_v1, + grpc_helpers, + grpc_helpers_async, + operation, + operations_v1, + path_template, +) from google.api_core import client_options from google.api_core import exceptions as core_exceptions -from google.api_core import future -from google.api_core import gapic_v1 -from google.api_core import grpc_helpers -from google.api_core import grpc_helpers_async -from google.api_core import operation from google.api_core import operation_async # type: ignore -from google.api_core import operations_v1 -from google.api_core import path_template +import google.auth from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError -from google.cloud.workflows_v1beta.services.workflows import WorkflowsAsyncClient -from google.cloud.workflows_v1beta.services.workflows import WorkflowsClient -from google.cloud.workflows_v1beta.services.workflows import pagers -from google.cloud.workflows_v1beta.services.workflows import transports -from google.cloud.workflows_v1beta.types import workflows from google.longrunning import operations_pb2 from google.oauth2 import service_account +from google.protobuf import empty_pb2 # type: ignore from google.protobuf import field_mask_pb2 # type: ignore from google.protobuf import timestamp_pb2 # type: ignore -import google.auth +import grpc +from grpc.experimental import aio +from proto.marshal.rules import wrappers +from proto.marshal.rules.dates import DurationRule, TimestampRule +import pytest + +from google.cloud.workflows_v1beta.services.workflows import ( + WorkflowsAsyncClient, + WorkflowsClient, + pagers, + transports, +) +from google.cloud.workflows_v1beta.types import workflows def client_cert_source_callback(): From 566af4a9d2a4c74f7a43e02b08f30bd8a7eae24f Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 6 Dec 2022 09:08:06 -0500 Subject: [PATCH 4/6] fix(deps): Require google-api-core >=1.34.0, >=2.11.0 (#230) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(deps): Require google-api-core >=1.34.0, >=2.11.0 fix: Drop usage of pkg_resources fix: Fix timeout default values docs(samples): Snippetgen should call await on the operation coroutine before calling result PiperOrigin-RevId: 493260409 Source-Link: https://github.com/googleapis/googleapis/commit/fea43879f83a8d0dacc9353b3f75f8f46d37162f Source-Link: https://github.com/googleapis/googleapis-gen/commit/387b7344c7529ee44be84e613b19a820508c612b Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMzg3YjczNDRjNzUyOWVlNDRiZTg0ZTYxM2IxOWE4MjA1MDhjNjEyYiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * add gapic_version.py Co-authored-by: Owl Bot Co-authored-by: Anthonios Partheniou --- .coveragerc | 5 ---- .../workflows/executions_v1/gapic_version.py | 16 ++++++++++ .../services/executions/async_client.py | 22 ++++++-------- .../services/executions/client.py | 22 ++++++-------- .../services/executions/transports/base.py | 13 +++----- .../executions_v1beta/gapic_version.py | 16 ++++++++++ .../services/executions/async_client.py | 22 ++++++-------- .../services/executions/client.py | 22 ++++++-------- .../services/executions/transports/base.py | 13 +++----- google/cloud/workflows_v1/gapic_version.py | 16 ++++++++++ .../services/workflows/async_client.py | 30 ++++++++----------- .../workflows_v1/services/workflows/client.py | 24 +++++++-------- .../services/workflows/transports/base.py | 13 +++----- .../cloud/workflows_v1beta/gapic_version.py | 16 ++++++++++ .../services/workflows/async_client.py | 30 ++++++++----------- .../services/workflows/client.py | 24 +++++++-------- .../services/workflows/transports/base.py | 13 +++----- release-please-config.json | 4 +++ ...nerated_workflows_create_workflow_async.py | 2 +- ...nerated_workflows_delete_workflow_async.py | 2 +- ...nerated_workflows_update_workflow_async.py | 2 +- ...nerated_workflows_create_workflow_async.py | 2 +- ...nerated_workflows_delete_workflow_async.py | 2 +- ...nerated_workflows_update_workflow_async.py | 2 +- setup.py | 2 +- testing/constraints-3.7.txt | 2 +- 26 files changed, 174 insertions(+), 163 deletions(-) create mode 100644 google/cloud/workflows/executions_v1/gapic_version.py create mode 100644 google/cloud/workflows/executions_v1beta/gapic_version.py create mode 100644 google/cloud/workflows_v1/gapic_version.py create mode 100644 google/cloud/workflows_v1beta/gapic_version.py diff --git a/.coveragerc b/.coveragerc index b868aae..8a76e68 100644 --- a/.coveragerc +++ b/.coveragerc @@ -10,8 +10,3 @@ exclude_lines = pragma: NO COVER # Ignore debug-only repr def __repr__ - # Ignore pkg_resources exceptions. - # This is added at the module level as a safeguard for if someone - # generates the code and tries to run it without pip installing. This - # makes it virtually impossible to test properly. - except pkg_resources.DistributionNotFound diff --git a/google/cloud/workflows/executions_v1/gapic_version.py b/google/cloud/workflows/executions_v1/gapic_version.py new file mode 100644 index 0000000..3372e01 --- /dev/null +++ b/google/cloud/workflows/executions_v1/gapic_version.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +__version__ = "1.7.4" # {x-release-please-version} diff --git a/google/cloud/workflows/executions_v1/services/executions/async_client.py b/google/cloud/workflows/executions_v1/services/executions/async_client.py index 6c776c4..2eb91ff 100644 --- a/google/cloud/workflows/executions_v1/services/executions/async_client.py +++ b/google/cloud/workflows/executions_v1/services/executions/async_client.py @@ -34,7 +34,8 @@ from google.api_core.client_options import ClientOptions from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources + +from google.cloud.workflows.executions_v1 import gapic_version as package_version try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -219,7 +220,7 @@ async def list_executions( *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExecutionsAsyncPager: r"""Returns a list of executions which belong to the @@ -343,7 +344,7 @@ async def create_execution( parent: Optional[str] = None, execution: Optional[executions.Execution] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Creates a new execution using the latest revision of @@ -458,7 +459,7 @@ async def get_execution( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Returns an execution of the given name. @@ -562,7 +563,7 @@ async def cancel_execution( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Cancels an execution of the given name. @@ -667,14 +668,9 @@ async def __aexit__(self, exc_type, exc, tb): await self.transport.close() -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) __all__ = ("ExecutionsAsyncClient",) diff --git a/google/cloud/workflows/executions_v1/services/executions/client.py b/google/cloud/workflows/executions_v1/services/executions/client.py index 36f9a95..391febe 100644 --- a/google/cloud/workflows/executions_v1/services/executions/client.py +++ b/google/cloud/workflows/executions_v1/services/executions/client.py @@ -38,7 +38,8 @@ from google.auth.transport import mtls # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources + +from google.cloud.workflows.executions_v1 import gapic_version as package_version try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -472,7 +473,7 @@ def list_executions( *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExecutionsPager: r"""Returns a list of executions which belong to the @@ -596,7 +597,7 @@ def create_execution( parent: Optional[str] = None, execution: Optional[executions.Execution] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Creates a new execution using the latest revision of @@ -711,7 +712,7 @@ def get_execution( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Returns an execution of the given name. @@ -815,7 +816,7 @@ def cancel_execution( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Cancels an execution of the given name. @@ -927,14 +928,9 @@ def __exit__(self, type, value, traceback): self.transport.close() -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) __all__ = ("ExecutionsClient",) diff --git a/google/cloud/workflows/executions_v1/services/executions/transports/base.py b/google/cloud/workflows/executions_v1/services/executions/transports/base.py index 216d3a4..80a4b8a 100644 --- a/google/cloud/workflows/executions_v1/services/executions/transports/base.py +++ b/google/cloud/workflows/executions_v1/services/executions/transports/base.py @@ -23,18 +23,13 @@ import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources +from google.cloud.workflows.executions_v1 import gapic_version as package_version from google.cloud.workflows.executions_v1.types import executions -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) class ExecutionsTransport(abc.ABC): diff --git a/google/cloud/workflows/executions_v1beta/gapic_version.py b/google/cloud/workflows/executions_v1beta/gapic_version.py new file mode 100644 index 0000000..3372e01 --- /dev/null +++ b/google/cloud/workflows/executions_v1beta/gapic_version.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +__version__ = "1.7.4" # {x-release-please-version} diff --git a/google/cloud/workflows/executions_v1beta/services/executions/async_client.py b/google/cloud/workflows/executions_v1beta/services/executions/async_client.py index 3cf8094..c3bc96f 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/async_client.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/async_client.py @@ -34,7 +34,8 @@ from google.api_core.client_options import ClientOptions from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources + +from google.cloud.workflows.executions_v1beta import gapic_version as package_version try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -220,7 +221,7 @@ async def list_executions( *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExecutionsAsyncPager: r"""Returns a list of executions which belong to the @@ -344,7 +345,7 @@ async def create_execution( parent: Optional[str] = None, execution: Optional[executions.Execution] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Creates a new execution using the latest revision of @@ -459,7 +460,7 @@ async def get_execution( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Returns an execution of the given name. @@ -563,7 +564,7 @@ async def cancel_execution( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Cancels an execution of the given name. @@ -668,14 +669,9 @@ async def __aexit__(self, exc_type, exc, tb): await self.transport.close() -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) __all__ = ("ExecutionsAsyncClient",) diff --git a/google/cloud/workflows/executions_v1beta/services/executions/client.py b/google/cloud/workflows/executions_v1beta/services/executions/client.py index 96d6502..180883c 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/client.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/client.py @@ -38,7 +38,8 @@ from google.auth.transport import mtls # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources + +from google.cloud.workflows.executions_v1beta import gapic_version as package_version try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -473,7 +474,7 @@ def list_executions( *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExecutionsPager: r"""Returns a list of executions which belong to the @@ -597,7 +598,7 @@ def create_execution( parent: Optional[str] = None, execution: Optional[executions.Execution] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Creates a new execution using the latest revision of @@ -712,7 +713,7 @@ def get_execution( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Returns an execution of the given name. @@ -816,7 +817,7 @@ def cancel_execution( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> executions.Execution: r"""Cancels an execution of the given name. @@ -928,14 +929,9 @@ def __exit__(self, type, value, traceback): self.transport.close() -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) __all__ = ("ExecutionsClient",) diff --git a/google/cloud/workflows/executions_v1beta/services/executions/transports/base.py b/google/cloud/workflows/executions_v1beta/services/executions/transports/base.py index 6401f0d..9923d34 100644 --- a/google/cloud/workflows/executions_v1beta/services/executions/transports/base.py +++ b/google/cloud/workflows/executions_v1beta/services/executions/transports/base.py @@ -23,18 +23,13 @@ import google.auth # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources +from google.cloud.workflows.executions_v1beta import gapic_version as package_version from google.cloud.workflows.executions_v1beta.types import executions -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) class ExecutionsTransport(abc.ABC): diff --git a/google/cloud/workflows_v1/gapic_version.py b/google/cloud/workflows_v1/gapic_version.py new file mode 100644 index 0000000..3372e01 --- /dev/null +++ b/google/cloud/workflows_v1/gapic_version.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +__version__ = "1.7.4" # {x-release-please-version} diff --git a/google/cloud/workflows_v1/services/workflows/async_client.py b/google/cloud/workflows_v1/services/workflows/async_client.py index a08f88d..45ee8a1 100644 --- a/google/cloud/workflows_v1/services/workflows/async_client.py +++ b/google/cloud/workflows_v1/services/workflows/async_client.py @@ -34,7 +34,8 @@ from google.api_core.client_options import ClientOptions from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources + +from google.cloud.workflows_v1 import gapic_version as package_version try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -222,7 +223,7 @@ async def list_workflows( *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListWorkflowsAsyncPager: r"""Lists Workflows in a given project and location. @@ -342,7 +343,7 @@ async def get_workflow( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> workflows.Workflow: r"""Gets details of a single Workflow. @@ -448,7 +449,7 @@ async def create_workflow( workflow: Optional[workflows.Workflow] = None, workflow_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Creates a new workflow. If a workflow with the specified name @@ -486,7 +487,7 @@ async def sample_create_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) @@ -600,7 +601,7 @@ async def delete_workflow( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Deletes a workflow with the specified name. @@ -632,7 +633,7 @@ async def sample_delete_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) @@ -729,7 +730,7 @@ async def update_workflow( workflow: Optional[workflows.Workflow] = None, update_mask: Optional[field_mask_pb2.FieldMask] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Updates an existing workflow. @@ -767,7 +768,7 @@ async def sample_update_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) @@ -866,14 +867,9 @@ async def __aexit__(self, exc_type, exc, tb): await self.transport.close() -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) __all__ = ("WorkflowsAsyncClient",) diff --git a/google/cloud/workflows_v1/services/workflows/client.py b/google/cloud/workflows_v1/services/workflows/client.py index 5108ae3..3ae16b3 100644 --- a/google/cloud/workflows_v1/services/workflows/client.py +++ b/google/cloud/workflows_v1/services/workflows/client.py @@ -38,7 +38,8 @@ from google.auth.transport import mtls # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources + +from google.cloud.workflows_v1 import gapic_version as package_version try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -453,7 +454,7 @@ def list_workflows( *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListWorkflowsPager: r"""Lists Workflows in a given project and location. @@ -573,7 +574,7 @@ def get_workflow( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> workflows.Workflow: r"""Gets details of a single Workflow. @@ -679,7 +680,7 @@ def create_workflow( workflow: Optional[workflows.Workflow] = None, workflow_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Creates a new workflow. If a workflow with the specified name @@ -831,7 +832,7 @@ def delete_workflow( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Deletes a workflow with the specified name. @@ -960,7 +961,7 @@ def update_workflow( workflow: Optional[workflows.Workflow] = None, update_mask: Optional[field_mask_pb2.FieldMask] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Updates an existing workflow. @@ -1104,14 +1105,9 @@ def __exit__(self, type, value, traceback): self.transport.close() -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) __all__ = ("WorkflowsClient",) diff --git a/google/cloud/workflows_v1/services/workflows/transports/base.py b/google/cloud/workflows_v1/services/workflows/transports/base.py index 574f54e..83b7b55 100644 --- a/google/cloud/workflows_v1/services/workflows/transports/base.py +++ b/google/cloud/workflows_v1/services/workflows/transports/base.py @@ -24,18 +24,13 @@ from google.auth import credentials as ga_credentials # type: ignore from google.longrunning import operations_pb2 # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources +from google.cloud.workflows_v1 import gapic_version as package_version from google.cloud.workflows_v1.types import workflows -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) class WorkflowsTransport(abc.ABC): diff --git a/google/cloud/workflows_v1beta/gapic_version.py b/google/cloud/workflows_v1beta/gapic_version.py new file mode 100644 index 0000000..3372e01 --- /dev/null +++ b/google/cloud/workflows_v1beta/gapic_version.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +__version__ = "1.7.4" # {x-release-please-version} diff --git a/google/cloud/workflows_v1beta/services/workflows/async_client.py b/google/cloud/workflows_v1beta/services/workflows/async_client.py index 6505d3e..400868b 100644 --- a/google/cloud/workflows_v1beta/services/workflows/async_client.py +++ b/google/cloud/workflows_v1beta/services/workflows/async_client.py @@ -34,7 +34,8 @@ from google.api_core.client_options import ClientOptions from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources + +from google.cloud.workflows_v1beta import gapic_version as package_version try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -222,7 +223,7 @@ async def list_workflows( *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListWorkflowsAsyncPager: r"""Lists Workflows in a given project and location. @@ -342,7 +343,7 @@ async def get_workflow( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> workflows.Workflow: r"""Gets details of a single Workflow. @@ -448,7 +449,7 @@ async def create_workflow( workflow: Optional[workflows.Workflow] = None, workflow_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Creates a new workflow. If a workflow with the specified name @@ -486,7 +487,7 @@ async def sample_create_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) @@ -600,7 +601,7 @@ async def delete_workflow( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Deletes a workflow with the specified name. @@ -632,7 +633,7 @@ async def sample_delete_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) @@ -729,7 +730,7 @@ async def update_workflow( workflow: Optional[workflows.Workflow] = None, update_mask: Optional[field_mask_pb2.FieldMask] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Updates an existing workflow. @@ -767,7 +768,7 @@ async def sample_update_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) @@ -866,14 +867,9 @@ async def __aexit__(self, exc_type, exc, tb): await self.transport.close() -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) __all__ = ("WorkflowsAsyncClient",) diff --git a/google/cloud/workflows_v1beta/services/workflows/client.py b/google/cloud/workflows_v1beta/services/workflows/client.py index 5537779..984a6e7 100644 --- a/google/cloud/workflows_v1beta/services/workflows/client.py +++ b/google/cloud/workflows_v1beta/services/workflows/client.py @@ -38,7 +38,8 @@ from google.auth.transport import mtls # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources + +from google.cloud.workflows_v1beta import gapic_version as package_version try: OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault] @@ -453,7 +454,7 @@ def list_workflows( *, parent: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListWorkflowsPager: r"""Lists Workflows in a given project and location. @@ -573,7 +574,7 @@ def get_workflow( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> workflows.Workflow: r"""Gets details of a single Workflow. @@ -679,7 +680,7 @@ def create_workflow( workflow: Optional[workflows.Workflow] = None, workflow_id: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Creates a new workflow. If a workflow with the specified name @@ -831,7 +832,7 @@ def delete_workflow( *, name: Optional[str] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Deletes a workflow with the specified name. @@ -960,7 +961,7 @@ def update_workflow( workflow: Optional[workflows.Workflow] = None, update_mask: Optional[field_mask_pb2.FieldMask] = None, retry: OptionalRetry = gapic_v1.method.DEFAULT, - timeout: Optional[float] = None, + timeout: Union[float, object] = gapic_v1.method.DEFAULT, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: r"""Updates an existing workflow. @@ -1104,14 +1105,9 @@ def __exit__(self, type, value, traceback): self.transport.close() -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) __all__ = ("WorkflowsClient",) diff --git a/google/cloud/workflows_v1beta/services/workflows/transports/base.py b/google/cloud/workflows_v1beta/services/workflows/transports/base.py index a9e2f1d..f943909 100644 --- a/google/cloud/workflows_v1beta/services/workflows/transports/base.py +++ b/google/cloud/workflows_v1beta/services/workflows/transports/base.py @@ -24,18 +24,13 @@ from google.auth import credentials as ga_credentials # type: ignore from google.longrunning import operations_pb2 # type: ignore from google.oauth2 import service_account # type: ignore -import pkg_resources +from google.cloud.workflows_v1beta import gapic_version as package_version from google.cloud.workflows_v1beta.types import workflows -try: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( - gapic_version=pkg_resources.get_distribution( - "google-cloud-workflows", - ).version, - ) -except pkg_resources.DistributionNotFound: - DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() +DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( + gapic_version=package_version.__version__ +) class WorkflowsTransport(abc.ABC): diff --git a/release-please-config.json b/release-please-config.json index 2cbf984..13b48eb 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -6,6 +6,10 @@ "extra-files": [ "google/cloud/workflows/executions/gapic_version.py", "google/cloud/workflows/gapic_version.py", + "google/cloud/workflows_v1/gapic_version.py", + "google/cloud/workflows_v1beta/gapic_version.py", + "google/cloud/workflows/executions_v1/gapic_version.py", + "google/cloud/workflows/executions_v1beta/gapic_version.py", { "type": "json", "path": "samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json", diff --git a/samples/generated_samples/workflows_v1_generated_workflows_create_workflow_async.py b/samples/generated_samples/workflows_v1_generated_workflows_create_workflow_async.py index ccc2b79..4aa4e06 100644 --- a/samples/generated_samples/workflows_v1_generated_workflows_create_workflow_async.py +++ b/samples/generated_samples/workflows_v1_generated_workflows_create_workflow_async.py @@ -53,7 +53,7 @@ async def sample_create_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) diff --git a/samples/generated_samples/workflows_v1_generated_workflows_delete_workflow_async.py b/samples/generated_samples/workflows_v1_generated_workflows_delete_workflow_async.py index b1d2d03..2637681 100644 --- a/samples/generated_samples/workflows_v1_generated_workflows_delete_workflow_async.py +++ b/samples/generated_samples/workflows_v1_generated_workflows_delete_workflow_async.py @@ -48,7 +48,7 @@ async def sample_delete_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) diff --git a/samples/generated_samples/workflows_v1_generated_workflows_update_workflow_async.py b/samples/generated_samples/workflows_v1_generated_workflows_update_workflow_async.py index 2c95cd1..7efc1d1 100644 --- a/samples/generated_samples/workflows_v1_generated_workflows_update_workflow_async.py +++ b/samples/generated_samples/workflows_v1_generated_workflows_update_workflow_async.py @@ -51,7 +51,7 @@ async def sample_update_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) diff --git a/samples/generated_samples/workflows_v1beta_generated_workflows_create_workflow_async.py b/samples/generated_samples/workflows_v1beta_generated_workflows_create_workflow_async.py index c984c5e..a81a31d 100644 --- a/samples/generated_samples/workflows_v1beta_generated_workflows_create_workflow_async.py +++ b/samples/generated_samples/workflows_v1beta_generated_workflows_create_workflow_async.py @@ -53,7 +53,7 @@ async def sample_create_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) diff --git a/samples/generated_samples/workflows_v1beta_generated_workflows_delete_workflow_async.py b/samples/generated_samples/workflows_v1beta_generated_workflows_delete_workflow_async.py index 9a16f6d..cf9ef73 100644 --- a/samples/generated_samples/workflows_v1beta_generated_workflows_delete_workflow_async.py +++ b/samples/generated_samples/workflows_v1beta_generated_workflows_delete_workflow_async.py @@ -48,7 +48,7 @@ async def sample_delete_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) diff --git a/samples/generated_samples/workflows_v1beta_generated_workflows_update_workflow_async.py b/samples/generated_samples/workflows_v1beta_generated_workflows_update_workflow_async.py index 6704a41..b411bc8 100644 --- a/samples/generated_samples/workflows_v1beta_generated_workflows_update_workflow_async.py +++ b/samples/generated_samples/workflows_v1beta_generated_workflows_update_workflow_async.py @@ -51,7 +51,7 @@ async def sample_update_workflow(): print("Waiting for operation to complete...") - response = await operation.result() + response = (await operation).result() # Handle the response print(response) diff --git a/setup.py b/setup.py index 601a86a..f4d31da 100644 --- a/setup.py +++ b/setup.py @@ -36,7 +36,7 @@ release_status = "Development Status :: 5 - Production/Stable" dependencies = [ - "google-api-core[grpc] >= 1.33.2, <3.0.0dev,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*", + "google-api-core[grpc] >= 1.34.0, <3.0.0dev,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*,!=2.8.*,!=2.9.*,!=2.10.*", "proto-plus >= 1.22.0, <2.0.0dev", "protobuf>=3.19.5,<5.0.0dev,!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", ] diff --git a/testing/constraints-3.7.txt b/testing/constraints-3.7.txt index 6f3158c..6c44adf 100644 --- a/testing/constraints-3.7.txt +++ b/testing/constraints-3.7.txt @@ -4,6 +4,6 @@ # Pin the version to the lower bound. # e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0dev", # Then this file should have google-cloud-foo==1.14.0 -google-api-core==1.33.2 +google-api-core==1.34.0 proto-plus==1.22.0 protobuf==3.19.5 From 3d74ab9c20782f34d0a3986c80efe34fefa0c916 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 8 Dec 2022 14:30:01 -0500 Subject: [PATCH 5/6] build(deps): bump certifi from 2022.9.24 to 2022.12.7 in /synthtool/gcp/templates/python_library/.kokoro (#231) Source-Link: https://github.com/googleapis/synthtool/commit/b4fe62efb5114b6738ad4b13d6f654f2bf4b7cc0 Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:3bf87e47c2173d7eed42714589dc4da2c07c3268610f1e47f8e1a30decbfc7f1 Co-authored-by: Owl Bot --- .github/.OwlBot.lock.yaml | 2 +- .kokoro/requirements.txt | 6 +++--- .pre-commit-config.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml index 3f1ccc0..fccaa8e 100644 --- a/.github/.OwlBot.lock.yaml +++ b/.github/.OwlBot.lock.yaml @@ -13,4 +13,4 @@ # limitations under the License. docker: image: gcr.io/cloud-devrel-public-resources/owlbot-python:latest - digest: sha256:e6cbd61f1838d9ff6a31436dfc13717f372a7482a82fc1863ca954ec47bff8c8 + digest: sha256:3bf87e47c2173d7eed42714589dc4da2c07c3268610f1e47f8e1a30decbfc7f1 diff --git a/.kokoro/requirements.txt b/.kokoro/requirements.txt index 9c1b9be..05dc467 100644 --- a/.kokoro/requirements.txt +++ b/.kokoro/requirements.txt @@ -20,9 +20,9 @@ cachetools==5.2.0 \ --hash=sha256:6a94c6402995a99c3970cc7e4884bb60b4a8639938157eeed436098bf9831757 \ --hash=sha256:f9f17d2aec496a9aa6b76f53e3b614c965223c061982d434d160f930c698a9db # via google-auth -certifi==2022.9.24 \ - --hash=sha256:0d9c601124e5a6ba9712dbc60d9c53c21e34f5f641fe83002317394311bdce14 \ - --hash=sha256:90c1a32f1d68f940488354e36370f6cca89f0f106db09518524c88d6ed83f382 +certifi==2022.12.7 \ + --hash=sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3 \ + --hash=sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18 # via requests cffi==1.15.1 \ --hash=sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5 \ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 46d2371..5405cc8 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -25,7 +25,7 @@ repos: rev: 22.3.0 hooks: - id: black -- repo: https://gitlab.com/pycqa/flake8 +- repo: https://github.com/pycqa/flake8 rev: 3.9.2 hooks: - id: flake8 From 0cc8899702b374d32b75f2493b41fe3df1d927db Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 15 Dec 2022 12:16:57 -0500 Subject: [PATCH 6/6] chore(main): release 1.8.0 (#229) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- .release-please-manifest.json | 2 +- CHANGELOG.md | 22 +++++++++++++++++++ .../workflows/executions_v1/gapic_version.py | 2 +- .../executions_v1beta/gapic_version.py | 2 +- google/cloud/workflows/gapic_version.py | 2 +- google/cloud/workflows_v1/gapic_version.py | 2 +- .../cloud/workflows_v1beta/gapic_version.py | 2 +- ...et_metadata_google.cloud.workflows.v1.json | 2 +- ...etadata_google.cloud.workflows.v1beta.json | 2 +- 9 files changed, 30 insertions(+), 8 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 54e21e5..099626f 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.7.4" + ".": "1.8.0" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 72d5fa3..56cab4a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,27 @@ # Changelog +## [1.8.0](https://github.com/googleapis/python-workflows/compare/v1.7.4...v1.8.0) (2022-12-08) + + +### Features + +* add support for `google.cloud.workflows.__version__` ([f234644](https://github.com/googleapis/python-workflows/commit/f23464470009cbdd0c4893263dbfdeba26c80419)) +* Add typing to proto.Message based class attributes ([f234644](https://github.com/googleapis/python-workflows/commit/f23464470009cbdd0c4893263dbfdeba26c80419)) + + +### Bug Fixes + +* Add dict typing for client_options ([f234644](https://github.com/googleapis/python-workflows/commit/f23464470009cbdd0c4893263dbfdeba26c80419)) +* **deps:** Require google-api-core >=1.34.0, >=2.11.0 ([566af4a](https://github.com/googleapis/python-workflows/commit/566af4a9d2a4c74f7a43e02b08f30bd8a7eae24f)) +* Drop usage of pkg_resources ([566af4a](https://github.com/googleapis/python-workflows/commit/566af4a9d2a4c74f7a43e02b08f30bd8a7eae24f)) +* Fix timeout default values ([566af4a](https://github.com/googleapis/python-workflows/commit/566af4a9d2a4c74f7a43e02b08f30bd8a7eae24f)) + + +### Documentation + +* **samples:** Snippetgen handling of repeated enum field ([f234644](https://github.com/googleapis/python-workflows/commit/f23464470009cbdd0c4893263dbfdeba26c80419)) +* **samples:** Snippetgen should call await on the operation coroutine before calling result ([566af4a](https://github.com/googleapis/python-workflows/commit/566af4a9d2a4c74f7a43e02b08f30bd8a7eae24f)) + ## [1.7.4](https://github.com/googleapis/python-workflows/compare/v1.7.3...v1.7.4) (2022-10-07) diff --git a/google/cloud/workflows/executions_v1/gapic_version.py b/google/cloud/workflows/executions_v1/gapic_version.py index 3372e01..b334dcc 100644 --- a/google/cloud/workflows/executions_v1/gapic_version.py +++ b/google/cloud/workflows/executions_v1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "1.7.4" # {x-release-please-version} +__version__ = "1.8.0" # {x-release-please-version} diff --git a/google/cloud/workflows/executions_v1beta/gapic_version.py b/google/cloud/workflows/executions_v1beta/gapic_version.py index 3372e01..b334dcc 100644 --- a/google/cloud/workflows/executions_v1beta/gapic_version.py +++ b/google/cloud/workflows/executions_v1beta/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "1.7.4" # {x-release-please-version} +__version__ = "1.8.0" # {x-release-please-version} diff --git a/google/cloud/workflows/gapic_version.py b/google/cloud/workflows/gapic_version.py index 3372e01..b334dcc 100644 --- a/google/cloud/workflows/gapic_version.py +++ b/google/cloud/workflows/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "1.7.4" # {x-release-please-version} +__version__ = "1.8.0" # {x-release-please-version} diff --git a/google/cloud/workflows_v1/gapic_version.py b/google/cloud/workflows_v1/gapic_version.py index 3372e01..b334dcc 100644 --- a/google/cloud/workflows_v1/gapic_version.py +++ b/google/cloud/workflows_v1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "1.7.4" # {x-release-please-version} +__version__ = "1.8.0" # {x-release-please-version} diff --git a/google/cloud/workflows_v1beta/gapic_version.py b/google/cloud/workflows_v1beta/gapic_version.py index 3372e01..b334dcc 100644 --- a/google/cloud/workflows_v1beta/gapic_version.py +++ b/google/cloud/workflows_v1beta/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "1.7.4" # {x-release-please-version} +__version__ = "1.8.0" # {x-release-please-version} diff --git a/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1.json b/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1.json index 5eeb3c2..01a9419 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-workflows", - "version": "0.1.0" + "version": "1.8.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json b/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json index e6e1022..87ccc04 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.workflows.v1beta.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-workflows", - "version": "0.1.0" + "version": "1.8.0" }, "snippets": [ {