unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#32919: Golang build cache and content-based staleness in Guix
       [not found] <87va6km333.fsf@gmail.com>
@ 2018-10-03 14:53 ` Leo Famulari
  2018-10-03 16:56   ` Gábor Boskovits
  0 siblings, 1 reply; 2+ messages in thread
From: Leo Famulari @ 2018-10-03 14:53 UTC (permalink / raw)
  To: 32919; +Cc: Katherine Cox-Buday

[-- Attachment #1: Type: text/plain, Size: 1182 bytes --]

On Tue, Oct 02, 2018 at 04:49:20PM -0500, Katherine Cox-Buday wrote:
> We should perhaps begin thinking about switching the Go build system to
> the 1.11 series of releases.

I agree. When Go 1.11 was released, Go 1.9 became unsupported upstream,
so we should stop using it.

The go-build-system as implemented in Guix worked great through Go 1.9.

Go 1.10 changed how the Go compiler chooses whether or not to re-use
compiled Go objects, using a technique they call "content-based
staleness", which is basically a memoized cache, similar to Guix. [0]

For us, the downside of that change is that, when building within Guix
using the tools we have now, the Go compiler never re-uses compiled
objects and instead rebuilds everything, every time. That is, the Go
build cache is never hit. It's inefficient but nothing breaks from what
I've seen.

It would be great if our go-build-system could be updated to work with
the new Go build cache, but in my opinion it's not a blocker. I think we
will have to change it eventually, because they seem to be phasing out
$GOPATH, but we are good for now.

What do you think?

[0]
https://bugs.gnu.org/30579
https://golang.org/doc/go1.10#build

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* bug#32919: Golang build cache and content-based staleness in Guix
  2018-10-03 14:53 ` bug#32919: Golang build cache and content-based staleness in Guix Leo Famulari
@ 2018-10-03 16:56   ` Gábor Boskovits
  0 siblings, 0 replies; 2+ messages in thread
From: Gábor Boskovits @ 2018-10-03 16:56 UTC (permalink / raw)
  To: Leo Famulari; +Cc: Katherine Cox-Buday, 32919

[-- Attachment #1: Type: text/plain, Size: 1432 bytes --]

Leo Famulari <leo@famulari.name> ezt írta (időpont: 2018. okt. 3., Sze,
16:54):

> On Tue, Oct 02, 2018 at 04:49:20PM -0500, Katherine Cox-Buday wrote:
> > We should perhaps begin thinking about switching the Go build system to
> > the 1.11 series of releases.
>
> I agree. When Go 1.11 was released, Go 1.9 became unsupported upstream,
> so we should stop using it.
>
> The go-build-system as implemented in Guix worked great through Go 1.9.
>
> Go 1.10 changed how the Go compiler chooses whether or not to re-use
> compiled Go objects, using a technique they call "content-based
> staleness", which is basically a memoized cache, similar to Guix. [0]
>
> For us, the downside of that change is that, when building within Guix
> using the tools we have now, the Go compiler never re-uses compiled
> objects and instead rebuilds everything, every time. That is, the Go
> build cache is never hit. It's inefficient but nothing breaks from what
> I've seen.
>
> It would be great if our go-build-system could be updated to work with
> the new Go build cache, but in my opinion it's not a blocker. I think we
> will have to change it eventually, because they seem to be phasing out
> $GOPATH, but we are good for now.
>
> What do you think?
>
>
I think we should go for it. I don't think the cache issue is a blocker.


> [0]
> https://bugs.gnu.org/30579
> https://golang.org/doc/go1.10#build
>

[-- Attachment #2: Type: text/html, Size: 2062 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-10-03 16:57 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <87va6km333.fsf@gmail.com>
2018-10-03 14:53 ` bug#32919: Golang build cache and content-based staleness in Guix Leo Famulari
2018-10-03 16:56   ` Gábor Boskovits

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).