Skip to content

Conversation

@aorumbayev
Copy link
Contributor

@aorumbayev aorumbayev commented Oct 29, 2025

Proposed Changes

  • Setting up decoupling branch as a main branch for the duration of delivery of algosdk decoupling
  • Initial migration to uv from poetry
  • Skeleton packages for transact common abi and clients
  • Updating ci cd workflows to depend on uv over poetry
  • Updating poe tasks to have aggregate tasks to simplify cross package invocation of ruff/mypy/pytest

@@ -0,0 +1,39 @@
root = true
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is primarily to prevent from auto formatting of yaml files in github workflows on vscode

@aorumbayev aorumbayev force-pushed the decoupling-uv branch 5 times, most recently from 416da9f to a0c330e Compare October 29, 2025 23:48
@github-actions
Copy link

github-actions bot commented Oct 29, 2025

Coverage

Coverage Report
FileStmtsMissCoverMissing
src/algokit_utils
   _debugging.py1391788%40–42, 45, 54, 62, 81, 87, 96, 110–114, 133, 141–143
   account.py330%1–12
   algorand.py1051487%66–67, 81–82, 112–113, 140–141, 176–177, 321, 344, 360, 379
   application_client.py330%1–11
   application_specification.py770%1–39
   asset.py330%1–32
   config.py782963%23, 30–34, 73–74, 90, 95, 100, 111–116, 140–156
   deploy.py330%1–10
   dispenser_api.py330%1–10
   logic_error.py330%1–10
   network_clients.py330%1–9
src/algokit_utils/_legacy_v2
   _ensure_funded.py722960%62–65, 69–71, 77–81, 87–89, 95–112, 135–148
   _transfer.py701579%71–78, 109–127, 136, 154–155
   account.py891188%71–75, 109, 126, 156, 159, 196, 203
   application_client.py49439320%81, 162–202, 206, 210, 214, 218, 222–226, 230, 234, 245–247, 258–262, 319–376, 387–394, 440–450, 461–463, 504–511, 523, 562–569, 580–581, 619–643, 654, 692–699, 710, 748–755, 765, 778–784, 788–790, 798–803, 811–835, 840–863, 866–888, 893–907, 910–911, 914–925, 928–929, 943–969, 974–981, 985–994, 998–999, 1019–1064, 1087–1114, 1123–1130, 1135, 1142–1151, 1154–1157, 1160–1161, 1164, 1178–1180, 1192–1197, 1209–1217, 1236–1246, 1257–1269, 1291–1319, 1323–1339, 1345–1346, 1352–1362, 1371–1428, 1432–1434, 1439–1444, 1448–1470
   asset.py806124%22–27, 33–65, 84–115, 136–168
   deploy.py40322444%120–123, 127, 131–133, 136–137, 163–165, 169–175, 183–238, 242, 246–249, 269–284, 292, 298–301, 317, 320, 324, 327, 331, 339–340, 348–362, 369, 377–381, 385, 389–414, 425, 429, 435–437, 443–458, 562–594, 597–621, 624–662, 665–682, 685–733, 741–764, 774, 794–812, 817–821
   models.py106694%62–76
   network_clients.py732467%47–48, 55–56, 69–71, 79–80, 90–92, 105–106, 112–113, 137–144
src/algokit_utils/accounts
   account_manager.py2553985%167, 183–184, 211–216, 295–305, 339–344, 391–393, 422, 461, 481–485, 498, 557, 578, 735, 841, 920, 925, 940–941, 964
   kmd_account_manager.py731086%47–53, 94, 150, 157
