Skip to content

Commit 00c2a5f

Browse files
arithmetic1728jmdobryJon Wayne Parrottdpebotgguuss
authored andcommitted
chore: move samples from python-docs-sample (#45)
* Add new "quickstart" samples [(#547)](#547) * Quickstart tests [(#569)](#569) * Add tests for quickstarts * Update secrets * Fix vision failure on Python 3 Change-Id: Ieb53e6cdd8b1a70089b970b7a2aa57dd3d24c3de * Generate most non-appengine readmes Change-Id: I3779282126cdd05b047194d356932b9995484115 * Update samples to support latest Google Cloud Python [(#656)](#656) * Auto-update dependencies. [(#715)](#715) * Vision cloud client snippets [(#751)](#751) * fixes typo in detect_properties [(#761)](#761) * Vision 1.1 [(#827)](#827) * Adds vision 1.1 features * Update README * Updates GCS snippet to match local file [(#836)](#836) * Improvess consistency in docs and fixes links in restructured text [(#839)](#839) * Auto-update dependencies. [(#825)](#825) * Crop hints tutorial [(#861)](#861) * Adds crop hints tutorial. * Uses aspect ratio so that we actually crop. * Addresses review feedback * nits * Restructures samples for CI * Auto-update dependencies. [(#866)](#866) * Adds document text detection tutorial. [(#868)](#868) * Adds document text detection tutorial. * Feedback from review * Less whitespace and fewer hanging indents * Fixes a few style issues that came up in document text review. [(#871)](#871) * Fixes a few style issues that came up in document text review. * Fixing my breaks * Auto-update dependencies. [(#872)](#872) * An attempt at flattening the detect example [(#873)](#873) * Adds web detection tutorial [(#874)](#874) * Vision face tutorial [(#880)](#880) * Updates sample to use the Cloud client library * Nits found after commit * Nudge for travis * flake8 hates my face * Auto-update dependencies. [(#876)](#876) * Remove cloud config fixture [(#887)](#887) * Remove cloud config fixture * Fix client secrets * Fix bigtable instance * Auto-update dependencies. [(#888)](#888) * Remove resource [(#890)](#890) * Remove resource fixture * Remove remote resource * Re-generate all readmes * Auto-update dependencies. [(#922)](#922) * Auto-update dependencies. * Fix pubsub iam samples * Adds checks for all features using https. [(#944)](#944) * Adds checks for all features using https. * Fixes overindent for lint * Fix README rst links [(#962)](#962) * Fix README rst links * Update all READMEs * Auto-update dependencies. [(#1004)](#1004) * Auto-update dependencies. * Fix natural language samples * Fix pubsub iam samples * Fix language samples * Fix bigquery samples * Auto-update dependencies. [(#1011)](#1011) * Auto-update dependencies. [(#1033)](#1033) * Vision GAPIC client library [(#1015)](#1015) * Migrate quickstart to gapic * formatting * updating detect_faces, failing tests * Migrate detect_faces to gapic * Migrate detect_labels to gapic * Migrate detect_landmarks to gapic * Migrate detect_logos to gapic * remove "Likelihood" from test outputs * Migrate detect_safe_search to gapic * Migrate detect_text to gapic * Migrate detect_properties to gapic * Migrate detect_web to gapic * Migrate crophints to gapic * Migrate detect_document to gapic; * Migrate crop_hints.py to gapic * hard code the likelihood names * Make code snippets more self-contained * Migrate doctext.py to gapic * Migrate web_detect.py to gapic * Migrate faces.py to gapic * flake8 * fix missing string format * remove url scores from sample output * region tags update * region tag correction * move region tag in get crop hints * move region tags * import style * client creation * rename bound to vertex * add region tags * increment client library version * update README to include link to the migration guide * correct version number * update readme * update client library version in requirements and readme * Auto-update dependencies. [(#1055)](#1055) * Auto-update dependencies. * Explicitly use latest bigtable client Change-Id: Id71e9e768f020730e4ca9514a0d7ebaa794e7d9e * Revert language update for now Change-Id: I8867f154e9a5aae00d0047c9caf880e5e8f50c53 * Remove pdb. smh Change-Id: I5ff905fadc026eebbcd45512d4e76e003e3b2b43 * Auto-update dependencies. [(#1093)](#1093) * Auto-update dependencies. * Fix storage notification poll sample Change-Id: I6afbc79d15e050531555e4c8e51066996717a0f3 * Fix spanner samples Change-Id: I40069222c60d57e8f3d3878167591af9130895cb * Drop coverage because it's not useful Change-Id: Iae399a7083d7866c3c7b9162d0de244fbff8b522 * Try again to fix flaky logging test Change-Id: I6225c074701970c17c426677ef1935bb6d7e36b4 * Update all generated readme auth instructions [(#1121)](#1121) Change-Id: I03b5eaef8b17ac3dc3c0339fd2c7447bd3e11bd2 * Added Link to Python Setup Guide [(#1158)](#1158) * Update Readme.rst to add Python setup guide As requested in b/64770713. This sample is linked in documentation https://cloud.google.com/bigtable/docs/scaling, and it would make more sense to update the guide here than in the documentation. * Update README.rst * Update README.rst * Update README.rst * Update README.rst * Update README.rst * Update install_deps.tmpl.rst * Updated readmegen scripts and re-generated related README files * Fixed the lint error * Auto-update dependencies. [(#1138)](#1138) * Auto-update dependencies. [(#1186)](#1186) * Auto-update dependencies. [(#1245)](#1245) * Vision beta [(#1211)](#1211) * remove unicode [(#1246)](#1246) * Added "Open in Cloud Shell" buttons to README files [(#1254)](#1254) * Auto-update dependencies. [(#1282)](#1282) * Auto-update dependencies. * Fix storage acl sample Change-Id: I413bea899fdde4c4859e4070a9da25845b81f7cf * Auto-update dependencies. [(#1320)](#1320) * Vision API features update [(#1339)](#1339) * Revert "Vision API features update [(#1339)](#1339)" [(#1351)](#1351) This reverts commit fba66eec5b72a8313eb3fba0a6601306801b9212. * Auto-update dependencies. [(#1377)](#1377) * Auto-update dependencies. * Update requirements.txt * fix landmark sample [(#1424)](#1424) * Vision GA [(#1427)](#1427) * replace types. with vision.types. in detect.py * copy beta code snippets * update tests, flake * remove beta_snippets * update command line interface to include web-geo samples * flake * simplify detect document text * [DO NOT MERGE] Vision API OCR PDF/TIFF sample [(#1420)](#1420) * add docpdf sample * import order * list blobs * filename change * add the renamed files * parse json string to AnnotateFileResponse message * show more of the response * simplify response processing to better focus on how to make the request * fix typo * linter * linter * linter * Regenerate the README files and fix the Open in Cloud Shell link for some samples [(#1441)](#1441) * detect-pdf update [(#1460)](#1460) * detect-pdf update * update test * Update READMEs to fix numbering and add git clone [(#1464)](#1464) * Move ocr pdf/tiff samples to GA [(#1522)](#1522) * Move ocr pdf/tiff samples to GA * Remove blank spaces and fragment * Fix the vision geo test. [(#1518)](#1518) Sometimes, Vision sees Zepra. Othertimes, it sees Electra Tower. * [DO_NOT_MERGE] Add samples for object localization and handwritten ocr [(#1572)](#1572) * Add samples for object localization and handwritten ocr * Update to released lib * Update beta_snippets.py * [DO NOT MERGE] Product search [(#1580)](#1580) Product search * Update vision web_detect test image [(#1607)](#1607) The original image no longer appears on cloud.google.com/vision * Vision - remove unused region tags [(#1620)](#1620) * Vision region tag update [(#1635)](#1635) * Udpate Beta Vision samples to use beta tags [(#1640)](#1640) * Update samples to GA, cleanup tests, delete old samples [(#1704)](#1704) * Add print output to crop hints tutorial [(#1797)](#1797) * Remove unused code [(#1745)](#1745) * Display the score/confidence value [(#1429)](#1429) * Display the score/confidence value A small code addition to display the score/confidence value of a detected face above the face detection box on the output image. This is very useful to know the confidence! * Changes applied to meet coding style requirements I have edited the already submitted code to meet the coding style requirements! * Edits because white spaces * Remove [(#1431)](#1431) I'm updating all the openapi files in the getting-started sample in all the sample repos to remove basePath: "/" Here's the reason from simonz130: From the OpenAPI 2 spec: * basePath: "If it is not included, the API is served directly under the host. The value MUST start with a leading slash (/). " * Paths for methods: "A relative path to an individual endpoint. The field name MUST begin with a slash. The path is appended to the basePath in order to construct the full URL." This OpenAPI getting-started sample have basePath: "/", which (per strict spec interpretation) means all the paths start with double-slashes. (e.g "//v1/shelves" rather than "/v1/shelves"). Removing basepath="/" fixes that. * Auto-update dependencies. [(#1846)](#1846) ACK, merging. * update samples for product search GA [(#1861)](#1861) * update samples for product search GA * update to use 0.35.1 * Use default font [(#1865)](#1865) Test environment does not support all fonts. * use shared sample data bucket [(#1874)](#1874) * Pass max_results through to API - issue #1173 [(#1917)](#1917) * Fix Vision Product Search sample comment typo [(#1897)](#1897) * vision: update samples to address changes in model annotations. [(#1991)](#1991) changes to the vision model evaluation changed annotations for some of the sample data used in these tests. This corrects those expectations to reflect current evaluation. Background: internal issue 123358697 * Auto-update dependencies. [(#1980)](#1980) * Auto-update dependencies. * Update requirements.txt * Update requirements.txt * Vision API: further fixes. [(#2002)](#2002) * Vision API: further fixes. Redirects testing to the central cloud-samples-data asset bucket. Relaxes case considerations. Addresses web subtests, missed in previous PR. * Added two samples for "OCR with PDF/TIFF as source files" [(#2034)](#2034) * Added two samples for "OCR with PDF/TIFF as source files" * Moved the code to beta_snippets.py * Fixed the sub-parser names. * Shortened the line that was too long. * Added newline at the end of the file * Using the builtin open function instead * Renamed a variable * Fixed the wrong arg parameter * Added extra comment lines * Regenerated README.rst * Added specific strings to be unit-tested * Added the sample for async image batch annotation [(#2045)](#2045) * Added the sample for async image batch annotation * Fixed the wrong function name * Changes based on Noah's comments. * Need newer library version for latest beta [(#2052)](#2052) * Fixed string in test [(#2135)](#2135) * Fixed string in test * Updated to latest AutoML * Update detect.py [(#2174)](#2174) 1) I got argument parse error when bucket_name=bucket_name is given 2)blob_list[0] gave me folder name * Revert "Update detect.py" [(#2274)](#2274) * Revert "Update detect.py [(#2174)](#2174)" This reverts commit 6eaad9a3166ab3262c1211c2f41fb4b5d8234b7d. * Update beta_snippets_test.py * Update beta_snippets.py * Update detect.py * Move import inside region tags [(#2211)](#2211) * Move import inside region tags * Update detect.py * Fix comment. [(#2108)](#2108) Comment should reflect real filename. * Fix a typo in output message / remove duplicate parser assignment. [(#1999)](#1999) * Fix a typo in output message. Fixes a minor typo error in the `draw_hint` function. Because the tutorial is one of the starting points for new users, it's worth correcting it to avoid confusion. * Remove duplicate `argparse` assignment. `argparse.ArgumentParser()` was assigned twice in if statement so removed the duplicate. * move import re [(#2303)](#2303) * Makes quickstart more REPL friendly [(#2354)](#2354) * vision geo test fix [(#2353)](#2353) Gus already LGTM * Purge products [(#2349)](#2349) * add vision_product_search_purge_products_in_product_set * add vision_product_search_purge_orphan_products * update comment * flake * update print message * update python sample to use operation.result * longer timeout * remove unused variable * Adds updates for samples profiler ... vision [(#2439)](#2439) * Update Pillow dependency per security alert CVE-2019-16865 [(#2492)](#2492) * Add Set Endpoint Samples [(#2497)](#2497) * Add Set Endpoint Samples * Add additional test result option * Sample Request update * Add filter_ * Auto-update dependencies. [(#2005)](#2005) * Auto-update dependencies. * Revert update of appengine/flexible/datastore. * revert update of appengine/flexible/scipy * revert update of bigquery/bqml * revert update of bigquery/cloud-client * revert update of bigquery/datalab-migration * revert update of bigtable/quickstart * revert update of compute/api * revert update of container_registry/container_analysis * revert update of dataflow/run_template * revert update of datastore/cloud-ndb * revert update of dialogflow/cloud-client * revert update of dlp * revert update of functions/imagemagick * revert update of functions/ocr/app * revert update of healthcare/api-client/fhir * revert update of iam/api-client * revert update of iot/api-client/gcs_file_to_device * revert update of iot/api-client/mqtt_example * revert update of language/automl * revert update of run/image-processing * revert update of vision/automl * revert update testing/requirements.txt * revert update of vision/cloud-client/detect * revert update of vision/cloud-client/product_search * revert update of jobs/v2/api_client * revert update of jobs/v3/api_client * revert update of opencensus * revert update of translate/cloud-client * revert update to speech/cloud-client Co-authored-by: Kurtis Van Gent <[email protected]> Co-authored-by: Doug Mahugh <[email protected]> * fix: get bounds for blocks instead of pages [(#2705)](#2705) * fix: use `page.bounding_box` when feature is page Closes #2702 * fix: outline blocks instead of pages Co-authored-by: Leah E. Cole <[email protected]> * Add vision ocr set endpoint samples [(#2569)](#2569) * Add vision ocr set endpoint samples * Remove port number as it is optional in Python * Use unique output names * lint * Add support for python2 print statements * use uuid instead of datetime * remove all tests that use https as they perform duplicate work Co-authored-by: Leah E. Cole <[email protected]> * vision: update samples to throw errors if one occurs [(#2725)](#2725) * vision: update samples to throw errors if one occurs * Add link to error page docs * Add link to error message Co-authored-by: Leah E. Cole <[email protected]> Co-authored-by: Gus Class <[email protected]> * vision: move published samples into master [(#2743)](#2743) Add generated samples for Vision API Add required attribute mime_type Resolve encoding error in py2 Remove autogenerated warnings Remove coding: utf-8 line Remove argument encoding checks Remove CLI Remove unnecessary statics, variables, and imports Blacken with l=88 Remove unused region tag and comments Verify that there are no published links pointing to removed region tags Shorten docstring Replace concrete file path with "path/to/your/document.pdf" Co-authored-by: Yu-Han Liu <[email protected]> * fix: vision product search tests to call setup and teardown and use uuid [(#2830)](#2830) * vision: fix flaky test [(#2988)](#2988) * vision: fix flaky tests to be more generic in the results [(#2915)](#2915) * chore(deps): update dependency google-cloud-storage to v1.26.0 [(#3046)](#3046) * chore(deps): update dependency google-cloud-storage to v1.26.0 * chore(deps): specify dependencies by python version * chore: up other deps to try to remove errors Co-authored-by: Leah E. Cole <[email protected]> Co-authored-by: Leah Cole <[email protected]> * Clarifying comment for batch requests [(#3071)](#3071) * Clarifying comment for batch requests * vision: fixing linter for batch * vision: remove redundant flaky web test [(#3090)](#3090) Fix: #2880 * vision: fix flaky test [(#3091)](#3091) Fix: #2876 * chore(deps): update dependency google-cloud-vision to v0.42.0 [(#3170)](#3170) * chore(deps): update dependency pillow to v6.2.2 [(#3186)](#3186) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [pillow](https://python-pillow.org) ([source](https://togithub.com/python-pillow/Pillow)) | patch | `==6.2.1` -> `==6.2.2` | --- ### Release Notes <details> <summary>python-pillow/Pillow</summary> ### [`v6.2.2`](https://togithub.com/python-pillow/Pillow/blob/master/CHANGES.rst#&#8203;622-2020-01-02) [Compare Source](https://togithub.com/python-pillow/Pillow/compare/6.2.1...6.2.2) - This is the last Pillow release to support Python 2.7 [#&#8203;3642](https://togithub.com/python-pillow/Pillow/issues/3642) - Overflow checks for realloc for tiff decoding. CVE-2020-5310 [wiredfool, radarhere] - Catch SGI buffer overrun. CVE-2020-5311 [radarhere] - Catch PCX P mode buffer overrun. CVE-2020-5312 [radarhere] - Catch FLI buffer overrun. CVE-2020-5313 [radarhere] - Raise an error for an invalid number of bands in FPX image. CVE-2019-19911 [wiredfool, radarhere] </details> --- ### Renovate configuration :date: **Schedule**: At any time (no schedule defined). :vertical_traffic_light: **Automerge**: Disabled by config. Please merge this manually once you are satisfied. :recycle: **Rebasing**: Never, or you tick the rebase/retry checkbox. :no_bell: **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#GoogleCloudPlatform/python-docs-samples). * chore(deps): update dependency pillow to v7 [(#3218)](#3218) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [pillow](https://python-pillow.org) ([source](https://togithub.com/python-pillow/Pillow)) | major | `==6.2.2` -> `==7.1.0` | --- ### Release Notes <details> <summary>python-pillow/Pillow</summary> ### [`v7.1.0`](https://togithub.com/python-pillow/Pillow/blob/master/CHANGES.rst#&#8203;710-2020-04-01) [Compare Source](https://togithub.com/python-pillow/Pillow/compare/7.0.0...7.1.0) - Fix multiple OOB reads in FLI decoding [#&#8203;4503](https://togithub.com/python-pillow/Pillow/issues/4503) [wiredfool] - Fix buffer overflow in SGI-RLE decoding [#&#8203;4504](https://togithub.com/python-pillow/Pillow/issues/4504) [wiredfool, hugovk] - Fix bounds overflow in JPEG 2000 decoding [#&#8203;4505](https://togithub.com/python-pillow/Pillow/issues/4505) [wiredfool] - Fix bounds overflow in PCX decoding [#&#8203;4506](https://togithub.com/python-pillow/Pillow/issues/4506) [wiredfool] - Fix 2 buffer overflows in TIFF decoding [#&#8203;4507](https://togithub.com/python-pillow/Pillow/issues/4507) [wiredfool] - Add APNG support [#&#8203;4243](https://togithub.com/python-pillow/Pillow/issues/4243) [pmrowla, radarhere, hugovk] - ImageGrab.grab() for Linux with XCB [#&#8203;4260](https://togithub.com/python-pillow/Pillow/issues/4260) [nulano, radarhere] - Added three new channel operations [#&#8203;4230](https://togithub.com/python-pillow/Pillow/issues/4230) [dwastberg, radarhere] - Prevent masking of Image reduce method in Jpeg2KImagePlugin [#&#8203;4474](https://togithub.com/python-pillow/Pillow/issues/4474) [radarhere, homm] - Added reading of earlier ImageMagick PNG EXIF data [#&#8203;4471](https://togithub.com/python-pillow/Pillow/issues/4471) [radarhere] - Fixed endian handling for I;16 getextrema [#&#8203;4457](https://togithub.com/python-pillow/Pillow/issues/4457) [radarhere] - Release buffer if function returns prematurely [#&#8203;4381](https://togithub.com/python-pillow/Pillow/issues/4381) [radarhere] - Add JPEG comment to info dictionary [#&#8203;4455](https://togithub.com/python-pillow/Pillow/issues/4455) [radarhere] - Fix size calculation of Image.thumbnail() [#&#8203;4404](https://togithub.com/python-pillow/Pillow/issues/4404) [orlnub123] - Fixed stroke on FreeType &lt; 2.9 [#&#8203;4401](https://togithub.com/python-pillow/Pillow/issues/4401) [radarhere] - If present, only use alpha channel for bounding box [#&#8203;4454](https://togithub.com/python-pillow/Pillow/issues/4454) [radarhere] - Warn if an unknown feature is passed to features.check() [#&#8203;4438](https://togithub.com/python-pillow/Pillow/issues/4438) [jdufresne] - Fix Name field length when saving IM images [#&#8203;4424](https://togithub.com/python-pillow/Pillow/issues/4424) [hugovk, radarhere] - Allow saving of zero quality JPEG images [#&#8203;4440](https://togithub.com/python-pillow/Pillow/issues/4440) [radarhere] - Allow explicit zero width to hide outline [#&#8203;4334](https://togithub.com/python-pillow/Pillow/issues/4334) [radarhere] - Change ContainerIO return type to match file object mode [#&#8203;4297](https://togithub.com/python-pillow/Pillow/issues/4297) [jdufresne, radarhere] - Only draw each polygon pixel once [#&#8203;4333](https://togithub.com/python-pillow/Pillow/issues/4333) [radarhere] - Add support for shooting situation Exif IFD tags [#&#8203;4398](https://togithub.com/python-pillow/Pillow/issues/4398) [alexagv] - Handle multiple and malformed JPEG APP13 markers [#&#8203;4370](https://togithub.com/python-pillow/Pillow/issues/4370) [homm] - Depends: Update libwebp to 1.1.0 [#&#8203;4342](https://togithub.com/python-pillow/Pillow/issues/4342), libjpeg to 9d [#&#8203;4352](https://togithub.com/python-pillow/Pillow/issues/4352) [radarhere] ### [`v7.0.0`](https://togithub.com/python-pillow/Pillow/blob/master/CHANGES.rst#&#8203;700-2020-01-02) [Compare Source](https://togithub.com/python-pillow/Pillow/compare/6.2.2...7.0.0) - Drop support for EOL Python 2.7 [#&#8203;4109](https://togithub.com/python-pillow/Pillow/issues/4109) [hugovk, radarhere, jdufresne] - Fix rounding error on RGB to L conversion [#&#8203;4320](https://togithub.com/python-pillow/Pillow/issues/4320) [homm] - Exif writing fixes: Rational boundaries and signed/unsigned types [#&#8203;3980](https://togithub.com/python-pillow/Pillow/issues/3980) [kkopachev, radarhere] - Allow loading of WMF images at a given DPI [#&#8203;4311](https://togithub.com/python-pillow/Pillow/issues/4311) [radarhere] - Added reduce operation [#&#8203;4251](https://togithub.com/python-pillow/Pillow/issues/4251) [homm] - Raise ValueError for io.StringIO in Image.open [#&#8203;4302](https://togithub.com/python-pillow/Pillow/issues/4302) [radarhere, hugovk] - Fix thumbnail geometry when DCT scaling is used [#&#8203;4231](https://togithub.com/python-pillow/Pillow/issues/4231) [homm, radarhere] - Use default DPI when exif provides invalid x_resolution [#&#8203;4147](https://togithub.com/python-pillow/Pillow/issues/4147) [beipang2, radarhere] - Change default resize resampling filter from NEAREST to BICUBIC [#&#8203;4255](https://togithub.com/python-pillow/Pillow/issues/4255) [homm] - Fixed black lines on upscaled images with the BOX filter [#&#8203;4278](https://togithub.com/python-pillow/Pillow/issues/4278) [homm] - Better thumbnail aspect ratio preservation [#&#8203;4256](https://togithub.com/python-pillow/Pillow/issues/4256) [homm] - Add La mode packing and unpacking [#&#8203;4248](https://togithub.com/python-pillow/Pillow/issues/4248) [homm] - Include tests in coverage reports [#&#8203;4173](https://togithub.com/python-pillow/Pillow/issues/4173) [hugovk] - Handle broken Photoshop data [#&#8203;4239](https://togithub.com/python-pillow/Pillow/issues/4239) [radarhere] - Raise a specific exception if no data is found for an MPO frame [#&#8203;4240](https://togithub.com/python-pillow/Pillow/issues/4240) [radarhere] - Fix Unicode support for PyPy [#&#8203;4145](https://togithub.com/python-pillow/Pillow/issues/4145) [nulano] - Added UnidentifiedImageError [#&#8203;4182](https://togithub.com/python-pillow/Pillow/issues/4182) [radarhere, hugovk] - Remove deprecated **version** from plugins [#&#8203;4197](https://togithub.com/python-pillow/Pillow/issues/4197) [hugovk, radarhere] - Fixed freeing unallocated pointer when resizing with height too large [#&#8203;4116](https://togithub.com/python-pillow/Pillow/issues/4116) [radarhere] - Copy info in Image.transform [#&#8203;4128](https://togithub.com/python-pillow/Pillow/issues/4128) [radarhere] - Corrected DdsImagePlugin setting info gamma [#&#8203;4171](https://togithub.com/python-pillow/Pillow/issues/4171) [radarhere] - Depends: Update libtiff to 4.1.0 [#&#8203;4195](https://togithub.com/python-pillow/Pillow/issues/4195), Tk Tcl to 8.6.10 [#&#8203;4229](https://togithub.com/python-pillow/Pillow/issues/4229), libimagequant to 2.12.6 [#&#8203;4318](https://togithub.com/python-pillow/Pillow/issues/4318) [radarhere] - Improve handling of file resources [#&#8203;3577](https://togithub.com/python-pillow/Pillow/issues/3577) [jdufresne] - Removed CI testing of Fedora 29 [#&#8203;4165](https://togithub.com/python-pillow/Pillow/issues/4165) [hugovk] - Added pypy3 to tox envlist [#&#8203;4137](https://togithub.com/python-pillow/Pillow/issues/4137) [jdufresne] - Drop support for EOL PyQt4 and PySide [#&#8203;4108](https://togithub.com/python-pillow/Pillow/issues/4108) [hugovk, radarhere] - Removed deprecated setting of TIFF image sizes [#&#8203;4114](https://togithub.com/python-pillow/Pillow/issues/4114) [radarhere] - Removed deprecated PILLOW_VERSION [#&#8203;4107](https://togithub.com/python-pillow/Pillow/issues/4107) [hugovk] - Changed default frombuffer raw decoder args [#&#8203;1730](https://togithub.com/python-pillow/Pillow/issues/1730) [radarhere] </details> --- ### Renovate configuration :date: **Schedule**: At any time (no schedule defined). :vertical_traffic_light: **Automerge**: Disabled by config. Please merge this manually once you are satisfied. :recycle: **Rebasing**: Never, or you tick the rebase/retry checkbox. :no_bell: **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#GoogleCloudPlatform/python-docs-samples). * Simplify noxfile setup. [(#2806)](#2806) * chore(deps): update dependency requests to v2.23.0 * Simplify noxfile and add version control. * Configure appengine/standard to only test Python 2.7. * Update Kokokro configs to match noxfile. * Add requirements-test to each folder. * Remove Py2 versions from everything execept appengine/standard. * Remove conftest.py. * Remove appengine/standard/conftest.py * Remove 'no-sucess-flaky-report' from pytest.ini. * Add GAE SDK back to appengine/standard tests. * Fix typo. * Roll pytest to python 2 version. * Add a bunch of testing requirements. * Remove typo. * Add appengine lib directory back in. * Add some additional requirements. * Fix issue with flake8 args. * Even more requirements. * Readd appengine conftest.py. * Add a few more requirements. * Even more Appengine requirements. * Add webtest for appengine/standard/mailgun. * Add some additional requirements. * Add workaround for issue with mailjet-rest. * Add responses for appengine/standard/mailjet. Co-authored-by: Renovate Bot <[email protected]> * Update dependency google-cloud-vision to v1 [(#3227)](#3227) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [google-cloud-vision](https://togithub.com/googleapis/python-vision) | major | `==0.42.0` -> `==1.0.0` | --- ### Release Notes <details> <summary>googleapis/python-vision</summary> ### [`v1.0.0`](https://togithub.com/googleapis/python-vision/blob/master/CHANGELOG.md#&#8203;100-httpswwwgithubcomgoogleapispython-visioncomparev0420v100-2020-02-28) [Compare Source](https://togithub.com/googleapis/python-vision/compare/v0.42.0...v1.0.0) ##### Features - bump release status to GA ([#&#8203;11](https://www.github.com/googleapis/python-vision/issues/11)) ([2129bde](https://www.github.com/googleapis/python-vision/commit/2129bdedfa0dca85c5adc5350bff10d4a485df77)) </details> --- ### Renovate configuration :date: **Schedule**: At any time (no schedule defined). :vertical_traffic_light: **Automerge**: Disabled by config. Please merge this manually once you are satisfied. :recycle: **Rebasing**: Never, or you tick the rebase/retry checkbox. :no_bell: **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#GoogleCloudPlatform/python-docs-samples). * Update dependency pillow to v7.1.1 [(#3263)](#3263) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [pillow](https://python-pillow.org) ([source](https://togithub.com/python-pillow/Pillow)) | patch | `==7.1.0` -> `==7.1.1` | --- ### Release Notes <details> <summary>python-pillow/Pillow</summary> ### [`v7.1.1`](https://togithub.com/python-pillow/Pillow/blob/master/CHANGES.rst#&#8203;711-2020-04-02) [Compare Source](https://togithub.com/python-pillow/Pillow/compare/7.1.0...7.1.1) - Fix regression seeking and telling PNGs [#&#8203;4512](https://togithub.com/python-pillow/Pillow/issues/4512) [#&#8203;4514](https://togithub.com/python-pillow/Pillow/issues/4514) [hugovk, radarhere] </details> --- ### Renovate configuration :date: **Schedule**: At any time (no schedule defined). :vertical_traffic_light: **Automerge**: Disabled by config. Please merge this manually once you are satisfied. :recycle: **Rebasing**: Never, or you tick the rebase/retry checkbox. :no_bell: **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#GoogleCloudPlatform/python-docs-samples). * vision: increase timeout for tests [(#3383)](#3383) Fix: #2955 Fix: #2992 * [vision] fix: longer timeout [(#3447)](#3447) fixes #2962 * testing: replace @flaky with @pytest.mark.flaky [(#3496)](#3496) * testing: replace @flaky with @pytest.mark.flaky * lint * mark few tests as flaky that involves LRO polling. * lint * chore(deps): update dependency pillow to v7.1.2 [(#3557)](#3557) * chore(deps): update dependency google-cloud-storage to v1.28.0 [(#3260)](#3260) Co-authored-by: Takashi Matsuo <[email protected]> * [vision] fix: add timeout for LRO result and mark it as flaky [(#3684)](#3684) fixes #3674 * [vision] fix: mark a test as flaky [(#3709)](#3709) fixes #3702 * chore: some lint fixes [(#3751)](#3751) * chore: some lint fixes * longer timeout, more retries * disable detect_test.py::test_async_detect_document * [vision] testing: retry upon errors [(#3764)](#3764) fixes #3734 I only wrapped some of the tests. Potentially we can do it for everything. * [vision] testing: re-enable test_async_detect_document [(#3761)](#3761) fixes #3753 also made the data PDF to be smaller. * chore(deps): update dependency google-cloud-storage to v1.28.1 [(#3785)](#3785) * chore(deps): update dependency google-cloud-storage to v1.28.1 * [asset] testing: use uuid instead of time Co-authored-by: Takashi Matsuo <[email protected]> * Replace GCLOUD_PROJECT with GOOGLE_CLOUD_PROJECT. [(#4022)](#4022) * chore(deps): update dependency google-cloud-storage to v1.29.0 [(#4040)](#4040) * chore(deps): update dependency pillow to v7.2.0 [(#4208)](#4208) * testing(vision): use different ids for test functions [(#4227)](#4227) fixes #4224 * chore(deps): update dependency pytest to v5.4.3 [(#4279)](#4279) * chore(deps): update dependency pytest to v5.4.3 * specify pytest for python 2 in appengine Co-authored-by: Leah Cole <[email protected]> * Update dependency flaky to v3.7.0 [(#4300)](#4300) * Update dependency google-cloud-storage to v1.30.0 * Update dependency pytest to v6 [(#4390)](#4390) * feat: fixed doc string comment mismatch in Product Search [(#4432)](#4432) Changes documentation string for a GCS example from `file_path` to `image_uri`. * chore(deps): update dependency google-cloud-storage to v1.31.0 [(#4564)](#4564) Co-authored-by: Takashi Matsuo <[email protected]> * chore: update templates Co-authored-by: Jason Dobry <[email protected]> Co-authored-by: Jon Wayne Parrott <[email protected]> Co-authored-by: DPE bot <[email protected]> Co-authored-by: Gus Class <[email protected]> Co-authored-by: Brent Shaffer <[email protected]> Co-authored-by: Bill Prin <[email protected]> Co-authored-by: Yu-Han Liu <[email protected]> Co-authored-by: michaelawyu <[email protected]> Co-authored-by: Rebecca Taylor <[email protected]> Co-authored-by: Frank Natividad <[email protected]> Co-authored-by: Noah Negrey <[email protected]> Co-authored-by: Jeffrey Rennie <[email protected]> Co-authored-by: Tim Swast <[email protected]> Co-authored-by: Alix Hamilton <[email protected]> Co-authored-by: Rebecca Taylor <[email protected]> Co-authored-by: Krissda Prakalphakul <[email protected]> Co-authored-by: Peshmerge <[email protected]> Co-authored-by: navinger <[email protected]> Co-authored-by: Charles Engelke <[email protected]> Co-authored-by: shollyman <[email protected]> Co-authored-by: Shahin <[email protected]> Co-authored-by: Charles Engelke <[email protected]> Co-authored-by: Agnel Vishal <[email protected]> Co-authored-by: Grega Kespret <[email protected]> Co-authored-by: Da-Woon Chung <[email protected]> Co-authored-by: Yu-Han Liu <[email protected]> Co-authored-by: Torry Yang <[email protected]> Co-authored-by: Kurtis Van Gent <[email protected]> Co-authored-by: Doug Mahugh <[email protected]> Co-authored-by: Bu Sun Kim <[email protected]> Co-authored-by: Leah E. Cole <[email protected]> Co-authored-by: Michelle Casbon <[email protected]> Co-authored-by: WhiteSource Renovate <[email protected]> Co-authored-by: Leah Cole <[email protected]> Co-authored-by: Cameron Zahedi <[email protected]> Co-authored-by: Takashi Matsuo <[email protected]> Co-authored-by: Eric Schmidt <[email protected]>
1 parent 0427b46 commit 00c2a5f

File tree

93 files changed

+7173
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

93 files changed

+7173
-0
lines changed

vision/AUTHORING_GUIDE.md

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
See https://github.com/GoogleCloudPlatform/python-docs-samples/blob/master/AUTHORING_GUIDE.md

vision/CONTRIBUTING.md

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
See https://github.com/GoogleCloudPlatform/python-docs-samples/blob/master/CONTRIBUTING.md

vision/snippets/crop_hints/.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
output-crop.jpg
2+
output-hint.jpg

vision/snippets/crop_hints/README.rst

+111
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
.. This file is automatically generated. Do not edit this file directly.
2+
3+
Google Cloud Vision API Python Samples
4+
===============================================================================
5+
6+
.. image:: https://gstatic.com/cloudssh/images/open-btn.png
7+
:target: https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/GoogleCloudPlatform/python-docs-samples&page=editor&open_in_editor=vision/cloud-client/crop_hints/README.rst
8+
9+
10+
This directory contains samples for Google Cloud Vision API. `Google Cloud Vision API`_ allows developers to easily integrate vision detection features within applications, including image labeling, face and landmark detection, optical character recognition (OCR), and tagging of explicit content.
11+
12+
- See the `migration guide`_ for information about migrating to Python client library v0.25.1.
13+
14+
.. _migration guide: https://cloud.google.com/vision/docs/python-client-migration
15+
16+
17+
18+
19+
.. _Google Cloud Vision API: https://cloud.google.com/vision/docs
20+
21+
Setup
22+
-------------------------------------------------------------------------------
23+
24+
25+
Authentication
26+
++++++++++++++
27+
28+
This sample requires you to have authentication setup. Refer to the
29+
`Authentication Getting Started Guide`_ for instructions on setting up
30+
credentials for applications.
31+
32+
.. _Authentication Getting Started Guide:
33+
https://cloud.google.com/docs/authentication/getting-started
34+
35+
Install Dependencies
36+
++++++++++++++++++++
37+
38+
#. Clone python-docs-samples and change directory to the sample directory you want to use.
39+
40+
.. code-block:: bash
41+
42+
$ git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
43+
44+
#. Install `pip`_ and `virtualenv`_ if you do not already have them. You may want to refer to the `Python Development Environment Setup Guide`_ for Google Cloud Platform for instructions.
45+
46+
.. _Python Development Environment Setup Guide:
47+
https://cloud.google.com/python/setup
48+
49+
#. Create a virtualenv. Samples are compatible with Python 2.7 and 3.4+.
50+
51+
.. code-block:: bash
52+
53+
$ virtualenv env
54+
$ source env/bin/activate
55+
56+
#. Install the dependencies needed to run the samples.
57+
58+
.. code-block:: bash
59+
60+
$ pip install -r requirements.txt
61+
62+
.. _pip: https://pip.pypa.io/
63+
.. _virtualenv: https://virtualenv.pypa.io/
64+
65+
Samples
66+
-------------------------------------------------------------------------------
67+
68+
Crop Hints Tutorial
69+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
70+
71+
.. image:: https://gstatic.com/cloudssh/images/open-btn.png
72+
:target: https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/GoogleCloudPlatform/python-docs-samples&page=editor&open_in_editor=vision/cloud-client/crop_hints/crop_hints.py,vision/cloud-client/crop_hints/README.rst
73+
74+
75+
76+
77+
To run this sample:
78+
79+
.. code-block:: bash
80+
81+
$ python crop_hints.py
82+
83+
usage: crop_hints.py [-h] image_file mode
84+
85+
positional arguments:
86+
image_file The image you'd like to crop.
87+
mode Set to "crop" or "draw".
88+
89+
optional arguments:
90+
-h, --help show this help message and exit
91+
92+
93+
94+
95+
96+
The client library
97+
-------------------------------------------------------------------------------
98+
99+
This sample uses the `Google Cloud Client Library for Python`_.
100+
You can read the documentation for more details on API usage and use GitHub
101+
to `browse the source`_ and `report issues`_.
102+
103+
.. _Google Cloud Client Library for Python:
104+
https://googlecloudplatform.github.io/google-cloud-python/
105+
.. _browse the source:
106+
https://github.com/GoogleCloudPlatform/google-cloud-python
107+
.. _report issues:
108+
https://github.com/GoogleCloudPlatform/google-cloud-python/issues
109+
110+
111+
.. _Google Cloud SDK: https://cloud.google.com/sdk/
+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# This file is used to generate README.rst
2+
3+
product:
4+
name: Google Cloud Vision API
5+
short_name: Cloud Vision API
6+
url: https://cloud.google.com/vision/docs
7+
description: >
8+
`Google Cloud Vision API`_ allows developers to easily integrate vision
9+
detection features within applications, including image labeling, face and
10+
landmark detection, optical character recognition (OCR), and tagging of
11+
explicit content.
12+
13+
14+
- See the `migration guide`_ for information about migrating to Python client library v0.25.1.
15+
16+
17+
.. _migration guide: https://cloud.google.com/vision/docs/python-client-migration
18+
19+
setup:
20+
- auth
21+
- install_deps
22+
23+
samples:
24+
- name: Crop Hints Tutorial
25+
file: crop_hints.py
26+
show_help: True
27+
28+
cloud_client_library: true
29+
30+
folder: vision/cloud-client/crop_hints
+99
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
#!/usr/bin/env python
2+
3+
# Copyright 2017 Google Inc. All Rights Reserved.
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License");
6+
# you may not use this file except in compliance with the License.
7+
# You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
"""Outputs a cropped image or an image highlighting crop regions on an image.
18+
19+
Examples:
20+
python crop_hints.py resources/cropme.jpg draw
21+
python crop_hints.py resources/cropme.jpg crop
22+
"""
23+
# [START vision_crop_hints_tutorial]
24+
# [START vision_crop_hints_tutorial_imports]
25+
import argparse
26+
import io
27+
28+
from google.cloud import vision
29+
from google.cloud.vision import types
30+
from PIL import Image, ImageDraw
31+
# [END vision_crop_hints_tutorial_imports]
32+
33+
34+
def get_crop_hint(path):
35+
# [START vision_crop_hints_tutorial_get_crop_hints]
36+
"""Detect crop hints on a single image and return the first result."""
37+
client = vision.ImageAnnotatorClient()
38+
39+
with io.open(path, 'rb') as image_file:
40+
content = image_file.read()
41+
42+
image = types.Image(content=content)
43+
44+
crop_hints_params = types.CropHintsParams(aspect_ratios=[1.77])
45+
image_context = types.ImageContext(crop_hints_params=crop_hints_params)
46+
47+
response = client.crop_hints(image=image, image_context=image_context)
48+
hints = response.crop_hints_annotation.crop_hints
49+
50+
# Get bounds for the first crop hint using an aspect ratio of 1.77.
51+
vertices = hints[0].bounding_poly.vertices
52+
# [END vision_crop_hints_tutorial_get_crop_hints]
53+
54+
return vertices
55+
56+
57+
def draw_hint(image_file):
58+
"""Draw a border around the image using the hints in the vector list."""
59+
# [START vision_crop_hints_tutorial_draw_crop_hints]
60+
vects = get_crop_hint(image_file)
61+
62+
im = Image.open(image_file)
63+
draw = ImageDraw.Draw(im)
64+
draw.polygon([
65+
vects[0].x, vects[0].y,
66+
vects[1].x, vects[1].y,
67+
vects[2].x, vects[2].y,
68+
vects[3].x, vects[3].y], None, 'red')
69+
im.save('output-hint.jpg', 'JPEG')
70+
print('Saved new image to output-hint.jpg')
71+
# [END vision_crop_hints_tutorial_draw_crop_hints]
72+
73+
74+
def crop_to_hint(image_file):
75+
"""Crop the image using the hints in the vector list."""
76+
# [START vision_crop_hints_tutorial_crop_to_hints]
77+
vects = get_crop_hint(image_file)
78+
79+
im = Image.open(image_file)
80+
im2 = im.crop([vects[0].x, vects[0].y,
81+
vects[2].x - 1, vects[2].y - 1])
82+
im2.save('output-crop.jpg', 'JPEG')
83+
print('Saved new image to output-crop.jpg')
84+
# [END vision_crop_hints_tutorial_crop_to_hints]
85+
86+
87+
if __name__ == '__main__':
88+
# [START vision_crop_hints_tutorial_run_application]
89+
parser = argparse.ArgumentParser()
90+
parser.add_argument('image_file', help='The image you\'d like to crop.')
91+
parser.add_argument('mode', help='Set to "crop" or "draw".')
92+
args = parser.parse_args()
93+
94+
if args.mode == 'crop':
95+
crop_to_hint(args.image_file)
96+
elif args.mode == 'draw':
97+
draw_hint(args.image_file)
98+
# [END vision_crop_hints_tutorial_run_application]
99+
# [END vision_crop_hints_tutorial]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Copyright 2017 Google Inc. All Rights Reserved.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
import os
16+
17+
import crop_hints
18+
19+
20+
def test_crop(capsys):
21+
"""Checks the output image for cropping the image is created."""
22+
file_name = os.path.join(
23+
os.path.dirname(__file__),
24+
'resources/cropme.jpg')
25+
crop_hints.crop_to_hint(file_name)
26+
out, _ = capsys.readouterr()
27+
assert os.path.isfile('output-crop.jpg')
28+
29+
30+
def test_draw(capsys):
31+
"""Checks the output image for drawing the crop hint is created."""
32+
file_name = os.path.join(
33+
os.path.dirname(__file__),
34+
'resources/cropme.jpg')
35+
crop_hints.draw_hint(file_name)
36+
out, _ = capsys.readouterr()
37+
assert os.path.isfile('output-hint.jpg')

0 commit comments

Comments
 (0)