Temporary Downloads

Originally posted on Thursday, June 22, 2006

When you click on a downloadable file, you are presented with a dialog box like this (Windows and Mac versions shown):

[ OperaWin Download Dialog ] [ MacOpera Download Dialog ]

This dialog looks the same as previous versions, but the underlying functionality has changed completely.

What changed?

Long-time users of Opera know that “Save” has meant “Save to my Downloads Folder” and “Open” has always meant “Save to my Downloads Folder and then Open”

Note: most links on this page will open in a new window. Close that window to return to this page. Also, many links refer to Opera’s own opera:config settings and do not apply to other browsers and therefore will not work in other browsers.

That changed in Opera 9. If you choose “Open” the files are not saved in your default Download directory, instead they are saved to Temporary Downloads folder.

Why did Opera change this?

For some time there has been debate about whether “Open” should mean “Open and Save” or not. Some were for it, arguing that if I want to delete the file later, I can do that fairly easily. Some where against it, saying that if they just opened a file that didn’t necessarily mean they wanted to keep it, and they could save it manually if that is what they wanted.

Neither of these positions could be defined as “right” or “wrong” since one could reasonably hold either position. There are then two considerations: 1) What has Opera done in the past? and 2) What do other browsers do? #1 is simply as we have already discussed. I honestly don’t know what the answer to #2 is because I use Opera, and if I wanted to know what other browsers did, I’d use other browsers. Opera ASA needs to consider the expectations of “switchers” and so it is not unreasonable for them to consider changing this if, for example, Internet Explorer and Firefox do it differently. But just because users are used to the way that browsers work doesn’t mean they prefer it.

From my observation (which is by no means scientifically conclusive) it appears that there are a sizable number of users on either side of this preference. Some want to use the Downloads folder, some do not.

The proper solution, therefore, would seem to be to find a way to meet the needs of both groups, realizing that one group would not get their desired behavior as the default but at least it would be an option.

Opera has, uncharacteristically, failed to do that.

Why is this a problem?

Fundamentally, I don’t believe that Opera should ever delete a file that I download. Formerly there was a zero chance risk that I might accidentally delete a file I had downloaded by exiting Opera or emptying my cache. The worst thing that could happen was that my downloads folder might be a bit cluttered, but it would be cluttered with files I had expressed an interest in by opening them in the first place.

Secondly, the current implementation of this is inconsistent, buggy, and poorly documented.

Thirdly, and I cannot stress this enough, Opera has failed to give me a way to get back the preferred behavior which it cultivated me to expect for the past 6 years. That is perhaps the most egregious of the various problems. If you feel you have to change the way that something has always worked, if you feel you have to change the default way that something worked (even when a large group of your users preferred it) then you ought to feel obligated to give your long-time users a way to get back to their preferred way of working.

Given the advent of opera:config I find this omission particularly bothersome. They would not have even needed to add this to the general Preferences. A quick look through the listed preferences will find much more obscure settings than this one which effects daily usage of Opera.

How long will the file be saved if I choose “Open” instead of “Save”?

You will have a hard time finding an official answer. Opera Settings File Explained doesn’t explain when it will happen. It doesn’t even mention this feature, although the document claims to have been updated for 9.0.

There is no mention of this “feature” at all in the Opera 9.0 changelog.

If you look at the changes since Beta 2 changelog you can see one reference: “Temporary download directory used for opening files in external applications can now be modified in opera:config.”

If you look at changelog for Opera 9 beta 2 you will read that “Temporary downloads are now cleared when deleting cache.”

Which is true. Except when it isn’t.

Based on my research, I have to say that the only real answer is “It depends.”

To fully understand how this “feature” works, I made two clean installs of Opera, one in Windows and one in Mac. Here’s what I found:

If you are using Opera, check your Empty Cache on Exit setting.

If you tell WinOpera to Empty Cache on Exit, the Temporary Downloads folder will be deleted on exit.

If you use MacOpera to Empty Cache on Exit, the Temporary Downloads folder will not be deleted on exit.

Why the disparity?

Note: you can check your cache path at opera:about or look for Cache Directory4 in opera:config

[Windows Logo] By default, WinOpera stores the Temporary Downloads folder inside the cache folder. If you did a default installation, the path to the default cache folder probably looks like this: C:\Documents and Settings\YourLoginName\Application Data\Opera\Opera\profile\cache4\. The cache folder is cleared out when you choose the ToolsDelete Private Data or when you quit Opera if you have Empty Cache on Exit selected.

[Mac Logo] By contrast, MacOpera stores the Temporary Downloads folder outside the cache folder. Sort of. The default path for MacOpera’s cache is ~/Library/Caches/Opera/Cache/. (Yes, that path is sponsored by the Department of Redundancy Department.) Opened files are stored in ~/Library/Caches/Opera/Temporary Downloads/. The contents of ~/Library/Caches/Opera/Cache/ are cleared when you do “Empty Cache on Exit” but the Temporary Downloads folder is not emptied when the cache is emptied, presumably because it is not in more specific cache directory. So MacOpera users are not even getting the supposed-advantage of this new feature.

Warning: There are a large number of third-party “cache cleaner” applications out there which may delete anything found in the ~/Library/Caches/ folder, so I would highly recommend changing that location if you want to preserve your Temporary Downloads.

However if you choose ToolsDelete Private Data then the Temporary Downloads file is emptied. Usually. It appears that folders inside the Temporary Downloads folder of MacOpera are not deleted even if ToolsDelete Private Data is chosen. So if you (for example) chose to “Open” a .zip file which contained a .pkg, the .zip would be opened, the .pkg would be left in the Temporary Downloads folder and you would have to manually delete it.

Likewise, in WinOpera, if you move the Temporary Downloads folder out of the cache folder (i.e. C:\Documents and Settings\YourLoginName\Desktop\Temporary Downloads) and then exit, the cache will be emptied (if you have selected “Empty on Exit”) but the Temporary Downloads will not be. In fact, it will not be emptied even if you choose ToolsDelete Private Data.

Let me say that again: If you change the location of the Temporary Downloads folder in WinOpera, it will apparently never be emptied.

If you change the MacOpera Temporary Downloads folder to somewhere other than the default, and then choose ToolsDelete Private Data that folder is emptied.

To sum up for Mac: “Empty Cache on Exit” never seems to work, but “Delete Private Data” does.

Before we go on, you may want to Review/change Temporary Downloads location here or disable Empty Cache on Exit.

What’s the problem?

You mean besides the buggy, inconsistent, and undocumented behavior?

The problem is that Opera has traded one problem for another, and the new “feature” seems poorly, or at least inconsistenly, implemented. So the problem is not so much fixed as it is changed.

Let’s re-examine the stated problem that this was originally supposed to fix: “Opened files should not be saved to the downloads directory.” Has that been fixed? Sort of. Sometimes. It depends.

What happened as a result of this change? Users who “Open” files will probably still have the files on their hard drive somewhere, just not where they might expect to find them. And those who thought that they were deleting those files may be surprised to find out they really didn’t.

What could have been done differently? Let users “Open” files directly into the Cache folder. And let users decide if they want to use that functionality or not. A whole layer of complexity could have been avoided — and if it doesn’t seem complex, please re-read the above. I can nearly guarantee that Opera ASA will have to spend more time cleaning this up than if they had made the simple and seemingly obvious change in the beginning: Let users use their cache if they want to, or let them use their regular downloads folder if they want to.

But isn’t this a change for the better?

It depends. If you didn’t like your Downloads folder getting cluttered up but don’t mind the files still being somewhere on your hard drive, then I guess this is better.

If you want your opened files saved, this is worse.

If you thought that having the opened files automatically deleted would increase security, so far it hasn’t.

