Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change work with parent classes. Revise supported php versions #382

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

vkhramtsov
Copy link

  • Fix checking and calling for parent in classes, which does not have parent
  • Remove checking for parent class in classes, which extend other casses
  • Remove outdated php versions
  • Add actual php versions
  • Fix tests (count on classes)

@alexndr-novikov
Copy link

alexndr-novikov commented Dec 9, 2019

Very helpful, cause to work on PHP 7.4 we had to patch the library to avoid crash on parent:: usage in context of not child class
Thanks, @vkhramtsov , I hope this PR will be accepted and merged soon

Copy link

@alexndr-novikov alexndr-novikov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We use patch like this in our project and it works pretty good (PHP7.4)

@vkhramtsov
Copy link
Author

@kikmak42 Would you be so kind to review and merge this PR or point to valid person for it?

@vkhramtsov
Copy link
Author

@gnongsie Would you be so kind to help me with this PR?

@vkhramtsov
Copy link
Author

Is this repo dead or alive?

@SteveDesmond-ca
Copy link

Also trying to upgrade our app to PHP 7.4 and blocked on this issue -- paging other recent contributors @brianmc and @ashtru: any news on this?

@SteveDesmond-ca SteveDesmond-ca mentioned this pull request Jan 1, 2020
@dranes
Copy link

dranes commented Jan 30, 2020

We moved our application to 7.4, and now we can't use Authorize.NET 😢 any news on this?

@carloslahrssen
Copy link

Currently being blocked by this, it's kind of crazy that there's been no activity from the maintainers since this has been opened. Seeing that the last commit on this repo was in June, I feel like that my team has no choice but to fork and apply the changes ourselves.

@SteveDesmond-ca
Copy link

I don't know that this PR will be merged, as it modifies generated code, rather than updating the generator, which I'm not positive is possible, given what it needs to know.

As a workaround, we currently briefly set error_reporting (E_ALL & ~E_DEPRECATED) while the questionable code runs, then revert back to error_reporting (E_ALL) once it's done.

@vkhramtsov
Copy link
Author

@SteveDesmond-ca Would you be so kind to supply me with the link to generator and documentation for it?

@dranes
Copy link

dranes commented Mar 24, 2020

I have tested this code un production too looks good, any news on this?

@sharik709
Copy link

sharik709 commented Apr 22, 2020

I've having problems because of this. Not sure why it's not merged. Anyone has any idea how to get this pull request merged to my forked version or use package based off of this pull request?

Edit: Found it https://stackoverflow.com/questions/25878984/can-i-pull-a-specific-commit-with-composer Thanks :)

@dranes
Copy link

dranes commented Apr 22, 2020

@shahariaazam yes in your composer.json you need to add in the require section

 "authorizenet/authorizenet": "dev-bugfix-remove-parent-call-when-class-does-not-have-parent"

and then in the "repositories" section

"repositories": [
        {
            "type": "vcs",
            "url": "[email protected]:vkhramtsov/sdk-php.git",
            "no-api": true
        }]

@sharik709
Copy link

@dranes Thank you :)

@jgile
Copy link

jgile commented Apr 25, 2020

authorize.net... surely you can afford to hire a single PHP developer to handle this package. it seriously needs some support. I'll do it. Just hand it over, please.

@dranes
Copy link

dranes commented Apr 25, 2020

Should we create a Patreon for this package?

@anuradhan
Copy link

i tried these and still got error on PHP 7.4
had to downgrade php from 7.4 to 7.3 to get Authorize master version to work.

@sharik709
Copy link

sharik709 commented May 5, 2020

@anuradhan i'm unsure how you did it. But this is how I solved it.

delete composer.lock

delete vendor

add
"authorizenet/authorizenet": "dev-master#ef297d3e2d7c1092ddabd2c376eb485aac1aa66c"
to composer.json require section.

run composer install

obliviously, you should be careful on production and install it properly but that's how i did it in my development env.

Enjoy :)

@sentiasa
Copy link

sentiasa commented Sep 9, 2020

I don't know that this PR will be merged, as it modifies generated code, rather than updating the generator, which I'm not positive is possible, given what it needs to know.

As a workaround, we currently briefly set error_reporting (E_ALL & ~E_DEPRECATED) while the questionable code runs, then revert back to error_reporting (E_ALL) once it's done.

@SteveDesmond-ca Can you show a snippet for this? I wrapped my code into these but still getting same error.

error_reporting (E_ALL & ~E_DEPRECATED)
// All Authorize.net code
error_reporting (E_ALL)

@sharik709
Copy link

@sentiasa can you degrade your php version to like php7.2 or 7.1. It should begin working if changing php to older version if not possible then may be you can try my comment. See if that helps.
#382 (comment)

@JeffUssing
Copy link

JeffUssing commented Sep 30, 2020

I submitted a request to have the pull approved.
Support Case: 07319355
Maybe that will help it along.

@JeffUssing
Copy link

I submitted request to have the pull approved.
Support Case: 07319355
Maybe that will help it along.

In the interest of transparency, here's my transcript with Authorize.Net Case Support...
Even though they don't say it outright, I get the feeling that Authorize.Net doesn't support this SDK.
However, @gnongsie seems to be fairly active on the Authorize.Net repos, maybe he can help us out.


Oct 9, 2020

Hello again Jeff!

Thank you for providing the information. Unfortunately, we at Authorize.Net support are not able to assist with the GitHub set up. In your situation, if you do not need integration assistance, we highly recommend posting on our developer forums for help.

https://community.developer.authorize.net/

Regards,
Jakob T.
Customer Support

Oct 9, 2020

