magento / magento2

Prior to making any Submission(s), you must sign an Adobe Contributor License Agreement, available here at: https://opensource.adobe.com/cla.html. All Submissions you make to Adobe Inc. and its affiliates, assigns and subsidiaries (collectively “Adobe”) are subject to the terms of the Adobe Contributor License Agreement.
http://www.magento.com
Open Software License 3.0
11.48k stars 9.29k forks source link

Error update to 2.2.1, module-signifyd 100.2.1 not found #12089

Closed abolivar closed 6 years ago

abolivar commented 6 years ago

Preconditions

  1. PHP 7.1.7
  2. MySQL 5.7.19

Steps to reproduce

  1. Edit composer.json "magento/product-community-edition": from "2.2.0" to "2.2.1"
  2. composer update

Expected result

  1. Update to 2.2.1

Actual result

  1. Problem 1
    • Installation request for magento/product-community-edition 2.2.1 -> satisfiable by magento/product-community-edition[2.2.1].
    • magento/product-community-edition 2.2.1 requires magento/module-signifyd 100.2.1 -> no matching package found.
jissereitsma commented 6 years ago

I'm bumping into the same issue here, and this is stopping me from upgrading to 2.2.1 which is supposed to fix high security issues. Could it be that the issue here is that the signifyd module is still at version 100.2.0-dev? https://github.com/magento/magento2/blob/2.2.1-preview/app/code/Magento/Signifyd/composer.json#L20

nelero commented 6 years ago

just received the email for new security updates. And same problem... So much problem everytime in upgrading magento 2.x how can we solve this ?

Stevie-Ray commented 6 years ago

https://github.com/magento/magento2/blob/2.2.1/app/code/Magento/Signifyd/composer.json#L20

rosen4o commented 6 years ago

I have found dirty fix for the issue Copy folder from Magento 2.2.1 version to your for example 2.2.0 version vendor/magento/module-signifyd

Open file vendor/composer/installed.json

And place after module-shipping

            {
            "name": "magento/module-signifyd",
            "version": "100.2.1",
            "dist": {
                "type": "zip",
                "url": "https://repo.magento.com/archives/magento/module-signifyd/magento-module-signifyd-100.2.1.0.zip",
                "reference": null,
                "shasum": "370e54c1f1cc00ea441f3ac99e3a6932ce9866ea"
            },
            "require": {
                "magento/framework": "101.0.*",
                "magento/module-backend": "100.2.*",
                "magento/module-checkout": "100.2.*",
                "magento/module-config": "101.0.*",
                "magento/module-customer": "101.0.*",
                "magento/module-directory": "100.2.*",
                "magento/module-payment": "100.2.*",
                "magento/module-sales": "101.0.*",
                "magento/module-store": "100.2.*",
                "php": "7.0.2|7.0.4|~7.0.6|~7.1.0"
            },
            "suggest": {
                "magento/module-config": "101.0.*"
            },
            "type": "magento2-module",
            "autoload": {
                "files": [
                    "registration.php"
                ],
                "psr-4": {
                    "Magento\\Signifyd\\": ""
                }
            },
            "license": [
                "proprietary"
            ],
            "description": "Submitting Case Entry to Signifyd on Order Creation"
        },

Then run composer update

jissereitsma commented 6 years ago

Thanks @Stevie-Ray, so my comment is pointless. I referred to a different tag because I did not see 2.2.1 (yet). I think the solution of @rosen4o is kind of hacky. I'm now trying to add a new section to my repositories section in my composer.json:

        "signifyd": {
            "type": "package",
            "package": {
                "name": "magento/module-signifyd",
                "version": "100.2.1",
                "dist": {
                    "type": "zip",
                    "url": "https://repo.magento.com/archives/magento/module-signifyd/magento-module-signifyd-100.2.1.0.zip",
                    "shasum": "370e54c1f1cc00ea441f3ac99e3a6932ce9866ea",
                    "reference": "master"
                }
            }
        }

I say "trying" because it gives me an error "Invalid credentials".

UPDATE: It occurs to me that this actually might be the initial problem to begin with: The ZIP package is not accessible (for some reason). Maybe this is stopping the composer update from working properly as well? If so, it almost seems as if the repo.magento.com wrongfully sees the package as being protected or something, while it should be accessible using regular Magento Marketplace credentials?

