This concept is very controversial so your input can help a lot.
The idea is to keep Yii2 core small, fast and flexible moving things like zii widgets, webservices and even active record out of it. Things to keep are base ones like autoloading, events, routing or CLI support.
A package is some amount of structured code following a standard, documentation and a meta-description file. That’s where all non-core code goes. Package concept will allow to use Yii2 as an atomic micro-framework or as a full-blown solution like current Yii.
Meta file should include package name, version, author, brief description, a list of packages and their versions it depends on.
Package manager should be simple to use. When one tries to get a package, it should be able to automatically get all dependencies automatically. One should be able to add/remove any package at any time (of course, if it’s not required by another one).
ability to store packages at third-party servers
Currently we have extensions and one of the problems is that it’s time consuming to upload archives to Yii website when extension code is updated. Overall, it’s less time consuming to keep your code in a single place such as GitHub or your own server. So package manager should be able to install packages from different locations.
Since it will be hard to find a right package it’s a good idea to have a central repository. Same idea as current extensions but the difference is that one should only specify URL to the package meta file and Yii website will automatically update description, version number etc. from the package and provide a summary page. Another difference is that files will not be stored at Yii website.
Among with packages that are maintained by developers we can review and "approve" some packages. Ones with decent documentation and code. These will be marked as "officially approved". It will solve the problem with choosing a stable code to build production system on.