./time/py-dateparser, Date parsing library designed to parse dates from HTML pages

[ Image CVSweb ] [ Image Homepage ] [ Image RSS ] [ Image Required by ]


Branch: CURRENT, Version: 1.4.2, Package name: py313-dateparser-1.4.2, Maintainer: pkgsrc-users

dateparser provides modules to easily parse localized dates in almost any
string formats commonly found on web pages.


Required to run:
[time/py-dateutil] [time/py-pytz] [time/py-tzlocal] [textproc/py-regex] [lang/python310]

Master sites:

Filesize: 330.433 KB

Version history: (Expand)


CVS history: (Expand)


   2026-08-07 10:30:42 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-dateparser: updated to 1.4.2

1.4.2 (2026-08-04)

New features:

- Add an ``IGNORE_SURROUNDING_TEXT`` setting that, when enabled, retries
  parsing after ignoring the leading and trailing words the language does
  not recognize, so a date wrapped in extra text such as "Published on
  16/04/2019" is parsed
- Add a ``strategy`` argument to ``search_dates()`` to choose the search
  strategy: the default ``"split"`` keeps the current behavior, while the
  new ``"ngram"`` strategy parses the longest sequences of tokens as dates
  for more predictable results on noisy text

Fixes:

- Do not read a two-digit number as a year once a later component has been
  found in year-first date orders, so the day in Japanese dates such as
  "4月20日" is no longer consumed as the year
- Parse ISO 8601 dates (those starting with a four-digit year) in month-day
  order even when an explicit day-first language such as ``it`` or ``fr`` is
  given, without needing to set ``PREFER_LOCALE_DATE_ORDER`` to ``False``
- Honor ``PREFER_DATES_FROM`` and ``RELATIVE_BASE`` when parsing with custom
  ``date_formats`` that use a two-digit year (``%y``)
- Honor the ``%j`` (day of year) directive in ``date_formats`` instead of
  overwriting the parsed month and day with the current date

Improvements:

- Update the bundled CLDR locale data to 44.1.0, adding many newly
  recognized date forms across locales and a standalone hour/duration unit
  (e.g. Catalan "2 hores"), while keeping previously supported forms
  parseable
- Add the Italian expressions "un ora fa" and "un'ora fa", \ 
and skip "alle"
  so phrases like "oggi alle 11:00" parse
