Skip to content

Commit c59d57a

Browse files
authored
Merge pull request #802 from ergebnis/feature/json-unescaped-unicode
Enhancement: Encode JSON with `JSON_UNESCAPED_UNICODE` flag
2 parents 4a8402b + 4ad1181 commit c59d57a

File tree

23 files changed

+25
-23
lines changed

23 files changed

+25
-23
lines changed

CHANGELOG.md

+2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ For a full diff see [`3.0.0...main`][3.0.0...main].
1919
- Allowed configuring the `Normalizer\SchemaNormalizer` to exclude properties from being sorted ([#774]), by [@localheinz]
2020
- Adjusted `Vendor\Composer\BinNormalizer`, `Vendor\Composer\PackageHashNormalizer`, `Vendor\Composer\VersionConstraintNormalizer`, and `SchemaNormalizer` to encode JSON with `JSON_PRETTY_PRINT` flag ([#795]), by [@localheinz]
2121
- Adjusted `Vendor\Composer\BinNormalizer`, `Vendor\Composer\PackageHashNormalizer`, `Vendor\Composer\VersionConstraintNormalizer`, and `SchemaNormalizer` to encode JSON with `JSON_UNESCAPED_SLASHES` flag ([#801]), by [@localheinz]
22+
- Adjusted `Vendor\Composer\BinNormalizer`, `Vendor\Composer\PackageHashNormalizer`, `Vendor\Composer\VersionConstraintNormalizer`, and `SchemaNormalizer` to encode JSON with `JSON_UNESCAPED_UNICODE` flag ([#802]), by [@localheinz]
2223

2324
### Fixed
2425

@@ -550,6 +551,7 @@ For a full diff see [`5d8b3e2...0.1.0`][5d8b3e2...0.1.0].
550551
[#794]: https://github.com/ergebnis/json-normalizer/pull/794
551552
[#795]: https://github.com/ergebnis/json-normalizer/pull/795
552553
[#801]: https://github.com/ergebnis/json-normalizer/pull/801
554+
[#802]: https://github.com/ergebnis/json-normalizer/pull/802
553555

554556
[@BackEndTea]: https://github.com/BackEndTea
555557
[@dependabot]: https://github.com/dependabot

src/Format/JsonEncodeOptions.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ private function __construct(private int $value)
2727

2828
public static function default(): self
2929
{
30-
return new self(\JSON_PRETTY_PRINT | \JSON_UNESCAPED_SLASHES);
30+
return new self(\JSON_PRETTY_PRINT | \JSON_UNESCAPED_SLASHES | \JSON_UNESCAPED_UNICODE);
3131
}
3232

3333
/**

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsArray/Schema/HasType/IsArray/WithItemDefinition/IsTuple/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
9001,
33
false,
44
null,
5-
"Andreas M\u00f6ller",
5+
"Andreas Möller",
66
{
77
"type": "Website",
88
"url": "https://localheinz.com"

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsArray/Schema/HasType/IsScalar/WithItemDefinition/IsTuple/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
9001,
33
false,
44
null,
5-
"Andreas M\u00f6ller",
5+
"Andreas Möller",
66
{
77
"type": "Website",
88
"url": "https://localheinz.com"

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsObject/Schema/HasAnyOf/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "Andreas M\u00f6ller",
2+
"name": "Andreas Möller",
33
"urls": [
44
"https://localheinz.com",
55
"https://github.com/localheinz",

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsObject/Schema/HasOneOf/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "Andreas M\u00f6ller",
2+
"name": "Andreas Möller",
33
"urls": [
44
"https://localheinz.com",
55
"https://github.com/localheinz",

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsObject/Schema/HasReference/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "Andreas M\u00f6ller",
2+
"name": "Andreas Möller",
33
"urls": [
44
{
55
"type": "Website",

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsObject/Schema/HasType/IsArray/WithPropertyDefinitions/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "Andreas M\u00f6ller",
2+
"name": "Andreas Möller",
33
"urls": [
44
{
55
"type": "Website",

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsObject/Schema/HasType/IsArray/WithPropertyDefinitionsAndAdditionalProperties/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "Andreas M\u00f6ller",
2+
"name": "Andreas Möller",
33
"url-github": "https://github.com/localheinz",
44
"url-twitter": "https://twitter.com/localheinz",
55
"url-website": "https://localheinz.com"

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsObject/Schema/HasType/IsScalar/WithPropertyDefinitions/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "Andreas M\u00f6ller",
2+
"name": "Andreas Möller",
33
"urls": [
44
{
55
"type": "Website",

test/Fixture/SchemaNormalizer/NormalizeNormalizes/WithDefaultJsonPointerSpecification/Json/IsObject/Schema/HasType/IsScalar/WithPropertyDefinitionsAndAdditionalProperties/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "Andreas M\u00f6ller",
2+
"name": "Andreas Möller",
33
"url-github": "https://github.com/localheinz",
44
"url-twitter": "https://twitter.com/localheinz",
55
"url-website": "https://localheinz.com"

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Bin/IsArray/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Bin/IsScalar/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Config/AllowPlugins/IsObject/Useful/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Config/AllowPlugins/IsObject/Useless/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Config/AllowPlugins/IsScalar/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Config/PreferredInstall/IsObject/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Config/PreferredInstall/IsScalar/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Extra/InstallerPaths/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Extra/Patches/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/Scripts/AutoScripts/normalized.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"authors": [
1111
{
12-
"name": "Andreas M\u00f6ller",
12+
"name": "Andreas Möller",
1313
"email": "[email protected]"
1414
}
1515
],

test/Fixture/Vendor/Composer/ComposerJsonNormalizer/NormalizeNormalizes/Json/IsObject/normalized.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
"keywords": [
77
"null",
88
"helmut",
9-
"k\u00f6rschgen"
9+
"körschgen"
1010
],
1111
"authors": [
1212
{
13-
"name": "Helmut K\u00f6rschgen",
13+
"name": "Helmut Körschgen",
1414
"homepage": "http://example.org",
1515
"role": "Lieutenant"
1616
}

test/Unit/Format/JsonEncodeOptionsTest.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public function testDefaultReturnsJsonEncodeOptions(): void
3434
{
3535
$jsonEncodeOptions = Format\JsonEncodeOptions::default();
3636

37-
$expected = \JSON_PRETTY_PRINT | \JSON_UNESCAPED_SLASHES;
37+
$expected = \JSON_PRETTY_PRINT | \JSON_UNESCAPED_SLASHES | \JSON_UNESCAPED_UNICODE;
3838

3939
self::assertSame($expected, $jsonEncodeOptions->toInt());
4040
}

0 commit comments

Comments
 (0)