Skip to content

Commit e989040

Browse files
Revise CHANGELOG.md for recent updates
Signed-off-by: tech0priyanshu <priyanshuyadv101106@gmail.com>
1 parent 1b3eba4 commit e989040

34 files changed

+3527
-198
lines changed

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ jobs:
4545

4646
- name: Prepare Hiero Solo
4747
id: solo
48-
uses: hiero-ledger/hiero-solo-action@be37932d21b1a1deaaca6ce8d7fc28a7251cfb56 # v0.13
48+
uses: hiero-ledger/hiero-solo-action@b76850c1ac44466900f8e7412b309c3aa0f539c1 # v0.14
4949
with:
5050
installMirrorNode: true
5151

CHANGELOG.md

Lines changed: 63 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,11 @@ This project adheres to [Semantic Versioning](https://semver.org).
77
This changelog is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
88

99
## [Unreleased]
10+
1011
- Convert camelCase to snake_case in integration tests (#318)
1112

1213
### Added
14+
1315
- ScheduleSignTransaction class
1416
- NodeUpdateTransaction class
1517
- NodeDeleteTransaction class
@@ -43,9 +45,10 @@ This changelog is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.
4345
- Function docstrings in /tokens, /transaction, /query, /consensus
4446

4547
### Changed
48+
4649
- bump protobufs version to `v0.66.0`
4750
- bump solo version to `v0.13`
48-
- Extract _build_proto_body() from build_transaction_body() in every transaction
51+
- Extract \_build_proto_body() from build_transaction_body() in every transaction
4952
- StatefulContract's setMessage() function designed with no access restrictions, allowing calls from any address
5053
- bump solo version to `v0.12`
5154
- Extract Ed25519 byte loading logic into private helper method `_from_bytes_ed25519()`
@@ -56,8 +59,11 @@ This changelog is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.
5659
- Updated `rebasing.md` with clarification on using `git reset --soft HEAD~<n>` where `<n>` specifies the number of commits to rewind.
5760
- Calls in examples for PrivateKey.from_string_ed25519(os.getenv('OPERATOR_KEY')) to PrivateKey.from_string(os.getenv('OPERATOR_KEY')) to enable general key types
5861
- Add CI tests across Python 3.10–3.12.
62+
- kyc_status: Optional[TokenFreezeStatusProto] = None → kyc_status: Optional[TokenKycStatus] = None
63+
- assert relationship.freeze_status == TokenFreezeStatus.FROZEN, f"Expected freeze status to be FROZEN, but got {relationship.freeze_status}" → assert relationship.freeze_status == TokenFreezeStatus.UNFROZEN, f"Expected freeze status to be UNFROZEN, but got {relationship.freeze_status}"
5964

6065
### Fixed
66+
6167
- Unit test compatibility issues when running with UV package manager
6268
- Type annotations in TokenRelationship class (kyc_status and freeze_status)
6369
- Test assertions in test_executable.py using pytest match parameter
@@ -68,55 +74,61 @@ This changelog is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.
6874
- deprecated CamelCase instances in /examples such as TokenId and totalSupply to snake_case
6975
- Invalid HEX representation and signature validation in keys_public_ecdsa.py
7076
- Invalid signature verification for examples/keys_public_der.py
77+
- Duplicate validation function in TokenCreate
7178

7279
### Removed
80+
7381
- Removed the old `/documentation` folder.
7482
- Rebase command in README_upstream changed to just -S
7583
- generate_proto.sh
7684
- pkg_resources dependency in generate_proto.py
7785

78-
7986
### Breaking API changes
80-
- We have some changed imports and returns to maintain compatability in the proto bump
8187

82-
transaction_body_pb2.TransactionBody -> transaction_pb2.TransactionBody
88+
- We have some changed imports and returns to maintain compatability in the proto bump
8389

90+
transaction_body_pb2.TransactionBody -> transaction_pb2.TransactionBody
8491
contract_call_local_pb2.ContractFunctionResult -> contract_types_pb2.ContractFunctionResult
85-
8692
contract_call_local_pb2.ContractLoginfo -> contract_types_pb2.ContractLoginfo
93+
8794
- Removed init.py content in /tokens
8895

8996
## Corrected
97+
9098
- Duplicate validation function in TokenCreate
9199
- kyc_status: Optional[TokenFreezeStatusProto] = None → kyc_status: Optional[TokenKycStatus] = None
92100
- assert relationship.freeze_status == TokenFreezeStatus.FROZEN, f"Expected freeze status to be FROZEN, but got {relationship.freeze_status}" → assert relationship.freeze_status == TokenFreezeStatus.UNFROZEN, f"Expected freeze status to be UNFROZEN, but got {relationship.freeze_status}"
93101

94-
### Breaking API changes
102+
### Breaking API changes
95103

96104
**Changed imports**
105+
97106
- src/hiero_sdk_python/consensus/topic_message.py: from hiero_sdk_python import Timestamp → from hiero_sdk_python.timestamp import Timestamp
98107
- src/hiero_sdk_python/query/topic_message_query.py: from hiero_sdk_python import Client → from hiero_sdk_python.client.client import Client
99-
- src/hiero_sdk_python/tokens/__init__.py: content removed.
108+
- src/hiero_sdk_python/tokens/**init**.py: content removed.
100109
- src/hiero_sdk_python/tokens/token_info.py: from hiero_sdk_python.hapi.services.token_get_info_pb2 import TokenInfo as proto_TokenInfo → from hiero_sdk_python.hapi.services import token_get_info_pb2
101110
- src/hiero_sdk_python/tokens/token_key_validation.py: from hiero_sdk_python.hapi.services → import basic_types_pb2
102111
- src/hiero_sdk_python/tokens/token_kyc_status.py: from hiero_sdk_python.hapi.services.basic_types_pb2 import TokenKycStatus as proto_TokenKycStatus → from hiero_sdk_python.hapi.services import basic_types_pb2
103112
- src/hiero_sdk_python/tokens/token_pause_status.py: from hiero_sdk_python.hapi.services.basic_types_pb2 import (TokenPauseStatus as proto_TokenPauseStatus,) → from hiero_sdk_python.hapi.services import basic_types_pb2
104113
- src/hiero_sdk_python/tokens/token_pause_transaction.py: from hiero_sdk_python.hapi.services.token_pause_pb2 import TokenPauseTransactionBody → from hiero_sdk_python.hapi.services import token_pause_pb2, transaction_pb2
105114
- from hiero_sdk_python.hapi.services.token_revoke_kyc_pb2 import TokenRevokeKycTransactionBody → from hiero_sdk_python.hapi.services import token_revoke_kyc_pb2, transaction_pb2
106115
- src/hiero_sdk_python/tokens/token_update_nfts_transaction.py: from hiero_sdk_python.hapi.services.token_update_nfts_pb2 import TokenUpdateNftsTransactionBody → from hiero_sdk_python.hapi.services import token_update_nfts_pb2,transaction_pb2
107-
- src/hiero_sdk_python/tokens/token_wipe_transaction.py: from hiero_sdk_python.hapi.services.token_wipe_account_pb2 import TokenWipeAccountTransactionBody → from hiero_sdk_python.hapi.services import token_wipe_account_pb2, transaction_pb2
116+
- src/hiero_sdk_python/tokens/token_wipe_transaction.py: from hiero_sdk_python.hapi.services.token_wipe_account_pb2 import TokenWipeAccountTransactionBody → from hiero_sdk_python.hapi.services import token_wipe_account_pb2, transaction_pb2
108117

109118
## [0.1.4] - 2025-08-19
119+
110120
### Added
121+
111122
- CONTRIBUTING.md: expanded documentation detailing various contribution processes in a step-by-step way. Includes new sections: blog posts and support.
112123
- README_upstream.md: documentation explaining how to rebase to main.
113124

114125
### Added
126+
115127
- Legacy ECDSA DER parse support
116128
- documented private key from_string method behavior
117129
- ContractInfo class
118130
- ContractInfoQuery class
119-
- ContractID check in PublicKey._from_proto() method
131+
- ContractID check in PublicKey.\_from_proto() method
120132
- PendingAirdropId Class
121133
- PendingAirdropRecord Class
122134
- TokenCancelAirdropTransaction Class
@@ -127,48 +139,55 @@ contract_call_local_pb2.ContractLoginfo -> contract_types_pb2.ContractLoginfo
127139
- ContractUpdateTransaction class
128140

129141
### Fixed
142+
130143
- missing ECDSA support in query.py and contract_create_transaction.py (was only creating ED25519 keys)
131144
- Applied linting and code formatting across the consensus module
132145
- fixed pip install hiero_sdk_python -> pip install hiero-sdk-python in README.md
133146

134-
### Breaking API changes
147+
### Breaking API changes
148+
135149
**We have several camelCase uses that will be deprecated → snake_case** Original aliases will continue to function, with a warning, until the following release.
136150

137151
#### In `token_info.py`
138-
- tokenId → token_id
139-
- totalSupply → total_supply
152+
153+
- tokenId → token_id
154+
- totalSupply → total_supply
140155
- isDeleted → is_deleted
141-
- tokenType → token_type
142-
- maxSupply → max_supply
143-
- adminKey → admin_key
156+
- tokenType → token_type
157+
- maxSupply → max_supply
158+
- adminKey → admin_key
144159
- kycKey → kyc_key
145-
- freezeKey → freeze_key
160+
- freezeKey → freeze_key
146161
- wipeKey → wipe_key
147162
- supplyKey → supply_key
148-
- defaultFreezeStatus → default_freeze_status
149-
- defaultKycStatus → default_kyc_status
150-
- autoRenewAccount → auto_renew_account
151-
- autoRenewPeriod → auto_renew_period
152-
- pauseStatus → pause_status
153-
- supplyType → supply_type
163+
- defaultFreezeStatus → default_freeze_status
164+
- defaultKycStatus → default_kyc_status
165+
- autoRenewAccount → auto_renew_account
166+
- autoRenewPeriod → auto_renew_period
167+
- pauseStatus → pause_status
168+
- supplyType → supply_type
154169

155170
#### In `nft_id.py`
156-
- tokenId → token_id
157-
- serialNumber → serial_number
171+
172+
- tokenId → token_id
173+
- serialNumber → serial_number
158174

159175
#### In `transaction_receipt.py`
176+
160177
- tokenId → token_id
161-
- topicId → topic_id
162-
- accountId → account_id
178+
- topicId → topic_id
179+
- accountId → account_id
163180
- fileId → file_id
164181

165182
### Deprecated Additions
183+
166184
- logger.warn will be deprecated in v0.1.4. Please use logger.warning instead.
167185
- get_logger method passing (name, level) will be deprecated in v0.1.4 for (level, name).
168186

169-
170187
## [0.1.3] - 2025-07-03
188+
171189
### Added
190+
172191
- TokenType Class
173192
- MAINTAINERS.md file
174193
- Duration Class
@@ -195,8 +214,8 @@ contract_call_local_pb2.ContractLoginfo -> contract_types_pb2.ContractLoginfo
195214
- TransactionRecordQuery Class
196215
- AccountInfoQuery Class
197216

198-
199217
### Changed
218+
200219
- replace datetime.utcnow() with datetime.now(timezone.utc) for Python 3.10
201220
- updated pr-checks.yml
202221
- added add_require_frozen() to Transaction Base Class
@@ -216,54 +235,66 @@ contract_call_local_pb2.ContractLoginfo -> contract_types_pb2.ContractLoginfo
216235
- Created `sdk_users` docs folder and renamed `examples/README.md` to `running_examples.md`
217236
- Updated references and links accordingly
218237

219-
220238
### Fixed
239+
221240
- fixed INVALID_NODE_ACCOUNT during node switching
222241
- fixed ed25519 key ambiguity (PrivateKey.from_string -> PrivateKey.from_string_ed25519 in examples)
223242

224243
### Removed
225-
- Redundant test.py file
226244

245+
- Redundant test.py file
227246

228247
## [0.1.2] - 2025-03-12
248+
229249
### Added
250+
230251
- NFTId Class
231252

232253
### Changed
254+
233255
- use SEC1 ECPrivateKey instead of PKCS#8
234256

235257
### Fixed
258+
236259
- PR checks
237260
- misnamed parameter (ECDSASecp256k1=pub_bytes -> ECDSA_secp256k1=pub_bytes)
238261

239262
### Removed
240-
- .DS_store file
241263

264+
- .DS_store file
242265

243266
## [0.1.1] – 2025-02-25
267+
244268
### Added
269+
245270
- RELEASE.md
246271
- CONTRIBUTING.md
247272

248273
### Changed
274+
249275
- README now split into root README for project overview and /examples README for transaction types and syntax.
250276
- Python version incremented from 3.9 to 3.10
251277

252278
### Removed
253-
- pdm.lock & uv.lock file
254279

280+
- pdm.lock & uv.lock file
255281

256282
## [0.1.0] - 2025-02-19
283+
257284
### Added
285+
258286
- Initial release of the Python SDK core functionality.
259287
- Basic documentation on how to install and use the SDK.
260288
- Example scripts illustrating setup and usage.
261289

262290
### Changed
291+
263292
- N/A
264293

265294
### Fixed
295+
266296
- N/A
267297

268298
### Removed
299+
269300
- N/A

0 commit comments

Comments
 (0)