Title: Add support for async compose and operator functions · Issue #44 · crossplane-contrib/function-python · GitHub
Open Graph Title: Add support for async compose and operator functions · Issue #44 · crossplane-contrib/function-python
X Title: Add support for async compose and operator functions · Issue #44 · crossplane-contrib/function-python
Description: What problem are you facing? The function runner assumes that the compose() and operate() methods are not async, so if an async method is used the result is the coroutine object instead of the actual function execution. How could this Fu...
Open Graph Description: What problem are you facing? The function runner assumes that the compose() and operate() methods are not async, so if an async method is used the result is the coroutine object instead of the actu...
X Description: What problem are you facing? The function runner assumes that the compose() and operate() methods are not async, so if an async method is used the result is the coroutine object instead of the actu...
Opengraph URL: https://github.com/crossplane-contrib/function-python/issues/44
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Add support for async compose and operator functions","articleBody":"### What problem are you facing?\nThe function runner assumes that the `compose()` and `operate()` methods are not `async`, so if an `async` method is used the result is the coroutine object instead of the actual function execution.\n\n### How could this Function help solve your problem?\nInspect the script function that is provided and `await` it if it is a coroutine, otherwise run it as it does today.","author":{"url":"https://github.com/bobh66","@type":"Person","name":"bobh66"},"datePublished":"2026-01-23T02:50:31.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/44/function-python/issues/44"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:251debc7-ca73-b472-2971-f66efc306bd6 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | BC4A:D440C:1173273:1771EFF:6A62C413 |
| html-safe-nonce | c612dab8abd74393ee4984d10e5f60b835e3c99a3364edc03fb12ec88ad41732 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCQzRBOkQ0NDBDOjExNzMyNzM6MTc3MUVGRjo2QTYyQzQxMyIsInZpc2l0b3JfaWQiOiI1ODA4ODk5NDY5NTQ4MzczMDExIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | aa30f34653ec25afa3af62ae500997d5f14df4dcf14add98c64a6a8f958e9197 |
| hovercard-subject-tag | issue:3845569249 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/crossplane-contrib/function-python/44/issue_layout |
| twitter:image | https://opengraph.githubassets.com/435579dd5efc818ca6758a33b8c37b643e200f56f5ded26aeb812895344d0a95/crossplane-contrib/function-python/issues/44 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/435579dd5efc818ca6758a33b8c37b643e200f56f5ded26aeb812895344d0a95/crossplane-contrib/function-python/issues/44 |
| og:image:alt | What problem are you facing? The function runner assumes that the compose() and operate() methods are not async, so if an async method is used the result is the coroutine object instead of the actu... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | bobh66 |
| hostname | github.com |
| expected-hostname | github.com |
| None | df33b1b61ee7b9a0af988199bfc3503c9c1acafb1f1d40e1f140ea7c84f890dd |
| turbo-cache-control | no-preview |
| go-import | github.com/crossplane-contrib/function-python git https://github.com/crossplane-contrib/function-python.git |
| octolytics-dimension-user_id | 65389701 |
| octolytics-dimension-user_login | crossplane-contrib |
| octolytics-dimension-repository_id | 866240625 |
| octolytics-dimension-repository_nwo | crossplane-contrib/function-python |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 866240625 |
| octolytics-dimension-repository_network_root_nwo | crossplane-contrib/function-python |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | d41cd1bdb290013455c0ac430fa755621733f5eb |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width