Which is more intuitive:

  1. I save or open a file and it goes to my download folder, and is opened if requested.
  2. I save a file and it goes to my download folder. I open a file and it goes to a different folder where it will stay until I manually delete my cache or turn on “Exit Cache on Exit” unless I specify a different folder, sometimes, depending on which platform I am using.

A much better solution would have been a single checkbox preference (or in opera:config) which said something to the effect of:

[ ] Use cache folder for files I open via download dialog

Or

[X] Save opened files in Download directory

Opera would have avoided the whole mess of having a separate folder for Temporary Downloads which may or may not be emptied when the cache is. And it would have kept itself in the Opera tradition of giving the user control of his/her own browser. Opera 9 fails to do that with this change. It switched from failing to meet the needs of one group of users to failing to meet the needs of another group of users. And introduced new bugs with the new feature.

Why does this irritate you so much?

What is much worse than everything I’ve mentioned so far is that I now have to think more. Yes, I realize people will laugh and point and get all sarcastic about that. “Oh boo hoo, you have to think.” But the point is this: What I want from a browser (or any piece of software), and what I have loved about Opera more than any other browser on Mac or Windows, is that it gets out of the way and lets me work. The less it gets in the way, the better it works for me.

Now when I see that dialog I have to think “Do I need to save this file or do I want to open it?” Most of the time I want to save and open it. If I want to open it, I need to remember to save it manually. I don’t want to have to think about that. If I decide to save it because I don’t want to forget to manually save it later, then I have to remember to go back and open it when it finishes downloading. Remember I spend a good portion of my time on a very slow dialup connection, so it can take awhile for even small files to download, and I certainly don’t want to have to re-download something because Opera threw it away!

[Windows Logo] Windows users: if you want to preserve your opened files, I would recommend that you move the Temporary Downloads folder out of the cache. However please realize that this behavior (not emptying the Temporary Downloads folder if it is not in the cache) is most likely going to be considered a bug by Opera ASA and may change in the future. The only true “safe” course of action is to disable Empty Cache on Exit and only manually delete the cache after verifying that there are no files you want to keep in the Temporary Downloads folder.

[Mac Logo] Mac users: You can safely use Empty Cache on Exit (for now) but realize that your Temporary Downloads will be deleted whenever you choose Delete Private Data from the menu. Also, if you use any of the cache cleaner utilities, make sure to relocate the Temporary Downloads folder first.

Mac users: you may be interested in a Folder Action to automatically save opened files.

Comments

On June 23, 2006 at 07:32 PM, Xojo [TypeKey Profile Page] wrote:

You say, "Fundamentally, I don’t believe that Opera should ever delete a file that I download."

One could for every case "Save" then rightclick the saved filename in the Transfer window, choosing "Open." The app would be run and the file would persist.

This workaround does not address the correctness or politics of Opera's change--it sideskirts the issue.

On June 23, 2006 at 10:48 PM, TjL (tntluoma.com) [TypeKey Profile Page] wrote:

Xojo: You’re right on both counts.

I could manually open the files. On my slow dialup account, I often have to wait some time for files to download. I don’t want to have to remember to go back to Opera when it finishes.

