-
Notifications
You must be signed in to change notification settings - Fork 286
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
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
Upcoming Sprint #594
Comments
I'd like to see the Connect Custom accounts extended to more countries than US/CA. Happy to help by submitting a PR |
Why/where is that limited? |
There are some dynamic choice fields for countries and states - ideally, we could remove that, and derive everything from Stripe's CountrySpec objects. Are you thinking of a major release, allowing us to break backward compat? If so, two things we should include in this sprint:
|
@lukeburden it might be easiest to have the freedom of a major release and then we can consider how to back port / maintain certain things but I'm wary of getting into any multiple release management. I can barely keep up with just a single release. :) |
Does anyone see any problem with the next release being a major release that just pins to latest API version and updates everything to match the changes since last API version? Trying to maintain BC is going to be a pain and not sure it's worth it, especially given that the models in this app are just storing a cache of what's in Stripe. It should always be safe to rehydrate your local cache from the API in what are essentially read only models. If that's not working this there is a bug that we should fix. Thoughts? |
I think a major version release makes sense, along with a proper catch-up
on the models.
Though I do think we should think carefully about how a project using
pinax-stripe in production can practically upgrade to using the latest
version of this library. If we can minimise the pain by including proper
schema and data migrations, even if they leave the local cache incomplete,
it could be better for that scenario. People could then refresh the objects
as they need.
…On Tue, Oct 9, 2018 at 3:37 PM Patrick Altman ***@***.***> wrote:
Does anyone see any problem with the next release being a major release
that just pins to latest API version and updates everything to match the
changes since last API version?
Trying to maintain BC is going to be a pain and not sure it's worth it,
especially given that the models in this app are just storing a cache of
what's in Stripe. It should always be safe to rehydrate your local cache
from the API in what are essentially read only models. If that's not
working this there is a bug that we should fix.
Thoughts?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#594 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABn-bQ_2KFYo6jgKeT5O3I3WYelKIqQSks5ujLSVgaJpZM4W68XJ>
.
|
I've started the Next milestone. I'd like to keep it relatively focused though I don't mind loading it up with outstanding PRs that are non-controversial and easily forward ready. My biggest goal for this next release is to get it all updated for latest API version. |
I've gone through the change log and I think these are the items that affect us:
|
crap, that's a lot. |
Divide and conquer! |
@lukeburden there. they are now divided. :) |
I've had a chance to play around with py.test a bit too since @blueyed first suggested we move to using it and I'm finally on board with that. Doesn't have to be apart of this milestone but if someone wants to update CI bits to run on py.text, it has my full support. |
I wonder if we should add library identification. Maybe it's as simple as adding: stripe.set_app_info(
"Pinax Stripe",
version=PULLED_FROM_PKG_INFO,
url="https://github.com/pinax/pinax-stripe"
) |
Migration to pytest is ready in #618. I am not sure about API breakage / having to sync things manually really, but if it helps / is required to get the project back on track, sure. |
btw: what happened to the last sprint? https://github.com/pinax/pinax-stripe/milestone/12 |
life. :)
happy to triage the quick things out of there into Next but at this point i think it’s super important to get up to par with latest api changes.
…Sent from my iPhone
On Oct 9, 2018, at 3:11 PM, Daniel Hahler ***@***.***> wrote:
btw: what happened to the last sprint? https://github.com/pinax/pinax-stripe/milestone/12
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
@blueyed what do you mean by:
Do you think we can handle everything through data migrations? |
@blueyed would you be willing/able to help me maintain this project? |
I would expect so, yes.
Not really, sorry. |
I think we can probably handle 90% of it fairly easily. But there are some parts that would require too much predicting what/how the person was doing with their stripe account. Did they create products? If so, we need to sync them down to get their IDs before we can create FKs, etc.
No problem. It's a LOT of work and I understand everyone has priorities. Stripe moves so quickly, I do feel like this project is moving beyond a single maintainer in order to keep up. |
@blueyed happy to give you access to merge if you want to help with the low-hanging fruit ones like that. yes,. there are trivial ones like that, but it would be a HUGE help to me. |
@paltman |
Thanks. I think I mostly just need to carve out time each week to go through my Github messages/review/merge, separate and apart from my desire to code on things. |
The more I have thought about this and the more I talk with some of my team members, the more I'm convinced the right strategy going forward for this app is to make it more of a "toolkit" than a complete cache/wrapper. The sheer number of API methods and the rate at which new ones get added and the new versions of the API that are released, make it nearly impossible to maintain pace. Unless the Stripe team itself were to take over maintenance of this app, I don't see there being enough resources and man power, even with now two maintainers, to keep up. In addition, Stripe's API is well documented and easy to understand. We have lacked solid documentation for a while in part because it's just a lot to do and to maintain so we never seem to get to it. It seems awkward to force the developer to have to know what they want to do on Stripe, see the Stripe docs and then have to figure out what that means in this package by picking the right action function. I do think there is a lot of value in making it easy to capture and emit signals for web hooks out of the box. I also think there is value in shipping with some mixing and/or abstract models for the site building to construct whatever caching models are appropriate for their application. Therefore, in a broad stroke, I think the next major version of this app should kill most models (I think we still need model(s) for the webhook events, at least), and all the With this in mind, I can't even begin to imagine what the upgrade path looks like, but maybe we sort that out once this new approach starts taking shape. While this will make this app a lot leaner, I think we will be able to keep things up to date a lot better while still providing a lot of utility. We can then provide some "cookbook" or other type documentation for how to setup the caching models for certain common situations and perhaps open the door for secondary packages that depend on @blueyed what are you thoughts on this? |
@paltman that seems like a pragmatic and considered course of action, to me. I'll have to think through how this would affect my projects that use this library, but I'm not using the cache models beyond the benefit of having something to point a foreign key at. Storing the stripe-id for the related object in a non-null field would probably be just about as effective. The webhooks processing is an important utility in all my uses of this project. There's a fair bit of complexity in their Connect product that the forms I contributed were intended to offset, but in practice, people could make these themselves or we could package them separately. The upgrade path is probably a lot of work for most people, so I'm a bit worried we'll lose a lot of people on this move - but it has to be this way if you're certain it's infeasible to keep up with Stripe's pace of change. |
it might be a legitimate course of action for someone to fork the current 4.x (master) version and maintain it.
you have a good point about the connect forms.
…Sent from my iPhone
On Oct 22, 2018, at 6:46 PM, Luke Burden ***@***.***> wrote:
@paltman that seems like a pragmatic and considered course of action, to me.
I'll have to think through how this would affect my projects that use this library, but I'm not using the cache models beyond the benefit of having something to point a foreign key at. Storing the stripe-id for the related object in a non-null field would probably be just about as effective.
The webhooks processing is an important utility in all my uses of this project.
There's a fair bit of complexity in their Connect product that the forms I contributed were intended to offset, but in practice, people could make these themselves or we could package them separately.
The upgrade path is probably a lot of work for most people, so I'm a bit worried we'll lose a lot of people on this move - but it has to be this way if you're certain it's infeasible to keep up with Stripe's pace of change.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
@paltman I thought I'd check in with some further thoughts on this project. I've recently been making some changes to a platform's payments system, and am increasingly using this library as almost solely a webhook processing utility. I typically store the Stripe ID in a Often, if I need a bit more contextual data, I'll have a few fields on a local model. Often though, this model is not specific to Stripe, so this usually takes the form of a JSON field. Basically, I still think your gut instincts are right for this project, and that as a stripped down set of utilities sans most models would have succinct and real value. It's also worth noting that |
@lukeburden great feedback. thanks! you comment also bumps this issue back into my view. I had completely forgotten about it. |
@lukeburden @blueyed @tyndyll it's been some years... I've gotten way away from using the cache-model and service layer methods in my various projects and have just been using the webhooks on the |
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
I have been very swamped over the past number months since the last release and there are a lot of things we need to get back to to keep this project alive and healthy. I'm planning an upcoming sprint (still don't have a date yet, but will likely occur over a (long) weekend in the next 4-6 weeks.
I wanted to open this issue so that I could get feedback from folks of what their favorite issues would be to see knocked out, preferably with associated PRs to consider/review. Please link to them in the comments with any supporting details as to why it should be considered priority knowing that I'll have only so much that I can do in a fixed window of time.
Obviously, the more help I can get with this in terms of good PRs versus just Issues, the more that can get done.
@blueyed @lukeburden @ticosax as some of the top-most recent contributors to the project in way of commits, I'd love your help in triaging items on this issue, if you have any time to spare.
The text was updated successfully, but these errors were encountered: