23

My home PC is still on Windows 10 22H2, while my work machine is on Windows 11 23H2, and, to no surprise, neither machine reproduced the issue – Skimmer spawned on the water just fine, creating one via script and putting CJ in a driver’s seat worked too.

That said, I also asked a few people who upgraded to 24H2 to test this on their machines and they all hit this bug.

I have a likely explanation for why Rockstar made this specific mistake in the data to begin with – in Vice City, Skimmer was defined as a boat, and therefore did not have those values defined by design! When in San Andreas they changed Skimmer’s vehicle type to a plane, someone forgot to add those now-required extra parameters. Since this game seldom verifies the completeness of its data, this mistake simply slipped under the radar.

What made the game work fine despite of this issue for over twenty years, before a new update to Windows 11 suddenly challenged this status quo?

[-] Kissaki@programming.dev 1 points 8 hours ago

IIRC I've had pip fail like that too. Unable to build a lib it included.

[-] Kissaki@programming.dev 2 points 1 day ago

I had to click a few pages into their site for this

It's on the landing page in the "Extensible and Open" section too.

While Theia incorporates certain components from Visual Studio Code, such as the Monaco editor, it is independently developed with a unique, modular architecture, Theia is not a fork of VS Code.

[-] Kissaki@programming.dev 3 points 1 day ago

I just tried using it with local Ollama AI - looks like the current version 1.60 has a regression breaking exactly that. And the 1.61 milestone with the fix is overdue. So, presumably the update with the fix should be delivered soon?

27

GitHub

Theia IDE is compatible with VS Code APIs and can install and use VS Code extensions. Has additional APIs for customizations not available in VS Code.

Have you tried Theia IDE? Any assessments or experiences to share?

[-] Kissaki@programming.dev 3 points 3 days ago

I changed the cargo home/cache directory so it's easier to clean up. The disk space pollution of Rust is insane.

I did a small project project that resulted in an 8 MB executable. And had dozens of gigabytes to clean up.

Even more confusing was how closing VS Code lead to 11 GBs being freed. I initially had three or four projects open for reference in APIs and API usage. But my primary partition ran full quickly. In the end I used Rover and minimized IDE usage to two instances. And after my work, removed target and cargo build data again so I actually have space to work with on my primary partition.

[-] Kissaki@programming.dev 2 points 3 days ago

I actually prefer this over a bad translation

[-] Kissaki@programming.dev 7 points 3 days ago

speculative execution

Surely it read ahead and had to roll back because it made a wrong prediction. 😏

[-] Kissaki@programming.dev 11 points 4 days ago* (last edited 4 days ago)

One of the principles of the Pythonic style is: simple is better than complex.

But is it when you consider ambiguity and expressiveness too?

len(mylist) tells me it's definitely a list and not null or whatever. It also tells me the intent of whoever writes the code was checking length.

If it requires a long article to explain, I'd certainly be hesitant to use and prefer. The question is, is it surprising or intuitive that the truthy becomes a length check. What do you want to express with your code. And who will read it, and what expectations and requirements do you want to require of them.

For sequence type objects, such as lists, their truth value is False if they are empty.

[-] Kissaki@programming.dev 6 points 4 days ago

While the 2nd approach is not wrong, the first method is considered more Pythonic. Many people don’t agree, but I’ve already put forward my points in a previous article on that debate.

Does Pythonic mean best practice in the python community or "good python"?

If "many people don't agree", how can they claim it to be "pythonic"? Isn't that contradictory?

[-] Kissaki@programming.dev 6 points 4 days ago* (last edited 4 days ago)

adding some clarifications to the winget portions:

However, the graphical windows for the various installed dependencies still show up, making it obvious that all winget is doing is run the regular setup scripts under the hood.

winget does some default best effort of and on common installer tech to show the least UI necessary. If a UI shows up after all, that indicates to me that the manifest (the article talks about Neovim) does not have the appropriate flags included, or that the installer that the publisher uses does not support it.

Most, but not overwhelmingly, of the stuff I install and upgrade does not show installer windows.

which often leaves your computer full of background processes that only exist to routinely check for updates to a lot of programs in the background

The services are not only for updating in the background and unprompted, but also for installing with admin permissions without asking the user for admin. Stuff installed into C:\Program Files is elevated on admin permissions rather than having user modify permissions, which is a security feature. A consequence is that a convenient update process needs a Windows Service that may install them without requiring the user to have and approve elevated permissions.

As a matter of fact, after installing Neovim, there was actually no way to run it!

This may also be an issue of manifest information for instructing the installer, or installer defaults. Or maybe the installer itself does not provide this?

