summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2023-01-20 16:11:01 +0100
committerRemi Collet <remi@php.net>2023-01-20 16:11:01 +0100
commit4246a423b71725f9a1a8ccfe684d37bb6e24c033 (patch)
tree9db7742928ea6ed1c59e41a0d3770b4c06c91cf9
dupl v2HEADmaster
-rw-r--r--.gitignore9
-rw-r--r--Makefile4
-rw-r--r--composer.json60
-rwxr-xr-xmakesrc.sh28
-rw-r--r--php-sabre-uri3.spec190
5 files changed, 291 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..01f0400
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,9 @@
+clog
+package-*.xml
+*.tgz
+*.tar.bz2
+*.tar.gz
+*.tar.xz
+*.tar.xz.asc
+*.src.rpm
+*/*rpm
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..13af741
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,4 @@
+SRCDIR := $(shell pwd)
+NAME := $(shell basename $(SRCDIR))
+include ../../../common/Makefile
+
diff --git a/composer.json b/composer.json
new file mode 100644
index 0000000..0e0cf2d
--- /dev/null
+++ b/composer.json
@@ -0,0 +1,60 @@
+{
+ "name": "sabre/uri",
+ "description": "Functions for making sense out of URIs.",
+ "keywords": [
+ "URI",
+ "URL",
+ "rfc3986"
+ ],
+ "homepage": "http://sabre.io/uri/",
+ "license": "BSD-3-Clause",
+ "require": {
+ "php": "^7.4 || ^8.0"
+ },
+ "authors": [
+ {
+ "name": "Evert Pot",
+ "email": "me@evertpot.com",
+ "homepage": "http://evertpot.com/",
+ "role": "Developer"
+ }
+ ],
+ "support": {
+ "forum": "https://groups.google.com/group/sabredav-discuss",
+ "source": "https://github.com/fruux/sabre-uri"
+ },
+ "autoload": {
+ "files" : [
+ "lib/functions.php"
+ ],
+ "psr-4" : {
+ "Sabre\\Uri\\" : "lib/"
+ }
+ },
+ "autoload-dev": {
+ "psr-4": {
+ "Sabre\\Uri\\": "tests/Uri"
+ }
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.9",
+ "phpstan/phpstan": "^1.8",
+ "phpunit/phpunit" : "^9.0"
+ },
+ "scripts": {
+ "phpstan": [
+ "phpstan analyse lib tests"
+ ],
+ "cs-fixer": [
+ "php-cs-fixer fix"
+ ],
+ "phpunit": [
+ "phpunit --configuration tests/phpunit.xml"
+ ],
+ "test": [
+ "composer phpstan",
+ "composer cs-fixer",
+ "composer phpunit"
+ ]
+ }
+}
diff --git a/makesrc.sh b/makesrc.sh
new file mode 100755
index 0000000..37cb6a2
--- /dev/null
+++ b/makesrc.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+NAME=$(basename $PWD)
+OWNER=$(sed -n '/^%global gh_owner/{s/.* //;p}' $NAME.spec)
+PROJECT=$(sed -n '/^%global gh_project/{s/.* //;p}' $NAME.spec)
+VERSION=$(sed -n '/^Version:/{s/.* //;p}' $NAME.spec)
+COMMIT=$(sed -n '/^%global gh_commit/{s/.* //;p}' $NAME.spec)
+SHORT=${COMMIT:0:7}
+
+echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION\n"
+
+echo "Cloning..."
+rm -rf $PROJECT-$COMMIT
+git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT
+
+echo "Getting commit..."
+pushd $PROJECT-$COMMIT
+git checkout $COMMIT
+cp composer.json ../composer.json
+popd
+
+echo "Archiving..."
+tar czf $NAME-$VERSION-$SHORT.tgz --exclude-vcs $PROJECT-$COMMIT
+
+echo "Cleaning..."
+rm -rf $PROJECT-$COMMIT
+
+echo "Done."
diff --git a/php-sabre-uri3.spec b/php-sabre-uri3.spec
new file mode 100644
index 0000000..465a025
--- /dev/null
+++ b/php-sabre-uri3.spec
@@ -0,0 +1,190 @@
+# remirepo/fedora spec file for php-sabre-uri2
+#
+# Copyright (c) 2016-2022 Remi Collet
+# License: CC-BY-SA
+# http://creativecommons.org/licenses/by-sa/4.0/
+#
+# Please, preserve the changelog entries
+#
+
+%bcond_without tests
+
+# Github
+%global gh_commit eceb4a1b8b680b45e215574222d6ca00be541970
+%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
+%global gh_owner sabre-io
+%global gh_project uri
+# Packagist
+%global pk_vendor sabre
+%global pk_project %{gh_project}
+# Namespace
+%global ns_vendor Sabre
+%global ns_project Uri
+%global major 2
+
+Name: php-%{pk_vendor}-%{pk_project}%{major}
+Summary: Functions for making sense out of URIs
+Version: 2.3.2
+Release: 1%{?dist}
+
+URL: https://github.com/%{gh_owner}/%{gh_project}
+License: BSD
+# Git snapshot with tests, because of .gitattributes
+Source0: %{name}-%{version}-%{gh_short}.tgz
+Source1: makesrc.sh
+
+BuildArch: noarch
+%if %{with tests}
+BuildRequires: php(language) >= 7.4
+# From composer.json, "require-dev": {
+# "friendsofphp/php-cs-fixer": "^3.9",
+# "phpstan/phpstan": "^1.8",
+# "phpunit/phpunit" : "^9.0"
+BuildRequires: php-pcre
+BuildRequires: phpunit9
+%global phpunit %{_bindir}/phpunit9
+%endif
+# Autoloader
+BuildRequires: php-fedora-autoloader-devel
+
+# From composer.json, "require" : {
+# "php": "^7.4 || ^8.0"
+Requires: php(language) > 7.4
+# From phpcompatinfo report for version 2.1.2
+Requires: php-pcre
+# Autoloader
+Requires: php-composer(fedora/autoloader)
+
+Provides: php-composer(%{pk_vendor}/%{pk_project}) = %{version}
+
+
+%description
+sabre/uri is a lightweight library that provides several functions for
+working with URIs, staying true to the rules of RFC3986.
+
+Partially inspired by Node.js URL library, and created to solve real
+problems in PHP applications. 100% unitested and many tests are based
+on examples from RFC3986.
+
+The library provides the following functions:
+* resolve to resolve relative urls.
+* normalize to aid in comparing urls.
+* parse, which works like PHP's parse_url.
+* build to do the exact opposite of parse.
+* split to easily get the 'dirname' and 'basename' of a URL without
+ all the problems those two functions have.
+
+Autoloader: %{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}/autoload.php
+
+
+%prep
+%setup -q -n %{gh_project}-%{gh_commit}
+
+phpab -t fedora -o lib/autoload.php lib
+cat << 'EOF' | tee -a lib/autoload.php
+
+// Functions
+if (!function_exists('Sabre\\Uri\\resolve')) {
+ require_once __DIR__ . '/functions.php';
+}
+EOF
+
+%build
+# nothing to build
+
+
+%install
+# Install as a PSR-0 library
+mkdir -p %{buildroot}%{_datadir}/php/%{ns_vendor}
+cp -pr lib %{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}
+
+
+%check
+: Check version
+php -r '
+require "%{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}/autoload.php";
+echo Sabre\Uri\Version::VERSION . "\n";
+exit (Sabre\Uri\Version::VERSION === "%{version}" ? 0 : 1);
+'
+
+%if %{with tests}
+: Run upstream test suite against installed library
+mkdir vendor
+ln -s %{buildroot}%{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}/autoload.php vendor/autoload.php
+
+cd tests
+for cmdarg in "php %{phpunit}" php74 php80 php81 php82; do
+ if which $cmdarg; then
+ set $cmdarg
+ $1 ${2:-%{_bindir}/phpunit9} --verbose || ret=1
+ fi
+done
+exit $ret
+%else
+: Skip upstream test suite
+%endif
+
+
+%files
+# remirepo:1
+%{!?_licensedir:%global license %%doc}
+%license LICENSE
+%doc *md
+%doc composer.json
+%dir %{_datadir}/php/%{ns_vendor}
+ %{_datadir}/php/%{ns_vendor}/%{ns_project}%{major}
+
+
+%changelog
+* Mon Sep 19 2022 Remi Collet <remi@remirepo.net> - 2.3.2-1
+- update to 2.3.2
+
+* Mon Sep 12 2022 Remi Collet <remi@remirepo.net> - 2.3.1-1
+- update to 2.3.1
+
+* Thu Aug 18 2022 Remi Collet <remi@remirepo.net> - 2.3.0-1
+- update to 2.3.0
+
+* Thu Aug 18 2022 Remi Collet <remi@remirepo.net> - 2.2.3-1
+- update to 2.2.3
+
+* Thu Nov 4 2021 Remi Collet <remi@remirepo.net> - 2.2.2-1
+- update to 2.2.2
+
+* Mon Oct 5 2020 Remi Collet <remi@remirepo.net> - 2.2.1-1
+- update to 2.2.1
+- switch to phpunit9
+
+* Sat Feb 1 2020 Remi Collet <remi@remirepo.net> - 2.2.0-1
+- update to 2.2.0
+- raise dependency on PHP 7.1
+- switch to phpunit8
+
+* Tue Sep 10 2019 Remi Collet <remi@remirepo.net> - 2.1.3-1
+- update to 2.1.3
+
+* Fri Jul 5 2019 Remi Collet <remi@remirepo.net> - 2.1.2-2
+- fix autoloader
+
+* Mon Jul 1 2019 Remi Collet <remi@remirepo.net> - 2.1.2-1
+- update to 2.1.2
+- rename to php-sabre-uri2
+- move to /usr/share/php/Sabre/Uri2
+- raise dependency on PHP 7
+- switch to classmap autoloader
+
+* Tue Jun 5 2018 Remi Collet <remi@remirepo.net> - 1.2.1-4
+- fix project URL
+
+* Tue Feb 21 2017 Remi Collet <remi@fedoraproject.org> - 1.2.1-1
+- update to 1.2.1
+
+* Sat Oct 29 2016 Remi Collet <remi@fedoraproject.org> - 1.1.1-2
+- switch from symfony/class-loader to fedora/autoloader
+
+* Thu Oct 27 2016 Remi Collet <remi@fedoraproject.org> - 1.1.1-1
+- update to 1.1.1
+
+* Fri Mar 11 2016 Remi Collet <remi@fedoraproject.org> - 1.1.0-1
+- Initial packaging
+