Datasette gives SQLite clients a choice of JSON shapes
engineeringsqlitedatasettejsonDatasette 0.21 adds response shapes, page-size controls and column-specific search. A smaller JSON response also changes how a client discovers pagination.
Notes on building observable systems and operating them at scale.
Datasette 0.21 adds response shapes, page-size controls and column-specific search. A smaller JSON response also changes how a client discovers pagination.
Community-hosted Swift CI begins with Fedora and ARMv7 Debian testing. Its post-merge execution model expands regression visibility while leaving host maintenance with volunteers.
GCC 8.1 adds library facilities and experimental C++2a support alongside calling-convention corrections. Language mode, library coverage and ABI compatibility remain separate properties of a build.
GCC 8.1 makes GNU C17 the default C dialect. The important distinction is between selecting the corrected standard, enabling GNU extensions and receiving the compiler's new diagnostics.
Python 2.7.15 releases the interpreter lock around more file operations. Its maintenance fixes also address garbage collection during concurrent subprocess creation and compiler assumptions about memory alignment.
FreeWheel describes replacing isolated application caches with shared Redis storage. The architectural gain is a common cache entry, while freshness still depends on the application policy.
Swift's new snapshot implementation represents implicitly unwrapped values as ordinary optionals. The resulting changes to inference and member lookup explain several source compatibility surprises.
Go's new visual identity gives the project a shared wordmark and presentation materials while retaining Renee French's mascot.
WG14's Brno agenda includes proposed attributes and a paper showing inconsistent deprecation diagnostics. The difficult question is how an API can deprecate its types without warning about its own declarations.
The redesigned routing API separates the host a client addresses from the workloads receiving its request. Ordered VirtualService routes and named DestinationRule subsets make that relationship explicit.
TypeScript 2.8.3 includes corrections to import organization and interoperability helper discovery. Both depend on preserving the meaning of an import while compiler tooling processes the surrounding file.
Strimzi 0.3 strengthens its Cluster Controller and changes advertised listeners to DNS names. Its ConfigMap-driven model needs both recovery from missed notifications and stable ways to identify individual brokers.
pip 10 implements PEP 518 and prepares a separate environment for declared build requirements. The change addresses the circular problem of executing setup.py to discover what it needs.
Perl 5.26.2 fixes distinct memory errors in regular expressions and binary packing, alongside parser and reference-counting repairs.
The pgAdmin 4 desktop runtime becomes a tray application that launches a browser, changing which component owns rendering and resolving failures in the embedded engine.
Docker 18.04 adds required-variable interpolation to stack deployment and compression for rotated JSON logs. Both changes make an existing operational policy expressible in Docker configuration.
A saved destroy plan followed a different count-evaluation path from a direct destroy. Terraform 0.11.7 corrects that distinction and two customized-diff defects.
Rails 5.2 ships encrypted credentials, Active Storage and a Redis cache store. Their implementations make different commitments about keys, persistence and failures that application operators need to understand.
rqlite has been ported to Hashicorp Raft 1.0 for a planned 5.0 release. The underlying library introduces server identities and explicit protocol compatibility stages.
The April 6 recap reports on the March Berlin meeting, connecting edition compatibility, asynchronous programming and new verification work.
CockroachDB 2.0 adds partition placement controls and JSONB indexing. The release exposes decisions about geography and document structure while preserving a SQL interface.
NixOS 18.03 adopts Nix 2.0 and updates the system base, with module changes that distinguish declarative configuration from persistent service state.
The April technical explanation of CVE-2017-1002101 describes a filesystem race. The Linux implementation uses file descriptors and an intermediate bind mount to preserve the validated target.
SQLite 3.23.0 adds optional APIs for moving a database between a connection and a memory buffer. Their ownership rules matter as much as the serialization itself.
Dos Reis and Smith propose a common route for modules toward C++20. The plan separates a shared language subset from header-import and macro work that still needs experimentation in the TS.
Rust 1.25 moves to LLVM 6, stabilizes explicit struct alignment, and simplifies import grouping. The changes affect different layers of how Rust describes a program.
Conditional conformance lets containers acquire protocols from their contents. Swift 4.1 uses it to fix nested equality and collapse collection wrappers, with consequences for both APIs and generated libraries.
CVE-2018-6914 lets externally supplied temporary-name prefixes alter the creation path. Ruby's correction removes path separators from name components while preserving the separate parent-directory argument.
Incremental fetch sessions reduce metadata repeated between Kafka brokers. A session identifier and epoch keep the shared state synchronized, while a bounded broker cache limits the memory cost of remembering it.
Python 3.6.5 repairs asyncio synchronization and transport behaviour alongside security fixes. The changes show why interpreter maintenance matters even when application syntax stays the same.