Blame php-psr-http-server-middleware.spec

e0c26e7
# remirepo/fedora spec file for php-psr-http-server-middleware
e0c26e7
#
5471698
# Copyright (c) 2020-2023 Remi Collet
5471698
# License: CC-BY-SA-4.0
e0c26e7
# http://creativecommons.org/licenses/by-sa/4.0/
e0c26e7
#
e0c26e7
# Please, preserve the changelog entries
e0c26e7
#
e0c26e7
e0c26e7
# Github
5471698
%global gh_commit    c1481f747daaa6a0782775cd6a8c26a1bf4a3829
e0c26e7
%global gh_short     %(c=%{gh_commit}; echo ${c:0:7})
e0c26e7
%global gh_owner     php-fig
e0c26e7
%global gh_project   http-server-middleware
e0c26e7
# Packagist
e0c26e7
%global pk_vendor    psr
e0c26e7
%global pk_project   %{gh_project}
e0c26e7
# Namespace
e0c26e7
%global ns_vendor    Psr
e0c26e7
%global ns_project   Http
e0c26e7
%global ns_sub       Server
e0c26e7
e0c26e7
Name:           php-%{pk_vendor}-%{pk_project}
5471698
Version:        1.0.2
42a38d2
Release:        4%{?dist}
e0c26e7
Summary:        Common interface for HTTP server-side middleware
e0c26e7
e0c26e7
License:        MIT
e0c26e7
URL:            https://github.com/%{gh_owner}/%{gh_project}
e0c26e7
Source0:        %{url}/archive/%{gh_commit}/%{name}-%{version}-%{gh_commit}.tar.gz
e0c26e7
e0c26e7
BuildArch:      noarch
e0c26e7
# For tests
e0c26e7
BuildRequires:  php(language) >= 7.0
e0c26e7
BuildRequires:  php-cli
5471698
BuildRequires: (php-composer(%{pk_vendor}/http-message)        >= 1.0  with php-composer(%{pk_vendor}/http-message)        < 3)
e0c26e7
BuildRequires: (php-composer(%{pk_vendor}/http-server-handler) >= 1.0  with php-composer(%{pk_vendor}/http-server-handler) < 2)
e0c26e7
# Autoloader
e0c26e7
BuildRequires:  php-fedora-autoloader-devel
e0c26e7
e0c26e7
# From composer.json,    "require": {
e0c26e7
#        "php": ">=7.0",
e0c26e7
#        "psr/http-message": "^1.0",
5471698
#        "psr/http-server-handler": "^1.0 || ^2.0"
e0c26e7
Requires:       php(language) >= 7.0
5471698
Requires:      (php-composer(%{pk_vendor}/http-message)        >= 1.0  with php-composer(%{pk_vendor}/http-message)        < 3)
e0c26e7
Requires:      (php-composer(%{pk_vendor}/http-server-handler) >= 1.0  with php-composer(%{pk_vendor}/http-server-handler) < 2)
e0c26e7
# phpcompatinfo (computed from version 1.0.1)
e0c26e7
#     only core
e0c26e7
# Autoloader
e0c26e7
Requires:       php-composer(fedora/autoloader)
e0c26e7
e0c26e7
# Composer
e0c26e7
Provides:       php-composer(%{pk_vendor}/%{pk_project}) = %{version}
e0c26e7
e0c26e7
e0c26e7
%description
e0c26e7
This repository holds the MiddlewareInterface related to PSR-15
e0c26e7
(HTTP Server Request Handlers).
e0c26e7
e0c26e7
Note that this is not a Middleware implementation of its own.
e0c26e7
It is merely the interface that describe a Middleware.
e0c26e7
e0c26e7
Please refer to the specification for a description:
e0c26e7
https://www.php-fig.org/psr/psr-15/
e0c26e7
e0c26e7
e0c26e7
Autoloader: %{_datadir}/php/%{ns_vendor}/%{ns_project}/%{ns_sub}/middleware-autoload.php
e0c26e7
e0c26e7
e0c26e7
%prep
e0c26e7
%setup -qn %{gh_project}-%{gh_commit}
e0c26e7
e0c26e7
e0c26e7
%build
e0c26e7
: Generate autoloader
e0c26e7
%{_bindir}/phpab --template fedora --output src/middleware-autoload.php src
e0c26e7
cat << 'EOF' | tee -a src/middleware-autoload.php
e0c26e7
\Fedora\Autoloader\Dependencies::required([
5471698
    [
5471698
        '%{_datadir}/php/Psr/Http/Message2/autoload.php',
5471698
        '%{_datadir}/php/Psr/Http/Message/autoload.php',
5471698
    ],
e0c26e7
    '%{_datadir}/php/Psr/Http/Server/autoload.php',
e0c26e7
]);
e0c26e7
EOF
e0c26e7
e0c26e7
e0c26e7
%install
e0c26e7
mkdir -p   %{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}
e0c26e7
cp -rp src %{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}/%{ns_sub}
e0c26e7
e0c26e7
e0c26e7
%check
e0c26e7
: Test autoloader
e0c26e7
php -nr '
e0c26e7
require "%{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}/%{ns_sub}/middleware-autoload.php";
e0c26e7
exit (interface_exists("%{ns_vendor}\\%{ns_project}\\%{ns_sub}\\MiddlewareInterface") ? 0 : 1);
e0c26e7
'
e0c26e7
e0c26e7
e0c26e7
%files
e0c26e7
%license LICENSE
e0c26e7
%doc *.md
e0c26e7
%doc composer.json
e0c26e7
%{_datadir}/php/%{ns_vendor}/%{ns_project}/%{ns_sub}/*
e0c26e7
e0c26e7
e0c26e7
%changelog
42a38d2
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-4
42a38d2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
42a38d2
16f728f
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-3
16f728f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
16f728f
2123197
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-2
2123197
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
2123197
5471698
* Tue Apr 11 2023 Remi Collet <remi@remirepo.net> - 1.0.2-1
5471698
- update to 1.0.2
5471698
- allow psr/http-message 2.0
5471698
fbdc29b
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-8
fbdc29b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
fbdc29b
86f1ba5
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-7
86f1ba5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
86f1ba5
3278d7b
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-6
3278d7b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
3278d7b
d663720
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-5
d663720
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
d663720
689d439
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-4
689d439
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
689d439
08ada10
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-3
08ada10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
08ada10
b25f192
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-2
b25f192
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
b25f192
e0c26e7
* Thu Jan  2 2020 Remi Collet <remi@remirepo.net> - 1.0.1-1
e0c26e7
- Initial package, version 1.0.1