This repository has been archived by the owner on Feb 20, 2022. It is now read-only.
Releases: bilinenkisi/msorm
Releases · bilinenkisi/msorm
MSORM
MSORM
- Added save & update & delete methods to Model class
- Made better where, get, first and count methods 17.06.2021
preview release before v0.0.4 (1.0.4a0)
- Operators removed and OR was moved to models.py.
- Added __safe parameter for model _init_ function to understand if _init_ is called by a query or hand
- type_fields.py renamed as mssql_fields.py
- All fields were moved to Fields class which is in models.py
- Added developer usage for field class, now it can be called directly for creating test models
- Added settings.py
- With settings.py, added _MFA_ and _MFL_ to check if the value is suitable for the field
- Now, all fields except foreign key have a produce method to check if the value is suitable for the field.
- Added most of the fields of MSSQL to msorm
- Changed versioning system to Semantic Versioning
Note: Because of Major changes in usage of fields and models' creation, the versioning system changed to semantic versioning and with that now version is calculated with the formula:
Semantic versioning (preferred)
For new projects, the recommended versioning scheme is based on Semantic Versioning, but adopts a different approach to handling pre-releases and build metadata.
The essence of semantic versioning is a 3-part MAJOR.MINOR.MAINTENANCE numbering scheme, where the project author increments:
MAJOR version when they make incompatible API changes,
MINOR version when they add functionality in a backwards-compatible manner, and
MAINTENANCE version when they make backwards-compatible bug fixes.
Adopting this approach as a project author allows users to make use of “compatible release” specifiers, where name ~= X.Y requires at least release X.Y, but also allows any later release with a matching MAJOR version.
Python projects adopting semantic versioning should abide by clauses 1-8 of the Semantic Versioning 2.0.0 specification.
First Candidate For Version 0.0.4a0
- Added metadata via __init_subclass to make it easier to access the field's value except for foreign field.
- Version data changed for better understanding of distributions of msorm.
- QueryObject's find, get, remove and pop functions are changed. Now, to find the wanted obj you have to give a lambda function.
Ex: QueryObject.get(lambda x: x.field_name == 1) - if QueryObject's get function can't succeed to find the wanted obj, it will raise ItemNotFound (ItemNotFoundException)
- Still working on automatic model creation from existing databases.
- Operators still aren't deprecated.
- Still working on make_safe function
preview release before v0.0.4a0
- Added get method
- Added first method
- Added count method to Model class
- Improved QueryDict class's dicts and values method
- Added dict() and values() method to Model class
- For dict() and dicts() methods, added depth parameter. (with depth parameter, related tables can be serialize as dictionary)
0.0.3a1
first release