Skip to content

Conversation

julienrbrt
Copy link
Member

@julienrbrt julienrbrt commented Jul 25, 2025

Some repos, such as https://github.com/evstack/ev-abci have modules, but their protos is not at the conventional place: repo/proto.

Ignite currently fails to generate the ts-client and openapi because of that:

Cannot build app: lstat /var/cache/go/github.com/rollkit/go-execution-abci@v0.3.0/proto: no such file or directory. 

This PR fixes it and make it find the protos. If none are found it skips them.

Step to reproduce

ignite s chain gm
ignite app install github.com/ignite/apps/rollkit
ignite rollkit add
ignite rollkit init
ignite s ts-client --yes

@julienrbrt julienrbrt enabled auto-merge (squash) July 25, 2025 15:03
Copy link
Collaborator

@Pantani Pantani left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't follow the steps to test because it is throwing an error, but I think it is something related to the rollkit app

Screenshot 2025-08-04 at 15 51 11
[IGNITE] cannot build app:                                                                                                           
[IGNITE]                                                                                                                             
[IGNITE] error while running command go build -o                                                                                     
[IGNITE] /Users/danilopantani/Desktop/go/bin/marsd -mod readonly -tags  -ldflags -X                                                  
[IGNITE] github.com/cosmos/cosmos-sdk/version.Name=Mars -X                                                                           
[IGNITE] github.com/cosmos/cosmos-sdk/version.AppName=marsd -X                                                                       
[IGNITE] github.com/cosmos/cosmos-sdk/version.Version= -X                                                                            
[IGNITE] github.com/cosmos/cosmos-sdk/version.Commit=b76a9c9d93e7034ab09a1bbda3c9a99fd0d053f0                                        
[IGNITE] -X github.com/cosmos/cosmos-sdk/version.BuildTags= -X                                                                       
[IGNITE] mars/cmd/marsd/cmd.ChainID=mars -gcflags all=-N -l .: #                                                                     
[IGNITE] github.com/quic-go/webtransport-go                                                                                          
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/client.go:37:94:          
[IGNITE] undefined: quic.EarlyConnection                                                                                             
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/client.go:105:19:         
[IGNITE] cannot use func(ft http3.FrameType, connTracingID quic.ConnectionTracingID, str                                             
[IGNITE] quic.Stream, e error) (hijacked bool, err error) {…} (value of type func(ft                                                 
[IGNITE] http3.FrameType, connTracingID quic.ConnectionTracingID, str quic.Stream, e                                                 
[IGNITE] error) (hijacked bool, err error)) as func(http3.FrameType,                                                                 
[IGNITE] quic.ConnectionTracingID, *quic.Stream, error) (hijacked bool, err error) value                                             
[IGNITE] in struct literal                                                                                                           
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/client.go:112:52:         
[IGNITE] cannot use str (variable of struct type quic.Stream) as io.Reader value in                                                  
[IGNITE] argument to quicvarint.NewReader: quic.Stream does not implement io.Reader                                                  
[IGNITE] (method Read has pointer receiver)                                                                                          
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/client.go:122:22:         
[IGNITE] cannot use func(st http3.StreamType, connTracingID quic.ConnectionTracingID, str                                            
[IGNITE] quic.ReceiveStream, err error) (hijacked bool) {…} (value of type func(st                                                   
[IGNITE] http3.StreamType, connTracingID quic.ConnectionTracingID, str                                                               
[IGNITE] quic.ReceiveStream, err error) (hijacked bool)) as func(http3.StreamType,                                                   
[IGNITE] quic.ConnectionTracingID, *quic.ReceiveStream, error) (hijacked bool) value in                                              
[IGNITE] struct literal                                                                                                              
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/client.go:167:73:         
[IGNITE] cannot use requestStr (variable of type *http3.RequestStream) as http3.Stream                                               
[IGNITE] value in argument to d.conns.AddSession                                                                                     
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/session.go:65:19:         
[IGNITE] undefined: http3.Connection                                                                                                 
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/session.go:85:50:         
[IGNITE] undefined: http3.Connection                                                                                                 
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/server.go:89:24:          
[IGNITE] cannot use func(ft http3.FrameType, connTracingID quic.ConnectionTracingID, str                                             
[IGNITE] quic.Stream, err error) (bool, error) {…} (value of type func(ft                                                            
[IGNITE] http3.FrameType, connTracingID quic.ConnectionTracingID, str quic.Stream, err                                               
[IGNITE] error) (bool, error)) as func(http3.FrameType, quic.ConnectionTracingID,                                                    
[IGNITE] *quic.Stream, error) (hijacked bool, err error) value in assignment                                                         
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/server.go:126:42:         
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/session_manager.go:167:49:
[IGNITE] undefined: http3.Connection                                                                                                 
[IGNITE] ../../../../../../pkg/mod/github.com/quic-go/webtransport-go@v0.8.1-0.20241018022711-4ac2c9250e66/server.go:89:24:          
[IGNITE] too many errors                                                                                                             
[IGNITE] # github.com/libp2p/go-libp2p/p2p/transport/quicreuse                                                                       
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/connmgr.go:22:36:                     
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/connmgr.go:31:89:                     
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/connmgr.go:163:109:                   
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/connmgr.go:168:138:                   
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/connmgr.go:293:129:                   
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/reuse.go:28:89:                       
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/listener.go:20:32:                    
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/listener.go:29:37:                    
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/listener.go:83:54:                    
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/listener.go:160:30:                   
[IGNITE] undefined: quic.Connection                                                                                                  
[IGNITE] ../../../../../../pkg/mod/github.com/libp2p/go-libp2p@v0.41.1/p2p/transport/quicreuse/listener.go:83:54:                    
[IGNITE] too many errors                                                                                                             
[IGNITE] : exit status 1        

@julienrbrt
Copy link
Member Author

julienrbrt commented Aug 4, 2025

In which step are you getting this?
I tried again and it worked using this PR (try maybe to clean the go cache or via a GitHub Codespaces)

@Pantani
Copy link
Collaborator

Pantani commented Aug 5, 2025

rm -rf mars ~/.mars ~/.ignite && \
ignite s chain mars && cd mars && \
ignite app install github.com/ignite/apps/rollkit && \
ignite rollkit add && \
ignite rollkit init && \
ignite g ts-client -y && \
ignite c serve -r --clear-cache -v
Screenshot 2025-08-05 at 15 20 04

@julienrbrt
Copy link
Member Author

julienrbrt commented Aug 5, 2025


rm -rf mars ~/.mars ~/.ignite && \

ignite s chain mars && cd mars && \

ignite app install github.com/ignite/apps/rollkit && \

ignite rollkit add && \

ignite rollkit init && \

ignite g ts-client -y && \

ignite c serve -r --clear-cache -v

Screenshot 2025-08-05 at 15 20 04

Yea, do not serve the chain 😁.
It needs to be started differently for rollkit. The point of those steps is mainly to see the tsclient scaffolded without issue (main fails at that currently)

@julienrbrt julienrbrt merged commit c3b7fd2 into main Aug 8, 2025
42 of 43 checks passed
@julienrbrt julienrbrt deleted the julien/fix-gen branch August 8, 2025 20:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:ci CI/CD workflow and automated jobs. component:configs component:packages type:services Service-related issues.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants