

Looks like Bun 1.4 is out now: https://bun.com/blog/bun-v1.4


Looks like Bun 1.4 is out now: https://bun.com/blog/bun-v1.4


This breaks down when there are more than one SOURCE file, since each DESTINATION file depends on all source files. This means that $< will always be the first file in SOURCE. For example, if source contains the files 0001-01-01-some-file-name.md and 0002-02-02-some-file-name.md:
$ make -n
mkdir -p destination/0001/01/01/
/bin/bash ./myscript.sh source/0001-01-01-some-file-name.md > destination/0001/01/01/some-file-name.md
mkdir -p destination/0002/02/02/
/bin/bash ./myscript.sh source/0001-01-01-some-file-name.md > destination/0002/02/02/some-file-name.md
OP is probably better off using a scripting language to automate this kind of thing
EDIT: Fixed example filenames


But if you actually described this methodology in your PR, then it’d no doubt be closed immediately, based on the spirit of the rules rather than the exact letter of the rules.
Rules like these ultimately presuppose that the contributor is acting in good faith. Because otherwise the contributor could just lie about using an LLM. They don’t need to engage in rules-lawyering or jump through hoops to circumvent the rules


If you mean the “Sign in” button on the top right, then yeah, I’ve just been staunchly ignoring that. But it turns out that there’s also toggle to remove it, so now it’s gone!


It’s worth noting that there’s a single toggle that, to my knowledge, turns off all AI features in Zed. So if you do not object to the presence of this functionality, but simply do not want to use it, then you’re probably better off just sticking with upstream.
However, I’m not sure what you mean by “GitHub integration”, so that may not be covered. If you simply mean Copilot support, then that is also disabled by the aforementioned toggle


Obviously. It is, however, a good heuristic. The headlines that can be answered in the affirmative are very much in the minority


Betteridge’s law of headlines:
Any headline that ends in a question mark can be answered by the word no


You are not going to accomplish that using a random selection of textbooks. It doesn’t even look like there are that many textbooks in these piles. Realistically, you’d probably have better luck asking students taking intro-level courses to donate their old text books, or just pirating the textbooks you need


I’m guessing that the big books are old collections of scientific journals. Depending on the journal, you could have multiple of those tomes per year. These days scientists access journals digitally, so there’s little benefit to keeping the physical copies around in most cases


Both find and xargs are POSIX commands, so there’s something wrong with your OS if you are missing either, and find does not have an equivalent of -P. Granted, -P is an extension, but it is supported by GNU’s, OpenBSD’s, FreeBSD’s, and BusyBox’s xargs commands, and probably also by others, so it is reasonable to assume that it is available unless you are targeting some obscure OS


Here are a few random thoughts based on skimming the source:
-Weverything. Many of the warnings it enables are not very useful, and you are going to get a lot of them. And if you enable warnings, then fix them, or you’ll just miss it when your changes cause new warnings.type is not on of the expected values. That is undefined behavior. One simple way to avoid this, is to move the common return out of the ifs.const std::string type argument in the above functions should be enums, since you are just checking againts one of three fixed values ("name", "ext", and "date").const std::string argument. Either use a const reference (const std::string&) or a string_view (const std::string_view). The latter has the advantage that it doesn’t create a new std::string if you call the function with a C-string and it can be sliced cheaply.const std::string &df = df_str; in a couple of places, where df_str is a std::string passed by value. That is of course utterly pointless, and you should simply change df_str to be passed by const reference or as a string view.main with an int return type, but use std::exit to exit the function. Those std::exit calls could all be replaced with return, which does the same thing in main.check_type you perform two checks (saved as starts_with_dot and has_dash), that are not used if name == "name".check_exists would expect it to create a directory, so it should be renamed to something more descriptive. It is also redundant, since you already check that the directory exists in main.cpp via is_directory, but unlike that check check_exists doesn’t actually verify that the path is a directory.is_founded is Engrish

ls can be piped safely if you use --zero:
ls --zero *.txt | xargs --null -I {} mv {} /home/user/Documents
While the above is a pretty silly example, one reason why you might want to do this is that xargs has a -P/--max-procs argument, that runs N commands in parallel. So you could do something like the following to gzip four files in parallel:
ls --zero *.txt | xargs --null -n1 -P4 gzip
This is a bit simpler than using the equivalent
find . -maxdepth 1 -name '*.txt' -print0 | xargs --null -n1 -P4 gzip


Other git hosts are also getting scraped, and have had to implement counters because of it. For example, this is the kind of thing Codeberg shows crawlers. I’ve even seen people who self-host complaining about getting overloaded because of bots scraping their forge


For me, and a few other projects I checked, it only has non-GPL repos. But it also does not have everything that isn’t GPL, despite the repos being much older than the cut-off date. But it does have repos without a license, which they are simply not allowed to copy.
I wonder if those repos have been deduplicated, and one of the forks (on some other person’s account) is included instead. Unfortunately you can only search the first 5M records via the website, and I don’t have time to play around with the API at the moment, so I could neither confirm nor deny that possibility


If nobody owns the code, then then nobody can enforce the terms of the license it was released under, and free software under the FSF definition becomes impossible. All you have is public domain.
For example, a company could take the Linux kernel, modify it and distribute it with their gadgets. And they could simply not release the modifications they’ve made, as is required by the GNU Public License. But nobody would be able to do anything about it. Currently, copyright laws allow the people who wrote the Linux kernel to sue the company for breaking the license and violating the authors’ copyrights


Rust has no Undefined Behaviour.
That is simply not true. See here for a list of behavior that is considered undefined in Rust: https://doc.rust-lang.org/reference/behavior-considered-undefined.html
However, most (all?) of these require the use of unsafe, which helps narrow down where the problem might be, if you trigger any of this behavior


https://mynoise.net/ is great if you want something non-verbal. I’m particularly fond of Dreaming Nautilus and Sleeping Dragon. They do have a paid tier with more soundscapes, but most of the time I just listen to stuff that’s in the free tier


Past me understood my codebase. Present me wonders what the hell that guy was thinking


Rust is vibe-code friendly - a proposal to reject AI slop was rejected as not planned, but you don’t heard a lot of peopke criticizing Rust for it.
Why would you criticize Rust for closing that issue, when reason for closing it was that
- There are multiple efforts (in more proper venues) for rust-lang/rust-specific policies or project wide policies (Add an LLM policy for rust-lang/rust rust-forge#1040, Project-wide LLM policy rfcs#3959) to name a few.
- In particular, I would consider the Forge in-progress policy a continuation of this proposal.
- If we were to adopt a project-wide policy, [this] issue is most likely not a right venue for it.
https://github.com/rust-lang/leadership-council/issues/273#issuecomment-4600110478
Bond is not such a bad example, because he introduces himself as “Bond. James Bond”, not as “Bond. Bond James”. If he did introduce himself as such, then you’d be forgiven for thinking that his given name was “Bond”.
The problem is also not the short form of author names, which as you point out places the family name first, and which typically abbreviate the given names. The problem is that many sites will reverse that order when they render the full names. The solution is simply to allow the authors to specify how their full name should be rendered. This not a problem that is unique to scientific journals.
The full article is available here: https://archive.ph/1NGkF
See also https://shinesolutions.com/2018/01/08/falsehoods-programmers-believe-about-names-with-examples/