Flux
sqlite-utils 4.1.1

sqlite-utils 4.1.1

Release: sqlite-utils 4.1.1 Mainly a fix for an edge case that regular Claude chat spotted while experimenting with the 4.1 release to answer a question about ON DELETE. table.transform() now raises a TransactionError if called while a transaction is open with PRAGMA foreign_keys enabled and the table is referenced by foreign keys with destructive ON DELETE actions - CASCADE, SET NULL or SET DEFAULT. The pragma cannot be changed inside a transaction, so previously dropping the old table as part…

Simon Willison's Weblog
sqlite-utils 4.1

sqlite-utils 4.1

Release: sqlite-utils 4.1 The first dot-release since 4.0 a few days ago, introducing a number of minor new features. sqlite-utils insert and sqlite-utils upsert now accept a --code option for providing a block of Python code (or a path to a .py file) that defines a rows() function or rows iterable of rows to insert, as an alternative to importing from a file. (#684) sqlite-utils already had features that allow you to pass blocks of Python code as CLI arguments, for example this one for the…

Simon Willison's Weblog
jscrambler npm Package Compromised in Supply Chain Attack

jscrambler npm Package Compromised in Supply Chain Attack

A compromised release of the popular jscrambler npm package introduced hidden native binaries that execute automatically during npm install, exposing users to a supply chain attack before any application code runs. The malicious 8.14.0 release, published on July 11, adds an undocumented preinstall hook that invokes dist/setup.js. It also introduces new files, including dist/setup.js and dist/intro.js, along with platform-specific binaries for Linux, macOS, and Windows embedded in an obfuscated…

Socket
Quoting Nilay Patel

Quoting Nilay Patel

The reality is to make augmented reality glasses, you need to put a camera next to your eyes that is continuously recording everything you see and processing that to put information over it. There is not another way around it. And there's certainly not a chip that can fit in the stem of a glasses that is both powerful enough and power miserly enough to do that in real time. You have to send that data to a cloud. You gotta do it. [...] Or you can build something the size of a Vision Pro with a…

Simon Willison's Weblog
A tour of my dotfiles

A tour of my dotfiles

Over the years, I've built up a collection of aliases, shell functions, and CLI tools that make my terminal feel like home. All of it lives in a single repository: my dotfiles. It's a backup of every terminal tool and configuration I rely on, and it means I can set up a brand new Mac from scratch in about five minutes. Colleagues at Spatie use it as a starting point for their own setups too. Let me walk you through what's in there. I'll cover the tools and tricks first, with installation and…

Freek Van der Herten
HTTP QUERY method: the missing verb for complex search APIs

HTTP QUERY method: the missing verb for complex search APIs

Video version at https://youtu.be/REjWp_2Dt30 Hypertext Transfer Protocol (HTTP) provides us with a set of basic methods to describe what our request is doing. Generally, we’re working with GET or POST requests, but these have limitations on them that you won’t be aware of until you’ve run headlong into one of them. The best example is […] The post HTTP QUERY method: the missing verb for complex search APIs appeared first on PHP Architect.

PHP Architect
Quoting OpenAI

Quoting OpenAI

[...] Work on web and mobile runs in the cloud. Work in the desktop app can also use local files and desktop apps with your permission. At launch, cloud Work conversations do not appear in desktop Work; desktop Work threads and local files remain on that computer. — OpenAI, trying (unsuccessfully) to clarify ChatGPT Work Tags: openai, chatgpt, ai

Simon Willison's Weblog