Title: Mismatched function signature · Issue #211 · crossplane/function-sdk-python · GitHub
Open Graph Title: Mismatched function signature · Issue #211 · crossplane/function-sdk-python
X Title: Mismatched function signature · Issue #211 · crossplane/function-sdk-python
Description: What happened? The serve function accepts a grpcv1.FunctionRunnerService, when it should accept a grpcv1.FunctionRunnerServiceServicer. function-sdk-python/crossplane/function/runtime.py Lines 72 to 79 in ad6f1e1 def serve( function: grp...
Open Graph Description: What happened? The serve function accepts a grpcv1.FunctionRunnerService, when it should accept a grpcv1.FunctionRunnerServiceServicer. function-sdk-python/crossplane/function/runtime.py Lines 72 t...
X Description: What happened? The serve function accepts a grpcv1.FunctionRunnerService, when it should accept a grpcv1.FunctionRunnerServiceServicer. function-sdk-python/crossplane/function/runtime.py Lines 72 t...
Opengraph URL: https://github.com/crossplane/function-sdk-python/issues/211
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Mismatched function signature","articleBody":"\u003c!--\nThank you for helping to improve Crossplane!\n\nPlease be sure to search for open issues before raising a new one. We use issues\nfor bug reports and feature requests. Please find us at https://slack.crossplane.io\nfor questions, support, and discussion.\n--\u003e\n\n### What happened?\n\nThe `serve` function accepts a `grpcv1.FunctionRunnerService`, when it should accept a `grpcv1.FunctionRunnerServiceServicer`.\n\nhttps://github.com/crossplane/function-sdk-python/blob/ad6f1e1c18b6cd698465cfb3cb624f6acc73fcdf/crossplane/function/runtime.py#L72-L79\n\nThis results in a type mismatch:\n\n```bash\nMethod \"RunFunction\" overrides class \"FunctionRunnerService\" in an incompatible manner\n Base method is declared as a staticmethod but override is not\n Positional parameter count mismatch; base method has 10, but override has 3\n...\n```\n\nSimilarly, a class that implements a RunFunction(Service) servicer, should really implement `grpcv1. FunctionRunnerServiceServicer` instead.\n\nhttps://github.com/crossplane/function-sdk-python/blob/ad6f1e1c18b6cd698465cfb3cb624f6acc73fcdf/crossplane/function/runtime.py#L137-L148\n\nSee gRPC docs for details: https://grpc.io/docs/languages/python/quickstart/#update-the-server\n\n### How can we reproduce it?\n\u003c!--\nHelp us to reproduce your bug as succinctly and precisely as possible. Artifacts\nsuch as example manifests or a script that triggers the issue are highly\nappreciated!\n--\u003e\n\nLook at the signature of respective class and you'll see the mismatch.\n\n### What environment did it happen in?\nFunction version: v0.13.0\n\n\u003c!--\nInclude at least the version or commit of Crossplane you were running. Consider\nalso including your:\n\n* Cloud provider or hardware configuration\n* Kubernetes version (use `kubectl version`)\n* Kubernetes distribution (e.g. Tectonic, GKE, OpenShift)\n* OS (e.g. from /etc/os-release)\n* Kernel (e.g. `uname -a`)\n--\u003e\n","author":{"url":"https://github.com/eric-carlsson","@type":"Person","name":"eric-carlsson"},"datePublished":"2026-06-09T10:29:46.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/211/function-sdk-python/issues/211"}
| 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:70ae7feb-8a40-d52e-2f4a-68d68cda2036 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 9044:8C673:14E3C28:1D908A4:6A5FA0DE |
| html-safe-nonce | 27ba65e5449a99f8e5b4419e0711b62d409d0bbb4564a663009a6fac2f8500c0 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5MDQ0OjhDNjczOjE0RTNDMjg6MUQ5MDhBNDo2QTVGQTBERSIsInZpc2l0b3JfaWQiOiI0MDYwNDU5ODg0Mzk5Nzk2NDQ2IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 4673ff657f99847c147f95e37eab071be625b2f61c895c65dbe356709baf19c5 |
| hovercard-subject-tag | issue:4621153143 |
| 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/function-sdk-python/211/issue_layout |
| twitter:image | https://opengraph.githubassets.com/88c2d70cafc111155a1bd0438f8e00d2c6312d999d6c08fa19a4fc0611c2c545/crossplane/function-sdk-python/issues/211 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/88c2d70cafc111155a1bd0438f8e00d2c6312d999d6c08fa19a4fc0611c2c545/crossplane/function-sdk-python/issues/211 |
| og:image:alt | What happened? The serve function accepts a grpcv1.FunctionRunnerService, when it should accept a grpcv1.FunctionRunnerServiceServicer. function-sdk-python/crossplane/function/runtime.py Lines 72 t... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | eric-carlsson |
| hostname | github.com |
| expected-hostname | github.com |
| None | 9c6adf27e6bcb2e88a468dcb4a1332a66b2467588c9ff5b1e184c0efab40cdd9 |
| turbo-cache-control | no-preview |
| go-import | github.com/crossplane/function-sdk-python git https://github.com/crossplane/function-sdk-python.git |
| octolytics-dimension-user_id | 45158470 |
| octolytics-dimension-user_login | crossplane |
| octolytics-dimension-repository_id | 721365259 |
| octolytics-dimension-repository_nwo | crossplane/function-sdk-python |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 721365259 |
| octolytics-dimension-repository_network_root_nwo | crossplane/function-sdk-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 | 95c4970ea4e0a52e841132721d7f22440b51fca9 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width