This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/devlake.git


The following commit(s) were added to refs/heads/main by this push:
     new 69de826e1 fix(plugins): register compiled-in plugins as pointers 
(#9326)
69de826e1 is described below

commit 69de826e1825bb0aa59b19b33ca60954df132f19
Author: Amir Nazary <[email protected]>
AuthorDate: Sun Nov 8 15:12:12 2026 +0100

    fix(plugins): register compiled-in plugins as pointers (#9326)
    
    The generated registry registered plugins by value, so methods declared on
    pointer receivers were dropped from the method set. org declares Init and
    ApiResources on *Org, so in v1.0.3-beta19 it is never initialised and every
    /plugins/org/* route returns 404. Shared-object loading always registered a
    pointer (plugin.Lookup returns *T), so this restores that behaviour.
    
    Closes #9327
    
    Co-authored-by: Claude Opus 5.5 <[email protected]>
---
 backend/plugins/all/all.go       | 94 ++++++++++++++++++++--------------------
 backend/tools/pluginsgen/main.go |  2 +-
 2 files changed, 48 insertions(+), 48 deletions(-)

diff --git a/backend/plugins/all/all.go b/backend/plugins/all/all.go
index 7fd68c5a1..a157a8350 100644
--- a/backend/plugins/all/all.go
+++ b/backend/plugins/all/all.go
@@ -81,51 +81,51 @@ import (
 )
 
 func init() {
-       plugin.MustRegister(ae.AE{})
-       plugin.MustRegister(argocd.ArgoCD{})
-       plugin.MustRegister(asana.Asana{})
-       plugin.MustRegister(azuredevops_go.Azuredevops{})
-       plugin.MustRegister(bamboo.Bamboo{})
-       plugin.MustRegister(bitbucket.Bitbucket{})
-       plugin.MustRegister(bitbucket_server.BitbucketServer{})
-       plugin.MustRegister(circleci.Circleci{})
-       plugin.MustRegister(claude_code.ClaudeCode{})
-       plugin.MustRegister(clickup.ClickUp{})
-       plugin.MustRegister(cursor.Cursor{})
-       plugin.MustRegister(customize.Customize{})
-       plugin.MustRegister(dora.Dora{})
-       plugin.MustRegister(feishu.Feishu{})
-       plugin.MustRegister(gh_copilot.GhCopilot{})
-       plugin.MustRegister(gitee.Gitee{})
-       plugin.MustRegister(gitextractor.GitExtractor{})
-       plugin.MustRegister(github.Github{})
-       plugin.MustRegister(github_graphql.GithubGraphql{})
-       plugin.MustRegister(gitlab.Gitlab{})
-       plugin.MustRegister(grafana_irm.GrafanaIrm{})
-       plugin.MustRegister(icla.Icla{})
-       plugin.MustRegister(incidentio.Incidentio{})
-       plugin.MustRegister(issue_trace.IssueTrace{})
-       plugin.MustRegister(jenkins.Jenkins{})
-       plugin.MustRegister(jira.Jira{})
-       plugin.MustRegister(kiro.Kiro{})
-       plugin.MustRegister(linear.Linear{})
-       plugin.MustRegister(linker.Linker{})
-       plugin.MustRegister(monorepo.Monorepo{})
-       plugin.MustRegister(opsgenie.Opsgenie{})
-       plugin.MustRegister(org.Org{})
-       plugin.MustRegister(pagerduty.PagerDuty{})
-       plugin.MustRegister(refdiff.RefDiff{})
-       plugin.MustRegister(rootly.Rootly{})
-       plugin.MustRegister(slack.Slack{})
-       plugin.MustRegister(sonarqube.Sonarqube{})
-       plugin.MustRegister(starrocks.StarRocks{})
-       plugin.MustRegister(taiga.Taiga{})
-       plugin.MustRegister(tapd.Tapd{})
-       plugin.MustRegister(teambition.Teambition{})
-       plugin.MustRegister(tempo.Tempo{})
-       plugin.MustRegister(testmo.Testmo{})
-       plugin.MustRegister(trello.Trello{})
-       plugin.MustRegister(webhook.Webhook{})
-       plugin.MustRegister(youtrack.Youtrack{})
-       plugin.MustRegister(zentao.Zentao{})
+       plugin.MustRegister(&ae.AE{})
+       plugin.MustRegister(&argocd.ArgoCD{})
+       plugin.MustRegister(&asana.Asana{})
+       plugin.MustRegister(&azuredevops_go.Azuredevops{})
+       plugin.MustRegister(&bamboo.Bamboo{})
+       plugin.MustRegister(&bitbucket.Bitbucket{})
+       plugin.MustRegister(&bitbucket_server.BitbucketServer{})
+       plugin.MustRegister(&circleci.Circleci{})
+       plugin.MustRegister(&claude_code.ClaudeCode{})
+       plugin.MustRegister(&clickup.ClickUp{})
+       plugin.MustRegister(&cursor.Cursor{})
+       plugin.MustRegister(&customize.Customize{})
+       plugin.MustRegister(&dora.Dora{})
+       plugin.MustRegister(&feishu.Feishu{})
+       plugin.MustRegister(&gh_copilot.GhCopilot{})
+       plugin.MustRegister(&gitee.Gitee{})
+       plugin.MustRegister(&gitextractor.GitExtractor{})
+       plugin.MustRegister(&github.Github{})
+       plugin.MustRegister(&github_graphql.GithubGraphql{})
+       plugin.MustRegister(&gitlab.Gitlab{})
+       plugin.MustRegister(&grafana_irm.GrafanaIrm{})
+       plugin.MustRegister(&icla.Icla{})
+       plugin.MustRegister(&incidentio.Incidentio{})
+       plugin.MustRegister(&issue_trace.IssueTrace{})
+       plugin.MustRegister(&jenkins.Jenkins{})
+       plugin.MustRegister(&jira.Jira{})
+       plugin.MustRegister(&kiro.Kiro{})
+       plugin.MustRegister(&linear.Linear{})
+       plugin.MustRegister(&linker.Linker{})
+       plugin.MustRegister(&monorepo.Monorepo{})
+       plugin.MustRegister(&opsgenie.Opsgenie{})
+       plugin.MustRegister(&org.Org{})
+       plugin.MustRegister(&pagerduty.PagerDuty{})
+       plugin.MustRegister(&refdiff.RefDiff{})
+       plugin.MustRegister(&rootly.Rootly{})
+       plugin.MustRegister(&slack.Slack{})
+       plugin.MustRegister(&sonarqube.Sonarqube{})
+       plugin.MustRegister(&starrocks.StarRocks{})
+       plugin.MustRegister(&taiga.Taiga{})
+       plugin.MustRegister(&tapd.Tapd{})
+       plugin.MustRegister(&teambition.Teambition{})
+       plugin.MustRegister(&tempo.Tempo{})
+       plugin.MustRegister(&testmo.Testmo{})
+       plugin.MustRegister(&trello.Trello{})
+       plugin.MustRegister(&webhook.Webhook{})
+       plugin.MustRegister(&youtrack.Youtrack{})
+       plugin.MustRegister(&zentao.Zentao{})
 }
diff --git a/backend/tools/pluginsgen/main.go b/backend/tools/pluginsgen/main.go
index 719b2fcb4..2416631bb 100644
--- a/backend/tools/pluginsgen/main.go
+++ b/backend/tools/pluginsgen/main.go
@@ -270,7 +270,7 @@ func render(plugins []plugin) ([]byte, error) {
        buf.WriteString(")\n\n")
        buf.WriteString("func init() {\n")
        for _, p := range plugins {
-               fmt.Fprintf(&buf, "\tplugin.MustRegister(%s.%s{})\n", p.alias, 
p.typ)
+               fmt.Fprintf(&buf, "\tplugin.MustRegister(&%s.%s{})\n", p.alias, 
p.typ)
        }
        buf.WriteString("}\n")
 

Reply via email to