Uh oh!
There was an error while loading. Please reload this page.
Add new Future package google.gax.future - #195
Conversation
* Add new abstract base class google.gax.future.base.Future. * Add base class for polling-style futures google.gax.future.base.PollingFuture. * Add class for gRPC-based long-running operations google.gax.future.grpc_operation_future.OperationFuture. * Remove google.gax._OperationFuture. * Remove google.gax._from_any. * Remove dependency on dill. This is a *breaking* change as written. The code generator will need to be updated to use this new future class. However, based on usage it's likely safe to alias the old name google.gax._OperationFuture to the new google.gax.future.grpc_operation_future.OperationFuture. I can do that if we think it's necessary.
theacodes
commented
Jun 28, 2017
Alright, @lukesneeringer, this should be ready for review. |
lukesneeringer
left a comment
There was a problem hiding this comment.
This is a huge improvement. We can merge it once we update auto-gen to use it (but not before).
lukesneeringer
commented
Jul 5, 2017
Summoning @dhermes. Ideally I would prefer not do this and get everything migrated, but that is likely to be something of a process. Would it be better to alias for a couple releases? |
dhermes
commented
Jul 5, 2017
Why do you think it'd be "something of a process"? We have version pinning for the GAPICs we depend on. Do they in turn have version pinning for GAX? |
theacodes
commented
Jul 17, 2017
closing in favor of googleapis/google-cloud-python#3616 |
This decouples the concepts of a Future, a Future that polls, and a Future that polls using gRPC for a LRO. It leaves the door open to the possibility of other types of Futures and also implementing an LRO future without gRPC.
This is a breaking change as written. The code generator will need to be updated to use this new future class. However, based on usage it's likely safe to alias the old name google.gax._OperationFuture to the new google.gax.future.grpc_operation_future.OperationFuture. I can do that if we think it's necessary.
Resolves#194.
/cc @dhermes who I bounced this off of.