atlas news
    
PythonAnywhere News
04  octobre     00h00
Serving UTF-8 static files? Headers to the rescue (an epic tutorial)
   Imagine there’s a PythonAnywhere user, homer bc, with poetic inclinations. He wants to serve his newest poem he believes it’s quite epic as a static text page. He’s old school he doesn’t believe in HTML, and as for CSS Forget it His friend, S. Yodos, lives in Cyme, while homer bc resides on...
10  septembre     11h40
Issues after system maintenance on 2024-09-05
   tl;dr xA;On Thursday September we performed some system maintenance. It appeared xA;to have gone well, and was completed at the scheduled time : UTC , but xA;unfortunately there were unexpected knock on effects that caused issues later xA;on in the day, and further problems on...
21  août     14h03
Belated announcement of latest updates
   Here is a slightly delayed and short run down of the new stuff that we xA;deployed recently. xA;The main change for this update is that we have updated the underlying OS xA;running PythonAnywhere to Ubuntu . . This is an LTS release so it will be xA;supported for some time to come. This...
14  août     11h00
Postal code validation for card payments
   tl;dr We recently started validating that the postal codes used for paid PythonAnywhere accounts match the ones that people’s banks have on file for the card used. This has led to some confusion, in particular because banks handle postal code validation in a complicated way charges that fail...
23  mai     11h00
New help page: Playwright
   We’ve had an increasing number of people asking us how to use Playwright on PythonAnywhere. Playwright is a browser automation framework that was developed by Microsoft; like the more established Selenium it’s really useful for testing and web scraping, and it’s getting a reputation for being a...
07  mai     15h00
CPU resetting issues report: 3 - 5 May 2024
   tl;dr We have a number of background processes that execute periodically on our systems; one of these is the one that resets the amount of CPU used, so that you get a fresh allowance every day. Early in the morning of , on our US hosted system, that service failed silently. Unfortunately...
17  novembre     14h03
Five steps to create your own PythonAnywhere AI guru, on PythonAnywhere
   AI is the coolest thing in tech right now, but getting an AI powered website up and running can seem pretty daunting. Luckily, there are a bunch of useful tools to make it easier. A while back we started seeing if we could use large language models to provide a helpful assistant for...
11  octobre     14h03
Outage report 9 October 2023
   tl;dr On we had an unplanned outage. While we were preparing our systems for a scheduled system update the following morning, we faced some issues. These in themselves would not have caused problems, but responding to them resulted in the accidental termination of the old, running...
28  décembre     14h03
We’re hiring
   Now that we’re part of Anaconda, we’re growing the team so that we can do more, faster : Right now we’re looking for a senior engineer with lots of experience in backend stuff, but an interest in working across the full stack from obscure kernel wrangling, custom Linux container based...
07  septembre     14h03
Slightly late announcement of latest updates
   Updated on August US and August EU Here is a slightly delayed and short run down of the new stuff that we deployed recently. The main addition for this update is a new system image. It’s name is haggis and it has Python . There are also a number of new Python packages...
26  août     00h00
Our Commitment to Providing Free Accounts
   Managing fraud and abuse of free products is a challenge that nearly every SaaS company contends with, but too often the perceived solution is to simply end free accounts. We’ve seen this happen time and again across the open source ecosystem, most recently from Heroku, and we fear this comes at...
03  août     00h00
We are hiring
   As you probably already know, PythonAnywhere is now part of the Anaconda family As we expected Anaconda’s investment in PythonAnywhere will allow us to expand and improve to better serve our users. So we’re starting to grow our team, and first time since we’re officially hiring If you are an...
22  juin     00h00
Anaconda Acquisition FAQs
   In June , Anaconda announced its acquisition of PythonAnywhere. This acquisition expands Python team collaboration in the cloud and adds capabilities designed to unite teams and create access to more robust cloud resources. We’ve compiled the following list of frequently asked questions to aid...
16  mars     00h00
File storage security update
   Last Wednesday, a security researcher working under our bug bounty program found a way that they could access one account’s file storage from another by using the Dirty Pipe Linux kernel vulnerability. We put a mitigation system in place to stop that from happening, and then on Thursday we were...
18  février     00h00
Accessing the files API using our new CLI tool
   The new release of the pythonanywhere helper scripts package introduces xA;new commands covering our files API.
12  novembre     00h00
More secure websites on PythonAnywhere: sunsetting TLS 1.0 and 1.1
   As of this week, websites hosted on PythonAnywhere using HTTPS will only be accessible using modern versions of TLS the encryption protocol on which HTTPS is based by default. This will make them all more secure. We can still support older versions of TLS for custom domains if you need to...
