Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
- [#4703](https://github.com/ignite/cli/pull/4703) Remove testutil.Register function.
- [#4702](https://github.com/ignite/cli/pull/4702) Improve app detection by checking for inheritance instead of interface implementation.
- [#4707](https://github.com/ignite/cli/pull/4707) Show `buf` version in `ignite version` only when in a go module.
- [#4709](https://github.com/ignite/cli/pull/4709) Remove legacy msgServer support

### Bug Fixes

Expand Down
21 changes: 1 addition & 20 deletions ignite/services/scaffolder/message.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import (
"github.com/ignite/cli/v29/ignite/templates/field"
"github.com/ignite/cli/v29/ignite/templates/field/datatype"
"github.com/ignite/cli/v29/ignite/templates/message"
modulecreate "github.com/ignite/cli/v29/ignite/templates/module/create"
)

// messageOptions represents configuration for the message scaffolding.
Expand Down Expand Up @@ -141,31 +140,13 @@ func (s Scaffolder) AddMessage(
}
)

// Check and support MsgServer convention
var gens []*genny.Generator
gens, err = supportMsgServer(
gens,
s.Tracer(),
&modulecreate.MsgServerOptions{
ModuleName: opts.ModuleName,
ModulePath: opts.ModulePath,
AppName: opts.AppName,
ProtoDir: opts.ProtoDir,
ProtoVer: opts.ProtoVer,
},
)
if err != nil {
return err
}

// Scaffold
g, err = message.NewGenerator(s.Tracer(), opts)
if err != nil {
return err
}
gens = append(gens, g)

return s.Run(gens...)
return s.Run(g)
}

// checkForbiddenMessageField returns true if the name is forbidden as a message name.
Expand Down
48 changes: 0 additions & 48 deletions ignite/services/scaffolder/patch.go
Original file line number Diff line number Diff line change
@@ -1,49 +1 @@
package scaffolder

import (
"os"
"path/filepath"

"github.com/gobuffalo/genny/v2"

"github.com/ignite/cli/v29/ignite/pkg/placeholder"
modulecreate "github.com/ignite/cli/v29/ignite/templates/module/create"
)

// supportMsgServer checks if the module supports the MsgServer convention
// appends the generator to support it if it doesn't
// https://github.com/cosmos/cosmos-sdk/blob/main/docs/architecture/adr-031-msg-service.md
func supportMsgServer(
gens []*genny.Generator,
replacer placeholder.Replacer,
opts *modulecreate.MsgServerOptions,
) ([]*genny.Generator, error) {
// Check if convention used
msgServerDefined, err := isMsgServerDefined(opts)
if err != nil {
return nil, err
}
if !msgServerDefined {
// Patch the module to support the convention
g, err := modulecreate.AddMsgServerConventionToLegacyModule(replacer, opts)
if err != nil {
return nil, err
}
gens = append(gens, g)
}
return gens, nil
}

// isMsgServerDefined checks if the module uses the MsgServer convention for transactions
// this is checked by verifying the existence of the tx.proto file.
func isMsgServerDefined(opts *modulecreate.MsgServerOptions) (bool, error) {
txProto, err := filepath.Abs(opts.ProtoFile("tx.proto"))
if err != nil {
return false, err
}

if _, err := os.Stat(txProto); os.IsNotExist(err) {
return false, nil
}
return true, err
}
16 changes: 0 additions & 16 deletions ignite/services/scaffolder/type.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import (
"github.com/ignite/cli/v29/ignite/pkg/placeholder"
"github.com/ignite/cli/v29/ignite/templates/field"
"github.com/ignite/cli/v29/ignite/templates/field/datatype"
modulecreate "github.com/ignite/cli/v29/ignite/templates/module/create"
"github.com/ignite/cli/v29/ignite/templates/typed"
"github.com/ignite/cli/v29/ignite/templates/typed/dry"
"github.com/ignite/cli/v29/ignite/templates/typed/list"
Expand Down Expand Up @@ -179,21 +178,6 @@ func (s Scaffolder) AddType(
}
gens []*genny.Generator
)
// Check and support MsgServer convention
gens, err = supportMsgServer(
gens,
s.runner.Tracer(),
&modulecreate.MsgServerOptions{
ModuleName: opts.ModuleName,
ModulePath: opts.ModulePath,
AppName: opts.AppName,
ProtoDir: opts.ProtoDir,
ProtoVer: opts.ProtoVer,
},
)
if err != nil {
return err
}

// create the type generator depending on the model
switch {
Expand Down
8 changes: 0 additions & 8 deletions ignite/templates/module/create/base.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,20 +20,12 @@ import (

// NewGenerator returns the generator to scaffold a module inside an app.
func NewGenerator(opts *CreateOptions) (*genny.Generator, error) {
subMsgServer, err := fs.Sub(fsMsgServer, "files/msgserver")
if err != nil {
return nil, errors.Errorf("fail to generate sub: %w", err)
}

subBase, err := fs.Sub(fsBase, "files/base")
if err != nil {
return nil, errors.Errorf("fail to generate sub: %w", err)
}

g := genny.New()
if err := g.OnlyFS(subMsgServer, nil, nil); err != nil {
return g, err
}
if err := g.OnlyFS(subBase, nil, nil); err != nil {
return g, err
}
Expand Down
82 changes: 0 additions & 82 deletions ignite/templates/module/create/msgserver.go

This file was deleted.

14 changes: 0 additions & 14 deletions ignite/templates/module/create/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,20 +37,6 @@ func (opts *ParamsOptions) ProtoFile(fname string) string {
return filepath.Join(opts.ProtoDir, opts.AppName, opts.ModuleName, opts.ProtoVer, fname)
}

// MsgServerOptions defines options to add MsgServer.
type MsgServerOptions struct {
ModuleName string
ModulePath string
AppName string
ProtoDir string
ProtoVer string
}

// ProtoFile returns the path to the proto folder.
func (opts *MsgServerOptions) ProtoFile(fname string) string {
return filepath.Join(opts.ProtoDir, opts.AppName, opts.ModuleName, opts.ProtoVer, fname)
}

// CreateOptions represents the options to scaffold a Cosmos SDK module.
type CreateOptions struct {
ModuleName string
Expand Down
3 changes: 0 additions & 3 deletions ignite/templates/module/create/templates.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,4 @@ var (

//go:embed files/ibc/* files/ibc/**/*
fsIBC embed.FS

//go:embed files/msgserver/* files/msgserver/**/*
fsMsgServer embed.FS
)