by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Ghost
    @ghost~576aa099c2f0db084a1f5559
    I have talked to one of my friends about dry-python, he will mention it in his talk this week
    piterpy
    Artem Malyshev
    @proofit404
    Cool!
    Dmitry Podoprosvetov
    @Ditansu_gitlab
    Hi @proofit404! Thank you and yours team for very useful project. Are you planning update tutorial ? Also I can't find how to going to second slide from the title page here https://dry-python.org/static/slides/ddd-toolkit.html#/
    Artem Malyshev
    @proofit404
    Hmm, looks like gitter notifications not working for me at all.
    simkimsia
    @simkimsia
    Hello
    Artem Malyshev
    @proofit404
    Welcome))
    Ghost
    @ghost~5ec7f950d73408ce4fe49700
    Is this room still active?
    Greg Brown
    @gregbrowndev
    @dgjustice yup. There’s a few of us actively working on projects using dry-python tools, including myself, as well as the maintainers of course!
    Ghost
    @ghost~5ec7f950d73408ce4fe49700
    Awesome, very interesting project!
    A friend linked me to a script he couldn't get working, so I thought it would a good target for testing the waters with returns. I don't have much hair left to pull out, but I'm slowly making my way through things.
    Ghost
    @ghost~5ec7f950d73408ce4fe49700
    A coworker of mine pointed me to this script to download materials from Packt Publishing. He was having some issues with it, so he asked me to take a look. I was looking for something outside of work to try returns on, and this fit the bill. My head hurts, and I've been down way too many rabbit holes. My takeaway is good and bad. On one hand, I see that you are trying to put some guard rails on a dangerously dynamic language. On the other hand, coding in this style in Python feels like hammering a square peg into a round hole. I haven't given up, but so far this is super difficult to debug. I was doing okay with mypy until I tried to perform composition. It's amazing it works given all the typing errors. I'd love any tips or pointers you might have on this (all the magic is in packt_downloader/init.py). I plan to do a proper write-up later on, but I would really like to figure out how to resolve the typing errors first. https://github.com/dgjustice/packtpub-downloader
    Also, a huge thanks on the documentation! It would have been impossible otherwise. There are plenty of gaps, but it was mostly enough for me to figure it out on my own through trial-and-error. Great work on a really complex project!!!
    Greg Brown
    @gregbrowndev

    Sounds like an interesting project @dgjustice, if I get some time I will take a look tomorrow!

    I haven’t used the Returns library yet, although (I think) this is what is used in the Stories library as the ”monad” Success/Failure return object? I do really like that, in principle, as it forces you to enumerate all the error conditions of the use case. (In many projects I’ve worked on exception handling is an after thought.)

    However, I do agree it does feel a bit awkward for me too atm. I’ve combined use case / Stories with a message bus driven architecture which currently doesn’t propagate the result (Success/Failure) object back to the Django view (in this case it would be easier to raise an exception). I think I just need to work on it as it probably is easily possible.

    Artem Malyshev
    @proofit404
    returns and stories are two different libraries. It does not depend on each other. Works in a similar way but implemented differently.
    Greg Brown
    @gregbrowndev
    Cool, thanks for the explanation!
    Ghost
    @ghost~5ec7f950d73408ce4fe49700
    @proofit404 Can you advise on this? I don't understand why the map isn't working at the bottom of the script. I'm taking a wrapped function get_ip_addrand maping it to a "pure" function (same as fmap, right?). This file is a very common pattern that I use, but I can't get mypy and returns to be happy. https://gist.github.com/dgjustice/257f7a2a2a8c67bc75bb1abcc8125f8f Thanks for any advise!
    Artem Malyshev
    @proofit404
    I'm not that familiar with the returns library, unfortunately. You can ask questions in the issue tracker on GitHub. It's totally fine. We even have question label for this: https://github.com/dry-python/returns/issues?q=is%3Aissue+is%3Aopen+label%3Aquestion
    Artem Malyshev
    @proofit404

    These chat rooms left for historical purposes only. All active maintainers of the project have left gitter.

    Projects are still properly maintained. If you have any questions, please file an issue in our issue tracker:

    Issues are better to keep track of the community interests. It could be converted to tasks easily. It preserves the history of resolution. It's google friendly. Let's keep our conversation in a structured way! See you there.