I read the issue, and am unclear as to why a plug-in wouldn’t support your use case?
> On Feb 26, 2019, at 6:19 PM, cos.pip...@gmail.com wrote: > > Has this been finally decided or is there still room to save this feature? > > We have invested all last year building an SDK (industrial automation for > oil&gas and pharma) we have two customer on a paying beta agreement. > > Many have spoken to this rather common scenario to protect IP (no, plugins do > not cut it as stated by others e.g. on > https://github.com/golang/go/issues/28152 ). > > Just shutting a feature off like this means a huge loss for us. > > Again, we wouldn't care too much about sharing source (clear or obfuscated) > but we wrote all the legal agreements around the BOP concept. We would have > to refactor to C which we tested (CGo that is) and it has significant > performance drop. > > But more than anything it's the sheer investment I made... > > > Thanks for any further consideration > >> On Thursday, October 18, 2018 at 1:16:43 PM UTC-4, Russ Cox wrote: >> The go command supports "binary-only packages", in which >> the compiled .a file is installed in GOROOT/pkg or GOPATH/pkg >> but the corresponding source code is only a stub with relevant >> imports (for linking), a special comment marking it as a binary-only >> package, and perhaps documentation for exported API. >> >> While the go command will use these packages if they exist in >> GOROOT or GOPATH, 'go get' will not download them: 'go get' >> is intentionally only about source code distribution. >> >> Furthermore, binary-only packages only work when the build is >> using the exact versions of whatever imported packages are >> needed by the binary-only package. If there were any important >> differences in a dependency between compilation and linking, >> the binary-only portion might have stale information about details >> of the imported package, such as type sizes, struct field offsets, >> inlined function bodies, escape analysis decisions, and so on, >> leading to silent memory corruption at runtime. >> >> Binary-only packages also only work when the build is using the >> exact version of the Go toolchain that was used for compilation. >> This is at least enforced at link time, with the effect that if your >> binary-only package only imports the standard library and you don't >> use any special compilation flags, then the toolchain version check >> suffices to avoid the silent memory corruption problem described in >> the previous package. But if your package imports any non-standard >> package for which that the eventual user might try to combine with >> a different version, you're in trouble again. >> >> Compiled Go programs also contain much richer amounts of runtime >> information than compiled C programs, so that for example all the >> details of type declarations, including struct definitions, are in the >> compiled code, along with file names and line numbers for the compiled >> code, and increasingly good debug information that was impossible to >> turn off until very recently. Overall, a binary-only package obscures very >> little. >> >> In short, binary-only packages: >> >> - have never been supported by 'go get', >> so you've had to go out of your way to use them, >> - aren't even guaranteed to work when you do use them, >> possibly leading to silent memory corruption, and >> - still expose quite a lot more than most people would expect >> about the original source code. >> >> For these reasons, we're looking at removing binary-only package >> support entirely. >> >> If you use binary-only packages and think it's important to keep that >> support around, please let us know either on this thread or at >> golang.org/issue/28152. >> >> Thanks. >> Russ > > -- > 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. > For more options, visit https://groups.google.com/d/optout. -- 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. For more options, visit https://groups.google.com/d/optout.