Comment Re:In other words (Score 1) 53
Yes, that's exactly what I did,
Yes, that's exactly what I did,
I'll be very interested to find out whether the gimp snap has the same problem as the Firefox snap: it does not work in a VNC session. Like at all. There's a known workaround involving futzing some environment variables, but it is not a complete solution: although it gets the main Firefox window to come up, additional popups (like the Save As dialog) are still broken.
This was always a problem right from the beginning, since Ubuntu replaced its native Firefox package with a snap, 2-3 years ago. Initially I grinned and beared it, expecting the issue to be fixed soon. It is still not fixed, and nobody appears to be interested in fixing it. When I brought this up on the Ubuntu users list I got a very indignant response from a snap advocate, along the lines of "it's not a snap problem, it's a [some-obscure-library-related-to-desktop-integration] problem". Well, wonderful, but it's a distinction without a difference. The bottom line is that the Firefox snap does not run in a VNC session, and which specific library is responsible for the problem is a distinction without a difference.
There is increasing pressure on companies to take responsibility for their software products. This includes preasure to move towards memory safe languages. This exercise is about getting C++ of the governments naughty lists, so that people can continue to use C++ without extra regulatory overhead and too much risk to the company.
Rust is just a working example of a language with similar performance to C++, whise approach could be copied. The committee opted to not do that and go for something that does not make the language memory safe at all, but that catches enough bugs to be close enough (they hope).
We'll see whether that is implementable, practical and enough to satisfy regulators.
I have hunted my fair share of core dumps in Qt code. Each one is a memory safety fail... it is, just like the rest of C++ not memory safe.
I find it funny that so many C++ devs seem to think using smart pointers means you are memory safe. It does not, there is so much more needed... check what the "safe C++" proposal set out to change, that's what you need tomdo to make C++ memory safe using the approach rust took. It includes fun stuff like new reference semantics, destructive moves and a new standard library.
The new employee who's supposed to link to dupes didn't show up for work today.
The biggest problem are the platform ABIs that are not expressive enough for either rust or C++. That means both sides do tricks to smuggle extra information through the C-compatible platform ABIs -- or to pass constructs entirely around that ABI. E.g. name mangling is used to smuggle function overloading through the C ABI by encoding type information into the symbol name which is just a string.
Things going around the ABI is all the stuff that C++ requires to always be in a header file. Those headers get directly included into the user of a library, going around the ABI layer completely.
The challenge for interoperability is to extract all the necessary information from one language and make that available in the other. Gathering that information without some defined ABI means extracting it from the source code of the language itself. That is damn hard, especially if one side is C++ that needs heuristics to even get parsed.
Meanwhile Rust-inspired safety principles and constructs are being added to C++ right now in the form of Circle C++ and an enhanced libstdc++, and in the near future in the C++ standard. The future for C++ is quite bright and will allow more cost-effective ways of retrofitting safety onto existing C++ code.
There is a proposal to have Rust semantics in C++. Nothing more. It will take decades to get that through the committee, with prominent members already having said that all other venues need to be explored before this proposal can be considered.
Sean having suggested to not have a new C++ standard library (but to use rusts instead) is not going to help find support inside the committee.
So the problem is that you got devs that are unwilling or unable to learn new things? That's indeed a problem...
They will suck out the will to live from any fresh blood that joines their team. Your product is stuck in the past forever, behind a strong waöl of "we never did that before".
You should write correct code everywhere.
Yeap, but humans just can not do that. We need tools to help us.
C++ isn't Rust. Are you now suggesting that C++ adopt implementation details of Rust to solve a problem?
... and yet that is exactly what the "Safe C++" proposal is that has hit the committee recently.
"The responsibility is on our ecosystem, not the developer"
This is false. You need to train your developers (unless they're already skilled).
We are pretty much the only industry that thinks like that. There is no contradiction between "improve eco system" and "train developers". All the other industries around us do both.
We are also pretty unique as an industry in that we watch our products fail and then go "there is nothing we can do about that, sucks that random people were too stupid to write proper code". We urgently need to improve, or we need regulators to step in to make us improve. Code is just getting too important to continue with our attitude.
What do you mean with secure? Secure as not attackable, or secure as not crashing, aka having memory bugs?
Memory issues are used to attack your software. Them causing crashes is the lucky case...
True, but those languages make sure you do not need to worry about the entire class of bugs that are related to memory management.
That frees up resources to think harder about all the other issues your code might have.
These days, security problems stemming from unsafe memory are not even the majority of issues.
Rust has proven that you can eliminate these issues without runtime overhead. So fixing these issues is now considered by governments to be low-hanging fruit.
If you want to kill competition in an industry, tax it enough that only the large corporations can survive the loss, and add some complicated regulations in for extra effect.
The notion that this is about helping SpaceX kill off their competition is absurd.
This is Musk Derangement Syndrome. The Brandon administration is simply trying think of every way to go after Musk. He pissed them off. He dismantled the branch office of Pravda that the old Twitter was building for The Blob. He fired all of the CIA and FBI spooks on Twitter's payroll, who were busy censoring and shadowbanning anyone who was engaing in wrongspeech. But the worst of it: he has all but explicitly endorsed Trump. Just read his tweets. He's been fully red-pilled. Not a day goes by that he doesn't rag on all of the left's sacred cows: environmentalism, transgenderisms, the illegal alien invasion from all the South American shitholes, et. al.
This is why they're doing this. This is why they have a bunch of lawsuits going against Tesla, for a bunch of bullshit reasons. This is why every time the Brandon administration tries to puff up the US's fledging EV industry they always fluff only Detroit's automakers, and conspicuously ignoring the elephant in the room.
And this is why they're doing this, that's all.
What about OpenSSL, is it available from homebrew? Sounds like it's time to build OpenSSL from source, and link curl to it.
There seems to be an obvious solution to anyone who finds themselves in this boat and needing to use MacOS for some reason: build their own stock version of curl and use that. Did someone mention homebrew?
Quark! Quark! Beware the quantum duck!