You’re right that the workaround doesn’t address the correctness or politics of the change... it’s a workaround. A real solution is in Opera ASA’s hands: they are the only ones who can fix it. Whether they choose the fix that I have suggested or another one, I don’t care. I just think they ought to make it possible for me to save all my downloaded files (opened or not) without having to come up with hacks like this one (especially since I also use Windows which doesn’t have the ability to use this hack... and I don’t know of a way to fix it for Windows.

On June 25, 2006 at 10:04 PM, ReWiz [TypeKey Profile Page] wrote:

I think cache is the logical choice for opened documents.

  1. open has to be different from save
  2. open html-files or downloads is about the same (do you want to have all your WebPages being saved permanently?)
  3. Opera is an internet-browser - user should not have to deal with opened files (with a different application) that are saved permanently, although he doesn't know about it (most people don't care)
  4. cache size has its size for some reason (I'd expect the downloaded files to be deleted automatically when cache is full, the file is the oldest cache content and the file is not in use any more; and more sophisticated I'd expect Opera to ask at least to save file when the file triggered to open makes the cache useless for webpages or may be even bigger than defined cache size.

If user selects "save" it is clear that this file will remain on the disk.

There are several solutions for your needs that fit better to user workflow than using an Opera system path (the download path) which is hidden for most of the users.

Possible: Have check boxes within a details extender: that could be checked with save file

  • "open when downloaded"
  • "open folder when downloaded" (this point I really miss in the context-menu of transfers)
  • use this option every time or only once
It should be default not to open anything as it can be really annoying to work and some application pops up.

If the opened file is shown in transfers it could be saved in different folder using context menu (as long as it is not deleted).

I assume Opera devs wanted to improve the file handling and do this inside Opera instead of relying on the OS temp folder handling. Seems to be not quite finished yet, but as it probably works for most users the remaining parts got lower priority. And documentation is easier to be done when it's finished.

Additional information from toman on IRC yesterday: The temporary download folder is cleared on startup of Opera (this is not the way which I think is logical with 4. above). And his advice was to save the opened file using the capabilities of the application the file is opened with.

On June 25, 2006 at 11:21 PM, TjL (tntluoma.com) [TypeKey Profile Page] wrote:



I think cache is the logical choice for opened documents.

One is no more logical or illogical than the other. There is no more valid logical reason to think that if I click I on file I would like Opera to delete it than to think that I would like to keep it. And not deleting it means that you never risk dataloss. And I think it is much more logical to never, ever, risk deleting files that a user wants.

1. open has to be different from save

It has always been different than save. Save didn’t open the file.

There’s no empirical reason why “Open” has to mean “Temporarily Save, then Open” especially when you have given me a place to store downloads.

2. open html-files or downloads is about the same (do you want to have all your WebPages being saved permanently?)

That's absurd. Web pages and externally handled documents are not nearly the same. They have never been handled the same.

3. Opera is an internet-browser - user should not have to deal with opened files (with a different application) that are saved permanently, although he doesn't know about it (most people don't care)

How do you know what most users feel? Have you done any study, or are you just making your own opinion normative? I am not claiming that most people are or are not on one side or another. All I am saying is that they should have given their users a way to automatically save data. All they did was give users a way to automatically lose data and assume that will be just fine. I can already tell you that I have been bitten by this.

My argument is that if Opera was going to change a long-standing behavior, they ought to have provided a way for people to use the behavior that Opera trained us to have for years and years.

