bitsmiths-mettle


Namebitsmiths-mettle JSON
Version 2.2.9 PyPI version JSON
download
home_pagehttps://bitbucket.org/bitsmiths_za/mettle.git
SummaryA three tier systems code generator that targets serveral databases and languages
upload_time2023-04-12 15:26:03
maintainer
docs_urlNone
authorNicolas Milicevic, Steven van Niekerk, Darrly Daniels
requires_python>=3.10
licenseMIT
keywords generators libraries
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Mettle #

Bitsmiths-Mettle is the supporting code generators and python libraries for the Mettle project.

See our <a href="https://bitbucket.org/bitsmiths_za/mettle.git">repo</a> and main *README* for more details!


## Requirements ##

Python 3.10+


## Installation ##

```console
$ pip install bitsmiths-mettle

---> 100%
```

## Change History ##

### 2.2.9 ###

| Type   | Description |
| ------ | ----------- |
| Fix | Fixed an exception priority issue with the `mettle-psycopg` driver where reset connections were being caught by the lock exception. |


### 2.2.8 ###

| Type   | Description |
| ------ | ----------- |
| New | The `mettle-sql-build` entry point in the python package now accepts wild card inputs.  |

### 2.2.7 ###

| Type   | Description |
| ------ | ----------- |
| Fix | Python database table generetor respects not null columns that are integers and floats properly for pydantic and dataclass generation. |

### 2.2.6 ###

| Type   | Description |
| ------ | ----------- |
| Fix | The python encoded.databases[postgresql] driver was not handling null floats. Bug squashed. |

### 2.2.5 ###

| Type   | Description |
| ------ | ----------- |
| Fix | Changed PostgreSQL package dependency from `postgres` to `postgresql`. |
| Fix | The python braze serializers now use `isinstance` instead of `type` when checking value types. |

### 2.2.4 ###

| Type   | Description |
| ------ | ----------- |
| Fix | Improved package dependencies, thank-you Bradley Kirton. |
| New | Added a new optional `global-settings.file-header` setting to projects. Allows customization or removal or the generated header in all generated files. |


### 2.2.3 ###

| Type   | Description |
| ------ | ----------- |
| New | Implemented auto (reset) to database connections on failure for all python database drivers. (This excludes `asynpg` because it uses a pool that does it for us). |
| Bug | Fixed a python async code generation issue, where some `methods` and `with` statements were not using await or async.   |


### 2.2.2 ###

| Type   | Description |
| ------ | ----------- |
| Fix | Fixed an import issue with the Braze TCP overload in python. |

### 2.2.1 ###

| Type   | Description |
| ------ | ----------- |
| Fix | Applied `couplet` identifier improvement to braze couplets on python. |

### 2.2.0 ###

| Type   | Description |
| ------ | ----------- |
| New    | Added a `database_name()` method to all db connections. |
| New    | Select one statements that fail, will now raise the new `DBNotFound` error code. |
| New    | Added `psycopg3` database extension for `python3`. |
| New    | Added `psycopg3 async` database extension for `python3`. |
| New    | Python generation for `__slots__` added, requires python 3.10 and up. |
| New    | Added a `must_exist` optional parameter to the python generated `fetch()` methods which will raise an error if the fetch fails. |
| Breaking | In the python generated `fetch_all()` methods, renamed `clearList` to `clear_list`. |
| Breaking | Improved the genartion of `couplet` identifier names. This may cause some couplets to be generated with differnt names. |
| Bug    | Foreign key, and unique key violations now proplerly thrown for all the python db drivers. |

### 2.1.14 ###

| Type   | Description |
| ------ | ----------- |
| New    | Added a new python generator option `fetch.method`. Options are `c++` which is the legacy option and `python` which adds a fetch iterator method and creates a new object for each fetch instead of reusing the existing `orec`. |
| New    | Removed the `__del__` dunder from the python DAO code generation as it is not needed. |

### 2.1.13 ###

