Repository navigation
Conversation
This was referenced Oct 28, 2026
This was referenced Oct 28, 2026
moetemp
force-pushed
the
moe/up/python-render-targets
branch
from
October 29, 2026 04:00
acbcec8 to
e73ff45
Compare
moetemp
force-pushed
the
moe/up/python-client-target
branch
from
October 29, 2026 04:00
f44a7bf to
902fec2
Compare
moetemp
force-pushed
the
moe/up/python-render-targets
branch
from
October 29, 2026 06:28
e73ff45 to
f6b2ea8
Compare
moetemp
force-pushed
the
moe/up/python-client-target
branch
2 times, most recently
from
October 29, 2026 07:00
08b159a to
580cdfe
Compare
moetemp
force-pushed
the
moe/up/python-render-targets
branch
from
October 29, 2026 07:00
f6b2ea8 to
2196319
Compare
moetemp
force-pushed
the
moe/up/python-client-target
branch
from
October 29, 2026 07:35
580cdfe to
9dda880
Compare
moetemp
force-pushed
the
moe/up/python-render-targets
branch
from
October 29, 2026 07:35
2196319 to
08e197f
Compare
moetemp
force-pushed
the
moe/up/python-client-target
branch
from
October 29, 2026 09:29
9dda880 to
cb8ec99
Compare
moetemp
changed the base branch from
moe/up/python-render-targets
to
moe/up/python-unknown-enum-number
October 29, 2026 09:29
moetemp
force-pushed
the
moe/up/python-unknown-enum-number
branch
from
October 29, 2026 17:08
6aa1acb to
66eee48
Compare
moetemp
force-pushed
the
moe/up/python-client-target
branch
from
October 29, 2026 17:08
cb8ec99 to
48b2b79
Compare
moetemp
force-pushed
the
moe/up/python-unknown-enum-number
branch
from
October 29, 2026 17:18
66eee48 to
df16584
Compare
moetemp
force-pushed
the
moe/up/python-client-target
branch
from
October 29, 2026 17:18
48b2b79 to
90341f4
Compare
moetemp
force-pushed
the
moe/up/python-unknown-enum-number
branch
from
October 29, 2026 18:27
df16584 to
5d3c1c0
Compare
moetemp
force-pushed
the
moe/up/python-client-target
branch
from
October 29, 2026 18:27
90341f4 to
4d12251
Compare
tconley1428
reviewed
Oct 29, 2026
| @@ -0,0 +1,127 @@ | |||
| # Generated by nexgen latest. DO NOT EDIT! | |||
Collaborator
There was a problem hiding this comment.
Either workflow has the named module, or they both do.
moetemp
force-pushed
the
moe/up/python-unknown-enum-number
branch
from
October 30, 2026 00:00
5d3c1c0 to
fd46000
Compare
moetemp
force-pushed
the
moe/up/python-client-target
branch
from
October 30, 2026 00:00
4d12251 to
dd3e142
Compare
`--targets workflow,client` also writes a `client` package, with its own resource classes and a client extension for each service. Its methods start each operation through `_create_nexus_client` and return the result. The models are shared, and the Workflow package doesn't change. The operation renderers take a target and start each line at its indent, so both targets share them. The stream sample gets the client target.
moetemp
force-pushed
the
moe/up/python-client-target
branch
from
October 30, 2026 01:00
dd3e142 to
df29fb0
Compare
moetemp
force-pushed
the
moe/up/python-unknown-enum-number
branch
from
October 30, 2026 01:00
fd46000 to
412faaa
Compare
Contributor
Author
|
Closed in favour of #344 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed?
This PR adds the client target to Python.
--targets workflow,clientalso writes aclientpackage inside the service's output directory, with its own resource classes and a<Service>ClientExtensionper service. A client class inherits the extensions and implements_create_nexus_client. A call returns the result with one await...models. A resource crosses the targets as data, and each side decodes it as its own class._operationsattribute, which isn't a dataclass field, so the resource still converts as data.@nexus.sourcefield is a call parameter, since the client target has no sources yet. The stream WIT has no source, so this first shows in the stream output with the sources of feat: limit@nexus.api-omitto some targets moetemp/nexgen#84.--native-apiand next toworkflow.Language::has_client_targetlists the languages that have it, so each new language is one line. nexgen refuses the client target for a service with no endpoint, a method name that two services share, an operation namedclient(the name of the client package), and a resource method that leaves a sourced field to its source. That last check is inresource_plan.rs, so each language calls the same one.In the stream sample's Python output,
stream_service/client/appears, with its ownStreamandStreamServiceClientExtension. The WorkflowStreamstays as it is.Why?
Brook and native Streams call these operations from clients and Activities, not only from Workflow code. With one WIT file, both packages come from the same definitions and have the same names, so the WIT has no copies.
How did you test it?
Link to a test plan if any -
test_client_target.pyruns the stream sample's client package on a fake Nexus client, checks that a handle built by hand has no client, and decodes a WorkflowStreamas a clientStream. Rejection fixtures and a unit test cover the refusals.