29  octobre     00h00
Understanding multiple web workers and multiple users of your website
   Over the years, we’ve found that one regular source of confusion for people who are just getting started with web development is how to handle what we call global state . We’ve written a help page explaining how to solve problems like this and wanted to expand on it here.
20  octobre     00h00
Our October system update
   On October we upgraded our EU based systems to the latest version of our platform, and today, xA;October, we did the same upgrade on our US based system. There are a bunch of xA;changes to report
30  septembre     00h00
Async work in Web Apps or - Have Your Cake and Eat It Too
   This post is intended for users who begin their adventure with web applications. You’ll find below how to structure a web app that relies on heavy processing of the input data processing that takes so long that you can’t do it inside a request handler with a five minute timeout, or at least so...
05  août     08h00
Ten years on
   Ten years ago today, on the blog for Project Dirigible, we announced that we’d recently launched a new site called PythonAnywhere. It almost didn’t happen The project we were working on was something completely different, and it was only when we looked at how it was being used that we realised...
30  juin     13h00
Glastonbury: a new system image, with Python 3.9 and Ubuntu 20.04
   If you signed up for an account on PythonAnywhere after June , you’ll have Python . available you can use it just like any other Python version. Additionally, the underlying operating system for your account will be Ubuntu ., rather than the . used by older accounts. If you...
17  juin     10h00
June system update brings easier task management
   The most recent system upgrade brings a new way to organize scheduled and always on tasks. A new optional description field, combined with sorting, allows you to manage big herds of multiple tasks. Under the hood there were some more, larger changes, but we’ll be announcing the details of those...
11  mars     13h00
System updates on 10 February and 11 March
   It’s been a year since PythonAnywhere went all remote, but it has not slowed us down, and today was the time to deploy an exciting set of changes to our system.
29  décembre     21h00
Brexit update
   PythonAnywhere is a UK based company, and the transition period for the UK’s exit from the European Union on will end on December . This will not have any visible effect for people who use our free service. For our paying customers outside the EU, including in the UK, there will also be no...
05  octobre     15h00
A Tale of Two Deployments
   It was the best of times, it was the worst of times, it was the age of remote work, it was the age of pyjamas, it was the epoch of bread baking, it was the epoch of pineapple pizza, it was the season of Light, it was the season of Darkness... This is a short but exciting story about two system...
23  septembre     12h00
How to use Ansible to update your Django web app
   Now, as you have overcome or evaded the reefs, shoals and swirls of initial development and deployment and your appetite grows, you ask How do I automate the update and restart of my web app when I change the code There is already one simple and elegant method on our blog, that uses one of the...
04  août     17h40
Introduction to scheduled tasks helper scripts
   For all PythonAnywhere users who like to automate their workflow using scripts there’s already the pythonanywhere package which provides an interface for some PythonAnywhere API features. If you’re one of them, you might be interested in some recent additions for programmatic management of...
09  juillet     12h59
Outage report 7 July 2020
   tl; dr We had an unplanned outage the day before yesterday; it was our first big one since July . It was caused by an extremely unlikely storage system failure, but despite that it should not have led to such a lengthy downtime, and should not have affected so many people. We have some plans...
20  mars     12h52
COVID-19 update: PythonAnywhere is now all-remote
   Scary times. We hope everyone reading this is well and keeping safe We thought it would be a good idea to tell you how we’re managing the current crisis at PythonAnywhere. We switched over to remote working last Thursday, March; there are obviously private and public health reasons why that...
12  mars     14h12
How to use shared in-browser consoles to cooperate while working remotely.
   One of the challenges of remote work is when you need to work together on one thing. Our in browser consoles are one of the core features of our service. Almost since the beginning, PythonAnywhere has been able to share consoles you entered the name of another user or an email address, and they...
05  mars     14h50
System updates on 3 and 5 March
   On March we upgraded our EU based system at eu.pythonanywhere.com to the latest version of our code, and this morning March we upgraded our US based system at www.pythonanywhere.com to the same version. Everything went very smoothly, and all systems are working well. There were a bunch of...
14  janvier     17h01
The PythonAnywhere newsletter, January 2020
   So, we have managed to break another record for our longest period ever between two monthly newsletters. It has been sixteen busy months between September and now, so we have made an official Year Without a Newsletter. xA;Happy New Year, and a warm welcome to the January ...
27  novembre     19h49
Python 3.8 now available
   If you signed up since November, you’ll have Python . available on your account you can use it just like any other Python version. If you signed up before then, it’s a little more complicated, because adding Python . to your account requires changing your system image.
