Make uninstaller more responsible

• Oct 22, 2011 - 12:06
Type
Functional
Severity
S4 - Minor
Status
closed
Project

I have just uninstalled MuseScore 1.1 and realised that MuseScore leaves a LOT of stuff behind it in the form of all kinds of files. I mean come one, even a 50 mb folder left-over that is full of Aeolus waves?

And also, the settings files that just confuse users, not having a responsible uninstaller creates more bandwidth usage because conflicts happen to to version discrepancies, and so, time is wasted, users write confusing posts about issues that the developers can't replicate, and so on so forth...

On Windows 7 in C:\Users\Sergiu Rad\AppData\Local\ there are at least 2 MuseScore left over folders that are of 50 mb alltogether.

Please guys, do something about that uninstaller, because, it is actually for the good of your development process!

Also, if a user saves his own template in the template folder of MuseScore, that also does not get deleted leaving behind even more stuff at the location of C:\Program Files (x86)\MuseScore\templates

Please do make the uninstall experience all-inclusive.

It also leaves registry keys after it that is the 3rd party software's responsibility to take care of.

A lot of times it has happened that Microsoft got blamed for the irresponsible behaviour of third-party software.


Comments

The Aeolus files are from 2.0, not from 1.1. So no surprise the 1.1 uninstaller didn't delete them.

And I personally prefer it if uninstallers do *not* delete any user-created data by default. I don't know if Windows (or Mac, or Linux) defines a standard for this, but I think that the option of uninstalling a program and then reinstalling it in order to fix a configuration problem should work without destroying user data.

The problem is that's NOT user data and MuseScore has HAD previous problems with left-over files created problems.

Therefore, it makes inherent sense that uninstalling a piece of software gets the user rid of everything that software brought to the OS.

Uninstallers will obviously NOT delete user-created data from the "desktop" for example, but they should obviously delete that from within the software's own folders.

Whatever is higher folder-hierarchy-wise than the folders the software created should obviously NOT get deleted, but whatever is within the structure of what the installer created should be deleted.

These things are so obvious, I have no idea why people are even debating this.

You wrote: "Also, if a user saves his own template in the template folder of MuseScore, that also does not get deleted leaving behind even more stuff at the location of C:\Program Files (x86)\MuseScore\templates" - if the user saves his own template, how is that *not* user data? Or is there other data you are concerned about that you didn't mention? All I saw you mention specifically were those templates and the Aeolus files, which as I already observed, are not part of 1.1, so of course they weren't deleed. If there are files created during the 1.1 installation that are not deleted, then yes, of course, there is no debate: they should be deleted. but so far, you haven't given any examples of this. So it would help if you listed them specifically.

The IS user data Marc, but what I'm trying to express is that that is user data INSIDE the folder structure that the software that is to be uninstalled created.

Marc, are you part of the developer team of this project? I'm asking so I know if you are a developer or not.

The Aeolus files did not appear out of the blue nor from nightlies, hence the only possibility of where they came from is by the installation of MuseScore 1.1

I also listed this: "On Windows 7 in C:\Users\Sergiu Rad\AppData\Local\ there are at least 2 MuseScore left over folders that are of 50 mb alltogether."

The developers know about those folders.

Because that is user data inside the folder structure that the program that was installed created.

It is not real user data as a score on the desktop of the user, hence it's just software leftovers.

I put it there myself, so it is my responsibility to remove it. Or leave it.
It is debatable whether the uninstaller gives a hind about this, so I get a reminder. though

The uninstaller could leave the user with a folder containing his own user data created INSIDE the MuseScore folder structure.

Windows does that when one uses an Upgrade for it.

This is why Windows has so many times had so much trouble, it was the fault of third party installer leaving all sorts of code trash behind.

I am not one of the developers, although I have contributed a little to the development via plugins, some work on one of the fonts, writing and proofing some of the documentation, etc. and just helping out with support where I can.

Anyhow, yes, I noticed you listed 50mb of data, but you said those were aeolus files, and as I have already said, those would *not* havecome from 1.1, as 1.1 doesn't use Aeolus. That's a new feature for 2.0. Not sure how you came to the conclusion that these didn't come from the nightlies, but as far as i know that's the only place they could possibly come from. So it still isn't clear to me if there are any specific files you are seeing that actually came from 1.1.

As for foles created by the user, if any installer deleted files I created, I would be very upset. Wouldn't matter if I put those files in my Documents folder, in my AppData folder, or in the main Program Files folder for the application. That's my business, not the ininstaller's. If I created the file, an unistaller has no business deleting it, period.

Exactly my point. It would be usefill though (and some unistallers do that, I don't know whether MuseScore does that too) to tell the user that there are still files left in the program folder.

How could those have come from the nightlies when the nightlies only operate within the folder that I have extracted them to?

And please, don't tell me it's unclear to you whether there are any left over files that actually came from 1.1, the nightlies don't install themselves in user profiles, at least not to my knowledge, and they would be weird to do that.

I won't continue this because you clearly don't know the folder structure of MuseScore as I do.

There's a MuseScoreDevelopment folder for example that put's itself in the data profile, are you even on Windows?

And oh, just now, I discovered even 2 other folders that I had forgotten about in C:\Users\username\AppData\Roaming\MuseScore

So please, DON'T tell me I'm not seeing any files that have come from 1.1

Thanks!

Although the nightlies only *install* into the folder you have specified, when you actually *run* the nightly build, it may create files in the standard AppData folder tree. It doesn't create a whole "chroot" style sandbox for the data files it creates on the fly. So even though they are not in your installation folder, those files really do come from the nightly!

If you don't believe me, delete them, then run a nightly again and watch them reappear. And yes, I'm on Windows, otherwise I wouldn't know about this stuff. I have no idea how it works on any other system, but I do know from personal experience that on Windows, the nightlies do use your standard AppData folder.

Now, whether *all* the files left n your system came from the nightlies, I cannot say. That's why it would help if you could be more specific about which you know for a fact came from 1.1 are left behind. But I would note that some of the data in AppData is user data that should *not* be deleted on uninstall - again, on the principle that it should be possible to uninstall/reinstall without losing all your program settings.

Ok, I do see now that Aeolus is not created by MuseScore 1.1

However, the following 2 are:

C:\Users\username\AppData\Local\MusE

and

C:\Users\username\AppData\Roaming\MusE

The uninstall/reinstall without losing all your program settings principle is precisely irresponsible behaviour towards the host Operating System. If the software vendors really want to provide that for their users, they should notify the user of the files and for example move them to a folder on the Desktop so the user knows about it.

Otherwise, this is how people's computers end up cluttered and full of junk that they don't even remember where it came from.

A nice dialog box telling the user that all of his user generated data that has been created will be moved to a Desktop folder would be perfect and would show responsible behaviour from MuseScore.

Status (old) active duplicate

I'm currently the packager of MuseScore on Windows and Mac OSX.

To make things clear since there is a lot of false assertions in this thread. Again a thread that should be a discussion in the forum, and not in the issue tracker...)

When you install MuseScore on windows, it creates an install directory and put its files in this directory. (by default C:\Program Files\MuseScore). It also writes 2 keys in the registry. The uninstaller removes all these files, and the 2 keys in the registry. And for the moment, that's all. There is no reason, and I don't know of any other sofware packages that do this to remove files you didn't install or even move them in a folder. So if you put templates, soundfont in the install path, they will remain. Except if someone came up with a patch, and several voices with enough authority in the community approves it, it will not happen. That's one thing.

Then, you start and stop MuseScore for the first time. MuseScore will store several files in the AppData folder (preferences, session files, palette configuration and in the nighlies, waveforms for aeolus etc...). Two different folders are used and are documented in Revert to factory settings . MuseScore will not store anything else outside of these directories.
Currently the uninstaller always let this two directories behind. A valid feature request would be to provide the option to delete these folders during the uninstall process and I would propose this option to be off by default. These files are data files, they are not "all sorts of code trash" or "junk", and they are small (50Mb ? come on you can get 2TB for less than $100 nowadays). Moreovern Windows will not be slower or more crappy because of these files. This is paranoia and misunderstanding of how an OS or a computer works. These files contains the user preferences and for an update they are valuable.

I opened a proper feature request : #13308: Windows uninstaller should propose an option to delete preferences

Here's how much stuff MuseScore leaves behind even after I have uninstalled it using it's uninstaller.

That is no paranoia lasconic, if you scale this to every 3rd party software treating the host operating system like that, the operating system itself is going to become terrible. Just the fact that unneeded space being taken up that results in fragmentation is enough.

Know the operating system that you're developing for lasconic, and, be nice to it.

Uninstalling software should be exhaustive by definition.

The new feature that you suggested for the uninstaller is perfect, with only one thing though, I'd like the default setting to be on.

I know the folders were small, but remember that you guys had problems with MuseScore before due to the fact that the uninstaller didn't do it's job right, and, this is due to happen again most probably if people who HAD MuseScore 1.1 before upgrade to MuseScore 2.0.

It's just supposed to be that way.

Attachment Size
leftovers.jpg 75.13 KB

No, that's fine, you guys are the cool developers, I don't know how to code anything except for .regs.

But I do have an eye for quality and I write every time I find something wrong, which is a lot better than saying nothing.

In reply to by tonyjustme

I'm sorry that I missed out on the good fight, years ago, when this thread was created. Ha ha.

But I have a related question: I am using MuseScore 2.3.2 on Windows Vista, and I may be having some bugs lately, that I thought could be corrected by merely re-installing 2.3.2. However, I would rather not lose any of my settings, if possible, and especially my "Styles". What will I lose by re-installing the same version?

No user data is ever deleted on u install. This discussion was about certain files used by the program itself, and the Windows registry.

But reinstalling rarely fixes anything. Sometimes reverting to factory settings does help - which clear your settings in Preferences but again removes no user files. But it too rarely fixes bugs. For that, much better to simply update to the most recent, which is absolutely guaranteed to fix probably let several hundred if not thousands of bugs that existed in 2.3.2. Not to mention add many new features and interface improvements.

Thank you so much, Marc.

Yes, I wish I could update, but I am using Vista, and I have already tried, and to no avail, as you can imagine.

But thanks for the info about the unlikelihood of clearing out bugs by reinstalling.

Some of the problem files tha I have are from the Wikifonia collection, and many are exported files from GuitarPro, from a friend, into XML format, so I am having issues like misplaced notes that play properly but which do not sit on the right ledger lines, for example, until I select them and press CTRL+R. Whether they would have printed correctly otherwise, I don't know because I never tried. But now I find myself having to do this reset often, which either means that I was having a problem before, without noticing, or else some bug has crept into the MS system because of these files, or else that this is happening only with files exported from other notation programs. Any wisdom that you may have on this related issue will likewise be greatly appreciated.