head	1.17;
access;
symbols
	pkgsrc-2026Q3:1.16.0.12
	pkgsrc-2026Q3-base:1.16
	pkgsrc-2026Q2:1.16.0.10
	pkgsrc-2026Q2-base:1.16
	pkgsrc-2026Q1:1.16.0.8
	pkgsrc-2026Q1-base:1.16
	pkgsrc-2025Q4:1.16.0.6
	pkgsrc-2025Q4-base:1.16
	pkgsrc-2025Q3:1.16.0.4
	pkgsrc-2025Q3-base:1.16
	pkgsrc-2025Q2:1.16.0.2
	pkgsrc-2025Q2-base:1.16
	pkgsrc-2025Q1:1.15.0.2
	pkgsrc-2025Q1-base:1.15
	pkgsrc-2024Q4:1.14.0.2
	pkgsrc-2024Q4-base:1.14
	pkgsrc-2024Q3:1.12.0.2
	pkgsrc-2024Q3-base:1.12
	pkgsrc-2024Q2:1.10.0.2
	pkgsrc-2024Q2-base:1.10
	pkgsrc-2024Q1:1.9.0.4
	pkgsrc-2024Q1-base:1.9
	pkgsrc-2023Q4:1.9.0.2
	pkgsrc-2023Q4-base:1.9
	pkgsrc-2023Q3:1.7.0.4
	pkgsrc-2023Q3-base:1.7
	pkgsrc-2023Q2:1.7.0.2
	pkgsrc-2023Q2-base:1.7
	pkgsrc-2023Q1:1.6.0.4
	pkgsrc-2023Q1-base:1.6
	pkgsrc-2022Q4:1.6.0.2
	pkgsrc-2022Q4-base:1.6
	pkgsrc-2022Q3:1.4.0.6
	pkgsrc-2022Q3-base:1.4
	pkgsrc-2022Q2:1.4.0.4
	pkgsrc-2022Q2-base:1.4
	pkgsrc-2022Q1:1.4.0.2
	pkgsrc-2022Q1-base:1.4
	pkgsrc-2021Q4:1.1.0.16
	pkgsrc-2021Q4-base:1.1
	pkgsrc-2021Q3:1.1.0.14
	pkgsrc-2021Q3-base:1.1
	pkgsrc-2021Q2:1.1.0.12
	pkgsrc-2021Q2-base:1.1
	pkgsrc-2021Q1:1.1.0.10
	pkgsrc-2021Q1-base:1.1
	pkgsrc-2020Q4:1.1.0.8
	pkgsrc-2020Q4-base:1.1
	pkgsrc-2020Q3:1.1.0.6
	pkgsrc-2020Q3-base:1.1
	pkgsrc-2020Q2:1.1.0.4
	pkgsrc-2020Q2-base:1.1
	pkgsrc-2020Q1:1.1.0.2
	pkgsrc-2020Q1-base:1.1;
locks; strict;
comment	@# @;


1.17
date	2026.10.26.05.29.27;	author adam;	state Exp;
branches;
next	1.16;
commitid	g9a9q9Yif2afMW0H;

1.16
date	2025.04.14.10.04.42;	author adam;	state Exp;
branches;
next	1.15;
commitid	AVrcJFCWtYxOi0RF;

1.15
date	2024.12.29.09.07.53;	author adam;	state Exp;
branches;
next	1.14;
commitid	OJnaBBcAifOvonDF;

1.14
date	2024.11.11.07.28.37;	author wiz;	state Exp;
branches;
next	1.13;
commitid	1fBDq3LwS98NncxF;

1.13
date	2024.10.14.06.08.40;	author wiz;	state Exp;
branches;
next	1.12;
commitid	sEjywglW9UuuQAtF;

1.12
date	2024.09.14.08.12.09;	author adam;	state Exp;
branches;
next	1.11;
commitid	sNwEoxyuIFsDuKpF;

1.11
date	2024.08.21.09.04.14;	author adam;	state Exp;
branches;
next	1.10;
commitid	QgnxIYme4UdjyFmF;

1.10
date	2024.05.15.12.44.07;	author adam;	state Exp;
branches;
next	1.9;
commitid	iNApUmiUhZKXU5aF;

1.9
date	2023.10.28.19.57.10;	author wiz;	state Exp;
branches;
next	1.8;
commitid	jP8MYROLWZ3yJqKE;

1.8
date	2023.10.04.21.17.43;	author adam;	state Exp;
branches;
next	1.7;
commitid	LlLPInrdLXkAXlHE;

1.7
date	2023.05.15.20.52.47;	author adam;	state Exp;
branches;
next	1.6;
commitid	DXinBdpaoqY2o6pE;

