1# Change Log 2 3All notable changes to this project will be documented in this file. 4 5The format is based on [Keep a Changelog](http://keepachangelog.com/) 6and this project adheres to [Semantic Versioning](http://semver.org/). 7 8Previous releases are documented in [github releases](https://github.com/oscarotero/Gettext/releases) 9 10## [4.8.4] - 2021-03-10 11### Fixed 12- PHP 8 compatibilty [#266] 13 14## [4.8.3] - 2020-11-18 15### Fixed 16- Blade extractor for Laravel8/Jetstream [#261] 17 18## [4.8.2] - 2019-12-02 19### Fixed 20- UTF-8 handling for VueJs extractor [#242] 21 22## [4.8.1] - 2019-11-15 23### Fixed 24- Php error when scanning for a single domain but other string found [#238] 25 26## [4.8.0] - 2019-11-04 27### Changed 28- Many `private` properties and methods were changed to `protected` in order to improve the extensibility [#231] 29 30### Fixed 31- PHP 7.4 support [#230] 32 33## [4.7.0] - 2019-10-07 34### Added 35- Support for UnitID in Xliff [#221] [#224] [#225] 36- Support for scan multiple domains at the same time [#223] 37 38### Fixed 39- New lines in windows [#218] [#226] 40 41## [4.6.3] - 2019-07-15 42### Added 43- Some VueJs extraction improvements and additions [#205], [#213] 44 45### Fixed 46- Multiline extractions in jsCode [#200] 47- Support for js template literals [#214] 48- Fixed tabs in PHP comments [#215] 49 50## [4.6.2] - 2019-01-12 51### Added 52- New option `facade` in blade extractor to use a facade instead create a blade compiler [#197], [#198] 53 54### Fixed 55- Added php-7.3 to travis 56- Added VueJS extractor method docblocks for IDEs [#191] 57 58## [4.6.1] - 2018-08-27 59### Fixed 60- VueJS DOM parsing [#188] 61- Javascript parser was unable to extract some functions [#187] 62 63## [4.6.0] - 2018-06-26 64### Added 65- New extractor for VueJs [#178] 66 67### Fixed 68- Do not include empty translations containing the headers in the translator [#182] 69- Test enhancement [#177] 70 71## [4.5.0] - 2018-04-23 72### Added 73- Support for disabled translations 74 75### Fixed 76- Added php-7.2 to travis 77- Fixed po tests on bigendian [#159] 78- Improved comment estraction [#166] 79- Fixed incorrect docs to dn__ function [#170] 80- Ignored phpcs.xml file on export [#168] 81- Improved `@method` docs in `Translations` [#175] 82 83## [4.4.4] - 2018-02-21 84### Fixed 85- Changed the comment extraction to be compatible with gettext behaviour: the comment must be placed in the line preceding the function [#161] 86 87### Security 88- Validate eval input from plural forms [#156] 89 90## [4.4.3] - 2017-08-09 91### Fixed 92- Handle `NULL` arguments on extract entries in php. For example `dn__(null, 'singular', 'plural')`. 93- Fixed the `PhpCode` and `JsCode` extractors that didn't extract `dn__` and `dngettext` entries [#155]. 94- Fixed the `PhpCode` and `JsCode` extractors that didn't extract `dnpgettext` correctly. 95 96## [4.4.2] - 2017-07-27 97### Fixed 98- Clone the translations in `Translations::mergeWith` to prevent that the translation is referenced in both places. [#152] 99- Fixed escaped quotes in the javascript extractor [#154] 100 101## [4.4.1] - 2017-05-20 102### Fixed 103- Fixed a bug where the options was not passed correctly to the merging Translations object [#147] 104- Unified the plural behaviours between PHP gettext and Translator when the plural translation is unknown [#148] 105- Removed the deprecated function `create_function()` and use `eval()` instead 106 107## [4.4.0] - 2017-05-10 108### Added 109- New option `noLocation` to po generator, to omit the references [#143] 110- New options `delimiter`, `enclosure` and `escape_char` to Csv and CsvDictionary extractors and generators [#145] 111- Added the missing `dn__()` function [#146] 112 113### Fixed 114- Improved the code style including php_codesniffer in development 115 116## 4.3.0 - 2017-03-04 117### Added 118- Added support for named placeholders (using `strtr`). For example: 119 ```php 120 __('Hello :name', [':name' => 'World']); 121 ``` 122- Added support for Twig v2 123- New function `BaseTranslator::includeFunctions()` to include the functions file without register any translator 124 125### Fixed 126- Fixed a bug related with the javascript source extraction with single quotes 127 128[#143]: https://github.com/oscarotero/Gettext/issues/143 129[#145]: https://github.com/oscarotero/Gettext/issues/145 130[#146]: https://github.com/oscarotero/Gettext/issues/146 131[#147]: https://github.com/oscarotero/Gettext/issues/147 132[#148]: https://github.com/oscarotero/Gettext/issues/148 133[#152]: https://github.com/oscarotero/Gettext/issues/152 134[#154]: https://github.com/oscarotero/Gettext/issues/154 135[#155]: https://github.com/oscarotero/Gettext/issues/155 136[#156]: https://github.com/oscarotero/Gettext/issues/156 137[#159]: https://github.com/oscarotero/Gettext/issues/159 138[#161]: https://github.com/oscarotero/Gettext/issues/161 139[#166]: https://github.com/oscarotero/Gettext/issues/166 140[#168]: https://github.com/oscarotero/Gettext/issues/168 141[#170]: https://github.com/oscarotero/Gettext/issues/170 142[#175]: https://github.com/oscarotero/Gettext/issues/175 143[#177]: https://github.com/oscarotero/Gettext/issues/177 144[#178]: https://github.com/oscarotero/Gettext/issues/178 145[#182]: https://github.com/oscarotero/Gettext/issues/182 146[#187]: https://github.com/oscarotero/Gettext/issues/187 147[#188]: https://github.com/oscarotero/Gettext/issues/188 148[#191]: https://github.com/oscarotero/Gettext/issues/191 149[#197]: https://github.com/oscarotero/Gettext/issues/197 150[#198]: https://github.com/oscarotero/Gettext/issues/198 151[#200]: https://github.com/oscarotero/Gettext/issues/200 152[#205]: https://github.com/oscarotero/Gettext/issues/205 153[#213]: https://github.com/oscarotero/Gettext/issues/213 154[#214]: https://github.com/oscarotero/Gettext/issues/214 155[#215]: https://github.com/oscarotero/Gettext/issues/215 156[#218]: https://github.com/oscarotero/Gettext/issues/218 157[#221]: https://github.com/oscarotero/Gettext/issues/221 158[#223]: https://github.com/oscarotero/Gettext/issues/223 159[#224]: https://github.com/oscarotero/Gettext/issues/224 160[#225]: https://github.com/oscarotero/Gettext/issues/225 161[#226]: https://github.com/oscarotero/Gettext/issues/226 162[#230]: https://github.com/oscarotero/Gettext/issues/230 163[#231]: https://github.com/oscarotero/Gettext/issues/231 164[#238]: https://github.com/oscarotero/Gettext/issues/238 165[#242]: https://github.com/oscarotero/Gettext/issues/242 166[#261]: https://github.com/oscarotero/Gettext/issues/261 167[#266]: https://github.com/oscarotero/Gettext/issues/266 168 169[4.8.4]: https://github.com/oscarotero/Gettext/compare/v4.8.3...v4.8.4 170[4.8.3]: https://github.com/oscarotero/Gettext/compare/v4.8.2...v4.8.3 171[4.8.2]: https://github.com/oscarotero/Gettext/compare/v4.8.1...v4.8.2 172[4.8.1]: https://github.com/oscarotero/Gettext/compare/v4.8.0...v4.8.1 173[4.8.0]: https://github.com/oscarotero/Gettext/compare/v4.7.0...v4.8.0 174[4.7.0]: https://github.com/oscarotero/Gettext/compare/v4.6.3...v4.7.0 175[4.6.3]: https://github.com/oscarotero/Gettext/compare/v4.6.2...v4.6.3 176[4.6.2]: https://github.com/oscarotero/Gettext/compare/v4.6.1...v4.6.2 177[4.6.1]: https://github.com/oscarotero/Gettext/compare/v4.6.0...v4.6.1 178[4.6.0]: https://github.com/oscarotero/Gettext/compare/v4.5.0...v4.6.0 179[4.5.0]: https://github.com/oscarotero/Gettext/compare/v4.4.4...v4.5.0 180[4.4.4]: https://github.com/oscarotero/Gettext/compare/v4.4.3...v4.4.4 181[4.4.3]: https://github.com/oscarotero/Gettext/compare/v4.4.2...v4.4.3 182[4.4.2]: https://github.com/oscarotero/Gettext/compare/v4.4.1...v4.4.2 183[4.4.1]: https://github.com/oscarotero/Gettext/compare/v4.4.0...v4.4.1 184[4.4.0]: https://github.com/oscarotero/Gettext/compare/v4.3.0...v4.4.0 185