3 %bcond_with tests # build with tests
6 # - ZendXml has it's own versioning schema, version 1.0.1 as of 2.4.8 ZF2 release
8 Summary: Zend Framework 2
9 Name: php-ZendFramework
13 Group: Development/Libraries
14 Source0: https://packages.zendframework.com/releases/ZendFramework-%{version}/ZendFramework-%{version}.tgz
15 # Source0-md5: 145d2e23b9f745a1e11adbecc98761e9
16 # git clone https://github.com/zendframework/zf2.git
17 # cd zf2; git checkout release-2.3.9
18 # tar czf ../ZendFramework-tests-2.3.9.tgz tests
19 #Source1: ZendFramework-tests-%{version}.tgz
21 URL: http://framework.zend.com/
22 Requires: php(core) >= 5.3.23
24 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27 Zend Framework 2 is an open source framework for developing web
28 applications and services using PHP 5.3+. Zend Framework 2 uses 100%
29 object-oriented code and utilizes most of the new features of PHP 5.3,
30 namely namespaces, late static binding, lambda functions and closures.
32 Zend Framework 2 evolved from Zend Framework 1, a successful PHP
33 framework with over 15 million downloads.
35 %package Authentication
36 Summary: Zend Framework 2: Authentication Component
37 URL: http://framework.zend.com/manual/2.4/en/modules/zend.authentication.intro.html
38 Requires: %{name} = %{version}-%{release}
40 %description Authentication
41 The Zend\Authentication component provides an API for authentication
42 and includes concrete authentication adapters for common use case
45 Zend\Authentication is concerned only with authentication and not with
46 authorization. Authentication is loosely defined as determining
47 whether an entity actually is what it purports to be (i.e.,
48 identification), based on some set of credentials. Authorization, the
49 process of deciding whether to allow an entity access to, or to
50 perform operations upon, other entities is outside the scope of
51 Zend\Authentication. For more information about authorization and
52 access control with Zend Framework, please see the
53 Zend\Permissions\Acl or Zend\Permissions\Rbac component.
56 Summary: Zend Framework 2: Barcode Component
57 URL: http://framework.zend.com/manual/2.4/en/modules/zend.barcode.intro.html
58 Requires: %{name} = %{version}-%{release}
61 Zend\Barcode\Barcode provides a generic way to generate barcodes. The
62 Zend\Barcode component is divided into two subcomponents: barcode
63 objects and renderers. Objects allow you to create barcodes
64 independently of the renderer. Renderer allow you to draw barcodes
65 based on the support required.
68 Summary: Zend Framework 2: Cache Component
69 URL: http://framework.zend.com/manual/2.4/en/index.html#zend-cache
70 Requires: %{name} = %{version}-%{release}
78 - Memcache (php-pecl-memcache)
79 - Memcached (php-pecl-memcached)
80 - Mongo (php-pecl-mongo)
81 - Redis (php-pecl-redis)
85 Summary: Zend Framework 2: CAPTCHA Component
86 URL: http://framework.zend.com/manual/2.4/en/modules/zend.captcha.intro.html
87 Requires: %{name} = %{version}-%{release}
90 CAPTCHA stands for "Completely Automated Public Turing test to tell
91 Computers and Humans Apart'; it is used as a challenge-response to
92 ensure that the individual submitting information is a human and not
93 an automated process. Typically, a CAPTCHA is used with form
94 submissions where authenticated users are not necessary, but you want
95 to prevent spam submissions.
97 CAPTCHAs can take a variety of forms, including asking logic
98 questions, presenting skewed fonts, and presenting multiple images and
99 asking how they relate. The Zend\Captcha component aims to provide a
100 variety of back ends that may be utilized either standalone or in
101 conjunction with the Zend\Form component.
104 Summary: Zend Framework 2: Code Component
105 URL: http://framework.zend.com/manual/2.4/en/index.html
106 Requires: %{name} = %{version}-%{release}
109 Provides facilities to generate arbitrary code using an object
113 Summary: Zend Framework 2: Config Component
114 URL: http://framework.zend.com/manual/2.4/en/modules/zend.config.introduction.html
115 Requires: %{name} = %{version}-%{release}
118 Zend\Config is designed to simplify access to configuration data
119 within applications. It provides a nested object property-based user
120 interface for accessing this configuration data within application
121 code. The configuration data may come from a variety of media
122 supporting hierarchical data storage. Currently, Zend\Config provides
123 adapters that read and write configuration data stored in .ini, JSON,
127 Summary: Zend Framework 2: Console Component
128 URL: http://framework.zend.com/manual/2.4/en/modules/zend.console.introduction.html
129 Requires: %{name} = %{version}-%{release}
132 Zend Framework 2 features built-in console support.
134 When a Zend\Application is run from a console window (a shell window),
135 it will recognize this fact and prepare Zend\Mvc components to handle
136 the request. Console support is enabled by default, but to function
137 properly it requires at least one console route and one action
138 controller to handle the request.
140 - Console routing allows you to invoke controllers and action
141 depending on command line parameters provided by the user.
142 - Module Manager integration allows ZF2 applications and modules to
143 display help and usage information, in case the command line has not
144 been understood (no route matched).
145 - Console-aware action controllers will receive a console request
146 containing all named parameters and flags. They are able to send
147 output back to the console window.
148 - Console adapters provide a level of abstraction for interacting with
149 console on different operating systems.
150 - Console prompts can be used to interact with the user by asking him
151 questions and retrieving input.
154 Summary: Zend Framework 2: Crypt Component
155 URL: http://framework.zend.com/manual/2.4/en/modules/zend.crypt.introduction.html
156 Requires: %{name} = %{version}-%{release}
159 Zend\Crypt provides support of some cryptographic tools. The available
162 - encrypt-then-authenticate using symmetric ciphers (the
163 authentication step is provided using HMAC)
164 - encrypt/decrypt using symmetric and public key algorithm (e.g. RSA
166 - generate digital sign using public key algorithm (e.g. RSA
168 - key exchange using the Diffie-Hellman method
169 - Key derivation function (e.g. using PBKDF2 algorithm)
170 - Secure password hash (e.g. using Bcrypt algorithm)
171 - generate Hash values
172 - generate HMAC values
174 The main scope of this component is to offer an easy and secure way to
175 protect and authenticate sensitive data in PHP. Because the use of
176 cryptography is not so easy we recommend to use the Zend\Crypt
177 component only if you have a minimum background on this topic.
180 Summary: Zend Framework 2: DB Component
181 URL: http://framework.zend.com/manual/2.4/en/index.html#zend-db
182 Requires: %{name} = %{version}-%{release}
188 - ibm_db2 (http://pecl.php.net/package/ibm_db2)
190 - oci8 (http://pecl.php.net/package/oci8)
192 - sqlsrv (http://pecl.php.net/package/sqlsrv)
195 Summary: Zend Framework 2: Debug Component
196 URL: http://framework.zend.com/manual/2.4/en/index.html
197 Requires: %{name} = %{version}-%{release}
202 Optional: XDebug (php-pecl-xdebug)
205 Summary: Zend Framework 2: DI Component
206 URL: http://framework.zend.com/manual/2.4/en/modules/zend.di.introduction.html
207 Requires: %{name} = %{version}-%{release}
210 Dependency Injection (here-in called DI) is a concept that has been
211 talked about in numerous places over the web. Simply put, we'll
212 explain the act of injecting dependencies simply with this below code:
214 $b = new MovieLister(new MovieFinder());
216 Above, MovieFinder is a dependency of MovieLister, and MovieFinder was
217 injected into MovieLister.
220 Summary: Zend Framework 2: DOM Component
221 URL: http://framework.zend.com/manual/2.4/en/modules/zend.dom.intro.html
222 Requires: %{name} = %{version}-%{release}
225 The Zend\Dom component provides tools for working with DOM documents
226 and structures. Currently, we offer Zend\Dom\Query, which provides a
227 unified interface for querying DOM documents utilizing both XPath and
231 Summary: Zend Framework 2: Escaper Component
232 URL: http://framework.zend.com/manual/2.4/en/modules/zend.escaper.introduction.html
233 Requires: %{name} = %{version}-%{release}
236 The OWASP Top 10 web security risks study lists Cross-Site Scripting
237 (XSS) in second place. PHP's sole functionality against XSS is limited
238 to two functions of which one is commonly misapplied. Thus, the
239 Zend\Escaper component was written. It offers developers a way to
240 escape output and defend from XSS and related vulnerabilities by
241 introducing contextual escaping based on peer-reviewed rules.
243 %package EventManager
244 Summary: Zend Framework 2: EventManager Component
245 URL: http://framework.zend.com/manual/2.4/en/modules/zend.event-manager.event-manager.html
246 Requires: %{name} = %{version}-%{release}
248 %description EventManager
249 The EventManager is a component designed for the following use cases:
251 - Implementing simple subject/observer patterns.
252 - Implementing Aspect-Oriented designs.
253 - Implementing event-driven architectures.
255 The basic architecture allows you to attach and detach listeners to
256 named events, both on a per-instance basis as well as via shared
257 collections; trigger events; and interrupt execution of listeners.
260 Summary: Zend Framework 2: Feed Component
261 URL: http://framework.zend.com/manual/2.4/en/modules/zend.feed.introduction.html
262 Requires: %{name} = %{version}-%{release}
265 Zend\Feed provides functionality for consuming RSS and Atom feeds. It
266 provides a natural syntax for accessing elements of feeds, feed
267 attributes, and entry attributes. Zend\Feed also has extensive support
268 for modifying feed and entry structure with the same natural syntax,
269 and turning the result back into XML. In the future, this modification
270 support could provide support for the Atom Publishing Protocol.
272 Zend\Feed consists of Zend\Feed\Reader for reading RSS and Atom feeds,
273 Zend\Feed\Writer for writing RSS and Atom feeds, and
274 Zend\Feed\PubSubHubbub for working with Hub servers. Furthermore, both
275 Zend\Feed\Reader and Zend\Feed\Writer support extensions which allows
276 for working with additional data in feeds, not covered in the core API
277 but used in conjunction with RSS and Atom feeds.
280 Summary: Zend Framework 2: File Component
281 URL: http://framework.zend.com/manual/2.4/en/index.html#zend-file
282 Requires: %{name} = %{version}-%{release}
288 Summary: Zend Framework 2: Filter Component
289 URL: http://framework.zend.com/manual/2.4/en/modules/zend.filter.html
290 Requires: %{name} = %{version}-%{release}
293 The Zend\Filter component provides a set of commonly needed data
294 filters. It also provides a simple filter chaining mechanism by which
295 multiple filters may be applied to a single datum in a user-defined
299 Summary: Zend Framework 2: Form Component
300 URL: http://framework.zend.com/manual/2.4/en/modules/zend.form.intro.html
301 Requires: %{name} = %{version}-%{release}
304 Zend\Form is intended primarily as a bridge between your domain models
305 and the View Layer. It composes a thin layer of objects representing
306 form elements, an InputFilter, and a small number of methods for
307 binding data to and from the form and attached objects.
309 The Zend\Form component consists of the following objects:
311 - Elements, which simply consist of a name and attributes.
312 - Fieldsets, which extend from Elements, but allow composing other
313 fieldsets and elements.
314 - Forms, which extend from Fieldsets (and thus Elements). They provide
315 data and object binding, and compose InputFilters. Data binding is
316 done via ZendStdlibHydrator.
319 Summary: Zend Framework 2: HTTP Component
320 URL: http://framework.zend.com/manual/2.4/en/modules/zend.http.html
321 Requires: %{name} = %{version}-%{release}
324 Zend\Http is a primary foundational component of Zend Framework. Since
325 much of what PHP does is web-based, specifically HTTP, it makes sense
326 to have a performant, extensible, concise and consistent API to do all
327 things HTTP. In nutshell, there are several parts of Zend\Http:
329 - Context-less Request and Response classes that expose a fluent API
330 for introspecting several aspects of HTTP messages:
331 - ** Request line information and response status information
332 - ** Parameters, such as those found in POST and GET
335 - A Client implementation with various adapters that allow for sending
336 requests and introspecting responses.
339 Summary: Zend Framework 2: i18n Component
340 URL: http://framework.zend.com/manual/2.4/en/modules/zend.i18n.translating.html
341 Requires: %{name} = %{version}-%{release}
344 ZendI18n comes with a complete translation suite which supports all
345 major formats and includes popular features like plural translations
346 and text domains. The Translator component is mostly dependency free,
347 except for the fallback to a default locale, where it relies on the
350 The translator itself is initialized without any parameters, as any
351 configuration to it is optional. A translator without any translations
352 will actually do nothing but just return the given message IDs.
355 Summary: Zend Framework 2: InputFilter Component
356 URL: http://framework.zend.com/manual/2.4/en/modules/zend.input-filter.intro.html
357 Requires: %{name} = %{version}-%{release}
359 %description InputFilter
360 The Zend\InputFilter component can be used to filter and validate
361 generic sets of input data. For instance, you could use it to filter
362 $_GET or $_POST values, CLI arguments, etc.
365 Summary: Zend Framework 2: JSON Component
366 URL: http://framework.zend.com/manual/2.4/en/modules/zend.json.introduction.html
367 Requires: %{name} = %{version}-%{release}
370 Zend\Json provides convenience methods for serializing native PHP to
371 JSON and decoding JSON to native PHP.
373 JSON, JavaScript Object Notation, can be used for data interchange
374 between JavaScript and other languages. Since JSON can be directly
375 evaluated by JavaScript, it is a more efficient and lightweight format
376 than XML for exchanging data with JavaScript clients.
378 In addition, Zend\Json provides a useful way to convert any arbitrary
379 XML formatted string into a JSON formatted string. This built-in
380 feature will enable PHP developers to transform the enterprise data
381 encoded in XML format into JSON format before sending it to
382 browser-based Ajax client applications. It provides an easy way to do
383 dynamic data conversion on the server-side code thereby avoiding
384 unnecessary XML parsing in the browser-side applications. It offers a
385 nice utility function that results in easier application-specific data
386 processing techniques.
389 Summary: Zend Framework 2: LDAP Component
390 URL: http://framework.zend.com/manual/2.4/en/modules/zend.ldap.introduction.html
391 Requires: %{name} = %{version}-%{release}
394 Zend\Ldap\Ldap is a class for performing LDAP operations including but
395 not limited to binding, searching and modifying entries in an LDAP
399 Summary: Zend Framework 2: Loader Component
400 URL: http://framework.zend.com/manual/2.4/en/index.html#zend-loader
401 Requires: %{name} = %{version}-%{release}
407 Summary: Zend Framework 2: Log Component
408 URL: http://framework.zend.com/manual/2.4/en/modules/zend.log.overview.html
409 Requires: %{name} = %{version}-%{release}
412 Zend\Log\Logger is a component for general purpose logging. It
413 supports multiple log backends, formatting messages sent to the log,
414 and filtering messages from being logged. These functions are divided
415 into the following objects:
417 - A Logger (instance of Zend\Log\Logger) is the object that your
418 application uses the most. You can have as many Logger objects as you
419 like; they do not interact. A Logger object must contain at least one
420 Writer, and can optionally contain one or more Filters.
421 - A Writer (inherits from Zend\Log\Writer\AbstractWriter) is
422 responsible for saving data to storage.
423 - A Filter (implements Zend\Log\Filter\FilterInterface) blocks log
424 data from being saved. A filter is applied to an individual writer.
425 Filters can be chained.
426 - A Formatter (implements Zend\Log\Formatter\FormatterInterface) can
427 format the log data before it is written by a Writer. Each Writer has
428 exactly one Formatter.
430 Optional: MongoDB (php-pecl-mongo)
433 Summary: Zend Framework 2: Mail Component
434 URL: http://framework.zend.com/manual/2.4/en/modules/zend.mail.introduction.html
435 Requires: %{name} = %{version}-%{release}
438 Zend\Mail provides generalized functionality to compose and send both
439 text and MIME-compliant multipart email messages. Mail can be sent
440 with Zend\Mail via the Mail\Transport\Sendmail, Mail\Transport\Smtp or
441 the Mail\Transport\File transport. Of course, you can also implement
442 your own transport by implementing the
443 Mail\Transport\TransportInterface.
446 Summary: Zend Framework 2: Math Component
447 URL: http://framework.zend.com/manual/2.4/en/modules/zend.math.introduction.html
448 Requires: %{name} = %{version}-%{release}
451 Zend\Math namespace provides general mathematical functions. So far
452 the supported functionalities are:
454 - Zend\Math\Rand: A random number generator
455 - Zend\Math\BigInteger: A library to manage big integers
460 Summary: Zend Framework 2: Memory Component
461 URL: http://framework.zend.com/manual/2.4/en/index.html
462 Requires: %{name} = %{version}-%{release}
468 Summary: Zend Framework 2: MIME Component
469 URL: http://framework.zend.com/manual/2.4/en/modules/zend.mime.html
470 Requires: %{name} = %{version}-%{release}
473 Zend\Mime\Mime is a support class for handling multipart MIME
474 messages. It is used by Zend\Mail and Zend\Mime\Message and may be
475 used by applications requiring MIME support.
477 Optional: %{name}-Mail
479 %package ModuleManager
480 Summary: Zend Framework 2: ModuleManager Component
481 URL: http://framework.zend.com/manual/2.4/en/modules/zend.module-manager.intro.html
482 Requires: %{name} = %{version}-%{release}
484 %description ModuleManager
485 Zend Framework 2.0 introduces a new and powerful approach to modules.
486 This new module system is designed with flexibility, simplicity, and
487 re-usability in mind. A module may contain just about anything: PHP
488 code, including MVC functionality; library code; view scripts; and/or
489 public assets such as images, CSS, and JavaScript.
492 Summary: Zend Framework 2: MVC Component
493 URL: http://framework.zend.com/manual/2.4/en/modules/zend.mvc.intro.html
494 Requires: %{name} = %{version}-%{release}
497 Zend\Mvc is a brand new MVC implementation designed from the ground up
498 for Zend Framework 2, focusing on performance and flexibility.
500 The MVC layer is built on top of the following components:
502 - Zend\ServiceManager - Zend Framework provides a set of default
503 service definitions set up at Zend\Mvc\Service. The ServiceManager
504 creates and configures your application instance and workflow.
505 - Zend\EventManager - The MVC is event driven. This component is used
506 everywhere from initial bootstrapping of the application, through
507 returning response and request calls, to setting and retrieving routes
508 and matched routes, as well as render views.
509 - Zend\Http - specifically the request and response objects.
510 - Zend\Stdlib\DispatchableInterface. All "controllers' are simply
511 dispatchable objects.
514 Summary: Zend Framework 2: Navigation Component
515 URL: http://framework.zend.com/manual/2.4/en/modules/zend.navigation.intro.html
516 Requires: %{name} = %{version}-%{release}
518 %description Navigation
519 Zend\Navigation is a component for managing trees of pointers to web
520 pages. Simply put: It can be used for creating menus, breadcrumbs,
521 links, and sitemaps, or serve as a model for other navigation related
525 Summary: Zend Framework 2: Paginator Component
526 URL: http://framework.zend.com/manual/2.4/en/modules/zend.paginator.introduction.html
527 Requires: %{name} = %{version}-%{release}
529 %description Paginator
530 Zend\Paginator is a flexible component for paginating collections of
531 data and presenting that data to users.
533 The primary design goals of Zend\Paginator are as follows:
535 - Paginate arbitrary data, not just relational databases
536 - Fetch only the results that need to be displayed
537 - Do not force users to adhere to only one way of displaying data or
538 rendering pagination controls
539 - Loosely couple Zend\Paginator to other Zend Framework components so
540 that users who wish to use it independently of Zend\View, Zend\Db,
543 %package Permissions-Acl
544 Summary: Zend Framework 2: Permissions ACL Component
545 URL: http://framework.zend.com/manual/2.4/en/modules/zend.permissions.acl.intro.html
546 Requires: %{name} = %{version}-%{release}
548 %description Permissions-Acl
549 The Zend\Permissions\Acl component provides a lightweight and flexible
550 access control list (ACL) implementation for privileges management. In
551 general, an application may utilize such ACL's to control access to
552 certain protected objects by other requesting objects.
554 For the purposes of this documentation:
556 - a resource is an object to which access is controlled.
557 - a role is an object that may request access to a Resource.
559 Put simply, roles request access to resources. For example, if a
560 parking attendant requests access to a car, then the parking attendant
561 is the requesting role, and the car is the resource, since access to
562 the car may not be granted to everyone.
564 Through the specification and use of an ACL, an application may
565 control how roles are granted access to resources.
567 %package Permissions-Rbac
568 Summary: Zend Framework 2: Permissions RBAC Component
569 URL: http://framework.zend.com/manual/2.4/en/modules/zend.permissions.rbac.intro.html
570 Requires: %{name} = %{version}-%{release}
572 %description Permissions-Rbac
573 The Zend\Permissions\Rbac component provides a lightweight role-based
574 access control implementation based around PHP 5.3's SPL
575 RecursiveIterator and RecursiveIteratorIterator. RBAC differs from
576 access control lists (ACL) by putting the emphasis on roles and their
577 permissions rather than objects (resources).
580 Summary: Zend Framework 2: ProgressBar Component
581 URL: http://framework.zend.com/manual/2.4/en/modules/zend.progress-bar.html
582 Requires: %{name} = %{version}-%{release}
584 %description ProgressBar
585 Zend\ProgressBar is a component to create and update progress bars in
586 different environments. It consists of a single backend, which outputs
587 the progress through one of the multiple adapters. On every update, it
588 takes an absolute value and optionally a status message, and then
589 calls the adapter with some precalculated values like percentage and
593 Summary: Zend Framework 2: Serializer Component
594 URL: http://framework.zend.com/manual/2.4/en/modules/zend.serializer.html
595 Requires: %{name} = %{version}-%{release}
597 %description Serializer
598 The Zend\Serializer component provides an adapter based interface to
599 simply generate storable representation of PHP types by different
600 facilities, and recover.
602 Optional: msgpack (php-pecl-msgpack)
605 Summary: Zend Framework 2: Server Component
606 URL: http://framework.zend.com/manual/2.4/en/modules/zend.server.html
607 Requires: %{name} = %{version}-%{release}
610 The Zend\Server family of classes provides functionality for the
611 various server classes, including Zend\XmlRpc\Server and
612 Zend\Json\Server. Zend\Server\Server provides an interface that mimics
613 PHP 5's SoapServer class; all server classes should implement this
614 interface in order to provide a standard server API.
616 The Zend\Server\Reflection tree provides a standard mechanism for
617 performing function and class introspection for use as callbacks with
618 the server classes, and provides data suitable for use with
619 Zend\Server\Server's getFunctions() and loadFunctions() methods.
621 %package ServiceManager
622 Summary: Zend Framework 2: ServiceManager Component
623 URL: http://framework.zend.com/manual/2.4/en/modules/zend.service-manager.intro.html
624 Requires: %{name} = %{version}-%{release}
626 %description ServiceManager
627 The Service Locator design pattern is implemented by the
628 Zend\ServiceManager component. The Service Locator is a service/object
629 locator, tasked with retrieving other objects.
632 Summary: Zend Framework 2: Session Component
633 URL: http://framework.zend.com/manual/2.4/en/index.html#zend-session
634 Requires: %{name} = %{version}-%{release}
637 Manage and preserve session data, a logical complement of cookie data,
638 across multiple page requests by the same client.
640 Optional: MongoDB (php-pecl-mongo)
643 Summary: Zend Framework 2: SOAP Component
644 URL: http://framework.zend.com/manual/2.4/en/index.html#zend-soap
645 Requires: %{name} = %{version}-%{release}
651 Summary: Zend Framework 2: Stdlib Component
652 URL: http://framework.zend.com/manual/2.4/en/index.html#zend-stdlib
653 Requires: %{name} = %{version}-%{release}
659 Summary: Zend Framework 2: Tag Component
660 URL: http://framework.zend.com/manual/2.4/en/modules/zend.tag.introduction.html
661 Requires: %{name} = %{version}-%{release}
664 Zend\Tag is a component suite which provides a facility to work with
665 taggable Items. As its base, it provides two classes to work with
666 Tags, Zend\Tag\Item and Zend\Tag\ItemList. Additionally, it comes with
667 the interface Zend\Tag\TaggableInterface, which allows you to use any
668 of your models as a taggable item in conjunction with Zend\Tag.
670 Zend\Tag\Item is a basic taggable item implementation which comes with
671 the essential functionality required to work with the Zend\Tag suite.
672 A taggable item always consists of a title and a relative weight (e.g.
673 number of occurrences). It also stores parameters which are used by
674 the different sub-components of Zend\Tag.
676 To group multiple items together, Zend\Tag\ItemList exists as an array
677 iterator and provides additional functionality to calculate absolute
678 weight values based on the given relative weights of each item in it.
681 Summary: Zend Framework 2: Test Component
682 URL: http://framework.zend.com/manual/2.4/en/modules/zend.test.introduction.html
683 Requires: %{name} = %{version}-%{release}
686 The Zend\Test component provides tools to facilitate unit testing of
687 your Zend Framework applications. At this time, we offer facilities to
688 enable testing of your Zend Framework MVC applications.
690 PHPUnit is the only library supported currently.
693 Summary: Zend Framework 2: Text Component
694 URL: http://framework.zend.com/manual/2.4/en/index.html#zend-text
695 Requires: %{name} = %{version}-%{release}
697 ### TODO: Is Zend/Text/Figlet/zend-framework.flf allowed?
703 Summary: Zend Framework 2: URI Component
704 URL: http://framework.zend.com/manual/2.4/en/modules/zend.uri.html
705 Requires: %{name} = %{version}-%{release}
708 Zend\Uri is a component that aids in manipulating and validating
709 Uniform Resource Identifiers (URIs) [1]. Zend\Uri exists primarily to
710 service other components, such as Zend\Http\, but is also useful as a
713 URIs always begin with a scheme, followed by a colon. The construction
714 of the many different schemes varies significantly. The Zend\Uri
715 component provides the Zend\Uri\UriFactory that returns a class
716 implementing the Zend\Uri\UriInterface which specializes in the scheme
717 if such a class is registered with the Factory.
719 [1] http://www.ietf.org/rfc/rfc3986.txt
722 Summary: Zend Framework 2: Validator Component
723 URL: http://framework.zend.com/manual/2.4/en/modules/zend.validator.html
724 Requires: %{name} = %{version}-%{release}
726 %description Validator
727 The Zend\Validator component provides a set of commonly needed
728 validators. It also provides a simple validator chaining mechanism by
729 which multiple validators may be applied to a single datum in a
733 Summary: Zend Framework 2: Version Component
734 URL: http://framework.zend.com/manual/2.4/en/modules/zend.version.html
735 Requires: %{name} = %{version}-%{release}
738 Zend\Version provides a class constant Zend\Version\Version::VERSION
739 that contains a string identifying the version number of your Zend
740 Framework installation. Zend\Version\Version::VERSION might contain
741 "1.7.4', for example.
743 The static method Zend\Version\Version::compareVersion($version) is
744 based on the PHP function version_compare(). This method returns -1 if
745 the specified version is older than the installed Zend Framework
746 version, 0 if they are the same and +1 if the specified version is
747 newer than the version of the Zend Framework installation.
750 Summary: Zend Framework 2: View Component
751 URL: http://framework.zend.com/manual/2.4/en/modules/zend.view.quick-start.html
752 Requires: %{name} = %{version}-%{release}
755 Zend\View provides the "View' layer of Zend Framework 2's MVC system.
756 It is a multi-tiered system allowing a variety of mechanisms for
757 extension, substitution, and more.
760 Summary: Zend Framework 2: XML-RPC Component
761 URL: http://framework.zend.com/manual/2.4/en/modules/zend.xmlrpc.intro.html
762 Requires: %{name} = %{version}-%{release}
765 From its home page, XML-RPC is described as a '...remote procedure
766 calling using HTTP as the transport and XML as the encoding. XML-RPC
767 is designed to be as simple as possible, while allowing complex data
768 structures to be transmitted, processed and returned.'
770 Zend Framework provides support for both consuming remote XML-RPC
771 services and building new XML-RPC servers.
773 [1] http://www.xmlrpc.com/
776 Summary: Zend Framework 2: XML usage, best practices, and security in PHP
777 URL: https://github.com/zendframework/ZendXml
778 Requires: %{name} = %{version}-%{release}
781 This is a security component to prevent XML eXternal Entity (XXE) and
782 XML Entity Expansion (XEE) attacks on XML documents.
784 The XXE attack is prevented disabling the load of external entities in
785 the libxml library used by PHP, using the function
786 libxml_disable_entity_loader.
788 The XEE attack is prevented looking inside the XML document for ENTITY
789 usage. If the XML document uses ENTITY the library throw an Exception.
792 %setup -q -n ZendFramework-%{version} %{?with_tests:-a 1}
797 : Create autoloader for test suite
798 cat <<'AUTOLOADER' | tee _autoload.php
800 require_once '$RPM_BUILD_ROOT%{php_data_dir}/Zend/autoload.php';
802 Zend\Loader\AutoloaderFactory::factory(array(
803 'Zend\\Loader\\StandardAutoloader' => array(
804 'namespaces' => array(
805 'ZendTest' => __DIR__ . '/ZendTest',
809 : ignore these for now
810 rm ZendTest/Mvc/Controller/Plugin/FilePostRedirectGetTest.php
811 : PHP 5.4 segfaults https://bugzilla.redhat.com/1131979
812 rm ZendTest/Serializer/Adapter/WddxTest.php
815 for dir in ZendTest/[A-Z]*; do
816 phpunit $dir || RET=1
822 rm -rf $RPM_BUILD_ROOT
825 rm -rf $RPM_BUILD_ROOT
826 install -d $RPM_BUILD_ROOT%{php_data_dir}
827 cp -a library/* $RPM_BUILD_ROOT%{php_data_dir}
829 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{php_data_dir}/Zend/autoload.php
832 %defattr(644,root,root,755)
834 %doc *.md composer.json
835 %dir %{php_data_dir}/Zend
837 %files Authentication
838 %defattr(644,root,root,755)
839 %doc library/Zend/Authentication/*.md
840 %doc library/Zend/Authentication/composer.json
841 %{php_data_dir}/Zend/Authentication
842 %exclude %{php_data_dir}/Zend/Authentication/*.md
843 %exclude %{php_data_dir}/Zend/Authentication/composer.json
846 %defattr(644,root,root,755)
847 %doc library/Zend/Barcode/*.md
848 %doc library/Zend/Barcode/composer.json
849 %{php_data_dir}/Zend/Barcode
850 %exclude %{php_data_dir}/Zend/Barcode/*.md
851 %exclude %{php_data_dir}/Zend/Barcode/composer.json
854 %defattr(644,root,root,755)
855 %doc library/Zend/Cache/*.md
856 %doc library/Zend/Cache/composer.json
857 %{php_data_dir}/Zend/Cache
858 %exclude %{php_data_dir}/Zend/Cache/*.md
859 %exclude %{php_data_dir}/Zend/Cache/composer.json
862 %defattr(644,root,root,755)
863 %doc library/Zend/Captcha/*.md
864 %doc library/Zend/Captcha/composer.json
865 %{php_data_dir}/Zend/Captcha
866 %exclude %{php_data_dir}/Zend/Captcha/*.md
867 %exclude %{php_data_dir}/Zend/Captcha/composer.json
870 %defattr(644,root,root,755)
871 %doc library/Zend/Code/*.md
872 %doc library/Zend/Code/composer.json
873 %{php_data_dir}/Zend/Code
874 %exclude %{php_data_dir}/Zend/Code/*.md
875 %exclude %{php_data_dir}/Zend/Code/composer.json
878 %defattr(644,root,root,755)
879 %doc library/Zend/Config/*.md
880 %doc library/Zend/Config/composer.json
881 %{php_data_dir}/Zend/Config
882 %exclude %{php_data_dir}/Zend/Config/*.md
883 %exclude %{php_data_dir}/Zend/Config/composer.json
886 %defattr(644,root,root,755)
887 %doc library/Zend/Console/*.md
888 %doc library/Zend/Console/composer.json
889 %{php_data_dir}/Zend/Console
890 %exclude %{php_data_dir}/Zend/Console/*.md
891 %exclude %{php_data_dir}/Zend/Console/composer.json
894 %defattr(644,root,root,755)
895 %doc library/Zend/Crypt/*.md
896 %doc library/Zend/Crypt/composer.json
897 %{php_data_dir}/Zend/Crypt
898 %exclude %{php_data_dir}/Zend/Crypt/*.md
899 %exclude %{php_data_dir}/Zend/Crypt/composer.json
902 %defattr(644,root,root,755)
903 %doc library/Zend/Db/*.md
904 %doc library/Zend/Db/composer.json
905 %{php_data_dir}/Zend/Db
906 %exclude %{php_data_dir}/Zend/Db/*.md
907 %exclude %{php_data_dir}/Zend/Db/composer.json
910 %defattr(644,root,root,755)
911 %doc library/Zend/Debug/*.md
912 %doc library/Zend/Debug/composer.json
913 %{php_data_dir}/Zend/Debug
914 %exclude %{php_data_dir}/Zend/Debug/*.md
915 %exclude %{php_data_dir}/Zend/Debug/composer.json
918 %defattr(644,root,root,755)
919 %doc library/Zend/Di/*.md
920 %doc library/Zend/Di/composer.json
921 %{php_data_dir}/Zend/Di
922 %exclude %{php_data_dir}/Zend/Di/*.md
923 %exclude %{php_data_dir}/Zend/Di/composer.json
926 %defattr(644,root,root,755)
927 %doc library/Zend/Dom/*.md
928 %doc library/Zend/Dom/composer.json
929 %{php_data_dir}/Zend/Dom
930 %exclude %{php_data_dir}/Zend/Dom/*.md
931 %exclude %{php_data_dir}/Zend/Dom/composer.json
934 %defattr(644,root,root,755)
935 %doc library/Zend/Escaper/*.md
936 %doc library/Zend/Escaper/composer.json
937 %{php_data_dir}/Zend/Escaper
938 %exclude %{php_data_dir}/Zend/Escaper/*.md
939 %exclude %{php_data_dir}/Zend/Escaper/composer.json
942 %defattr(644,root,root,755)
943 %doc library/Zend/EventManager/*.md
944 %doc library/Zend/EventManager/composer.json
945 %{php_data_dir}/Zend/EventManager
946 %exclude %{php_data_dir}/Zend/EventManager/*.md
947 %exclude %{php_data_dir}/Zend/EventManager/composer.json
950 %defattr(644,root,root,755)
951 %doc library/Zend/Feed/*.md
952 %doc library/Zend/Feed/composer.json
953 %{php_data_dir}/Zend/Feed
954 %exclude %{php_data_dir}/Zend/Feed/*.md
955 %exclude %{php_data_dir}/Zend/Feed/composer.json
958 %defattr(644,root,root,755)
959 %doc library/Zend/File/*.md
960 %doc library/Zend/File/composer.json
961 %{php_data_dir}/Zend/File
962 %exclude %{php_data_dir}/Zend/File/*.md
963 %exclude %{php_data_dir}/Zend/File/composer.json
966 %defattr(644,root,root,755)
967 %doc library/Zend/Filter/*.md
968 %doc library/Zend/Filter/composer.json
969 %{php_data_dir}/Zend/Filter
970 %exclude %{php_data_dir}/Zend/Filter/*.md
971 %exclude %{php_data_dir}/Zend/Filter/composer.json
974 %defattr(644,root,root,755)
975 %doc library/Zend/Form/*.md
976 %doc library/Zend/Form/composer.json
977 %{php_data_dir}/Zend/Form
978 %exclude %{php_data_dir}/Zend/Form/*.md
979 %exclude %{php_data_dir}/Zend/Form/composer.json
982 %defattr(644,root,root,755)
983 %doc library/Zend/Http/*.md
984 %doc library/Zend/Http/composer.json
985 %{php_data_dir}/Zend/Http
986 %exclude %{php_data_dir}/Zend/Http/*.md
987 %exclude %{php_data_dir}/Zend/Http/composer.json
990 %defattr(644,root,root,755)
991 %doc library/Zend/I18n/*.md
992 %doc library/Zend/I18n/composer.json
993 %{php_data_dir}/Zend/I18n
994 %exclude %{php_data_dir}/Zend/I18n/*.md
995 %exclude %{php_data_dir}/Zend/I18n/composer.json
998 %defattr(644,root,root,755)
999 %doc library/Zend/InputFilter/*.md
1000 %doc library/Zend/InputFilter/composer.json
1001 %{php_data_dir}/Zend/InputFilter
1002 %exclude %{php_data_dir}/Zend/InputFilter/*.md
1003 %exclude %{php_data_dir}/Zend/InputFilter/composer.json
1006 %defattr(644,root,root,755)
1007 %doc library/Zend/Json/*.md
1008 %doc library/Zend/Json/composer.json
1009 %{php_data_dir}/Zend/Json
1010 %exclude %{php_data_dir}/Zend/Json/*.md
1011 %exclude %{php_data_dir}/Zend/Json/composer.json
1014 %defattr(644,root,root,755)
1015 %doc library/Zend/Ldap/*.md
1016 %doc library/Zend/Ldap/composer.json
1017 %{php_data_dir}/Zend/Ldap
1018 %exclude %{php_data_dir}/Zend/Ldap/*.md
1019 %exclude %{php_data_dir}/Zend/Ldap/composer.json
1022 %defattr(644,root,root,755)
1023 %doc library/Zend/Loader/*.md
1024 %doc library/Zend/Loader/composer.json
1025 %{php_data_dir}/Zend/autoload.php
1026 %{php_data_dir}/Zend/Loader
1027 %exclude %{php_data_dir}/Zend/Loader/*.md
1028 %exclude %{php_data_dir}/Zend/Loader/composer.json
1031 %defattr(644,root,root,755)
1032 %doc library/Zend/Log/*.md
1033 %doc library/Zend/Log/composer.json
1034 %{php_data_dir}/Zend/Log
1035 %exclude %{php_data_dir}/Zend/Log/*.md
1036 %exclude %{php_data_dir}/Zend/Log/composer.json
1039 %defattr(644,root,root,755)
1040 %doc library/Zend/Mail/*.md
1041 %doc library/Zend/Mail/composer.json
1042 %{php_data_dir}/Zend/Mail
1043 %exclude %{php_data_dir}/Zend/Mail/*.md
1044 %exclude %{php_data_dir}/Zend/Mail/composer.json
1047 %defattr(644,root,root,755)
1048 %doc library/Zend/Math/*.md
1049 %doc library/Zend/Math/composer.json
1050 %{php_data_dir}/Zend/Math
1051 %exclude %{php_data_dir}/Zend/Math/*.md
1052 %exclude %{php_data_dir}/Zend/Math/composer.json
1055 %defattr(644,root,root,755)
1056 %doc library/Zend/Memory/*.md
1057 %doc library/Zend/Memory/composer.json
1058 %{php_data_dir}/Zend/Memory
1059 %exclude %{php_data_dir}/Zend/Memory/*.md
1060 %exclude %{php_data_dir}/Zend/Memory/composer.json
1063 %defattr(644,root,root,755)
1064 %doc library/Zend/Mime/*.md
1065 %doc library/Zend/Mime/composer.json
1066 %{php_data_dir}/Zend/Mime
1067 %exclude %{php_data_dir}/Zend/Mime/*.md
1068 %exclude %{php_data_dir}/Zend/Mime/composer.json
1070 %files ModuleManager
1071 %defattr(644,root,root,755)
1072 %doc library/Zend/ModuleManager/*.md
1073 %doc library/Zend/ModuleManager/composer.json
1074 %{php_data_dir}/Zend/ModuleManager
1075 %exclude %{php_data_dir}/Zend/ModuleManager/*.md
1076 %exclude %{php_data_dir}/Zend/ModuleManager/composer.json
1079 %defattr(644,root,root,755)
1080 %doc library/Zend/Mvc/*.md
1081 %doc library/Zend/Mvc/composer.json
1082 %{php_data_dir}/Zend/Mvc
1083 %exclude %{php_data_dir}/Zend/Mvc/*.md
1084 %exclude %{php_data_dir}/Zend/Mvc/composer.json
1087 %defattr(644,root,root,755)
1088 %doc library/Zend/Navigation/*.md
1089 %doc library/Zend/Navigation/composer.json
1090 %{php_data_dir}/Zend/Navigation
1091 %exclude %{php_data_dir}/Zend/Navigation/*.md
1092 %exclude %{php_data_dir}/Zend/Navigation/composer.json
1095 %defattr(644,root,root,755)
1096 %doc library/Zend/Paginator/*.md
1097 %doc library/Zend/Paginator/composer.json
1098 %{php_data_dir}/Zend/Paginator
1099 %exclude %{php_data_dir}/Zend/Paginator/*.md
1100 %exclude %{php_data_dir}/Zend/Paginator/composer.json
1102 %files Permissions-Acl
1103 %defattr(644,root,root,755)
1104 %doc library/Zend/Permissions/Acl/*.md
1105 %doc library/Zend/Permissions/Acl/composer.json
1106 %dir %{php_data_dir}/Zend/Permissions
1107 %{php_data_dir}/Zend/Permissions/Acl
1108 %exclude %{php_data_dir}/Zend/Permissions/Acl/*.md
1109 %exclude %{php_data_dir}/Zend/Permissions/Acl/composer.json
1111 %files Permissions-Rbac
1112 %defattr(644,root,root,755)
1113 %doc library/Zend/Permissions/Rbac/*.md
1114 %doc library/Zend/Permissions/Rbac/composer.json
1115 %dir %{php_data_dir}/Zend/Permissions
1116 %{php_data_dir}/Zend/Permissions/Rbac
1117 %exclude %{php_data_dir}/Zend/Permissions/Rbac/*.md
1118 %exclude %{php_data_dir}/Zend/Permissions/Rbac/composer.json
1121 %defattr(644,root,root,755)
1122 %doc library/Zend/ProgressBar/*.md
1123 %doc library/Zend/ProgressBar/composer.json
1124 %{php_data_dir}/Zend/ProgressBar
1125 %exclude %{php_data_dir}/Zend/ProgressBar/*.md
1126 %exclude %{php_data_dir}/Zend/ProgressBar/composer.json
1129 %defattr(644,root,root,755)
1130 %doc library/Zend/Serializer/*.md
1131 %doc library/Zend/Serializer/composer.json
1132 %{php_data_dir}/Zend/Serializer
1133 %exclude %{php_data_dir}/Zend/Serializer/*.md
1134 %exclude %{php_data_dir}/Zend/Serializer/composer.json
1137 %defattr(644,root,root,755)
1138 %doc library/Zend/Server/*.md
1139 %doc library/Zend/Server/composer.json
1140 %exclude %{php_data_dir}/Zend/Server/*.md
1141 %exclude %{php_data_dir}/Zend/Server/composer.json
1143 %files ServiceManager
1144 %defattr(644,root,root,755)
1145 %doc library/Zend/ServiceManager/*.md
1146 %doc library/Zend/ServiceManager/composer.json
1147 %{php_data_dir}/Zend/ServiceManager
1148 %exclude %{php_data_dir}/Zend/ServiceManager/*.md
1149 %exclude %{php_data_dir}/Zend/ServiceManager/composer.json
1152 %defattr(644,root,root,755)
1153 %doc library/Zend/Session/*.md
1154 %doc library/Zend/Session/composer.json
1155 %{php_data_dir}/Zend/Session
1156 %exclude %{php_data_dir}/Zend/Session/*.md
1157 %exclude %{php_data_dir}/Zend/Session/composer.json
1160 %defattr(644,root,root,755)
1161 %doc library/Zend/Soap/*.md
1162 %doc library/Zend/Soap/composer.json
1163 %{php_data_dir}/Zend/Soap
1164 %exclude %{php_data_dir}/Zend/Soap/*.md
1165 %exclude %{php_data_dir}/Zend/Soap/composer.json
1168 %defattr(644,root,root,755)
1169 %doc library/Zend/Stdlib/*.md
1170 %doc library/Zend/Stdlib/composer.json
1171 %{php_data_dir}/Zend/Stdlib
1172 %exclude %{php_data_dir}/Zend/Stdlib/*.md
1173 %exclude %{php_data_dir}/Zend/Stdlib/composer.json
1176 %defattr(644,root,root,755)
1177 %doc library/Zend/Tag/*.md
1178 %doc library/Zend/Tag/composer.json
1179 %{php_data_dir}/Zend/Tag
1180 %exclude %{php_data_dir}/Zend/Tag/*.md
1181 %exclude %{php_data_dir}/Zend/Tag/composer.json
1184 %defattr(644,root,root,755)
1185 %doc library/Zend/Test/*.md
1186 %doc library/Zend/Test/composer.json
1187 %{php_data_dir}/Zend/Test
1188 %exclude %{php_data_dir}/Zend/Test/*.md
1189 %exclude %{php_data_dir}/Zend/Test/composer.json
1192 %defattr(644,root,root,755)
1193 %doc library/Zend/Text/*.md
1194 %doc library/Zend/Text/composer.json
1195 %{php_data_dir}/Zend/Text
1196 %exclude %{php_data_dir}/Zend/Text/*.md
1197 %exclude %{php_data_dir}/Zend/Text/composer.json
1200 %defattr(644,root,root,755)
1201 %doc library/Zend/Uri/*.md
1202 %doc library/Zend/Uri/composer.json
1203 %{php_data_dir}/Zend/Uri
1204 %exclude %{php_data_dir}/Zend/Uri/*.md
1205 %exclude %{php_data_dir}/Zend/Uri/composer.json
1208 %defattr(644,root,root,755)
1209 %doc library/Zend/Validator/*.md
1210 %doc library/Zend/Validator/composer.json
1211 %{php_data_dir}/Zend/Validator
1212 %exclude %{php_data_dir}/Zend/Validator/*.md
1213 %exclude %{php_data_dir}/Zend/Validator/composer.json
1216 %defattr(644,root,root,755)
1217 %doc library/Zend/Version/*.md
1218 %doc library/Zend/Version/composer.json
1219 %{php_data_dir}/Zend/Version
1220 %exclude %{php_data_dir}/Zend/Version/*.md
1221 %exclude %{php_data_dir}/Zend/Version/composer.json
1224 %defattr(644,root,root,755)
1225 %doc library/Zend/View/*.md
1226 %doc library/Zend/View/composer.json
1227 %{php_data_dir}/Zend/View
1228 %exclude %{php_data_dir}/Zend/View/*.md
1229 %exclude %{php_data_dir}/Zend/View/composer.json
1232 %defattr(644,root,root,755)
1233 %doc library/Zend/XmlRpc/*.md
1234 %doc library/Zend/XmlRpc/composer.json
1235 %{php_data_dir}/Zend/XmlRpc
1236 %exclude %{php_data_dir}/Zend/XmlRpc/*.md
1237 %exclude %{php_data_dir}/Zend/XmlRpc/composer.json
1240 %defattr(644,root,root,755)
1241 %{php_data_dir}/ZendXml