4. cache size has its size for some reason (I'd expect the downloaded files to be deleted automatically when cache is full, the file is the oldest cache content and the file is not in use any more; and more sophisticated I'd expect Opera to ask at least to save file when the file triggered to open makes the cache useless for webpages or may be even bigger than defined cache size.

I can nearly guarantee that in its current implementation, Temporary Downloads will not be considered as a part of the cache if you move the Temporary Downloads fodler out of the main cache folder. Which means that it will on Windows and won’t on Mac.

If user selects "save" it is clear that this file will remain on the disk.

And my point is that I have never had to think about whether or not Opera is going to delete a Word or PDF file that I download if I forget that I chose “Open” instead of “Save”

There are several solutions for your needs that fit better to user workflow than using an Opera system path (the download path) which is hidden for most of the users.

The default Download directry is more certainly not hidden from most of the users.

Possible: Have check boxes within a details extender: that could be checked with save file
  • "open when downloaded"
  • "open folder when downloaded" (this point I really miss in the context-menu of transfers)
  • use this option every time or only once

That would severely clutter the download dialog.

It should be default not to open anything as it can be really annoying to work and some application pops up.

I would have no problem with “Save” being the default if “Open” can still be made to save the file that I download to my regular download directory.

I assume Opera devs wanted to improve the file handling and do this inside Opera instead of relying on the OS temp folder handling. Seems to be not quite finished yet, but as it probably works for most users the remaining parts got lower priority. And documentation is easier to be done when it's finished.

A cleaner solution still would have been to just leave the opened files in the cache, which they could have been controlled by the cache size limits as you suggested earlier

Additional information from toman on IRC yesterday: The temporary download folder is cleared on startup of Opera (this is not the way which I think is logical with 4. above).

If that is true, what coule more more unintuitive than having Opera delete files when it starts? And that directly conflicts with the documentation (scant as it is) which says that the files are deleted when the cache is emptied.

And his advice was to save the opened file using the capabilities of the application the file is opened with.

Which completely misses the point that Opera is now requiring me to think about whether I saved the file and then opened it (meaning I don‘t have to save it again) or opened the file and now have to save it.

And documentation is easier to be done when it's finished.

Any new feature that deletes data that I have downloaded damned well ought to be completely documented in a clear fashion and work precisely as advertised. If it isn’t ready for prime-time, then it has no business being released to the general public as anything called “final.”

It doesn’t work as advertised.

It doesn’t work consistently.

It can cause lost data.

There’s no denying those 3 points. (I could further argue that it doesn’t work intuitively, although that would be debatable.) You can debate whether or not people ought to have expected that Opera would save them or not, but all I have to say is that I’ve been using Opera for 6 years (at least) and I’ve grown accustomed to how Opera has worked, and now they changed it without really fixing the problem, just changing it.

All they did was change one problem (people who didn't like opened files to be saved were not happy with the old way) for another (people who liked opened files saved are not happy with the new way). Objectively, this is in no way an improvement over the old situation, it just shifted the group of people who liked what happened

All of could have been easily avoided with a simple preference setting, much simpler than what you suggested. If that couldn't be accomplished, then they shouldn't have changed it, at least not in anything they want to call "final" form. It's slipshod, and not what we ought to expect from Opera.

On June 29, 2006 at 12:09 PM, ianegg [TypeKey Profile Page] wrote:

I use Opera 9 in Gentoo Linux and I just discovered it was deleting files I'd clicked "open" for. The annoying thing is that I don't have "empty on exit" enabled. The cache stays as it is, but the temporary downloads folder disappears. :(

I completely agree that it was the wrong thing to do, to just change something that will affect all users like this without pointing it out and without any way to fix it.

On June 29, 2006 at 03:17 PM, Daniel [TypeKey Profile Page] wrote:

Hello!

One of the first "wtf?!? experiences" i made with O9 was, that my downloads (i usually always use "open", for reading pdfs, etc) diapered - i loved that feture

So OPERA: WE NEED A OPTION FOR THAT!!!!

My solution so far: in windows, just disallow your user or Group (usually Adiministrators) to delete files in the cahce4\temporary_downloads. (Via the extended Form). It works well so far - but its a rather dirty workaround.

Daniel

On June 30, 2006 at 01:58 AM, takeda [TypeKey Profile Page] wrote:

I found this article when I was looking on a way to disable that %@#$#ng feature. Since they didn't provided that option I'm really considering to downgrade back to 8.54.

I really loved that I when I clicked open the file was saved in one directory, which I could purge whenever I needed space. Now when I browse, I need to click save, find the directory for my "temporary files" save, wait until it downloads then click open.

WTF?!? I don't call this a feature. If there are people who like doing stuff this way, then there should be an option if not, then why the hell they changed a behaviour which everyone got used to for such a long time...

This is so far the biggest disappointed in 9.0 (next to changing default hisory cache, and some weird periodic increases of CPU usage)

Post a comment

Thanks for signing in, . Now you can comment. (sign out)

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)


Remember me?


« Folder Action to Save Opened Files in Opera 9 | Home | Folder Action to Save Opened Files in Opera 9 (updated for final) »