Skip to content

Migration to Hivetx#3165

Merged
feruzm merged 4 commits intodevelopmentfrom
hivetx
Apr 10, 2026
Merged

Migration to Hivetx#3165
feruzm merged 4 commits intodevelopmentfrom
hivetx

Conversation

@feruzm
Copy link
Copy Markdown
Member

@feruzm feruzm commented Apr 9, 2026

Summary by CodeRabbit

  • New Features

    • Added a "Docs" entry in the side menu linking to onboarding documentation.
    • Improved image upload modal with more consistent open/close behavior.
  • Chores

    • Bumped app version to 3.5.4 on all platforms.
    • Removed SERVER_LIST_API from example and CI environment generation.
    • Updated package dependencies and replaced legacy signing packages.
  • Refactor

    • Migrated internal Hive integrations to the new SDK for improved reliability.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 9, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 7b88240c-faab-40f5-b29d-687228071a41

📥 Commits

Reviewing files that changed from the base of the PR and between 89469a0 and 0e9e4c6.

📒 Files selected for processing (3)
  • src/components/sideMenu/view/sideMenuView.tsx
  • src/config/locales/en-US.json
  • src/constants/sideMenuItems.ts
✅ Files skipped from review due to trivial changes (2)
  • src/constants/sideMenuItems.ts
  • src/config/locales/en-US.json

📝 Walkthrough

Walkthrough

Migrates hive/dhive/dsteem usage to @ecency/sdk and @ecency/hive-tx across the codebase, updates imports and signing/broadcast flows, bumps app/package versions (3.5.3 → 3.5.4, build 28 → 29), removes SERVER_LIST_API from CI/.env generation, and replaces an actions-sheet uploader with a React Native Modal.

Changes

Cohort / File(s) Summary
Version & CI
\.env.example, .github/workflows/build-android.yml, .github/workflows/build-ios.yml, .github/workflows/e2e-android.yml, android/app/build.gradle, ios/Ecency.xcodeproj/project.pbxproj, ios/Ecency/Info.plist, ios/EcencyTests/Info.plist, ios/eshare/Info.plist, package.json
Bumped app/package versions (3.5.3 → 3.5.4, build 28 → 29), removed SERVER_LIST_API from .env generation in CI workflows, and updated package deps (added @ecency/hive-tx, upgraded @ecency/sdk, removed dhive/dsteem related packages).
Core Hive Provider
src/providers/hive/hive.ts, src/providers/hive/auth.ts
Replaced dhive/dsteem clients with Ecency SDK helpers: RPC/tx functions (callRPC, callRPCBroadcast, broadcastOperations, setHiveTxNodes), transaction construction/signing changes, RC/VPMana calculators, and hashing/signing updates via @ecency/sdk/@ecency/hive-tx.
Config & API
src/config/api.ts, src/config/ecencyApi.ts, src/providers/queries/sdk-config.ts
Removed default Axios api and cancelToken export; updated ecency API imports and configured SDK hive-tx nodes via setHiveTxNodes(nodes, 4000); adjusted getDigitPinCode import usage.
Widespread import updates
src/** (multiple files) e.g., src/components/*, src/hooks/*, src/providers/*, src/screens/*, src/containers/*, src/utils/*, src/providers/sdk/*, src/providers/hive-trade/*, src/providers/hive-engine/*
Systematic import path changes: many files now import helpers/types from src/providers/hive/hive, @ecency/sdk, or @ecency/hive-tx (e.g., getDigitPinCode, signImage, getAccount, Operation type, PrivateKey, voting/mana calculators). Mostly import-only updates; select files include minor call-site adaptations.
Uploads Gallery / UI
src/components/uploadsGalleryModal/children/speakUploaderModal.tsx, src/components/uploadsGalleryModal/styles/speakUploaderModal.styles.ts
Replaced react-native-actions-sheet with RN Modal controlled via visible state; removed imperative sheet API usage and updated styles; switched signImage import to new provider.
Settings server check
src/screens/settings/container/settingsContainer.tsx
Replaced dhive Client dynamic global properties call with a raw JSON-RPC fetch POST to selected server (with AbortController timeout and JSON-RPC error/result validation), then proceeds to update nodes and call checkClient().
Side menu / i18n
src/components/sideMenu/view/sideMenuView.tsx, src/config/locales/en-US.json, src/constants/sideMenuItems.ts
Added Docs menu item and translation key; new handler navigates to a docs URL.
Tests
src/utils/migrationHelpers.test.ts, src/utils/transactionOpsBuilder.test.ts, src/utils/vote.test.ts
Updated Jest mocks to point from ../providers/hive/dhive../providers/hive/hive.

Sequence Diagram(s)

sequenceDiagram
  participant App
  participant Provider as Hive Provider (src/providers/hive/hive)
  participant SDK as `@ecency/sdk` / `@ecency/hive-tx`
  participant RPC as Hive RPC Node

  App->>Provider: request send operations / sign image / get account
  Provider->>SDK: setHiveTxNodes(nodes) / build Transaction / calculateVPMana
  Provider->>SDK: sign tx or image (PrivateKey.from / tx.sign)
  Provider->>RPC: callRPCBroadcast or callRPC(condenser_api.*) (broadcast or fetch)
  RPC-->>Provider: return rpc result (id / data)
  Provider-->>App: return result (id / response)
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~75 minutes

Possibly related PRs

Suggested labels

deploy-pr-build

Poem

🐰 I hopped through imports, one small swap,
Dhive to Ecency — a nimble lap.
Versions bumped and nodes set true,
Signed the bytes with something new.
A carrot cheer for the CI clap! 🥕

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title 'Migration to Hivetx' accurately describes the primary objective of the changeset, which involves a comprehensive migration from dhive and related packages to @ecency/hive-tx and @ecency/sdk packages across the entire codebase.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch hivetx

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

coderabbitai[bot]

This comment was marked as resolved.

@feruzm feruzm merged commit 232993a into development Apr 10, 2026
8 checks passed
@feruzm feruzm deleted the hivetx branch April 10, 2026 05:03
@coderabbitai coderabbitai Bot mentioned this pull request Apr 19, 2026
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.

1 participant