Skip to content
/ zf1 Public

Monorepo of a fork of Zend Framework 1, with all components split into individual composer packages. PHP 5.3-8.3 compatible.

License

Notifications You must be signed in to change notification settings

zf1s/zf1

Repository files navigation

Monorepo for zf1s (Zend Framework 1) packages

Build Status

This is a monorepo of a fork of Zend Framework 1, made after it's reached its EOL.

All original framework's components have been split into individual packages, which can be installed separately with composer, e.g.

composer require zf1s/zend-*

where * may be one of: acl, amf, application, auth, barcode, cache, captcha, cloud, codegenerator, config, console-getopt, controller, crypt, currency, date, db, debug, dojo, dom, eventmanager, exception, feed, file, file-transfer, filter, form, gdata, http, json, layout, ldap, loader, locale, log, mail, markup, measure, memory, mime, mobile, navigation, oauth, openid, paginator, pdf, progressbar, queue, reflection, registry, rest, search, search-lucene, serializer, server, service, service-akismet, service-amazon, service-audioscrobbler, service-console, service-delicious, service-ebay, service-flickr, service-livedocx, service-rackspace, service-recaptcha, service-shorturl, service-slideshare, service-strikeiron, service-twitter, service-windowsazure, service-yahoo, session, soap, stdlib, tag, test, text, timesync, tool, translate, uri, validate, version, view, wildfire, xml, xmlrpc.

These packages will be maintained as long as we're using them, mainly just to keep it all working on new versions of PHP as they're released. Currently everything should be compatible with PHP 5.3-8.3. 5.2 support is dropped.

They may also contain some fixes, either for long-standing bugs, which haven't made their way into zf1 official repo before EOL, or newly found ones and (backwards compatible) adjustments (optimisations for composer autoloader mostly). Maybe even one or two new features.

Still, the main purpose is to allow working on legacy projects on more modern systems, while opening the possibility to migrate away from zf1 gradually, one component at a time.

Alternative Installation Method

You may also install the whole framework at once, using composer:

composer require zf1s/zf1

to easy up the transition period, but please keep in mind the recommended approach is to identify and install only the packages you need.

Changelog: here

Original README: click


How to Release

  1. Install symplify/monorepo-builder

    composer create-project symplify/monorepo-builder ../monorepo-builder
  2. Bump interdependencies of packages to the next version

    ../monorepo-builder/bin/monorepo-builder bump-interdependency "^1.15.6"
  3. Add git tag and push to this monorepo

  4. Push to the individual repos

    Note: you may need to cache your credentials otherwise git will ask for them on every operation (and there will be many)

    git config --global credential.helper store

    Split operation:

    ../monorepo-builder/bin/monorepo-builder split --max-processes=1 --tag=1.15.6

Note: I had no success splitting this repo on win os, so unix-based system is recommended. (or WSL) Please also note that monorepo-builder needs a LOT of disk space for the split operation. (I measured 15GB)