Archive for November 2, 2015

Monday, November 2, 2015

SuperDuper’s El Capitan Issues

Dave Nanian:

Much of this is our fault. The update itself isn’t displayed until the application launches, and a scheduled copy continues past the notice and completes the tasks at hand, then quits. That means that most users never even see SuperDuper! doing its thing, and thus never even know the update is available. So, by trying to be as “magic” and “unobtrusive” as possible, we end up hiding important information.

[…]

Non-Apple applications can no longer programmatically set the startup drive, so we can’t offer that as an “On successful completion” option. And, due to the above, the option to restart from the backup drive has also been disabled.

[…]

It seems that, on some systems, the size of a pipe write can shrink much smaller than in previous versions of the OS, perhaps because of resource constraints (although our test system that was always failing was a new Mac Pro with tons of resources)…as small, as far as we can tell, as the guaranteed minimum of 512 bytes. So, when our commands got larger than that, things started to fail on some systems, sometimes.

Still quite annoying. And even with that, we’d expect an error to be returned or thrown when writing to the pipe, but that didn’t happen…and seems to be a new bug in El Capitan.

I updated before Mac OS X 10.11 came out, and it’s been totally problem-free for me.

SGI Screen Fonts Converted for Mac OS X

Nicholas Riley:

Screen remains the most readable monospaced bitmapped font I’ve ever used. It’s available in regular and bold weights, and a wide range of sizes: 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 and 18 point. While I mostly use it in the 11 point size, the smaller sizes are terrific for fitting a bunch of log output in the corner of your screen.

[…]

In 2003 I used PfaEdit, now FontForge, to convert screen to a TrueType font so it’d work on OS X, and I have used it as my standard bitmapped font since. I would have made the conversions public earlier, but I was concerned about whether this would be a licensing violation. It turns out the SGI fonts were released under a MIT license a few months after I initially converted them back in 2003, but I didn’t notice until today.

OmniFocus 2.9 for iOS

The Omni Group has fixed an annoying part of using Siri to create OmniFocus actions:

Captured Reminders — Added a hidden preference for whether Reminders Capture should add a note about where to find the original item. You can turn the note off using:

this URL

…and back on using:

this one

The other main issue I’ve been seeing lately, which doesn’t seem to be fixed, is that the button to create a new action often disappears. Sometimes it comes back if I go back to the top menu or open and close a project.

Update (2015-11-02): Ken Case says the hidden “New Inbox Item” button problem was fixed in version 2.8.1. I’m pretty sure I was using that, as I have automatic app updates enabled on my iPhone, however I can’t be sure. So far, the problem has not recurred in version 2.9.

If-Let Assignment Operator

Weston Hanners defines a custom Swift operator (via This Week in Swift):

infix operator ?= { associativity right precedence 90 }

func ?=<T>(inout left: T, right: T?) {
    if let value = right {
        left = value
    }
}

func ?=<T>(inout left: T?, right: T?) {
    if let value = right {
        left = value
    }
}

So that code like:

if let value = someOptionalValue as? String {
  self.value = value
}

Can be written as:

self.value ?= someOptionalValue as? String

I like the brevity, but often I care that there was no value, or perhaps want to report why there wasn’t one (e.g. which key was missing). So I kind of see this as a way to make the compiler happy, which is not necessarily the same thing as properly handling the unexpected situation. I might prefer a pattern where the helper extracts the value from the containing object, rather than checking it after the fact.