diff options
author | Remi Collet <remi@remirepo.net> | 2018-06-11 12:17:54 +0200 |
---|---|---|
committer | Remi Collet <remi@remirepo.net> | 2018-06-11 12:17:54 +0200 |
commit | 10e9b83b9934486dd8c50fe0832332cd58fab26d (patch) | |
tree | 11b1afedd53d7db3ed8fc952f5ac2b721395afe3 |
Initial packaging with cache, collection, core, database, database and utility sub-packages
-rw-r--r-- | .gitignore | 8 | ||||
-rw-r--r-- | Makefile | 5 | ||||
-rw-r--r-- | composer.json | 100 | ||||
-rwxr-xr-x | makesrc.sh | 28 | ||||
-rwxr-xr-x | makesrc2.sh | 28 | ||||
-rw-r--r-- | php-cakephp.spec | 447 | ||||
-rw-r--r-- | src/Cache/composer.json | 33 | ||||
-rw-r--r-- | src/Collection/composer.json | 36 | ||||
-rw-r--r-- | src/Core/composer.json | 39 | ||||
-rw-r--r-- | src/Database/composer.json | 40 | ||||
-rw-r--r-- | src/Datasource/composer.json | 40 | ||||
-rw-r--r-- | src/Event/composer.json | 34 | ||||
-rw-r--r-- | src/Filesystem/composer.json | 34 | ||||
-rw-r--r-- | src/Form/composer.json | 33 | ||||
-rw-r--r-- | src/I18n/composer.json | 48 | ||||
-rw-r--r-- | src/Log/composer.json | 35 | ||||
-rw-r--r-- | src/ORM/composer.json | 43 | ||||
-rw-r--r-- | src/Utility/composer.json | 43 | ||||
-rw-r--r-- | src/Validation/composer.json | 38 |
19 files changed, 1112 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fc9aa8c --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +clog +package-*.xml +*.tgz +*.tar.gz +*.tar.xz +*.tar.xz.asc +*.src.rpm +*/*rpm diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..c353103 --- /dev/null +++ b/Makefile @@ -0,0 +1,5 @@ +SRCDIR := $(shell pwd) +NAME := $(shell basename $(SRCDIR)) +include ../../common/Makefile + + diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..8818ca5 --- /dev/null +++ b/composer.json @@ -0,0 +1,100 @@ +{ + "name": "cakephp/cakephp", + "description": "The CakePHP framework", + "type": "library", + "keywords": [ + "framework", + "mvc", + "rapid-development", + "conventions over configuration", + "dry", + "orm", + "form", + "validation", + "psr-7" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/cakephp/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/cakephp" + }, + "require": { + "php": ">=5.6.0", + "ext-intl": "*", + "ext-mbstring": "*", + "cakephp/chronos": "^1.0.1", + "aura/intl": "^3.0.0", + "psr/log": "^1.0.0", + "zendframework/zend-diactoros": "^1.4.0" + }, + "suggest": { + "ext-openssl": "To use Security::encrypt() or have secure CSRF token generation.", + "lib-ICU": "The intl PHP library, to use Text::transliterate() or Text::slug()" + }, + "require-dev": { + "phpunit/phpunit": "^5.7.14|^6.0", + "cakephp/cakephp-codesniffer": "^3.0" + }, + "autoload": { + "psr-4": { + "Cake\\": "src/" + }, + "files": [ + "src/Core/functions.php", + "src/Collection/functions.php", + "src/I18n/functions.php", + "src/Utility/bootstrap.php" + ] + }, + "autoload-dev": { + "psr-4": { + "Cake\\PHPStan\\": "tests/PHPStan/", + "Cake\\Test\\": "tests/", + "TestApp\\": "tests/test_app/TestApp/", + "TestPlugin\\": "tests/test_app/Plugin/TestPlugin/src/", + "TestPlugin\\Test\\": "tests/test_app/Plugin/TestPlugin/tests/", + "TestPluginTwo\\": "tests/test_app/Plugin/TestPluginTwo/src/", + "Company\\TestPluginThree\\": "tests/test_app/Plugin/Company/TestPluginThree/src/", + "Company\\TestPluginThree\\Test\\": "tests/test_app/Plugin/Company/TestPluginThree/tests/", + "ParentPlugin\\": "tests/test_app/Plugin/ParentPlugin/src/", + "PluginJs\\": "tests/test_app/Plugin/PluginJs/src/" + } + }, + "replace": { + "cakephp/cache": "self.version", + "cakephp/collection": "self.version", + "cakephp/core": "self.version", + "cakephp/datasource": "self.version", + "cakephp/database": "self.version", + "cakephp/event": "self.version", + "cakephp/filesystem": "self.version", + "cakephp/form": "self.version", + "cakephp/i18n": "self.version", + "cakephp/log": "self.version", + "cakephp/orm": "self.version", + "cakephp/utility": "self.version", + "cakephp/validation": "self.version" + }, + "conflict": { + "phpunit/phpunit": "<5.7" + }, + "scripts": { + "check": [ + "@cs-check", + "@test" + ], + "cs-check": "phpcs --colors -p ./src ./tests", + "cs-fix": "phpcbf --colors ./src ./tests", + "test": "phpunit", + "test-coverage": "phpunit --coverage-clover=clover.xml" + } +} diff --git a/makesrc.sh b/makesrc.sh new file mode 100755 index 0000000..87d223d --- /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 .git $PROJECT-$COMMIT + +echo "Cleaning..." +rm -rf $PROJECT-$COMMIT + +echo "Done." diff --git a/makesrc2.sh b/makesrc2.sh new file mode 100755 index 0000000..d538bb5 --- /dev/null +++ b/makesrc2.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +NAME=$(basename $PWD) +OWNER=$(sed -n '/^%global gh_owner/{s/.* //;p}' $NAME.spec) +PROJECT=chronos +VERSION=$(sed -n '/^%global chronos_version/{s/.* //;p}' $NAME.spec) +COMMIT=$(sed -n '/^%global chronos_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-chronos-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT + +echo "Cleaning..." +rm -rf $PROJECT-$COMMIT + +echo "Done." diff --git a/php-cakephp.spec b/php-cakephp.spec new file mode 100644 index 0000000..dbb5cd6 --- /dev/null +++ b/php-cakephp.spec @@ -0,0 +1,447 @@ +# remirepo/fedora spec file for php-cakephp +# +# Copyright (c) 2018 Remi Collet +# License: CC-BY-SA +# http://creativecommons.org/licenses/by-sa/4.0/ +# +# Please, preserve the changelog entries +# + +# https://github.com/cakephp/cakephp/releases +%global gh_commit 9d26dcaa80739d24674062604bb3796e72023580 +%global gh_short %(c=%{gh_commit}; echo ${c:0:7}) +%global gh_owner cakephp +%global gh_project cakephp +%global pk_vendor cakephp +%global ns_vendor Cake +%global php_home %{_datadir}/php +%global with_tests 0%{!?_without_tests:1} + +# https://github.com/cakephp/chronos/releases +%global chronos_commit 85bcaea6a832684b32ef54b2487b0c14a172e9e6 +%global chronos_short %(c=%{chronos_commit}; echo ${c:0:7}) +%global chronos_version 1.1.4 + +Name: php-%{pk_vendor} +Version: 3.6.5 +Release: 1%{?dist} +Summary: The CakePHP framework + +License: MIT +URL: https://cakephp.org/ +Source0: %{name}-%{version}-%{gh_short}.tgz +Source1: makesrc.sh +Source2: %{name}-chronos-%{chronos_version}-%{chronos_short}.tgz +Source3: makesrc2.sh + +BuildArch: noarch +%if %{with_tests} +# For tests +BuildRequires: php(language) >= 5.6 +BuildRequires: php-ctype +BuildRequires: php-date +BuildRequires: php-dom +BuildRequires: php-hash +BuildRequires: php-intl +BuildRequires: php-json +BuildRequires: php-libxml +BuildRequires: php-mbstring +BuildRequires: php-pcre +BuildRequires: php-pdo +BuildRequires: php-reflection +BuildRequires: php-simplexml +BuildRequires: php-spl +# From composer.json, "require-dev": { +# "phpunit/phpunit": "<6.0", +# "athletic/athletic": "~0.1", +# "cakephp/cakephp-codesniffer": "~2.3", +# "phpbench/phpbench": "@dev", +# "phpstan/phpstan": "^0.6.4" +BuildRequires: php-composer(phpunit/phpunit) +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 +BuildRequires: (php-composer(aura/intl) >= 3.0.0 with php-composer(aura/intl) < 4) +BuildRequires: (php-composer(psr/log) >= 1.0.0 with php-composer(psr/log) < 2) +BuildRequires: (php-composer(zendframework/zend-diactoros) >= 1.4.0 with php-composer(zendframework/zend-diactoros) < 2) +%else +BuildRequires: php-aura-intl >= 3.0.0 +BuildRequires: php-PsrLog >= 1.0.0 +BuildRequires: php-zendframework-zend-diactoros >= 1.4.0 +%endif +%endif + + +%description +CakePHP is a rapid development framework for PHP which uses commonly known +design patterns like Associative Data Mapping, Front Controller, and MVC. +Our primary goal is to provide a structured framework that enables PHP users +at all levels to rapidly develop robust web applications, without any loss +to flexibility. + + +%package cache +Summary: CakePHP Collection Library +# From composer.json "require": { +# "php": ">=5.6.0", +# "cakephp/core": "^3.6.0" +Requires: php(language) >= 5.6 +Requires: php-composer(%{pk_vendor}/core) = %{version} +# From phpcompatinfo report +Requires: php-date +Requires: php-pcre +Requires: php-spl +Provides: php-composer(%{pk_vendor}/cache) = %{version} + +%description cache +CakePHP Caching Library: + +The Cache library provides a Cache service locator for interfacing with +multiple caching backends using a simple to use interface. + +The caching backends supported are: +* Files +* APC +* Memcached +* Redis +* Wincache +* Xcache + + +%package collection +Summary: CakePHP Collection Library +# From composer.json "require": { +# "php": ">=5.6.0", +Requires: php(language) >= 5.6 +# From phpcompatinfo report +Requires: php-spl +Provides: php-composer(%{pk_vendor}/collection) = %{version} + +%description collection +CakePHP Collection Library: + +The collection classes provide a set of tools to manipulate arrays or +Traversable objects. If you have ever used underscore.js, you have an +idea of what you can expect from the collection classes. + + +%package core +Summary: CakePHP Framework Core classes +# From composer.json "require": { +# "php": ">=5.6.0", +# "cakephp/utility": "^3.6.0" +Requires: php(language) >= 5.6 +Requires: php-composer(%{pk_vendor}/utility) = %{version} +# From phpcompatinfo report +Requires: php-reflection +Requires: php-json +Requires: php-mbstring +Requires: php-pcre +Requires: php-spl +Provides: php-composer(%{pk_vendor}/core) = %{version} + +%description core +CakePHP Framework Core classes: + +A set of classes used for configuration files reading and storing. +This library contains the classes that are used as glue for creating the +CakePHP framework. + + +%package database +Summary: CakePHP Database Library +# From composer.json "require": { +# "php": ">=5.6.0", +# "cakephp/cache": "^3.6.0", +# "cakephp/core": "^3.6.0", +# "cakephp/datasource": "^3.6.0" +Requires: php(language) >= 5.6 +Requires: php-composer(%{pk_vendor}/cache) = %{version} +Requires: php-composer(%{pk_vendor}/core) = %{version} +Requires: php-composer(%{pk_vendor}/datasource) = %{version} +# From phpcompatinfo report +Requires: php-pdo +Requires: php-ctype +Requires: php-date +Requires: php-json +Requires: php-pcre +Requires: php-spl +Provides: php-composer(%{pk_vendor}/database) = %{version} + +%description database +A flexible and lightweight Database Library for PHP: + +This library abstracts and provides help with most aspects of dealing with +relational databases such as keeping connections to the server, building +queries, preventing SQL injections, inspecting and altering schemas, and +with debugging and profiling queries sent to the database. + +It adopts the API from the native PDO extension in PHP for familiarity, +but solves many of the inconsistencies PDO has, while also providing +several features that extend PDO's capabilities. + +A distinguishing factor of this library when compared to similar database +connection packages, is that it takes the concept of "data types" to its core. +It lets you work with complex PHP objects or structures that can be passed as +query conditions or to be inserted in the database. + +The typing system will intelligently convert the PHP structures when passing +them to the database, and convert them back when retrieving. + + +%package datasource +Summary: CakePHP Datasource Library +# From composer.json "require": { +# "php": ">=5.6.0", +# "cakephp/core": "^3.6.0" +Requires: php(language) >= 5.6 +Requires: php-composer(%{pk_vendor}/core) = %{version} +# From phpcompatinfo report +Requires: php-json +Requires: php-spl +Provides: php-composer(%{pk_vendor}/datasource) = %{version} + +%description datasource +CakePHP Datasource Library: + +This library contains interfaces for implementing Repositories and +Entities using any data source, a class for managing connections to +datasources and traits to help you quickly implement the interfaces +provided by this package. + + +%package utility +Summary: CakePHP Utility Classes +# From composer.json "require": { +# "php": ">=5.6.0", +# "cakephp/core": "^3.6.0" +Requires: php(language) >= 5.6 +Requires: php-composer(%{pk_vendor}/core) = %{version} +# From phpcompatinfo report +Requires: php-simplexml +Requires: php-ctype +Requires: php-dom +Requires: php-hash +Requires: php-intl +Requires: php-json +Requires: php-libxml +Requires: php-mbstring +Requires: php-pcre +Requires: php-spl +Provides: php-composer(%{pk_vendor}/utility) = %{version} + +%description utility +CakePHP Utility Classes: + +This library provides a range of utility classes that are used throughout +the CakePHP framework. + + +%prep +%setup -q -n %{gh_project}-%{gh_commit} -a 2 +mv chronos-*/src src/Chronos + + +%build +: ===== Generate test autoloader for full framework +mkdir vendor +cat << 'EOF' | tee vendor/autoload.php +<?php +require_once '%{php_home}/Fedora/Autoloader/autoload.php'; + +\Fedora\Autoloader\Autoload::addPsr4('Cake\\', dirname(__DIR__).'/src'); +\Fedora\Autoloader\Autoload::addPsr4('Cake\\Test\\', dirname(__DIR__).'/tests'); +\Fedora\Autoloader\Autoload::addPsr4('TestApp\\', dirname(__DIR__).'/tests/test_app/TestApp'); +\Fedora\Autoloader\Autoload::addPsr4('TestPlugin\\', dirname(__DIR__).'/tests/test_app/Plugin/TestPlugin/src'); +\Fedora\Autoloader\Autoload::addPsr4('TestPlugin\\Test\\', dirname(__DIR__).'/tests/test_app/Plugin/TestPlugin/tests'); +\Fedora\Autoloader\Autoload::addPsr4('TestPluginTwo\\', dirname(__DIR__).'/tests/test_app/Plugin/TestPluginTwo/src'); +\Fedora\Autoloader\Autoload::addPsr4('Company\\TestPluginThree\\', dirname(__DIR__).'/tests/test_app/Plugin/Company/TestPluginThree/src'); +\Fedora\Autoloader\Autoload::addPsr4('TCompany\\TestPluginThree\\Test\\', dirname(__DIR__).'/tests/test_app/Plugin/Company/TestPluginThree/tests'); +\Fedora\Autoloader\Autoload::addPsr4('ParentPlugin\\', dirname(__DIR__).'/tests/test_app/Plugin/ParentPlugin/src'); +\Fedora\Autoloader\Autoload::addPsr4('PluginJs\\', dirname(__DIR__).'/tests/test_app/Plugin/PluginJs/src'); +\Fedora\Autoloader\Dependencies::required([ + dirname(__DIR__).'/src/Core/functions.php', + dirname(__DIR__).'/src/Collection/functions.php', + dirname(__DIR__).'/src/I18n/functions.php', + dirname(__DIR__).'/src/Utility/bootstrap.php', + '%{php_home}/Aura/Intl/autoload.php', + '%{php_home}/Psr/Log/autoload.php', + '%{php_home}/Zend/Diactoros/autoload.php', +]); +EOF + +: ===== Generate "cache" autoloader +cat << 'EOF' | tee src/Cache/autoload.php +<?php +require_once '%{php_home}/Fedora/Autoloader/autoload.php'; + +\Fedora\Autoloader\Autoload::addPsr4('Cake\\Cache\\', __DIR__); +\Fedora\Autoloader\Dependencies::required([ + dirname(__DIR__) . '/Core/autoload.php', +]); +EOF + +: ===== Generate "collection" autoloader +cat << 'EOF' | tee src/Collection/autoload.php +<?php +require_once '%{php_home}/Fedora/Autoloader/autoload.php'; + +\Fedora\Autoloader\Autoload::addPsr4('Cake\\Collection\\', __DIR__); +\Fedora\Autoloader\Dependencies::required([ + __DIR__ . '/functions.php', +]); +EOF + +: ===== Generate "core" autoloader +cat << 'EOF' | tee src/Core/autoload.php +<?php +require_once '%{php_home}/Fedora/Autoloader/autoload.php'; + +\Fedora\Autoloader\Autoload::addPsr4('Cake\\Core\\', __DIR__); +\Fedora\Autoloader\Dependencies::required([ + dirname(__DIR__) . '/Utility/autoload.php', + __DIR__ . '/functions.php', +]); +EOF + +: ===== Generate "database" autoloader +cat << 'EOF' | tee src/Database/autoload.php +<?php +require_once '%{php_home}/Fedora/Autoloader/autoload.php'; + +\Fedora\Autoloader\Autoload::addPsr4('Cake\\Database\\', __DIR__); +\Fedora\Autoloader\Dependencies::required([ + dirname(__DIR__) . '/Cache/autoload.php', + dirname(__DIR__) . '/Core/autoload.php', + dirname(__DIR__) . '/Datasource/autoload.php', +]); +EOF + +: ===== Generate "datasource" autoloader +cat << 'EOF' | tee src/Datasource/autoload.php +<?php +require_once '%{php_home}/Fedora/Autoloader/autoload.php'; + +\Fedora\Autoloader\Autoload::addPsr4('Cake\\Datasource\\', __DIR__); +\Fedora\Autoloader\Dependencies::required([ + dirname(__DIR__) . '/Core/autoload.php', +]); +EOF + +: ===== Generate "utility" autoloader +cat << 'EOF' | tee src/Utility/autoload.php +<?php +require_once '%{php_home}/Fedora/Autoloader/autoload.php'; + +\Fedora\Autoloader\Autoload::addPsr4('Cake\\Utility\\', __DIR__); +\Fedora\Autoloader\Dependencies::required([ + dirname(__DIR__) . '/Core/autoload.php', + __DIR__ . '/bootstrap.php', +]); +EOF + + +%install +#: Library +mkdir -p %{buildroot}%{php_home}/%{ns_vendor} +cp -pr src/Cache %{buildroot}%{php_home}/%{ns_vendor}/ +cp -pr src/Collection %{buildroot}%{php_home}/%{ns_vendor}/ +cp -pr src/Core %{buildroot}%{php_home}/%{ns_vendor}/ +cp -pr src/Database %{buildroot}%{php_home}/%{ns_vendor}/ +cp -pr src/Datasource %{buildroot}%{php_home}/%{ns_vendor}/ +cp -pr src/Utility %{buildroot}%{php_home}/%{ns_vendor}/ + + +%check +%if %{with_tests} +: Check our autoloaders +php -r ' +require "%{buildroot}%{php_home}/%{ns_vendor}/Cache/autoload.php"; +exit (class_exists("Cake\\Cache\\Cache") ? 0 : 1); +' +php -r ' +require "%{buildroot}%{php_home}/%{ns_vendor}/Collection/autoload.php"; +exit (class_exists("Cake\\Collection\\Collection") ? 0 : 1); +' +php -r ' +require "%{buildroot}%{php_home}/%{ns_vendor}/Core/autoload.php"; +exit (class_exists("Cake\\Core\\App") ? 0 : 1); +' +php -r ' +require "%{buildroot}%{php_home}/%{ns_vendor}/Database/autoload.php"; +exit (class_exists("Cake\\Database\\Connection") ? 0 : 1); +' +php -r ' +require "%{buildroot}%{php_home}/%{ns_vendor}/Datasource/autoload.php"; +exit (class_exists("Cake\\Datasource\\RulesChecker") ? 0 : 1); +' +php -r ' +require "%{buildroot}%{php_home}/%{ns_vendor}/Utility/autoload.php"; +exit (class_exists("Cake\\Utility\\Hash") ? 0 : 1); +' + +: Run upstream test suites +ret=0 +phpunit tests/TestCase/Cache --verbose || ret=1 +phpunit tests/TestCase/Core --verbose || ret=1 +phpunit tests/TestCase/Collection --verbose || ret=1 +%if 0%{?rhel} == 6 +: skip suite as sqlite is too old +%else +phpunit tests/TestCase/Database --verbose || ret=1 +phpunit tests/TestCase/Datasource --verbose || ret=1 +%endif +phpunit tests/TestCase/Utility --verbose || ret=1 +exit $ret +%else +: Test suite disabled +%endif + + +%files cache +%{!?_licensedir:%global license %%doc} +%license LICENSE +%doc src/Cache/composer.json +%doc src/Cache/*md +%{php_home}/%{ns_vendor}/Cache + +%files collection +%{!?_licensedir:%global license %%doc} +%license src/Collection/LICENSE.txt +%doc src/Collection/composer.json +%doc src/Collection/*md +%dir %{php_home}/%{ns_vendor} + %{php_home}/%{ns_vendor}/Collection + +%files core +%{!?_licensedir:%global license %%doc} +%license src/Core/LICENSE.txt +%doc src/Core/composer.json +%doc src/Core/*md +%dir %{php_home}/%{ns_vendor} + %{php_home}/%{ns_vendor}/Core + +%files database +%{!?_licensedir:%global license %%doc} +%license src/Database/LICENSE.txt +%doc src/Database/composer.json +%doc src/Database/*md +%{php_home}/%{ns_vendor}/Database + +%files datasource +%{!?_licensedir:%global license %%doc} +%license src/Datasource/LICENSE.txt +%doc src/Datasource/composer.json +%doc src/Datasource/*md +%{php_home}/%{ns_vendor}/Datasource + +%files utility +%{!?_licensedir:%global license %%doc} +%license src/Utility/LICENSE.txt +%doc src/Utility/composer.json +%doc src/Utility/*md +%{php_home}/%{ns_vendor}/Utility + + +%changelog +* Mon Jun 11 2018 Remi Collet <remi@remirepo.net> - 3.6.5-1 +- Initial packaging with cache, collection, core, database, + database and utility sub-packages diff --git a/src/Cache/composer.json b/src/Cache/composer.json new file mode 100644 index 0000000..23289aa --- /dev/null +++ b/src/Cache/composer.json @@ -0,0 +1,33 @@ +{ + "name": "cakephp/cache", + "description": "Easy to use Caching library with support for multiple caching backends", + "type": "library", + "keywords": [ + "cakephp", + "caching", + "cache" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/cache/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/cache" + }, + "require": { + "php": ">=5.6.0", + "cakephp/core": "^3.6.0" + }, + "autoload": { + "psr-4": { + "Cake\\Cache\\": "." + } + } +} diff --git a/src/Collection/composer.json b/src/Collection/composer.json new file mode 100644 index 0000000..47a24c4 --- /dev/null +++ b/src/Collection/composer.json @@ -0,0 +1,36 @@ +{ + "name": "cakephp/collection", + "description": "Work easily with arrays and iterators by having a battery of utility traversal methods", + "type": "library", + "keywords": [ + "cakephp", + "collections", + "iterators", + "arrays" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/collection/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/collection" + }, + "require": { + "php": ">=5.6.0" + }, + "autoload": { + "psr-4": { + "Cake\\Collection\\": "." + }, + "files": [ + "functions.php" + ] + } +} diff --git a/src/Core/composer.json b/src/Core/composer.json new file mode 100644 index 0000000..3a48585 --- /dev/null +++ b/src/Core/composer.json @@ -0,0 +1,39 @@ +{ + "name": "cakephp/core", + "description": "CakePHP Framework Core classes", + "type": "library", + "keywords": [ + "cakephp", + "framework", + "core" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/core/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/core" + }, + "require": { + "php": ">=5.6.0", + "cakephp/utility": "^3.6.0" + }, + "suggest": { + "cakephp/event": "To use PluginApplicationInterface or plugin applications." + }, + "autoload": { + "psr-4": { + "Cake\\Core\\": "." + }, + "files": [ + "functions.php" + ] + } +} diff --git a/src/Database/composer.json b/src/Database/composer.json new file mode 100644 index 0000000..3de6513 --- /dev/null +++ b/src/Database/composer.json @@ -0,0 +1,40 @@ +{ + "name": "cakephp/database", + "description": "Flexible and powerful Database abstraction library with a familiar PDO-like API", + "type": "library", + "keywords": [ + "cakephp", + "database", + "abstraction", + "database abstraction", + "pdo" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/database/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/database" + }, + "require": { + "php": ">=5.6.0", + "cakephp/cache": "^3.6.0", + "cakephp/core": "^3.6.0", + "cakephp/datasource": "^3.6.0" + }, + "suggest": { + "cakephp/log": "Require this if you want to use the built-in query logger" + }, + "autoload": { + "psr-4": { + "Cake\\Database\\": "." + } + } +} diff --git a/src/Datasource/composer.json b/src/Datasource/composer.json new file mode 100644 index 0000000..7846db2 --- /dev/null +++ b/src/Datasource/composer.json @@ -0,0 +1,40 @@ +{ + "name": "cakephp/datasource", + "description": "Provides connection managing and traits for Entities and Queries that can be reused for different datastores", + "type": "library", + "keywords": [ + "cakephp", + "datasource", + "connection management", + "entity", + "query" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/datasource/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/datasource" + }, + "require": { + "php": ">=5.6.0", + "cakephp/core": "^3.6.0" + }, + "suggest": { + "cakephp/utility": "If you decide to use EntityTrait.", + "cakephp/collection": "If you decide to use ResultSetInterface.", + "cakephp/cache": "If you decide to use Query caching." + }, + "autoload": { + "psr-4": { + "Cake\\Datasource\\": "." + } + } +} diff --git a/src/Event/composer.json b/src/Event/composer.json new file mode 100644 index 0000000..e984d41 --- /dev/null +++ b/src/Event/composer.json @@ -0,0 +1,34 @@ +{ + "name": "cakephp/event", + "description": "CakePHP event dispatcher library that helps implementing the observer pattern", + "type": "library", + "keywords": [ + "cakephp", + "event", + "dispatcher", + "observer pattern" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/event/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/event" + }, + "require": { + "php": ">=5.6.0", + "cakephp/core": "^3.6.0" + }, + "autoload": { + "psr-4": { + "Cake\\Event\\": "." + } + } +} diff --git a/src/Filesystem/composer.json b/src/Filesystem/composer.json new file mode 100644 index 0000000..e5dcb07 --- /dev/null +++ b/src/Filesystem/composer.json @@ -0,0 +1,34 @@ +{ + "name": "cakephp/filesystem", + "description": "CakePHP filesystem convenience classes to help you work with files and folders.", + "type": "library", + "keywords": [ + "cakephp", + "filesystem", + "files", + "folders" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/filesystem/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/filesystem" + }, + "require": { + "php": ">=5.6.0", + "cakephp/core": "^3.6.0" + }, + "autoload": { + "psr-4": { + "Cake\\Filesystem\\": "." + } + } +} diff --git a/src/Form/composer.json b/src/Form/composer.json new file mode 100644 index 0000000..5e1dfdc --- /dev/null +++ b/src/Form/composer.json @@ -0,0 +1,33 @@ +{ + "name": "cakephp/form", + "description": "CakePHP Form library", + "type": "library", + "keywords": [ + "cakephp", + "form" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/form/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/form" + }, + "require": { + "php": ">=5.6.0", + "cakephp/event": "^3.6.0", + "cakephp/validation": "^3.6.0" + }, + "autoload": { + "psr-4": { + "Cake\\Form\\": "." + } + } +} diff --git a/src/I18n/composer.json b/src/I18n/composer.json new file mode 100644 index 0000000..7ffc86f --- /dev/null +++ b/src/I18n/composer.json @@ -0,0 +1,48 @@ +{ + "name": "cakephp/i18n", + "description": "CakePHP Internationalization library with support for messages translation and dates and numbers localization", + "type": "library", + "keywords": [ + "cakephp", + "i18n", + "internationalisation", + "internationalization", + "localisation", + "localization", + "translation", + "date", + "number" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/i18n/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/i18n" + }, + "require": { + "php": ">=5.6.0", + "ext-intl": "*", + "cakephp/core": "^3.6.0", + "cakephp/chronos": "^1.0.0", + "aura/intl": "^3.0.0" + }, + "suggest": { + "cakephp/cache": "Require this if you want automatic caching of translators" + }, + "autoload": { + "psr-4": { + "Cake\\I18n\\": "." + }, + "files": [ + "functions.php" + ] + } +} diff --git a/src/Log/composer.json b/src/Log/composer.json new file mode 100644 index 0000000..a775a4f --- /dev/null +++ b/src/Log/composer.json @@ -0,0 +1,35 @@ +{ + "name": "cakephp/log", + "description": "CakePHP logging library with support for multiple different streams", + "type": "library", + "keywords": [ + "cakephp", + "log", + "logging", + "streams" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/log/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/log" + }, + "require": { + "php": ">=5.6.0", + "cakephp/core": "^3.6.0", + "psr/log": "^1.0.0" + }, + "autoload": { + "psr-4": { + "Cake\\Log\\": "." + } + } +} diff --git a/src/ORM/composer.json b/src/ORM/composer.json new file mode 100644 index 0000000..1432893 --- /dev/null +++ b/src/ORM/composer.json @@ -0,0 +1,43 @@ +{ + "name": "cakephp/orm", + "description": "CakePHP ORM - Provides a flexible and powerful ORM implementing a data-mapper pattern.", + "type": "library", + "keywords": [ + "cakephp", + "orm", + "data-mapper", + "data-mapper pattern" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/orm/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/orm" + }, + "require": { + "php": ">=5.6.0", + "cakephp/collection": "^3.6.0", + "cakephp/core": "^3.6.0", + "cakephp/datasource": "^3.6.0", + "cakephp/database": "^3.6.0", + "cakephp/event": "^3.6.0", + "cakephp/utility": "^3.6.0", + "cakephp/validation": "^3.6.0" + }, + "suggest": { + "cakephp/i18n": "If you are using Translate / Timestamp Behavior." + }, + "autoload": { + "psr-4": { + "Cake\\ORM\\": "." + } + } +} diff --git a/src/Utility/composer.json b/src/Utility/composer.json new file mode 100644 index 0000000..4c5c8f1 --- /dev/null +++ b/src/Utility/composer.json @@ -0,0 +1,43 @@ +{ + "name": "cakephp/utility", + "description": "CakePHP Utility classes such as Inflector, String, Hash, and Security", + "type": "library", + "keywords": [ + "cakephp", + "utility", + "inflector", + "string", + "hash", + "security" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/utility/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/utility" + }, + "require": { + "php": ">=5.6.0", + "cakephp/core": "^3.6.0" + }, + "suggest": { + "ext-intl": "To use Text::transliterate() or Text::slug()", + "lib-ICU": "To use Text::transliterate() or Text::slug()" + }, + "autoload": { + "psr-4": { + "Cake\\Utility\\": "." + }, + "files": [ + "bootstrap.php" + ] + } +} diff --git a/src/Validation/composer.json b/src/Validation/composer.json new file mode 100644 index 0000000..e4de56a --- /dev/null +++ b/src/Validation/composer.json @@ -0,0 +1,38 @@ +{ + "name": "cakephp/validation", + "description": "CakePHP Validation library", + "type": "library", + "keywords": [ + "cakephp", + "validation", + "data validation" + ], + "homepage": "https://cakephp.org", + "license": "MIT", + "authors": [ + { + "name": "CakePHP Community", + "homepage": "https://github.com/cakephp/validation/graphs/contributors" + } + ], + "support": { + "issues": "https://github.com/cakephp/cakephp/issues", + "forum": "https://stackoverflow.com/tags/cakephp", + "irc": "irc://irc.freenode.org/cakephp", + "source": "https://github.com/cakephp/validation" + }, + "require": { + "php": ">=5.6.0", + "cakephp/core": "^3.6.0", + "cakephp/utility": "^3.6.0", + "psr/http-message": "^1.0.0" + }, + "suggest": { + "cakephp/i18n": "If you want to use Validation::localizedTime()" + }, + "autoload": { + "psr-4": { + "Cake\\Validation\\": "." + } + } +} |