GAE python 2.7 end of life

924 views
Skip to first unread message

ajgomezlopez

unread,
Jan 8, 2019, 6:07:02 AM1/8/19
to Google App Engine
python 2.7 is no longer supported on January 1, 2020.

What will happen to the applications in the standard environment?
Is there a end of life date or something similar?

thx.

bFlood

unread,
Jan 8, 2019, 9:28:53 AM1/8/19
to Google App Engine
google - please provide a roadmap for GAE 2.7 standard, what will happen to these apps? 
will they be required to upgrade to the python 3.0 (2nd generation runtimes)?
if so, can you address the significant differences listed here:

no memcache, no urlfetch, no users, no ndb, no local development? I'm assuming some of these will be fairly easy to replace (urlfetch) but what about upgrading ndb models to the cloud datastore? will it be automatic? what about the performance loss thats been reported in the issues forum?

there are lot of unanswered questions regarding GAE python 2.7 and 2020 is not that far away, please provide some guidance

Vitaly Bogomolov

unread,
Jan 8, 2019, 2:34:01 PM1/8/19
to Google App Engine
Yes, it is important

Please send us google oficial clarifications.

George (Cloud Platform Support)

unread,
Jan 8, 2019, 4:29:55 PM1/8/19
to Google App Engine
The mentioned date is the end of support. Already deployed apps are not directly affected on an immediate time frame. On a longer term though, you'll have to migrate your code to Python 3 or delete it. The effort involved is not necessary enormous in each case, in a lot of cases this might take minutes. If you foresee, by contrast, considerable effort to migrate to Python 3, you should contact support and ask for specific help and possible transitional arrangements. Advice and custom-made tools should be expected, to alleviate the effort required by migration tasks. Most Python developers prefer Python 3, and there are considerable advantages in following suit. 

NP

unread,
Jan 8, 2019, 7:36:26 PM1/8/19
to Google App Engine
Hi, 

You said - The effort involved is not necessary enormous in each case, in a lot of cases this might take minutes.

I beg to differ. There are a significant number of things which are not supported in Python 3 and will require effort to find/deploy alternatives. These include ndb ORM, Search, Images service, etc

George (Cloud Platform Support)

unread,
Jan 9, 2019, 9:32:36 AM1/9/19
to Google App Engine
You are perfectly right, NP. Python 3 is made incompatible with 2, and Python 3 does not support quite a few features, and will require effort to re-program your app in an alternative manner. I was simply saying that often the effort is not enormous, and becomes worthwhile on the longer term. 

bFlood

unread,
Jan 9, 2019, 9:47:14 AM1/9/19
to Google App Engine
its not the incompatibility of python (language/runtime), its missing services with regard to GAE Standard 2.7 and GAE Standard 3.0. (memcache, NDB, Search, Images, Users, webapp2, etc). Are these going to be duplicated in GAE3? and if so, will existing data and model definitions in the 2.7 datastore work in 3? 

it looks like some work is being done for this but it would be great to know officially what Google plans for this upgrade process. how much code will need to change? 

also, generally what do you mean by "not directly affected on an immediate time frame"? a year, 2 years, 5 years before 2.7 apps stop running? 

Rahul Ravindran

unread,
Jan 9, 2019, 1:07:44 PM1/9/19
to Google App Engine
Google has a policy of a one year deprecation policy for any GA runtime. Given that nothing has been announced yet, please know that your application will continue running for at least a year and that will be the minimum period for you to need to do anything. 

I apologize on being very brief around this at this point, but there are discussions going on. Stay tuned for longer term guidance around this issue.

~Rahul.

--
You received this message because you are subscribed to the Google Groups "Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-appengi...@googlegroups.com.
To post to this group, send email to google-a...@googlegroups.com.
Visit this group at https://groups.google.com/group/google-appengine.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/8f45b06f-0852-4e46-9331-c3ebdbe3e481%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Blaine Garrett

unread,
Jan 9, 2019, 3:31:46 PM1/9/19
to Google App Engine
I asked this in a different thread, but I wonder if anyone has tried to port the ndb package as a standalone python 3 package.
Thus far, in my experiments, once I got the datastore emulator running locally, converting the consumption of the datastore apis from ndb to native objects has been the biggest pain. I have not tried converting my deferred tasks, etc.

