Skip to content

Commit c44a2e8

Browse files
committed
[Translation] Remove deprecated escape parameter from CsvFileLoader
1 parent 6ab4a14 commit c44a2e8

File tree

5 files changed

+34
-23
lines changed

5 files changed

+34
-23
lines changed

UPGRADE-8.0.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,31 @@ Serializer
352352
* Remove `AdvancedNameConverterInterface`, use `NameConverterInterface` instead
353353
* Remove the `CompiledClassMetadataFactory` and `CompiledClassMetadataCacheWarmer` classes
354354

355+
Translation
356+
-----------
357+
358+
* Remove the `$escape` parameter from `CsvFileLoader::setCsvControl()`
359+
360+
*Before*
361+
```php
362+
use Symfony\Component\Translation\Loader\CsvFileLoader;
363+
364+
$loader = new CsvFileLoader();
365+
366+
// Set CSV control characters including escape character
367+
$loader->setCsvControl(';', '"', '\\');
368+
```
369+
370+
*After*
371+
```php
372+
use Symfony\Component\Translation\Loader\CsvFileLoader;
373+
374+
$loader = new CsvFileLoader();
375+
376+
// The escape parameter has been removed
377+
$loader->setCsvControl(';', '"');
378+
```
379+
355380
TwigBridge
356381
----------
357382

src/Symfony/Component/Translation/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
CHANGELOG
22
=========
33

4+
8.0
5+
---
6+
7+
* Remove the `$escape` parameter from `CsvFileLoader::setCsvControl()`
8+
* Remove `symfony/deprecation-contracts` dependency
9+
410
7.3
511
---
612

src/Symfony/Component/Translation/Loader/CsvFileLoader.php

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,6 @@ class CsvFileLoader extends FileLoader
2222
{
2323
private string $delimiter = ';';
2424
private string $enclosure = '"';
25-
/**
26-
* @deprecated since Symfony 7.2, to be removed in 8.0
27-
*/
28-
private string $escape = '';
2925

3026
protected function loadResource(string $resource): array
3127
{
@@ -38,7 +34,7 @@ protected function loadResource(string $resource): array
3834
}
3935

4036
$file->setFlags(\SplFileObject::READ_CSV | \SplFileObject::SKIP_EMPTY);
41-
$file->setCsvControl($this->delimiter, $this->enclosure, $this->escape);
37+
$file->setCsvControl($this->delimiter, $this->enclosure);
4238

4339
foreach ($file as $data) {
4440
if (false === $data) {
@@ -54,16 +50,11 @@ protected function loadResource(string $resource): array
5450
}
5551

5652
/**
57-
* Sets the delimiter, enclosure, and escape character for CSV.
53+
* Sets the delimiter and enclosure character for CSV.
5854
*/
59-
public function setCsvControl(string $delimiter = ';', string $enclosure = '"', string $escape = ''): void
55+
public function setCsvControl(string $delimiter = ';', string $enclosure = '"'): void
6056
{
6157
$this->delimiter = $delimiter;
6258
$this->enclosure = $enclosure;
63-
if ('' !== $escape) {
64-
trigger_deprecation('symfony/translation', '7.2', 'The "escape" parameter of the "%s" method is deprecated. It will be removed in 8.0.', __METHOD__);
65-
}
66-
67-
$this->escape = $escape;
6859
}
6960
}

src/Symfony/Component/Translation/Tests/Loader/CsvFileLoaderTest.php

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -58,14 +58,4 @@ public function testLoadNonLocalResource()
5858
(new CsvFileLoader())->load('http://example.com/resources.csv', 'en', 'domain1');
5959
}
6060

61-
/**
62-
* @group legacy
63-
*/
64-
public function testEscapeCharInCsvControlIsDeprecated()
65-
{
66-
$loader = new CsvFileLoader();
67-
68-
$this->expectUserDeprecationMessage('Since symfony/translation 7.2: The "escape" parameter of the "Symfony\Component\Translation\Loader\CsvFileLoader::setCsvControl" method is deprecated. It will be removed in 8.0.');
69-
$loader->setCsvControl(';', '"', '\\');
70-
}
7161
}

src/Symfony/Component/Translation/composer.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
],
1818
"require": {
1919
"php": ">=8.4",
20-
"symfony/deprecation-contracts": "^2.5|^3",
2120
"symfony/polyfill-mbstring": "^1.0",
2221
"symfony/translation-contracts": "^2.5|^3.0"
2322
},

0 commit comments

Comments
 (0)