Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History


  • Date: 31 August 2011, 17:00-19:00 UTC
  • [Agenda]
  • Moderator: Pieter Kokx (nickname kokx)



This discussion was informed by the RFC on Modules.

The first portion of the meeting was a heated discussion about the definition of a module. Over the course of the conversation, we determined we needed to define several concepts, but principally "component" and "module". The consensus in the end were the following definitions:

  • A Component is one or more classes that address a specific problem.
  • A Library is a collection of components.
  • A Module is a set of standalone functionality that defines and/or consumes components, and optionally contains configuration and/or publically servable resources. As rdohms put it, a "module is a composition of components, templates, assets, controllers, and entities that compose a functional part of an application"
  • An Application is a collection of modules, libraries, and components.

There was general consensus on the above definitions, although not 100% agreement. We will discuss the definitions further on the list, as well as try and iron out the issues identified already in the RFC.


This discussion was informed by the RFC on Distribution.

Matthew outlined votes on the list surrounding the various questioned categorizations, and opened the floor for discussion.

First, there were some questions about what purposes the categories served. The answers were:

  • They could serve as "meta-packages" for distribution: fetch "core", and you get all the classes under that; etc.
  • From these, we can then choose which categories might compose a "standard" distribution, vs. a "full" distribution.
  • Knowing what might be part of the "standard" distribution, we can then determine what work needs to be done to call the framework "stable" for the purposes of release.

Over the discussion, we agreed on the following categories:

  • Core (basic, standalone functionality)
  • DB/Data Formats (DB, serialization, dom, etc.)
  • Security (authentication, authorization, identity)
  • i18n/l10n
  • MVC (controller, view, potentially "model-ish" interfaces)
  • everything else (services, queue, cloud, etc.)
    • these would likely need categorization as well, but we don't need to define them quite yet

The standard distribution would include:

  • Core
  • DB/Data Formats
  • Security
  • i18n/l10n
  • MVC

and the full distribution would encompass standard and everything else.

For purposes of stability, finishing up work on the standard distribution would suffice. Any additional functionality that is incomplete would be dropped for the initial release.

We also discussed how distribution of both the framework and modules might be accomplished. The Zend team already had plans to evaluate both Pyrus and phar. Seldaek (Jordi Boggiano) joined the meeting to bring our attention to a project he has developed, Composer; we agreed to evaluate that for our needs as well.


Matthew suggested that having a release of some sort for ZendCon would be good in terms of PR and getting some mindshare and testing around ZF2, and asked what stability we might want to aim for. While initially calling out "beta", consensus was that we don't want to lock down the API that soon, nor restrict what components might stabilize in that time frame; "alpha" would be much better. As Akrabat (Rob Allen) pointed out, development snapshots "are 'please play with this new bit' releases", and "alpha should allow us to show off building a website", while kokx (Pieter Kokx) notes that "a beta implies that its already workable and that should not give too many problems when going to the final version." As such, and alpha would make a good splash, while giving us flexibility to change the API as we get more feedback from users.


Timestamp Name Log
Aug 31 17:02:11 weierophinney Let's begin!
Aug 31 17:02:12 kokx oh, and paddy wants to tell us that you all should behave
Aug 31 17:02:23 DASPRiD kokx, oh
Aug 31 17:02:26   »» rdohms starts running
Aug 31 17:02:36 StormTide _
Aug 31 17:02:37 weierophinney kokx, take it away. We've had a request to start with modules
Aug 31 17:02:44 Seldaek yes
Aug 31 17:02:48 Seldaek if I may..
Aug 31 17:02:53 rdohms kokx: kick it!
Aug 31 17:03:04 kokx exactly, lets start!
Aug 31 17:03:11 DASPRiD rdohms, nah, if he kicks everyone, nobody can discuss
Aug 31 17:03:36 Seldaek regarding module themselves, I can't help much, but regarding distribution of said modules I'd like to present Composer as an option that wasn't considered before -

Aug 31 17:03:57 kokx modules, does someone want to start on that?
Aug 31 17:04:06 weierophinney kokx, I believe Seldaek has.
Aug 31 17:04:08 Seldaek more human readable things are available on

if you want a quick glance at the package manifest (a json file)

Aug 31 17:04:34 weierophinney Seldaek, the discussion today isn't really around packaging and distribution so much as what a module is
Aug 31 17:04:41 guilhermeblanco weierophinney: regarding the first uncertain item of ZF2 Modules
Aug 31 17:04:51 guilhermeblanco I have a question that would like to be discussed
Aug 31 17:04:54 weierophinney but, I'll note it for a future discussion/thread.
Aug 31 17:04:59 Seldaek weierophinney: alright, sorry aobut that
Aug 31 17:04:59 weierophinney guilhermeblanco, go for it
Aug 31 17:05:09 weierophinney Seldaek, no worries, and thanks for bringing it up!
Aug 31 17:05:11 weierophinney
Aug 31 17:05:12 guilhermeblanco at the same time that a Module must have config to be merged in app
Aug 31 17:05:23 guilhermeblanco we also need a module config that shouldn't be merged
Aug 31 17:05:33 bergelmir PHP: composer.json, Node.js: package.jso
Aug 31 17:05:39 weierophinney guilhermeblanco, example?
Aug 31 17:05:47 Seldaek weierophinney: I just wanted to raise attention to this because it's likely gonna be used by Sf2,, and I'm gonna talk with t3rob about TYPO3 v5 soon I hope
Aug 31 17:06:07 guilhermeblanco Sure... A resource instantiation for multiple subdomains that connects to DB
Aug 31 17:06:08 Seldaek weierophinney: so having ZF on board too would be amazing
Aug 31 17:06:11 kokx Seldaek: we will be discussing Distribution later today, so you should raise it again then
Aug 31 17:06:28 StormTide ok folks, can we step back here
Aug 31 17:06:34 guilhermeblanco You shouldn't connect to ALL db defined in all modules
Aug 31 17:06:34 Seldaek kokx: yeah I'm just not sure I'll be able to stick around long enough, I'll shut up now
Aug 31 17:06:35 StormTide First thing on the agenda is what is a module
Aug 31 17:06:38 guilhermeblanco just to the requested one
Aug 31 17:06:50 StormTide can we discuss that?
Aug 31 17:07:07 kokx I agree with StormTide, we first should determine the semantics of a module
Aug 31 17:07:33 StormTide i'll start if thats ok to kokx :0
Aug 31 17:07:36 weierophinney kokx, StormTide, I think guilhermeblanco is trying to elaborate on a specific of that document.
Aug 31 17:07:45 guilhermeblanco weierophinney: is this example valid to you?
Aug 31 17:07:47 StormTide weierophinney, we'll get to config
Aug 31 17:08:13 weierophinney guilhermeblanco, yes, but it's a specific detail of configuration. Bring it up in a bit.
Aug 31 17:08:18 weierophinney StormTide, you have the floor
Aug 31 17:08:27 ralphschindler i'd like to back up a bit further actually real quick
Aug 31 17:08:35 StormTide ralphschindler, i yeild
Aug 31 17:08:36 ralphschindler should 3rd party modules be editable
Aug 31 17:08:42 ralphschindler i'd argue no
Aug 31 17:08:51 StormTide ralphschindler, agreed
Aug 31 17:09:02 kokx ralphschindler: editable? what do you mean with 'editable' ?
Aug 31 17:09:02 guilhermeblanco ralphschindler: imho, no. It's like trying to edit a phar file.
Aug 31 17:09:09 DASPRiD +1 kokx
Aug 31 17:09:18 crash82 +1 kokx
Aug 31 17:09:27 rdohms +1 kokx
Aug 31 17:09:28 hhatfield +1 DASPRiD
Aug 31 17:09:44 ralphschindler kokx: meaning- you download a module, and there is zero expectation that you alter it in any way shape or form
Aug 31 17:09:44 DASPRiD hhatfield, don't start a recursion here
Aug 31 17:09:45 kokx ralphschindler: do you mean editing the files? or do you mean 'extending' parts of the module ?
Aug 31 17:09:52 ralphschindler i.e., you don't "patch" it
Aug 31 17:10:03 StormTide what is a module: I'm suggesting we use the name 'component', and that it is a package of code and resources
Aug 31 17:10:08 ralphschindler i'd argue the mode of tweaking a module would be by overriding
Aug 31 17:10:22 lubs ralphschindler: which brings us back to #1 - what is a module?
Aug 31 17:10:23 StormTide that component could inject code into any part of the system, or override any file or resource system-wide
Aug 31 17:10:26 weierophinney ralphschindler, I would expect that if you want to alter behaviour, you do so by overriding config in your app config file, or extending classes.
Aug 31 17:10:31 kokx ralphschindler: I don't get why you wouldn't want to allow patching of modules
Aug 31 17:10:44 lubs kokx: how do you upgrade a patched module?
Aug 31 17:10:47 DASPRiD StormTide, does that also include public files? (css, images, js…)
Aug 31 17:10:52 StormTide DASPRiD, yes
Aug 31 17:10:56 kokx lubs: apply the patch ?
Aug 31 17:10:57 rdohms +1 on not editable, config changes would happen in application config, 3rd party modules are "vendor"
Aug 31 17:10:59 ralphschindler well, if configurations become shipped within a module (or js, views, etc), they there needs to be an infrastructure in place to allow overriding
Aug 31 17:11:04 StormTide a template, theme, library, etc could all be a component
Aug 31 17:11:09 crash82 +1 rdohms
Aug 31 17:11:19 lubs i would say; override not patch
Aug 31 17:11:41 rdohms lubs: override but not in module code, in your own application/bundle
Aug 31 17:11:43 weierophinney StormTide, why do you want to change the name from module to component? It seems this bleeds into what we consider "components" w/in the ZF distribution already, and those do not contain things like configuration and public resources.
Aug 31 17:11:51 weierophinney Why is the term "module" not okay?
Aug 31 17:11:53 ArturBodera I use array_replace_recursive() on my php-array configs - overriding defaults with local server specifics.
Aug 31 17:12:05 kokx lubs: how would you be able to collaborate on a module then?
Aug 31 17:12:13 crash82 A module would be a group of processes(USer management for ex) I don't belive it should be seen has a component...
Aug 31 17:12:19 StormTide weierophinney, for clarity from the 'model' which is close to 'module' and google confusion
Aug 31 17:12:20 ArturBodera weierophinney: It hurts me that few people read my 3 posts about that on ML.
Aug 31 17:12:31 StormTide components are not 'the model part of zf' in my mind
Aug 31 17:12:37 kokx lubs: in my head, modules could be opensource projects
Aug 31 17:12:56 lubs kokx: which gets us back to point #1 that we decided to not discuss again. What is a module?
Aug 31 17:12:56 DASPRiD i so no reason against naming them "modules"
Aug 31 17:13:03 ArturBodera Is a module a collection of components?
Aug 31 17:13:09 weierophinney StormTide, but then we introduce a new issue of convoluting components in the distro with 3rd party code
Aug 31 17:13:19 weierophinney ArturBodera, potentially yes.
Aug 31 17:13:22 rizza ArturBodera: It could be.
Aug 31 17:13:25 DASPRiD A module is a collection of code and resources
Aug 31 17:13:30 DASPRiD I'd like that one
Aug 31 17:13:33 ralphschindler DASPRiD: +1
Aug 31 17:13:37 kokx DASPRiD: +1
Aug 31 17:13:38 ArturBodera Do we have 2 separate ways to distribute: components vs modules ?
Aug 31 17:13:42 StormTide weierophinney, i dont see a distinction between zend code and community code for components other than the naming convention, which we'll get to
Aug 31 17:13:54 rizza DASPRiD: Adding onto that "… that relates to each other"?
Aug 31 17:14:05 weierophinney StormTide, except that zend code doesn't contain configuration files or public assets.
Aug 31 17:14:06 DASPRiD rizza, sure
Aug 31 17:14:12 weierophinney I already noted that distinction.
Aug 31 17:14:13 rdohms component: fully functional piece of a application, that can be plugge into any other application and tweaked by config
Aug 31 17:14:13 StormTide weierophinney, it could
Aug 31 17:14:16 DASPRiD rizza, a module with resources which have nothing to do with the code would be useless
Aug 31 17:14:26 guilhermeblanco By definition, a module is a set of units that together build something, which can be from a furniture to an app
Aug 31 17:14:28 ArturBodera There is a more "puristic" approach: a "module" is the only term and a "module" can contain just a single php file with 1 single class.
Aug 31 17:14:35 StormTide weierophinney, why limit zend's module stuff, im sure they'd love a nice zfw component for zend server
Aug 31 17:14:37 rdohms includeing or not: services, templates, assets, entities etc..
Aug 31 17:14:40 StormTide and we'd love to use it
Aug 31 17:14:47 rizza DASPRiD: I know, just pre-empting the distinction before someone asks.
Aug 31 17:14:55 DASPRiD heh
Aug 31 17:15:16 guilhermeblanco so using the concept, a module can consume components, services, models, entities, assets and controllers to build a piece of an application, considering an application is a set of modules
Aug 31 17:15:21 weierophinney StormTide, we're not limiting – I'm just trying to figure out why you want to change a term well-known in ZF already (whether or not the functionality works well) at this time
Aug 31 17:15:30 weierophinney guilhermeblanco, +1
Aug 31 17:15:33 ArturBodera A thought: "Application module"
Aug 31 17:15:35 rizza guilhermeblanco: +1
Aug 31 17:15:39 StormTide weierophinney, im trying to define a new concept, so i think a new name is clearer.
Aug 31 17:15:44 mikaelkael guilhermeblanco: +1
Aug 31 17:15:50 lubs guilhermeblanco: +1
Aug 31 17:15:52 kokx weierophinney: I have the idea that some people want to go closer to the idea of Sf2's Bundles
Aug 31 17:15:53 rdohms a module should function on its own, where as a component provides functionality .. fi that makes sense to everyone
Aug 31 17:15:54 StormTide modules will get confused with the common modular directory structure of v1 days
Aug 31 17:15:59 weierophinney StormTide, I'd argue that's off-topic, then.
Aug 31 17:16:02 StormTide and with model which will still exist
Aug 31 17:16:04 crash82 +1 rdohms
Aug 31 17:16:10 DASPRiD StormTide, -1
Aug 31 17:16:13 rdohms guilhermeblanco: +1
Aug 31 17:16:16 weierophinney rdohms, +1
Aug 31 17:16:17 ralphschindler a library is made of up components, an application is made up of modules
Aug 31 17:16:27 ArturBodera Wait wait... what does "function on its own" mean?
Aug 31 17:16:31 hhatfield +1 ralphschindler
Aug 31 17:16:31 StormTide ralphschindler, whats the distinction between a library and a component?
Aug 31 17:16:33 kokx ralphschindler: +1
Aug 31 17:16:35 ArturBodera A module provdes functionality too
Aug 31 17:16:41 guilhermeblanco regardning component, it's a set of units that have an specific purpose, but cannot behave alone. It's like a chair feet.
Aug 31 17:16:44 kokx StormTide: a component is a part of the library
Aug 31 17:16:47 StormTide if my component overrides zend\db, then what
Aug 31 17:16:49 kokx
  • a library
