<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/one-namespace-to-namespace-them-all-python-language-summit-2026--zl2wui3x5" -->

---
title: One namespace to namespace them all (Python Language...
description: At the 2026 Python Language Summit, Steering Council member Pablo Galindo Salgado proposed introducing a top-level `std` namespace for the standard library,...
canonical: https://daily.dev/posts/one-namespace-to-namespace-them-all-python-language-summit-2026--zl2wui3x5
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: One namespace to namespace them all (Python Language Summit 2026) | daily.dev
og:description: At the 2026 Python Language Summit, Steering Council member Pablo Galindo Salgado proposed introducing a top-level `std` namespace for the standard library,...
og:url: https://daily.dev/posts/one-namespace-to-namespace-them-all-python-language-summit-2026--zl2wui3x5
og:image: https://api.daily.dev/og/posts/zL2Wui3X5.png
og:image:alt: One namespace to namespace them all (Python Language Summit 2026)
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.

# One namespace to namespace them all (Python Language Summit 2026)

**[Python Insider](https://daily.dev/sources/python)** · 7 min read · 6 upvotes · 0 comments

## Summary

At the 2026 Python Language Summit, Steering Council member Pablo Galindo Salgado proposed introducing a top-level `std` namespace for the standard library, letting users write `import std.json` to guarantee they get the real stdlib module rather than a locally shadowed file. The flat namespace currently causes confusing AttributeErrors when a user's own file (like `random.py`) shadows a stdlib module, and also forces core developers into awkward names like `tomllib` or `zoneinfo` to avoid PyPI collisions. Existing `import json` calls would keep working indefinitely. The proposal could also enable 'unbundling' the standard library so modules ship and version independently via PyPI, though Ruby's experience gemifying its stdlib surfaced real trade-offs (long deprecation cycles, an unpatched CVE in the uri gem). Attendees discussed alternatives like restricting the change to `from std import x` syntax and a possible new keyword, with general enthusiasm but no final decision.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.python.org/2026/09/language-summit-2026-namespaces>

## Questions this post answers

### why does my random.py file break the standard library random module in Python

Python has a flat module namespace with no distinction between standard library and third-party or project modules, so a file named random.py, json.py, or math.py in your working directory takes precedence over the standard library module of the same name in sys.path. This causes confusing AttributeError exceptions like 'module random has no attribute randint' since the wrong file gets imported. Running Python with the -P option (available since Python 3.11) avoids prepending the working directory to sys.path and prevents this shadowing.

_Developers debugging mysterious stdlib import errors can follow this kind of Python internals discussion on daily.dev._

### what is the proposed std namespace for the Python standard library

It is a proposed top-level namespace, suggested as `std`, that would let developers write `import std.json` or `from std import json` to guarantee they are importing the real standard library module rather than a shadowed local file. Existing bare imports like `import json` would continue working indefinitely, and new modules could eventually be introduced exclusively under the `std` namespace to encourage adoption.

_Python developers weighing future language changes can track proposals like this one on daily.dev._

### what problems did Ruby have after gemifying its standard library

Ruby's standard library was split into separately distributed gems, but this caused long deprecation periods where require took three release cycles to fully migrate, warnings appeared from transitive dependencies, and a CVE in the uri gem went unpatched because that gem wasn't listed in the project's Gemfile. This experience was cited as a cautionary trade-off when Python discussed unbundling its own standard library.

_Teams evaluating whether to unbundle a language's standard library can compare real-world outcomes like this on daily.dev._

## Similar posts on daily.dev

- [Shadowing the Standard Library](https://daily.dev/posts/shadowing-the-standard-library-h4ru7robk) · Andrew Nesbitt · 1 upvotes · 0 comments
- [Better Batteries](https://daily.dev/posts/better-batteries-dodp9yzzv) · matklad · 6 upvotes · 0 comments
- [What’s up Python? \_\_json\_\_, \_\_export\_\_ and Astral stuff](https://daily.dev/posts/what-s-up-python-json-export-and-astral-stuff-icawfywdn) · Bite Code · 11 upvotes · 0 comments
- [The C\+\+ Standard Library Has Been Walking Itself Back for Fifteen Years, and the Receipts Are Public](https://daily.dev/posts/the-c-standard-library-has-been-walking-itself-back-for-fifteen-years-and-the-receipts-are-public-tdkysrrko) · Lobsters · 6 upvotes · 1 comments
- [Lazy Imports Land in Python and Other Python News for December 2025 – Real Python](https://daily.dev/posts/lazy-imports-land-in-python-and-other-python-news-for-december-2025-real-python-0g2xjxqhj) · Real Python · 6 upvotes · 0 comments

---

Tags: [#python](https://daily.dev/tags/python)

[View this post on daily.dev](https://daily.dev/posts/one-namespace-to-namespace-them-all-python-language-summit-2026--zl2wui3x5)

```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":"TechArticle","headline":"One namespace to namespace them all (Python Language Summit 2026)","url":"https://daily.dev/posts/one-namespace-to-namespace-them-all-python-language-summit-2026--zl2wui3x5","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/one-namespace-to-namespace-them-all-python-language-summit-2026--zl2wui3x5"},"datePublished":"2026-09-30T12:34:09.022Z","dateModified":"2026-09-30T12:34:31.910Z","description":"At the 2026 Python Language Summit, Steering Council member Pablo Galindo Salgado proposed introducing a top-level `std` namespace for the standard library,...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/98ce91ea6ee3eb75d9135e9dae04b6ce?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/98ce91ea6ee3eb75d9135e9dae04b6ce?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Python Insider","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Python Insider","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/124b62e20f2f41c49bc701276f871a11","url":"https://daily.dev/sources/python"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/one-namespace-to-namespace-them-all-python-language-summit-2026--zl2wui3x5","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":6},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"python","timeRequired":"PT7M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Python Insider","item":"https://daily.dev/sources/python"},{"@type":"ListItem","position":3,"name":"One namespace to namespace them all (Python Language Summit 2026)"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/one-namespace-to-namespace-them-all-python-language-summit-2026--zl2wui3x5#faq","mainEntity":[{"@type":"Question","name":"why does my random.py file break the standard library random module in Python","acceptedAnswer":{"@type":"Answer","text":"Python has a flat module namespace with no distinction between standard library and third-party or project modules, so a file named random.py, json.py, or math.py in your working directory takes precedence over the standard library module of the same name in sys.path. This causes confusing AttributeError exceptions like 'module random has no attribute randint' since the wrong file gets imported. Running Python with the -P option (available since Python 3.11) avoids prepending the working directory to sys.path and prevents this shadowing. Developers debugging mysterious stdlib import errors can follow this kind of Python internals discussion on daily.dev."}},{"@type":"Question","name":"what is the proposed std namespace for the Python standard library","acceptedAnswer":{"@type":"Answer","text":"It is a proposed top-level namespace, suggested as `std`, that would let developers write `import std.json` or `from std import json` to guarantee they are importing the real standard library module rather than a shadowed local file. Existing bare imports like `import json` would continue working indefinitely, and new modules could eventually be introduced exclusively under the `std` namespace to encourage adoption. Python developers weighing future language changes can track proposals like this one on daily.dev."}},{"@type":"Question","name":"what problems did Ruby have after gemifying its standard library","acceptedAnswer":{"@type":"Answer","text":"Ruby's standard library was split into separately distributed gems, but this caused long deprecation periods where require took three release cycles to fully migrate, warnings appeared from transitive dependencies, and a CVE in the uri gem went unpatched because that gem wasn't listed in the project's Gemfile. This experience was cited as a cautionary trade-off when Python discussed unbundling its own standard library. Teams evaluating whether to unbundle a language's standard library can compare real-world outcomes like this on daily.dev."}}]}
```

