dateformat
Parse and format dates quickly
What it is and what it does
dateformat wraps Python's datetime module to provide an alternative to strftime/strptime with a simpler, more readable format syntax. Instead of cryptic codes, you write YYYY-MM-DD. The package constructs a DateFormat object from a spec string, then uses its parse() and format() methods to convert between strings and datetime objects. It handles timezone offsets and named timezones (if pytz is available) more explicitly than the standard library.
The package was designed to address perceived gaps in existing solutions: better timezone handling, explicit format specification to avoid parsing ambiguity, and reusable format objects to avoid rebuilding parsers for each date. However, the project has been abandoned since 2019 and receives no maintenance.
Use it for:
- Parse dates from external APIs or data sources with a known, fixed format and timezone offset
- Format datetime objects for output to systems expecting a specific date string layout
- Handle dates with timezone information more explicitly than strftime allows
- Replace strftime/strptime calls where the format spec is more readable than % codes
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Parses strings into datetime objects and formats datetime objects into strings using explicit, human-readable format specifications instead of strftime codes.
No. The package is abandoned (last release April 2019, no commits since November 2022) and has not been updated for modern Python versions. Unless you are maintaining legacy code that already depends on it, use Python's built-in datetime module with strftime/strptime, or consider actively maintained alternatives. High install friction and zero security updates compound the maintenance risk.
Install
dateformat on PyPI
pip
pip install dateformatuv
uv add dateformatpoetry
poetry add dateformatInstalling dateformat
Before you install
High install friction with no runtime dependencies. Package is abandoned—last release April 2019, last commit November 2022, no activity since. Maintenance status makes this a legacy choice; consider only if existing code depends on it.
License in practice
MIT license is permissive; you may use, modify, and distribute this package freely with minimal restrictions.
Quickstart
from dateformat import DateFormat
date_format = DateFormat("YYYY-MM-DD hh:mm:ss.SSSS+HH:MM")
date = date_format.parse("2017-06-03 15:32:00.2364-02:00")
print(date_format.format(date))
No runtime dependencies, but package is unmaintained since 2019 and may have compatibility issues with modern Python versions.
Verify before relying
- Whether the package works reliably on Python versions released after 2019
- Performance benchmarks mentioned in description but truncated—actual speed claims cannot be verified
- Whether pytz integration for named timezones is fully functional
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | high — source build required |
| Runtime dependencies | none |
| Maintenance | abandoned — 2,689 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 138,779/month — #11,318 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: dateformat-0.9.7.tar.gz
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
iso8601Parses ISO 8601 date strings (e.g.…
permissive · top 5,000 on PyPI
parseParse strings using format-string-like patterns…
permissive · top 5,000 on PyPI
DateTimeProvides a DateTime data type for working with…
unclear · top 5,000 on PyPI
parsedatetimeParses human-readable date and time strings…
permissive · top 1,000 on PyPI
timesTimes converts between universal (UTC) time and…
permissive · top 15,000 on PyPI
DateTimeRangeDateTimeRange creates and manipulates time…
permissive · top 15,000 on PyPI
metomi-isodatetimeParses and manipulates ISO 8601 date-time…
copyleft · top 15,000 on PyPI
prefixdateParses date strings with partial precision…
permissive · top 5,000 on PyPI
dateparserParses dates from text in multiple languages…
permissive · top 1,000 on PyPI
ctparseParses natural language time expressions (like…
permissive · top 15,000 on PyPI