I've been able to get the integration working, so I don't need help with that.
I was able to get it working by hacking the SDK a little bit and changing the error reporting when I instantiate the MerchantAuthenticationType class.

The issue is well documented on the pull request. Please ask the engineer team to see the pull request for details (#382).

I've attached a screenshot of the error (ErrorException MerchantAuthenticationType.png) and a code snip. Uncommenting line 9 (error_reporting(~E_DEPRECATED);) will stop it from throwing the error, but doesn't really fix anything.

Jeff

ErrorException MerchantAuthenticationType

<?php
use net\authorize\api\contract\v1 as AnetAPI;
use net\authorize\api\controller as AnetController;

public function getListOfSubscriptions($searchType)
{
  /* Create a merchantAuthenticationType object with authentication details
	 retrieved from the env file */
  // error_reporting(~E_DEPRECATED);
  $merchantAuthentication = new AnetAPI\MerchantAuthenticationType();
  $merchantAuthentication->setName(env('MERCHANT_LOGIN_ID'));
  $merchantAuthentication->setTransactionKey(env('MERCHANT_TRANSACTION_KEY'));

  // Set the transaction's refId
  $refId = 'ref' . time();

  $sorting = new AnetAPI\ARBGetSubscriptionListSortingType();
  $sorting->setOrderBy("id");
  $sorting->setOrderDescending(false);

  $paging = new AnetAPI\PagingType();
  $paging->setLimit("1000");
  $paging->setOffset("1");

  $request = new AnetAPI\ARBGetSubscriptionListRequest();
  $request->setMerchantAuthentication($merchantAuthentication);
  $request->setRefId($refId);
  $request->setSearchType($searchType);
  $request->setSorting($sorting);
  $request->setPaging($paging);


  $controller = new AnetController\ARBGetSubscriptionListController($request);

  return $controller->executeWithApiResponse(\net\authorize\api\constants\ANetEnvironment::SANDBOX);
}

Oct 6, 2020

Hello Jeff,

I'm happy to assist with your PHP SDK Issue, and apologize if you are having issues integrating the SDK.

Can we get a few things from you to help troubleshoot this further. I have attached an Integration form to the support case if you can fill this out with a detailed description of what issue you are encountering, and attach it back to the support case for us. Any error codes you are receiving, along with what version of PHP you are trying to use to integrate the SDK. If you are able to pull the raw request you are sending that would definitely help us with troubleshooting your current issue with our engineer team, and there is a section in the form to put that raw request.

We look forward to hearing back from you

Regards,
Richard B.
Authorize.Net Support

Oct 6, 2020

When you say "...we do not maintain the SDK.", are you saying that this support team (support cases) doesn't support the SDK, or that Authorize.Net doesn't support their own SDK?

Jeff

Oct 6, 2020

Hello Jeff,

Thank you for your reply in regards to that information.

I apologize, we do not maintain the SDK. Are you able to provide additional information about that you are seeing in this support case so that we can review?

We look forward to hearing from you.

Regards,
Elisha S.
Authorize.Net Support

Oct 6, 2020

I just reopened the case. This case needs to be addressed by Authorize.Net team that maintains the SDK's on GitHub.

There hasn't been any activity in the last 18 months and there are 4 open pull requests that need to be addressed.
https://github.com/AuthorizeNet/sdk-php/pulls

If Authorize.Net is no longer supporting the PHP SDK, please let me know so that I can move to a more modern service provider.

Thx,
Jeff

Oct 6, 2020

Hello again Jeff!

We have received a notice that there was an update to this case, but we see no new information. Can you please clarify what it is you need Authorize.Net to do?

We apologize, but we are not trained in web development or integration, so our ability to answer developer/integration related questions is limited. If you need further assistance, we have created developer forums for web programmers to assist each other. It is possible another developer can assist you there:

https://community.developer.authorize.net/

We look forward to your response.

Regards,
Jakob T.
Customer Support

Sep 30, 2020

Hello Jeff,

Thanks for contacting Authorize.Net. I'm happy to assist you today!

However, I apologize as I'm not sure I'm understanding your question/inquiry fully. Can you please clarify?

In addition to that, if you ever see any error codes communicated through the system and would like details on them, we offer a great resource for reviewing the error codes in our error code list. This way you can review the codes as you need. http://developer.authorize.net/api/reference/features/errorandresponsecodes.html

We look forward to hearing from you so we may better assist!

If the information provided above satisfies your needs, please close this Support Case. Otherwise, please add an update to this Support Case with your follow-up questions so I can further assist you. For your convenience the Authorize.Net Knowledge Base, located at: https://support.authorize.net, available 24x7.

For more information regarding our privacy practices, visit the privacy page at Authorize.Net.

Regards,
Francisco
Client Support


@Parker-Bergen
Copy link

After asking some questions today (1/21/2021) I asked about PHP 8 support, it is planned. Just an update since I know some people were looking from some answers. Elisha was also very nice and helpful, small shoutout.
Transcript with Elisha from Authorized.net today:

18:24:18 UTC Parker Bergen : Will support be made for PHP8 in the Authorized.net PHP SDK.
18:24:53 UTC Elisha : There are plans but there is no ETA yet on this. As of now we support up to PHP 7.3 with our SDK.
18:26:00 UTC Parker Bergen : Ok. We would like to keep using Authorized.net but it is stating to get out of our support range, just wanted to make sure it will continue to be supported, and hopefully soon.
18:27:35 UTC Elisha : I understand, that was the latest update from our escalation team as of 1/19/2021.
18:27:48 UTC Elisha : You can check back with us on a later date if you would like. Was that all I could answer for you today on my end?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.