Aah okay, I've got it working now - thanks! Not going to run tags just to make things easier, but I'll be the sole developer for a good while so it shouldn't be too much of an issue (and it's self-inflicted, if it is)!
Thanks again for the assistance On Tuesday, August 17, 2021 at 5:49:32 PM UTC+2 jayc...@google.com wrote: > If you are using submodules, the best way to do that is to treat each > modules as a separately versioned, releasable unit. So each module has a > "require" directive for other modules it needs at the minimum usable > version (managed with 'go get' or 'go mod tidy'). You can tag versions for > each submodule by adding a directory prefix in front of the tag. For > example, if you have a module in subdirectory "a/b", the tag would look > like "a/b/v1.0.0". You don't have to tag of course; pseudo-versions > referring to commits still work fine. > > This makes coordinating changes across modules a bit cumbersome though. > For example, if you have a module A that depends on module B, and A needs a > bugfix in B, you'll probably want to 1) add local replace directives in A > and B, 2) make the change in both and confirm it works, 3) remove the > replace directives, 4) commit the change in B, 5) tag a release in B, and > 6) update A's dependency on B. > > On Mon, Aug 16, 2021 at 11:25 PM Nicholas Bunn <nichola...@gmail.com> > wrote: > >> Thanks for the prompt response, Jay! >> >> And thanks for clearing that up, it's good to know that it's intended to >> run as such. For the purpose and scale of this project, it's a bit easier >> to keep everything together and use sub-modules where I can (this hasn't >> been an issue thus far) so I'd like to keep it this way if possible. If I >> do stick with this approach, how could I work around this? Intuitively, I'd >> just install the sub-modules individually - but this is what produced my >> issue in the first place. Is there a way I can force the modules to exist >> on their own instead of as modules in a subdirectory? >> On Monday, August 16, 2021 at 8:35:15 PM UTC+2 jayc...@google.com wrote: >> >>> Hi Nic, >>> >>> This is actually working as intended, though I don't think we've >>> adequately documented it. I've sent CL 342531 >>> <https://go-review.googlesource.com/c/website/+/342531> to mention this >>> in the reference documentation. >>> >>> In short though, files in a subdirectory that contains a go.mod file are >>> considered part of a different module, so when you download the module in >>> the parent directory, the files in that subdirectory are not included. >>> >>> In many cases, putting multiple Go modules in the same repository can be >>> counter-intuitive. I'd only recommend it in situations where you have >>> multiple projects that need to be released and versioned independently. If >>> the projects are tightly couple and need to be released together it may be >>> better to have them in one module. >>> >>> On Mon, Aug 16, 2021 at 9:11 AM Nicholas Bunn <nichola...@gmail.com> >>> wrote: >>> >>>> Hi all, >>>> >>>> Hoping someone can give me a bit of assistance here. I'm busy >>>> refactoring a gRPC project of mine so that all proto files are generated >>>> into a single, "protoFile" directory, instead of having the generated >>>> files >>>> living under the service's directory. My idea is to have the generated >>>> files implemented as modules, allowing any client to access them from this >>>> central location. >>>> >>>> The issue I've run into is the "module found ... but does not contain >>>> ..." one. I've hit this a couple of times before (as anyone new to Go >>>> modules does, I'm sure) and can usually solve it by cleaning modcache >>>> and/or re-initialising the modules. However this time the usual solutions >>>> haven't helped much. I've attempted to implement semantic versioning on my >>>> Github too, which didn't resolve anything either. Go get fetches the >>>> correct version of my project directory ( >>>> github.com/NicholasBunn/mastersCaseStudy), but when I check my pkg >>>> directory, it's omitted all subfolders that contain Go modules (including >>>> all go services with a go.mod file). >>>> >>>> The project is hosted at github.com/NicholasBunn/mastersCaseStudy, >>>> with the generated protos living in protoFiles/go. If you'd like to try >>>> and >>>> re-create the issue, cd into >>>> mastersCaseStudy/services/authenticationService, and run "go mod tidy". >>>> This service makes use of the generated protos living in >>>> mastersCaseStudy/protoFiles/go/authenticationService/v1, which has its >>>> go.mod and go.sum files, but the "go mod tidy" fails on my side with the >>>> error mentioned above. >>>> >>>> Hoping I've just misunderstood something with Go modules and someone >>>> here can throw me onto the right path again! >>>> >>>> Thanks in advance, >>>> Nic >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "golang-nuts" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to golang-nuts...@googlegroups.com. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/golang-nuts/aa1c413c-f9ab-4be0-822d-4886a37bbdb9n%40googlegroups.com >>>> >>>> <https://groups.google.com/d/msgid/golang-nuts/aa1c413c-f9ab-4be0-822d-4886a37bbdb9n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>> . >>>> >>> -- >> You received this message because you are subscribed to the Google Groups >> "golang-nuts" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to golang-nuts...@googlegroups.com. >> > To view this discussion on the web visit >> https://groups.google.com/d/msgid/golang-nuts/88085943-fb64-429d-999b-e0df384d2e33n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/golang-nuts/88085943-fb64-429d-999b-e0df384d2e33n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/121daf57-3abc-4987-91e1-e617265ae1c5n%40googlegroups.com.