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.
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
-
Install symplify/monorepo-builder
composer create-project symplify/monorepo-builder ../monorepo-builder
-
Bump interdependencies of packages to the next version
../monorepo-builder/bin/monorepo-builder bump-interdependency "^1.15.4"
-
Add git tag and push to this monorepo
-
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.4
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)