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

get_transaction está fallando #13

Closed
ragnarok22 opened this issue Oct 30, 2021 · 17 comments · Fixed by #14
Closed

get_transaction está fallando #13

ragnarok22 opened this issue Oct 30, 2021 · 17 comments · Fixed by #14
Assignees
Labels
bug Something isn't working

Comments

@ragnarok22
Copy link
Owner

Describe the bug
A la hora de obtener una transacción da error

To Reproduce

client = QvaPayClient(app_id=settings.QVAPAY_APP_ID, app_secret=settings.QVAPAY_APP_SECRET)
transaction = client.get_transaction(transaction_id)

Esto lanza un error en transaction_detail.py en la línea 28 a la hora de crear un PaidBy ya que este espera un username, logo y name pero está recibiendo estos parámetros:

'paid_by': {
    'uuid': 'fasdfasdf',
    'username': 'ragnarok',
    'name': 'Reinier',
    'lastname': 'Hernández',
    'bio': 'I ♥ python',
    'logo': 'profiles/logo.webp',
    'kyc': 0
  },

Adjunto traceback
Captura de pantalla de 2021-10-29 23-47-39

@ragnarok22 ragnarok22 added the bug Something isn't working label Oct 30, 2021
@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

Muchas gracias por reportar el error, agregaron esas propiedades que antes no estaban. @LugoDev @codeshard @ragnarok22 les parece mejor que la biblioteca no de error si se agregan propiedades nuevas, que solo de error si cambian el formato o eliminan una de las existentes?

@leynier leynier self-assigned this Oct 30, 2021
@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

@ragnarok22 el uuid que esta poniendo es un ejemplo o es lo que esta devolviendo QvaPay?

@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

Por lo que pone en el issue al parecer el paid_by tiene la misma estructura que owner solo que en owner el uuid es de la forma 796a9e01-3d67-4a42-9dc2-02a5d069fa23, por eso mi pregunta anterior.

@CarlosLugones
Copy link
Contributor

CarlosLugones commented Oct 30, 2021 via email

@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

@LugoDev una posible solución es lo que comento, de implementar que la lib solo de error si se cambia o se elimina alguna de las propiedades que se esperan, no como en este caso que da error porque devuelve contenido "extra".

@ragnarok22
Copy link
Owner Author

@ragnarok22 el uuid que esta poniendo es un ejemplo o es lo que esta devolviendo QvaPay?

Si, es un ejemplo

@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

Eso provocaría que fuera mas difícil darse cuenta de esos contenidos extras y actualizar la lib, pero dejaría de dar error a los que la utilicen.

@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

Entonces, si están de acuerdo, realizaré un PR solo implementando que de error cuando se hace un cambio o eliminación, no cuando se hace una adición de propiedades a las respuestas que de la API.

@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

Para publicar una especie de hotfix

@CarlosLugones
Copy link
Contributor

CarlosLugones commented Oct 30, 2021 via email

@CarlosLugones
Copy link
Contributor

CarlosLugones commented Oct 30, 2021 via email

@ragnarok22
Copy link
Owner Author

perfecto @leynier

@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

Listo chicos @ragnarok22 @LugoDev como cosa nueva agregue lo siguiente.

Si tengo la la instancia a de la clase A con x y y de propiedades, si en el json viene una nueva propiedades z será agregada dinámicamente a la instancia, no tendrá chequeo de tipos, ni auto-completamiento, porque todo sucede en tiempo de ejecución aprovechando el dinamismo de Python, pero si se hace a.z se podrá acceder a la nueva propiedad z.

@leynier
Copy link
Collaborator

leynier commented Oct 30, 2021

@all-contributors please add @ragnarok22 for bug

@allcontributors
Copy link
Contributor

@leynier

I've put up a pull request to add @ragnarok22! 🎉

@ragnarok22
Copy link
Owner Author

Pregunta: esta versión se lanzó ya para pypi?

@CarlosLugones
Copy link
Contributor

CarlosLugones commented Oct 31, 2021 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants