th2-grpc-common


Nameth2-grpc-common JSON
Version 4.2.0 PyPI version JSON
download
home_pagehttps://github.com/th2-net/th2-grpc-common
Summaryth2_grpc_common
upload_time2023-03-31 10:04:24
maintainer
docs_urlNone
authorTH2-devs
requires_python>=3.7
licenseApache License 2.0
keywords
VCS
bugtrack_url
requirements grpcio-tools mypy-protobuf
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # th2 gRPC common library (4.2.0)


This library contains common proto messages that are used in all th2 components. See [common.proto](https://github.com/th2-net/th2-grpc-common/blob/master/src/main/proto/th2_grpc_common/common.proto "common.proto") file for details. <br>
Tool generates code from `.proto` files and uploads built packages (`.proto` files and generated code) to specified repositories.

## How to maintain a project
1. Perform the necessary changes.
2. Update the package version of Java in `gradle.properties` file.
3. Update the package version of Python in `package_info.json` file.
4. Commit everything.

### Java
If you wish to manually create and publish a package for Java, run the following command:
```
gradle --no-daemon clean build publish artifactoryPublish \
       -Purl=${URL} \ 
       -Puser=${USER} \
       -Ppassword=${PASSWORD}
```
`URL`, `USER` and `PASSWORD` are parameters for publishing.

### Python
If you wish to manually create and publish a package for Python:
1. Generate services with `Gradle`:
    ```
       gradle --no-daemon clean generateProto
    ```
   You can find the generated files by following path: `src/gen/main/services/python`
2. Generate code from `.proto` files and publish everything using `twine`:
    ```
    pip install -r requirements.txt
    pip install twine
    python setup.py generate
    python setup.py sdist
    twine upload --repository-url ${PYPI_REPOSITORY_URL} --username ${PYPI_USER} --password ${PYPI_PASSWORD} dist/*
    ```
    `PYPI_REPOSITORY_URL`, `PYPI_USER` and `PYPI_PASSWORD` are parameters for publishing.

## Release notes

### 4.2.0

+ Added vulnerability check
+ Updated bom:4.2.0
+ Updated protoc:3.21.7
+ Updated grpc-service-generator:3.3.1
+ Downgraded grpc version from 1.50.2 to 1.48.1 according to bom

### 4.1.1

+ Added script for publishing dev-release for maven artefacts
+ Migrated to bom:4.2.0

### 4.1.0

+ Added event / message batch metadata with the external_user_queue field. This field can be used to send MQ message to direct queue instead of schema routing in some cases.

### 4.0.0
+ Marked deprecated fields as `reserved`
+ Moved `timestamp` from `MessageMetadata`/`RawMessageMetadata` to `MessageID`
+ Moved `start_timestamp` from `Event` to `EventID`
+ Added `book_name` to `MessageID` and `EventID`
+ Added `scope` to `EventID`
+ Added `map<string, SessionAliasToDirectionCheckpoint>` to `Checkpoint`. It describes book to session alias to direction.
+ Added `EventBatchMetadata` and `MessageGroupBatchMetadata` with `external_queue` property

### 3.13.0
+ Update `th2-bom` version from '3.0.0' to '4.1.0'

### 3.12.0

+ Update `grpcio-tools` Python dependency version from `1.38.1` to `1.50.0` 
+ Update `grpc` Java dependency version from `1.32.1` to `1.50.2`

### 3.11.1

+ Update `mypy-protobuf` Python dependency version from `2.5` to `3.2` 

### 3.11.0

+ Added `session_group` parameter to `ConnectionID`

### 3.10.0

+ Updated grpc-service-generator (added support for gRPC pins filters).

### 3.9.0

+ Added `null_value` in `ValueFilter`. Should be used only with EQUAL and NOT_EQUAL operations.

### 3.8.0
+ Added `time_precision` and `decimal_precision` parameters to `RootComparisonSettings`
+ Added `EQ_TIME_PRECISION` and `EQ_DECIMAL_PRECISION` filter operation, witch filter a field by comparing values(`date/time` in ISO format and `numeric` types) with the precision. The timestamps will be compared with the protobuf duration format. Numbers use string format, for example _0.0001_, _0.125_, _125E-3_

### 3.7.0
+ Added `check_repeating_group_order` parameter to `RootComparisonSettings`

### 3.6.0
+ Added `description` parameter to `RootMessageFilter`.

### 3.5.0
+ Added SimpleList parameter to SimpleFilter. 

### 3.4.0

+ Added `IN` and `NOT_IN` filter operation, which filter a field by value from list of `String`.
+ Added `LIKE` and `NOT_LIKE` filter operation, which filter a field by `String` regEx expression.
+ Added `MORE`, `LESS`, `NOT_MORE`, `NOT_LESS` filter operations, which filter a field by comparing values(`numeric` types and `date/time` in ISO format).
+ Added `WILDCARD` and `NOT_WILDCARD`  filter operations, which filter a field by `String` specified wildcard expression.
The wildcard matcher uses the characters `?` and `*` to represent a single or multiple (zero or more) wildcard characters.
This is the same as often found on Dos/Unix command lines.
+ "abc-123", "*-123"     --&gt; true
+ "abc-123", "*-xyz"     --&gt; false
+ "abc-123", "ab*"       --&gt; true
+ "abc-123", "*-???"     --&gt; true
+ "abc-123", "*-????"    --&gt; false

N.B. the sequence `*?` does not work properly at present in match strings.

### 3.3.0

+ Added information about message timestamp into checkpoint message

### 3.2.0

+ Implement stubs creation for Python
            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/th2-net/th2-grpc-common",
    "name": "th2-grpc-common",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "",
    "author": "TH2-devs",
    "author_email": "th2-devs@exactprosystems.com",
    "download_url": "https://files.pythonhosted.org/packages/05/5b/7dfba2f998a5bb675eb6aa0f826d15791143e58f1a0f222e0a431c48a2d8/th2_grpc_common-4.2.0.tar.gz",
    "platform": null,
    "description": "# th2 gRPC common library (4.2.0)\n\n\nThis library contains common proto messages that are used in all th2 components. See [common.proto](https://github.com/th2-net/th2-grpc-common/blob/master/src/main/proto/th2_grpc_common/common.proto \"common.proto\") file for details. <br>\nTool generates code from `.proto` files and uploads built packages (`.proto` files and generated code) to specified repositories.\n\n## How to maintain a project\n1. Perform the necessary changes.\n2. Update the package version of Java in `gradle.properties` file.\n3. Update the package version of Python in `package_info.json` file.\n4. Commit everything.\n\n### Java\nIf you wish to manually create and publish a package for Java, run the following command:\n```\ngradle --no-daemon clean build publish artifactoryPublish \\\n       -Purl=${URL} \\ \n       -Puser=${USER} \\\n       -Ppassword=${PASSWORD}\n```\n`URL`, `USER` and `PASSWORD` are parameters for publishing.\n\n### Python\nIf you wish to manually create and publish a package for Python:\n1. Generate services with `Gradle`:\n    ```\n       gradle --no-daemon clean generateProto\n    ```\n   You can find the generated files by following path: `src/gen/main/services/python`\n2. Generate code from `.proto` files and publish everything using `twine`:\n    ```\n    pip install -r requirements.txt\n    pip install twine\n    python setup.py generate\n    python setup.py sdist\n    twine upload --repository-url ${PYPI_REPOSITORY_URL} --username ${PYPI_USER} --password ${PYPI_PASSWORD} dist/*\n    ```\n    `PYPI_REPOSITORY_URL`, `PYPI_USER` and `PYPI_PASSWORD` are parameters for publishing.\n\n## Release notes\n\n### 4.2.0\n\n+ Added vulnerability check\n+ Updated bom:4.2.0\n+ Updated protoc:3.21.7\n+ Updated grpc-service-generator:3.3.1\n+ Downgraded grpc version from 1.50.2 to 1.48.1 according to bom\n\n### 4.1.1\n\n+ Added script for publishing dev-release for maven artefacts\n+ Migrated to bom:4.2.0\n\n### 4.1.0\n\n+ Added event / message batch metadata with the external_user_queue field. This field can be used to send MQ message to direct queue instead of schema routing in some cases.\n\n### 4.0.0\n+ Marked deprecated fields as `reserved`\n+ Moved `timestamp` from `MessageMetadata`/`RawMessageMetadata` to `MessageID`\n+ Moved `start_timestamp` from `Event` to `EventID`\n+ Added `book_name` to `MessageID` and `EventID`\n+ Added `scope` to `EventID`\n+ Added `map<string, SessionAliasToDirectionCheckpoint>` to `Checkpoint`. It describes book to session alias to direction.\n+ Added `EventBatchMetadata` and `MessageGroupBatchMetadata` with `external_queue` property\n\n### 3.13.0\n+ Update `th2-bom` version from '3.0.0' to '4.1.0'\n\n### 3.12.0\n\n+ Update `grpcio-tools` Python dependency version from `1.38.1` to `1.50.0` \n+ Update `grpc` Java dependency version from `1.32.1` to `1.50.2`\n\n### 3.11.1\n\n+ Update `mypy-protobuf` Python dependency version from `2.5` to `3.2` \n\n### 3.11.0\n\n+ Added `session_group` parameter to `ConnectionID`\n\n### 3.10.0\n\n+ Updated grpc-service-generator (added support for gRPC pins filters).\n\n### 3.9.0\n\n+ Added `null_value` in `ValueFilter`. Should be used only with EQUAL and NOT_EQUAL operations.\n\n### 3.8.0\n+ Added `time_precision` and `decimal_precision` parameters to `RootComparisonSettings`\n+ Added `EQ_TIME_PRECISION` and `EQ_DECIMAL_PRECISION` filter operation, witch filter a field by comparing values(`date/time` in ISO format and `numeric` types) with the precision. The timestamps will be compared with the protobuf duration format. Numbers use string format, for example _0.0001_, _0.125_, _125E-3_\n\n### 3.7.0\n+ Added `check_repeating_group_order` parameter to `RootComparisonSettings`\n\n### 3.6.0\n+ Added `description` parameter to `RootMessageFilter`.\n\n### 3.5.0\n+ Added SimpleList parameter to SimpleFilter. \n\n### 3.4.0\n\n+ Added `IN` and `NOT_IN` filter operation, which filter a field by value from list of `String`.\n+ Added `LIKE` and `NOT_LIKE` filter operation, which filter a field by `String` regEx expression.\n+ Added `MORE`, `LESS`, `NOT_MORE`, `NOT_LESS` filter operations, which filter a field by comparing values(`numeric` types and `date/time` in ISO format).\n+ Added `WILDCARD` and `NOT_WILDCARD`  filter operations, which filter a field by `String` specified wildcard expression.\nThe wildcard matcher uses the characters `?` and `*` to represent a single or multiple (zero or more) wildcard characters.\nThis is the same as often found on Dos/Unix command lines.\n+ \"abc-123\", \"*-123\"     --&gt; true\n+ \"abc-123\", \"*-xyz\"     --&gt; false\n+ \"abc-123\", \"ab*\"       --&gt; true\n+ \"abc-123\", \"*-???\"     --&gt; true\n+ \"abc-123\", \"*-????\"    --&gt; false\n\nN.B. the sequence `*?` does not work properly at present in match strings.\n\n### 3.3.0\n\n+ Added information about message timestamp into checkpoint message\n\n### 3.2.0\n\n+ Implement stubs creation for Python",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "th2_grpc_common",
    "version": "4.2.0",
    "project_urls": {
        "Homepage": "https://github.com/th2-net/th2-grpc-common"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "055b7dfba2f998a5bb675eb6aa0f826d15791143e58f1a0f222e0a431c48a2d8",
                "md5": "8331aa5c70527bef7ba2c0c6aa448652",
                "sha256": "ff0cce6578c3fbe3bca7dfd16989f80739a1f06b3f504a2dcd87742b7643a57a"
            },
            "downloads": -1,
            "filename": "th2_grpc_common-4.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "8331aa5c70527bef7ba2c0c6aa448652",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 18714,
            "upload_time": "2023-03-31T10:04:24",
            "upload_time_iso_8601": "2023-03-31T10:04:24.912847Z",
            "url": "https://files.pythonhosted.org/packages/05/5b/7dfba2f998a5bb675eb6aa0f826d15791143e58f1a0f222e0a431c48a2d8/th2_grpc_common-4.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-03-31 10:04:24",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "th2-net",
    "github_project": "th2-grpc-common",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "grpcio-tools",
            "specs": [
                [
                    "==",
                    "1.56.0"
                ]
            ]
        },
        {
            "name": "mypy-protobuf",
            "specs": [
                [
                    "==",
                    "3.4"
                ]
            ]
        }
    ],
    "lcname": "th2-grpc-common"
}
        
Elapsed time: 0.54961s