| Type   | Description |
| ------ | ----------- |
| New    | Angular makefile generators can now be dynamically extended with a different CC, and TARGS as well as have optional overwrite commands. |
| Bug    | Fixed configuration bug from the 2.1.12 where a null dataclass would cause a generation error. |

### 2.1.12 ###

| Type   | Description |
| ------ | ----------- |
| New    | Python database and braze models can now be generated with (pydantic, or dataclass, or attrs) as an option. |
| New    | Python database and braze models can now toggle (pk, serializer, dav, clear) features an and off. |

### 2.1.11 ###

| Type   | Description |
| ----   | ----------- |
| Bug    | Fixed a refactor of `errCode` to `err_code` that was not rippled through some of the base library code/ |


### 2.1.10 ###

| Type   | Description |
| ----   | ----------- |
| Change | General typing improvements, and minor bug fixes. |



## License ##

This project is licensed under the terms of the MIT license.

            

Raw data

            {
    "_id": null,
    "home_page": "https://bitbucket.org/bitsmiths_za/mettle.git",
    "name": "bitsmiths-mettle",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "",
    "keywords": "generators,libraries",
    "author": "Nicolas Milicevic, Steven van Niekerk, Darrly Daniels",
    "author_email": "nicolas@bitsmiths.co.za, steven@bitsmiths.co.za, darryl@bitsmiths.co.za",
    "download_url": "https://files.pythonhosted.org/packages/40/d7/cb3fa579f2b2a3784e58de1d1beaea8399f2e1d5d721526d6f2c0326661f/bitsmiths-mettle-2.2.9.tar.gz",
    "platform": "unix",
    "description": "# Mettle #\n\nBitsmiths-Mettle is the supporting code generators and python libraries for the Mettle project.\n\nSee our <a href=\"https://bitbucket.org/bitsmiths_za/mettle.git\">repo</a> and main *README* for more details!\n\n\n## Requirements ##\n\nPython 3.10+\n\n\n## Installation ##\n\n```console\n$ pip install bitsmiths-mettle\n\n---> 100%\n```\n\n## Change History ##\n\n### 2.2.9 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| Fix | Fixed an exception priority issue with the `mettle-psycopg` driver where reset connections were being caught by the lock exception. |\n\n\n### 2.2.8 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| New | The `mettle-sql-build` entry point in the python package now accepts wild card inputs.  |\n\n### 2.2.7 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| Fix | Python database table generetor respects not null columns that are integers and floats properly for pydantic and dataclass generation. |\n\n### 2.2.6 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| Fix | The python encoded.databases[postgresql] driver was not handling null floats. Bug squashed. |\n\n### 2.2.5 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| Fix | Changed PostgreSQL package dependency from `postgres` to `postgresql`. |\n| Fix | The python braze serializers now use `isinstance` instead of `type` when checking value types. |\n\n### 2.2.4 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| Fix | Improved package dependencies, thank-you Bradley Kirton. |\n| New | Added a new optional `global-settings.file-header` setting to projects. Allows customization or removal or the generated header in all generated files. |\n\n\n### 2.2.3 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| New | Implemented auto (reset) to database connections on failure for all python database drivers. (This excludes `asynpg` because it uses a pool that does it for us). |\n| Bug | Fixed a python async code generation issue, where some `methods` and `with` statements were not using await or async.   |\n\n\n### 2.2.2 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| Fix | Fixed an import issue with the Braze TCP overload in python. |\n\n### 2.2.1 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| Fix | Applied `couplet` identifier improvement to braze couplets on python. |\n\n### 2.2.0 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| New    | Added a `database_name()` method to all db connections. |\n| New    | Select one statements that fail, will now raise the new `DBNotFound` error code. |\n| New    | Added `psycopg3` database extension for `python3`. |\n| New    | Added `psycopg3 async` database extension for `python3`. |\n| New    | Python generation for `__slots__` added, requires python 3.10 and up. |\n| New    | Added a `must_exist` optional parameter to the python generated `fetch()` methods which will raise an error if the fetch fails. |\n| Breaking | In the python generated `fetch_all()` methods, renamed `clearList` to `clear_list`. |\n| Breaking | Improved the genartion of `couplet` identifier names. This may cause some couplets to be generated with differnt names. |\n| Bug    | Foreign key, and unique key violations now proplerly thrown for all the python db drivers. |\n\n### 2.1.14 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| New    | Added a new python generator option `fetch.method`. Options are `c++` which is the legacy option and `python` which adds a fetch iterator method and creates a new object for each fetch instead of reusing the existing `orec`. |\n| New    | Removed the `__del__` dunder from the python DAO code generation as it is not needed. |\n\n### 2.1.13 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| New    | Angular makefile generators can now be dynamically extended with a different CC, and TARGS as well as have optional overwrite commands. |\n| Bug    | Fixed configuration bug from the 2.1.12 where a null dataclass would cause a generation error. |\n\n### 2.1.12 ###\n\n| Type   | Description |\n| ------ | ----------- |\n| New    | Python database and braze models can now be generated with (pydantic, or dataclass, or attrs) as an option. |\n| New    | Python database and braze models can now toggle (pk, serializer, dav, clear) features an and off. |\n\n### 2.1.11 ###\n\n| Type   | Description |\n| ----   | ----------- |\n| Bug    | Fixed a refactor of `errCode` to `err_code` that was not rippled through some of the base library code/ |\n\n\n### 2.1.10 ###\n\n| Type   | Description |\n| ----   | ----------- |\n| Change | General typing improvements, and minor bug fixes. |\n\n\n\n## License ##\n\nThis project is licensed under the terms of the MIT license.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A three tier systems code generator that targets serveral databases and languages",
    "version": "2.2.9",
    "split_keywords": [
        "generators",
        "libraries"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "efe049c3b57d6bd405fcfd346004aced4c890181b3ccc9e95db84cd59436ceac",
                "md5": "61d9134f8e8231e9cff03d66f612fae4",
                "sha256": "72b9b64ae89f7c47571970488abfa85ec25953ed6da1612508523b52e8bff400"
            },
            "downloads": -1,
            "filename": "bitsmiths_mettle-2.2.9-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "61d9134f8e8231e9cff03d66f612fae4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 322856,
            "upload_time": "2023-04-12T15:26:00",
            "upload_time_iso_8601": "2023-04-12T15:26:00.802699Z",
            "url": "https://files.pythonhosted.org/packages/ef/e0/49c3b57d6bd405fcfd346004aced4c890181b3ccc9e95db84cd59436ceac/bitsmiths_mettle-2.2.9-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "40d7cb3fa579f2b2a3784e58de1d1beaea8399f2e1d5d721526d6f2c0326661f",
                "md5": "80318e5817280b2ad35ac32f8afd554f",
                "sha256": "c9c07d78627167c02fee56c25dc079824975121a3ee62f06f1e85cc0aad6d765"
            },
            "downloads": -1,
            "filename": "bitsmiths-mettle-2.2.9.tar.gz",
            "has_sig": false,
            "md5_digest": "80318e5817280b2ad35ac32f8afd554f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 167137,
            "upload_time": "2023-04-12T15:26:03",
            "upload_time_iso_8601": "2023-04-12T15:26:03.676026Z",
            "url": "https://files.pythonhosted.org/packages/40/d7/cb3fa579f2b2a3784e58de1d1beaea8399f2e1d5d721526d6f2c0326661f/bitsmiths-mettle-2.2.9.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-04-12 15:26:03",
    "github": false,
    "gitlab": false,
    "bitbucket": true,
    "bitbucket_user": "bitsmiths_za",
    "bitbucket_project": "mettle.git",
    "lcname": "bitsmiths-mettle"
}
        
Elapsed time: 0.88325s