DC / DIM - tweaks to help users to roll back to earlier versions
v4.20 contains breaking changes (i.e. changes that mean products and files saved with earlier versions do not behave in the same way). I fully understand that in a product as complex as Daz, which is a product that that also depends extensively upon third-party components, that will sometimes happen. It is unavoidable.
Here are some suggestions that could help avoid people installing something they aren't ready for and that could help them go back to an earlier version.
1. DC should not install applications automatically, particularly when they contain known breaking changes. I had it set to update assets (no idea what the default is, but I don't remember setting it.). I don't think of Daz itself as an "asset". DC was half way through updating me before I noticed and stopped it. I like to look at the known issues before I take new software!
2. If there is an important compatibility message, the installer is the best place to make that clear and provide access to mitigation advice (e.g. links to the web site). "Installer" can mean DC / DIM or the installation package. That is the only point at which that message will reach every user. If nothing can be done to improve the rollback process, then warn users they need to back up at that point. Very few people will have read the notes on the beta on the forum (I hadn't). The same mechanism could also promote the benefits of the new version.
3. Why do they need to back up though? It doesn't feel like the average artist should need to go delving around in install caches to prevent an upgrade breaking their scenes before they have had time to prepare. If the old installer is still there, why not make DC / DIM do the backup? It could copy the previous installer to a backup folder. Or use different names for each installer so there's nothing to overwrite.
4. Many other applications provide access to old versions on the site or through their installers, That feels like a bigger change though, and just keeping a backup of the old version, if present, would be a big improvement.
These are just a few ideas to consider...
(It this the wrong place, please let me know.)
Comments
It's been the stadard here for awhile. if you don't backup your older version of DS, then you are stuck with the latest. I highly doubt that will ever change since everything in the store is geared for the latest version.
You may well be right but it's a shame they make this so hard. 4.20 seems like something you need time to prepare for and it will happen again.
I suspect an automatic backup is just two lines of code;
i
f (old version exists)
{
Copy it to backup.
}
Maybe there's more to it but I would be surprised.
I'm sure supporting all of those old versions is the biggest problem.
Everyone in this thread knows that even if you tell someone that the old version they installed is not supported they will still demand support for it in new content and bug fixes because they were allowed to download and install it.
Were do you draw the line and say "No more support."?
Daz only has 2 developers(see help>About Daz Studio on Studio's main menu).Though one of them did post a few days ago that they are hiring.
Actually there are a few companies that do provide a page of downloads for previous editions. They make it quite clear that NO support for previous editions can be had.
It's why I have learned to not move to the latest and greatest till it's safe to do so.
Yes, there are a few that do and some that don't.
I'm not against the idea of making older versions available.Of course that would mean making the supporting packages available also.Default resources, the starter essentials, etc.,etc.Those could all be bundled up into a version specific package with a big fat disclaimer that the user would have to click through to get to the download.A web developer was one of the jobs Daz was hiring for.
I do have my installers and supporting packages saved all the way back to 4.5.The first version I started with.It predates iray.I believe 4.8 "iridium" or something like that was the first version with iray support.I've not tried to install any of them to see if all my content will work with them.I'm sure I'd run into problems with shaders at minimum.At one point Daz was making "legacy" materials available for just that reason.
Don't get me wrong.I'd like to see a more seamless upgrade experience for everyone even though I've not had the issues others have had.
I did manage to over heat my GPU for the first time trying to reproduce the issues others were having.Which I didn't think I could with 13 140mm case fans and an AIO CPU cooler in a full size case that has large vents on 4 sides including the bottom.This caused UI corruptions for me and a few other strange and unreproducible problems.
The current lighting issues are all directly related to the changes Nvidia made to the luminance/opacity interaction.This problem does effect me, and everyone else.This is the main issue that Daz should have made a special effort to warn everyone about.Maybe even a click through in DIM or the application installer so the user knew what was about to happen and could choose not to continue with the upgrade.
I've not encountered the top coat issues.My assumption is because I installed the vMaterails libraries(both 1.7 and 2.0) and some core definition file was different than the one Daz ships.I know they are different because I had to set an environment PATH variable to the one I wanted to use.The v2.0 version breaks many v1.7 materials btw.I'm current using the one that came with vMaterials v1.7.The v2.0 materials seem to be working with it, for the ones I've used anyway.
The session layout problem I didn't experience because I've used custom layouts for years and I already had those files, so the new Safe Write had something to replace to begin with.
As I wrote the original post, I was aware of the issue of supporting old versions, as in my day job, I run a software project. I used to write code, but sadly, I don't get to do that much these days.
Anyway, maintaining old versions is what's expensive, not supporting them. By that, I mean fixing them if they go wrong, and the further you go back, the more it costs. If Daz now made a fix in 4.14 now they'd (usually) need to fix 4.15, 4.15 and 4.20 and build releases for them all, or people could upgrade and lose the fix. Creating and testing releases is a major overhead (at least for us) so we try not to do it, we fix the latest version, and we tell people that want the fix they need to upgrade.
I was thinking more about what @Catherine3678ab said as the absolute most they could do. The least would be to not trash the old install if it's still there.
Daz is not trying to stop old versions from going online. They could do that very easily, and yet they don't, so I take that to mean they are OK with people running old versions. So why make it so hard for the poor user whose ghost litghts have all gone out to get that scene they were working on finished before they do the upgrade? Especially when DC will do the upgrade automatically if you aren't careful.
Let's not forget that fielding all the "can I have an old installer please?" ticktets is also an overhead. If the installer didn't delete old versions or they were kept online, that could be handled with a FAQ that would prevent many of those ticktets from being raised.
-----
And now I'm thinking I am on 4.15, I never took 4.16, so why did DC start installing 4.20 automatically, when it never tried to install 4.16? Did they update DC and turn on an auto-update feature? I'm also wondering whether that automatic install has already deleted the 4.15 installer even though I stopped it at about 50%...?
I agree they should have previous versions for download available on the site. The thread response here is just basically "Thats the way it is, deal with it." Which is just a way to dismiss the problem some people have with how Daz cant even provide for backup of older versions while hundreds of other software both free and for sale (Blender for YEARS before that became as popular as the are well now or Daz EVER provided a bridge). I have never heard of going back and fixing bugs in older versions when newer versions address them, that sounds bizzare. Daz stores gbs of single products that are virtually obscure after release, I think its resonable to hold like the last 3 versions of software. My god they STILL have Bryce.
It's quite common depending on the software. It's not common with consumer software, but once you get into software run by corporations (my area) then it's far more common. It's a big deal for a company to upgrade 1,000+ users, so we sometimes have to patch an old version. And it's also the norm with operating systems. Microsoft haven't stopped fixing Windows 10 now that Windows 11 is out.
But on the main point, this stuff was all news to me. I never knew it was my responsibility to back up my old installer. And how would I know before it was too late? And I just feels so needless. I don't have the necessary knowledge to comment on the internals of Daz, but file management is basic stuff. I'd be surprised if this couldn't be done in a few hours. My pseudocode is a slight exaggeration because you have to worry about what could go wrong and where to put the file, but I find it hard to belive it would be difficult. Then again, people tell me things are easy to do, and they are actually incredibly hard...
If you have the option never choose automatic updates. Manual installs and updates assures you control whats happening on your computer. Keep all your old software installers so you can backup and backtrack. Make it a rule.
Good advice, yes, people should do that. And I do. I'm not making this suggestion because something went wrong for me. It didn't.
Many people do not make backups of their Daz installers. Even if you tell them to do it, they won't. I don't feel it's OK to punish those people by intentionally destroying something they should have backed up when there's no obvious reason to do it.
And how do people know how to do it? Is that documented anywhere? If it is, I can't find it.
I''m starting to agree with you AndrewJJP.
There should be a "Roll back to last version" option in DIM and DC(Daz Central)
That would be beneficial to everyone.
And yes, one of my concerns was the ticket system being tied up handling old version requests.
DC shouldn't be configured by default to install upgrades to software only content products.I don't know that it is.I use DIM and manual installs so I have no experience with it.
Windows 10 comes with an archiving software called "File History".It can be used to back up whole directories or single files.Maybe that can be called from a Daz Script to set up a basic backup system?
Maybe a batch file run by the scheduler that just copies to a target folder and adds a date to the end of the file name could be a simpler option?
Not sure what could be done for the mac users.I'm sure they are close enough to linux that they already have some powerful tools to use for backups/archiving.
Cool. Daz could still take a step to improve their customer experience by providing dls of at least the last version.
Agreed, but customers need to take some of the responsibility themselves. When you have a version that works, head over to your product library and download the version in there and tuck it away just in case. I have been doing that for years and it has saved me from issues more than once. I am still on the last version of DS myself
I agree 100% with the idea you should back stuff up. What's not entirely clear is what you have to back up and how you do it.
I know how to do it with DIM, but I have no idea on DC, and I don't think there's anything to tell people (for either installer) that it's expected, or how to do it.
But as I write this, I wonder why I need to back something up with should be easily accessible and which is being deliberately deleted. It's probably just what I'm used to in the software I provide, where we go to enormous lengths to back things up on behalf or our users. For example, when they save a document, we make backup of the old version before we overwrite it. That rotects against something happening during the save that corrupts the file, and it lets them go back a step if necessary. People like this so much that we will be enhancing the software in August to retain the last 10 versions, and modifying the UI to provide them with easy access. Currently, they need to rename the file in Explorer, but at least it's there. I guess it's just another world...
Actually, maybe there's another suggestion there.
I'm assuming it doesn't require anything very complicated. There must be code in DIM / DC that deletes the installer. I'm just suggesting they make what, on the face of it, is a simple change to that code. Instead of deleting the file, they move it. Coupled with something in the FAQ about how to roll back, I think that change that would help users, and help the poor overworked Daz support team.
Of course, that won't help if someone went out of their way to delete it themselves (which your suggestion would cover), but if they did that, and they lost it, it's harder to have much sympathy. Although I'd still say a simple download from the web site would be ideal.
(I hadn't seen the file history, so thanks for sharing that.)
In my non-programer point of view.
I would think it simpler to add a button on the DIM UI that says "Roll back to Previous Version" (applicable to the general release version only beta class software is a different discussion) and next to that button(or under it) would be text that displayed what version that would be installed.
Under the hood, that install package and all of it's dependencies(if any) could be moved to a folder in the download directory.
Seems like it would be easy to do with few if any problems within DIM.
Does DIM have a plugin framework to allow for a PA to make such things?
Yes, I guess after all my talk of making it simple, I ignored the most important thing: how you would use it!
A button to roll back, just like you say, would be ideal.
I'm not sure that DIM has the ability to order versions like that, even if the older versiosn were to be put back on the servers, so it may well be elss simple than you suppose.
PA's don't do anything in regards to DIM. All we do is package our products and Daz takes over creating the metadata, tags, categorization and building the DIM package.
Ultimately it doesn't matter how easy or difficult it would be to implement. Daz has not chosen to make rolling back an option except in limited circumstances, so any argument you could make about how easy it would be to implement a change they're not interested in making would be futile.
A little trick to disable 'any' accidental deletion of 'any' program is to rename the "uninstall.exe" to "uninstall.old"
Not for this update which I have yet to install, but previous I tested the above and yes, when the installation exe is running, if it can't find that uninstall.exe file, it does not uninstall that program. HOWEVER it is not adviseable to run two editions of D/S on the same computer due to [as I understand it] a competition for use of various files possibly found in the AppData folder.
IF anybody tries this, remember, in order for the OS to uninstall the program, that "uninstall.old" MUST be renamed back to its original name.
AND also to be aware that some "computer cleaners" will remove any file that they cannot find on board, a program that will use it. AFAIK the use of "computer cleaners" has not been adviseable since W7.
True, but a PA could write a standalone application to do this. Or just anyone that had the skills and motivation.
The files needed are already on the users computer by the time this app would be used.
It would mostly just need to track what versions are downloaded, or downloadable currently for the given account.
Then offer to backup up , uninstall, or install.
IDK, Could be a popular idea for those users that want this type of capability.
The files would be available only if the user had not overwritten them by downloading a newer version, which is the point of the discussion.
What customers do themselves isnt the point of a "suggestion" thread. Minimalizing the problem to put the onus back on the customer, especially in the presence of content breaking bugs when a resolution that plenty of smaller/new companies have (they even host them on github in some cases) is kinda confusing. I mean its something to only imporove the experience and alleviate a problem that commonly occurs. There is no VIRTUE in discoraging common solutions because you have your own means of dealing with a problem.
Taking that to it's logical conclusion, there's no point in making suggestions!
A PA could, but I wouldn't consider it likely that the Daz store would accept such a product, since they don't seem interested in allowing the functionality it would offer.
"If" Daz doesn't want there to be the ability to roll back then a PA can hardly make a product and sell it in the Daz store that goes against their rules.
The purpose of zips/installers is to be able to back them up or save in a safe location. A brokerage, any brokerage, is only required to offer you 1 download and it is the customers responsibility to save that file, not the brokerage. Brokerages allow mostly unlimited downloads as a courtesy and not the rule.