--
You received this message because you are subscribed to the Google Groups "cakephp-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cakephp-core...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
With external deps you (currently) mean PHPUnit and Composer, right? Somehow I still feel we aren't responsible for resolving these system depenencies.
They are system related and should be a responsibility of the person who is responsible for the system.
Relying on such a system dependency is OK. Documenting that in the installation process is easy.
Requirements:
- Composer, don't have it? Go get it and install it! ;-)
And even though I like the idea of customizing my CakePHP download I think there are some distinct differences between CakePHP and Twitter Bootstrap or Jquery UI.
Even though both can be considered as "frameworks" they are a different kind of framework. First of all they are no backend but a frontend/UI framework.
Both of them are just (an important) part of your application but not the core of your or even your application.
The reason why you can customize your download for them is a different than we have.
Where size for CSS & JS can matter it normally does not for backend stuff.
When you don't need a Twitter Bootstrap component, you can exclude it from the resulting file which will result in less traffic on your site.
But if you don't use a component/plugin or whatever for CakePHP, it doesn't matter (much) if you have it installed or not.
And yes buliding another PEAR or Composer was stupid!
But a shell that enables the user to add or to remove plugins from their composer.json file could fill that gap between our CakePHP plugin landscape and the functionality that composer gives us by default.
Where plugins.cakephp.org could be something like our own packagist.org.
Updating the plugins is a chore that can be done through composer itself.
If you want to promote some must have plugins, you could do that on the home.ctp (and/or the cookbook) by giving the user a copy & pastable plugin shell command.
This could look like:
Console\cake plugins add cakephp/debug_kit stable
You can add or remove a plugin (debug_kit) from an maintainer (cakephp) using a certain stability (stable) or may be a branch (would be "master").
- Right now I believe the best solution would be offering two files:
1. a zip file with everything you need (core, with/without app, tests)
2. a composer.json to get the same as point 1
- Keep out the system deps.
- Give the user a shell (console and/or web based) with which they can add or remove plugins.
Response inline.On Fri, Aug 2, 2013 at 11:49 AM, Ravage84 <ravag...@gmail.com> wrote:
With external deps you (currently) mean PHPUnit and Composer, right? Somehow I still feel we aren't responsible for resolving these system depenencies.They are system related and should be a responsibility of the person who is responsible for the system.
Relying on such a system dependency is OK. Documenting that in the installation process is easy.Yes, I mean adding `phpunit` to your composer.json if necessary. I do not mean bundling composer with the cakephp install.
Requirements:
- Composer, don't have it? Go get it and install it! ;-)
And even though I like the idea of customizing my CakePHP download I think there are some distinct differences between CakePHP and Twitter Bootstrap or Jquery UI.I am thinking only things we host on the CakePHP plugins site. Not some random other nonsense. If there ends up being a package that depends on TB or jQuery, then running composer locally will resolve that dependency. CakePHP official zips will likely not have this issue.
Even though both can be considered as "frameworks" they are a different kind of framework. First of all they are no backend but a frontend/UI framework.
Both of them are just (an important) part of your application but not the core of your or even your application.
The reason why you can customize your download for them is a different than we have.
Where size for CSS & JS can matter it normally does not for backend stuff.
When you don't need a Twitter Bootstrap component, you can exclude it from the resulting file which will result in less traffic on your site.
But if you don't use a component/plugin or whatever for CakePHP, it doesn't matter (much) if you have it installed or not.
And yes buliding another PEAR or Composer was stupid!
But a shell that enables the user to add or to remove plugins from their composer.json file could fill that gap between our CakePHP plugin landscape and the functionality that composer gives us by default.
Where plugins.cakephp.org could be something like our own packagist.org.That is planned.Updating the plugins is a chore that can be done through composer itself.Adding a single line to a json file is not a chore. Parsing json, while trivial, is not something we should do, since it just adds complexity.
If you want to promote some must have plugins, you could do that on the home.ctp (and/or the cookbook) by giving the user a copy & pastable plugin shell command.Would be nice to have documentation on adding a package to your composer file. I agree. Very easy to do.This could look like:
Console\cake plugins add cakephp/debug_kit stable
You can add or remove a plugin (debug_kit) from an maintainer (cakephp) using a certain stability (stable) or may be a branch (would be "master").
- Right now I believe the best solution would be offering two files:
1. a zip file with everything you need (core, with/without app, tests)No. My point is to allow people to download all in one packages. The above zip would be the base installation, and would be the one we promote over all others. But it would be one of many options.
2. a composer.json to get the same as point 1Sure.- Keep out the system deps.Eh, whatever.
- Give the user a shell (console and/or web based) with which they can add or remove plugins.No, thats just adding more code that no one will maintain. Cake 3.0 already has a bunch of cruft no one maintains/updates - woot bake! - and I think we should strive to remove complexity, not add another piece that would lead to people using it wrong.If you can't use json, maybe you shouldn't be using composer. I feel as though this is more of an education issue than anything else.
> "cakephp/debug_kit": "2.2.*"
"Run '
composer install
' after that. See the official Composer documentation for more information"
So we could add on each plugin page a generated short installation doc how to include it into your composer.json.
For http://plugins.cakephp.org/p/52-debug_kit e.g. could that be:
"For adding this plugin to your application, add the following line under "require" to your composer.json in your applicaion's root folder:"
> "cakephp/debug_kit": "2.2.*"
"Run '
composer install
' after that. See the official Composer documentation for more information"
php composer.phar require vendor/package:2.*
I assume plugins.cakephp.org could provide a periodically generated satis because I don't think we need a Symfony2 based Packagist application for the existing plugins page.
And if we add the plugins page as a repository to CakePHP's composer.json, people could search for packages (plugins) from their console.