Introducing KoLmafia Daily Downloader

Here's what happens to me:

"Version 5.0.1 is out. You have Version 5.0.0"

I click ok.

Then I get release notes, and a download bar.

Then I click again, and the process repeats.

Further investigation shows that a file called DailyDownloader-new.jar was downloaded and did not replace the existing DailyDownloader.jar. Also it appears "ApplyUpdate-1.1.3.jar" was downloaded, which gives an error when run.

Is there any way that the auto-update could maybe replace DailyDownloader.jar with another file of the same name, that is updated, instead of dumping "DailyDownloader-new.jar" in my folder? This baffles my shortcuts.
The problem is that you can't just dump DailyDownloader.jar in the same folder with the same name while it's still running. Windows won't allow it (but Unix platforms will). That's why ApplyUpdate exists. What's supposed to happen is that the old DailyDownloader grabs ApplyUpdate and the new version, launches ApplyUpdate and quits. ApplyUpdate then replaces DailyDownloader.jar with DailyDownloader-new.jar, and launches it, then itself quits. Furthermore, running ApplyUpdate manually is supposed to give an error, because it requires 2 arguments specified at the command line, which it needs to do its job properly.

As a manual work-around, delete the old DailyDownloader.jar, rename DailyDownloader-new.jar to DailyDownloader.jar and continue on, until I figure out what's going wrong.

Also, I've only tested this on OS X, where it works correctly. Could you please tell me which OS (Windows / Linux) and version / distribution you have? That would ease testing enormously.
 
The problem is that you can't just dump DailyDownloader.jar in the same folder with the same name while it's still running. Windows won't allow it (but Unix platforms will). That's why ApplyUpdate exists. What's supposed to happen is that the old DailyDownloader grabs ApplyUpdate and the new version, launches ApplyUpdate and quits. ApplyUpdate then replaces DailyDownloader.jar with DailyDownloader-new.jar, and launches it, then itself quits. Furthermore, running ApplyUpdate manually is supposed to give an error, because it requires 2 arguments specified at the command line, which it needs to do its job properly.

As a manual work-around, delete the old DailyDownloader.jar, rename DailyDownloader-new.jar to DailyDownloader.jar and continue on, until I figure out what's going wrong.

Also, I've only tested this on OS X, where it works correctly. Could you please tell me which OS (Windows / Linux) and version / distribution you have? That would ease testing enormously.

The new updater for the daily downloader didn't work for me either, and either did your workaround. I've resorted to just manually downloading the new versions of mafia until it works again. I'm running it on OS X El Capitan.
 
That could be any number of things, from permissions to "404 File Not Found" errors reported by the server. Check the DailyDownloaderErrors.txt file for details.
 
KoLmafia Daily Downloader v6.0.0 is out. The biggest change is under the hood: It now pulls information from the Jenkins site (http://ci.kolmafia.us/). Per fewyn, you MUST upgrade to continue to get KoLmafia updates with this tool.

There's also a new feature: Pressing ESC on any of the dialogs will terminate the app.

Finally, the format of the release notes this tool displays changed. It's no longer "pretty" like it was before, and it only shows changes for the MOST RECENT revision (the one it's about to update you to). This is something I'd like to fix in a future release.
 
I'll look into it to see if there's a way I can get it to show the change log better for you. There might be a way.
 
http://ci.kolmafia.us/job/Kolmafia/rssAll seems to be a RSS feed, which might be more useful.

edit: you'd still need to scrape http://ci.kolmafia.us/job/Kolmafia/$BUILD_NUMBER/artifact/dist/ for the revision number, unless it's a constant difference between the two, even in the event of failures.
double edit: yeah, no, it's not a one-to-one correspondence between builds and revisions, as seen in #36.
 
Last edited:
Not unless you're going to add the other 5 scripts or executables that also function as updaters. Though that page should probably have the bit about exe and dmg removed if we end up killing those builds.

Not to say that it might not be useful having a page (possibly linked off the Installation page) for Automatic Updates or Updaters or something similar. I just don't think it should probably be on the main basic official setup page.
 
Hmm. I downloaded the .exe of version 6.0.0, but when I run DDLauncher.exe, it says, "Starting your current version," and that's it. Mafia does not launch.

I'm on Windows 10, using Java v.8, update 73.
 
True. Unless I misunderstand and my experience is atypical when I tried it last week, the EXE is just to configure your settings file. You also need the JAR in the same folder for it to actually have something to do.
 
OK, DailyDownloader v7.0.0 is out with the following changes:

HTML entities in the release notes are handled better.
The updater is back, but in notify-only mode.
DDLauncher for Windows got updated to work around the text scaling issue on that OS.

EDIT: D'oh! Updater broke in v7.0.0. Fixed in v7.0.1.
 
Last edited:
Back
Top