UPDATE2: I have updated the dist section with shasum as @Stevie-Ray suggested, but it is not yet the fix that we are looking for.

nelero commented 6 years ago

tried @jissereitsma with "reference": null instead of "master" => KO tried to add "version_normalized": "100.2.1.0", below "version": "100.2.1", => KO

inspired bythe file vendor/composer/installed.json from 2.2.1 zip

{
        "name": "magento/module-signifyd",
        "version": "100.2.1",
        "version_normalized": "100.2.1.0",
        "dist": {
            "type": "zip",
            "url": "https://repo.magento.com/archives/magento/module-signifyd/magento-module-signifyd-100.2.1.0.zip",
            "reference": null,
            "shasum": "370e54c1f1cc00ea441f3ac99e3a6932ce9866ea"
        },
        "require": {
            "magento/framework": "101.0.*",
            "magento/module-backend": "100.2.*",
            "magento/module-checkout": "100.2.*",
            "magento/module-config": "101.0.*",
            "magento/module-customer": "101.0.*",
            "magento/module-directory": "100.2.*",
            "magento/module-payment": "100.2.*",
            "magento/module-sales": "101.0.*",
            "magento/module-store": "100.2.*",
            "php": "7.0.2|7.0.4|~7.0.6|~7.1.0"
        },
        "suggest": {
            "magento/module-config": "101.0.*"
        },
        "type": "magento2-module",
        "installation-source": "dist",
        "autoload": {
            "files": [
                "registration.php"
            ],
            "psr-4": {
                "Magento\\Signifyd\\": ""
            }
        },
        "license": [
            "proprietary"
        ],
        "description": "Submitting Case Entry to Signifyd on Order Creation"
    },
piotrekkaminski commented 6 years ago

This seems to be some kind of permission issue. Some folks cannot access 2.2.1, some cannot access Signifyd 100.2.1. However if i try with other keys, i see both properly. We are working to resolve that.

fooman commented 6 years ago

I have attached the signifyd package from my composer cache (usual caveats not from the source, etc... so apply as many checks as needed to compare against the code from the repository, alternatively you should be able to zip up this folder)

2d7c6066042fd4b5f390baf35c558ba3ca481061.zip

Place the zip file into a new folder, for example to use local-packages run

mkdir local-packages
cd local-packages
curl -LO https://github.com/magento/magento2/files/1452096/2d7c6066042fd4b5f390baf35c558ba3ca481061.zip
cd ..
composer config repositories.localartifacts artifact $(pwd)/local-packages

composer show magento/module-signifyd should now show this package as available and the composer update should hopefully succeed as well.

lee586 commented 6 years ago

Same here. magento/product-community-edition 2.2.1 requires magento/module-signifyd 100.2.1

dinkarprajapati commented 6 years ago

I tried installing a new copy of Magento 2.2.1 and same issue.

Problem 1

  • Installation request for magento/product-community-edition 2.2.1 -> satisfiable by magento/product-community-edition[2.2.1].
  • magento/product-community-edition 2.2.1 requires magento/module-signifyd 100.2.1 -> no matching package found.

Potential causes:

  • A typo in the package name
  • The package is not available in a stable-enough version according to your minimum-stability setting
IbrahimS2 commented 6 years ago

I can confirm this solution worked out really well, but it still confusing how come it isn't downloading this module automatically? the zip extension and the permissions are in place.

I have attached the signifyd package from my composer cache (usual caveats not from the source, etc... so apply as many checks as needed to compare against the code from the repository, alternatively you should be able to zip up this folder)

2d7c6066042fd4b5f390baf35c558ba3ca481061.zip

Place the zip file into a new folder, for example to use local-packages run

mkdir local-packages cd local-packages curl -LO https://github.com/magento/magento2/files/1452096/2d7c6066042fd4b5f390baf35c558ba3ca481061.zip cd .. composer config repositories.localartifacts artifact $(pwd)/local-packages composer show magento/module-signifyd should now show this package as available and the composer update should hopefully succeed as well.

fooman commented 6 years ago

