Skip to main content

Simple object serialization for SQLAlchemy

Project description

SerialAlchemy adds serialization to SQLAlchemy ORM objects via a mixin class. It is tightly coupled with SQLAlchemy, because it’s the best thing ever invented.

About

SerialAlchemy aims to be the one serialization library that I use for web projects. If other people like it, that’s cool too. Released under the MIT License, so fork away!

Why create SerialAlchemy?

The serialization problem for web apps has been solved many times over. I had been using marshmallow for several projects. It’s a great library, and has its own justification for existence.

While I liked working with marshmallow just fine, it is designed to be very broad and fit a lot of different situations. I mostly create small web applications, so my situation rarely changes.

If there is one reason for creating SerialAlchemy, it is the fact that I didn’t like the idea of defining my models, then having to define marshmallow schemas. It felt like redundancy to me. Keeping the marshmallow schema in sync with model changes was also a pain, but feeling like I was repeating myself was the bigger reason.

And yes, “alAl” in SerialAlchemy bothers me, but SeriAlchemy sounds too much like Siri-Alchemy, and I fear Apple’s legal team.

Why not use SerialAlchemy?

I thought I’d take a different approach to selling this. Truth is, I made this library for me, and don’t really care if anyone else uses it.

  • SQLAlchemy is required. This library simply won’t work without it.

  • While SerialAlchemy is not beholden to any particular web framework, it doesn’t make a lot of sense outside the web application area. SQLAlchemy has a built-in way to serialize expressions, and the result sets can be pickled.

  • There is no data validation. SQLAlchemy has simple validation built-in, and I feel like something more extensive is outside the scope of this project.

  • SerialAlchemy is Python 3 only. Get used to it ;)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

SerialAlchemy-0.3.4.post1.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

SerialAlchemy-0.3.4.post1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file SerialAlchemy-0.3.4.post1.tar.gz.

File metadata

  • Download URL: SerialAlchemy-0.3.4.post1.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.7

File hashes

Hashes for SerialAlchemy-0.3.4.post1.tar.gz
Algorithm Hash digest
SHA256 73c08b376d7d1c842a0409e528bcb1ab720780650d5534205302c20ef0f20aa8
MD5 70f658eb62362bb02c87dc63ca4b3527
BLAKE2b-256 17bdbb685f5c1097489b02dcb82ec2fdd2de64a6e786635293fe5d38aa078440

See more details on using hashes here.

File details

Details for the file SerialAlchemy-0.3.4.post1-py3-none-any.whl.

File metadata

File hashes

Hashes for SerialAlchemy-0.3.4.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 966fb69e2d618043ee87115e9afb24009bddcf3dc36479def303aa6d34af126a
MD5 01024d1c3578f9fea804687d20a820b9
BLAKE2b-256 39492e1a549fbdcf0f4ce6b78987f88357feb5a28966e0882e184cf3d529829b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page