forked from kriswallsmith/DbFinderPlugin
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathpackage.xml
321 lines (317 loc) · 16.2 KB
/
package.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
<?xml version="1.0" encoding="UTF-8"?>
<package xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" packagerversion="1.4.1" version="2.0" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
<name>DbFinderPlugin</name>
<channel>pear.symfony-project.com</channel>
<summary>The `DbFinder` is a symfony plugin that provides an easy API for finding Model objects, whether the underlying ORM is Propel or Doctrine.</summary>
<description>`DbFinder` can be seen as:
* A usability layer to ease the use of Propel's Criteria object and Peer classes
* An extension to Propel's limited capabilities to provide:
- complex joins
- custom hydration of related objects and columns
- schema and relation introspection
* A compatibility layer to allow plugins to work with Propel 1.2, Propel 1.3, and Doctrine
</description>
<lead>
<name>Francois Zaninotto</name>
<user>fzaninotto</user>
<email>[email protected]</email>
<active>yes</active>
</lead>
<date>2009-04-23</date>
<version>
<release>1.2.2</release>
<api>1.2.2</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://www.symfony-project.com/license">MIT license</license>
<notes>-</notes>
<contents>
<dir name="/">
<file name="README" role="data"/>
<file name="LICENSE" role="data"/>
<dir name="data">
<dir name="generator">
<dir name="DbFinderAdmin">
<dir name="default">
<dir name="skeleton">
<dir name="actions">
<file name="actions.class.php" role="data"/>
</dir>
<dir name="config">
<file name="generator.yml" role="data"/>
</dir>
<dir name="templates"/>
<dir name="validate"/>
</dir>
<dir name="template">
<dir name="actions">
<file name="actions.class.php" role="data"/>
</dir>
<dir name="templates">
<file name="_edit_actions.php" role="data"/>
<file name="_edit_footer.php" role="data"/>
<file name="_edit_form.php" role="data"/>
<file name="_edit_header.php" role="data"/>
<file name="_edit_messages.php" role="data"/>
<file name="_filters.php" role="data"/>
<file name="_list.php" role="data"/>
<file name="_list_actions.php" role="data"/>
<file name="_list_batch_actions.php" role="data"/>
<file name="_list_footer.php" role="data"/>
<file name="_list_header.php" role="data"/>
<file name="_list_messages.php" role="data"/>
<file name="_list_td_actions.php" role="data"/>
<file name="_list_td_batch_actions.php" role="data"/>
<file name="_list_td_stacked.php" role="data"/>
<file name="_list_td_tabular.php" role="data"/>
<file name="_list_th_stacked.php" role="data"/>
<file name="_list_th_tabular.php" role="data"/>
<file name="editSuccess.php" role="data"/>
<file name="listSuccess.php" role="data"/>
</dir>
</dir>
</dir>
</dir>
</dir>
</dir>
<dir name="doc">
<file name="generator.txt" role="data"/>
<file name="routing.txt" role="data"/>
</dir>
<dir name="lib">
<file name="DbFinder.php" role="data"/>
<file name="DbFinderAdapterUtils.php" role="data"/>
<file name="sfModelFinder.php" role="data"/>
<file name="sfModelFinderColumn.php" role="data"/>
<file name="sfModelFinderFake.php" role="data"/>
<dir name="doctrine">
<file name="sfDoctrineFinder.php" role="data"/>
<file name="sfDoctrineFinderColumn.php" role="data"/>
<file name="sfDoctrineFinderListener.php" role="data"/>
<file name="sfDoctrineFinderPager.php" role="data"/>
<file name="sfDoctrineFinderRecordTemplate.php" role="data"/>
</dir>
<dir name="generator">
<file name="DbFinderAdminGenerator.class.php" role="data"/>
</dir>
<dir name="propel">
<file name="sfPropelFinder.php" role="data"/>
<file name="sfPropelFinderCache.php" role="data"/>
<file name="sfPropelFinderColumn.php" role="data"/>
<file name="sfPropelFinderPager.php" role="data"/>
<file name="sfPropelFinderRelation.php" role="data"/>
<file name="sfPropelFinderRelationManager.php" role="data"/>
<file name="sfPropelFinderUtils.php" role="data"/>
</dir>
<dir name="routing">
<file name="DbFinderMultipleRoute.php" role="data"/>
<file name="DbFinderObjectRoute.php" role="data"/>
<file name="DbFinderObjectsRoute.php" role="data"/>
<file name="DbFinderRoute.php" role="data"/>
</dir>
</dir>
</dir>
</contents>
<dependencies>
<required>
<php>
<min>5.1.0</min>
</php>
<pearinstaller>
<min>1.4.1</min>
</pearinstaller>
<package>
<name>symfony</name>
<channel>pear.symfony-project.com</channel>
<min>1.0.0</min>
<max>1.3.0</max>
<exclude>1.3.0</exclude>
</package>
</required>
</dependencies>
<phprelease>
</phprelease>
<changelog>
<release>
<version>
<release>1.2.2</release>
<api>1.2.2</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://www.symfony-project.com/license">MIT license</license>
<date>2009-04-23</date>
<license>MIT</license>
<notes>
* francois: Made `sfPropelFinder::with()` work with one-to-one relationships and Propel 1.3 (patch from ivanrey)
* francois: Fixed a bug in `DbFinderObjectRoute` and `DbFinderObjectsRoute` caching
* francois: Fixed a warning in `DbFinderObjectRoute::generate()`
* francois: Fixed a bug in order param case in `DbFinderRoute`
</notes>
</release>
<release>
<version>
<release>1.2.1</release>
<api>1.2.1</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://www.symfony-project.com/license">MIT license</license>
<date>2009-04-17</date>
<license>MIT</license>
<notes>
* Enhancements:
* Scalar queries: `DbFinder::select()` allows a finder to return an array of column values instead of a model object.
* Join Aliases: `DbFinder::join()` now supports relations aliases, allowing for conditions on self-referenced foreign keys and multiple foreign keys to the same table
* Test methods: `DbFinder::_if()`, `DbFinder::_endif()`, `DbFinder::_else()`, and `DbFinder::_elseif()` allow to apply finder methods under specific conditions without breaking the "flow" of method calls.
* Complex conditions: `DbFinder::whereCustom()` offers the ability to add a condition on a calculation, with automated escaping of the values injected in the query
* Filters: `sfModelFinder::filterBy()` and `sfModelFinder::filter()` methods offer a fast and standard way to apply conditions to a finder
* Routing: Added three new classes to offer extended Model Routing capabilities
* Generator: Added the ability to add helpers in the `generator.yml`, Added the ability to link to another module in the admin generator theme
* Performance boost in `sfPropelFinder::with()`
* Simplified the use of 'is null' and 'is not null' as `where()` operators
* Added the ability to add new adapters (for arrays, web services, BigTable and the likes)
* Bug Fixes:
* Fixed `sfPropelFinder::useCache()` on queries using `withColumn()`
* Fixed a reference to `Criteria` outside the Propel adapter
* Fixed a bug in `sfDoctrineFinder` when using named conditions with a null value (patch from Maksymus007)
* Fixed an issue with filters on boolean fields in admin generator
</notes>
</release>
<release>
<version>
<release>1.1.0</release>
<api>1.1.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://www.symfony-project.com/license">MIT license</license>
<date>2008-12-01</date>
<license>MIT</license>
<notes>
* francois: Made the admin generator theme compatible with Propel 1.3. Now DbFinder allows full compatibility between Propel 1.2, Propel 1.3, and Doctrine.
* francois: Fixed issue with `setFlash()` in admin generator theme (sf 1.1 compatibility)
* francois: Fixed issue with two left joins, two `with()`, and missing objects in `sfPropelFinder`
</notes>
</release>
<release>
<version>
<release>1.0.0</release>
<api>1.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://www.symfony-project.com/license">MIT license</license>
<date>2008-11-17</date>
<license>MIT</license>
<notes>
* francois: Fixed generator theme to allow full sf 1.1 compatibility (with `sf_compat_10` on)
* francois: Using `Peer::getI18nModel()` to retrieve related i18n class when available (i.e., with Propel 1.3)
* francois: Added the ability to call `useCache(true)` to let DbFinder choose a caching backend. Works for both Propel and Doctrine adapters.
* francois: Fixed problem with null foreign keys in admin generator theme
* francois: Added caching for `find()` and `count()` queries
* francois: Fixed problem with decimal numbers in `withColumn()` expressions
* francois: Fixed Doctrine adapter to be compatible with Doctrine 1.0
> WARNING: sfDoctrinePlugin has reverted from Doctrine 1.0 to Doctrine 0.11, so the Doctrine adapter for DbFinder is currently broken
* francois: Fixed `DbFinder::withColumn()` on calculated columns with Doctrine adapter (thanks jwage)
* francois: Added `DbFinder::initialize()` to allow for custom finder extension
* francois: Fixed `DbFinder::fromCollection()` didn't return a custom finder instance when applicable
* francois: Fixed PHP 5.3 compatibility problem on `sfModelFinder::__toString()`
* francois: Fixed custom generator compatibility problem with symfony 1.1
* francois: Added 'sort_method' option for foreign key fields and custom fields to be sortable, too
* francois: Added 'batch_actions' option in the 'list' view of the admin generator
* francois: The 'with' and the 'finder_methods' parameters are now also supported in the 'edit' view of the generator theme.
* francois: Changed the generator to auto-add a wildcard on string filters
* francois: Fixed problem with `join()` called multiple times on the same table in `sfPropelFinder`
* francois: Fixed problem with `delete()` on tables with a bigint primary key
* francois: Fixed problem with `sfPropelFinder::addJoin()` not being passed to the Criteria object
</notes>
</release>
<release>
<version>
<release>0.9.0</release>
<api>0.9.0</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<license uri="http://www.symfony-project.com/license">MIT license</license>
<date>2008-08-28</date>
<license>MIT</license>
<notes>
* Doctrine adapter is now complete
* francois: Implemented `sfDoctrineFinder::withI18n()`
* francois: Reorganized files into adapter folders
* francois: Implemented `sfDoctrineFinder::set()`
* francois: Implemented `sfDoctrineFinder::paginate()` and `sfDoctrineFinderPager`
* francois: [BC Break] `withColumn()` now accepts normal CamelCase syntax for calculated columns (`count(Comment.Id)` instead of `count(comment.ID)`)
* francois: Implemented `sfDoctrineFinder::withColumn()`, partially implemented `getColumn()` getter (currently limited by Doctrine capabilities)
* francois: Implemented `sfDoctrineFinder::groupBy()` and `sfDoctrineFinder::groupByClass()`
* francois: Implemented `sfDoctrineFinder::with()`
* francois: Implemented `sfDoctrineFinder::join()`
* francois: Added `getQueryObject()` to the list of default methods
* francois: Implemented `sfDoctrineFinder::orderBy()`
* francois: Moved magic `__call()` to the parent `sfModelFinder` class
* francois: Implemented `sfDoctrineFinder::relatedTo()` (and fixed a bug in the `sfPropelFinder::relatedTo()` implementation)
</notes>
</release>
<release>
<version>
<release>0.4.0</release>
<api>0.4.0</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<license uri="http://www.symfony-project.com/license">MIT license</license>
<date>2008-08-12</date>
<license>MIT</license>
<notes>
* francois: Renamed the plugin to `DbFinder`
* francois: Added `finder_methods` parameter in `generator.yml`
* francois: Implemented `not in` comparison in `sfDoctrineFinder::where()`
* francois: Implemented `limit()` and `offset()` in both `sfPropelFinder` and `sfDoctrineFinder`
* francois: `sfPropelFinder::join()` now defaults to an `INNER JOIN` instead of a `WHERE` statement (will facilitate compatibility with Doctrine)
* francois: Implemented `sfDoctrineFinder::combine()`
* francois: Implemented `sfDoctrineFinder::orWhere()`
* francois: [BC Break] Removed `_and()` (synonym for `where()`) and renamed `_or()` to `orWhere()`
* mrhyde: Fixed problem with `sfPropelFinder`, symfony cache, and Propel 1.3
* francois: Refactored `DbFinder` to allow agnostic finders on model objects to extend it, and to fix problem with lacking PHPDoc on `DbFinder` methods
* francois: Added abstract `sfModelFinder` class to keep all abstract methods out of `DbFinder`
* francois: Implemented `sfDoctrineFinder::delete()`
* francois: Turned README into Markdown syntax, and changed the main name to `DbFinder`
* francois: `DbFinder::from('Article')` returns an instance of `ArticleFinder` if it exists. That way, extending the finder gets easier.
* francois: Added more phpdoc to `sfPropelFinder` and `sfDoctrineFinder`
* mrhyde: Fixed issue when calling several termination methods on a finder
* francois: Implemented `sfDoctrineFinder::count()`
* francois: [BC Break] Replaced `sfPropelFinder::setPeerClass()` by `sfPropelFinder::setClass()` (will break classes extending sfPropelFinder)
* francois: Refactored connection management, query reinitialization, and simplified executers signature
* francois: Implemented `sfDoctrineFinder::fromArray()`, and `sfDoctrineFinder::getLatestQuery()`
* francois: Added `DbFinderAdminGenerator` (WIP)
* francois: Fixed problem with `join()` and `with()` when called by children of `sfPropelPager`
* windock: Fixed problem with `paginate()` when called by children of `sfPropelPager`
* mrhyde: Added `sfPropelFinder::groupByClass()` to ease PostgreSQL grouping
* francois: Fixed problem with table alias and PostgreSQL (based on a patch by mrhyde)
* mrhyde: Fixed problem with group by clauses being ripped off by pager
* francois: Implemented `DbFinder::toArray()`, `DbFinder::__toString()` and `DbFinder::toHtml()`
* francois: Implemented `sfDoctrineFinder::findBy()`, `findOneBy()`, `findPk()`, and initialized `where()`
* francois: Added preliminary support for table aliases (`from('Article a')`) in Doctrine and Propel finders
* francois: Implemented `sfDoctrineFinder::findOne()`, `findFirst()`, `findLast()` and `orderBy()`
* francois: Initialized `DbFinder` and `sfDoctrineFinder` (WIP)
</notes>
</release>
</changelog>
</package>