src/algokit_utils/applications
   abi.py1376850%75, 111, 117, 119, 121, 141–160, 176, 179–185, 201–214, 227–239, 254–265
   app_client.py76522670%136, 144, 331–334, 337, 340, 343, 346, 358–361, 364, 367, 370, 373, 385, 394, 403, 406–468, 481–539, 563–565, 582–585, 593–596, 604–607, 615–618, 626–629, 640–643, 656, 752–755, 789, 801, 813, 825, 837, 852, 867, 877, 887, 897, 907, 917, 954–967, 983, 1000, 1017, 1034, 1055, 1076, 1166, 1222, 1363, 1427–1428, 1477, 1479, 1485, 1538–1546, 1579–1582, 1585–1588, 1609, 1657, 1687–1688, 1720–1722, 1735–1746, 1791, 1808, 1810, 1813, 1817, 1964–1983, 2013, 2026–2028, 2032, 2043–2044, 2072, 2082–2084, 2087–2109, 2119, 2128–2143, 2148–2153
   app_deployer.py2373784%96, 270, 277, 287–292, 295–299, 375–376, 591, 603–617, 629, 634–637, 646, 660, 667, 674, 703, 714–755
   app_factory.py2712790%430, 451, 460, 652, 662, 712, 944, 958–963, 974–975, 1008, 1046, 1064–1065, 1108, 1116–1129
   app_manager.py2231892%258, 279–280, 350–351, 396–401, 433, 457–458, 488, 516–519, 551, 560
src/algokit_utils/applications/app_spec
   arc32.py95892%198–207
   arc56.py5741997%171, 292, 308–309, 379, 399–401, 453, 462, 464, 736, 750, 909, 911, 968, 970–971, 987
src/algokit_utils/assets
   asset_manager.py1281291%282–283, 292, 298–322, 332
src/algokit_utils/clients
   client_manager.py1745171%79–86, 111, 143–145, 205, 216–219, 244, 283, 318–323, 358–360, 393, 410, 432, 477–480, 520–523, 564–567, 604–607, 629–654, 692, 705, 717
   dispenser_api_client.py912078%89, 93, 134–135, 139–142, 190–200, 210–221
src/algokit_utils/errors
   logic_error.py541081%105–121
src/algokit_utils/models
   account.py921584%32, 34, 80–81, 128, 136, 144, 168–175, 188, 196, 209, 217
   amount.py1021783%35, 42, 88, 98, 104, 112, 117–119, 126, 131–133, 140, 147, 160, 166
   state.py41588%61, 65–68
   transaction.py51394%66, 86, 91
src/algokit_utils/transactions
   transaction_composer.py112610691%91, 101–105, 599, 644, 647, 652, 656–667, 699, 736, 816, 823, 845, 884, 981–1010, 1039, 1067–1082, 1087, 1095, 1097, 1099, 1115, 1121, 1159, 1167, 1276, 1326, 1410, 1412–1413, 1806–1807, 1846–1847, 1888, 2101, 2104, 2123, 2128, 2156–2158, 2199–2235, 2242–2249, 2391, 2395, 2528, 2530–2531, 2581–2582
   transaction_creator.py75791%394, 427, 482, 520, 557, 590, 688
   transaction_sender.py1611094%101, 270, 313–314, 712–717, 722–723, 888
TOTAL6670155977% 

Tests Skipped Failures Errors Time
227 0 💤 0 ❌ 0 🔥 1m 30s ⏱️

@aorumbayev aorumbayev marked this pull request as ready for review October 30, 2025 00:05
module = ["msgpack", "msgpack.*"]
ignore_missing_imports = true

[[tool.mypy.overrides]]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these excluded because they are autogenerated? Ideally they would still type check properly, perhaps we can just ignore a smaller subset of errors if there are certain tricky ones?

@aorumbayev aorumbayev merged commit 83a1864 into decoupling Oct 30, 2025
5 checks passed
@aorumbayev aorumbayev deleted the decoupling-uv branch October 30, 2025 12:57
Copy link
Contributor

@lempira lempira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just left a question

Comment on lines +21 to +23
cicd = [
"algokit>=2.9.1",
]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is this dependency? Why is it needed for CICD?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Its the algokit cli package, by including it as part of the dependency group it can be included in the uv cache for this action. See this commit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants