]>
git.ipfire.org Git - thirdparty/babel.git/log
Aarni Koskela [Sun, 1 Oct 2023 11:35:11 +0000 (14:35 +0300)]
Prepare for 2.13.0 release
Aarni Koskela [Sun, 1 Oct 2023 11:15:51 +0000 (14:15 +0300)]
Renovate CI & tools (#1028)
* Update ruff, run autofix
* CI: Update action versions
* CI: Unify workflow files
* CI: Test on Python 3.12 too
* CI: use Ubuntu 22.04 instead of 20.04
* CI: add publish step for version tags
Petr Viktorin [Sun, 1 Oct 2023 10:52:33 +0000 (12:52 +0200)]
Add f-string parsing for Python 3.12 (PEP 701) (#1027)
Since Python 3.12, f-strings are tokenized and parsed like the rest
of Python's grammar, using the new tokens FSTRING_START, FSTRING_MIDDLE
and FSTRING_END.
Make the babel message extractor concatenate these three if they're
adjacent to each other. If they're not, that means there are dynamic
substitutions, so the f-string is ignored.
Jean Abou-Samra [Sun, 1 Oct 2023 09:53:54 +0000 (11:53 +0200)]
Support 't' specifier in keywords (#1015)
* Support 't' specifier in keywords
* Document --keyword format
* Document parse_keywords output format and make logic more readable
Fixes #1014
Joe Portela [Thu, 27 Jul 2023 11:24:25 +0000 (07:24 -0400)]
Add flag to ignore POT-Creation-Date for updates (#999)
Ville Skyttä [Tue, 27 Jun 2023 20:08:06 +0000 (23:08 +0300)]
Use aware UTC datetimes internally (#1009)
Avoids deprecation warnings on Python 3.12.
Marc-Etienne Vargenau [Tue, 27 Jun 2023 20:04:16 +0000 (22:04 +0200)]
Use SPDX license identifier: BSD-3-Clause (#994)
Signed-off-by: Marc-Etienne Vargenau <marc-etienne.vargenau@nokia.com>
Aarni Koskela [Tue, 27 Jun 2023 19:59:36 +0000 (22:59 +0300)]
Merge pull request #1017 from python-babel/renovate
Renovate lint tools
Aarni Koskela [Tue, 27 Jun 2023 19:57:08 +0000 (22:57 +0300)]
Mark tz-dependent doctests +SKIP
Refs #998
Aarni Koskela [Tue, 27 Jun 2023 19:42:18 +0000 (22:42 +0300)]
Fix a couple of B018 errors
Aarni Koskela [Tue, 27 Jun 2023 19:33:39 +0000 (22:33 +0300)]
Add explicit stacklevel= parameters to warnings
Aarni Koskela [Tue, 27 Jun 2023 19:31:32 +0000 (22:31 +0300)]
Update ruff, apply autofix
Ville Skyttä [Sun, 11 Jun 2023 06:43:39 +0000 (09:43 +0300)]
Spelling and grammar fixes
Michał Górny [Tue, 9 May 2023 08:20:04 +0000 (10:20 +0200)]
Freeze format_time() tests to a specific date to fix test failures (#998)
Freeze the date when performing the tests for format_time() with
a timezone specified. Since the time object does not specify a date,
the formatter uses the format string specific to the current date.
As a result, if the current DST state is different than when the test
was last updated, it failed.
Aarni Koskela [Fri, 3 Mar 2023 16:51:58 +0000 (18:51 +0200)]
Merge pull request #986 from python-babel/improve-contributing-instructions
Improve contributing instructions
Aarni Koskela [Fri, 3 Mar 2023 14:26:30 +0000 (16:26 +0200)]
Improve CONTRIBUTING.md
Refs #985
Aarni Koskela [Fri, 3 Mar 2023 14:20:36 +0000 (16:20 +0200)]
Move dev dependencies to dev extra
Aarni Koskela [Fri, 3 Mar 2023 14:19:47 +0000 (16:19 +0200)]
makefile: don't import-cldr before tox; it'll clean it
Aarni Koskela [Fri, 3 Mar 2023 14:07:36 +0000 (16:07 +0200)]
Remove test-env makefile target (use tox instead)
Aarni Koskela [Thu, 2 Mar 2023 14:13:12 +0000 (16:13 +0200)]
Improve type annotation for `babel.support.Translations.load` (#983)
Fixes #982
Co-authored-by: Jonah Lawrence <jonah@freshidea.com>
Aarni Koskela [Thu, 2 Mar 2023 13:50:56 +0000 (15:50 +0200)]
babel.messages.catalog: deduplicate _to_fuzzy_match_key logic (#980)
Aarni Koskela [Wed, 1 Mar 2023 18:04:18 +0000 (20:04 +0200)]
Merge pull request #981 from python-babel/mypy-misc-fix
Misc. mypy-discovered fixes
Aarni Koskela [Wed, 1 Mar 2023 06:25:31 +0000 (08:25 +0200)]
Note that `Locale.parse()` does not accept `None`
Refs #977
Aarni Koskela [Wed, 1 Mar 2023 07:23:55 +0000 (09:23 +0200)]
babel.units: Fix some mypy-discovered issues
Aarni Koskela [Wed, 1 Mar 2023 07:18:44 +0000 (09:18 +0200)]
babel.numbers: Fix some mypy-discovered issues
Aarni Koskela [Wed, 1 Mar 2023 07:13:41 +0000 (09:13 +0200)]
babel.core: Fix some mypy-discovered issues
Aarni Koskela [Wed, 1 Mar 2023 07:07:23 +0000 (09:07 +0200)]
babel.messages.jslexer: Placate mypy
Aarni Koskela [Wed, 1 Mar 2023 06:35:28 +0000 (08:35 +0200)]
Add meta_zones global key
Aarni Koskela [Wed, 1 Mar 2023 06:27:42 +0000 (08:27 +0200)]
Use Python 3 syntax in test fixtures
Aarni Koskela [Tue, 28 Feb 2023 13:55:06 +0000 (15:55 +0200)]
Become 2.12.1
Aarni Koskela [Tue, 28 Feb 2023 13:55:39 +0000 (15:55 +0200)]
Update copyright year to 2023
Alex Waygood [Tue, 28 Feb 2023 13:49:59 +0000 (13:49 +0000)]
Include `py.typed` file in wheels (#975)
Aarni Koskela [Tue, 28 Feb 2023 07:17:25 +0000 (09:17 +0200)]
Become 2.12.0
Aarni Koskela [Tue, 28 Feb 2023 07:40:35 +0000 (09:40 +0200)]
Tox: also test with pytz installed (#974)
* Tox: also test with pytz installed
* Tox: return to tox-gh-actions (which now supports Tox 4)
Aarni Koskela [Mon, 20 Feb 2023 15:27:36 +0000 (17:27 +0200)]
Renovate CI tools a bit (#972)
* Update GitHub Actions versions
* Update pre-commit tools
Aarni Koskela [Mon, 20 Feb 2023 13:49:35 +0000 (15:49 +0200)]
Merge pull request #970 from jeanas/autojunk
Fix two issues with fuzzy matching
Jean Abou Samra [Sun, 12 Feb 2023 01:49:28 +0000 (02:49 +0100)]
Turn off difflib "autojunk" heuristic in fuzzy matching
difflib has a heuristic that used to make fuzzy matching unreliable for
>200char strings. See
https://github.com/python/cpython/issues/90825
Fixes #969
Jean Abou Samra [Sun, 12 Feb 2023 01:46:30 +0000 (02:46 +0100)]
In fuzzy matching, also .lower().strip() fuzzy candidates
This seems intended at easing fuzzy matching with trivial edits in the
msgstr (changing case and adding whitespace), but it was only done on
the new msgstr, not on the old mgstr candidates, so it was possible for
merging catalogs to miss messages.
Aarni Koskela [Tue, 7 Feb 2023 14:00:41 +0000 (16:00 +0200)]
Replace babel.localedata.locale_identifiers cache with LRU cache
Aarni Koskela [Tue, 7 Feb 2023 13:58:00 +0000 (15:58 +0200)]
Replace babel.dates._pattern_cache with an LRU cache
Fixes #962
Aarni Koskela [Tue, 7 Feb 2023 13:52:18 +0000 (15:52 +0200)]
Merge pull request #966 from DenverCoderOne/number-type-improvements
Numbers and core type fixes
Jonah Lawrence [Fri, 3 Feb 2023 15:42:23 +0000 (08:42 -0700)]
Type fixes from 961
Jonah Lawrence [Fri, 3 Feb 2023 15:35:09 +0000 (08:35 -0700)]
Numbers and core type fixes
Maciej Olko [Fri, 3 Feb 2023 09:34:35 +0000 (10:34 +0100)]
Add two new options in cmdline.rst docs (#963)
Added in #720 and #832.
martin f. krafft [Thu, 26 Jan 2023 17:46:06 +0000 (18:46 +0100)]
Keep @modifiers when parsing locales (#947)
Locale modifiers ("@variants") are described in the GNU gettext
documentation like this:
> The ‘@variant’ can denote any kind of characteristics that is not
> already implied by the language ll and the country CC. […] It can also
> denote a dialect of the language, …
Wherein Babel previously would discard these, this patch stores the
modifier information in the `Locale` objects, handling string
representation accordingly.
Resolves: #946
Signed-off-by: martin f. krafft <madduck@madduck.net>
Co-authored-by: Aarni Koskela <akx@iki.fi>
Aarni Koskela [Wed, 25 Jan 2023 20:08:33 +0000 (22:08 +0200)]
Modernize some string formatting
Aarni Koskela [Wed, 25 Jan 2023 19:51:37 +0000 (21:51 +0200)]
Apply some simplification fixes courtesy of Ruff
Aarni Koskela [Wed, 25 Jan 2023 19:46:40 +0000 (21:46 +0200)]
Finally remove get_next_timezone_transition (#958)
Aarni Koskela [Wed, 25 Jan 2023 19:44:22 +0000 (21:44 +0200)]
Fix unbound `exc` in babel.dates (#959)
See https://stackoverflow.com/a/
24271786 /51685
Aarni Koskela [Wed, 25 Jan 2023 19:43:16 +0000 (21:43 +0200)]
Use standard library UTC (#957)
Aarni Koskela [Wed, 25 Jan 2023 18:37:51 +0000 (20:37 +0200)]
Clean up babel.localtime (#952)
* Remove vestigial babel.localtime cache bits
* Give _FallbackLocalTimezone its own module
Jonah Lawrence [Wed, 25 Jan 2023 18:17:24 +0000 (11:17 -0700)]
Support for formatting NaN, Infinity (#955)
Aarni Koskela [Fri, 20 Jan 2023 16:53:47 +0000 (18:53 +0200)]
Remove redundant tests for babel.support (#954)
The doctests test the exact same things.
Jonah Lawrence [Fri, 20 Jan 2023 16:41:39 +0000 (09:41 -0700)]
Update test dependencies (tox v4) (#953)
Aarni Koskela [Fri, 20 Jan 2023 15:17:20 +0000 (17:17 +0200)]
Merge pull request #951 from python-babel/cldr-42
Upgrade to CLDR 42
Aarni Koskela [Fri, 20 Jan 2023 14:55:38 +0000 (16:55 +0200)]
Adjust tests for CLDR 42
The space changes around English seem to be on purpose, see:
* https://unicode-org.atlassian.net/browse/CLDR-14032
* https://github.com/unicode-org/cldr/commit/
a83026ab8c8fa6ed88f1047c4d0c6089f88b7e5d
Aarni Koskela [Fri, 20 Jan 2023 14:24:59 +0000 (16:24 +0200)]
Add test for #942
Aarni Koskela [Fri, 20 Jan 2023 14:24:51 +0000 (16:24 +0200)]
Import CLDR 42
Aarni Koskela [Thu, 19 Jan 2023 08:43:08 +0000 (10:43 +0200)]
Merge pull request #949 from python-babel/ruffify
Add ruff for linting
Aarni Koskela [Wed, 18 Jan 2023 18:30:25 +0000 (20:30 +0200)]
Enable E741 (ambiguous variable name) lint
Aarni Koskela [Wed, 18 Jan 2023 18:27:44 +0000 (20:27 +0200)]
Apply some small miscellaneous formatting fixes
Aarni Koskela [Wed, 18 Jan 2023 19:00:31 +0000 (21:00 +0200)]
Apply ruff UP (Pyupgrade) fixes
Aarni Koskela [Wed, 18 Jan 2023 18:59:35 +0000 (20:59 +0200)]
Apply ruff UP025 (unicode literal prefix) fix
Aarni Koskela [Wed, 18 Jan 2023 18:08:59 +0000 (20:08 +0200)]
Apply ruff SIM300 (de-yoda) fixes
Aarni Koskela [Wed, 18 Jan 2023 18:07:31 +0000 (20:07 +0200)]
Apply ruff I category fixes
Aarni Koskela [Wed, 18 Jan 2023 18:07:05 +0000 (20:07 +0200)]
Apply ruff F category fixes
Aarni Koskela [Wed, 18 Jan 2023 18:04:18 +0000 (20:04 +0200)]
Apply ruff E category fixes
Aarni Koskela [Wed, 18 Jan 2023 18:01:47 +0000 (20:01 +0200)]
Apply ruff C category fixes
Aarni Koskela [Wed, 18 Jan 2023 18:01:03 +0000 (20:01 +0200)]
Apply ruff B category fixes
Aarni Koskela [Wed, 18 Jan 2023 17:52:05 +0000 (19:52 +0200)]
Add baseline ruff configuration
Aarni Koskela [Wed, 11 Jan 2023 10:49:43 +0000 (12:49 +0200)]
Ensure `path` is correctly bound for extract callback (flake8 B023)
Aarni Koskela [Wed, 18 Jan 2023 19:07:37 +0000 (21:07 +0200)]
Renovate formatting in test_checkers and test_frontend (#950)
Aarni Koskela [Wed, 18 Jan 2023 17:47:43 +0000 (19:47 +0200)]
Minor cleanups (#948)
* Add __all__s to be cleaner about re-exports
* Move timezone_getter to conftest
* Apply spelling corrections suggested by codespell
Aarni Koskela [Wed, 18 Jan 2023 09:01:11 +0000 (11:01 +0200)]
Unify datetime imports (#945)
Co-authored-by: Jonah Lawrence <jonah@freshidea.com>
DS/Charlie [Wed, 11 Jan 2023 10:34:43 +0000 (11:34 +0100)]
Implement zoneinfo support and make pytz optional (#940)
Jonah Lawrence [Wed, 11 Jan 2023 08:54:11 +0000 (01:54 -0700)]
Add type annotations (#934)
Refs e.g. https://github.com/python/typeshed/pull/9455
Co-authored-by: Spencer Brown <spencerb21@live.com>
Co-authored-by: Aarni Koskela <akx@iki.fi>
Aarni Koskela [Wed, 11 Jan 2023 08:42:08 +0000 (10:42 +0200)]
Enable pre-commit (#943)
* Update pre-commit config syntax
* CI: run pre-commit
* CI: set up pip caching
lilinjie [Mon, 9 Jan 2023 17:54:42 +0000 (17:54 +0000)]
fix typo (#941)
Signed-off-by: lilinjie <lilinjie@uniontech.com>
Jonah Lawrence [Fri, 6 Jan 2023 20:21:58 +0000 (13:21 -0700)]
Fix compact singular formats and patterns with no numbers (#932)
Johannes Wilm [Fri, 6 Jan 2023 20:18:35 +0000 (21:18 +0100)]
Improved javascript template string expression extracting (#939)
Co-authored-by: Rik <gitaarik@posteo.net>
Co-authored-by: Aarni Koskela <akx@iki.fi>
Jonah Lawrence [Mon, 26 Dec 2022 22:22:08 +0000 (15:22 -0700)]
ci: Fix testing dependencies (#936)
Aarni Koskela [Wed, 23 Nov 2022 11:33:10 +0000 (13:33 +0200)]
Replace %/.format/concatenation with f-strings where feasible (#927)
Original conversion suggestions via flynt, edited by hand.
Jonah Lawrence [Wed, 23 Nov 2022 11:25:49 +0000 (04:25 -0700)]
Cast number to Decimal in _get_compact_format (#930)
* fix rounding modes by using Decimal instead of float
Aarni Koskela [Wed, 23 Nov 2022 11:22:01 +0000 (13:22 +0200)]
Drop support for EOL Python 3.6 (#919)
Jonah Lawrence [Fri, 4 Nov 2022 15:16:24 +0000 (09:16 -0600)]
feat: Support for short compact currency formats (#926)
Co-authored-by: Jun Omae (大前 潤) <42682+jun66j5@users.noreply.github.com>
Aarni Koskela [Wed, 2 Nov 2022 06:36:42 +0000 (08:36 +0200)]
Remove vestigial Python 2 `long` check (#925)
Jonah Lawrence [Wed, 2 Nov 2022 06:35:41 +0000 (00:35 -0600)]
feat: Add `Format.compact_decimal` utility (#921)
Aarni Koskela [Wed, 2 Nov 2022 06:25:47 +0000 (08:25 +0200)]
Update docs build configuration (#924)
* Use Python 3.11
* Use Sphinx 5 (and update extlinks configuration)
* Use Python 3 intersphinx mapping
* Install Babel from the build directory
Refs https://github.com/python-babel/babel/issues/920
Jonah Lawrence [Wed, 2 Nov 2022 02:53:12 +0000 (02:53 +0000)]
docs(changes): Fix broken issue links
Aarni Koskela [Tue, 1 Nov 2022 10:30:55 +0000 (12:30 +0200)]
Become 2.11.0
Aarni Koskela [Tue, 1 Nov 2022 10:16:04 +0000 (12:16 +0200)]
Quiesce pytest warnings (#916)
* Skip doctest of deprecated format_number
* Don't return from test_compatible_classes_in_global_and_localedata
* Renovate conftest (and require pytest 6+)
Aarni Koskela [Mon, 31 Oct 2022 09:56:57 +0000 (11:56 +0200)]
Setup: mark as compatible with Python 3.11
Aarni Koskela [Mon, 31 Oct 2022 09:56:30 +0000 (11:56 +0200)]
CI: test on Python 3.11
Aarni Koskela [Mon, 31 Oct 2022 11:05:00 +0000 (13:05 +0200)]
Use `ast` instead of `eval` for string extraction
This is safer (as we don't actually execute anything),
and allows us to parse f-strings too.
Closes #769 (supersedes it)
Refs #715 (doesn't add an error yet, but doesn't crash on f-strings)
Eric L [Sun, 20 Feb 2022 09:35:01 +0000 (10:35 +0100)]
Adapt parse_date to handle ISO dates in ASCII format
Jonah Lawrence [Mon, 31 Oct 2022 15:29:23 +0000 (09:29 -0600)]
Add support for compact decimal formats (#909)
Aarni Koskela [Mon, 31 Oct 2022 10:47:23 +0000 (12:47 +0200)]
Remove determining time zone via systemsetup on macOS
According to https://truesecdev.wordpress.com/2015/04/09/hidden-backdoor-api-to-root-privileges-in-apple-os-x/comment-page-1/
the `systemsetup` command has required superuser privileges since
macOS 10.8.5 (which has been EOL for over 6 years at the time of writing).
We shouldn't expect to use a codepath that requires a helper tool
that requires su in any regular use; IOW, _if_ a Babel user had ever
reached this path without having been superuser, it would have failed anyway
on any currently supported version of macOS.
Closes #895 (supersedes it).
Przemyslaw Wegrzyn [Thu, 12 May 2022 22:15:48 +0000 (00:15 +0200)]
Support for hex escapes in JavaScript string literals
Lukas Kahwe Smith [Mon, 31 Oct 2022 10:11:19 +0000 (11:11 +0100)]
align license with OSI template (#912)
Remove errant "All rights reserved." from license and update to use modern contributor wording.
Lukas Juhrich [Fri, 23 Sep 2022 14:49:49 +0000 (16:49 +0200)]
Remove superfluous `__unicode__` declarations
The `__unicode__` protocol is not used in python3,
and furthermore the `unicode()` builtin does not exist anymore.