1.6
date	2022.11.14.15.08.31;	author wiz;	state Exp;
branches;
next	1.5;
commitid	MccqUWnvZ4TLkG1E;

1.5
date	2022.11.06.18.08.15;	author adam;	state Exp;
branches;
next	1.4;
commitid	uyUxbRRM18FfAF0E;

1.4
date	2022.01.25.09.05.11;	author wiz;	state Exp;
branches;
next	1.3;
commitid	NlouQl7xcNifJZpD;

1.3
date	2022.01.13.19.31.24;	author wiz;	state Exp;
branches;
next	1.2;
commitid	o03xQdIEki5GAvoD;

1.2
date	2022.01.04.20.54.08;	author wiz;	state Exp;
branches;
next	1.1;
commitid	CYyhdK9qtoffkmnD;

1.1
date	2020.03.12.07.12.05;	author wiz;	state Exp;
branches;
next	;
commitid	wgIQ1Oe0aB5p650C;


desc
@@


1.17
log
@py-inflect: updated to 7.6.0

v7.6.0

Features

- Added ``number_to_currency``, which writes an amount in words with the cents as a fraction of one hundred, as on checks and money orders (``number_to_currency(100020.56)`` is ``"one hundred thousand and twenty and 56/100"``).
- ``defnoun`` now accepts a keyword-only ``case`` parameter. Pass ``case="preserve"`` to retain the literal case of an uppercase noun's custom plural (such as ``defnoun("URL", "URLs", case="preserve")``) rather than normalizing it to the case of the input.

Bugfixes

- Pluralizing a multi-word phrase whose word count changes during inflection (such as when a leading article is dropped) no longer raises an ``IndexError``. ``postprocess`` now restores word-wise capitalization by pairing original and inflected words rather than by index.
- ``number_to_words`` now honors a custom ``comma`` separator across the word-spelling, grouped, and threshold code paths rather than only the default ``", "``.
- ``ordinal`` now handles negative numbers: it no longer raises a ``TypeError`` on negative integers and returns a suffix based on the last digit (e.g. ``ordinal(-1)`` is ``-1st``).
- ``singular_noun`` now recognizes words ending in "-ss" (such as "class", "boss", and "address") as already singular and returns ``False`` instead of stripping the trailing "s".
- ``number_to_words`` now groups digits from the right, so ``123`` with ``group=2`` reads as ``one, twenty-three`` instead of ``twelve, three``.
- Avoid a ``TypeError`` when singularizing long compounds whose leading noun is
  already singular.
- ``number_to_words`` now expands floats expressed in scientific notation (such as ``1e20`` or ``0.000001``) instead of mis-parsing the exponent.
- ``number_to_words`` no longer emits a stray space before a punctuation ``andword`` (such as ``number_to_words(541140, andword=",")``).
- In classical "names" mode, a capitalized multi-word phrase whose final noun is lowercase and ends in a consonant plus "y" now pluralizes that noun (e.g. "Old technology" -> "Old technologies") instead of treating the whole phrase as a proper name.
- Numeric count values equal to ``1`` (such as ``1.0``) are now treated as singular.
- ``Word`` arguments are now exposed as ``str`` to static type checkers (such as Pylance and mypy) while still enforcing the non-empty-string check at runtime.
- Common uncountable mass nouns (such as "equipment", "luggage", "baggage", "jewelry", "machinery", "cutlery", and "livestock") are now left unchanged by ``plural_noun`` instead of being incorrectly pluralized.
- ``number_to_words`` now raises the documented ``NumOutOfRangeError`` for numbers whose magnitude exceeds the largest known scale word, instead of leaking an uncaught ``IndexError``.
- ``present_participle`` now returns "being" for the verb "be" (and its forms "is", "are", "were") instead of the malformed "bing".
- ``num`` now raises ``BadNumValueError`` instead of leaking an ``OverflowError`` for non-finite counts such as ``float("inf")``.
- ``plural_noun`` no longer drops the trailing prepositional phrase when the head of a compound has an irregular plural (e.g. "brother-in-law" now pluralizes to "brothers-in-law").
- ``ordinal`` now raises ``BadNumValueError`` for malformed numeric input such as "11 11" instead of leaking a bare ``ValueError``.
- Handle signed numeric literals in inflect() interpolation arguments.
- Restore the persistent count when an interpolated function in ``inflect()`` raises an exception.
- ``compare`` and the related ``compare_nouns``/``compare_verbs``/``compare_adjs`` no longer leave the engine in classical mode as a side effect of the comparison.
- ``present_participle`` now inserts a ``k`` before ``-ing`` for verbs ending in a vowel followed by ``c`` (for example "panics" becomes "panicking").
@
text
@# $NetBSD: Makefile,v 1.16 2025/04/14 10:04:42 adam Exp $