Source code for the ndb package

~ Blaine

NP

unread,
Jan 9, 2019, 4:23:36 PM1/9/19
to Google App Engine
Someone wrote a wrapper for the cloud datastore API - https://github.com/Bogdanp/anom-py. I haven't used it myself so can't comment.

Vitaly Bogomolov

unread,
Jan 10, 2019, 9:27:54 AM1/10/19
to Google App Engine
Hi,  George

require effort to re-program your app in an alternative manner.

For example, I can't re-program my app, that receives emails, using GAE Mail service.

Also, most of suggestions in this document (https://cloud.google.com/appengine/docs/standard/python3/python-differences) offers to use regular VM with third-party libraries. For me, it's sound like "You should stop using GAE, becouse we stopping Python and run Python3 instead." 

George (Cloud Platform Support)

unread,
Jan 10, 2019, 12:56:41 PM1/10/19
to Google App Engine
Hello Vitaly, 

Is there a special reason you can't re-program your app? Do you absolutely need to use GAE Mail service? The Mail service is not available in Python 3. You need to use a third-party mail provider such as SendGrid, Mailgun, or Mailjet to send email. All of these services offer APIs to send email from applications.

The assumption you are being forced to stop using GAE is not realistic, you are most welcome using all GAE services to your liking. From the above example, about Mail service, there are solutions for other migration problems, and often the effort to implement them is not too intense. 

Vitaly Bogomolov

unread,
Jan 10, 2019, 1:27:14 PM1/10/19
to Google App Engine
Hi. George

 
Is there a special reason you can't re-program your app? Do you absolutely need to use GAE Mail service? The Mail service is not available in Python 3. You need to use a third-party mail provider such as SendGrid, Mailgun, or Mailjet to send email. All of these services offer APIs to send email from applications.

I don't need send emails, I need receives emails.
 

The assumption you are being forced to stop using GAE is not realistic, you are most welcome using all GAE services to your liking.

Most liked GAE services is not available for Python3 :(
 

George (Cloud Platform Support)

unread,
Jan 11, 2019, 9:25:58 AM1/11/19
to Google App Engine
Hi Vitaly, 

In addition to sending email, SendGrid can receive email or make sense of the email you’ve already sent using webhooks. You may check related detail on the "Sending Emails with SendGrid" documentation page. I am sure that most liked GAE services will be made available in a form or another with Python 3. 

Joshua Smith

unread,
Jan 11, 2019, 9:50:57 AM1/11/19
to Google App Engine
SendGrid has a daily limit of 100 emails in the free tier. My app predates the severe GAE mail limits, and thus can send more than that every day without incurring charges.

So if you guys drop mail in Python 3, you’re going to add $15/month in cost to my application. My app is a free service provided to support open government and accountability, which means that cost is going to come out of my pocket.

Please reconsider.

-Joshua

On Jan 11, 2019, at 9:25 AM, 'George (Cloud Platform Support)' via Google App Engine <google-a...@googlegroups.com> wrote:

Hi Vitaly, 

In addition to sending email, SendGrid can receive email or make sense of the email you’ve already sent using webhooks. You may check related detail on the "Sending Emails with SendGrid" documentation page. I am sure that most liked GAE services will be made available in a form or another with Python 3. 

--
You received this message because you are subscribed to the Google Groups "Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-appengi...@googlegroups.com.
To post to this group, send email to google-a...@googlegroups.com.
Visit this group at https://groups.google.com/group/google-appengine.

George (Cloud Platform Support)

unread,
Jan 16, 2019, 10:43:44 AM1/16/19
to Google App Engine
Hi Joshua, 

The advantage of sending mail every day without incurring charges might not be lost: you can apply for a charity-related discount, or good cause exemption with the mail service providers, who might in fact be ready to help you to a similar discount. In any case, your personal exemption is not enjoyed by many others, who will be charged about the same amount for emails before and after the Python 2 end of life. 
Reply all
Reply to author
Forward
0 new messages