Sunday reading: packaging and nested data structures

40 views
Skip to first unread message

Matt Wilkie

unread,
Aug 26, 2018, 6:34:01 PM8/26/18
to leo-editor
Seeking to deepen my understanding of the fractured python packaging world and how to apply the best, or at least the parts I can wrap my head around, led me to an excellent birds-eye view article that yielded several insights and an essential aha! into the challenges of packaging Leo and why it's been hard for me:

PyPI is not an app store. PyPI, pip, wheels, and the underlying setuptools machinations are all designed for libraries. Code for developer reuse. [Not applications]



`Pip install leo` is great, we need it, but it's not the tool for all distribution methods. Better installation for end users as an application was the target I've had in my mind. So props to Mahmoud Hashemi for re-orienting me, a new luminary for me to learn from.


In typical Matt-ooh-whats-that? fashion, this led me to a new project to explore which I think Leonistas will find interesting also, Glom:

Real applications have real data, and real data nests. Objects inside of objects inside of lists of objects.

glom is a new and powerful way to handle real-world data, featuring:

  • Path-based access for nested data structures
  • Readable, meaningful error messages
  • Declarative data transformation, using lightweight, Pythonic specifications
  • Built-in data exploration and debugging features
All of that and more, available as a fully-documented, pure-Python package, tested on Python 2.7-3.7, as well as PyPy.

-Matt

Edward K. Ream

unread,
Aug 27, 2018, 10:40:58 AM8/27/18
to leo-editor
On Sun, Aug 26, 2018 at 5:34 PM Matt Wilkie <map...@gmail.com> wrote:

PyPI is not an app store. PyPI, pip, wheels, and the underlying setuptools machinations are all designed for libraries. Code for developer reuse. [Not applications]

Good to remember that.  It's also good that pip install leo mostly works.

Edward
Reply all
Reply to author
Forward
0 new messages