DISTNAME=	inflect-7.6.0
PKGNAME=	${PYPKGPREFIX}-${DISTNAME}
CATEGORIES=	lang python
MASTER_SITES=	${MASTER_SITE_PYPI:=i/inflect/}

MAINTAINER=	pkgsrc-users@@NetBSD.org
HOMEPAGE=	https://github.com/jazzband/inflect
COMMENT=	Correctly generate plurals, ordinals, indefinite articles for English
LICENSE=	mit

TOOL_DEPENDS+=	${PYPKGPREFIX}-setuptools>=78:../../devel/py-setuptools
TOOL_DEPENDS+=	${PYPKGPREFIX}-setuptools_scm>=7.0.0:../../devel/py-setuptools_scm
DEPENDS+=	${PYPKGPREFIX}-jaraco.functools>=0:../../devel/py-jaraco.functools
DEPENDS+=	${PYPKGPREFIX}-more-itertools>=8.5.0:../../devel/py-more-itertools
DEPENDS+=	${PYPKGPREFIX}-typeguard>=4.0.1:../../devel/py-typeguard
TEST_DEPENDS+=	${PYPKGPREFIX}-pygments>=0:../../textproc/py-pygments
TEST_DEPENDS+=	${PYPKGPREFIX}-test-cov>=0:../../devel/py-test-cov

USE_LANGUAGES=	# none

.include "../../lang/python/wheel.mk"
.include "../../mk/bsd.pkg.mk"
@


1.16
log
@Fix PLIST after py-setuptools update; bump depends and revision
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.15 2024/12/29 09:07:53 adam Exp $
d3 1
a3 1
DISTNAME=	inflect-7.5.0
a4 1
PKGREVISION=	1
d15 1
d18 2
a19 2
TEST_DEPENDS+=	${PYPKGPREFIX}-pygments-[0-9]*:../../textproc/py-pygments
TEST_DEPENDS+=	${PYPKGPREFIX}-test-cov-[0-9]*:../../devel/py-test-cov
@


1.15
log
@py-inflect: updated to 7.5.0

v7.5.0

Features
- Updated `ast` classes for Python 3.14 compatibility.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.14 2024/11/11 07:28:37 wiz Exp $
d5 1
d14 1
a14 1
TOOL_DEPENDS+=	${PYPKGPREFIX}-setuptools>=61.2:../../devel/py-setuptools
@


1.14
log
@py-*: remove unused tool dependency

py-setuptools includes the py-wheel functionality nowadays
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.13 2024/10/14 06:08:40 wiz Exp $
d3 1
a3 1
DISTNAME=	inflect-7.4.0
@


