pinsor is an IoC container, written in Python and with an emphasis on dependency resolution.
If you know what an IoC container is
Pinsor aims for convention over configuration and what configuration is needed is done only in code. It also is able to be used with minimal modification to existing source code. Extensibility will be achieved through "facilities" that tie together the core container and additional functionality. Finally, limited AoP support will help remove the need to spread decorators over methods and match by rule, or specific reference to a classes method.
If you do not know what an IoC(Inversion Of Control) container is
I'm pretty convinced Inversion Of Control is a term used to scare off developers new to the concept. It's also related to a term you'll hear bandied about a lot called Dependency Injection Principle or DIP (sometimes just called DI), this also is designed to scare people.
End of the day Pinsor is designed to have you use less lines of code usually by resolving your dependencies for you (see samples). This also has the nice side effect of making your code easier to change and easier to configure.
You may use the container as much or as little as you want in your project, what matters is you use it in a way to save yourself some typing and maintenance pain, if it's not doing that for you, no one will think less of you if you remove it from your code.
Here are some key features of "pinsor":
· Fluent Interface
· Code-only configuration
· Semi-automatic dependency resolution
· No special properties or decorators needed in code
· No need for abstract base classes to setup dependencies