312 Commits

Author SHA1 Message Date
Ashesh Vidyut
a42a352361 Add warning message for macOS for multiprocessing (#40581)
Added a warning for `multiprocessing` for macOS.

Fixes #40444
2025-10-07 10:32:18 -07:00
Ashesh Vidyut
f4ed0100c6 [Python][Part 10] - Introducing Ruff (#40185)
### Description

## Part 10 of Introducing Ruff

* In this PR - the suppression for  `RET505` has been removed on the root `ruff.toml`

## Related:
* Next: #40186
* Prev: #40184
* b/423755915

Closes #40185

PiperOrigin-RevId: 810694059
2025-09-23 20:58:50 -07:00
Sergii Tkachenko
0497da859e [CI] Use python 3.9+ everywhere (#40139)
- Upgrade the base image of  https://us-docker.pkg.dev/grpc-testing/testing-images-public/bazel to newer https://gcr.io/oss-fuzz-base/base-builder@sha256:4f3ca10accd14292556601d70e457fa85ad57180c913484427869d3379a07684, which comes with python3.11

  Before:
  ```

  Python 3.8.3 (default, Mar 12 2024, 03:21:22)
  [Clang 15.0.0 (https://github.com/llvm/llvm-project.git bf7f8d6fa6f460bf0a16ffe
  ```

  After:
  ```
  Python 3.11.13 (main, Jul 16 2025, 03:42:11)
  [Clang 18.1.8 (https://github.com/llvm/llvm-project.git 3b5b5c1ec4a3095ab096dd78
  ```
- Refactor and improve  https://us-docker.pkg.dev/grpc-testing/testing-images-public/sanity. Removed building python 3.7 from source.
- Switch Windows builds to use `3.9.13` (previously `3.8.10`)
- Changed minimum python version in bazel builds from 3.8 to 3.9.
- Updated pylint to use python3.11.
- Various minor compatibility fixes.

There's a few other dependencies/settings that can be upgraded now that we're using 3.9+. I'll make them in a follow-up PR.

Closes #40139

PiperOrigin-RevId: 786775922
2025-07-24 11:31:19 -07:00
Sergii Tkachenko
6c7e2a94f9 [Python] Fix bazel tests compatibility with python 3.11 (#40273)
Fix python import paths in bazel tests:
- `//tools/distrib/python/grpcio_tools/grpc_tools/test:protoc_test`
- `//examples/python/cancellation:test/_cancellation_example_test`
- `//examples/python/compression:test/compression_example_test`

Previously paths were set incorrectly. With bazel + python 3.11, this resulted in the following errors:

<details>
<summary>error examples for posterity</summary>

#### `//tools/distrib/python/grpcio_tools/grpc_tools/test:protoc_test`
```
Traceback (most recent call last):
  File "/root/.cache/bazel/_bazel_root/954bb7512d44d20015390af6e76121c6/sandbox/processwrapper-sandbox/3073/execroot/com_github_grpc_grpc/bazel-out/k8-fastbuild/bin/tools/distrib/python/grpcio_tools/grpc_tools/test/protoc_test.runfiles/com_github_grpc_grpc/tools/distrib/python/grpcio_tools/grpc_tools/test/protoc_test.py", line 141, in _test_syntax_errors
    protos = protoc._protos("flawed.proto")
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/.cache/bazel/_bazel_root/954bb7512d44d20015390af6e76121c6/sandbox/processwrapper-sandbox/3073/execroot/com_github_grpc_grpc/bazel-out/k8-fastbuild/bin/tools/distrib/python/grpcio_tools/grpc_tools/test/protoc_test.runfiles/com_github_grpc_grpc/tools/distrib/python/grpcio_tools/grpc_tools/protoc.py", line 110, in _protos
    module = importlib.import_module(module_name)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "", line 1204, in _gcd_import
  File "", line 1176, in _find_and_load
  File "", line 1140, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'flawed_pb2'

Traceback (most recent call last):
  File "/root/.cache/bazel/_bazel_root/954bb7512d44d20015390af6e76121c6/sandbox/processwrapper-sandbox/3073/execroot/com_github_grpc_grpc/bazel-out/k8-fastbuild/bin/tools/distrib/python/grpcio_tools/grpc_tools/test/protoc_test.runfiles/com_github_grpc_grpc/tools/distrib/python/grpcio_tools/grpc_tools/test/protoc_test.py", line 168, in test_combined_import
    _run_in_subprocess(_test_combined_import)
  File "/root/.cache/bazel/_bazel_root/954bb7512d44d20015390af6e76121c6/sandbox/processwrapper-sandbox/3073/execroot/com_github_grpc_grpc/bazel-out/k8-fastbuild/bin/tools/distrib/python/grpcio_tools/grpc_tools/test/protoc_test.runfiles/com_github_grpc_grpc/tools/distrib/python/grpcio_tools/grpc_tools/test/protoc_test.py", line 48, in _run_in_subprocess
    raise error_queue.get()
ModuleNotFoundError: No module named 'simple_pb2'
```

#### `//examples/python/cancellation:test/_cancellation_example_test`
```
test_graceful_sigint (__main__.CancellationExampleTest.test_graceful_sigint) ... Traceback (most recent call last):
  File "/root/.cache/bazel/_bazel_root/954bb7512d44d20015390af6e76121c6/sandbox/processwrapper-sandbox/3027/execroot/com_github_grpc_grpc/bazel-out/k8-fastbuild/bin/examples/python/cancellation/test/_cancellation_example_test.runfiles/com_github_grpc_grpc/examples/python/cancellation/server.py", line 26, in
    import search
ModuleNotFoundError: No module named 'search'
```

#### `//examples/python/compression:test/compression_example_test`
```
test_compression_example (__main__.CompressionExampleTest.test_compression_example) ... Traceback (most recent call last):
  File "/root/.cache/bazel/_bazel_root/954bb7512d44d20015390af6e76121c6/sandbox/processwrapper-sandbox/2906/execroot/com_github_grpc_grpc/bazel-out/k8-fastbuild/bin/examples/python/compression/test/compression_example_test.runfiles/com_github_grpc_grpc/examples/python/compression/client.py", line 24, in
    import helloworld_pb2
ModuleNotFoundError: No module named 'helloworld_pb2'
Traceback (most recent call last):
  File "/root/.cache/bazel/_bazel_root/954bb7512d44d20015390af6e76121c6/sandbox/processwrapper-sandbox/2906/execroot/com_github_grpc_grpc/bazel-out/k8-fastbuild/bin/examples/python/compression/test/compression_example_test.runfiles/com_github_grpc_grpc/examples/python/compression/server.py", line 26, in
    import helloworld_pb2
ModuleNotFoundError: No module named 'helloworld_pb2'
FAIL

======================================================================
FAIL: test_compression_example (__main__.CompressionExampleTest.test_compression_example)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/root/.cache/bazel/_bazel_root/954bb7512d44d20015390af6e76121c6/sandbox/processwrapper-sandbox/2906/execroot/com_github_grpc_grpc/bazel-out/k8-fastbuild/bin/examples/python/compression/test/compression_example_test.runfiles/com_github_grpc_grpc/examples/python/compression/test/compression_example_test.py", line 68, in test_compression_example
    self.assertEqual(0, client_return_code)
AssertionError: 0 != 1
```
</details>

The main difference is as of Python 3.11 bazel no longer appends the directory of the file to the sys.path. For example, compression test sys.path:

1. Contains `examples/python/compression/test` in 3.10
2. Doesn't contain `examples/python/compression/test` in 3.11

Closes #40273

PiperOrigin-RevId: 786308459
2025-07-23 09:21:50 -07:00
Sergii Tkachenko
b04d3821d4 [CI] Bump pylint to 2.17.7 (#40169)
In preparation for migrating it from python3.7 to python3.11.
Pylint version had to be upgraded because pylint==2.2.2 doesn't support python 3.11.

The image will be updated separately to remove compiling python3.7 from source in #40139.

Pylint v2.17.7 docs: https://pylint.readthedocs.io/en/v2.17.7

Closes #40169

PiperOrigin-RevId: 783026287
2025-07-14 13:45:05 -07:00
Ashesh Vidyut
96e3b1839b [Python][Part 1] - Introducing Ruff (#40160)
## Description

### Part 1 of Introducing Ruff

* This is Part 1 of introducing ruff series.
* The following PRs will remove some of the supressed rules introduced in this PR.
* This PR has all the folders which PyLint has currently.
* In the final part of these PRs, PyLint will be removed compeletly.

## Testing
CI

Closes #40160

PiperOrigin-RevId: 781990339
2025-07-11 08:29:05 -07:00
Kannan J
9c99dc2f9c [Documentation] Create docker file for xds example server and client for Python (#37779)
This will help us quote Xds examples in user guides without having to
involve observability examples only which are dockerized today.
2025-05-16 10:06:36 -07:00
Esun Kim
19cfe776b4 [CI] Updated Buildtools to 7.3.1 (#38397)
This is a prerequisite to getting a upcoming buildifier release.

Closes #38397

PiperOrigin-RevId: 713341592
2025-01-08 10:42:49 -08:00
Xuan Wang
62e9e44be8 [Python Observability] update observability example (#38272)
<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-12-16 23:05:46 +05:30
Xuan Wang
b82b79b630 [Python CSM] Change example to use Helloworld service (#38283)
<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-12-16 23:05:22 +05:30
Xuan Wang
a428e2cea0 [CSM Observability] Add option to use Xds server (#38194)
We already have the option to use Xds credentials based on `secure_mode`
flag, this PR add the ability to create Xds server based on the same
flag.
<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-11-26 13:03:52 -08:00
Tanvi Jagtap
67d82ecbb9 [OnCall] Minor change to Python binary metadata documentation (#38127)
The word "can" in this example makes it sound like it is optional.
Changing it to should.


e352e896cb/src/python/grpcio/grpc/_cython/_cygrpc/metadata.pyx.pxi (L45)

Making this change in response to a user query.
2024-11-21 08:20:03 -08:00
Nathan Baulch
8342a109ae Fix python typos (#38029)
Continuation of #37541 but focused on Python.

Top typos are:
* resolveable (5)
* dedecated (4)
* everyting (4)
* programatically (3)
* supercede (3)
* wil (3)
* acknowledgment (2)
* corutine (2)
* coversion (2)
* operaton (2)
* wich (2)

Closes #38029

PiperOrigin-RevId: 695759207
2024-11-12 09:15:38 -08:00
Marcel
ff7d726a91 [Python Bazel] Use PyInfo provider and py_* rules from rules_python (#37995)
The native one will be removed soon (Bazel 8?).

Closes #37995

PiperOrigin-RevId: 690671136
2024-10-28 10:47:26 -07:00
Xuan Wang
ac31fb0f61 [Python example] Fix version in generated code in example folder (#37665)
Fix: https://github.com/grpc/grpc/issues/37610
<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-09-25 10:43:15 -07:00
Xuan Wang
3546a3e930 [Python Distrib] Change warning to RuntimeError for version incompatibility (#37466)
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #37466

PiperOrigin-RevId: 662606899
2024-08-13 12:14:09 -07:00
Xuan Wang
4ad050e457 [Python] Update generated code warning version (#37229)
Push back the date of changing warning to error in case so that it won't be a blocker for CSM launch.
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #37229

PiperOrigin-RevId: 652924647
2024-07-16 11:49:53 -07:00
Michael
c4bbaa25f8 Fix Typos In Docs & Code Comments (#37170)
There are several typos in files within the ./examples/* directory, so just a PR to fix them

Closes #37170

PiperOrigin-RevId: 650818587
2024-07-09 18:25:39 -07:00
Esun Kim
62401f643c [Dep] Roll-foward "Upgrading Protobuf to v27.0 (#36753)" (#37182)
Closes #37182

PiperOrigin-RevId: 650413156
2024-07-08 16:42:21 -07:00
Isidro
4c32bb44cd route_guide_client.py minor changes (#36865)
<details><summary>old output</summary>

```
-------------- GetFeature --------------
Feature called Berkshire Valley Management Area Trail, Jefferson, NJ, USA at latitude: 409146138
longitude: -746188906

Found no feature at 
-------------- ListFeatures --------------
Looking for features between 40, -75 and 42, -73
Feature called Patriots Path, Mendham, NJ 07945, USA at latitude: 407838351
longitude: -746143763

Feature called 101 New Jersey 10, Whippany, NJ 07981, USA at latitude: 408122808
longitude: -743999179

Feature called U.S. 6, Shohola, PA 18458, USA at latitude: 413628156
longitude: -749015468

Feature called 5 Conners Road, Kingston, NY 12401, USA at latitude: 419999544
longitude: -740371136

Feature called Mid Hudson Psychiatric Center, New Hampton, NY 10958, USA at latitude: 414008389
longitude: -743951297

Feature called 287 Flugertown Road, Livingston Manor, NY 12758, USA at latitude: 419611318
longitude: -746524769

Feature called 4001 Tremley Point Road, Linden, NJ 07036, USA at latitude: 406109563
longitude: -742186778

Feature called 352 South Mountain Road, Wallkill, NY 12589, USA at latitude: 416802456
longitude: -742370183

Feature called Bailey Turn Road, Harriman, NY 10926, USA at latitude: 412950425
longitude: -741077389

Feature called 193-199 Wawayanda Road, Hewitt, NJ 07421, USA at latitude: 412144655
longitude: -743949739

Feature called 406-496 Ward Avenue, Pine Bush, NY 12566, USA at latitude: 415736605
longitude: -742847522

Feature called 162 Merrill Road, Highland Mills, NY 10930, USA at latitude: 413843930
longitude: -740501726

Feature called Clinton Road, West Milford, NJ 07480, USA at latitude: 410873075
longitude: -744459023

Feature called 16 Old Brook Lane, Warwick, NY 10990, USA at latitude: 412346009
longitude: -744026814

Feature called 3 Drake Lane, Pennington, NJ 08534, USA at latitude: 402948455
longitude: -747903913

Feature called 6324 8th Avenue, Brooklyn, NY 11220, USA at latitude: 406337092
longitude: -740122226

Feature called 1 Merck Access Road, Whitehouse Station, NJ 08889, USA at latitude: 406421967
longitude: -747727624

Feature called 78-98 Schalck Road, Narrowsburg, NY 12764, USA at latitude: 416318082
longitude: -749677716

Feature called 282 Lakeview Drive Road, Highland Lake, NY 12743, USA at latitude: 415301720
longitude: -748416257

Feature called 330 Evelyn Avenue, Hamilton Township, NJ 08619, USA at latitude: 402647019
longitude: -747071791

Feature called New York State Reference Route 987E, Southfields, NY 10975, USA at latitude: 412567807
longitude: -741058078

Feature called 103-271 Tempaloni Road, Ellenville, NY 12428, USA at latitude: 416855156
longitude: -744420597

Feature called 1300 Airport Road, North Brunswick Township, NJ 08902, USA at latitude: 404663628
longitude: -744820157

Feature called  at latitude: 407113723
longitude: -749746483

Feature called  at latitude: 402133926
longitude: -743613249

Feature called  at latitude: 400273442
longitude: -741220915

Feature called  at latitude: 411236786
longitude: -744070769

Feature called 211-225 Plains Road, Augusta, NJ 07822, USA at latitude: 411633782
longitude: -746784970

Feature called  at latitude: 415830701
longitude: -742952812

Feature called 165 Pedersen Ridge Road, Milford, PA 18337, USA at latitude: 413447164
longitude: -748712898

Feature called 100-122 Locktown Road, Frenchtown, NJ 08825, USA at latitude: 405047245
longitude: -749800722

Feature called  at latitude: 418858923
longitude: -746156790

Feature called 650-652 Willi Hill Road, Swan Lake, NY 12783, USA at latitude: 417951888
longitude: -748484944

Feature called 26 East 3rd Street, New Providence, NJ 07974, USA at latitude: 407033786
longitude: -743977337

Feature called  at latitude: 417548014
longitude: -740075041

Feature called  at latitude: 410395868
longitude: -744972325

Feature called  at latitude: 404615353
longitude: -745129803

Feature called 611 Lawrence Avenue, Westfield, NJ 07090, USA at latitude: 406589790
longitude: -743560121

Feature called 18 Lannis Avenue, New Windsor, NY 12553, USA at latitude: 414653148
longitude: -740477477

Feature called 82-104 Amherst Avenue, Colonia, NJ 07067, USA at latitude: 405957808
longitude: -743255336

Feature called 170 Seven Lakes Drive, Sloatsburg, NY 10974, USA at latitude: 411733589
longitude: -741648093

Feature called 1270 Lakes Road, Monroe, NY 10950, USA at latitude: 412676291
longitude: -742606606

Feature called 509-535 Alphano Road, Great Meadows, NJ 07838, USA at latitude: 409224445
longitude: -748286738

Feature called 652 Garden Street, Elizabeth, NJ 07202, USA at latitude: 406523420
longitude: -742135517

Feature called 349 Sea Spray Court, Neptune City, NJ 07753, USA at latitude: 401827388
longitude: -740294537

Feature called 13-17 Stanley Street, West Milford, NJ 07480, USA at latitude: 410564152
longitude: -743685054

Feature called 47 Industrial Avenue, Teterboro, NJ 07608, USA at latitude: 408472324
longitude: -740726046

Feature called 5 White Oak Lane, Stony Point, NY 10980, USA at latitude: 412452168
longitude: -740214052

Feature called Berkshire Valley Management Area Trail, Jefferson, NJ, USA at latitude: 409146138
longitude: -746188906

Feature called 1007 Jersey Avenue, New Brunswick, NJ 08901, USA at latitude: 404701380
longitude: -744781745

Feature called 6 East Emerald Isle Drive, Lake Hopatcong, NJ 07849, USA at latitude: 409642566
longitude: -746017679

Feature called 1358-1474 New Jersey 57, Port Murray, NJ 07865, USA at latitude: 408031728
longitude: -748645385

Feature called 367 Prospect Road, Chester, NY 10918, USA at latitude: 413700272
longitude: -742135189

Feature called 10 Simon Lake Drive, Atlantic Highlands, NJ 07716, USA at latitude: 404310607
longitude: -740282632

Feature called 11 Ward Street, Mount Arlington, NJ 07856, USA at latitude: 409319800
longitude: -746201391

Feature called 300-398 Jefferson Avenue, Elizabeth, NJ 07201, USA at latitude: 406685311
longitude: -742108603

Feature called 43 Dreher Road, Roscoe, NY 12776, USA at latitude: 419018117
longitude: -749142781

Feature called Swan Street, Pine Island, NY 10969, USA at latitude: 412856162
longitude: -745148837

Feature called 66 Pleasantview Avenue, Monticello, NY 12701, USA at latitude: 416560744
longitude: -746721964

Feature called  at latitude: 405314270
longitude: -749836354

Feature called  at latitude: 414219548
longitude: -743327440

Feature called 565 Winding Hills Road, Montgomery, NY 12549, USA at latitude: 415534177
longitude: -742900616

Feature called 231 Rocky Run Road, Glen Gardner, NJ 08826, USA at latitude: 406898530
longitude: -749127080

Feature called 100 Mount Pleasant Avenue, Newark, NJ 07104, USA at latitude: 407586880
longitude: -741670168

Feature called 517-521 Huntington Drive, Manchester Township, NJ 08759, USA at latitude: 400106455
longitude: -742870190

Feature called  at latitude: 400066188
longitude: -746793294

Feature called 40 Mountain Road, Napanoch, NY 12458, USA at latitude: 418803880
longitude: -744102673

Feature called  at latitude: 414204288
longitude: -747895140

Feature called  at latitude: 414777405
longitude: -740615601

Feature called 48 North Road, Forestburgh, NY 12777, USA at latitude: 415464475
longitude: -747175374

Feature called  at latitude: 404062378
longitude: -746376177

Feature called  at latitude: 405688272
longitude: -749285130

Feature called  at latitude: 400342070
longitude: -748788996

Feature called  at latitude: 401809022
longitude: -744157964

Feature called 9 Thompson Avenue, Leonardo, NJ 07737, USA at latitude: 404226644
longitude: -740517141

Feature called  at latitude: 410322033
longitude: -747871659

Feature called  at latitude: 407100674
longitude: -747742727

Feature called 213 Bush Road, Stone Ridge, NY 12484, USA at latitude: 418811433
longitude: -741718005

Feature called  at latitude: 415034302
longitude: -743850945

Feature called  at latitude: 411349992
longitude: -743694161

Feature called 1-17 Bergen Court, New Brunswick, NJ 08901, USA at latitude: 404839914
longitude: -744759616

Feature called 35 Oakland Valley Road, Cuddebackville, NY 12729, USA at latitude: 414638017
longitude: -745957854

Feature called  at latitude: 412127800
longitude: -740173578

Feature called  at latitude: 401263460
longitude: -747964303

Feature called  at latitude: 412843391
longitude: -749086026

Feature called  at latitude: 418512773
longitude: -743067823

Feature called 42-102 Main Street, Belford, NJ 07718, USA at latitude: 404318328
longitude: -740835638

Feature called  at latitude: 419020746
longitude: -741172328

Feature called  at latitude: 404080723
longitude: -746119569

Feature called  at latitude: 401012643
longitude: -744035134

Feature called  at latitude: 404306372
longitude: -741079661

Feature called  at latitude: 403966326
longitude: -748519297

Feature called  at latitude: 405002031
longitude: -748407866

Feature called  at latitude: 409532885
longitude: -742200683

Feature called  at latitude: 416851321
longitude: -742674555

Feature called 3387 Richmond Terrace, Staten Island, NY 10303, USA at latitude: 406411633
longitude: -741722051

Feature called 261 Van Sickle Road, Goshen, NY 10924, USA at latitude: 413069058
longitude: -744597778

Feature called  at latitude: 418465462
longitude: -746859398

Feature called  at latitude: 411733222
longitude: -744228360

Feature called 3 Hasta Way, Newton, NJ 07860, USA at latitude: 410248224
longitude: -747127767

-------------- RecordRoute --------------
Visiting point latitude: 414638017
longitude: -745957854

Visiting point latitude: 419018117
longitude: -749142781

Visiting point latitude: 410248224
longitude: -747127767

Visiting point latitude: 410248224
longitude: -747127767

Visiting point latitude: 405688272
longitude: -749285130

Visiting point latitude: 409532885
longitude: -742200683

Visiting point latitude: 419611318
longitude: -746524769

Visiting point latitude: 419611318
longitude: -746524769

Visiting point latitude: 404080723
longitude: -746119569

Visiting point latitude: 419611318
longitude: -746524769

Finished trip with 10 points 
Passed 10 features 
Travelled 744802 meters 
It took 0 seconds 
-------------- RouteChat --------------
Sending First message at 
Sending Second message at longitude: 1

Sending Third message at latitude: 1

Sending Fourth message at 
Sending Fifth message at latitude: 1

Received message First message at 
Received message Third message at latitude: 1
```

</details>

<details><summary>new output</summary>

```
-------------- GetFeature --------------
Feature called 'Berkshire Valley Management Area Trail, Jefferson, NJ, USA' at latitude: 409146138, longitude: -746188906
Found no feature at latitude: 0, longitude: 0
-------------- ListFeatures --------------
Looking for features between 40, -75 and 42, -73
Feature called 'Patriots Path, Mendham, NJ 07945, USA' at latitude: 407838351, longitude: -746143763
Feature called '101 New Jersey 10, Whippany, NJ 07981, USA' at latitude: 408122808, longitude: -743999179
Feature called 'U.S. 6, Shohola, PA 18458, USA' at latitude: 413628156, longitude: -749015468
Feature called '5 Conners Road, Kingston, NY 12401, USA' at latitude: 419999544, longitude: -740371136
Feature called 'Mid Hudson Psychiatric Center, New Hampton, NY 10958, USA' at latitude: 414008389, longitude: -743951297
Feature called '287 Flugertown Road, Livingston Manor, NY 12758, USA' at latitude: 419611318, longitude: -746524769
Feature called '4001 Tremley Point Road, Linden, NJ 07036, USA' at latitude: 406109563, longitude: -742186778
Feature called '352 South Mountain Road, Wallkill, NY 12589, USA' at latitude: 416802456, longitude: -742370183
Feature called 'Bailey Turn Road, Harriman, NY 10926, USA' at latitude: 412950425, longitude: -741077389
Feature called '193-199 Wawayanda Road, Hewitt, NJ 07421, USA' at latitude: 412144655, longitude: -743949739
Feature called '406-496 Ward Avenue, Pine Bush, NY 12566, USA' at latitude: 415736605, longitude: -742847522
Feature called '162 Merrill Road, Highland Mills, NY 10930, USA' at latitude: 413843930, longitude: -740501726
Feature called 'Clinton Road, West Milford, NJ 07480, USA' at latitude: 410873075, longitude: -744459023
Feature called '16 Old Brook Lane, Warwick, NY 10990, USA' at latitude: 412346009, longitude: -744026814
Feature called '3 Drake Lane, Pennington, NJ 08534, USA' at latitude: 402948455, longitude: -747903913
Feature called '6324 8th Avenue, Brooklyn, NY 11220, USA' at latitude: 406337092, longitude: -740122226
Feature called '1 Merck Access Road, Whitehouse Station, NJ 08889, USA' at latitude: 406421967, longitude: -747727624
Feature called '78-98 Schalck Road, Narrowsburg, NY 12764, USA' at latitude: 416318082, longitude: -749677716
Feature called '282 Lakeview Drive Road, Highland Lake, NY 12743, USA' at latitude: 415301720, longitude: -748416257
Feature called '330 Evelyn Avenue, Hamilton Township, NJ 08619, USA' at latitude: 402647019, longitude: -747071791
Feature called 'New York State Reference Route 987E, Southfields, NY 10975, USA' at latitude: 412567807, longitude: -741058078
Feature called '103-271 Tempaloni Road, Ellenville, NY 12428, USA' at latitude: 416855156, longitude: -744420597
Feature called '1300 Airport Road, North Brunswick Township, NJ 08902, USA' at latitude: 404663628, longitude: -744820157
Feature called '' at latitude: 407113723, longitude: -749746483
Feature called '' at latitude: 402133926, longitude: -743613249
Feature called '' at latitude: 400273442, longitude: -741220915
Feature called '' at latitude: 411236786, longitude: -744070769
Feature called '211-225 Plains Road, Augusta, NJ 07822, USA' at latitude: 411633782, longitude: -746784970
Feature called '' at latitude: 415830701, longitude: -742952812
Feature called '165 Pedersen Ridge Road, Milford, PA 18337, USA' at latitude: 413447164, longitude: -748712898
Feature called '100-122 Locktown Road, Frenchtown, NJ 08825, USA' at latitude: 405047245, longitude: -749800722
Feature called '' at latitude: 418858923, longitude: -746156790
Feature called '650-652 Willi Hill Road, Swan Lake, NY 12783, USA' at latitude: 417951888, longitude: -748484944
Feature called '26 East 3rd Street, New Providence, NJ 07974, USA' at latitude: 407033786, longitude: -743977337
Feature called '' at latitude: 417548014, longitude: -740075041
Feature called '' at latitude: 410395868, longitude: -744972325
Feature called '' at latitude: 404615353, longitude: -745129803
Feature called '611 Lawrence Avenue, Westfield, NJ 07090, USA' at latitude: 406589790, longitude: -743560121
Feature called '18 Lannis Avenue, New Windsor, NY 12553, USA' at latitude: 414653148, longitude: -740477477
Feature called '82-104 Amherst Avenue, Colonia, NJ 07067, USA' at latitude: 405957808, longitude: -743255336
Feature called '170 Seven Lakes Drive, Sloatsburg, NY 10974, USA' at latitude: 411733589, longitude: -741648093
Feature called '1270 Lakes Road, Monroe, NY 10950, USA' at latitude: 412676291, longitude: -742606606
Feature called '509-535 Alphano Road, Great Meadows, NJ 07838, USA' at latitude: 409224445, longitude: -748286738
Feature called '652 Garden Street, Elizabeth, NJ 07202, USA' at latitude: 406523420, longitude: -742135517
Feature called '349 Sea Spray Court, Neptune City, NJ 07753, USA' at latitude: 401827388, longitude: -740294537
Feature called '13-17 Stanley Street, West Milford, NJ 07480, USA' at latitude: 410564152, longitude: -743685054
Feature called '47 Industrial Avenue, Teterboro, NJ 07608, USA' at latitude: 408472324, longitude: -740726046
Feature called '5 White Oak Lane, Stony Point, NY 10980, USA' at latitude: 412452168, longitude: -740214052
Feature called 'Berkshire Valley Management Area Trail, Jefferson, NJ, USA' at latitude: 409146138, longitude: -746188906
Feature called '1007 Jersey Avenue, New Brunswick, NJ 08901, USA' at latitude: 404701380, longitude: -744781745
Feature called '6 East Emerald Isle Drive, Lake Hopatcong, NJ 07849, USA' at latitude: 409642566, longitude: -746017679
Feature called '1358-1474 New Jersey 57, Port Murray, NJ 07865, USA' at latitude: 408031728, longitude: -748645385
Feature called '367 Prospect Road, Chester, NY 10918, USA' at latitude: 413700272, longitude: -742135189
Feature called '10 Simon Lake Drive, Atlantic Highlands, NJ 07716, USA' at latitude: 404310607, longitude: -740282632
Feature called '11 Ward Street, Mount Arlington, NJ 07856, USA' at latitude: 409319800, longitude: -746201391
Feature called '300-398 Jefferson Avenue, Elizabeth, NJ 07201, USA' at latitude: 406685311, longitude: -742108603
Feature called '43 Dreher Road, Roscoe, NY 12776, USA' at latitude: 419018117, longitude: -749142781
Feature called 'Swan Street, Pine Island, NY 10969, USA' at latitude: 412856162, longitude: -745148837
Feature called '66 Pleasantview Avenue, Monticello, NY 12701, USA' at latitude: 416560744, longitude: -746721964
Feature called '' at latitude: 405314270, longitude: -749836354
Feature called '' at latitude: 414219548, longitude: -743327440
Feature called '565 Winding Hills Road, Montgomery, NY 12549, USA' at latitude: 415534177, longitude: -742900616
Feature called '231 Rocky Run Road, Glen Gardner, NJ 08826, USA' at latitude: 406898530, longitude: -749127080
Feature called '100 Mount Pleasant Avenue, Newark, NJ 07104, USA' at latitude: 407586880, longitude: -741670168
Feature called '517-521 Huntington Drive, Manchester Township, NJ 08759, USA' at latitude: 400106455, longitude: -742870190
Feature called '' at latitude: 400066188, longitude: -746793294
Feature called '40 Mountain Road, Napanoch, NY 12458, USA' at latitude: 418803880, longitude: -744102673
Feature called '' at latitude: 414204288, longitude: -747895140
Feature called '' at latitude: 414777405, longitude: -740615601
Feature called '48 North Road, Forestburgh, NY 12777, USA' at latitude: 415464475, longitude: -747175374
Feature called '' at latitude: 404062378, longitude: -746376177
Feature called '' at latitude: 405688272, longitude: -749285130
Feature called '' at latitude: 400342070, longitude: -748788996
Feature called '' at latitude: 401809022, longitude: -744157964
Feature called '9 Thompson Avenue, Leonardo, NJ 07737, USA' at latitude: 404226644, longitude: -740517141
Feature called '' at latitude: 410322033, longitude: -747871659
Feature called '' at latitude: 407100674, longitude: -747742727
Feature called '213 Bush Road, Stone Ridge, NY 12484, USA' at latitude: 418811433, longitude: -741718005
Feature called '' at latitude: 415034302, longitude: -743850945
Feature called '' at latitude: 411349992, longitude: -743694161
Feature called '1-17 Bergen Court, New Brunswick, NJ 08901, USA' at latitude: 404839914, longitude: -744759616
Feature called '35 Oakland Valley Road, Cuddebackville, NY 12729, USA' at latitude: 414638017, longitude: -745957854
Feature called '' at latitude: 412127800, longitude: -740173578
Feature called '' at latitude: 401263460, longitude: -747964303
Feature called '' at latitude: 412843391, longitude: -749086026
Feature called '' at latitude: 418512773, longitude: -743067823
Feature called '42-102 Main Street, Belford, NJ 07718, USA' at latitude: 404318328, longitude: -740835638
Feature called '' at latitude: 419020746, longitude: -741172328
Feature called '' at latitude: 404080723, longitude: -746119569
Feature called '' at latitude: 401012643, longitude: -744035134
Feature called '' at latitude: 404306372, longitude: -741079661
Feature called '' at latitude: 403966326, longitude: -748519297
Feature called '' at latitude: 405002031, longitude: -748407866
Feature called '' at latitude: 409532885, longitude: -742200683
Feature called '' at latitude: 416851321, longitude: -742674555
Feature called '3387 Richmond Terrace, Staten Island, NY 10303, USA' at latitude: 406411633, longitude: -741722051
Feature called '261 Van Sickle Road, Goshen, NY 10924, USA' at latitude: 413069058, longitude: -744597778
Feature called '' at latitude: 418465462, longitude: -746859398
Feature called '' at latitude: 411733222, longitude: -744228360
Feature called '3 Hasta Way, Newton, NJ 07860, USA' at latitude: 410248224, longitude: -747127767
-------------- RecordRoute --------------
Visiting point latitude: 411733222, longitude: -744228360
Visiting point latitude: 419018117, longitude: -749142781
Visiting point latitude: 414638017, longitude: -745957854
Visiting point latitude: 407586880, longitude: -741670168
Visiting point latitude: 412676291, longitude: -742606606
Visiting point latitude: 416851321, longitude: -742674555
Visiting point latitude: 406685311, longitude: -742108603
Visiting point latitude: 418803880, longitude: -744102673
Visiting point latitude: 415301720, longitude: -748416257
Visiting point latitude: 415301720, longitude: -748416257
Finished trip with 10 points 
Passed 10 features 
Travelled 637794 meters 
It took 0 seconds 
-------------- RouteChat --------------
Sending First message at latitude: 0, longitude: 0
Sending Second message at latitude: 0, longitude: 1
Sending Third message at latitude: 1, longitude: 0
Sending Fourth message at latitude: 0, longitude: 0
Sending Fifth message at latitude: 1, longitude: 0
Received message First message at latitude: 0, longitude: 0
Received message Third message at latitude: 1, longitude: 0

```

</details>

<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-07-02 21:51:55 -07:00
Sreenithi Sridharan
7ff0c56ebd Added Python Example for Flow Control (#37044)
Have added the required client, server, proto and proto generated files.
The design of the example is as follows:

1. The client sends a bulk amount of data(approx. 2 KB in each
iteration) to the server in a streaming call.
2. The server applies back-pressure by delaying reading of the requests,
which makes the client pause sending requests after around 64KB
3. The client then resumes sending requests only after the server reads
a few requests and clears the buffer.

By adding print statements on data send/receive on both client and
server side, the client pausing/resuming requests can be seen clearly.
The client and server logs can be seen below:

**Client Logs**
```
Request 10: Sent 20000 bytes in total
Request 20: Sent 40000 bytes in total
Request 30: Sent 60000 bytes in total
Request 40: Sent 80000 bytes in total
Received 10 responses

Request 50: Sent 100000 bytes in total
Received 20 responses

Request 60: Sent 120000 bytes in total
Received 30 responses

Request 70: Sent 140000 bytes in total
Received 40 responses

Request 80: Sent 160000 bytes in total
Received 50 responses

Request 90: Sent 180000 bytes in total
Received 60 responses

Request 100: Sent 200000 bytes in total
Received 70 responses

Received 80 responses

Received 90 responses

Received 100 responses
```

**Server Logs**
```
Server started, listening on 50051
Request 10: Received 20000 bytes in total
Request 10: Sent 20000 bytes in total

Request 20: Received 40000 bytes in total
Request 20: Sent 40000 bytes in total

Request 30: Received 60000 bytes in total
Request 30: Sent 60000 bytes in total

Request 40: Received 80000 bytes in total
Request 40: Sent 80000 bytes in total

Request 50: Received 100000 bytes in total
Request 50: Sent 100000 bytes in total

Request 60: Received 120000 bytes in total
Request 60: Sent 120000 bytes in total

Request 70: Received 140000 bytes in total
Request 70: Sent 140000 bytes in total

Request 80: Received 160000 bytes in total
Request 80: Sent 160000 bytes in total

Request 90: Received 180000 bytes in total
Request 90: Sent 180000 bytes in total

Request 100: Received 200000 bytes in total
Request 100: Sent 200000 bytes in total
```
2024-07-02 21:49:39 -07:00
Eugene Ostroukhov
c92b43388c [Dep] Revert "Upgrading Protobuf to v27.0 (#36753)" (#37125)
This reverts commit 0ffab55534.

Closes #37125

PiperOrigin-RevId: 648750887
2024-07-02 09:57:14 -07:00
Esun Kim
0ffab55534 [Dep] Upgrading Protobuf to v27.0 (#36753)
Closes #36753

PiperOrigin-RevId: 647792433
2024-06-28 14:09:18 -07:00
Xuan Wang
4df07a77f0 [Python o11] Add boundaries to CSM example (#36898)
* Latency in 50 percentile:
![Screenshot 2024-06-12 at 11 04
08 AM](https://github.com/grpc/grpc/assets/24593237/cb315d47-0983-40b7-ab9d-75afb93b232c)

<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-06-17 12:37:15 -07:00
Xuan Wang
4f3fba65fb [Python CSM] Add example for CSM O11Y (#36829)
Verified that when following User Guide, we're able to collect metrics
and export to GCP.
Images are available at:
*
`us-docker.pkg.dev/grpc-testing/examples/csm-o11y-example-python-client:latest`
*
`us-docker.pkg.dev/grpc-testing/examples/csm-o11y-example-python-server:latest`
<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-06-07 11:20:23 -07:00
Xuan Wang
811bb258d8 [Python Otel] Use registered method at server side (#36371)
Add registered method change to sync stack server.

## Note
* We're keeping both generic and registered handler in generated stubs (`*_pb2_grpc.py`) because registered method flow is not implemented in aysncio yet, since the stub is used for both sync and asyncio, we can't remove generic method flow until we fully implement the registered method flow in asyncio.

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #36371

PiperOrigin-RevId: 629842051
2024-05-01 14:43:15 -07:00
Xuan Wang
79e42f9837 [Python Otel] Remove opentelemetry version pin (#36448)
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #36448

PiperOrigin-RevId: 629113962
2024-04-29 10:40:27 -07:00
Xuan Wang
24be69b9bd [Python O11y] Change public interface (#36094)
Address comments from design review meeting, mainly:
* Use `OpenTelemetryPlugin` as public API.
* Use keyword args to build plugin.
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #36094

PiperOrigin-RevId: 615807264
2024-03-14 09:37:19 -07:00
Xuan Wang
c910004328 [Python Stub] Add version check to stubs generated by grpcio_tools (#35906)
The stubs generated by grpcio_tools should always be used with [the same or higher version of grpcio](https://github.com/grpc/grpc/blob/master/tools/distrib/python/grpcio_tools/setup.py#L313), this change will add a run time check for this requirement inside the generated stubs and therefor enforce this requirement.

Please note for now we're just printing a warning for incorrect usage, we'll **change it to an error** soon.

Example warning message:
```
/usr/local/google/home/xuanwn/workspace/misc/grpc/examples/python/helloworld/helloworld_pb2_grpc.py:21: RuntimeWarning: The grpc package installed is at version 1.60.1, but the generated code in helloworld_pb2_grpc.py depends on grpcio>=1.63.0.dev0. Please upgrade your grpc module to grpcio>=1.63.0.dev0 or downgrade your generated code using grpcio-tools<=1.60.1. This warning will become an error in 1.64.0, scheduled for release on May 14,2024.
```
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #35906

PiperOrigin-RevId: 615659471
2024-03-13 22:47:01 -07:00
Xuan Wang
672d8abdca [Python Otel] Allow start observability without context manager (#35932)
Allow start observability globally with a new API `start_open_telemetry_observability`.

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #35932

PiperOrigin-RevId: 612639020
2024-03-04 17:08:15 -08:00
Xuan Wang
2c9b599e5e [Python O11Y] Reapply registered method change (#35850)
This reverts commit a18279db2e.

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #35850

PiperOrigin-RevId: 607476066
2024-02-15 15:36:27 -08:00
Xuan Wang
9aa3c5835a [Python O11y] Remove exporter from public API and refactor tests (#35792)
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #35792

PiperOrigin-RevId: 604695910
2024-02-06 10:48:40 -08:00
Xuan Wang
80f3a90556 [Python O11Y] Add observability example (#35637)
<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-01-25 10:04:06 -08:00
Xuan Wang
a18279db2e [Python O11Y] Revert registered method change (#35522)
We're having some issues internally, rolling this change back for now and wait for the affected users to figure out a solution.

This reverts: https://github.com/grpc/grpc/pull/35002, https://github.com/grpc/grpc/pull/35482 and 6872a7a473

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #35522

PiperOrigin-RevId: 597671989
2024-01-11 15:40:10 -08:00
Xuan Wang
cd68c5e783 [Python Example] Add token based authentication example (#35477)
Add token based authentication example

<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2024-01-10 11:06:46 -08:00
Xuan Wang
9a7c0b5f57 [Python Observability] Allow create call with registered method (#35002)
Based on [OpenTelemetry Metrics gRFC](https://github.com/grpc/proposal/blob/master/A66-otel-stats.md#opentelemetry-metrics), we should recored unregistered RPC method name as `other`, this PR adds the ability to pass register method information when creating a call.

We'll consider calls created using generated stubs as registered, note that this won't prevent user from setting `registered_method=True` when creating calls manually.

This is also enabled for simple stub flow but **NOT enabled for AsyncIO**, we'll add that later when start working on AsyncIO Observability.
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #35002

PiperOrigin-RevId: 596719121
2024-01-08 15:30:17 -08:00
Xuan Wang
49d48c94ab [Python Example] Fix compression example (#34745)
Fix: https://github.com/grpc/grpc/issues/34690

Also added generated proto files to example folder so we can run example
directly.
<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2023-10-20 09:10:14 -07:00
Xuan Wang
cedef1b7f3 [Python example] Add example for TLS (#34116)
Add example for TLS.

<!--

If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the
appropriate
lang label.

-->
2023-08-22 13:02:40 -07:00
Sergii Tkachenko
de6ed9ba9f [Python] Migrate from yapf to black (#33138)
- Switched  from yapf to black
- Reconfigure isort for black
- Resolve black/pylint idiosyncrasies 

Note: I used `--experimental-string-processing` because black was
producing "implicit string concatenation", similar to what described
here: https://github.com/psf/black/issues/1837. While currently this
feature is experimental, it will be enabled by default:
https://github.com/psf/black/issues/2188. After running black with the
new string processing so that the generated code merges these `"hello" "
world"` strings concatenations, then I removed
`--experimental-string-processing` for stability, and regenerated the
code again.

To the reviewer: don't even try to open "Files Changed" tab 😄 It's
better to review commit-by-commit, and ignore `run black and isort`.
2023-06-09 15:08:55 -07:00
molto
1980841257 [example] Fix bad example (#32161)
Channel object has no method ``stop``, it supposed to be ``close`` here.

---------

Co-authored-by: Xuan Wang <xuanwn@google.com>
2023-05-10 17:36:04 -07:00
Xuan Wang
40f20c0f48 [Python fix-it][Aysnc Example] Adding examples for aysnc interceptor context propagaton (#32840)
### Description

Fix https://github.com/grpc/grpc/issues/24470.

Adding one example which demonstrate the following use cases:

* Generate RPC ID on client side and propagate to server.
* Context propagation from client to server.
* Context propagation between different server interceptors and the
server handler.

## Use:

1. Start server: `python3 -m async_greeter_server_with_interceptor`
2. Start client: `python3 -m async_greeter_client`

### Expected Logs:

* On client side:

```
Sending request with rpc id: 73bb98beff10c2dd7b9f2252a1e2039e
Greeter client received: Hello, you!
```

* On server side:

```
INFO:root:Starting server on [::]:50051
INFO:root:Interceptor1 called with rpc_id: default
INFO:root:Interceptor2 called with rpc_id: Interceptor1-default
INFO:root:Handle rpc with id Interceptor2-Interceptor1-73bb98beff10c2dd7b9f2252a1e2039e in server handler.
```
2023-05-04 19:31:01 +00:00
Xuan Wang
a190831789 Add examples for timeout, kepp_alive, reflection and health_checking (#32243)
* Add timeout example

* Add pb2 file to example

* Remove .proto file

* Add keep_alive example

* Add refelction client

* fixes

* Add example for health_check

* Changes based on comments

* Fix pylint
2023-02-03 14:11:27 -08:00
Richard Belleville
d175c79935 Add lb policy example (#32256)
* Add lb policy example

* Update copyright

* This is Python 3

* Fix isort
2023-02-03 09:58:50 -08:00
Xuan Wang
10e5b2115e Add wait_for_ready with client timeout example (#32183)
* Add wait_for_ready with client timeout example

* Use with to create channel

* Fix sanity tests

* Changes based on comments

* Change thread to daemon thread

* Changes based on comments
2023-01-25 11:02:13 -08:00
Ian Rodney
cfd3395e9b explain that keys must be lower cased (#31586) 2023-01-10 16:42:29 -08:00
Ho Ngok Chao
28e49b0f6f Add concurrency into python example in route_guide (#31724)
* Add concurrency into python example in route_guide

- replace await single tasks sequentially with await task_group

* Add comments for asyncio.gather for concurrency

* Correct typo

* Update asyncio_route_guide to meet google style

Co-authored-by: Richard Belleville <rbellevi@google.com>
2022-12-21 11:17:14 -08:00
niquepolice
3714762731 Fix typo in multiprocessing example Readme (#30132) 2022-11-22 14:32:56 -08:00
Xuan Wang
149f5615ba Remove enum and future (#31381)
* [Python][Remove enum34] Remove enum34

* [Python][Remove futures] Remove futures

* Remove empty deps from .bazel files
2022-10-18 14:58:30 -07:00
Xuan Wang
7aca6d4007 [Remove Six] Remove dependency on six (#31340)
* [Python][Remove Six] Remove Six from requirements
2022-10-17 09:34:45 -07:00
AmosWang
166824205e Print info when server starts (#30964) 2022-09-14 15:54:01 -07:00