Magento2: Upgrading to 2.3.5 breaks Swagger (Dotmailer API defintion)

Created on 16 May 2020  路  7Comments  路  Source: magento/magento2

Preconditions (*)

In composer.json:

"require": {
        "magento/magento-cloud-metapackage": ">=2.3.5 <2.3.6
},

Run composer update --with-dependencies magento/magento-cloud-metapackage

Steps to reproduce (*)

Visit /swagger

Expected result (*)

Able to see Swagger docs

Actual result (*)

Error shown: Failed to load API definition.
Error logged: The "\DateTime" parameter type is invalid. Verify the parameter and try again.


Set a breakpoint at vendor/magento/framework/Reflection/TypeProcessor.php:435
The problematic definition is \Dotdigitalgroup\Email\Api\Data\CouponAttributeInterface::getExpiresAt which declares a \DateTime return type, which the type processor seemingly can't handle.

ready for confirmation Reported on 2.3.5 Reproduced on 2.3.5p1

Most helpful comment

@moloughlin Apologies, this was fixed in v4.5.1 of our connector: https://github.com/dotmailer/dotmailer-magento2-extension/pull/558

To resolve you can upgrade via:

composer require dotmailer/dotmailer-magento2-extension:"4.5.1 as 4.4.0"
php bin/magento setup:upgrade

or add a replace directive to remove our bundled modules if you prefer:

"replace": {
        "dotmailer/dotmailer-magento2-extension": "*",
        "dotmailer/dotmailer-magento2-extension-package": "*",
        "dotmailer/dotmailer-magento2-extension-enterprise": "*",
        "dotmailer/dotmailer-magento2-extension-chat": "*",
    },

All 7 comments

Hi @moloughlin. Thank you for your report.
To help us process this issue please make sure that you provided the following information:

  • [ ] Summary of the issue
  • [ ] Information on your environment
  • [ ] Steps to reproduce
  • [ ] Expected and actual results

Please make sure that the issue is reproducible on the vanilla Magento instance following Steps to reproduce. To deploy vanilla Magento instance on our environment, please, add a comment to the issue:

@magento give me 2.4-develop instance - upcoming 2.4.x release

For more details, please, review the Magento Contributor Assistant documentation.

@moloughlin do you confirm that you were able to reproduce the issue on vanilla Magento instance following steps to reproduce?

  • [ ] yes
  • [ ] no

@magento give me 2.3.5 instance

Hi @moloughlin. Thank you for your request. I'm working on Magento 2.3.5 instance for you

@moloughlin Apologies, this was fixed in v4.5.1 of our connector: https://github.com/dotmailer/dotmailer-magento2-extension/pull/558

To resolve you can upgrade via:

composer require dotmailer/dotmailer-magento2-extension:"4.5.1 as 4.4.0"
php bin/magento setup:upgrade

or add a replace directive to remove our bundled modules if you prefer:

"replace": {
        "dotmailer/dotmailer-magento2-extension": "*",
        "dotmailer/dotmailer-magento2-extension-package": "*",
        "dotmailer/dotmailer-magento2-extension-enterprise": "*",
        "dotmailer/dotmailer-magento2-extension-chat": "*",
    },

Same issue here, fresh installation 2.3.5 馃槖

I also confirm the issue and i am able to fix it by setting the composer alias as described by @sta1r for now.

although this seems not right to me, instead we should update the version in all packages that currently depend on dotmailer prior to dotmailer/dotmailer-magento2-extension in version 4.5.1 (i.e. magento/product-community-edition)...

@magento-engcom-team
Can please someone check this, it seems not be solved in magento 2.3.6, although it looks like it could have been solved easily (see https://github.com/magento/magento2/issues/28244#issuecomment-630077997)

Was this page helpful?
0 / 5 - 0 ratings