## START: Set by rpmautospec
## (rpmautospec version 0.7.3)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 2;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec

# Note that this is https://pypi.org/project/python-ulid/; the canonical
# project name ulid, https://pypi.org/project/ulid/, belongs to a different and
# apparently defunct project. See
#   https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_library_naming
# and the issue filed upstream:
#   Possible confusion with the "ulid" package
#   https://github.com/mdomke/python-ulid/issues/13
Name:           python-python-ulid
Version:        3.0.0
Release:        %autorelease
Summary:        Universally unique lexicographically sortable identifier

# SPDX
License:        MIT
URL:            https://github.com/mdomke/python-ulid
Source0:        %{pypi_source python_ulid}
# Man pages hand-written for Fedora in groff_man(7) format based on --help
Source10:       ulid.1
Source11:       ulid-build.1
Source12:       ulid-show.1

BuildArch:      noarch

BuildRequires:  python3-devel
# Test dependencies are defined in [envs.default] in hatch.toml. They have
# tight version pins and include coverage tools; it is easier to maintain a
# manual list.
BuildRequires:  %{py3_dist freezegun}
BuildRequires:  %{py3_dist pytest}

%global common_description %{expand:
A ULID is a universally unique lexicographically sortable identifier. It is

  * 128-bit compatible with UUID
  * 1.21e+24 unique ULIDs per millisecond
  * Lexicographically sortable!
  * Canonically encoded as a 26 character string, as opposed to the 36
    character UUID
  * Uses Crockford's base32 for better efficiency and readability (5 bits per
    character)
  * Case insensitive
  * No special characters (URL safe)

For more information have a look at the original specification,
https://github.com/alizain/ulid#specification.}
# this is here to fix vim's syntax highlighting

%description %{common_description}


%package -n python3-python-ulid
Summary:        %{summary}

# https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_provides_for_importable_modules
%py_provides python3-ulid

%description -n python3-python-ulid %{common_description}


%pyproject_extras_subpkg -n python3-python-ulid pydantic


%prep
%autosetup -n python_ulid-%{version}


%generate_buildrequires
%pyproject_buildrequires -x pydantic


%build
%pyproject_wheel


%install
%pyproject_install
%pyproject_save_files -l ulid

install -t '%{buildroot}%{_mandir}/man1' -D -p -m 0644 \
    '%{SOURCE10}' '%{SOURCE11}' '%{SOURCE12}'


%check
%pytest -v


%files -n python3-python-ulid -f %{pyproject_files}
%doc CHANGELOG.rst
%doc README.rst
%{_bindir}/ulid
%{_mandir}/man1/ulid{,-*}.1*


%changelog
## START: Generated by rpmautospec
* Fri Oct 11 2024 Packit <hello@packit.dev> - 3.0.0-1
- Update to 3.0.0 upstream release
- Resolves: rhbz#2318115

* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.7.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild

* Sat Jun 29 2024 Python Maint <python-maint@redhat.com> - 2.7.0-3
- Rebuilt for Python 3.13

* Mon Jun 17 2024 Benjamin A. Beasley <code@musicinmybrain.net> - 2.7.0-1
- Update to 2.7.0 (close RHBZ#2292634)

* Sun May 26 2024 Packit <hello@packit.dev> - 2.6.0-1
- Update to 2.6.0 upstream release
- Resolves: rhbz#2283270

* Mon May 20 2024 Benjamin A. Beasley <code@musicinmybrain.net> - 2.5.0-2
- Drop conditional/comment for F38 since it is reaching EOL

* Fri Apr 26 2024 Benjamin A. Beasley <code@musicinmybrain.net> - 2.5.0-1
- Update to 2.5.0 (close RHBZ#2277310)

* Tue Apr 02 2024 Packit <hello@packit.dev> - 2.4.0.post0-1
- Update to 2.4.0.post0 upstream release
- Resolves: rhbz#2272698

* Fri Mar 22 2024 Packit <hello@packit.dev> - 2.3.0-1
- [packit] 2.3.0 upstream release
- Resolves rhbz#2270694

* Mon Feb 05 2024 Benjamin A. Beasley <code@musicinmybrain.net> - 2.2.0-1
- Initial package (close RHBZ#2261953)
## END: Generated by rpmautospec