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

Migrate Eway(Single Currency) Payment Processor Type out into its own… #18349

Merged
merged 2 commits into from
Sep 5, 2020

Conversation

seamuslee001
Copy link
Contributor

… extension

Overview

This shifts the eWAY (Single Currency) Payment Processor Type out from being within core into a core extension. Also brings across the eway libraries from Packages to be in with the eway code by its self.

Before

Eway is part of Core Payment Processors

After

Eway Single Currency isn't in the core payment processors but can be added as necessary

Technical Details

This auto inserts the managed entity row if necessary if eway is already present in the payment processor type table on upgrade so there is no breakage

ping @eileenmcnaughton

@civibot
Copy link

civibot bot commented Sep 4, 2020

(Standard links)

@eileenmcnaughton
Copy link
Contributor

It might be easier to get it under testing first & then do this as there are a few steps in that and then we have to figure those out in an extension

@seamuslee001
Copy link
Contributor Author

I would prefer to get the move done then figure out testing tbqh

@@ -6,7 +6,7 @@
*
* Generated from xml/schema/CRM/Event/Event.xml
* DO NOT EDIT. Generated by CRM_Core_CodeGen
* (GenCodeChecksum:164ee1a507b9244536114d1569ccff1e)
* (GenCodeChecksum:82ba48cbb804cf6f4b26fa50f07d44db)
Copy link
Contributor

Choose a reason for hiding this comment

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

@seamuslee001 Why is this in here?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Because it is there I'll spin that off separately

Comment on lines 5 to 12
(*FIXME: In one or two paragraphs, describe what the extension does and why one would download it. *)

The extension is licensed under [AGPL-3.0](LICENSE.txt).

## Requirements

* PHP v7.0+
* CiviCRM (*FIXME: Version number*)
Copy link
Contributor

Choose a reason for hiding this comment

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

Can we fix the FIXMEs here :-)

Comment on lines 12 to 14
<url desc="Main Extension Page">http://FIXME</url>
<url desc="Documentation">http://FIXME</url>
<url desc="Support">http://FIXME</url>
Copy link
Contributor

Choose a reason for hiding this comment

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

@seamuslee001 Please update these lines

<version>1.0</version>
<develStage>alpha</develStage>
<compatibility>
<ver>5.0</ver>
Copy link
Contributor

Choose a reason for hiding this comment

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

5.31?

</urls>
<releaseDate>2020-09-04</releaseDate>
<version>1.0</version>
<develStage>alpha</develStage>
Copy link
Contributor

Choose a reason for hiding this comment

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

stable?

<compatibility>
<ver>5.0</ver>
</compatibility>
<comments>This is a new, undeveloped module</comments>
Copy link
Contributor

Choose a reason for hiding this comment

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

Can we remove this line

@mattwire
Copy link
Contributor

mattwire commented Sep 4, 2020

@seamuslee001 This looks good. I've made some comments about fixing up the xml/readme - I hate seeing FIXME on production systems!

996 style warnings...

@seamuslee001 seamuslee001 force-pushed the eway_extension branch 2 times, most recently from d70c553 to 63bb954 Compare September 4, 2020 23:50
@seamuslee001
Copy link
Contributor Author

@eileenmcnaughton @mattwire is there anything blocking this from proceeding now?

@eileenmcnaughton
Copy link
Contributor

@seamuslee001 given you are the only one with the credentials to test this I'm happy to proceed if you promise to do one more test after it's merged

@seamuslee001
Copy link
Contributor Author

Sure

@agileware-justin
Copy link
Contributor

@seamuslee001 @eileenmcnaughton is there a reason for keeping this EWAY extension at all? Why not just replace with EWAY Recurring? https://lab.civicrm.org/extensions/ewayrecurring

This one uses the old EWAY APIs compared to EWAY Recurring which uses the new EWAY Rapid API and is maintained.

Why have two, especially now since this one is moving to a Core extension and EWAY Recurring is approved for bundling.

@seamuslee001
Copy link
Contributor Author

Some sites may still use the original processor, there is a desire to modulise the code more which is what this is doing. The idea is to not break sites at all that require the original processor but also allow for sites to get rid of it if they care.

@agileware-justin
Copy link
Contributor

So let's merge the functionality with EWAY Recurring and just have the one processor. I don't see the sense in maintaining two.

And if I find it confusing, what do you think a new Civi implementor or developer will think? They'd be confused too.

It's like having a Stripe APIv3 extension and also have a Stripe APIv4 extension. Pick which one too use.

@agileware-justin
Copy link
Contributor

Or conversely, take EWAY Recurring and merge it back into EWAY Single. I don't mind either way!

@eileenmcnaughton
Copy link
Contributor

eileenmcnaughton commented Sep 5, 2020

@agileware-justin yep - the goal is to eventually move this out of core & stop maintaining it - ditto the other core processors over time where a better alternative exists or they are just too niche

@agileware-justin
Copy link
Contributor

@eileenmcnaughton

As I see it these are the options, maybe there's others:

Option 1. Merge EWAY Recurring into EWAY Single to have one EWAY extension.
Option 2. Merge EWAY Single into EWAY Recurring to have one EWAY extension.
Option 3. Have two separate EWAY extensions using different EWAY APIs but both still EWAY.
Option n. ???

@eileenmcnaughton
Copy link
Contributor

We have 3 not 2 :-). 2 extensions and the existing core code. In this PR the existing core code is being moved from the CRM directory to a hidden extension (@seamuslee001 I'm not sure you made it hidden yet).

So this change doesn't alter the fact that there are 3 alternatives - it just moves the code internally to separate it from the CRM dir - so it's part of option 4 - continuing the process of deprecating this code fully out of core.

@eileenmcnaughton eileenmcnaughton merged commit 490c3ed into civicrm:master Sep 5, 2020
@eileenmcnaughton eileenmcnaughton deleted the eway_extension branch September 5, 2020 05:32
@eileenmcnaughton
Copy link
Contributor

PR to remove from packages - civicrm/civicrm-packages#306

@agileware-justin
Copy link
Contributor

@eileenmcnaughton I'll see your 3 and raise you 4. Is it worth raising a Gitlab to discuss merging the sprawling EWAY extensions into a single source and deprecating the others? Or am I just whistling in the wind?

@eileenmcnaughton
Copy link
Contributor

@agileware-justin you can do - but the focus here is just part of the larger 'move core processors into extensions' plan - not any particular eway focus. It's the second off the block (the first was payment express but that turned out to be long time broken)

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

Successfully merging this pull request may close these issues.

4 participants