Either way, of course these things are inherent shortcomings and efforts of integrating third party installers. I just wanted to clarify.


Regarding bad winget experiences: I assume this is not the case anymore, but installing a LibreOffice featureversion upgrade leading to an automatic system reboot without warning or confirmation sucked. lol This was relatively early on in the winget release cycles though.

[-] Kissaki@programming.dev 6 points 4 days ago

I've always followed the "only one h1 per page" guidance. I had no idea this was a thing.

Seems like a good simplification.

The fact that it is being done and how breaking changes like that are handled is interesting - specifically in the context of messy mixed html parsing and contexts and usage. The least specificity selector :where(h1) is also interesting as guidance.

[-] Kissaki@programming.dev 14 points 6 days ago

Even just being able to view the source code without cloning is very valuable. A bare repo does not provide that.

8

This first push resulted in NuGet Restore times being cut in half, which was a reasonable stopping point for our work. However, along the way, we realized that a more extensive rewrite could improve performance by a factor of 5x or more.

Written from the perspective of several team members, this entry provides a deep dive into the internals of NuGet, as well as strategies to identify and address performance issues.

119
-5

The Push Notification Hub (PNH) service recently went through significant modernization. We migrated from legacy components like .NET Framework 4.7.2 and custom HTTP server called “RestServer”, to .NET 8 and ASP.NET Core 8. Moreover, for handling outgoing requests, we moved from custom HTTP client/handler called “HttpPooler”, to Polly v8 and SocketsHttpHandler. This article describes the journey thus far and its impact on PNH performance.

Sections: Intro (what is PNH), expectations, measurement, migration phases (concrete tech and measurements), closing thoughts, next steps.

PNH is deriving great benefits from .NET 8. Overall performance improved, as evidenced by the Q-Factor metric, by about 70%. Performance is a major factor for a service like this and will reflect positively in basically all flows on Teams platform that got to do with messaging. The results actually exceeded our expectations by significant margin.

29
5

cross-posted from: https://programming.dev/post/26112122

Hi, I made FuncSug to make GUI programming in the browser easier. It's a new language that aims to enable a clearer and easier code structure.

Can you tell me what you think about it?

181
submitted 2 months ago* (last edited 2 months ago) by Kissaki@programming.dev to c/rust@programming.dev
42
I Stopped Using Matrix - Tatsumoto (tatsumoto.neocities.org)
submitted 2 months ago* (last edited 2 months ago) by Kissaki@programming.dev to c/opensource@programming.dev

What ultimately pushed me to leave Matrix was discovering that my homeserver's admin was using my account without my consent.

In an encrypted room even with fully verified members, a compromised or hostile home server can still take over the room by impersonating an admin. That admin (or even a newly minted user) can then send events or listen on the conversations.

…, I've decided to move my conversations over to SimpleX.

For the past few months, the Matrix community has been largely inactive (despite having over 5,000 members), while the Telegram community has remained much more vibrant. This is disappointing given that I have been a strong advocate for using Matrix and have promoted it widely. For some reason, people are not moving to Matrix at the rate I had hoped.

14
19

GitHub repo

Examples

> (15 kg/m) * 7cm
# (((15 * kg) / m)) * 7 * cm
out = 1050 * g
> 1 |> cos |> log
# 1 |> cos |> log
out = -0.6156264703860141
> display dev
# Display mode: dev (Developer)
>>> 1.5
# 1.5
out = 1.5
    # IEEE 754 - double - 64-bit
    #
    = 0x_3FF80000_00000000
    = 0x____3____F____F____8____0____0____0____0____0____0____0____0____0____0____0____0
    #    seee eeee eeee ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff
    = 0b_0011_1111_1111_1000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000
    #   63                48                  32                  16                   0
    #
    # sign    exponent              |-------------------- fraction --------------------|
    =   1 * 2 ^ (1023 - 1023) * 0b1.1000000000000000000000000000000000000000000000000000
26

One of two Azure CDN providers was Edgio, which filed for bankruptcy.

azureedge.net dotnet CDN URLs will cease to work sometime next year after January 15th.


We expect that most users will not be directly affected, however, it is critical that you validate if you are affected and to watch for downtime or other kinds of breakage.

We maintain multiple Content Delivery Network (CDN) instances for delivering .NET builds. Some end in azureedge.net. These domains are hosted by edg.io, which will soon cease operations due to bankruptcy. We are required to migrate to a new CDN and will be using new domains going forward.

Affected domains:

  • dotnetcli.azureedge.net
  • dotnetbuilds.azureedge.net

Unaffected domains:

  • dotnet.microsoft.com
  • download.visualstudio.microsoft.com
view more: next ›

Kissaki

joined 2 years ago