@MageSuper repo.magento.com is different for each user (as it holds your Magento Marketplace purchases in addition to Magento itself, or also Magento Commerce if you are an Enterprise customer) - it seems Magento has an issue with not all users having the same packages available to them when they should.

IbrahimS2 commented 6 years ago

@fooman It seems only the mentioned module, as the upgrade went successfully without any issue.

piotrekkaminski commented 6 years ago

@fooman thanks for explaining that, this is true.

We have some caching issue on our side and not all accounts were updated with permissions for the new release or signifyd module. We are working to find and eliminate the root cause but in the meantime:

bondimedical3 commented 6 years ago

I get the same error message at the readiness check

magento 2 2 1 bug

Serhiy-Nazarov commented 6 years ago

same problem with clean install from metapackage image

bondimedical3 commented 6 years ago

@fooman how can I zip up that module?

avstudnitz commented 6 years ago

Workaround if you don't need the signifyd module: Add it to your "replace" section in the composer json as follows:

    "replace": {
        "magento/module-signifyd": "*"
    },
refaelgold commented 6 years ago

@avstudnitz . K , i did it for now for temporary solution . After the issue will be fixed, i need to put the original composer.json who come with M2.2 for installation the signifyd module correctly?

jissereitsma commented 6 years ago

@avstudnitz Your solution works for me as well! Thanks!

avstudnitz commented 6 years ago

@refaelgold IMO this is the best way to remove unneeded modules. If you don't need that module as well, I'd leave that change in your composer.json. The composer.json is made for modification, your changes can stay. If you need the signifyd module, you should revert the change later of course.

mayankzalavadia commented 6 years ago

@refaelgold Thank you so much. Your solution works for me too.

davidegiunchidiennea commented 6 years ago

@avstudnitz we didn't really need the signifyd module, so your solution works good! thank you.

csdougliss commented 6 years ago

Same problem here

jissereitsma commented 6 years ago

@craigcarnell Same solution?

mayankzalavadia commented 6 years ago

Hello All,

If you don't need the signifyd module: Add it to your "replace" section in the composer json as follows:.

 "replace": {
        "magento/module-signifyd": "*"
    },

Above Solution is provide by @refaelgold. And I personally use this and it's working. But in case If you want to use signifyd module then you just need to follow simple step.

  1. Go to vendor/composer/ folder.
  2. Open installed.json
  3. Find "name": "magento/module-shipping",
  4. And past Below code after module-shipping

    
       {
            "name": "magento/module-signifyd",
            "version": "100.2.1",
            "dist": {
                "type": "zip",
                "url": "https://repo.magento.com/archives/magento/module-signifyd/magento-module-signifyd-100.2.1.0.zip",
                "reference": null,
                "shasum": "370e54c1f1cc00ea441f3ac99e3a6932ce9866ea"
            },
            "require": {
                "magento/framework": "101.0.*",
                "magento/module-backend": "100.2.*",
                "magento/module-checkout": "100.2.*",
                "magento/module-config": "101.0.*",
                "magento/module-customer": "101.0.*",
                "magento/module-directory": "100.2.*",
                "magento/module-payment": "100.2.*",
                "magento/module-sales": "101.0.*",
                "magento/module-store": "100.2.*",
                "php": "7.0.2|7.0.4|~7.0.6|~7.1.0"
            },
            "suggest": {
                "magento/module-config": "101.0.*"
            },
            "type": "magento2-module",
            "autoload": {
                "files": [
                    "registration.php"
                ],
                "psr-4": {
                    "Magento\\Signifyd\\": ""
                }
            },
            "license": [
                "proprietary"
            ],
            "description": "Submitting Case Entry to Signifyd on Order Creation"
        },
  5. Save this file and run composer update command

I have tried this and it's working for me.

I Hope It'll help you to solve this issues. Please let me know is it working for you or not. Also Please let Us know if you have any other better solution for that.

Thank you All,

fascinosum commented 6 years ago

The issue of availability of the module has been resolved. Please check upgrade Magento to version 2.2.1

cotiga commented 6 years ago

Today the update works

cd ~/www/MAG_PATH
composer require magento/product-community-edition 2.2.1 --no-update
composer update

Composer update indicates: - Installing magento/module-signifyd (100.2.1): Downloading (100%)

abolivar commented 6 years ago

I try and work!