1.13
log
@i*: clean up after python38 removal
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2024/09/14 08:12:09 adam Exp $
a14 1
TOOL_DEPENDS+=	${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
@


1.12
log
@py-inflect: updated to 7.4.0

v7.4.0

Features
- Handle a single apostrophe more gracefully.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.11 2024/08/21 09:04:14 adam Exp $
a22 5
.include "../../lang/python/pyversion.mk"
.if ${PYTHON_VERSION} < 309
DEPENDS+=	${PYPKGPREFIX}-typing-extensions-[0-9]*:../../devel/py-typing-extensions
.endif

@


1.11
log
@py-inflect: updated to 7.3.1

v7.3.1

Bugfixes

- Set minimum version of more-itertools to 8.5


v7.3.0

Features

- Restricted typing_extensions to Python 3.8.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.10 2024/05/15 12:44:07 adam Exp $
d3 1
a3 1
DISTNAME=	inflect-7.3.1
@


1.10
log
@py-inflect: updated to 7.2.1

v7.2.1

Bugfixes

- Refactored number_to_words toward reduced complexity.


v7.2.0

Features

- Replace pydantic with typeguard


v7.1.0

Features

- Now handle 'pair of x' in pl_sb_uninflected_complete
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2023/10/28 19:57:10 wiz Exp $
d3 1
a3 1
DISTNAME=	inflect-7.2.1
d13 1
d16 1
a16 1
DEPENDS+=	${PYPKGPREFIX}-more-itertools-[0-9]*:../../devel/py-more-itertools
a17 1
DEPENDS+=	${PYPKGPREFIX}-typing-extensions-[0-9]*:../../devel/py-typing-extensions
d23 4
a26 1
PYTHON_VERSIONS_INCOMPATIBLE=	27
@


1.9
log
@python/wheel.mk: simplify a lot, and switch to 'installer' for installation

This follows the recommended bootstrap method (flit_core, build, installer).

However, installer installs different files than pip, so update PLISTs
for all packages using wheel.mk and bump their PKGREVISIONs.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2023/10/04 21:17:43 adam Exp $
d3 1
a3 1
DISTNAME=	inflect-7.0.0
a4 1
PKGREVISION=	1
d15 2
a16 1
DEPENDS+=	${PYPKGPREFIX}-pydantic>=1.9.1:../../devel/py-pydantic
d18 1
a18 1
TEST_DEPENDS+=	${PYPKGPREFIX}-test>=6:../../devel/py-test
a19 1
TEST_DEPENDS+=	${PYPKGPREFIX}-pygments-[0-9]*:../../textproc/py-pygments
a24 3
do-test:
	cd ${WRKSRC} && ${SETENV} ${TEST_ENV} pytest-${PYVERSSUFFIX} tests

@


1.8
log
@py-inflect: updated to 7.0.0

v7.0.0

Features
- Refine type hint for ``singular_noun`` to indicate a literal return type for ``False``.

Deprecations and Removals
- Removed methods renamed in 0.2.0.


v6.2.0

Features
- Project now supports Pydantic 2 while retaining support for Pydantic 1.

Bugfixes
- Added validation of user-defined words and amended the type declarations to match, allowing for null values but not empty strings.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2023/05/15 20:52:47 adam Exp $
d5 1
@


1.7
log
@py-inflect: updated to 6.0.4

v6.0.4
* Internal cleanup.

v6.0.3
* A/an support now more correctly honors leading
  capitalized words and abbreviations.
* Improve support for ordinals for floats.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2022/11/14 15:08:31 wiz Exp $
d3 1
a3 1
DISTNAME=	inflect-6.0.4
d16 1
a18 1
TEST_DEPENDS+=	${PYPKGPREFIX}-test-flake8-[0-9]*:../../devel/py-test-flake8
@


1.6
log
@py-inflect: add missing tool dependency
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2022/11/06 18:08:15 adam Exp $
d3 1
a3 1
DISTNAME=	inflect-6.0.2
d26 1
a26 1
	cd ${WRKSRC} && ${SETENV} ${TEST_ENV} pytest-${PYVERSSUFFIX}
@


1.5
log
@py-inflect: updated to 6.0.2

v6.0.2
======
* Require pydantic 1.9.1 to avoid ``ValueError``.

v6.0.1
======
* Minor tweaks and packaging refresh.

v6.0.0
======
* ``compare`` methods now validate their inputs
  and will raise a more meaningful exception if an
  empty string or None is passed. This expectation is now
  documented.

* Many public methods now perform validation on arguments.
  An empty string is no longer allowed for words or text.
  Callers are expected to pass non-empty text or trap
  the validation errors that are raised. The exceptions
  raised are ``pydantic.error_wrappers.ValidationError``,
  which are currently a subclass of ``ValueError``, but since
  that
  `may change <https://pydantic-docs.helpmanual.io/usage/validation_decorator/#validation-exception>`_,
  tests check for a generic ``Exception``.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2022/01/25 09:05:11 wiz Exp $
d13 2
a14 1
BUILD_DEPENDS+=	${PYPKGPREFIX}-setuptools_scm>=7.0.0:../../devel/py-setuptools_scm
@


1.4
log
@*: use versioned_dependencies.mk for py-importlib-metadata
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2022/01/13 19:31:24 wiz Exp $
d3 1
a3 1
DISTNAME=	inflect-4.1.0
a4 1
PKGREVISION=	1
d13 6
a18 1
PYTHON_VERSIONED_DEPENDENCIES+=	setuptools_scm:build
d20 1
a20 1
.include "../../lang/python/pyversion.mk"
d22 1
a22 3
.if ${_PYTHON_VERSION} < 38
PYTHON_VERSIONED_DEPENDENCIES+=	importlib-metadata
.endif
d24 2
a25 1
USE_LANGUAGES=	# none
d27 1
a27 2
.include "../../lang/python/egg.mk"
.include "../../lang/python/versioned_dependencies.mk"
@


1.3
log
@*: setuptools_scm: switch to versioned_dependencies
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2022/01/04 20:54:08 wiz Exp $
d14 1
a14 1
PYTHON_VERSIONED_DEPENDENCIES=	setuptools_scm:build
d19 1
a19 1
DEPENDS+=	${PYPKGPREFIX}-importlib-metadata-[0-9]*:../../devel/py-importlib-metadata
@


1.2
log
@*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2020/03/12 07:12:05 wiz Exp $
d14 1
a14 1
BUILD_DEPENDS+=	${PYPKGPREFIX}-setuptools_scm>=3.4.1:../../devel/py-setuptools_scm
d25 1
@


1.1
log
@lang/py-inflect: import py-inflect-4.1.0

This python module provides plural inflections, singular noun
inflections, "a"/"a"” selection for English words, and manipulation
of numbers as words.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2019/11/15 22:51:15 tnn Exp $
d5 1
@

