home.social

Search

158 results for “pawamoy”

  1. I started sponsoring @dancardin (@[email protected]?) for their great work on #Cappa, a super elegant declarative CLI argument parser for Python: github.com/DanCardin/cappa. It makes all the right choices, allowing users to build good, reusable CLIs for their libraries, with #Rich support!

  2. #Cappa puts the finger on what I dislike about #Click: cappa.readthedocs.io/en/latest. I'll try Cappa right now in a new project.

    I was also strongly tempted by #arguably (github.com/treykeown/arguably), but Cappa's use of `Annotated` instead of docstrings makes it super attractive given my recent work on supporting PEP 727 (from @tiangolo) with a #Griffe extension.

  3. #Cappa puts the finger on what I dislike about #Click: cappa.readthedocs.io/en/latest. I'll try Cappa right now in a new project.

    I was also strongly tempted by #arguably (github.com/treykeown/arguably), but Cappa's use of `Annotated` instead of docstrings makes it super attractive given my recent work on supporting PEP 727 (from @tiangolo) with a #Griffe extension.

  4. So cool to stumble on an episode of @pythonbytes where they talk about my tool Yore ☺️

    youtube.com/live/HCRfjkbSbmE?s

    github.com/pawamoy/yore

    Yore supports marking legacy code for Python versions but also for the current project version. I plan to support dependencies versions too (and more ecosystems, like Rust).

  5. Presenting again, because it's a nice little tool for library maintainers:

    - mark legacy code with comments: `# YORE: EOL 3.9: Remove line`
    - check periodically: `yore check`
    - see applied diff (dry-run): `yore diff`
    - actually fix comments: `yore fix`

    github.com/pawamoy/yore

  6. Python 3.8 just reached EOL, time to run some `yore` commands!

    Funny how providing a time delta before EOL changes to human-readable format "approx. a moment" 😄

  7. #MkDocs got a $50 contribution on #OpenCollective recently. The person who made the contribution used a gift card from #Redocly. Anybody has information on these gift cards? I'm very curious 🙂

  8. got a $50 contribution on recently. The person who made the contribution used a gift card from . Anybody has information on these gift cards? I'm very curious 🙂

  9. #MkDocs got a $50 contribution on #OpenCollective recently. The person who made the contribution used a gift card from #Redocly. Anybody has information on these gift cards? I'm very curious 🙂

  10. #MkDocs got a $50 contribution on #OpenCollective recently. The person who made the contribution used a gift card from #Redocly. Anybody has information on these gift cards? I'm very curious 🙂

  11. #MkDocs got a $50 contribution on #OpenCollective recently. The person who made the contribution used a gift card from #Redocly. Anybody has information on these gift cards? I'm very curious 🙂

  12. Trying #Solid pods right now. Failing. Signed up at #Inrupt's #PodSpaces. Somehow can't use it to login into Liqid Chat, doesn't give me a pod URL. Tried signing up at inrupt.net instead. "Registration closed" once you sent the form... Got a pod at solidweb.org instead. "Unauthorized" when trying to log in with it. solidcommunity.net shows errors on its register page...

    Finally managed to log into the PodPro app with Inrupt's PodSpaces.

    I guess some apps aren't super well maintained?

  13. Trying #Solid pods right now. Failing. Signed up at #Inrupt's #PodSpaces. Somehow can't use it to login into Liqid Chat, doesn't give me a pod URL. Tried signing up at inrupt.net instead. "Registration closed" once you sent the form... Got a pod at solidweb.org instead. "Unauthorized" when trying to log in with it. solidcommunity.net shows errors on its register page...

    Finally managed to log into the PodPro app with Inrupt's PodSpaces.

    I guess some apps aren't super well maintained?

  14. Trying #Solid pods right now. Failing. Signed up at #Inrupt's #PodSpaces. Somehow can't use it to login into Liqid Chat, doesn't give me a pod URL. Tried signing up at inrupt.net instead. "Registration closed" once you sent the form... Got a pod at solidweb.org instead. "Unauthorized" when trying to log in with it. solidcommunity.net shows errors on its register page...

    Finally managed to log into the PodPro app with Inrupt's PodSpaces.

    I guess some apps aren't super well maintained?

  15. Trying #Solid pods right now. Failing. Signed up at #Inrupt's #PodSpaces. Somehow can't use it to login into Liqid Chat, doesn't give me a pod URL. Tried signing up at inrupt.net instead. "Registration closed" once you sent the form... Got a pod at solidweb.org instead. "Unauthorized" when trying to log in with it. solidcommunity.net shows errors on its register page...

    Finally managed to log into the PodPro app with Inrupt's PodSpaces.

    I guess some apps aren't super well maintained?

  16. I think is ready for v1. Just one more v0 release to communicate one last deprecation.

  17. I'm adding tests to , that use Griffe to check if:

    - all public objects are exposed in the top-level init module
    - all public objects are added to the API docs (HTML), and therefore if they are added to the objects inventory (-like objects.inv file)
    - if no other object is added to the inventory (no private objects)

    Thanks to these tests I made sure not to forget *anything* while rewriting Griffe's docs!

  18. I'm experimenting with moving all my code into a private package, and exposing every public object in the top-level init module of a sibling public package:

    - _griffe has all the internal API
    - griffe exposes public objects

    I added a test to my tests file that loads the internal (using of course 😂) and checks that every "public" name in the internal API is exposed in the public package. Impossible to miss some, and that forces me to privatize the rest.

  19. Working towards a v1.0 for . I will enjoy removing all the legacy code used for backward compatibility 😛

    We're not there yet. See the milestone: github.com/mkdocstrings/griffe

  20. It's good to be challenged by users.

    I was reluctant to add support in for some conventions used in the ecosystem to mark objects as "exported".

    To make proper arguments, I had to take a good, serious look at my codebase again. By doing so, I actually identified issues and clear improvements, that once fixed/refactored would allow Griffe to easily support these conventions in a way that makes complete sense 👍

    github.com/mkdocstrings/python

  21. Quite the feature in : the ability to force using dynamic analysis to extract data from packages. Previously it would use static analysis by default and only fallback to dynamic analysis for built-in/compiled modules. Now you can use dynamic analysis for modules with sources available too 🙂

    This wasn't an easy change as I thought, but I'm happy how the code evolved.

    I've just released v0.45.0. Crossed-fingers for no regressions 🤞 (tests added, but, you know, can't ever be sure)

  22. Thanks @orsinium. Until now I was fighting this (trying to find out the true parent module), but seeing how inconsistent this is, I give up and will just use what Python gives me.

    To give more context: I'm trying to improve the code in that inspects object trees (dynamic analysis). To know whether an object should be added to the currently inspected module as a member or as an alias pointing to somewhere else, I have to check where the object originates from.

    github.com/mkdocstrings/griffe

  23. I have published a "best practices" document in 's docs:

    mkdocstrings.github.io/griffe/

    It says:

    - avoid member-submodule name shadowing (the issue described above ☝️)
    - avoid wildcard imports
    - prefer canonical imports (we recommend @15r10nk's canonical-import tool!)

    These recommendations are given from a "static analysis" and "public API" point of view.

    I'll gradually add more of these 🙂

  24. devs, do you often have a submodule and a member with the same name?

    For example:

    - pkg/__init__.py declares `thing = 1`
    - pkg also has a `thing.py` submodule

    does not support that and will ignore the member in such cases, giving priority to the submodule. This limitation has been reported multiple times, and I wanted to fix it, but after having worked on it a bit, I'm quite convinced I shouldn't, and instead should say it's bad practice.

    github.com/mkdocstrings/griffe

  25. (Insiders) is now able to search for API breaking changes in packages downloaded from PyPI-like indexes.

    mkdocstrings.github.io/griffe/

  26. Next version of will bring improved support for dataclasses. They are actually a PITA to handle statically 😵 200 LoC + 160 LoC for tests.

    github.com/mkdocstrings/griffe

  27. Yesterday I released two new features, for this time: two different output formats for the `check` command. You can now output in Markdown, useful for changelogs for example, and with GitHub Actions' "annotations" format, which are picked up by GitHub and displayed in the Checks tab and the Files Changed tab.

    mkdocstrings.github.io/griffe/

  28. I started using pysource-codegen (github.com/15r10nk/pysource-co) to generate arbitrary but valid Python code to fuzz . Great tool!

  29. Tired of browsing API docs online 😴 ?

    Why not browsing them offline, directly in your terminal, thanks to and 😎 ?

    mkdocstrings.github.io/griffe-

  30. Also, I just realized that the `@typing.deprecated` extension for (mkdocstrings.github.io/griffe-) was not made available to sponsors, so I added it to the insiders team too.