App Engine Go 1.1 Beta

1432 views
Skip to first unread message

Andrew Gerrand

unread,
Apr 2, 2013, 3:23:11 AM4/2/13
to google-appengine-go, golang-nuts
Hello Go App Engine users,

As you may know, the Go developers intend to launch Go 1.1 in the coming weeks. All Go apps will be migrated to use Go 1.1 after its release. We are now providing a beta version of the Go 1.1 runtime for those who wish to test their apps against the new runtime.

While we do not anticipate any issues for existing apps (Go 1.1 is compatible with Go 1.0), some implementation details have changed that may affect the behavior of your app (but not its correctness). We recommend that you test important apps against the new runtime using an alternate app version. The tentative release notes for Go 1.1 are available here:

    http://tip.golang.org/doc/go1.1

Go 1.1 has not yet been released, so the go1.1beta runtime is based on revision 43eb97ed849a of the core Go tree, and will be updated as Go 1.1 approaches.

We will not be providing a beta version of the Go 1.1 SDK. You should use the appcfg.py program from the normal Go App Engine SDK to deploy your app.

To use go1.1beta, update your app.yaml file to use the new api_version:

    api_version: go1.1beta

When Go 1.1 is released it will become the basis for api_version 'go1', as normal, and 'go1.1beta' will be retired soon afterward.

Your feedback and bug reports are most appreciated.

Andrew


Lucio

unread,
Apr 2, 2013, 3:44:58 AM4/2/13
to golan...@googlegroups.com, google-appengine-go
If you plan to apply changes to it, then I think "alpha" might be a more appropriate label.  I would reserve various "beta" revisions for specific, immutable instances.  That, at least, is the way I understand the convention around such experimental releases.

Lucio.

Alexey Palazhchenko

unread,
Apr 2, 2013, 5:38:12 AM4/2/13
to google-ap...@googlegroups.com, golang-nuts
Hi Andrew,

Here is a part of my deployment log:

01:36 PM Compilation starting.
01:36 PM Compilation: 28 files left.
01:36 PM Error 422: --- begin server output ---
Unknown api_version: go1.1beta
--- end server output ---
01:36 PM Rolling back the update.
Error 422: --- begin server output ---

--- end server output ---

–-–
Alexey "AlekSi" Palazhchenko

David Symonds

unread,
Apr 2, 2013, 5:49:30 AM4/2/13
to Alexey Palazhchenko, google-appengine-go, golang-nuts
Sorry for the bother; it should start working in about 10 minutes.

Julius Kovac

unread,
Apr 2, 2013, 6:25:56 AM4/2/13
to google-ap...@googlegroups.com, Alexey Palazhchenko, golang-nuts
I gave it a try...and this is the result:

12:17 PM Cloning 168 static files.
12:17 PM Cloning 79 application files.
12:17 PM Compilation starting.
12:17 PM Compilation: 69 files left.
12:17 PM Error 422: --- begin server output ---
Compile failed:
2013/04/02 03:17:17 go-app-builder: Failed building app: failed running 6g: exit status 1


fpresize/fpconvert2.go:12: cannot import unsafe package "image"
fpresize/fpimage.go:7: cannot import unsafe package "image"
fpresize/fpimage.go:8: cannot import unsafe package "image/color"
fpresize/fpresize.go:10: cannot import unsafe package "image"
fpresize/fpresize.go:11: cannot import unsafe package "math"
fpresize/fpresize.go:12: cannot import unsafe package "errors"
--- end server output ---
12:17 PM Rolling back the update.
Error 422: --- begin server output ---

--- end server output ---

Alexey Palazhchenko

unread,
Apr 2, 2013, 6:27:24 AM4/2/13
to David Symonds, google-appengine-go, golang-nuts
Hi,

No luck yet.

02:26 PM Error 422: --- begin server output ---
Compile failed:
2013/04/02 03:26:41 go-app-builder: Failed building app: failed running 6g: exit status 1


gonuts/models.go:5: cannot import unsafe package "appengine"
gonuts/models.go:11: cannot import unsafe package "fmt"

David Symonds

unread,
Apr 2, 2013, 6:39:13 AM4/2/13
to Alexey Palazhchenko, google-appengine-go, golang-nuts
Well, this is confusing. I tested this, but it appears to be not working now.

Sorry for the trouble everyone. I'll report back when I've fixed this
and verified it.

David Symonds

unread,
Apr 2, 2013, 9:40:20 AM4/2/13
to Alexey Palazhchenko, google-appengine-go, golang-nuts
Turns out to be a compiler bug.
(https://codereview.appspot.com/8255044/ if you're interested.)

I hope to have a fix in production tomorrow.

David Symonds

unread,
Apr 2, 2013, 8:29:48 PM4/2/13
to Alexey Palazhchenko, google-appengine-go, golang-nuts
Okay. Everything is fixed, in production, and I've tested it. You're
good to start playing with it.

Sorry again for the trouble.

Dean Sinaean

unread,
Apr 2, 2013, 11:25:50 PM4/2/13
to golan...@googlegroups.com
On 04/02/2013 03:23 AM, Andrew Gerrand wrote:
> Hello Go App Engine users,
>
> As you may know, the Go developers intend to launch Go 1.1 in the
> coming weeks. All Go apps will be migrated to use Go 1.1 after its
> release. We are now providing a beta version of the Go 1.1 runtime for
> those who wish to test their apps against the new runtime.
where can I download?
>
> While we do not anticipate any issues for existing apps (Go 1.1 is
> compatible with Go 1.0), some implementation details have changed that
> may affect the behavior of your app (but not its correctness). We
> recommend that you test important apps against the new runtime using
> an alternate app version. The tentative release notes for Go 1.1 are
> available here:
>
> http://tip.golang.org/doc/go1.1
>
> Go 1.1 has not yet been released, so the go1.1beta runtime is based on
> revision 43eb97ed849a of the core Go tree, and will be updated as Go
> 1.1 approaches.
>
> We will not be providing a beta version of the Go 1.1 SDK. You should
> use the appcfg.py program from the normal Go App Engine SDK to deploy
> your app.
>
> To use go1.1beta, update your app.yaml file to use the new api_version:
>
> api_version: go1.1beta
>
> When Go 1.1 is released it will become the basis for api_version
> 'go1', as normal, and 'go1.1beta' will be retired soon afterward.
>
> Your feedback and bug reports are most appreciated.
>
> Andrew
>
>
> --
> 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.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>


Andrew Gerrand

unread,
Apr 2, 2013, 11:28:07 PM4/2/13
to Dean Sinaean, golang-nuts

On 3 April 2013 14:25, Dean Sinaean <dean.s...@gmail.com> wrote:
where can I download?

It is not something that can be downloaded. You just set the api_version in your app.yaml to 'go1.1beta' and deploy your app using the regular sdk.

Andrew 

Julius Kovac

unread,
Apr 3, 2013, 2:47:00 AM4/3/13
to google-ap...@googlegroups.com, Alexey Palazhchenko, golang-nuts
Everything seems to be working now. I don't want to make fast conclusions but from first testing, responses seems to be noticeably faster.

Thank you Andrew, David and the rest of the team for the opportunity to try go 1.1 on appengine.

- Julius

David Symonds

unread,
Apr 7, 2013, 5:55:16 PM4/7/13
to voidl...@gmail.com, golang-nuts, google-appengine-go
On Mon, Apr 8, 2013 at 7:54 AM, <voidl...@gmail.com> wrote:

> Has there been any discussion of GAE support for GOMAXPROCS > 1 when Go 1.1
> is released, or perhaps removing the "Experimental!" tag?

Sorry, nothing to announce


yet.

David Symonds

unread,
Apr 8, 2013, 8:39:00 PM4/8/13
to Andrew Gerrand, google-appengine-go, golang-nuts
I have just updated go1.1beta on App Engine to be built against
d58997478ec6, which is tip from yesterday.

David Symonds

unread,
Apr 11, 2013, 8:29:27 AM4/11/13
to Tim Sultan-Zade, google-appengine-go, golang-nuts
You haven't shown enough of your code, so we can only make wild
guesses as to what's wrong, but it's most likely a coding error in
your app. Did you check the admin console to see if there's some more
detail in your logs?

Tim Sultan-Zade

unread,
Apr 11, 2013, 5:31:35 AM4/11/13
to google-ap...@googlegroups.com, golang-nuts
Hi!

Error in html template string 

const tmpltHtmlBodyBase = `
...
{{if. Designas}}...{{end}}
...
`
(misplaced dot) leads to 

Error: Server Error

The server encountered an error and could not complete your request.

If the problem persists, please report your problem and mention this error message and the query that caused it.

Tim Sultan-Zade

unread,
Apr 11, 2013, 9:09:17 AM4/11/13
to google-ap...@googlegroups.com, Tim Sultan-Zade, golang-nuts
Then I have corrected error - move dot from {{if. Designas}} to {{if .Designas}}, server error disappeared too. Surely, it is my error, but the whole application should not crash, I think. Go1 (not beta) also crashes server.

The whole source code in attachment. The problem was on 393 line.


Thank you for the answer.

Steve McCoy

unread,
Apr 11, 2013, 11:53:31 AM4/11/13
to golan...@googlegroups.com, google-ap...@googlegroups.com
Your message didn't have an attachement, but I will guess that you are using template.Must when you parse the template. The intended behavior of template.Must is for errors to cause a panic that ends the process.

Tim Sultan-Zade

unread,
Apr 11, 2013, 12:02:51 PM4/11/13
to google-ap...@googlegroups.com, golan...@googlegroups.com


четверг, 11 апреля 2013 г., 19:53:31 UTC+4 пользователь Steve McCoy написал:
... I will guess that you are using template.Must when you parse the template. The intended behavior of template.Must is for errors to cause a panic that ends the process.

You are right. Thanks for the explonation. 

Philipp Schumann

unread,
Jun 6, 2013, 1:24:20 PM6/6/13
to google-ap...@googlegroups.com, golan...@googlegroups.com
Hi everyone,

not sure what the status is for Go 1.1? Been out in the wild for over a month already...

Anyway, with api_version = go1.1beta, then dev_appserver.py gives me:

CRITICAL 2013-06-06 19:19:18,661 sdk_update_checker.py:214] The requested api_version (go1.1beta) is not supported by the go runtime in this release of the SDK. The supported api_versions are ['go1'].

(I just downloaded the GAE Go SDK for Win64 a few days back, so I suppose it's the most recent version.)

Is this another one of those instances where the local SDK doesn't exactly resemble the remote environment? Well, it would be totally neat if it did!...  ;))

Nigel Tao

unread,
Jun 6, 2013, 9:19:33 PM6/6/13
to Philipp Schumann, google-ap...@googlegroups.com, golang-nuts
On Fri, Jun 7, 2013 at 3:24 AM, Philipp Schumann
<philipp....@gmail.com> wrote:
> not sure what the status is for Go 1.1? Been out in the wild for over a
> month already...

The most recent Go App Engine release was SDK 1.8.0, on May 7, before
Go 1.1 was finalized (May 13). The next Go App Engine release (due
real soon now) will be based on Go 1.1.

The "go1.1beta" api_version only applied to the prod appserver, not
the dev appserver.

Philipp Schumann

unread,
Jun 7, 2013, 4:10:32 AM6/7/13
to google-ap...@googlegroups.com, Philipp Schumann, golang-nuts
Thanks! That's good to hear.

I do reuse a couple of personal (not app-specific) utility packages in my app and one of them did in fact inadvertently use some method that was only available since Go 1.1, so I had to work around that to be able to deploy. Not a big deal in this one case, but I didn't expect to run into "versioning issues" in Go development so was taken slightly aback. But OK, got this fixed and looking forward to the 1.1 release.  :)

Julius Kovac

unread,
Jun 12, 2013, 3:00:55 AM6/12/13
to google-ap...@googlegroups.com, Philipp Schumann, golang-nuts
Google App Engine SDK for Go ver 1.8.1 is out and its based on Go 1.1. I was also using functionality available only in Go 1.1 (progressive jpegs) which I solved by copying and renaming image/jpeg package to my project.
With new SDK this is not necessary and I was able to clean the code base.
Also api_version: go1 means you are using go1.1 so no more go1.1beta renaming before release and deploy to production.

Thank you for this upgrade,
- Julius

David Symonds

unread,
Jun 18, 2013, 12:32:28 AM6/18/13
to google-appengine-go, golang-nuts
Hi folks,

App Engine is now using Go 1.1 for api_version go1, so api_version
go1.1beta is now deprecated. We will be removing it from production at
some point after 1 July (about two weeks away), and contacting people
shortly to get their apps moved to the supported go1.
Reply all
Reply to author
Forward
0 new messages