summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore9
-rw-r--r--Makefile4
-rw-r--r--composer.json56
l---------makesrc.sh1
-rwxr-xr-xphp-webmozart-assert2-get-source.sh73
-rw-r--r--php-webmozart-assert2.spec198
6 files changed, 341 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..91b0fd5
--- /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..dcaf97a
--- /dev/null
+++ b/composer.json
@@ -0,0 +1,56 @@
+{
+ "name": "webmozart/assert",
+ "description": "Assertions to validate method input/output with nice error messages.",
+ "license": "MIT",
+ "keywords": [
+ "assert",
+ "check",
+ "validate"
+ ],
+ "authors": [
+ {
+ "name": "Bernhard Schussek",
+ "email": "bschussek@gmail.com"
+ }
+ ],
+ "require": {
+ "php": "^7.2 || ^8.0",
+ "ext-ctype": "*",
+ "ext-date": "*",
+ "ext-filter": "*"
+ },
+ "suggest": {
+ "ext-intl": "",
+ "ext-simplexml": "",
+ "ext-spl": ""
+ },
+ "autoload": {
+ "psr-4": {
+ "Webmozart\\Assert\\": "src/"
+ }
+ },
+ "autoload-dev": {
+ "psr-4": {
+ "Webmozart\\Assert\\Bin\\": "bin/src",
+ "Webmozart\\Assert\\Tests\\": "tests/"
+ }
+ },
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.10-dev"
+ }
+ },
+ "scripts": {
+ "install-tools": [
+ "composer --working-dir=tools/php-cs-fixer install",
+ "composer --working-dir=tools/phpunit install",
+ "composer --working-dir=tools/psalm install",
+ "composer --working-dir=tools/roave-bc-check install"
+ ],
+ "bc-check": "./tools/roave-bc-check/vendor/bin/roave-backward-compatibility-check",
+ "cs-check" : "./tools/php-cs-fixer/vendor/bin/php-cs-fixer check",
+ "cs-fix": "./tools/php-cs-fixer/vendor/bin/php-cs-fixer fix",
+ "static-analysis": "./tools/psalm/vendor/bin/psalm --threads=4 --root=$(pwd)",
+ "test": "./tools/phpunit/vendor/bin/phpunit"
+ }
+}
diff --git a/makesrc.sh b/makesrc.sh
new file mode 120000
index 0000000..bd21789
--- /dev/null
+++ b/makesrc.sh
@@ -0,0 +1 @@
+php-webmozart-assert2-get-source.sh \ No newline at end of file
diff --git a/php-webmozart-assert2-get-source.sh b/php-webmozart-assert2-get-source.sh
new file mode 100755
index 0000000..b2ac62b
--- /dev/null
+++ b/php-webmozart-assert2-get-source.sh
@@ -0,0 +1,73 @@
+#/bin/sh
+
+GIT=`which git`
+RPM=`which rpm`
+
+if [ -z "$GIT" ]
+then
+ echo "ERROR: 'git' command not found" 1>&2
+ exit 1
+elif [ -z "$RPM" ]
+then
+ echo "ERROR: 'rpm' command not found" 1>&2
+ exit 1
+fi
+
+function print {
+ echo -e "\e[0;33m>>>>> ${1}\e[0m"
+}
+
+if [ -x "$1" ]
+then
+ SPEC=$1
+else
+ SPEC=`ls *.spec | head -1`
+fi
+
+SPEC_DIR=`pwd`
+
+print "SPEC_DIR = $SPEC_DIR"
+
+NAME=`echo $SPEC | sed 's#\.spec##'`
+VERSION=`egrep '%global\s*github_version' $SPEC | awk '{print $3}'`
+
+print "SPEC = $SPEC"
+print "NAME = $NAME"
+
+GIT_OWNER=`egrep '%global\s*github_owner' $SPEC | awk '{print $3}'`
+GIT_NAME=`egrep '%global\s*github_name' $SPEC | awk '{print $3}'`
+GIT_COMMIT=`egrep '%global\s*github_commit' $SPEC | awk '{print $3}'`
+GIT_REPO=https://github.com/${GIT_OWNER}/${GIT_NAME}
+GIT_DIR=`echo $GIT_REPO | sed 's#.*/##'`
+
+print "GIT_OWNER = $GIT_OWNER"
+print "GIT_NAME = $GIT_NAME"
+print "GIT_COMMIT = $GIT_COMMIT"
+print "GIT_REPO = $GIT_REPO"
+print "GIT_DIR = $GIT_DIR"
+
+TEMP_DIR=$(mktemp --dir)
+
+pushd $TEMP_DIR
+ print "Cloning git repo..."
+ $GIT clone $GIT_REPO
+
+ pushd $GIT_DIR
+ print "Checking out commit..."
+ $GIT checkout $GIT_COMMIT
+ popd
+
+ TAR_DIR=${GIT_NAME}-${GIT_COMMIT}
+ print "TAR_DIR = $TAR_DIR"
+
+ mv $GIT_DIR $TAR_DIR
+
+ TAR_FILE=${SPEC_DIR}/${NAME}-${VERSION}-${GIT_COMMIT}.tar.gz
+ print "TAR_FILE = $TAR_FILE"
+
+ [ -e $TAR_FILE ] && rm -f $TAR_FILE
+ tar --exclude-vcs -czf $TAR_FILE $TAR_DIR
+ chmod 0644 $TAR_FILE
+popd
+
+rm -rf $TEMP_DIR
diff --git a/php-webmozart-assert2.spec b/php-webmozart-assert2.spec
new file mode 100644
index 0000000..f0abd52
--- /dev/null
+++ b/php-webmozart-assert2.spec
@@ -0,0 +1,198 @@
+# remirepo spec file for php-webmozart-assert, from
+#
+# Fedora spec file for php-webmozart-assert
+#
+# Copyright (c) 2016-2025 Shawn Iwinski <shawn@iwin.ski>
+#
+# License: MIT
+# http://opensource.org/licenses/MIT
+#
+# Please preserve changelog entries
+#
+
+# enable bootstrap when need to provide a new autoloader
+%global bootstrap 0
+%global github_owner webmozart
+%global github_name assert
+%global github_version 1.12.1
+%global github_commit 9be6926d8b485f55b9229203f962b51ed377ba68
+
+%global composer_vendor webmozart
+%global composer_project assert
+
+# "php": "^7.2 || ^8.0"
+%global php_min_ver 7.2
+
+# PHPUnit
+%global phpunit_require phpunit8
+%global phpunit_exec phpunit8
+
+%if %{bootstrap}
+# Build using "--with tests" to enable tests
+%global with_tests 0%{?_with_tests:1}
+%else
+# Build using "--without tests" to disable tests
+%global with_tests 0%{!?_without_tests:1}
+%endif
+
+%{!?phpdir: %global phpdir %{_datadir}/php}
+
+Name: php-%{composer_vendor}-%{composer_project}
+Version: %{github_version}
+Release: 1%{?github_release}%{?dist}
+Summary: Assertions to validate method input/output with nice error messages
+
+License: MIT
+URL: https://github.com/%{github_owner}/%{github_name}
+
+# GitHub export does not include tests.
+# Run php-webmozart-assert-get-source.sh to create full source.
+Source0: %{name}-%{github_version}-%{github_commit}.tar.gz
+Source1: %{name}-get-source.sh
+
+BuildArch: noarch
+# Tests
+%if %{with_tests}
+## composer.json
+BuildRequires: php(language) >= %{php_min_ver}
+BuildRequires: php-ctype
+BuildRequires: %{phpunit_require}
+## phpcompatinfo (computed from version 1.7.0)
+BuildRequires: php-mbstring
+BuildRequires: php-simplexml
+## Autoloader
+BuildRequires: php-composer(fedora/autoloader)
+%endif
+
+# composer.json
+Requires: php(language) >= %{php_min_ver}
+Requires: php-ctype
+# phpcompatinfo (computed from version 1.7.0)
+Requires: php-mbstring
+# Autoloader
+Requires: php-composer(fedora/autoloader)
+
+# Composer
+Provides: php-composer(%{composer_vendor}/%{composer_project}) = %{version}
+
+%description
+This library contains efficient assertions to test the input and output of your
+methods. With these assertions, you can greatly reduce the amount of coding
+needed to write a safe implementation.
+
+All assertions in the Assert class throw an \InvalidArgumentException if they
+fail.
+
+Autoloader: %{phpdir}/Webmozart/Assert/autoload.php
+
+
+%prep
+%setup -qn %{github_name}-%{github_commit}
+
+
+%build
+: Create autoloader
+cat <<'AUTOLOAD' | tee src/autoload.php
+<?php
+/**
+ * Autoloader for %{name} and its' dependencies
+ */
+require_once '%{phpdir}/Fedora/Autoloader/autoload.php';
+
+\Fedora\Autoloader\Autoload::addPsr4('Webmozart\\Assert\\', __DIR__);
+AUTOLOAD
+
+
+%install
+mkdir -p %{buildroot}%{phpdir}/Webmozart
+cp -rp src %{buildroot}%{phpdir}/Webmozart/Assert
+
+
+%check
+%if %{with_tests}
+: Create tests bootstrap
+cat <<'BOOTSTRAP' | tee bootstrap.php
+<?php
+\Fedora\Autoloader\Autoload::addPsr4('Webmozart\\Assert\\Tests\\', __DIR__.'/tests');
+\Fedora\Autoloader\Autoload::addPsr4('Webmozart\\Assert\\Bin\\', __DIR__.'/bin/src');
+BOOTSTRAP
+
+: Upstream tests
+RETURN_CODE=0
+PHPUNIT=$(which %{phpunit_exec})
+for PHP_EXEC in php81 php82 php83 php84 php85; do
+ if [ -z "$PHP_EXEC" ] || which $PHP_EXEC; then
+ $PHP_EXEC \
+ -d auto_prepend_file=%{buildroot}%{phpdir}/Webmozart/Assert/autoload.php \
+ $PHPUNIT \
+ --bootstrap bootstrap.php \
+ --verbose || RETURN_CODE=1
+ fi
+done
+exit $RETURN_CODE
+%else
+: Tests skipped
+%endif
+
+
+%files
+%license LICENSE
+%doc *.md
+%doc composer.json
+%dir %{phpdir}/Webmozart
+ %{phpdir}/Webmozart/Assert
+
+
+%changelog
+* Thu Oct 30 2025 Remi Collet <remi@remirepo.net> - 1.12.1-1
+- update to 1.12.1 (no change)
+
+* Tue Oct 21 2025 Remi Collet <remi@remirepo.net> - 1.12.0-1
+- update to 1.12.0
+
+* Mon Aug 8 2022 Remi Collet <remi@remirepo.net> - 1.11.0-1
+- update to 1.11.0
+- raise dependency on PHP 7.2
+- switch to phpunit8
+
+* Fri Sep 24 2021 Remi Collet <remi@remirepo.net> - 1.10.0-1
+- update to 1.10.0
+
+* Tue Jul 21 2020 Remi Collet <remi@remirepo.net> - 1.9.1-1
+- update to 1.9.1
+
+* Sun Feb 23 2020 Shawn Iwinski <shawn@iwin.ski> - 1.7.0-1
+- Update to 1.7.0 (RHBZ #1746998)
+- Disable bootstrap so tests run by default
+- Conditionally use PHPUnit 7
+
+* Sun May 19 2019 Shawn Iwinski <shawn@iwin.ski> - 1.4.0-1
+- Update to 1.4.0
+
+* Fri Oct 19 2018 Remi Collet <remi@remirepo.net> - 1.3.0-3
+- fix autoloader, use PSR-4 to avoid duplicated definition
+- prepend autoloader to ensure we use current version in tests
+- fix FTBFS #1605449
+
+* Fri Oct 19 2018 Remi Collet <remi@remirepo.net> - 1.3.0-2
+- fix autoloader, use PSR-4 to avoid duplicated definition
+- prepend autoloader to ensure we use current version in tests
+- fix FTBFS #1605449
+- bootstrap build
+
+* Sun Apr 22 2018 Shawn Iwinski <shawn@iwin.ski> - 1.3.0-1
+- Update to 1.3.0 (RHBZ #1539946)
+- Add get source script
+- Add composer.json to repo
+- Update running of tests
+
+* Tue Dec 27 2016 Shawn Iwinski <shawn@iwin.ski> - 1.2.0-1
+- Update to 1.2.0 (RHBZ #1398043)
+- Use php-composer(fedora/autoloader)
+- Run upstream tests with SCLs if they are available
+
+* Thu Oct 6 2016 Remi Collet <remi@remirepo.net> - 1.1.0-1
+- backport for remi repo, add EL-5 stuff
+
+* Wed Sep 28 2016 Shawn Iwinski <shawn@iwin.ski> - 1.1.0-1
+- Initial package