1<?xml version="1.0" encoding="UTF-8"?> 2<package packagerversion="1.9.1" version="2.0" 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" 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"> 3 <name>Translation2</name> 4 <channel>pear.php.net</channel> 5 <summary>Class for multilingual applications management.</summary> 6 <description>This class provides an easy way to retrieve all the strings for a multilingual site from a data source (i.e. db). 7The following containers are provided, more will follow: 8- PEAR::DB 9- PEAR::MDB 10- PEAR::MDB2 11- gettext 12- XML 13- PEAR::DB_DataObject (experimental) 14It is designed to reduce the number of queries to the db, caching the results when possible. 15An Admin class is provided to easily manage translations (add/remove a language, add/remove a string). 16Currently, the following decorators are provided: 17- CacheLiteFunction (for file-based caching) 18- CacheMemory (for memory-based caching) 19- DefaultText (to replace empty strings with their keys) 20- ErrorText (to replace empty strings with a custom error text) 21- Iconv (to switch from/to different encodings) 22- Lang (resort to fallback languages for empty strings) 23- SpecialChars (replace html entities with their hex codes) 24- UTF-8 (to convert UTF-8 strings to ISO-8859-1)</description> 25 <lead> 26 <name>Lorenzo Alberton</name> 27 <user>quipo</user> 28 <email>l.alberton@quipo.it</email> 29 <active>yes</active> 30 </lead> 31 <developer> 32 <name>Ian Eure</name> 33 <user>ieure</user> 34 <email>ieure@php.net</email> 35 <active>yes</active> 36 </developer> 37 <developer> 38 <name>Michael Wallner</name> 39 <user>mike</user> 40 <email>mike@php.net</email> 41 <active>yes</active> 42 </developer> 43 <date>2010-12-06</date> 44 <time>09:26:31</time> 45 <version> 46 <release>2.0.4</release> 47 <api>2.0.2</api> 48 </version> 49 <stability> 50 <release>stable</release> 51 <api>stable</api> 52 </stability> 53 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 54 <notes> 55QA release 56Bug #18081 Translation2.php installed in the wrong place 57 </notes> 58 <contents> 59 <dir baseinstalldir="/" name="/"> 60 <file baseinstalldir="Translation2" md5sum="60fe3be0922e2ab732401836d9e20d44" name="docs/gettext_readme.txt" role="doc" /> 61 <file baseinstalldir="Translation2" md5sum="d3bbc424218c165356bd3f9ea624742f" name="docs/examples/gettext_admin.php" role="doc" /> 62 <file baseinstalldir="Translation2" md5sum="07660adacbafe25b6cea15d007ef7cd4" name="docs/examples/gettext_domains.ini" role="doc" /> 63 <file baseinstalldir="Translation2" md5sum="b7f6f73d7f935a2dee941ca0231ef3cb" name="docs/examples/gettext_langs.ini" role="doc" /> 64 <file baseinstalldir="Translation2" md5sum="6f43d24478d4de0d5505ffb0424f716e" name="docs/examples/gettext_prepare.php" role="doc" /> 65 <file baseinstalldir="Translation2" md5sum="b93fdbaa82d2a58edac0ebd5c96d4473" name="docs/examples/gettext_settings.php" role="doc" /> 66 <file baseinstalldir="Translation2" md5sum="4478a59ef7f6905de905efab26810f18" name="docs/examples/settings.php" role="doc" /> 67 <file baseinstalldir="Translation2" md5sum="89bed48e9a98ad4c910d4add278d5c9b" name="docs/examples/settings_multitable.php" role="doc" /> 68 <file baseinstalldir="Translation2" md5sum="0e8f68b7d713cc1b16965a1da95c1abc" name="docs/examples/Translation2_example.php" role="doc" /> 69 <file baseinstalldir="Translation2" md5sum="b19437377bc378fdb371452f68397443" name="docs/examples/Translation2_example.sql" role="doc" /> 70 <file baseinstalldir="Translation2" md5sum="8ccb374a1c949849868583620e9986c2" name="docs/examples/Translation2_example_multitable.sql" role="doc" /> 71 <file baseinstalldir="Translation2" md5sum="5a5c8cbbde45281e80177f7219f34d21" name="docs/examples/Translation2_gettext_example.php" role="doc" /> 72 <file baseinstalldir="" md5sum="a21a244d222b8b588f66cc284c84c389" name="scripts/t2xmlchk.php" role="script" /> 73 <file baseinstalldir="Translation2" md5sum="582d12163324897cf21a9771cffde9c3" name="tests/admin_containers_tests.php" role="test" /> 74 <file baseinstalldir="Translation2" md5sum="c520a96d1085c259186124ec371a6be3" name="tests/admin_db_test.php" role="test" /> 75 <file baseinstalldir="Translation2" md5sum="b9cc9034cd5b9d7433769f512acf977b" name="tests/admin_db_test_base.php" role="test" /> 76 <file baseinstalldir="Translation2" md5sum="1fbc3227948599c35167bbe8e38f5f0f" name="tests/admin_gettext_mo_test.php" role="test" /> 77 <file baseinstalldir="Translation2" md5sum="140baf7b419bbbd493f838cd55af2c1d" name="tests/admin_gettext_po_test.php" role="test" /> 78 <file baseinstalldir="Translation2" md5sum="b3fb7727ff383f0b980c7c218b04712b" name="tests/admin_gettext_test_base.php" role="test" /> 79 <file baseinstalldir="Translation2" md5sum="079cc50dfb06057e9935ead748104277" name="tests/admin_mdb2_test.php" role="test" /> 80 <file baseinstalldir="Translation2" md5sum="94ffea5a89e1e2e3870c3ada867bb9b3" name="tests/admin_mdb_test.php" role="test" /> 81 <file baseinstalldir="Translation2" md5sum="b795e44e3cc489bc9c50c88b4be676bd" name="tests/admin_xml_test.php" role="test" /> 82 <file baseinstalldir="Translation2" md5sum="57e86888584f6d6583d30ab392e1deeb" name="tests/all_tests.php" role="test" /> 83 <file baseinstalldir="Translation2" md5sum="6aaa397eb6f1a0f90fa3dd53fb721dff" name="tests/containers_tests.php" role="test" /> 84 <file baseinstalldir="Translation2" md5sum="3c31671f943af73e37bbca2560a0bdfd" name="tests/dbms.php" role="test" /> 85 <file baseinstalldir="Translation2" md5sum="dfe317dbc29f4f6b08713304c97e5ce1" name="tests/db_test.php" role="test" /> 86 <file baseinstalldir="Translation2" md5sum="dbe24175b972e60c8b9f25ffdfc6182e" name="tests/db_test_base.php" role="test" /> 87 <file baseinstalldir="Translation2" md5sum="6d58f98953bf041141f3fb5ee3202d02" name="tests/gettext_domains.ini" role="test" /> 88 <file baseinstalldir="Translation2" md5sum="28a3e72eea56bb02a1d2c55bc36cf568" name="tests/gettext_langs.ini" role="test" /> 89 <file baseinstalldir="Translation2" md5sum="d7cc1c7c44746ef403355cccbbf366e3" name="tests/gettext_mo_test.php" role="test" /> 90 <file baseinstalldir="Translation2" md5sum="8340907421f2954b315d14271eddbdec" name="tests/gettext_po_test.php" role="test" /> 91 <file baseinstalldir="Translation2" md5sum="7bb1c1b7c1d717f52074c335636f723d" name="tests/gettext_prepare.php" role="test" /> 92 <file baseinstalldir="Translation2" md5sum="8f74d6ab2cd011088d2a04c8d0ddc778" name="tests/i18n.xml" role="test" /> 93 <file baseinstalldir="Translation2" md5sum="818cb1cf091060680e1bf8975f1d63ee" name="tests/mdb2_test.php" role="test" /> 94 <file baseinstalldir="Translation2" md5sum="6cc54f4070a21c23a40bd27548e9d024" name="tests/mdb_test.php" role="test" /> 95 <file baseinstalldir="Translation2" md5sum="053117e8b71a3152975c645a9dc406d2" name="tests/readme.txt" role="test" /> 96 <file baseinstalldir="Translation2" md5sum="9f58f69e06540cefc108279890df7cdb" name="tests/simple_include.php" role="test" /> 97 <file baseinstalldir="Translation2" md5sum="3149df586b58ed21036b5ab2c2e645cb" name="tests/tests.sql" role="test" /> 98 <file baseinstalldir="Translation2" md5sum="be5815005d52410654afa20c91e27703" name="tests/translation2_admin_include.php" role="test" /> 99 <file baseinstalldir="Translation2" md5sum="e4b52bf0092e051c70493191b94e4654" name="tests/translation2_include.php" role="test" /> 100 <file baseinstalldir="Translation2" md5sum="81ff999471291f06ba5b205e29dd67fd" name="tests/xml_test.php" role="test" /> 101 <file baseinstalldir="/" md5sum="10f34863ca5e4b05603e0590f3b2a2c3" name="Translation2/Admin.php" role="php" /> 102 <file baseinstalldir="/" md5sum="4a83f3f285a679388b3aea941311b97a" name="Translation2/Container.php" role="php" /> 103 <file baseinstalldir="/" md5sum="dece3e0ef93d46bcdf641eff647b3a8b" name="Translation2/Decorator.php" role="php" /> 104 <file baseinstalldir="/" md5sum="045d7e74911d312e7b21e5ba0ce6ebf0" name="Translation2/Admin/Decorator.php" role="php" /> 105 <file baseinstalldir="/" md5sum="b47d81857c1028b40dc9a40e8f3c4afe" name="Translation2/Admin/Container/dataobjectsimple.php" role="php" /> 106 <file baseinstalldir="/" md5sum="d11f30bdbf49d12d813a7725732f4e58" name="Translation2/Admin/Container/db.php" role="php" /> 107 <file baseinstalldir="/" md5sum="28d3d745d48dfc977b7831db931ef659" name="Translation2/Admin/Container/gettext.php" role="php" /> 108 <file baseinstalldir="/" md5sum="729020e1a4c98afef0522b1b8c1489fa" name="Translation2/Admin/Container/mdb.php" role="php" /> 109 <file baseinstalldir="/" md5sum="55a590a80c2c995e0d205fdf54177a59" name="Translation2/Admin/Container/mdb2.php" role="php" /> 110 <file baseinstalldir="/" md5sum="8903f858a69f27d9188bf53ec824a338" name="Translation2/Admin/Container/xml.php" role="php" /> 111 <file baseinstalldir="/" md5sum="984ddd9437d05e5cf3f807bd598df246" name="Translation2/Admin/Decorator/Autoadd.php" role="php" /> 112 <file baseinstalldir="/" md5sum="0d0d12f634f0fda06d6dc55e3a990cf3" name="Translation2/Container/dataobjectsimple.php" role="php" /> 113 <file baseinstalldir="/" md5sum="342a35a0cc3885f4a2020ecd7c9695fe" name="Translation2/Container/db.php" role="php" /> 114 <file baseinstalldir="/" md5sum="db596bb4da3d8adb8cf6a961f38eef7c" name="Translation2/Container/gettext.php" role="php" /> 115 <file baseinstalldir="/" md5sum="a4df1131f2ed48e083c44f6646f299c8" name="Translation2/Container/mdb.php" role="php" /> 116 <file baseinstalldir="/" md5sum="86edee0040371f1192389db2158dbc20" name="Translation2/Container/mdb2.php" role="php" /> 117 <file baseinstalldir="/" md5sum="3f22b9415fa3bd331029067919884d63" name="Translation2/Container/xml.php" role="php" /> 118 <file baseinstalldir="/" md5sum="5fc42128b64af8c2f696b3b5e3822ba8" name="Translation2/Decorator/CacheLiteFunction.php" role="php" /> 119 <file baseinstalldir="/" md5sum="3bbcb710a3016ce9e4602819ad17b21b" name="Translation2/Decorator/CacheMemory.php" role="php" /> 120 <file baseinstalldir="/" md5sum="526f5c9d048d1bb117ae6f0696e9b55e" name="Translation2/Decorator/DefaultText.php" role="php" /> 121 <file baseinstalldir="/" md5sum="4ba13dc8e09f9c029d2eee6c9ef6db95" name="Translation2/Decorator/ErrorText.php" role="php" /> 122 <file baseinstalldir="/" md5sum="57c878ee905ce3315e2a67781690eb4d" name="Translation2/Decorator/Iconv.php" role="php" /> 123 <file baseinstalldir="/" md5sum="f35a573e3b533e8d9ee58ce9921dd073" name="Translation2/Decorator/Lang.php" role="php" /> 124 <file baseinstalldir="/" md5sum="5d6b1a88b5a71c531ef3431c79ff7497" name="Translation2/Decorator/SpecialChars.php" role="php" /> 125 <file baseinstalldir="/" md5sum="2aff1bc43bc302397ea78b6156aa785f" name="Translation2/Decorator/UTF8.php" role="php" /> 126 <file baseinstalldir="/" md5sum="2a7d0c4e0a9f8899ecf257d099810900" name="Translation2.php" role="php" /> 127 </dir> 128 </contents> 129 <dependencies> 130 <required> 131 <php> 132 <min>4.0.0</min> 133 </php> 134 <pearinstaller> 135 <min>1.4.0b1</min> 136 </pearinstaller> 137 </required> 138 <optional> 139 <package> 140 <name>Cache_Lite</name> 141 <channel>pear.php.net</channel> 142 </package> 143 <package> 144 <name>DB</name> 145 <channel>pear.php.net</channel> 146 </package> 147 <package> 148 <name>DB_DataObject</name> 149 <channel>pear.php.net</channel> 150 </package> 151 <package> 152 <name>MDB</name> 153 <channel>pear.php.net</channel> 154 </package> 155 <package> 156 <name>MDB2</name> 157 <channel>pear.php.net</channel> 158 </package> 159 <package> 160 <name>File_Gettext</name> 161 <channel>pear.php.net</channel> 162 </package> 163 <package> 164 <name>I18Nv2</name> 165 <channel>pear.php.net</channel> 166 <min>0.9.1</min> 167 </package> 168 <package> 169 <name>XML_Serializer</name> 170 <channel>pear.php.net</channel> 171 <min>0.13.0</min> 172 </package> 173 <extension> 174 <name>gettext</name> 175 </extension> 176 </optional> 177 </dependencies> 178 <phprelease> 179 <filelist> 180 <install as="t2xmlchk.php" name="scripts/t2xmlchk.php" /> 181 </filelist> 182 </phprelease> 183 <changelog> 184 <release> 185 <version> 186 <release>0.0.1</release> 187 <api>0.0.1</api> 188 </version> 189 <stability> 190 <release>alpha</release> 191 <api>alpha</api> 192 </stability> 193 <date>2004-01-21</date> 194 <license uri="http://www.php.net/license">PHP License</license> 195 <notes> 196First alpha release 197 </notes> 198 </release> 199 <release> 200 <version> 201 <release>2.0.0alpha2</release> 202 <api>2.0.0alpha2</api> 203 </version> 204 <stability> 205 <release>alpha</release> 206 <api>alpha</api> 207 </stability> 208 <date>2004-02-05</date> 209 <license uri="http://www.php.net/license">PHP License</license> 210 <notes> 211- added an experimental GNU gettext driver 212- translate() now accepts a third parameter ($pageID) 213- PHP5 fix 214- renamed old getPage() to getRawPage() 215- new getPage() resorts to fallback lang and replaces parameters when needed 216- added error checking/codes 217 </notes> 218 </release> 219 <release> 220 <version> 221 <release>2.0.0beta1</release> 222 <api>2.0.0beta1</api> 223 </version> 224 <stability> 225 <release>beta</release> 226 <api>beta</api> 227 </stability> 228 <date>2004-05-05</date> 229 <license uri="http://www.php.net/license">PHP License</license> 230 <notes> 231- BC break! Run the example to see what's new 232- refactoring in progress: 233 added a Decorator class and some subclasses to control 234 the output (now you can set a stack of fallback languages, 235 a filter to deal with empty strings, one or more cache layers...) 236- improved gettext support (thanks to Michael Wallner) 237- added gettext admin class 238- fixes in the db admin classes 239- when adding a new string, if it matches one already in the db, 240 the old one is replaced by the new one. 241- added a MDB2 container 242- added a DB_DataObject container (by Alan Knowles) 243 </notes> 244 </release> 245 <release> 246 <version> 247 <release>2.0.0beta3</release> 248 <api>2.0.0beta3</api> 249 </version> 250 <stability> 251 <release>beta</release> 252 <api>beta</api> 253 </stability> 254 <date>2004-11-11</date> 255 <license uri="http://www.php.net/license">PHP License</license> 256 <notes> 257- Welcome to the new developers, Ian Eure and Michael Wallner 258- The last release contained an old gettext driver (bug #2503) (ieure) 259- Many portability fixes applied to the database containers (thanks to Ian Eure and 260 Xavier Lembo for their suggestions and patches) 261- Minor changes to the table definitions for better portability (lowercase field names, 262 VARCHAR instead of CHAR, bigger field size) 263- setLang() now returns an error if called with an unknown $langID (bug #2498). 264- Added $cleaningFrequency option to the CacheLiteFunction to implement 265 statistic cache cleaning 266- Added Translation2_Admin::cleanCache() method to clean the cache on demand. 267 It is automatically triggered after a change if $options['autoCleanCache'] is TRUE. 268- Big cleanup of the DB and Admin_DB containers. See CVS changelog for details. 269 (ieure) 270- Added update() method to Translation2_Admin. This is a BC break; you used to be able 271 to update strings with add(). This is no longer possible, use update(). (ieure) 272- Re-added a check in add() to see if an update() is needed instead of an insert 273- String ID columns are created as type TEXT to support gettext-style string IDs. 274 (ieure) 275- Reflect the changes made to the DB container into the MDB and MDB2 containers too, 276 plus other minor fixes/optimizations. 277- strings_default_table may use %s to represent the language name. You may now have one 278 table per language without having to explicitly specify them all. (ieure) 279- DefaultText decorator has new getStringID() method, which will return the string which 280 was requested if no stringID exists. This mirrors the gettext() semantics. (ieure) 281- Added Admin_Decorator class, which allows you to create Decorators for 282 Translation2_Admin. (ieure) 283- New 'Autoadd' Admin Decorator, which automatically adds requested strings. (ieure) 284- Removed translate(), added getStringID(). You can mimic the old behaviour in 285 two steps: 286 $stringID = $tr->getStringID('mystring', 'mypage'); 287 $translatedString = $tr->get($stringID, 'mypage', $otherLangID); 288- Major cleanup of the gettext container and added some examples (mike) 289- removeLang() was missing. Fixed. 290- The gettext container no longer require the gettext extension (thanks to Sergey Korotkov); 291 it is used when loaded, though, since it's faster. 292- Both .mo and .po files are valid data sources for the gettext container (Sergey Korotkov) 293- New Iconv decorator based on the one written by Sergey Korotkov 294- Added a new "encoding" column to the langsAvail table 295- New xml container by Olivier Guilyardi 296 </notes> 297 </release> 298 <release> 299 <version> 300 <release>2.0.0beta4</release> 301 <api>2.0.0beta4</api> 302 </version> 303 <stability> 304 <release>beta</release> 305 <api>beta</api> 306 </stability> 307 <date>2004-11-20</date> 308 <license uri="http://www.php.net/license">PHP License</license> 309 <notes> 310- added a complete TestSuite 311- updated gettext docs 312- fixed typo in error code (TRANSLATION_ERROR_UNKNOWN_LANG => TRANSLATION2_ERROR_UNKNOWN_LANG) 313- fixed typo in the MDB Admin container [quote() => getTextValue()] 314- fixed typo in db admin containers ($this->queries => $this->_queries) 315- in the gettext admin container 316- fixed many bugs in the gettext admin container: 317 * fixed old field [remove "windows", add "encoding"] 318 * fixed error in remove() [can't pass by reference] 319 * fixed typo in update() [$stingID => $stringID] 320 * in _add(), create the domains on demand 321 * handle stale cache 322- many fixes/updates to the xml container: 323 * init() accepts an array as parameter (not a string) 324 * added 'save_on_shutdown' option 325 (you can choose to save in real time, now) 326 * return Translation2 errors with numeric codes 327 * added 'encoding' field 328 * added removeLang() 329 * other minor fixes and tweaks 330 </notes> 331 </release> 332 <release> 333 <version> 334 <release>2.0.0beta5</release> 335 <api>2.0.0beta5</api> 336 </version> 337 <stability> 338 <release>beta</release> 339 <api>beta</api> 340 </stability> 341 <date>2004-12-24</date> 342 <license uri="http://www.php.net/license">PHP License</license> 343 <notes> 344- renamed createNewLang() to addLang() [BC break!] 345- renamed addLangToAvailList() to addLangToList() 346- added Translation2_Admin::getPageNames() 347- added Translation2_Admin::updateLang() 348- fixed bug #2890: getLang() raised a NOTICE if setLang() was not called before 349- fixed bug #2972: CacheLiteFunction decorator not handling 350 parameter subtitution as expected 351- updated dataobjectsimple container (alank) 352- some internal minor fixes and tweaks 353 </notes> 354 </release> 355 <release> 356 <version> 357 <release>2.0.0beta6</release> 358 <api>2.0.0beta6</api> 359 </version> 360 <stability> 361 <release>beta</release> 362 <api>beta</api> 363 </stability> 364 <date>2005-01-30</date> 365 <license uri="http://www.php.net/license">PHP License</license> 366 <notes> 367- added Translation2::getRaw() 368- fixed bug #3068: Translation2_Admin::update() on multiple tables didn't insert 369 new records for missing langs, only updated the existing ones. 370- fixed bug #3149: XML container didn't properly handle redundant strings 371- added TRANSLATION2_DTD constant to the xml container (thanks to Olivier Guilyardi) 372- added t2xmlchk.php script to check if a XML file is Translation2 compliant 373 (thanks to Olivier Guilyardi) 374- added ErrorText decorator 375 </notes> 376 </release> 377 <release> 378 <version> 379 <release>2.0.0beta7</release> 380 <api>2.0.0beta7</api> 381 </version> 382 <stability> 383 <release>beta</release> 384 <api>beta</api> 385 </stability> 386 <date>2005-06-28</date> 387 <license uri="http://www.php.net/license">PHP License</license> 388 <notes> 389- added some options to the DefaultText decoration, now it is more customizable 390 (thanks to Rolf 'Red' Ochsenbein) 391- added a __clone() method to clone the internal object references 392 (bug #3641, patch by Olivier Guilyardi) 393- Some fixes to the XML container, many thanks to Olivier Guilyardi: 394 * fixed bug #3408: empty data sets were not correctly handled; 395 * fixed bug #3420: get a shared file lock instead of an exclusive one; 396 * fixed bug #3498: saveData() is not registered multiple times as shutdown 397 function anymore; optimized saving when save_on_shutdown is set to false. 398- added blank_on_missing option to the gettext container, which makes it 399 behave like the other containers and automatically disables native mode; 400 * see bug #4002 401- fixed bug #4476: gettext container not working without the gettext extension 402 (thanks to sergey at pushok dot com) 403- added setContainerOptions() method to alter some container options after 404 the object instantiation (bug #2508) 405- some minor fixes 406 </notes> 407 </release> 408 <release> 409 <version> 410 <release>2.0.0beta8</release> 411 <api>2.0.0beta8</api> 412 </version> 413 <stability> 414 <release>beta</release> 415 <api>beta</api> 416 </stability> 417 <date>2005-10-04</date> 418 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 419 <notes> 420- changed license to BSD 421- removeLang() used to drop the entire table if there weren't any languages left. 422 Now it does so only if the $force parameter is set (request #4218 and #5142) 423- Translation2_Decorator now extends Translation2 424- fixed warning with the CacheLiteFunction decorator and PHP 5.1 425 </notes> 426 </release> 427 <release> 428 <version> 429 <release>2.0.0beta9</release> 430 <api>2.0.0beta9</api> 431 </version> 432 <stability> 433 <release>beta</release> 434 <api>beta</api> 435 </stability> 436 <date>2006-02-22</date> 437 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 438 <notes> 439- Translation2_Decorator_Lang: append keys when fallback lang 440 contains more than current (request #5773) 441- Removed leftover code from the MDB admin container that caused 442 inserting the same record twice (bug #6233) 443- Better error handling and cache refreshing in the gettext driver 444 (bug #6410) [thanks to Alan Knowles and ivanwyc@gmail.com] 445- Honor global PEAR error settings in Translation2_Container::raiseError() 446 (bug #6574) 447- Added missing updateLang() proxy in Translation2_Admin_Decorator (bug #6753) 448- Added length to INDEX on TEXT column in Translation2_Admin::addLang() 449 when the dbms is MySQL (thanks to AJ Tarachanowicz) 450- Fixed UNIQUE INDEX in Translation2_Admin::addLang(), one of the two columns 451 got lost in a previous revision 452 </notes> 453 </release> 454 <release> 455 <version> 456 <release>2.0.0beta10</release> 457 <api>2.0.0beta10</api> 458 </version> 459 <stability> 460 <release>beta</release> 461 <api>beta</api> 462 </stability> 463 <date>2006-07-12</date> 464 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 465 <notes> 466- fixed bug #7058, issue with array_merge not respecting existing array keys 467- request #7736: ability to specify CacheLite group for CacheLite Decorator 468 (thanks to ajt at localhype dot net) 469- if an empty xml file is given, don't return an error (bug #7793) 470- propagate errors in getPage() and getOne() (bug #8127) 471- Fix Autoadd decorator, which was not adding entries for new string IDs for all languages, 472 which made update() to fail on those strings. 473 </notes> 474 </release> 475 <release> 476 <version> 477 <release>2.0.0beta11</release> 478 <api>2.0.0beta11</api> 479 </version> 480 <stability> 481 <release>beta</release> 482 <api>beta</api> 483 </stability> 484 <date>2006-09-07</date> 485 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 486 <notes> 487- fixed an error that would result in losing strings when getting a specific 488 language's string in Translation2_Admin_Decorator_Autoadd. 489- fixed bug #8287: addLang() SQL not compatible with MSSQL 490- fixed MDB/MDB2 test runner 491- fixed bug #8546: column/table names are not escaped in SQL queries 492 </notes> 493 </release> 494 <release> 495 <version> 496 <release>2.0.0beta12</release> 497 <api>2.0.0beta12</api> 498 </version> 499 <stability> 500 <release>beta</release> 501 <api>beta</api> 502 </stability> 503 <date>2006-12-15</date> 504 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 505 <notes> 506- force MDB2_FETCHMODE_ORDERED in Translation2_Container_mdb2::getPage() to 507 avoid error when using an existing db connection with fetchmode set to 508 MDB2_FETCHMODE_ASSOC (bug #8734) 509- force lowercase keys in fetchLang() for Oracle compatibility (bug #8915) 510- added defaultGroup to cache_lite options 511- added new $options optional parameter to addLang() to set charset/collate info 512 (MDB2 driver only) 513- fixed bug #8546: index names are not escaped in SQL queries (DB and MDB admin 514 containers) 515- fixed dataobjectsimple container, get[Raw]Page() was returning integers as 516 keys instead of strings (thanks to Michael Henry) 517- added setCharset() method (currently only implemented in the MDB2 driver) 518- added setLang() and setCacheOption() in CacheLiteFunction decorator (request #9301) 519 (thanks to Sascha Grossenbacher) 520- fixed bug #5539: DefaultText decorator does not call _replaceParams() 521 </notes> 522 </release> 523 <release> 524 <version> 525 <release>2.0.0RC1</release> 526 <api>2.0.0RC1</api> 527 </version> 528 <stability> 529 <release>beta</release> 530 <api>beta</api> 531 </stability> 532 <date>2007-07-29</date> 533 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 534 <notes> 535- fixed bug #9855: missing call to _prepare() in setLang() 536- propagate errors in the decorators 537- fixed testsuite: added missing db_test_base.php file and 538 fixed problem with class redeclaration 539- fixed constraint creation in addLang() in the MDB2 Admin driver 540- fixed setCharset() proxy in the Decorator 541- fixed bug #11482: missing return in Translation2_Admin_Container_mdb2::addLang() 542 when the table already exists 543 </notes> 544 </release> 545 <release> 546 <version> 547 <release>2.0.0RC2</release> 548 <api>2.0.0RC2</api> 549 </version> 550 <stability> 551 <release>beta</release> 552 <api>beta</api> 553 </stability> 554 <date>2007-11-25</date> 555 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 556 <notes> 557- request #11711: added setCharset() method in the DB container 558- bug #11880: [XML driver] removing one language removes all strings for all languages 559- request #11881: getLang(..., 'array') now returns a 'lang_id' alias to 'id' 560- bug #12183: language ID '0' considered invalid 561- bug #12398: fixed return value of addLangToList() and updateLang() in the MDB2 562 admin container 563- request #12405: added removePage() method in the Admin module 564- added getLang() and getLangs() to the CacheLiteFunction Decorator 565- fixed the test suite 566- fixed Coding Standards 567 </notes> 568 </release> 569 <release> 570 <version> 571 <release>2.0.0RC3</release> 572 <api>2.0.0RC3</api> 573 </version> 574 <stability> 575 <release>beta</release> 576 <api>beta</api> 577 </stability> 578 <date>2007-12-05</date> 579 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 580 <notes> 581- fixed bug #12525: moved t2xmlchk.php script to / baseinstalldir 582- fixed bug #12527: rewritten CacheMemory Decorator to properly prefetch pages 583 </notes> 584 </release> 585 <release> 586 <version> 587 <release>2.0.0RC4</release> 588 <api>2.0.0RC4</api> 589 </version> 590 <stability> 591 <release>beta</release> 592 <api>beta</api> 593 </stability> 594 <date>2008-02-23</date> 595 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 596 <notes> 597- fixed bug #12703: CacheLiteFunction decorator and getLang() issue 598- fixed some E_STRICT warnings 599- fixed getStringID() 600 </notes> 601 </release> 602 <release> 603 <version> 604 <release>2.0.0</release> 605 <api>2.0.0</api> 606 </version> 607 <stability> 608 <release>stable</release> 609 <api>stable</api> 610 </stability> 611 <date>2008-05-06</date> 612 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 613 <notes> 614- fixed a few PHP5 NOTICEs 615- request #13734: added 'string_page_id_col_length' option to set the size of the 616 pageID field in the translations table 617 </notes> 618 </release> 619 <release> 620 <version> 621 <release>2.0.1</release> 622 <api>2.0.1</api> 623 </version> 624 <stability> 625 <release>stable</release> 626 <api>stable</api> 627 </stability> 628 <date>2008-11-14</date> 629 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 630 <notes> 631- fixed bug #13933: undefined variable in the dataobjectsimple driver 632- fixed bug #14323: wrong / no error from setLang() [cwiedmann] 633- fixed bug in getLangs(), where certain formats were not recognized 634- request #14979: fluent interface for setPageID() and setParams() 635 and for setOption() and setOptions() decorator methods 636- request #15000: added SQL example in the /docs/examples dir 637 </notes> 638 </release> 639 <release> 640 <version> 641 <release>2.0.2</release> 642 <api>2.0.2</api> 643 </version> 644 <stability> 645 <release>stable</release> 646 <api>stable</api> 647 </stability> 648 <date>2009-12-27</date> 649 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 650 <notes> 651- fixed bug #16787: charset and collation options are ignored on i18n table creation 652 </notes> 653 </release> 654 <release> 655 <version> 656 <release>2.0.3</release> 657 <api>2.0.2</api> 658 </version> 659 <stability> 660 <release>stable</release> 661 <api>stable</api> 662 </stability> 663 <date>2010-10-25</date> 664 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 665 <notes> 666Automatically built QA release 667Req #16787 default 'latin1_swedish_ci' db created with collation set to 668utf8_unicode_ci - quipo 669 </notes> 670 </release> 671 <release> 672 <version> 673 <release>2.0.4</release> 674 <api>2.0.2</api> 675 </version> 676 <stability> 677 <release>stable</release> 678 <api>stable</api> 679 </stability> 680 <date>2010-12-06</date> 681 <license uri="http://www.debian.org/misc/bsd.license">BSD</license> 682 <notes> 683QA release 684Bug #18081 Translation2.php installed in the wrong place 685 </notes> 686 </release> 687 </changelog> 688</package> 689