Skip to content

Latest commit

 

History

History
71 lines (53 loc) · 2.78 KB

roadmap.md

File metadata and controls

71 lines (53 loc) · 2.78 KB

Project Roadmap

This document outlines the development direction, upcoming features, and long-term vision for this Python library.

!!! note

This roadmap is a living document. Priorities may shift based on community feedback,
critical bug fixes, and ecosystem changes (such as new Python releases).

🗺️ Current Focus: Modernization & Python 3.14 (v3.0.0)

Target: Q1-Q2 2027 | Status: Planning

Our immediate priority is ensuring full compatibility with the latest Python ecosystem and improving developer experience (DX).

  • Move to Python 3.14 as baseline version
  • Replace Google protobuf for Buf protobuf-py Finally, a good replacement for ugly duckling from Google appeared (https://protobufpy.com/). This is significant change

Why we want to move from Python 3.11

  • PEP 649 and PEP 749: Deferred evaluation of annotations (3.14) We want to get rid of from __future__ import annotations from our code.
  • Template string literals. We would like support these in logging and trace, and also in firebir-driver.
  • Better f-strings (3.12)
  • Richer typing idioms (all versions)
  • Leverage PEP 688 to improve our buffer classes (3.12).
  • Pathlib imporovements (3.12)
  • warning.deprecated decorator (3.13)
  • New compile flags (3.13)
  • is_protocol() (3.13)
  • Most of our code that depends on this library is going to actively leverage new Python features, especially those focused on speed and parallelism. So far we don't have any information that firebird-base is used outside Firebird ecosystem. In fact, most users use it as pure firebird-driver dependency. If we'll not move the baseline with our other projects, firebird-base will be the only one with different baseline.
  • Improved ctypes, which is important for the driver.
  • concurrent.interpreters (3.14). This is important for saturnin.
  • zstd support (3.14)
  • We have a feeling that __static_attributes__ will come in handy in future (3.13)
  • Better importlib.resources (3.12, 3.13). We don't use it yet, but now we consider them for other projects.
  • More precise monotonic() on Windows (3.13)

⏳ Long-Term Vision & Ideas

Target: Future / Backlog | Status: On Hold

High-level goals that we want to address but haven't scheduled for a specific release yet.

  • Speed optimizations: Explore speed bottlenecks, consider options for imporvements, including Rust using PyO3 for maximum performance.

🤝 How to Contribute to the Roadmap

We welcome input from the community! If you feel a feature is missing or priorities should be adjusted:

  1. Open a Feature Request in our Issue Tracker.
  2. Join the discussion on existing roadmap.
  3. Once a concept is agreed upon, it will be added to this document under the Planning section.

Last Updated: October 2026