Math.Round opens the browser print dialog (2019)
github.com
github.com
Two unrelated facts about Swift are that it has "implicit self" in that inside an instance method, you can call any other instance method without qualifying the access to indicate that it's happening on the current object. Also, it has a free function, print, that is basically its equivalent to std::cout or System.out.println or console.log in other languages. It's a common debugging technique, in particular. Perhaps you can see where this is going…
When writing apps on macOS, one makes their own custom NSWindows and NSViews. One method, -print:, invokes the system print dialog by default. This, of course, got named NSWindow.print(_:)/NSView.print(_:), which promptly made any code that tried to log a view or window from a context where those were visible suddenly start trying to literally print. Kind of amusing that the literal action of "printing", which today lives on as "printing" output to the screen, ends up meeting its roots with a name overload collision.
(If you're wondering, the function was eventually renamed to NSWindow.printWindow(_:) and NSView.printView(_:) to solve this issue.)
How did they prevent this change from causing a huge compatibility nightmare?
IIRC, they also provided migration scripts. Certainly their Xcode tools provided hints indicating the renaming of functions.
And then there’s the owner/company response to a trouble report: “nobody has reported this”
On the contrary those are helpful. It means the steps to reproduce are unclear or incomplete.
But often the key people responsible use that phrase as a shield to seemingly reject the suggestion that there is a problem.
I've experienced this so many times with ISPs over the years. I offer them a lot of details, but the most common initial (and final) response is "nobody else has reported this". Obviously the first person reporting a problem will be in this situation.
> But often the key people responsible use that phrase as a shield to seemingly reject the suggestion that there is a problem.
Have you ever been on the other side of this? If a single person reports that something sometimes doesn't work, they don't know under what circumstances it doesn't work or have any meaningful description on how to make it do the problematic thing, and nobody else is experiencing it - 9 times out of 10 its a problem with the reporter. Even if it isn't, the description of the problem is so vague and useless there's nothing to be done.
In the phabricator bug tracker there is a feature i like called tokens where users can award tokens to a bug (i guess its the same as github reacting to the bug, but i like how phab did the ui better). Lets users note that it is affecting them without derailing the conversation.
And it is useful to have a rough count of how many users are affected by a bug. Especially for the harder to reproduce ones where it is unclear if investigating is worth it.
Its not abusive to close duplicate reports of a bug that is not currently prioritized. It would be impossible to prioritize every single bug.
Math.Round opens the browser print dialog - https://news.ycombinator.com/item?id=20228089 - June 2019 (61 comments)
Took me a few seconds to find the issue after almost going crazy about why the freakin' print dialog was opening constantly.
It could be, Blazor dates back to 2018 and this bug is from 2019, this is the kind of thing that happens in the early days.
The parent repo name and readme is more informative as to the scope, and confirms that somewhat: https://github.com/dotnet/try
> Welcome to the Try .NET repo. ... Online, powered by Blazor, Users can run and edit code all in the browser.
It's an amusing bug, but not a current or widespread issue.