-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Lance Drane <[email protected]>
- Loading branch information
1 parent
9293475
commit 72bb858
Showing
3 changed files
with
103 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# Changelog | ||
|
||
## [0.7.1-aTEST] - 2024-08-21 | ||
|
||
_DO NOT USE THIS RELEASE. THIS IS FOR TESTING GITHUB CI/CD._ | ||
|
||
### Changed | ||
|
||
- Add CHANGELOG.md | ||
|
||
## [0.7.0] - 2024-08-21 | ||
|
||
_If you are upgrading: please see [`UPGRADING.md`](UPGRADING.md)._ | ||
|
||
### Changed | ||
|
||
- **Breaking:** Services now work with multiple Capabilities instead of a single Capability. | ||
|
||
### Added | ||
|
||
- Added service-to-service request/response mechanism. | ||
|
||
[0.7.1-rcTEST]: https://github.com/Level/level/releases/tag/0.7.1-rcTEST | ||
|
||
[0.7.0]: https://github.com/Level/level/releases/tag/0.7.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# Upgrade Guide | ||
|
||
This document describes breaking changes and how to upgrade. For a complete list of changes including minor and patch releases, please refer to the [changelog](CHANGELOG.md). | ||
|
||
## 0.7.0 | ||
|
||
### Services | ||
|
||
Services now provide a list of capabilities, instead of just a single capability. You will need to explicitly set your capability's `capability_name` property, and will provide a list of Capabilities to the Service instead of a single capability. So you will need to change former code which looks like this: | ||
|
||
```python | ||
from intersect_sdk import IntersectBaseCapabilityImplementation, IntersectService, intersect_message | ||
|
||
class MyCapabilityImplementation(IntersectBaseCapabilityImplementation): | ||
|
||
@intersect_message | ||
def my_endpoint(self, param: str) -> str: | ||
# ... implementation | ||
|
||
if __name__ == '__main__': | ||
# etc. | ||
capability = MyCapabilityImplementation() | ||
service = IntersectService(capability, | ||
# ... other params | ||
) | ||
``` | ||
|
||
to this: | ||
|
||
```python | ||
from intersect_sdk import IntersectBaseCapabilityImplementation, IntersectService, intersect_message | ||
|
||
class MyCapabilityImplementation(IntersectBaseCapabilityImplementation): | ||
|
||
@intersect_message | ||
def my_endpoint(self, param: str) -> str: | ||
# ... implementation | ||
|
||
if __name__ == '__main__': | ||
# etc. | ||
capability = MyCapabilityImplementation() | ||
capability.capability_name = 'MyCapability' | ||
service = IntersectService([capability], | ||
# ... other params | ||
) | ||
``` | ||
|
||
Additionally, this reserves the `intersect_sdk_call_service` function - if you are using this function as a name, **you must change its name**. This release also adds explicit warnings if you add a function name which starts with `__intersect_sdk_`, `_intersect_sdk_`, or `intersect_sdk_` - these are reserved namespaces for future Intersect basic capability functions. | ||
|
||
### Clients | ||
|
||
When calling another Service's operation, the namespacing has changed from `<function_name>` to `<capability_name>.<function_name>` . So for example, if we were calling `my_endpoint` in the above Service example, the code would change from: | ||
|
||
```python | ||
params = IntersectClientMessageParams( | ||
operation='my_endpoint', | ||
# ... other parameters unchanged | ||
) | ||
|
||
``` | ||
|
||
to | ||
|
||
```python | ||
params = IntersectClientMessageParams( | ||
operation='MyCapability.my_endpoint', | ||
# ... other parameters unchanged | ||
) | ||
|
||
``` |