Skip to content

Releases: ocpu/db

Bug fixes and refactoring for beta

05 Feb 17:30
c6d57b0

Choose a tag to compare

Refactored ISQLModelDriver to IModelDriver.

Made the preferences interface nongeneric moved preference setting out of the ValueWrapper class. This was to have a little more control of what types that can use some functions to set up the preferences instances.

Fixed a bug where the string value of an enum value was stored in an integer column.

The default values for the value wrappers are now lazily set based on when you request the value.

Loads of comments have been added to enums, functions, methods, classes, and interfaces.

1.0.0 Beta

05 Feb 15:04
e6114b5

Choose a tag to compare

Rework of code and enough for 1.0.0 beta
The whole codebase has been reworked but still has the same core
methods. The changed core for the database connections is now a generic
interface, these are called model drivers, the implementation of these
upholds the connection and takes the generic data into database-specific
commands. The core active record is now called a model and has become a
interface instead of an abstract class. Metadata about the
columns/properties are now handled directly on instantiation of the
value wrapper.

An addition that came out of the rework is what I call composites. A
composite is like views in an SQL database. You can get
columns/properties from other models and for now only count the number
of items in a reference list. (see the social post media example)

I have built this new codebase on the basis that it should be
extensible by the user. There is some stuff left for that in the way I
handle model properties. That is why it is in beta as I am confident in
the current API but have no real big changes in mind.