- Expand Czech date translations with month locative/dative forms (e.g. "v
  lednu 2023"), the July abbreviation "črv", and relative \ 
expressions such
  as "za týden", "za měsíc" and "za rok"
- Specify the README header content as RST rather than raw HTML
   2026-06-23 11:04:28 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-dateparser: updated to 1.4.1

1.4.1 (2026-06-15)

Breaking changes:

- Remove fastText language detection support: the ``fasttext`` extra is
  dropped and ``detect_languages()`` now raises ``ImportError``. Migrate to
  the ``langdetect`` extra, which also unblocks ``numpy`` 2.x compatibility

Security fixes:

- Make digit quantifiers possessive in the relative-date regexes to prevent
  quadratic backtracking (ReDoS) on long digit runs

New features:

- Add the ``USE_GIVEN_LANGUAGE_ORDER`` setting to try ``languages`` and
  ``locales`` in the order given rather than by frequency

Fixes:

- Preserve explicit signs on individual components when parsing relative
  dates that combine decades with years, such as "-1 decade +2 years"
- Fall back to other provided languages in ``search_dates`` when the
  detected language yields no dates
- Parse relative date expressions with spaces between the sign and number,
  such as "now - 2 hours" and "now + 1 day"
- Use the parser-relative ``now`` for the current month when filling in
  incomplete dates so the month and day stay consistent
- Fix Norwegian Bokmål (``nb``) parsing of relative date expressions such
  as "3 måneder siden" and "om 2 måneder"
- Parse abbreviated English month expressions such as "1mon ago" and
  "3mons ago"
- Preserve surrounding whitespace when removing skip tokens during
  translation to avoid spurious double spaces

Improvements:

- Move project metadata and build configuration to ``pyproject.toml``
- Add alternative Korean date expressions for today, yesterday, tomorrow,
  and "N months ago/later"
- Expand Czech date translations with additional inflections, word numbers,
  decade and century expressions, and clock phrases like "čtvrt na tři"

- Replace internal ``OrderedDict`` usage with the built-in ``dict``
   2026-03-31 06:38:26 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-dateparser: updated to 1.4.0

1.4.0 (2026-03-26)

Security fixes:

- Remove import-time loading of timezone offset data from pickle to prevent
  unsafe deserialization from packaged data
- Replace ``eval()`` use when parsing ``no_word_spacing`` with strict boolean
  parsing to prevent code execution from locale metadata

New features:

- Add support for expressions like "N {interval} from now" in English
- Add support for the ``en-US`` locale

Fixes:

- Honor ``REQUIRE_PARTS`` for ambiguous month-number inputs by retrying with a
  year-biased ``DATE_ORDER``
- Fix parsing word-number relative phrases such as "two days later"
- Allow md5hash to work in FIPS environments

Improvements:

- Add Bosnian Cyrillic (ijekavica) date translations
- Add a new browser-based demo to the project documentation
- Update installation documentation to replace ``setup.py install`` guidance
- Add a project security policy
   2026-02-06 08:53:42 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-dateparser: updated to 1.3.0

1.3.0 (2026-02-04)

Dropped Python 3.9 support.

New features:

- ``search_dates()`` can now detect time spans from expressions like “past
  month”, “last week”, etc. For details, see the “Time Span Detection” \ 
section
  and the ``RETURN_TIME_SPAN``, ``DEFAULT_START_OF_WEEK`` and
  ``DEFAULT_DAYS_IN_MONTH`` settings in the documentation.

Fixes:

- Assume the current year if not specified
- Support expressions like “yesterday +1h”
- English: Support most 2-letter day-of-the-week names
- English: Support “in N weeks' time”
- Finnish: Support dates with “klo”
- Russian: Support compound ordinals

Cleanups and internal improvements:

- Fixed year expectation issues in tests.
   2025-07-02 14:47:11 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-dateparser: updated to 1.2.2

1.2.2 (2025-06-26)

Fixes:

- Handle the Russian preposition “с”
- Fix weekday search

Improvements:

- Add Python 3.14 support
- Cache timezone offsets to improve import time
   2025-04-14 10:49:21 by Adam Ciarcinski | Files touched by this commit (33) | Package updated
Log message:
Fix PLIST after py-setuptools update; bump depends and revision
   2025-02-05 17:22:31 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-dateparser: updated to 1.2.1

1.2.1 (2025-02-05)

Fixes:

- Fix PytzUsageWarning
- Fix date_parser with prefer_month_of_year wrong results
- Fix skipped day when UTC and tz are different days

Improvements:

- Avoid repeated loop over timezones
- Proofread README.rst
- Check for derived types for configuration
- Parse some abbreviated strings as relative dates
- Migrate from hijri-converter to hijridate
- Fixed ClusterFuzz build error by adding dateparser.data as a binary
- Fix an issue detected by OSSFuzz
- Support two-digit years in non-Gregorian calendars
- Refactored CI to run extras separately and test minimum versions of \ 
dependencies, replaced flake8 with ruff, fixed tests
- Set minimum versions for dependencies
- Limited ``numpy`` to 1.x when installing ``dateparser[fasttext]``
   2023-11-17 21:48:06 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-dateparser: updated to 1.2.0

1.2.0 (2023-11-17)
------------------

New features:

- New ``PREFER_MONTH_OF_YEAR`` setting

Fixes:

- Absolute years in Russian are no longer being treated as a number of years in
  the past

Cleanups and internal improvements:

- Removed the use of ``datetime.utcnow``, deprecated on Python 3.12
- Applied Black formatting to the code base
- Initial integration with OSSFuzz
- Extended test cases