<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/python-3-15-beta-4-lands-spark-4-2-ships-vector-search-e0vltytw3" -->

---
title: Python 3.15 beta 4 lands, Spark 4.2 ships vector search
description: Python 3.15.0 beta 4 is out — the last planned beta before RC1 on August 4th — with 298 fixes and a JIT delivering 8-9% gains on x86-64 and 12-13% on AArch64....
canonical: https://daily.dev/posts/python-3-15-beta-4-lands-spark-4-2-ships-vector-search-e0vltytw3
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Python 3.15 beta 4 lands, Spark 4.2 ships vector search | daily.dev
og:description: Python 3.15.0 beta 4 is out — the last planned beta before RC1 on August 4th — with 298 fixes and a JIT delivering 8-9% gains on x86-64 and 12-13% on AArch64....
og:url: https://daily.dev/posts/python-3-15-beta-4-lands-spark-4-2-ships-vector-search-e0vltytw3
og:image: https://api.daily.dev/og/posts/e0Vltytw3.png
og:image:alt: Python 3.15 beta 4 lands, Spark 4.2 ships vector search
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Python 3.15 beta 4 lands, Spark 4.2 ships vector search

**[Python Digest](https://daily.dev/sources/python_digest)** · 4 min read · 3 upvotes · 0 comments

## Summary

Python 3.15.0 beta 4 is out — the last planned beta before RC1 on August 4th — with 298 fixes and a JIT delivering 8-9% gains on x86-64 and 12-13% on AArch64. Apache Spark 4.2 dropped with native vector similarity search, Auto CDC, and Arrow-optimized UDFs on by default. TorchComms is PyTorch's new distributed backend, cutting process-group init from 265 seconds to 24 at 96,000 GPUs. On the security side, uv now supports malware checking against the OSV database, and a FastAPI migration off Lambda surfaced async bugs that had been hiding for years.

## Content

**TLDR:** Python 3.15.0 beta 4 is out — the last planned beta before RC1 on August 4th — with 298 fixes and a JIT delivering 8-9% gains on x86-64 and 12-13% on AArch64. Apache Spark 4.2 dropped with native vector similarity search, Auto CDC, and Arrow-optimized UDFs on by default. TorchComms is PyTorch's new distributed backend, cutting process-group init from 265 seconds to 24 at 96,000 GPUs. On the security side, uv now supports malware checking against the OSV database, and a FastAPI migration off Lambda surfaced async bugs that had been hiding for years.

---

## Python 3.15.0 beta 4 released, RC1 scheduled for August 4

Beta 4 is the final planned beta before the release candidate, shipping with roughly 298 bugfixes and documentation changes since beta 3. The JIT compiler is now showing 8-9% improvement on x86-64 Linux and 12-13% on AArch64 macOS — modest but real, and the stable ABI for free-threaded builds is included. Key features locked in for 3.15 include PEP 810 explicit lazy imports, a frozendict built-in, a new sentinel type, and UTF-8 as the default encoding. Third-party maintainers should be testing against this now before RC1 lands. [Read more](https://daily.dev/posts/tLGvqqsmI)

## Apache Spark 4.2 adds native vector search and Auto CDC

Spark 4.2 landed in Databricks Runtime 19 Beta with over 1,900 commits from 260+ contributors. The headline is a native NEAREST BY SQL operator for vector similarity search — if you're running a separate vector database purely for semantic search over embeddings, this is worth evaluating. Arrow-optimized UDFs are now on by default, Pandas 3 is supported, and the Arrow C Data Interface enables direct interop with Polars and DuckDB without serialization overhead. Auto CDC adds a declarative Python API for SCD Type 1 ingestion, and Spark Connect now supports AI agents calling remote clusters. [Read more](https://daily.dev/posts/xWZHYAayK)

## TorchComms replaces PyTorch's c10d backend for distributed training

TorchComms is PyTorch's new backend layer sitting beneath the existing torch.distributed API — you keep ProcessGroup and DeviceMesh, but get explicit per-device communicators underneath. The numbers are significant: process-group initialization drops from 265 seconds to 24 at 96,000 GPUs, and inference decode time improves up to 83% at 16 hosts. TorchTitan already exposes a --comm.mode torchcomms flag, and migration requires minimal code changes. The ncclx backend path isn't fully wired through init_process_group yet, but the architecture is in the open source tree now. [Read more](https://daily.dev/posts/bByvlS17k)

## FastAPI migration off Lambda exposed years of hidden async bugs

A team moving their FastAPI API from AWS Lambda to Kubernetes discovered that Lambda's single-invocation-per-environment model had been masking real problems. Synchronous blocking calls were starving FastAPI's thread pool, causing Kubernetes readiness probe failures. A JWT client was being rebuilt on every request, discarding its JWKS cache. Concurrent boto3 calls caused memory spikes that OOMKilled pods. Fixes — rewriting handlers to use psycopg3 and httpx properly, moving the auth client to a module-level singleton, adding an LRU cache — resulted in 50-90% latency improvements depending on the endpoint. Worth reading before your next Lambda-to-container migration. [Read more](https://daily.dev/posts/GAGSq5dd9)

---

## Also notable

- **uv gains OSV malware checking with UV_MALWARE_CHECK=1:** Setting UV_MALWARE_CHECK=1 makes uv cross-reference the Open Source Vulnerabilities database before installing packages from a remote registry, blocking anything flagged as malware — a one-line addition to CI that's hard to argue against. [Read more](https://daily.dev/posts/S8aF2f9rb)
- **uv lockfiles shrink 40-50% with environment marker compression:** The uv team shipped optimizations that compress environment markers in uv.lock files, cutting some lockfiles by 40-50% — relevant if you're committing lockfiles to version control or shipping them in containers. [Read more](https://daily.dev/posts/U9G841tmq)
- **PyTorch-Triton 3.7 plugin extensions let custom compiler passes load at runtime:** The new plugin system lets you load custom MLIR dialects and compiler passes via TRITON_PLUGIN_PATHS without forking Triton; Meta's TLX extensions now ship as the standalone utlx package and hit 12-15% over rocBLAS on AMD MI350. [Read more](https://daily.dev/posts/URnWxMETy)
- **Django Steering Council backs Triptych Project to add PUT/PATCH/DELETE and partial DOM replacement to HTML spec:** The Django Steering Council issued a Letter of Collaboration supporting Carson Gross and Alex Petros's effort to standardize HTMX-style patterns — PUT/PATCH/DELETE form methods, button actions, and partial page replacement — directly in the HTML spec via WHATWG. [Read more](https://daily.dev/feed-by-ids?id=6nFbfQFx7&id=EUrvfGReu)
- **PyPy 8.0.0 will require GLIBC 2.28, dropping manylinux2014:** PyPy's next major release moves Linux builds to manylinux2_28, requiring GLIBC 2.28 or newer — compatible with Ubuntu 20.04, Debian 10, and Amazon Linux 2023, but worth checking if you're on older base images. [Read more](https://daily.dev/posts/YCRRhzjnS)

## Similar posts on daily.dev

- [Python 3.15.0 beta 4 is here\!](https://daily.dev/posts/python-3-15-0-beta-4-is-here--tlgvqqsmi) · Python Insider · 9 upvotes · 0 comments
- [PyTorch 2.13 Release Blog – PyTorch](https://daily.dev/posts/pytorch-2-13-release-blog-pytorch-zaeiispac) · PyTorch · 8 upvotes · 0 comments

---

Tags: [#python](https://daily.dev/tags/python), [#pytorch](https://daily.dev/tags/pytorch), [#apache-spark](https://daily.dev/tags/apache-spark), [#fastapi](https://daily.dev/tags/fastapi)

[View this post on daily.dev](https://daily.dev/posts/python-3-15-beta-4-lands-spark-4-2-ships-vector-search-e0vltytw3)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"DiscussionForumPosting","mainEntityOfPage":"https://daily.dev/posts/python-3-15-beta-4-lands-spark-4-2-ships-vector-search-e0vltytw3","headline":"Python 3.15 beta 4 lands, Spark 4.2 ships vector search","text":"Python 3.15.0 beta 4 is out — the last planned beta before RC1 on August 4th — with 298 fixes and a JIT delivering 8-9% gains on x86-64 and 12-13% on AArch64. Apache Spark 4.2 dropped with native vector similarity search, Auto CDC, and Arrow-optimized UDFs on by default. TorchComms is PyTorch's new distributed backend, cutting process-group init from 265 seconds to 24 at 96,000 GPUs. On the security side, uv now supports malware checking against the OSV database, and a FastAPI migration off Lambda surfaced async bugs that had been hiding for years.","url":"https://daily.dev/posts/python-3-15-beta-4-lands-spark-4-2-ships-vector-search-e0vltytw3","datePublished":"2026-07-20T04:21:03.703Z","dateModified":"2026-09-13T21:00:27.788Z","author":{"@type":"Organization","name":"Python Digest","logo":"https://media.daily.dev/image/upload/s--_8Rk7XLS--/f_auto,q_auto/v1776326905/logos/python_digest","url":"https://daily.dev/sources/python_digest"},"interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":3},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"isPartOf":{"@type":"WebPage","url":"https://daily.dev/sources/python_digest","name":"Python Digest"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Python Digest","item":"https://daily.dev/sources/python_digest"},{"@type":"ListItem","position":3,"name":"Python 3.15 beta 4 lands, Spark 4.2 ships vector search"}]}
```