21  novembre     17h40
System update on 21 November 2019
   This morning’s system update went smoothly; some websites did take a bit longer than we expected to start up afterwards, but all is well now. There are two big new features that we have introduced which are going through some final post deploy tests before they go live a new system image called...
08  novembre     16h01
EU migrations are now live
   In brief: if you have an account on www.pythonanywhere.com you can have it migrated to eu.pythonanywhere.com just let us know via email to support pythonanywhere.com. If you’d like to know more about what that means, read on...
11  septembre     09h36
Our new CPU API
   We received many requests from PythonAnywhere users to make it possible to programmatically monitor xA;usage of CPU credit, so we decided to add a new endpoint to our xA;experimental API.
11  juillet     15h51
Using our file API
   Our API supports lots of common xA;PythonAnywhere operations, like creating and managing consoles, scheduled and xA;always on tasks, and websites. We recently added support for reading writing xA;files; this blog post gives a brief overview of how you can use it to do that.
04  juillet     15h25
System update on 26 June
   Our system update on June went pretty smoothly : There were a number of useful changes: Our API now supports uploading, downloading and listing files in your private file storage. There is another blog post about this. We now have an official system in place to migrate your MySQL data...
14  juin     12h59
Using MongoDB on PythonAnywhere with MongoDB Atlas
   This requires a paid PythonAnywhere account Lots of people want to use MongoDB with PythonAnywhere; we don’t have support for it built in to the system, but it’s actually pretty easy to use with a database provided by MongoDB Atlas and as Atlas is a cloud service provided by Mongo’s creators, it...
14  mars     09h44
System update this morning
   This morning’s system update went smoothly : It was primarily a maintenance update, bringing our US based system up to the same version as our EU based system. There were a number of minor bugfixes, along with a bunch of improvements to our system administration tools, which won’t be visible to...
07  février     13h20
Announcing eu.pythonanywhere.com
   We’re proud to announce today that we now have an EU hosted PythonAnywhere system : You can access it at eu.pythonanywhere.com. It’s completely separated from our normal system, but has all of the same features plus billing in euros.
01  février     20h16
How DNS works: a beginner’s guide
   The blog post below has now been promoted to being an official help page you can read the most current version here. The version below is the original published version and may be out of date. We sometimes get emails from people who are trying to point their custom domain at PythonAnywhere so...
20  décembre     19h19
Slow scheduled tasks after yesterday’s system update
   After our system update yesterday, there was a period when some people’s scheduled tasks were running slowly. This is an update on what caused the issue and what we did to fix it.
19  décembre     10h22
Today’s upgrade: Let’s Encrypt auto-renew and much much more
   This morning’s system update went pretty smoothly, and we have some cool new stuff to announce: Let’s Encrypt certificates with automatic renewal You can now get an HTTPS certificate for your custom domain using Let’s Encrypt without all that tedious mucking around with dehydrated and you don’t...
07  novembre     18h35
Always-on tasks
   Always on tasks are a new feature we rolled out in our last system update. Essentially, they’re a way you can specify a program and tell us that you want us to keep it running all the time. If it exits for any reason, we’ll automatically restart it and even in extreme circumstances, for...
24  octobre     07h38
Today’s Upgrades: Always-On Tasks
   Always On Tasks We are officially live with our always on tasks All paying customers will get one always on task, and you can add more by customizing your plan on our accounts page. Our infrastructure will try to keep your script always running ie. we will restart it if your script errors and...
15  octobre     14h59
Auto-renewing your Let’s Encrypt certificate with scheduled tasks
   This blog post is out of date we can now manage all of your Let’s Encrypt certificates automatically. See this help page for details. Let’s Encrypt certificates are really useful for custom domains you can get HTTPS working on your site for free. Their one downside is that the certificate...
02  octobre     15h37
Turning a Python script into a website
   One question we often hear from people starting out with PythonAnywhere is how do I turn this script I’ve written into a website so that other people can run it That’s actually a bigger topic than you might imagine, and a complete answer would wind up having to explain almost everything about...
25  septembre     18h14
The PythonAnywhere newsletter, September 2018
   Well, our last monthly newsletter was in September . We must have shifted the bits in the period left one, or something like that : Anyway, welcome to the September PythonAnywhere newsletter : Here’s what we’ve been up to.
17  septembre     13h45
Force HTTPS on your website
   One smaller feature we added in our last system update was the ability to force HTTPS without needing to change your code. Here’s a bit more information about why you might want to do that, and how it works.