# th2 gRPC common library (4.5.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.5.0
+ Updated:
+ bom 4.4.0 -> 4.6.1
+ grpc 1.56.0 -> 1.62.2
+ grpc-service-generator removed
### 4.4.0
+ Added `check_simple_collections_order` parameter to `RootComparisonSettings`
### 4.3.0
+ Added golang specific properties
+ Updated bom:4.4.0
+ Updated grpc-service-generator:3.4.0
+ Updated grpcio-tools:1.56.0
+ Updated mypy-protobuf:3.4
### 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" --> true
+ "abc-123", "*-xyz" --> false
+ "abc-123", "ab*" --> true
+ "abc-123", "*-???" --> true
+ "abc-123", "*-????" --> 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": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": null,
"author": "TH2-devs",
"author_email": "th2-devs@exactprosystems.com",
"download_url": "https://files.pythonhosted.org/packages/78/e5/1fc343ef01bab02b1eeb51099f6a14c24a985034cd9f30797e0f751df4e1/th2_grpc_common-4.5.0.tar.gz",
"platform": null,
"description": "# th2 gRPC common library (4.5.0)\n\nThis library contains common proto messages that are used in all th2 components.\nSee [common.proto](https://github.com/th2-net/th2-grpc-common/blob/master/src/main/proto/th2_grpc_common/common.proto \"common.proto\")\nfile for details. <br>\nTool generates code from `.proto` files and uploads built packages (`.proto` files and generated code) to specified\nrepositories.\n\n## How to maintain a project\n\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\n\nIf you wish to manually create and publish a package for Java, run the following command:\n\n```\ngradle --no-daemon clean build publish artifactoryPublish \\\n -Purl=${URL} \\ \n -Puser=${USER} \\\n -Ppassword=${PASSWORD}\n```\n\n`URL`, `USER` and `PASSWORD` are parameters for publishing.\n\n### Python\n\nIf you wish to manually create and publish a package for Python:\n\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.5.0\n\n+ Updated:\n + bom 4.4.0 -> 4.6.1\n + grpc 1.56.0 -> 1.62.2\n + grpc-service-generator removed\n\n### 4.4.0\n\n+ Added `check_simple_collections_order` parameter to `RootComparisonSettings`\n\n### 4.3.0\n\n+ Added golang specific properties\n+ Updated bom:4.4.0\n+ Updated grpc-service-generator:3.4.0\n+ Updated grpcio-tools:1.56.0\n+ Updated mypy-protobuf:3.4\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\n direct queue instead of schema routing in some cases.\n\n### 4.0.0\n\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\n direction.\n+ Added `EventBatchMetadata` and `MessageGroupBatchMetadata` with `external_queue` property\n\n### 3.13.0\n\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\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\n values(`date/time` in ISO format and `numeric` types) with the precision. The timestamps will be compared with the\n protobuf duration format. Numbers use string format, for example _0.0001_, _0.125_, _125E-3_\n\n### 3.7.0\n\n+ Added `check_repeating_group_order` parameter to `RootComparisonSettings`\n\n### 3.6.0\n\n+ Added `description` parameter to `RootMessageFilter`.\n\n### 3.5.0\n\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`\n types and `date/time` in ISO format).\n+ Added `WILDCARD` and `NOT_WILDCARD` filter operations, which filter a field by `String` specified wildcard\n expression. The wildcard matcher uses the characters `?` and `*` to represent a single or multiple (zero or more)\n wildcard characters. This is the same as often found on Dos/Unix command lines.\n+ \"abc-123\", \"*-123\" --> true\n+ \"abc-123\", \"*-xyz\" --> false\n+ \"abc-123\", \"ab*\" --> true\n+ \"abc-123\", \"*-???\" --> true\n+ \"abc-123\", \"*-????\" --> 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.5.0",
"project_urls": {
"Homepage": "https://github.com/th2-net/th2-grpc-common"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "78e51fc343ef01bab02b1eeb51099f6a14c24a985034cd9f30797e0f751df4e1",
"md5": "7ed49fd00c141ced0a6cc4921552e9b3",
"sha256": "0a9d069eda786118d32556ba6f708fdc890677174a1245c94bba2c3902e9ebba"
},
"downloads": -1,
"filename": "th2_grpc_common-4.5.0.tar.gz",
"has_sig": false,
"md5_digest": "7ed49fd00c141ced0a6cc4921552e9b3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 17693,
"upload_time": "2024-07-17T14:21:40",
"upload_time_iso_8601": "2024-07-17T14:21:40.542309Z",
"url": "https://files.pythonhosted.org/packages/78/e5/1fc343ef01bab02b1eeb51099f6a14c24a985034cd9f30797e0f751df4e1/th2_grpc_common-4.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-17 14:21:40",
"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.59.0"
]
]
},
{
"name": "mypy-protobuf",
"specs": [
[
"==",
"3.4"
]
]
}
],
"lcname": "th2-grpc-common"
}