[pkg-go] Security support for packages written in Go
Dmitry Smirnov
onlyjob at debian.org
Tue Apr 5 23:24:20 UTC 2016
On Tuesday, 5 April 2016 9:27:27 AM AEST Florian Weimer wrote:
> we need to discuss how we can support applications written in Go for
> stretch.
>
> The most radical approach would be not to ship any Go applications in
> stretch, only the basic Go language implementations. This is probably
> not desirable.
Alternatively we could explicitly disclaim security support for Golang
applications.
IMHO Golang community abused almost as much as possible with static linking,
embedding resources to executables, not using versioning and breaking API at
any time, etc.
Even if we find effective technical solution to detect dependency chains
there is a problem of re-building ever growing number of all packages
indirectly depending on vulnerable package.
Golang is just too young, unstable and fragile. I have a feeling that few
upstream projects take security concerns seriously. Many upstream projects
have no concept of "stable" releases so I doubt it is practical to offer any
kind of security support for Golang when too many projects introduce new
dependencies with almost every new versioned release while old release is
abandoned as soon as new one becomes available.
Unless we can exclude Golang from security support I think we should not ship
any Golang applications with next stable release.
Unfortunately if we exclude Golang binaries from release Debian will not be
competitive in the enterprise sector: industry is rapidly developing Golang
tools for container solutions and they are crucial for Debian success.
To some extent we can compensate for absence of Golang binaries in stable
release if we continue developing in "testing" and make selected apps
available through stretch-backports suite.
> One approach would be to ship applications as source code only (just
> like libraries), and compile them locally upon installation. This is
> what Emacs and Common Lisp implementations already do. With the
> growth of Go compilation and link times, this seems less and less
> attractive, though.
This is a possible solution but with Golang it is not practical as building
some packages takes too much time and resources. Also we still need to build
packages on build servers to have tests coverage and build logs.
Unfortunately shipping Golang applications in sources only (no binaries) is
not an option...
--
All the best,
Dmitry Smirnov.
---
Good luck happens when preparedness meets opportunity.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.alioth.debian.org/pipermail/pkg-go-maintainers/attachments/20160406/ba194f03/attachment.sig>
More information about the Pkg-go-maintainers
mailing list