From 6af177b8ecd74fe235e2b92c6f11a824708c43b2 Mon Sep 17 00:00:00 2001 From: ksvirkou-hubspot Date: Wed, 25 Mar 2026 16:46:40 +0300 Subject: [PATCH 1/5] Php: Fix form data field names to use spec-defined baseName instead of paramName --- modules/openapi-generator/src/main/resources/php/api.mustache | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/resources/php/api.mustache b/modules/openapi-generator/src/main/resources/php/api.mustache index ccae14d1424b..7d25f0d82d4e 100644 --- a/modules/openapi-generator/src/main/resources/php/api.mustache +++ b/modules/openapi-generator/src/main/resources/php/api.mustache @@ -654,7 +654,7 @@ use {{invokerPackage}}\ObjectSerializer; $formData = $formDataProcessor->prepare([ {{/-first}} - '{{paramName}}' => ${{paramName}}, + '{{baseName}}' => ${{paramName}}, {{#-last}} ]); From e61593831fd74fcb388cab7daaa136419a859898 Mon Sep 17 00:00:00 2001 From: ksvirkou-hubspot Date: Wed, 25 Mar 2026 16:49:58 +0300 Subject: [PATCH 2/5] Regenerate tests --- .../petstore/php/OpenAPIClient-php/lib/Api/FakeApi.php | 2 +- .../petstore/php/OpenAPIClient-php/lib/Api/PetApi.php | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Api/FakeApi.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Api/FakeApi.php index 3c4833213fde..41ae26b81611 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Api/FakeApi.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Api/FakeApi.php @@ -5647,7 +5647,7 @@ public function testEndpointParametersRequest($number, $double, $pattern_without 'byte' => $byte, 'binary' => $binary, 'date' => $date, - 'date_time' => $date_time, + 'dateTime' => $date_time, 'password' => $password, 'callback' => $callback, ]); diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Api/PetApi.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Api/PetApi.php index 5afbdb9c3777..0e75b91decb8 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Api/PetApi.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Api/PetApi.php @@ -2431,7 +2431,7 @@ public function uploadFileRequest($pet_id, $additional_metadata = null, $file = $formDataProcessor = new FormDataProcessor(); $formData = $formDataProcessor->prepare([ - 'additional_metadata' => $additional_metadata, + 'additionalMetadata' => $additional_metadata, 'file' => $file, ]); @@ -2732,8 +2732,8 @@ public function uploadFileWithRequiredFileRequest($pet_id, $required_file, $addi $formDataProcessor = new FormDataProcessor(); $formData = $formDataProcessor->prepare([ - 'additional_metadata' => $additional_metadata, - 'required_file' => $required_file, + 'additionalMetadata' => $additional_metadata, + 'requiredFile' => $required_file, ]); $formParams = $formDataProcessor->flatten($formData); @@ -3078,7 +3078,7 @@ public function uploadImageFullFormDataRequest($pet_id, $name, $photo_urls, $id 'id' => $id, 'category' => $category, 'name' => $name, - 'photo_urls' => $photo_urls, + 'photoUrls' => $photo_urls, 'tags' => $tags, 'status' => $status, 'file' => $file, From fec02781ab48e7d318b8cc2298b4b7172ca4b941 Mon Sep 17 00:00:00 2001 From: ksvirkou-hubspot Date: Wed, 25 Mar 2026 17:06:43 +0300 Subject: [PATCH 3/5] Fixed tests --- .../petstore/php/OpenAPIClient-php/tests/PetApiTest.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/samples/client/petstore/php/OpenAPIClient-php/tests/PetApiTest.php b/samples/client/petstore/php/OpenAPIClient-php/tests/PetApiTest.php index eb32525895b3..dbb25e8e3c4f 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/tests/PetApiTest.php +++ b/samples/client/petstore/php/OpenAPIClient-php/tests/PetApiTest.php @@ -414,8 +414,8 @@ public function testObjectInFormData() $contents = $request->getBody()->getContents(); $this->assertBodyContents('name', $name, $contents); - $this->assertBodyContents('photo_urls[0]', $photo_urls[0], $contents); - $this->assertBodyContents('photo_urls[1]', $photo_urls[1], $contents); + $this->assertBodyContents('photoUrls[0]', $photo_urls[0], $contents); + $this->assertBodyContents('photoUrls[1]', $photo_urls[1], $contents); $this->assertBodyContents('category[id]', $category->getId(), $contents); $this->assertBodyContents('category[name]', $category->getName(), $contents); $this->assertBodyContents('tags[0][id]', $tags[0]->getId(), $contents); From b95d08e47459a0ed1c14347a3f73573b39d8df84 Mon Sep 17 00:00:00 2001 From: ksvirkou-hubspot Date: Thu, 26 Mar 2026 12:23:18 +0300 Subject: [PATCH 4/5] Apply baseName fix to php-nextgen and psr-18 templates --- .../src/main/resources/php-nextgen/api.mustache | 2 +- .../src/main/resources/php/libraries/psr-18/api.mustache | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/php-nextgen/api.mustache b/modules/openapi-generator/src/main/resources/php-nextgen/api.mustache index 93b68becc4c2..e2b3b02b4bc7 100644 --- a/modules/openapi-generator/src/main/resources/php-nextgen/api.mustache +++ b/modules/openapi-generator/src/main/resources/php-nextgen/api.mustache @@ -732,7 +732,7 @@ use {{invokerPackage}}\ObjectSerializer; $formData = $formDataProcessor->prepare([ {{/-first}} - '{{paramName}}' => ${{paramName}}, + '{{baseName}}' => ${{paramName}}, {{#-last}} ]); diff --git a/modules/openapi-generator/src/main/resources/php/libraries/psr-18/api.mustache b/modules/openapi-generator/src/main/resources/php/libraries/psr-18/api.mustache index 47a50d446cbf..cbc048f79c88 100644 --- a/modules/openapi-generator/src/main/resources/php/libraries/psr-18/api.mustache +++ b/modules/openapi-generator/src/main/resources/php/libraries/psr-18/api.mustache @@ -612,7 +612,7 @@ use function sprintf; $formData = $formDataProcessor->prepare([ {{/-first}} - '{{paramName}}' => ${{paramName}}, + '{{baseName}}' => ${{paramName}}, {{#-last}} ]); From 93a1664a2d4e6912a191bd92ad196049862e0606 Mon Sep 17 00:00:00 2001 From: ksvirkou-hubspot Date: Thu, 26 Mar 2026 12:34:24 +0300 Subject: [PATCH 5/5] Tests regeneration --- .../echo_api/php-nextgen-streaming/src/Api/BodyApi.php | 2 +- samples/client/echo_api/php-nextgen/src/Api/BodyApi.php | 2 +- .../php-nextgen/OpenAPIClient-php/src/Api/FakeApi.php | 2 +- .../php-nextgen/OpenAPIClient-php/src/Api/PetApi.php | 6 +++--- samples/client/petstore/php/psr-18/lib/Api/FakeApi.php | 2 +- samples/client/petstore/php/psr-18/lib/Api/PetApi.php | 8 ++++---- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/samples/client/echo_api/php-nextgen-streaming/src/Api/BodyApi.php b/samples/client/echo_api/php-nextgen-streaming/src/Api/BodyApi.php index 7c067a52dca7..8d3ad73301ba 100644 --- a/samples/client/echo_api/php-nextgen-streaming/src/Api/BodyApi.php +++ b/samples/client/echo_api/php-nextgen-streaming/src/Api/BodyApi.php @@ -1175,7 +1175,7 @@ public function testBodyMultipartFormdataSingleBinaryRequest( $formDataProcessor = new FormDataProcessor(); $formData = $formDataProcessor->prepare([ - 'my_file' => $my_file, + 'my-file' => $my_file, ]); $formParams = $formDataProcessor->flatten($formData); diff --git a/samples/client/echo_api/php-nextgen/src/Api/BodyApi.php b/samples/client/echo_api/php-nextgen/src/Api/BodyApi.php index cebcbaddd749..6c49296bfa44 100644 --- a/samples/client/echo_api/php-nextgen/src/Api/BodyApi.php +++ b/samples/client/echo_api/php-nextgen/src/Api/BodyApi.php @@ -1175,7 +1175,7 @@ public function testBodyMultipartFormdataSingleBinaryRequest( $formDataProcessor = new FormDataProcessor(); $formData = $formDataProcessor->prepare([ - 'my_file' => $my_file, + 'my-file' => $my_file, ]); $formParams = $formDataProcessor->flatten($formData); diff --git a/samples/client/petstore/php-nextgen/OpenAPIClient-php/src/Api/FakeApi.php b/samples/client/petstore/php-nextgen/OpenAPIClient-php/src/Api/FakeApi.php index 773f9bf8dfcb..c20ea5e0852e 100644 --- a/samples/client/petstore/php-nextgen/OpenAPIClient-php/src/Api/FakeApi.php +++ b/samples/client/petstore/php-nextgen/OpenAPIClient-php/src/Api/FakeApi.php @@ -5933,7 +5933,7 @@ public function testEndpointParametersRequest( 'byte' => $byte, 'binary' => $binary, 'date' => $date, - 'date_time' => $date_time, + 'dateTime' => $date_time, 'password' => $password, 'callback' => $callback, ]); diff --git a/samples/client/petstore/php-nextgen/OpenAPIClient-php/src/Api/PetApi.php b/samples/client/petstore/php-nextgen/OpenAPIClient-php/src/Api/PetApi.php index 3902c7701b76..912be7151209 100644 --- a/samples/client/petstore/php-nextgen/OpenAPIClient-php/src/Api/PetApi.php +++ b/samples/client/petstore/php-nextgen/OpenAPIClient-php/src/Api/PetApi.php @@ -2574,7 +2574,7 @@ public function uploadFileRequest( $formDataProcessor = new FormDataProcessor(); $formData = $formDataProcessor->prepare([ - 'additional_metadata' => $additional_metadata, + 'additionalMetadata' => $additional_metadata, 'file' => $file, ]); @@ -2896,8 +2896,8 @@ public function uploadFileWithRequiredFileRequest( $formDataProcessor = new FormDataProcessor(); $formData = $formDataProcessor->prepare([ - 'additional_metadata' => $additional_metadata, - 'required_file' => $required_file, + 'additionalMetadata' => $additional_metadata, + 'requiredFile' => $required_file, ]); $formParams = $formDataProcessor->flatten($formData); diff --git a/samples/client/petstore/php/psr-18/lib/Api/FakeApi.php b/samples/client/petstore/php/psr-18/lib/Api/FakeApi.php index 8e57b8297f6e..eb4fc7d00462 100644 --- a/samples/client/petstore/php/psr-18/lib/Api/FakeApi.php +++ b/samples/client/petstore/php/psr-18/lib/Api/FakeApi.php @@ -5395,7 +5395,7 @@ public function testEndpointParametersRequest($number, $double, $pattern_without 'byte' => $byte, 'binary' => $binary, 'date' => $date, - 'date_time' => $date_time, + 'dateTime' => $date_time, 'password' => $password, 'callback' => $callback, ]); diff --git a/samples/client/petstore/php/psr-18/lib/Api/PetApi.php b/samples/client/petstore/php/psr-18/lib/Api/PetApi.php index f1309ba7dfe6..8d062e94d301 100644 --- a/samples/client/petstore/php/psr-18/lib/Api/PetApi.php +++ b/samples/client/petstore/php/psr-18/lib/Api/PetApi.php @@ -2130,7 +2130,7 @@ public function uploadFileRequest($pet_id, $additional_metadata = null, $file = $formDataProcessor = new FormDataProcessor(); $formData = $formDataProcessor->prepare([ - 'additional_metadata' => $additional_metadata, + 'additionalMetadata' => $additional_metadata, 'file' => $file, ]); @@ -2417,8 +2417,8 @@ public function uploadFileWithRequiredFileRequest($pet_id, $required_file, $addi $formDataProcessor = new FormDataProcessor(); $formData = $formDataProcessor->prepare([ - 'additional_metadata' => $additional_metadata, - 'required_file' => $required_file, + 'additionalMetadata' => $additional_metadata, + 'requiredFile' => $required_file, ]); $formParams = $formDataProcessor->flatten($formData); @@ -2744,7 +2744,7 @@ public function uploadImageFullFormDataRequest($pet_id, $name, $photo_urls, $id 'id' => $id, 'category' => $category, 'name' => $name, - 'photo_urls' => $photo_urls, + 'photoUrls' => $photo_urls, 'tags' => $tags, 'status' => $status, 'file' => $file,