Aug 31 17:16:51 weierophinney StormTide, a library is a collection of components
Aug 31 17:16:55 weierophinney He already said that.
Aug 31 17:16:56 kokx StormTide: then its probably called My\Db ?
Aug 31 17:17:10 rizza ArturBodera: I'd like to see the clarification of that as well. (re: rdohms comment)
Aug 31 17:17:15 StormTide kokx, hardly. what if i define another adapter for zend\db as part of my whatever
Aug 31 17:17:15 weierophinney StormTide, then it's a component that overrides zend\db. What's confusing ?
Aug 31 17:17:16 crash82 This talk is ... Are we talking about modules or components ?
Aug 31 17:17:16 ArturBodera \Zend\Db\Adapter\SuperRecentFoobar ---- component or a module?
Aug 31 17:17:30 kokx crash82: both
Aug 31 17:17:31 DASPRiD crash82, modules
Aug 31 17:17:31 StormTide this is why im freakin confused as to what we're calling things
Aug 31 17:17:31 ralphschindler StormTide:

Aug 31 17:17:34 weierophinney ArturBodera, adapter :-p
Aug 31 17:17:34 guilhermeblanco so component and library are the same.
Aug 31 17:17:40 ArturBodera weierophinney: ROTFL
Aug 31 17:17:46 DASPRiD guilhermeblanco, no
Aug 31 17:17:53 ArturBodera Need I remind you ... it's external... 3rd party ?
Aug 31 17:17:56 DASPRiD guilhermeblanco, ZF is a library, Zend\Db is a component
Aug 31 17:17:56 ralphschindler you can see the summary at the bottom
Aug 31 17:18:01 StormTide component == package of code and resoruces.
Aug 31 17:18:02 ArturBodera made by RecentFooBarCorp
Aug 31 17:18:04 StormTide thats my definition
Aug 31 17:18:18 Seldaek ArturBodera: adapter provided by a module would be my call
Aug 31 17:18:19 guilhermeblanco DASPRiD: ZF is a component too
Aug 31 17:18:24 DASPRiD StormTide, that also matches an application, which is a package of code and resources
Aug 31 17:18:30 guilhermeblanco because it has no purpose used standalone
Aug 31 17:18:30 DASPRiD so your application is a component?
Aug 31 17:18:34 StormTide DASPRiD, exactly
Aug 31 17:18:44 StormTide DASPRiD, i think a cms could be dropped in as a 'component' for example
Aug 31 17:18:48 DASPRiD in that case, component fits almost anything
Aug 31 17:18:50 ArturBodera So can we have an edge scenario: module = (1) component ?
Aug 31 17:18:51 hhatfield I expect a module to be a resource that adds to the end-user experience. I expect a component to provide functionality to developers.
Aug 31 17:18:56 kokx StormTide: I see that more as a module
Aug 31 17:18:58 StormTide DASPRiD, exactly what im getting at
Aug 31 17:19:00 DASPRiD StormTide, so it's ambigious
Aug 31 17:19:00 guilhermeblanco DASPRiD: No. Because your application can live standalone
Aug 31 17:19:01 StormTide core->components
Aug 31 17:19:05 weierophinney Okay, I propose the following so we can move on: Component == set of classes that address a specific task or problem area. Library == collection of components. Module == set of standalone functionality that incorporates or defines components, optionally configuration and public resources. Application == collection of modules.
Aug 31 17:19:05 kokx I don't think we are going to reach a consensus today on a definition of modules and components
Aug 31 17:19:21 DASPRiD weierophinney, +1
Aug 31 17:19:24 kokx weierophinney: +1
Aug 31 17:19:33 rizza weierophinney: +1
Aug 31 17:19:34 guilhermeblanco weierophinney: 100%
Aug 31 17:19:37 StormTide ok then
Aug 31 17:19:37 crash82 weierophinney, +1
Aug 31 17:19:38 weaverryan big +1 fwiw
Aug 31 17:19:39 StormTide modules it is
Aug 31 17:19:40 ralphschindler weierophinney: +1 (it's in line with our definitions historically speaking)
Aug 31 17:19:44 ArturBodera -1
Aug 31 17:19:54 ArturBodera because we then need to discuss modules AND components
Aug 31 17:19:56 ArturBodera separately
Aug 31 17:20:06 ArturBodera architecture, namespaces, distribution etc.
Aug 31 17:20:09 weierophinney ArturBodera, we'll just discuss modules today, as that's on the agenda.
Aug 31 17:20:20 ArturBodera weierophinney: only if we define them this way
Aug 31 17:20:30 StormTide ArturBodera, has a point
Aug 31 17:20:31 weierophinney ArturBodera, votes indicate that's the consensus.
Aug 31 17:20:32 StormTide why do we need two
Aug 31 17:20:37 StormTide why is a component different than a module
Aug 31 17:20:44 ralphschindler StormTide: read the recap
Aug 31 17:20:47 rdohms weierophinney: +1
Aug 31 17:20:49 rizza We just voted on this.
Aug 31 17:20:50 ralphschindler in the link above
Aug 31 17:20:53 ArturBodera \Zend\Captcha\Adapter\LazyEye ?
Aug 31 17:20:54 weierophinney a module could provide a component and/or consume components.
Aug 31 17:20:56 guilhermeblanco StormTide: yes. A module can live standalone, a component not
Aug 31 17:20:57 StormTide ralphschindler, i understand the terming, but why?
Aug 31 17:21:02 ArturBodera Module "LazyEye Captcha" ?
Aug 31 17:21:08 DASPRiD StormTide, a moduel is something a use can install and he can use it. a component is something a programmer needs
Aug 31 17:21:15 DASPRiD *a user
Aug 31 17:21:20 kokx please ArturBodera, let it go, we just voted on this
Aug 31 17:21:24 farrelley_ lets move on
Aug 31 17:21:25 StormTide DASPRiD, we've not come to installation yet,
Aug 31 17:21:29 crash82 DASPRiD, +1
Aug 31 17:21:31 kokx I suggest we move on
Aug 31 17:21:37 StormTide but ok
Aug 31 17:21:38 DASPRiD yeah lets move on
Aug 31 17:21:40 StormTide 'modules' it is
Aug 31 17:21:44 weierophinney So, considering specifics of the RFC....
Aug 31 17:21:45 StormTide doesnt matter what we call em
Aug 31 17:21:48 kokx should we talk about the RFC of Akrabat away ?
Aug 31 17:21:48 StormTide just we need to agree
Aug 31 17:22:10 weierophinney one thing I mentioned on the list is: perhaps one solution to the configuration issue would be to add import functionality to Zend\Config.
Aug 31 17:22:15 StormTide /s/components/modules in my mind. (why we need components now im not sure, but whatever)
Aug 31 17:22:24 intiilapa DASPRiD: +1
Aug 31 17:22:26 weierophinney guilhermeblanco, would that potentially solve what you describe?
Aug 31 17:22:36 guilhermeblanco weierophinney: hm... yes and no
Aug 31 17:22:39 StormTide weierophinney, -1 to import
Aug 31 17:22:42 guilhermeblanco we have 2 situations here
Aug 31 17:22:46 StormTide we need to 'get to' config
Aug 31 17:22:53 guilhermeblanco 1- We need to merge (otherwise routing would fail)
Aug 31 17:22:57 StormTide "Should Zend MVC be a module?"
Aug 31 17:22:59 StormTide next on the list
Aug 31 17:23:05 ArturBodera array_merge_recursive() folks
Aug 31 17:23:14 guilhermeblanco 2- We can't merge, otherwise it'd bootstrap DBs unecessarily
Aug 31 17:23:16 weierophinney StormTide, that's not on the list.
Aug 31 17:23:23 intiilapa StormTide: why you don't want import?
Aug 31 17:23:23 StormTide
Aug 31 17:23:24 DASPRiD ArturBodera, array_replace_recursive, please
Aug 31 17:23:33 StormTide weierophinney, i didnt add it
Aug 31 17:23:37 Seldaek ArturBodera: that doesn't account for ordering, and that doesn't account for things that have to be merged vs things that have to be replaced
Aug 31 17:23:37 ArturBodera DASPRiD: yeah, my bad, a typo
Aug 31 17:23:38 weierophinney guilhermeblanco, import imports a configuration in place, and then merges.
Aug 31 17:23:41 kokx StormTide: its a clearly a component in that definition, and its not on the agenda either
Aug 31 17:23:42 StormTide its on the list tho
Aug 31 17:23:49 StormTide kokx, its a component?
Aug 31 17:23:50 StormTide wtf
Aug 31 17:23:52 StormTide im confused now
Aug 31 17:23:58 ArturBodera kokx: it's not a component.. MVC = module
Aug 31 17:24:04 StormTide core->modules->components
Aug 31 17:24:05 ralphschindler so the question here is, are multiple sources of configurations managed as multiple named entities, or a singular hierachical entity within a given runtime
Aug 31 17:24:15 guilhermeblanco weierophinney: in which situation it wouldn't call import then?
Aug 31 17:24:16 weierophinney StormTide, ArturBodera you're getting ahead of the discussion.
Aug 31 17:24:24 StormTide weierophinney, you've jumped to config
Aug 31 17:24:27 DASPRiD ralphschindler, i'd vote vor multiple entities
Aug 31 17:24:31 crash82 StormTide, "Should Zend MVC be a module?" good question since it's a group of components and has specific usage
Aug 31 17:24:32 StormTide which is like 8 down the list
Aug 31 17:24:34 weierophinney guilhermeblanco, well, you could place overrides after the import, which would ensure the overrides occur.
Aug 31 17:24:44 StormTide we have an agenda
Aug 31 17:24:57 hhatfield +1 StormTide
Aug 31 17:25:12 guilhermeblanco weierophinney: sorry, I still didn't get the whole picture
Aug 31 17:25:12 hhatfield I don't think we've made it through the "What is a module" list yet
Aug 31 17:25:16 rizza StormTide: +1
Aug 31 17:25:19 ArturBodera +1
Aug 31 17:25:25 ralphschindler i guess you're right
Aug 31 17:25:37 guilhermeblanco I can see the value of import, but I can't see how it would act for bootstrap only to be loaded module
Aug 31 17:25:45 rdohms weierophinney: will import act on specifics? or the whole file?
Aug 31 17:25:49 StormTide bangs head on desk ... what is a module
Aug 31 17:25:57 ArturBodera
Aug 31 17:25:59 DASPRiD poor desk
Aug 31 17:26:00 StormTide cuz clearly we're not agreed
Aug 31 17:26:01 weierophinney guilhermeblanco, maybe I'm not understanding the whole situation you're describing.
Aug 31 17:26:05 weierophinney rdohms, the whole file.
Aug 31 17:26:14 weierophinney but... it could potentially grab just a sub tree out of it.
Aug 31 17:26:18 weierophinney I've seen both approaches.
Aug 31 17:26:41 weaverryan but if you can import, then you can separate the pieces into different files, only import what you need
Aug 31 17:26:46 guilhermeblanco weierophinney: under certain situations, I just want to bootstrap resources of a module IF the module is the "to be loaded" one
Aug 31 17:26:46 rdohms StormTide: module is a composition of compoenents, templates, assets, controllers entities that compose a functional part of an application
Aug 31 17:26:47 weaverryan just like separating templates into smaller pieces
Aug 31 17:26:49   »» ArturBodera rolls eyes and waits for folks to figure out array_replace_recursive() so we can move to "what is a module" again
Aug 31 17:26:52 guilhermeblanco that's my need
Aug 31 17:26:56 StormTide rdohms, +1 to that
Aug 31 17:26:57 weierophinney guilhermeblanco, ah, right
Aug 31 17:27:03 weierophinney too specific to discuss right now.
Aug 31 17:27:16 guilhermeblanco weierophinney: not really.
Aug 31 17:27:23 StormTide everyone agree with the rdohms's module definition?
Aug 31 17:27:30 rdohms StormTide: that is what was described .. being all those piece optional.. so oyu might not have any templates, or not have controllers.. so forth
Aug 31 17:27:35 guilhermeblanco If you define that application bootstraps all modules... we're messed then
Aug 31 17:27:39 StormTide rdohms, +1
Aug 31 17:27:40 rizza So fragmented...
Aug 31 17:27:41 guilhermeblanco that's how ZF1 does currently
Aug 31 17:27:43 weierophinney rdohms, +1
Aug 31 17:27:46 ArturBodera Can Zend\Config has a good merge capabilities + ordering ? would that solve each case ?
Aug 31 17:27:48 guilhermeblanco rdohms: +1
Aug 31 17:27:55 StormTide ok, so if we're agreed on that definition
Aug 31 17:27:59 StormTide "is mvc a module"
Aug 31 17:28:02 ralphschindler StormTide: we can have the "how does a module differ from a component" on the mailing list, i think most people here understand the differences
Aug 31 17:28:40 weierophinney StormTide, it could be. I think it would be better to have it as a metapackage for distribution.
Aug 31 17:28:55 StormTide (thats a huge question of architecture fyi)
Aug 31 17:28:55 guilhermeblanco ArturBodera: Zend\Config would partially solve the issue. Dependency between modules would only be solved by the introduce of a DAG
Aug 31 17:28:55 rizza ralphschindler: +1
Aug 31 17:28:55 DASPRiD Could we just do one discussion at a time? I see two different discussions in here right now
Aug 31 17:28:55 StormTide ralphschindler, it goes to the architecture which we're working out here
Aug 31 17:28:55 intiilapa StormTide: a module is a Blog or Forum, and Zend MVC is a component
Aug 31 17:28:55 StormTide ralphschindler, is mvc a module
Aug 31 17:28:56 weierophinney That allows it to be installed at system-level if desired.
Aug 31 17:28:59 StormTide weierophinney, now we're getting somewhere.... ok meta-module, containing other modules
Aug 31 17:29:18 StormTide +1
Aug 31 17:29:19 ralphschindler ok, in other words, its not is_a here, its has_a
Aug 31 17:29:20 StormTide works for me
Aug 31 17:29:37 StormTide MVC = meta-module that defines dependencies on several other modules
Aug 31 17:29:38 weierophinney StormTide, no, set of components on which modules might be built.
Aug 31 17:29:57 ArturBodera omg
Aug 31 17:30:05 StormTide weierophinney, ugh component confusion again
Aug 31 17:30:10 ralphschindler modules can be MVC enabled (or not), components cannot be MVC enabled
Aug 31 17:30:12 StormTide ok take router
Aug 31 17:30:14 weierophinney StormTide, what I meant by meta-package is in terms of the distribution mechanism – in Pyrus, bundles (which basically define sets of packages to install)
Aug 31 17:30:16 StormTide it has ties to dipatcher
Aug 31 17:30:25 StormTide it has ties to other things
Aug 31 17:30:25 DASPRiD StormTide, it doesn't
Aug 31 17:30:30 StormTide router is a module right/
Aug 31 17:30:32 intiilapa ralphschindler: +1
Aug 31 17:30:34 StormTide mvc is a meta-module?
Aug 31 17:30:36 DASPRiD router is a component
Aug 31 17:30:39 ralphschindler NO
Aug 31 17:30:41 weierophinney DASPRiD, +1
Aug 31 17:30:43 StormTide ugh, wtf is a component
Aug 31 17:30:45 intiilapa DASPRiD: +1
Aug 31 17:30:51 ralphschindler really StormTide ?
Aug 31 17:31:04 weierophinney StormTide, I defined it above. One or more classes that solve a discrete problem
Aug 31 17:31:05 DASPRiD StormTide, Zend\Db, Zend\Router, Zend\Controller, all those are components
Aug 31 17:31:15 kokx StormTide: Component == set of classes that address a specific task or problem area
Aug 31 17:31:21 ArturBodera I'd vote for component = module to clear up distribution nomenclature. I.e. I install FooBarAdapter module to have FooBar adapter (which is a php class)
Aug 31 17:31:22 StormTide ralphschindler, really, because in everything ive tried to propose theres no distinction between a module/component/whateveryouwantotcallit
Aug 31 17:31:24 Akrabat component is still as defined in ZF1? Zend\Xxx
Aug 31 17:31:30 StormTide why would we package two separate things
Aug 31 17:31:35 weierophinney ArturBodera, -1
Aug 31 17:31:37 kokx Akrabat: yes
Aug 31 17:31:46 DASPRiD Akrabat, riht
Aug 31 17:31:51 StormTide weierophinney, why cant that be done as a module in itself
Aug 31 17:31:57 ArturBodera zf install foobar ---- does it install a component or a module?
Aug 31 17:31:58 StormTide how do i override a component from a module
Aug 31 17:31:59 weierophinney StormTide, we've defined it here. If you're having trouble, ask on the list for a clarification.
Aug 31 17:32:07 intiilapa Zend* = component and Application\Quickstart = module
Aug 31 17:32:12 StormTide im not the one having trouble imo
Aug 31 17:32:25 weierophinney The votes disagree with you.
Aug 31 17:32:30 StormTide weierophinney, do you understand what i've proposed
Aug 31 17:32:44 StormTide or are we still off in 'what the hell is kevin on about' land
Aug 31 17:32:51 weierophinney Frankly, yes.
Aug 31 17:32:51 guilhermeblanco \o/ stupid network
Aug 31 17:32:57 Akrabat rdohms definition of a module as "a composition of compoenents, templates, assets, controllers entities that compose a functional part of an application" seems to naturally follow on
Aug 31 17:33:31 DASPRiD right, a module can deliver components
Aug 31 17:33:32 StormTide weierophinney, im saying we only need one, super module concept, and everything can go in that architecture
Aug 31 17:33:32 ArturBodera #zf install foobar (does it install a module or component with name "foobar"?)
Aug 31 17:33:40 StormTide components, resources, whatever else
Aug 31 17:33:44 kokx ok, we are basically discussing this for about 30 minutes now, 15 minutes over time, I think its better to move on and discuss the distribution and continue this discussion on a later meeting, or on the ML
Aug 31 17:33:46 StormTide its all modules to me
Aug 31 17:33:56 DASPRiD StormTide, components can be part of a module
Aug 31 17:34:10 DASPRiD that doesn't mean that module === component
Aug 31 17:34:14 StormTide DASPRiD, so how is mvc a meta-module without sum-modules
Aug 31 17:34:19 StormTide sub even
Aug 31 17:34:23 ArturBodera StormTide: +1 that makes sense
Aug 31 17:34:24 DASPRiD mvc is a meta-package
Aug 31 17:34:29 guilhermeblanco StormTide: I understand your issue. We have it here too. But a module can contain components too, in ZF1 structure it's impossible without having to implement your own startMvc
Aug 31 17:34:42 Akrabat obvious question: is every component supplied by ZF2 part of a module?
Aug 31 17:34:43 weierophinney StormTide, I see a finer-grained distinction between modules and components. I think a module can contain components, sure, but the individual components of the Zf library stand alone, and can be used with or without a concept of modules.
Aug 31 17:34:46 intiilapa a module is just a container
Aug 31 17:34:47 ralphschindler StormTide:

Aug 31 17:34:50 StormTide guilhermeblanco, yes, zf1 is totally fubar in this regard and its what im trying to address
Aug 31 17:34:53 guilhermeblanco guilhermeblanco: but what you didn't get is that a module contains compoenents
Aug 31 17:34:58 crash82 better description adding to the one from rdohms A module also is a logical part to the end user
Aug 31 17:35:04 StormTide weierophinney, aha, ok thats what im getting at
Aug 31 17:35:04 Xerkus i don't care how we will call it. we wasting time
Aug 31 17:35:07 guilhermeblanco StormTide: it was already adressed by this new definition
Aug 31 17:35:11 rdohms components cannot have templates/config files/
Aug 31 17:35:15 StormTide weierophinney, i want a core and modular architecture as STANDARD
Aug 31 17:35:23 StormTide for zf2 going forward
Aug 31 17:35:28 StormTide not zf1+modules
Aug 31 17:35:28 rdohms it can offer classes/objects to be used to build services/controllers etc
Aug 31 17:35:33 rizza ralphschindler: Nice summary.
Aug 31 17:35:47 ralphschindler thanks rizza , I'm sure there is more though
Aug 31 17:35:49 StormTide throw out the idea of the library and application contexts
Aug 31 17:35:50 intiilapa new subject?
Aug 31 17:35:58 StormTide what would zf2 look like if it were a minimal core that could load modules
Aug 31 17:36:11 kokx ralphschindler's summary +1
Aug 31 17:36:13 StormTide and modules were things like router/dispatcher
Aug 31 17:36:14 StormTide etc
Aug 31 17:36:16 ArturBodera ralphschindler: you didn't touch distribution
Aug 31 17:36:21 StormTide mvc was a meta-module
Aug 31 17:36:25 StormTide zform was a module
Aug 31 17:36:25 StormTide etc
Aug 31 17:36:29 kokx Akrabat: we are not discussing distribution yet
Aug 31 17:36:35 kokx
  • sorry ArturBodera I meant
Aug 31 17:36:40 Akrabat ArturBodera: distribution really doesn't matter in terms of definition
Aug 31 17:36:40 DASPRiD StormTide, meta-package
Aug 31 17:36:41 ralphschindler ArturBodera: defining a component or module is not dependent on how its distributed
Aug 31 17:36:51 intiilapa kokx: whats is the subject?
Aug 31 17:36:58 kokx intiilapa: currently, still modules
Aug 31 17:36:59 ArturBodera ralphschindler: it is.... in one case.
Aug 31 17:37:02 StormTide DASPRiD, in my mind, module is simply a collection of code and resources
Aug 31 17:37:08 ArturBodera When you use terms like pyrus meta-package.
Aug 31 17:37:13 kokx but I suggest that we move on to distribution, because this is getting nowhere
Aug 31 17:37:16 StormTide theres no distinction between packages/components/bundles/meta wahtever
Aug 31 17:37:18 ArturBodera meta-package consisting of ..... modules?
Aug 31 17:37:24 farrelley_ thanks kokx...
Aug 31 17:37:27 weierophinney Can we move on, please?
Aug 31 17:37:33 StormTide kokx, if we move on, we've decided something, and probably fubar'd it
Aug 31 17:37:36 farrelley_ +1 weierophinney
Aug 31 17:37:44 kokx StormTide: we didn't decide on anything yet
Aug 31 17:37:49 ralphschindler lets let kokx give us a summary and direction =====
Aug 31 17:37:55 StormTide kokx, we cant define packaging until we know what the hell a module is
Aug 31 17:37:57 StormTide and i still dont know
Aug 31 17:37:59   »» ArturBodera hails to kokx
Aug 31 17:38:00 kokx thats why I'm moving on, because it isn't getting anywhere anyways
Aug 31 17:38:10 ArturBodera kokx: moderate
Aug 31 17:38:11 StormTide this is a blocker to me
Aug 31 17:38:14 weierophinney I'd like to interject here, please.
Aug 31 17:38:21 kokx go ahead weierophinney
Aug 31 17:38:23 StormTide weierophinney, you have the floor
Aug 31 17:38:31 weierophinney StormTide, ArturBodera, the two of you seem to be the only ones who have a problem with the definitions.
Aug 31 17:38:47 iH8 i suggest modules/components need to be addressed in the ML again, and be back up on the agenda next week for final voting or so
Aug 31 17:38:52 weierophinney Several of us have outlined a consistent idea of the differences between components and modules.
Aug 31 17:38:58 iH8 and move on plase
Aug 31 17:38:59 weierophinney and there have been a lot of +1's for those.
Aug 31 17:39:12 weierophinney I think we should take those as the definitions and move on.
Aug 31 17:39:19 kokx weierophinney: +1
Aug 31 17:39:21 DASPRiD +1
Aug 31 17:39:25 rizza +1
Aug 31 17:39:25 guilhermeblanco weierophinney: just to recap... will we have container for modules?
Aug 31 17:39:27 intiilapa 17:40 UTC
Aug 31 17:39:28 Bittarman weierophinney +1
Aug 31 17:39:31 intiilapa weierophinney: +1
Aug 31 17:39:33 StormTide can i respond to that
Aug 31 17:39:39 guilhermeblanco like a module containing modules?
Aug 31 17:40:02 DASPRiD guilhermeblanco, you mean like, submodules?
Aug 31 17:40:08 guilhermeblanco DASPRiD: yes
Aug 31 17:40:09 kokx ok, so ralphschindler made a nice simple summary of the definition for us:

Aug 31 17:40:14 rdohms weierophinney: +1
Aug 31 17:40:17 kokx
  • definitions
Aug 31 17:40:17 weierophinney guilhermeblanco, we could potentially add that as a requirement. I think making amodule dependent on another might make more sense. I see no problems with submodules in practice, though.
Aug 31 17:40:23 DASPRiD guilhermeblanco, iirc that was addresses, and there can be an unlimited depth
Aug 31 17:40:35 rdohms guilhermeblanco: -1
Aug 31 17:40:37 kokx and I suggest we move on to Distribution
Aug 31 17:40:51 weierophinney kk, let me update the page with the vote tally – I have it ready.
Aug 31 17:40:59 weierophinney (re: distribution, that is)
Aug 31 17:41:26 kokx weierophinney: you created an RFC for that, so do you want to start?
Aug 31 17:41:29 StormTide your 1's reflect zero discussion of the architectural idea, but define what we have currently as zf1 + modules. You're trying to make a determination on my architectural concepts by setting a definition in but a few lines. If we define zfw2 as zf1 components user modules. We've defined something. Its not what I envision at all
Aug 31 17:41:40 guilhermeblanco weierophinney: ok. Because there can be "private" modules that only have some functionality and could be seen inside of that module. It's like the visibility of classes inside a namespace that unfortunately, PHP does not support.
Aug 31 17:42:01 StormTide If theres no interest in discussing a core->module architecture, fine, i'll give up and go away
Aug 31 17:42:22 StormTide but i think we're going to lose a lot of potential for what zf2 could have been
Aug 31 17:42:38 kokx StormTide: please, drop it, we're discussing Distribution now
Aug 31 17:42:54 StormTide whatever. best luck. im out.
Aug 31 17:43:02 weierophinney regarding distribution
Aug 31 17:43:08 ralphschindler StormTide: we need to have a longer discussion in the mailing list so that we can share our vision of these definitions in a way that you can clearly see what we're talking about
Aug 31 17:43:19 iH8 ralphschindler +1
Aug 31 17:43:20 ralphschindler its clear we're not seeing the same vision
Aug 31 17:43:25 kokx ralphschindler: +1
Aug 31 17:44:00 guilhermeblanco Re Distribution. I'd rather prefer a per need component than include components that applications might never use, like filter, validator, db
Aug 31 17:44:03 weierophinney StormTide, to be honest, I've asked for concrete proposals/RFCs from you about your vision numerous times. To bring up differences in this forum makes it very hard to discuss. We have concrete definitions out there for the terminology we're using.
Aug 31 17:44:19 weierophinney guilhermeblanco, that's the plan, to an extent.
Aug 31 17:44:31 guilhermeblanco weierophinney: but you marked these component as core ones
Aug 31 17:44:37 zfran guys, sorry to interrupt, but it might be a good idea to write where the irc meetings happen in the wiki for those of us who don't hung out here frequently. I found in which channel it was through a Google+ post.
Aug 31 17:44:42 weierophinney We're investigating Pyrus, and ralphschindler and I are going to play with ways we can package components individually this week and next.
Aug 31 17:44:52 weierophinney zfran, it is in the wiki.
Aug 31 17:45:05 hhatfield
Aug 31 17:45:06 weierophinney guilhermeblanco, the ones on the list are really broad categories.
Aug 31 17:45:06 StormTide weierophinney, ive shared what I have on the ml's, as requested. Then you go and define things get a few +1's and move on. fine. But I don't feel ive been heard out, and i think we're moving ahead anyway.
Aug 31 17:45:12 Seldaek weierophinney: so, may I come back to composer now?
Aug 31 17:45:14 guilhermeblanco weierophinney: that's a good way to go. But is Pyrus mature enough for that... I'm not 100% sure on this
Aug 31 17:45:21 weierophinney Seldaek, give us a few minutes.
Aug 31 17:45:26 Seldaek sure
Aug 31 17:45:30 StormTide so best luck, i'm going to sod off now.
Aug 31 17:45:42 ArturBodera weierophinney: like a broken record are you also researching ways of distributing "modules" (in recent nomenclature) ?
Aug 31 17:45:47 weierophinney guilhermeblanco, It's very stable, just missing a few features before they want to call it that.
Aug 31 17:45:54 weierophinney ArturBodera, yes, give me a sec.
Aug 31 17:46:09 weierophinney guilhermeblanco, the idea behind the groupings is thus:
Aug 31 17:46:19 weierophinney
  • first, to define what we need to finish to call ZF2 "stable"
Aug 31 17:46:21 rizza ArturBodera: I think we discussed briefly last meeting about coming up with a platform that would be kind of like
Aug 31 17:46:24 zfran doh, sorry, didn't look in the main irc meeting page .
Aug 31 17:46:37 rizza But with actual installation.
Aug 31 17:46:40 weierophinney
  • second, to define "metapackages" that can be installed in one lump – either via a package distribution or compiled packages.
Aug 31 17:47:07 weierophinney So, the main thing right now is determining where various components listed should sit.
Aug 31 17:47:21 weierophinney I'll sum up votes I saw on the list here for the ones marked as questions
Aug 31 17:47:49 weierophinney
  • Memory: votes for both core and extras (I think both PDF and Search use it, though, which may nudge to core)
Aug 31 17:48:00 weierophinney
  • ACL/Auth/Identity: votes for core
Aug 31 17:48:06 weierophinney
  • i18n/l10n: votes for core
Aug 31 17:48:13 weierophinney
  • queue: votes for extensions
Aug 31 17:48:30 weierophinney
  • JS: votes for extensions
Aug 31 17:48:36 ArturBodera are you also counting counter-votes ("no" votes) ?
Aug 31 17:48:40 weierophinney
  • debug: voted mostly for core.
Aug 31 17:48:58 weierophinney ArturBodera, yes – most of these have votes in both directions; I'm summarizing the direction
Aug 31 17:49:03 weierophinney I'll post votes when done
Aug 31 17:49:08 weierophinney Wildfire: extras
Aug 31 17:49:19 weierophinney
  • Tool: undecided – either core or mvc
Aug 31 17:49:26 weierophinney
  • Mail: core
Aug 31 17:49:29 weierophinney ALSO
Aug 31 17:49:56 weierophinney StormTide proposed a "DB" or "Data Formats" category that could include DB, Json, DOM, and Session
Aug 31 17:50:14 guilhermeblanco weierophinney: we're able to vote on ML or somewhere else?
Aug 31 17:50:15 weierophinney Alessandro P proposed a Dev/Debug category for Debug, Testing, tool, and wildfire
Aug 31 17:50:28 weierophinney guilhermeblanco, it was on the ML – I'm summarizing, so we can discuss
Aug 31 17:50:30 DASPRiD weierophinney, isn't Zend\Json used by some core components already?
Aug 31 17:50:33 intiilapa weierophinney: do we need categories?
Aug 31 17:50:53 weierophinney Finally, Matthew C suggested a security category for acl, auth, ident, and potentially form; StormTide seconded.
Aug 31 17:50:58 lubs JSON - imo should be under something like Zend\Serializer\Json (then replace Json w/ Php, Bson, etc)
Aug 31 17:51:16 weierophinney intiilapa, the idea is to make it easy to pick and choose suites of functionality, as well as to determine what we need to finish to go stable.
Aug 31 17:51:22 Akrabat I hate to say this: what's the difference between a category and a meta-package?
Aug 31 17:51:23 weierophinney lubs, agreed.
Aug 31 17:51:31 weierophinney Akrabat, basically the same.
Aug 31 17:51:43 weierophinney so... opening the floor for discusssion.
Aug 31 17:51:45 Akrabat ok - so not another way to slice and dice
Aug 31 17:51:47 ArturBodera lubs: it's not always "serializing". It might be used for other tasks, hence "Formats\" might fit better.
Aug 31 17:51:47 Seldaek weierophinney: sorry to push this, but I have to run soon, and this kinda relates to the discussion at hand.
Aug 31 17:51:55 weierophinney Seldaek, go for it.
Aug 31 17:52:17 weierophinney (and it sounds like ralphschindler and I should add composer to our list of things to investigate)
Aug 31 17:52:36 lubs ArturBodera: for some things; I agree... but in PHP you have two items with bson / json - encode / decode. its practically the same as base64 (encode decode)
Aug 31 17:52:49 Seldaek weierophinney: with composer (reminder:


) - you'd basically start with setting up your composer.json (this could be anything else though if you want to handle configuration of it differently), saying your application requires packages X, Y, Z

Aug 31 17:52:59 intiilapa weierophinney: so download by distribution, category, and component?
Aug 31 17:53:03 Seldaek weierophinney: if you pick ACL, and ACL depends on Auth, it brings it along with it
Aug 31 17:53:12 kokx Seldaek: could you start at the beginning, as in, what is Composer?
Aug 31 17:53:20 Seldaek kokx: fair enough
Aug 31 17:53:27 weierophinney intiilapa, download a specific component, a category, or the full distribution
Aug 31 17:53:32 kokx because I'm pretty sure that not everyone here is familiar with it
Aug 31 17:53:44 lubs alright mtg time - will catch up later and respond more in the ML.
Aug 31 17:53:51 DASPRiD kokx, i'd guess that it is something like pyrus
Aug 31 17:54:00 Seldaek kokx: it's basically been naderman (of phpbb fame) and me working on this for a few months now. We have a dependency solver in place and basic installer etc.
Aug 31 17:54:15 kokx Seldaek: don't know naderman either
Aug 31 17:54:23 Seldaek kokx: that's a person
Aug 31 17:54:27 rizza Seldaek: And so it's a package manager?
Aug 31 17:54:31 DASPRiD i thought it's a bot
Aug 31 17:54:39 Seldaek kokx: it is something like Pyrus/PEAR, but more inspired from npm/bundler than PEAR
Aug 31 17:54:48 kokx I thought it would be the drop-in for Zend\Magic 2.0
Aug 31 17:54:59 rizza I love npm… so I think it'd be worthwhile investigating just based on that.
Aug 31 17:55:02 kokx Seldaek: ok, thanks
Aug 31 17:55:06 weierophinney Seldaek, can it do metapackages (packages that simply point to groups of other packages and versions)?
Aug 31 17:55:08 DASPRiD kokx, no, that was Zend\PackageManager
Aug 31 17:55:11 intiilapa bundler for ruby?
Aug 31 17:55:17 Seldaek intiilapa: yes
Aug 31 17:55:40 Seldaek weierophinney: well, nothing prevents you from having a package that's empty and just defines dependencies to other packages
Aug 31 17:56:12 Seldaek but imo this is not necessary
Aug 31 17:56:13 weierophinney that's what I was getting at, thanks!
Aug 31 17:56:34 weierophinney So, it sounds like we have a third option to investigate for actual distribution.
Aug 31 17:56:47 weierophinney Seldaek, anything else you want to discuss?
Aug 31 17:57:03 intiilapa Seldaek: can you download multiple version of the same package?
Aug 31 17:57:06 Seldaek well, I don't know, I don't want to do a sales pitch but if you got questions I'm happy to answer them
Aug 31 17:57:14 weierophinney Seldaek, see intiilapa's question.
Aug 31 17:57:21 weierophinney That's important to a number of folks.
Aug 31 17:57:26 intiilapa es
Aug 31 17:57:28 weierophinney i.e., parallel versions.
Aug 31 17:57:29 intiilapa +y
Aug 31 17:57:31 Seldaek intiilapa: afaik (would have to check with naderman), the dependency solver can handle it
Aug 31 17:57:51 Seldaek however, it doesn't work with systemwide installs by default like pear does
Aug 31 17:57:58 weierophinney ah, okay.
Aug 31 17:58:05 Seldaek so you handle your deps per project, and therefore have less needs for multiple versions
Aug 31 17:58:07 kokx that changes a lot of things
Aug 31 17:58:10 Bittarman I like the idea of that
Aug 31 17:58:12 weierophinney we'll ping you with additional questoins, then.
Aug 31 17:58:17 kokx I like it too
Aug 31 17:58:17 rizza Me too.
Aug 31 17:58:26 iH8 ²
Aug 31 17:58:26 Akrabat I'm in the "one global install" camp
Aug 31 17:58:39 weierophinney Seldaek, we seem to have folks wanting both styles – what you describe suits me, but Akrabat and StormTide have argued for system-wide.
Aug 31 17:58:47 weierophinney and I see some compelling cases.
Aug 31 17:58:56 ArturBodera I prefer localized installations, better for VCS, cleaniness, shared env etc.
Aug 31 17:59:02 rizza One global install camp starts to falter if you're working at an ad agency where you've got hundreds of projects, potentially running different versions.
Aug 31 17:59:05 Seldaek well yes, it should be possible to add it later
Aug 31 17:59:16   »» DASPRiD is not a fan of system wide, when talking about modules
Aug 31 17:59:18 Seldaek but I think in most cases global installs are just about saving a few megs
Aug 31 17:59:22 weierophinney rizza, that'sw hwere the parallel system versions would come in.
Aug 31 17:59:40 kokx weierophinney: yeah, and thats where it gets unmanageable
Aug 31 17:59:44 weierophinney
Aug 31 17:59:46 Akrabat rizza: I disagree. We are in that boat, and I currently have over 60 separate ZF based websites installed on my laptop
Aug 31 17:59:46 rizza weierophinney: I know, I was responding primarily to Akrabat's comment.
Aug 31 17:59:48 weierophinney that's what I've argued
Aug 31 17:59:57 ArturBodera If you want system-wide, why don't you symlink?
Aug 31 18:00:01 Akrabat I don't want 30 copies of ZF 1.10 and 30 copies of ZF 1.11
Aug 31 18:00:07 ArturBodera you can't symlink on shared hosting - so it should be localized by default.
Aug 31 18:00:11 rizza Akrabat: And all of those share the same ZF versions?
Aug 31 18:00:13 weierophinney ArturBodera, they do – but sometimes you need multiple parallel versions.
Aug 31 18:00:24 Akrabat rizza: shared between 3 version I think
Aug 31 18:00:26 Seldaek Akrabat: fair enough, and I think that just like npm does it, we'll support symlinking for that purpose
Aug 31 18:00:41 Seldaek but by default systemwide is too complex for most people
Aug 31 18:00:49 weierophinney it's a specialized need.
Aug 31 18:00:52 Seldaek and I want this to be as easy as possible, or people won't use it
Aug 31 18:00:55 Akrabat yes
Aug 31 18:01:04 kokx Seldaek: I don't think it would be hard to use Composer system-wide, if you configure it correctly?
Aug 31 18:01:09 Seldaek and I'm sick of php lagging behind in the package management field
Aug 31 18:01:23 Bittarman Seldaek, its not so much complexity, its deployability thats the problem.
Aug 31 18:01:24 Akrabat I just want it to be handled, otherwise I have to everything manually, and then, I'm definitely against any cli tool needed for modules
Aug 31 18:01:34 Seldaek kokx: well, it sure is possible, it's just not wired right atm for that
Aug 31 18:01:37 rizza Akrabat: +1
Aug 31 18:01:44 iH8 there's one thing i REALLY like to mention, ZF has never taken people who depend on share hosting into account
Aug 31 18:02:04 Seldaek Akrabat: well, itr's open source, feel free to come and help
Aug 31 18:02:11 Akrabat iH8: I disagree
Aug 31 18:02:14 kokx iH8: how do you come to that conclusion :S?
Aug 31 18:02:15 weierophinney iH8, I think that's because it's a very small subset of our users.
Aug 31 18:02:21 rizza iH8: How does ZF not work on a shared host?
Aug 31 18:02:28 Akrabat Seldaek: If I (a) had time and (b) was clever enough...
Aug 31 18:02:47 Seldaek to come back to what I was saying eaerlier though, this will probably be used by Symfony, and hopefully by TYPO3 for module installs on their next version (still have to discuss things)
Aug 31 18:02:52 Bittarman iH8, theres no blocker for shared hosting and ZF at all.
Aug 31 18:03:12 iH8 i'm talking about the location of the library
Aug 31 18:03:13 ArturBodera ZF1 does work on everything. (minus just a few cases of extension deps)
Aug 31 18:03:14 Akrabat iH8: what I would say is that, the standard output from zf create project is not especially shared hosting friendly
Aug 31 18:03:15 kokx ok, lets get back to the Distribution
Aug 31 18:03:21 Seldaek so adding ZF to the list would be awesome since it would allow anyone to mix and match quite a lot between all those component libraries
Aug 31 18:03:26 iH8 and without CLI
Aug 31 18:03:27 kokx
  • back ontopic I mean
Aug 31 18:03:46 Akrabat Seldaek: how to composer/packagist handle the concept of pear's channels?
Aug 31 18:03:49 weierophinney kk, to bring us back: does anybody have any strong feelings diffrent than the vote summary I posted earlier? and what are the thoughts on the Dev/Debug and/or Security and/or DB/DataFormats categories?
Aug 31 18:03:52 iH8 ok, on topic, i post on the ML
Aug 31 18:03:57 ArturBodera Do we have the non-cli requirement in any RFC ?
Aug 31 18:04:02 ArturBodera It's kinda important...
Aug 31 18:04:18 ArturBodera i.e. web-based installation of anything you like...
Aug 31 18:04:28 iH8 ArturBodera +1
Aug 31 18:04:31 kokx ArturBodera: +1
Aug 31 18:04:32 Akrabat ArturBodera: non-cli is still in discussion
Aug 31 18:04:48 Seldaek Akrabat: packagist is the central/default repository atm, opensource too so you can clone it and run your own repository - there are no channels, it finds any package on any repository by name, that means names should be unique, and on the about page we recommend/encourage (may enforce..) Vendor-PackageName as a pattern for naming
Aug 31 18:04:52 weierophinney I think we need CLI first, so that we know it all works, and then build a UI on top of it.
Aug 31 18:04:57 Akrabat It doesn't actually matter from what I can tell as long as it's not required for your live site
Aug 31 18:04:57 ArturBodera IMO Security is a FEATURE of framework... not an add-on !
Aug 31 18:05:01 Seldaek Akrabat: just like PSR0 has Vendor\Foo for classes
Aug 31 18:05:19 rizza weierophinney: +1
Aug 31 18:05:19 weierophinney ArturBodera, +1
Aug 31 18:05:22 Akrabat i.e. you can CLI on dev, commit to vcs and the deploy via FTP with Phing
Aug 31 18:05:25 kokx ArturBodera: +1
Aug 31 18:05:25 intiilapa weierophinney: +1
Aug 31 18:05:33 intiilapa ArturBodera: +1
Aug 31 18:05:39 weierophinney Akrabat, +1
Aug 31 18:05:43 intiilapa ACL is not security
Aug 31 18:05:57 kokx Akrabat: +1, it should definitely not be required on your live site
Aug 31 18:06:07 mikaelkael Akrabat: +1
Aug 31 18:06:16 intiilapa Akrabat: +1
Aug 31 18:06:17 Seldaek just to conclude, if you got more questions or are just interested in following/helping, you can join the composer group on

- and now I have to run

Aug 31 18:06:19 ArturBodera Debug: decouple ONLY if possible. From my experience debug works best in low-level.... if we can have low-level debugging AND have an ability to just "rm -Rf library/Zend/Debug" then of course, yes.
Aug 31 18:06:20 weierophinney intiilapa, it's what a lot of frameworks discuss as "security" modules, however – how to secure your application via combination of auth/acls.
Aug 31 18:06:23 Akrabat Seldaek: so I inform the composer on my local machine that it can find packages in multiple places?
Aug 31 18:06:31 lubs weierophinney: Dev/Debug - extras IMO; Security=+1; DB/DataFormats = DB +1; DataFormats (If it is strictly related to MicroFormats and things of that nature sure... but JSON/BSON/etc should be more or less a serialization)
Aug 31 18:06:31 weierophinney Seldaek, thanks!
Aug 31 18:06:34 rizza Bye Seldaek, thanks!
Aug 31 18:06:44 Akrabat thanks Seldaek
Aug 31 18:06:44 Seldaek thanks for listening and considering
Aug 31 18:07:02 Seldaek Akrabat: yup, you can add repositories to it
Aug 31 18:07:34 weierophinney lubs, so, is that a vote for DB in core, JSON as part of serializer (part of core), and other formats in extras?
Aug 31 18:07:38 intiilapa zf2 should provided a good support to debug
Aug 31 18:07:48 Bittarman db should be in core.
Aug 31 18:07:54 Akrabat hmm
Aug 31 18:07:57 kokx intiilapa: yes, but it should not be in the core
Aug 31 18:07:59 Akrabat I'm not sure db should be in core
Aug 31 18:08:01 ArturBodera DB: this is a tough one. With things like doctrine and propel, it could go parallel.
Aug 31 18:08:02 rizza Bittarman: I disagree.
Aug 31 18:08:05 Seldaek Akrabat: by default it reads from and your php process for version and installed extensions. Then you can also use a github repo as a repository if it has a composer.json in it, and possibly also use any git repo later (but then you'd have to specify what's in it yourself)
Aug 31 18:08:20 intiilapa kokx: not in the core sounds like not in the standard distribution
Aug 31 18:08:22 guilhermeblanco DB should be out of core imho
Aug 31 18:08:27 Bittarman ArturBodera, don't compare it to doctrine and propel. those are ORMS not Db abstraction.
Aug 31 18:08:32 Akrabat I would like core to be tiny tbh
Aug 31 18:08:35 Seldaek Akrabat: anyway /query if you got more, I don't want to spam the discussion here
Aug 31 18:08:36 kokx intiilapa: it is not in the standard distribution
Aug 31 18:08:37 ArturBodera I'm aware of that...
Aug 31 18:08:38 guilhermeblanco mianly because it messes a lot with the structure of a module
Aug 31 18:08:42 Akrabat will do Seldaek
Aug 31 18:08:42 weierophinney intiilapa, not necessarily. It depends on what functionality should be int he standard distro.
Aug 31 18:08:43 Bittarman so why make the comparison?
Aug 31 18:08:43 kokx DB should not be in core in my eyes, especially since there are other things like Propel and Doctrine
Aug 31 18:08:45 DASPRiD doesn't the majority of ZF applications use a database?
Aug 31 18:08:55 weierophinney If that involves db/dataformats, then it can be outside core, but part of standard.
Aug 31 18:08:56 rizza Bittarman: Perhaps he meant Doctrine DBAL.
Aug 31 18:08:58 Bittarman DASPRiD, exactly.
Aug 31 18:09:00 ArturBodera Bittarman: but... if you don't use it and use P/D instead, you don't need Zend\Db* at all.
Aug 31 18:09:10 kokx DASPRiD: yes, but not everyone uses Zend\Db for it, lost of other people use Propel or Doctrine
Aug 31 18:09:14 Bittarman ArturBodera, so you don't use it.. thats fine.
Aug 31 18:09:21 Akrabat I'd then like to see the "standard" distribution contain a number of packages: core, mvc, identity/auth, etc
Aug 31 18:09:25 ArturBodera Bittarman: and don't include in core?
Aug 31 18:09:27 Bittarman core shouldnt just be the stuff that you will use every time...
Aug 31 18:09:33 Bittarman otherwise, nothing should be in core.
Aug 31 18:09:37 intiilapa weierophinney: what is categories in std distrib?
Aug 31 18:09:47 rizza Bittarman: Good point…
Aug 31 18:09:49 Bittarman Db will be a hugely commonly used feature.
Aug 31 18:09:58 farrelley_ +1 for DB in core
Aug 31 18:10:04 intiilapa kokx: doctrine and propel are vendors
Aug 31 18:10:07 Bittarman as there is a huge base of users who will want to grab core, and go.
Aug 31 18:10:07 weierophinney intiilapa, metapackages defining groups of components.
Aug 31 18:10:07 guilhermeblanco -1 for DB in core
Aug 31 18:10:08 ArturBodera I believe, we should not go voting-style on this one...
Aug 31 18:10:19 ArturBodera Statistics are not very good for deciding functionality for a framework.
Aug 31 18:10:22 Akrabat actually
Aug 31 18:10:32 ArturBodera See: Zend\Form discussion....
Aug 31 18:10:36 weierophinney ArturBodera, it's the whole purpose of these meetings.
Aug 31 18:10:36 Bittarman ArturBodera, they seem to have formed many of your former arguments
Aug 31 18:10:38 Xerkus +1 db in core
Aug 31 18:10:43 Akrabat thinking about it, how likely is it that distributions include ZF in their package managers?
Aug 31 18:10:45 weierophinney there has been discussoin on the lists; now is the time to make decisions.
Aug 31 18:10:49 ArturBodera No, you're missing the point.
Aug 31 18:10:53 Bittarman and also the premise of how a VOTE works.
Aug 31 18:11:05 kokx Akrabat: likely, it already is
Aug 31 18:11:05 weierophinney Akrabat, a lot of them do, actually.
Aug 31 18:11:10 ArturBodera I mean ... if we break things anyways, we could think about meta-packaging as many features as we can...
Aug 31 18:11:31 Akrabat I would like someone who wants to use the distribution's ZF, to be able to expect to have a good fully functional version of our stuff
Aug 31 18:11:42 ArturBodera For example: zend-core-mvc-doctrine release vs zend-core-mvc-db release .... people will choose the meta-package they want.
Aug 31 18:11:49 ArturBodera and
Aug 31 18:11:50 intiilapa weierophinney: sorry, I meant: what are the categories included in the standard distribution?
Aug 31 18:11:51 ArturBodera zend-default
Aug 31 18:11:53 weierophinney Akrabat, and I'd expect the standard package would include several of the categories.
Aug 31 18:11:56 Akrabat if I was to guess, anything not in "core" may not be packaged
Aug 31 18:12:01 guilhermeblanco If you decide to have Zend\DB in Core, it requires a lot more planning into this. Having a single "models" folder means nothing at all. Other applications may have complex structure that "models" is like a child game here.
Aug 31 18:12:13 Xerkus we can have overlapping categries isn't it?
Aug 31 18:12:15 kokx Akrabat: then there probably will be a zend-framework and a zend-framework-extras package
Aug 31 18:12:18 weierophinney intiilapa, ah – core, mvc, and it looks like security and potentially data formats (though that looks like it may be voted out)
Aug 31 18:12:27 rizza Xerkus: I would assume categories will overlap, yes.
Aug 31 18:12:42 guilhermeblanco I see a lot of inner points inside of it, like Domain, Domain Model, Domain Service, Resources Service that is attached to Domain layer too
Aug 31 18:12:46 ArturBodera Please drop the term "extras". There is nothing "extra" about db, nor form, nor mvc.
Aug 31 18:12:48 weierophinney Xerkus, yes
Aug 31 18:13:01 Akrabat kokx: yes, but not everyone will have the ability to install via their package mangaer
Aug 31 18:13:08 Bittarman guilhermeblanco, I don't think that having db in core has anything to do with models really.
Aug 31 18:13:10 guilhermeblanco keeping a single "models" just to allow Zend\DB is useless. That's why I vote -1 for DB in core.
Aug 31 18:13:11 weierophinney guilhermeblanco, dragonbe brought up that on list.
Aug 31 18:13:13 kokx ArturBodera: its the default way of having some default components, and some components that aren't in the 'core'
Aug 31 18:13:20 Bittarman its just db abstraction, its not an ORM.
Aug 31 18:13:24 ArturBodera You can have zend-everything package.... zend-everything-doctrine package ....
Aug 31 18:13:26 Akrabat so you end up with the same problem as with php extensions like pecl_http
Aug 31 18:13:35 ArturBodera + web-based distro configurator
Aug 31 18:13:44 Akrabat Bittarman: Db as TGC and will have AR
Aug 31 18:13:50 Akrabat s/as/has
Aug 31 18:13:50 weierophinney guilhermeblanco, db !== model. It's data access and abstraction.
Aug 31 18:14:02 Bittarman Akrabat, they are still not really modeling
Aug 31 18:14:17 Akrabat I agree. defintely not model
Aug 31 18:14:21 guilhermeblanco weierophinney: I know, but how you provided it in ZF1 is totally not ideal
Aug 31 18:14:23 intiilapa ArturBodera: I don't think that we can package zf2 with doctrine with CLA
Aug 31 18:14:30 Akrabat and orm isn't a model either imo
Aug 31 18:14:31 weierophinney guilhermeblanco, it's being refactored.
Aug 31 18:14:50 ArturBodera zend-quickstart package would include most "common" stuff for newbies .... while more experienced devs will just get CORE and download modules/components as needed.
Aug 31 18:14:50 weierophinney intiilapa, no, but we can package bridge code.
Aug 31 18:14:55 guilhermeblanco weierophinney: thank God.
Aug 31 18:14:57 Akrabat I would like really granular for our own package install tooling
Aug 31 18:14:57 weierophinney ArturBodera, exactly.
Aug 31 18:15:02 intiilapa weierophinney: yes, I remember
Aug 31 18:15:11 farrelley_ if i download core i want to be able to get up and running out of the box quickly without having to download other components
Aug 31 18:15:12 iH8 Dojo webbuilder:

Aug 31 18:15:13 ArturBodera intiilapa: you don't have to package it.... you have installation hooks + wget

Aug 31 18:15:13 weierophinney guilhermeblanco, look in ralphschindler 's feature/db branch.
Aug 31 18:15:14 Akrabat and a "mostly everying" download
Aug 31 18:15:19 DASPRiD guilhermeblanco, we thank everyone, but not god
Aug 31 18:15:22 guilhermeblanco intiilapa: ArturBodera Doctrine won't be merged because we (Doctrine) isn't interested in having a CLA.
Aug 31 18:15:30 guilhermeblanco *aren't
Aug 31 18:15:58 weierophinney guilhermeblanco, also, because the abstraction layers between D2 and ZF2 serve different purposes.
Aug 31 18:16:04 ralphschindler the argument here is Db as part of a core distribution or not, correct?
Aug 31 18:16:04 weierophinney but that's not the discussion at hand.
Aug 31 18:16:08 ArturBodera guilhermeblanco: no packaging. ... a bridge/adapter component + wget of Doctrine from source.
Aug 31 18:16:13 weierophinney ralphschindler, yes, that's the question.
Aug 31 18:16:14 kokx ralphschindler: correct
Aug 31 18:16:25 guilhermeblanco weierophinney: not really. Doctrine\DBAL have the base that can be considered Zend\DB
Aug 31 18:16:32 hhatfield +1 to Db in core
Aug 31 18:16:45 weierophinney guilhermeblanco, we need to discuss that elsewhere, not here and now.
Aug 31 18:16:51 guilhermeblanco weierophinney: ok
Aug 31 18:16:51 rizza I don't want to cause another definition war, but: Do we have a definition of what core is?
Aug 31 18:16:51 ArturBodera and – because pyrus/composer handle dependencies, we will know that some components require Zend\Db and some require Zend\DoctrineBridge
Aug 31 18:16:52 Akrabat Db must in the recommended distribution
Aug 31 18:17:02 weierophinney rizza, please refer to the RFC.
Aug 31 18:17:04 intiilapa dojo webbuilder sounds like jquery builder
Aug 31 18:17:07 rizza weierophinney: Thanks.
Aug 31 18:17:10 weierophinney ArturBodera, yes.
Aug 31 18:17:14 ralphschindler -1 in core, interaction with data, while common, is too wide a subject to be considered part of a small core for app development
Aug 31 18:17:23 Bittarman I can just see the majority of people who want to just grab a download, and get doing, thinking that the contribs are MENTAL delivering a core package with NO form of db access in it
Aug 31 18:17:30 weierophinney intiilapa, it predates it
Aug 31 18:17:40 Bittarman I know I'd be letting rip a whole stream of wtf's
Aug 31 18:17:42 ArturBodera Bittarman:
Aug 31 18:17:52 Akrabat is core and mvc the zip file that'll be the recommended download from
Aug 31 18:18:00 DASPRiD +1 Bittarman
Aug 31 18:18:02 weierophinney Akrabat, yes
Aug 31 18:18:16 intiilapa ArturBodera: easy start or something more politic
Aug 31 18:18:17 farrelley_ Bittarman: so thats a +1 for core
Aug 31 18:18:18 Akrabat in that case db needs to be in either core or mvc
Aug 31 18:18:23 ArturBodera If we have repo set up, we will go through statistical data and we will know which package combinations are most common – then we can adjust our "popular" packages as we go.
Aug 31 18:18:24 Bittarman farrelley_, a huge +1
Aug 31 18:18:27 weierophinney so, if DB is in a different metapackage, but that metapackage is part of the standard dist, does that solve everyone's sensibilities?
Aug 31 18:18:39 rizza weierophinney: Yes.
Aug 31 18:18:43 kokx weierophinney: +1
Aug 31 18:18:51 weierophinney ArturBodera, +1
Aug 31 18:18:52 ralphschindler yes
Aug 31 18:18:56 Bittarman weierophinney, as long as its in the default release (which is what I was under the impression the core was) then yes
Aug 31 18:19:01 farrelley_ yeah i said that a bit ago. I want to download out of the box and start building and not have to worry about downloading other components
Aug 31 18:19:02 weierophinney cool
Aug 31 18:19:08 ralphschindler i think we need to understand real cases of distribution before we have a solid answer
Aug 31 18:19:10 ArturBodera weierophinney: Yes.. Zend\Db in separate package + dependencies on all components that rely on that.
Aug 31 18:19:14 Akrabat weierophinney: that's my preference: multiple metapackages with a "standard" release containing a good many of them
Aug 31 18:19:15 intiilapa ArturBodera: +1
Aug 31 18:19:28 farrelley_ weierophinney: +1 i can live with that
Aug 31 18:19:28 guilhermeblanco ralphschindler: +1
Aug 31 18:19:32 weierophinney We'd ship a standard distro, a kitchen sink distro, and you'd hit the package manager if you want to do anything custom.
Aug 31 18:19:45 ArturBodera Also — etc.
Aug 31 18:20:00 Bittarman s/.zip/.tar.gz/
Aug 31 18:20:04 intiilapa standard distro doesn't include all categories, but popular/recommended categories?
Aug 31 18:20:07 Akrabat ralphschindler: I think we already know: zip download, direct from vcs and finally small bits for component integrators
Aug 31 18:20:07 weierophinney Bittarman, we do both.
Aug 31 18:20:08 ArturBodera (RPC, Service, Remote, AJAX)
Aug 31 18:20:13 weierophinney intiilapa, yes
Aug 31 18:20:15 rizza intiilapa: Correct.
Aug 31 18:20:17 kokx intiilapa: correct
Aug 31 18:20:19 Bittarman weierophinney, I know
Aug 31 18:20:46 intiilapa ArturBodera: soap with RPC?
Aug 31 18:20:51 farrelley_ ralphschindler: thanks for starting the ML thread
Aug 31 18:20:55 ArturBodera intiilapa: all of em'.
Aug 31 18:21:07 ralphschindler sure farrelley_ - just want to make sure everyone is on the same page
Aug 31 18:21:11 Akrabat so: we need a set of meta-package names to organise things into and then define which of them are in "standard" and which are in "kitchen sink" ?
Aug 31 18:21:26   »» ArturBodera votes to finish decicing on what goes to the core
Aug 31 18:21:36 weierophinney Akrabat, yes.
Aug 31 18:21:38 ArturBodera If we don't have the core, there is no point in talking about what isn't.
Aug 31 18:21:53 Akrabat ArturBodera: what's in "core" is meaningless without knowing the other buckets
Aug 31 18:21:55 ArturBodera weierophinney: what's undecided on the core?
Aug 31 18:21:57 rizza Wouldn't we come to the same conclusion by discussing what isn't core?
Aug 31 18:22:15 intiilapa weierophinney: do we have unit tests in distrib (like in ZF1 style)?
Aug 31 18:22:22 weierophinney intiilapa, yes.
Aug 31 18:22:29 ralphschindler Akrabat: i think package management is the main distribution medium for PHP in the next 5 years (we've seen this in other communities)
Aug 31 18:22:48 ralphschindler zip and vcs are going dodo-bird
Aug 31 18:22:52 Akrabat I'm happy if you stop using the word "core" and use the word "standard distribution" - it's more descriptive
Aug 31 18:22:59 weierophinney Akrabat, do you want to take a stab at defining the main categories real quickly?
Aug 31 18:23:05 Akrabat ralphschindler: you clearly don't target IIS
Aug 31 18:23:07 ArturBodera Akrabat: that's not the same
Aug 31 18:23:21 intiilapa weierophinney: Is it recovers some components of the namespace ZendX?
Aug 31 18:23:28 weierophinney intiilapa, yes.
Aug 31 18:23:43 weierophinney I think ZendX should go away, and we should incorporate what we can from it.
Aug 31 18:23:44 intiilapa weierophinney: which?
Aug 31 18:23:48 ArturBodera ralphschindler: dodo lol
Aug 31 18:23:49 kokx related question: I'm guessing that the ZendX namespace will be discontinued?
Aug 31 18:23:51 weierophinney definitely console
Aug 31 18:23:58 weierophinney kokx, yes.
Aug 31 18:24:14 weierophinney intiilapa, potentially jquery
Aug 31 18:24:15 kokx ok, good
Aug 31 18:24:33 weierophinney kk, so, what about these as categories (this will take a minute or two to type):
Aug 31 18:24:34 Bittarman has anyone shown interest in reviving jquery yet?
Aug 31 18:24:44 weierophinney
  • core (basic, discrete functionality)
Aug 31 18:24:48 ArturBodera jquery is a perfect candidate for a module – that will download jquery.js from http:// during installation
Aug 31 18:25:00 iH8 Bittarman, me but Dojo first
Aug 31 18:25:00 Akrabat i'll look up how I divded up ZF1 components last time
Aug 31 18:25:06 weierophinney
  • db/dataformats (DB, serializer, DOM, etc.)
Aug 31 18:25:11 weierophinney
  • MVC
Aug 31 18:25:12 intiilapa ArturBodera: module O_o
Aug 31 18:25:24 weierophinney
  • Security (authentication, authorization, identity)
Aug 31 18:25:24 ArturBodera intiilapa: _
Aug 31 18:25:37 iH8 under \Js namespace i guess? \Js\Dojo \Js\Jquery
Aug 31 18:25:41 weierophinney
  • Extras (anything else out of that bucket?)
Aug 31 18:25:51 kokx ArturBodera: that are exactly the type of things we want to avoid, doing lots of things like downloading jquery.js during installation of a package/module
Aug 31 18:26:00 weierophinney the latter might need to get chopped up into things like "services", "cloud" etc.
Aug 31 18:26:03 Akrabat servces
Aug 31 18:26:07 weierophinney Akrabat, does that sound good?
Aug 31 18:26:21 Akrabat internationalisation and development were the three others I used
Aug 31 18:26:23 ArturBodera I hate "extras"
Aug 31 18:26:24 intiilapa weierophinney: I think it's better to categorize all extras
Aug 31 18:26:33 weierophinney Akrabat, ah, right
Aug 31 18:26:34 Bittarman weierophinney, they look good to me
Aug 31 18:26:38 ArturBodera The main repo will never have "extras", but precise categories.
Aug 31 18:26:45 kokx ArturBodera: do you know a better name?
Aug 31 18:26:51 rizza "stuff"
Aug 31 18:26:52 weierophinney so, then, moving on, the "standard distribution" would include:
Aug 31 18:26:54 weierophinney
  • core
Aug 31 18:26:54 ArturBodera throw in an example
Aug 31 18:26:57 ArturBodera (class)
Aug 31 18:26:59 weierophinney
  • db/dataformats
Aug 31 18:27:02 weierophinney
  • security
Aug 31 18:27:04 weierophinney
  • mvc
Aug 31 18:27:11 weierophinney and * i18n/l10n
Aug 31 18:27:32 DASPRiD one question, would Zend\Ical be in formats distribution or extras?
Aug 31 18:27:39 weierophinney DASPRiD, probably formats
Aug 31 18:27:47 guilhermeblanco weierophinney: db =(
Aug 31 18:27:52 rizza DASPRiD: data formats.
Aug 31 18:27:53 guilhermeblanco but we chat later
Aug 31 18:28:05   »» guilhermeblanco just saw ralph's repo
Aug 31 18:28:22 intiilapa ArturBodera: Queue, Barcode, Feed, Cloud, Markup
Aug 31 18:28:40 weierophinney remarks on my previous categorizations?
Aug 31 18:28:43 intiilapa feed go in format?
Aug 31 18:28:47 weierophinney intiilapa, yes
Aug 31 18:28:53 Bittarman weierophinney, how much of the V would be in the MVC?
Aug 31 18:28:58   »» weierophinney will have a lot of editing to do on the RFC
Aug 31 18:28:59 rizza I think the service components should be in a category all to their own.
Aug 31 18:29:06 kokx btw weierophinney, will there still be one big git repo, or might that change in the future, like with a zf2 and a zf2-extras repo?
Aug 31 18:29:09 weierophinney Bittarman, most if not all... why?
Aug 31 18:29:09 Bittarman would it be for example all view helpers, renderers etc.
Aug 31 18:29:15 Bittarman or would some of that be broken off?
Aug 31 18:29:23 weierophinney kokx, need to investigate. we may need to go submodule style.
Aug 31 18:29:49 weierophinney Bittarman, some of that may be broken off if it's highly specialized, I suppose; I would expect some of that stuff could go into 3rd party modules, tbh
Aug 31 18:30:00 Bittarman because, I was thinking of proposaing a Twig renderer when we see more of the MVC,
Aug 31 18:30:03 Akrabat I'd like to see broken up
Aug 31 18:30:10 weierophinney Bittarman, absolutely.
Aug 31 18:30:17 Bittarman and obv. that would have another dependancy, so it would make sense to be external
Aug 31 18:30:19 Akrabat e.g. if form has view helpers, I want them in \form, not \view
Aug 31 18:30:29 weierophinney Akrabat, kk, makes sense.
Aug 31 18:30:31 Bittarman so, do we end up with two Z\View namespaces
Aug 31 18:30:35 ArturBodera "extras" is terrible. It's like saying "the rest" or "stuff we don't personally use but here you go". We cannot use that. It should go into separate domains/categories that best describe it and promote extensions. I.e. Queue can live in its own "Queue" category which will be later populated with more 3rd party components for queue.
Aug 31 18:30:46 Akrabat no - we have a better broker system nowadays
Aug 31 18:30:47 Bittarman one with the stuff distributed in the MVC metapackage, and one with whats in extras?
Aug 31 18:30:50 weierophinney Bittarman, see Akrabat 's resopnse.
Aug 31 18:30:58 Akrabat ArturBodera: I completely agree about extras
Aug 31 18:31:07 weierophinney ArturBodera, agreed. I'll break into other categories when I edit later.
Aug 31 18:31:14 kokx ArturBodera: +1
Aug 31 18:31:29 ArturBodera weierophinney: these categories are foundation for the whole repository, so choose wisely
Aug 31 18:31:32 Bittarman ArturBodera, think of 'extras' as being, the rest of the Zend namespace, thats not in those primary meta-packages
Aug 31 18:31:34 weierophinney ArturBodera, the main thing is deciding which buckets we complete for ZF2 stable.
Aug 31 18:31:38 Bittarman not as some dusty corner of the lib.
Aug 31 18:31:38 ArturBodera and don't go "pearish".
Aug 31 18:31:55 weierophinney Bittarman, +1
Aug 31 18:32:02 ArturBodera weierophinney: don't force it... if queue doesn't fit, don't force it into ZF2 launch party or whatever.
Aug 31 18:32:06 Bittarman like, all the Zend\Service stuff clearly belongs in such a sub-set of ZF
Aug 31 18:32:16 Akrabat weierophinney: also, we can put a component in a bucket, but leave out for 2.0
Aug 31 18:32:38 weierophinney Akrabat, true
Aug 31 18:32:49 weierophinney kk, I have one last thing to bring up.
Aug 31 18:32:51 Akrabat maybe have an "unsupported" place to put them for 2.0
Aug 31 18:32:56 ArturBodera To recap: everything that wasn't mentioned, so called "extras", should not be part of ZF2 launch plan. This should go in parallel and go into repository for optional download/installation.
Aug 31 18:33:12 ArturBodera Otherwise, ZF2 will be ready by 2015
Aug 31 18:33:38 weierophinney ArturBodera, agreed, that's what the point of this part of the discussion was.
Aug 31 18:33:58 weierophinney I'll propose how we implement that on the list.
Aug 31 18:34:02 weierophinney So, my last thing:
Aug 31 18:34:09 ArturBodera weierophinney: so ZF2 launch schedule = launch schedule for core, MVC, DB, security ... ok ?
Aug 31 18:34:13 Akrabat though, if someone finishes zend\service\pinboard in time, no reason why it can't be included
Aug 31 18:34:21 weierophinney Akrabat, right
Aug 31 18:34:37 intiilapa extras has only barcode, services, captcha, cloud, pdf, search, and markup now?
Aug 31 18:34:39 weierophinney the idea is simply that if the component is not ready by then, and falls outside the standard dist, we don't ship it.
Aug 31 18:34:41 Bittarman I'd actually like to see the items which are not in the primary meta-packages, and in the "extras" space kept outside of the ZF versioning, and have their own version numbers tbh
Aug 31 18:34:49 ArturBodera intiilapa: "ONLY" hahahah .. joke of the day
Aug 31 18:34:53 kokx weierophinney: exactly
Aug 31 18:34:57 Bittarman though, implementation of that may prove... too much.
Aug 31 18:34:59 hhatfield it = the component?
Aug 31 18:35:21 weierophinney So, ZendCon would be a great opportunity to get word out about ZF2.
Aug 31 18:35:42 ArturBodera weierophinney: IMO the only thing we should "ship" is the CORE+MVC+DB+security.
Aug 31 18:36:00 ArturBodera weierophinney: the rest goes to repo, even before launch... or after... depends on each case..
Aug 31 18:36:17 weierophinney ArturBodera, that's the "standard distribution". We'd also do a "full distribution" that would include those things that are complete but outside those categories.
Aug 31 18:36:19 Bittarman I'd like to see Doctrine2 integration ready for the ZF2 launch, and i'm pretty sure a pretty large number of others would too
Aug 31 18:36:20 Akrabat I'd like a PoC of the MVC out soonish... we can't do that till we sort out architechture and how modules fit into it.
Aug 31 18:36:34 Bittarman whether its in the standard distribution or not, its becomming very popular
Aug 31 18:36:36 weierophinney Akrabat, plannnin on that either this afternoon or tomorrow morning.
Aug 31 18:36:37 guilhermeblanco Bittarman: I can handle this integration if you want
Aug 31 18:36:38 guilhermeblanco =D
Aug 31 18:36:43 iH8 Bittarman +1
Aug 31 18:36:43 Bittarman guilhermeblanco:
Aug 31 18:36:56 guilhermeblanco Bittarman: I already have a reosurce for zf1
Aug 31 18:36:56 Bittarman guilhermeblanco, i'm happy to help
Aug 31 18:37:06 guilhermeblanco should be easy to move to zf2 too
Aug 31 18:37:08 weierophinney Does anybody feel we can do a beta for ZendCon? It would force us to focus on the necessary requiremetns and push forward quickly. Thoughts?
Aug 31 18:37:19 ArturBodera weierophinney: how "wide" ?
Aug 31 18:37:21 Bittarman weierophinney, I'd love to see it
Aug 31 18:37:22 kokx weierophinney: we cannot do that
Aug 31 18:37:24 weierophinney guilhermeblanco, depends on what MVC looks like. It may be even easier!
Aug 31 18:37:36 guilhermeblanco weierophinney: =D
Aug 31 18:37:37 Akrabat If we can get mvc architecture and modules sorted, the yes
Aug 31 18:37:38 kokx I think it would force a little bit too much
Aug 31 18:37:44 ArturBodera core+MVC+oldDB1.0 maybe ?
Aug 31 18:38:01 ArturBodera ralphschindler: no pun intended
Aug 31 18:38:02 Akrabat if beta is defined as "minimal core" + mvc + db
Aug 31 18:38:03 kokx weierophinney: we might call it an alpha maybe
Aug 31 18:38:09 weierophinney kokx, can you elaborate? (I'm actually in fact-finding mode right now)
Aug 31 18:38:11 Bittarman weierophinney / guilhermeblanco, I was thinking something along the lines of having pagination adapters, and auth adapters in place too
Aug 31 18:38:13 Akrabat as I think ralphschindler's \db isn't far off now?
Aug 31 18:38:18 guilhermeblanco core + mvc + (some sort of DB assoc_
Aug 31 18:38:20 intiilapa weierophinney: beta = freeze new components for 2.0?
Aug 31 18:38:20 guilhermeblanco =D
Aug 31 18:38:22 Akrabat alpha's not a bad name for it
Aug 31 18:38:35 ArturBodera intiilapa: no freeze... they go to repo.
Aug 31 18:38:35 Bittarman yeah, alpha would probably be better
Aug 31 18:38:39 weierophinney intiilapa, not necessarily. But alpha may make more sense.
Aug 31 18:38:48 kokx weierophinney: well, I think that a lot of components won't be far enough by ZendCon, and a Beta kinda should already have some restrictions, at least, thats what the name implies
Aug 31 18:38:55 Akrabat alpha has to be good enough to create a website on
Aug 31 18:38:56 Bittarman API would probably still be unstable, which by definition should really rule out it being called BETA
Aug 31 18:39:06 intiilapa weierophinney: with the code in quickstart, do you need a lot of days to finish (M)VC?
Aug 31 18:39:13 Akrabat devX are "please play with this new bit" releases
Aug 31 18:39:15 intiilapa alpha +1
Aug 31 18:39:19 kokx an alpha implies more like something that works, but is definitely not recommended to use
Aug 31 18:39:22 weierophinney intiilapa, no, I just need to refactor it to use the new HTTP structure.
Aug 31 18:39:29 weierophinney which I can do today or tomorrow.
Aug 31 18:39:46 ArturBodera weierophinney: what do you prefer to show off at zendcon?
Aug 31 18:39:49 kokx a beta implies that its already workable and that should not give too many problems when going to the final version
Aug 31 18:39:50 weierophinney So, sounding like preference is alpha for zendcon?
Aug 31 18:39:56 intiilapa weierophinney: yes
Aug 31 18:39:57 ArturBodera weierophinney: architecture? new MVC ? whole approach ?
Aug 31 18:40:05 kokx weierophinney: +1
Aug 31 18:40:06 weierophinney ArturBodera, I'd prefer stable by zendcon, but I KNOW that ain't happening.
Aug 31 18:40:14 Bittarman I think alpha will be a more accurate name for whats achievable by then
Aug 31 18:40:15 Akrabat usefully, weierophinney's ZendCon requirements and my phpnw11 requirements are matching...
Aug 31 18:40:17 mikaelkael weierophinney: +1
Aug 31 18:40:21 intiilapa weierophinney: we need to define some common API for beta like puggable, configurable, etc
Aug 31 18:40:37 Bittarman call something beta too early, and your effectively stepping into the bc trap early.
Aug 31 18:40:46 weierophinney intiilapa, yes, that needs to happen as well as finalizing mvc, and is more argument for going alpha than beta.
Aug 31 18:40:46 Akrabat alpha should allow us to show off building a website
Aug 31 18:40:51 ArturBodera weierophinney: no, I mean which part.... because module architecture could be a good topic for a talk, but we need to know where to focus our efforts.
Aug 31 18:41:13 weierophinney ArturBodera, talks are already determined, except for the uncon. But we may be able to sneak into the keynote.
Aug 31 18:41:19 weierophinney Akrabat, +1
Aug 31 18:41:31 weierophinney So, here's what I propose:
Aug 31 18:41:48 weierophinney
  • Try and finalize basic infrastructure of MVC w/in 2 weeks
Aug 31 18:41:52 ArturBodera weierophinney: then your focus is marketing - i.e. "dear audience, go to this link, download alpha and play" ?
Aug 31 18:42:08 weierophinney
  • Try to finalize other infrastructure (pluggable, configuration) in that time frame
Aug 31 18:42:19 iH8 we should be showing a solid api
Aug 31 18:42:20 weierophinney ArturBodera, yes – to get more mindshare and testing around zf2.
Aug 31 18:42:20 intiilapa weierophinney: +1
Aug 31 18:42:37 weierophinney to that end, get the prototype in a branch by tomorrow.
Aug 31 18:42:42 kokx iH8: no, because then we're falling in the bc trap already
Aug 31 18:42:49 intiilapa weierophinney: maybe first ideas of benchmark on EC2 for zendcon?
Aug 31 18:42:59 weierophinney intiilapa, I can get that this week
Aug 31 18:43:03 ArturBodera intiilapa: bad idea...
Aug 31 18:43:07 kokx which is why we call it an alpha, and not a beta
Aug 31 18:43:13 weierophinney ArturBodera, no, good one. performance is a specific goal of zf2
Aug 31 18:43:22 intiilapa I agree with weierophinney
Aug 31 18:43:24 iH8 that's why i'm against going alpha or beta for zendcon unless there is a solid api
Aug 31 18:43:25 ArturBodera I know, but these will be micro-opt benchmarks...
Aug 31 18:43:26 Akrabat weierophinney: do you want to run the MVC RFC? otherwise, I will (if noone else volunteers)
Aug 31 18:43:36 ArturBodera i.e. benchmarks make more sense with modular architecture in place and X modules.
Aug 31 18:43:45 weierophinney iH8, alpha implies api is mostly gelled, but may change. beta means solid api
Aug 31 18:43:57 weierophinney Akrabat, let's discuss after the meeting.
Aug 31 18:44:04 Akrabat kk
Aug 31 18:44:20 intiilapa iH8: we need an API to review all components in the same way too
Aug 31 18:44:20 weierophinney so, kokx, want to summarize?
Aug 31 18:44:24 kokx sure
Aug 31 18:44:29 weierophinney Now that we're 15m over the 90m limit?
Aug 31 18:44:35 kokx
Aug 31 18:44:39 intiilapa lol
Aug 31 18:44:40 ArturBodera on the other hand .. marketing again So I retract that .
Aug 31 18:45:19 Bittarman intiilapa / ArturBoderam any benchmarks would be meaningless, as they'd have no context.
Aug 31 18:45:30 kokx wait, I've actually lost what he decided....
Aug 31 18:45:42 ArturBodera Bittarman: Matthew will probably go with a nice ZF1/ZF2 comparison... this will work.
Aug 31 18:46:14 kokx weierophinney: I hope that you kept track of the decisions that were made?
Aug 31 18:46:38 weierophinney ArturBodera, I can compare ZF1 to ZF2 using ZF1-style MVC to ZF2 using DI prototype (both runtime and compiled)
Aug 31 18:46:47 weierophinney kokx, I have, and will write a summary
Aug 31 18:46:53 ArturBodera weierophinney: good idea. Do that.
Aug 31 18:46:55 weierophinney I'll try to be as unbiased as possible.
Aug 31 18:46:56 kokx ok, thanks weierophinney
Aug 31 18:47:11 weierophinney The wiki is editable anyways.
Aug 31 18:47:15 kokx weierophinney: well, nobody here is completely unbiased
Aug 31 18:47:29   »» weierophinney faints... SAY IT ISN'T SO!
Aug 31 18:47:45 kokx except for me of course
Aug 31 18:47:47 ArturBodera
Aug 31 18:47:55 ArturBodera kokx: how about that summary ?
Aug 31 18:47:57 mikaelkael kokx: of course
Aug 31 18:48:09 weierophinney I'll do a quick summary:
Aug 31 18:48:23 Akrabat I have these three points as "next steps" noted down:
Aug 31 18:48:23 kokx ArturBodera: not sure how it happened, but my mind is locking up on what was decided :X
Aug 31 18:48:25 Akrabat
  • Move the modules discussion on, on the ML to make sure we know what's going on
Aug 31 18:48:26 Akrabat
  • Try and finalize basic infrastructure of MVC w/in 2 weeks
Aug 31 18:48:26 Akrabat
  • Try to finalize other infrastructure (pluggable, configuration) in that time frame
Aug 31 18:48:52 weierophinney Akrabat, perfet
Aug 31 18:48:55 Akrabat (I may have to be strict about keeping a thread on topic...)
Aug 31 18:48:56 weierophinney PadraicB, YOU'RE LATE!!!!
Aug 31 18:48:58 weierophinney
Aug 31 18:49:13 kokx we also reached a consensus on what should be in the standard distribution, right?
Aug 31 18:49:20 weierophinney I think we came up with a definition of modules vs components:

Aug 31 18:49:22 rdohms ok, i'm back what did i miss trollface
Aug 31 18:49:40 weierophinney and also the standard dist (core + db/formats + i18n/l10n + security + mvc)
Aug 31 18:49:44 Akrabat kokx: no. weierophinney will rework the RFC to a set of buckets with components in
Aug 31 18:49:46 farrelley_ also we we going to look at composer right?
Aug 31 18:49:48 intiilapa kokx: yes
Aug 31 18:49:59 weierophinney but, as Akrabat said, I need to rework the RFC so we can discuss
Aug 31 18:50:00 kokx farrelley_: the Zend team said they will do that yes
Aug 31 18:50:10 weierophinney Also, we've added composer to possible installation tools
Aug 31 18:50:34 PadraicB I'm not late. You're all early. Didn't you get the memo about the new time?
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.