skillfed

udatetime

Fast RFC3339 compliant date-time library

udatetime v0.0.17 91.4K downloads/30d#13,517 on PyPI241
Permissive license Apache 2.0 DORMANT released

What it is and what it does

udatetime is a C-accelerated library for parsing, formatting, and working with RFC3339-compliant date-time strings in Python. It wraps Python's standard datetime class but optimizes the hot path—string parsing and formatting—through a native C implementation. All datetime objects it creates are timezone-aware with fixed-offset timezones (no daylight savings time).

The library is designed as a drop-in replacement for code already using datetime: it exposes familiar methods like from_string, to_string, now, utcnow, fromtimestamp, and utcfromtimestamp. It supports both Python 2 and Python 3 via a C implementation, and PyPy via a pure-Python fallback. The trade-off is a high installation barrier—you must have a C compiler and Python development headers available at build time, and it only runs on POSIX systems.

Use it for:

  • Parse and serialize RFC3339 timestamps in high-throughput APIs or logging systems where datetime performance matters.
  • Replace datetime in time-sensitive applications that handle many timestamp conversions.
  • Work with fixed-offset timezones in systems that do not need DST handling and want guaranteed UTC or regional offset behavior.
  • Build services that emit or consume RFC3339 date-times, common in REST APIs and JSON payloads.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

udatetime provides fast RFC3339-compliant date-time parsing, formatting, and manipulation for Python, offering faster instantiation and serialization than the standard datetime library.

Yes, if you have a POSIX system with a C compiler and Python dev headers, and your code is performance-sensitive around datetime parsing or formatting. The permissive Apache 2.0 license and performance gains make it a solid choice for high-throughput services. However, the dormant maintenance status (last commit 2024-06-11) and high build friction mean you should verify it works on your target Python version before committing. Not recommended for Windows or for projects that cannot tolerate a build-time C dependency.

Install

udatetime on PyPI

pip

pip install udatetime

uv

uv add udatetime

poetry

poetry add udatetime

Installing udatetime

Before you install

High install friction: requires a C compiler and Python development headers (python-dev or python3-dev). The package is dormant—last commit was 2024-06-11, with no recent activity. No runtime dependencies, but the C extension build is a significant barrier on systems without a development toolchain.

License in practice

Apache 2.0 is permissive and imposes no restrictions on commercial or proprietary use. You may use, modify, and distribute udatetime freely provided you include a copy of the license and note any changes made.

Quickstart

import udatetime

# Parse RFC3339 string to datetime
dt = udatetime.from_string("2016-07-15T12:33:20.123000+02:00")

# Serialize datetime back to RFC3339 string
result = udatetime.to_string(dt)
print(result)  # '2016-07-15T12:33:20.123000+02:00'

Requires a C compiler and Python development headers (python-dev or python3-dev on Debian/Ubuntu, python-devel or python3-devel on RHEL/CentOS). POSIX-compliant systems only; Windows support is not available.

Verify before relying

  • Whether the package works reliably on modern Python versions (3.10+) despite classifiers only listing up to 3.6.
  • Current status of Windows support, given the description states only POSIX systems are supported.
  • Whether the C extension builds successfully on recent Python versions without modification.

Package facts

License Apache 2.0 (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance dormant — 1,463 days since the last release
Last repo commit
First released
Downloads 91,368/month — #13,517 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: udatetime-0.0.17-py2.7-linux-x86_64.egg; udatetime-0.0.17-py3.5-linux-x86_64.egg; udatetime-0.0.17-py3.9-linux-x86_64.egg; udatetime-0.0.17.tar.gz

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: MacOSOperating System :: POSIXProgramming Language :: CProgramming Language :: PythonProgramming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Tags

rfc3339 datetime parserfast date time parsingiso 8601 compliant datetimetimezone aware datetimedatetime serializationhigh performance date handlingutc datetime library
datetime-parsingperformance-criticalrfc3339

More Software Development packages