11 Commits
Author SHA1 Message Date
Igor Sirotin fa25c4fc01 refactor: rename walletdatabase to walletdb and split it
Part of the Go project layout migration, item 4.

internal/db/walletdatabase -> internal/db/walletdb, and its one 45-line
file splits along the two jobs it was doing:

  open.go     DbInitializer, InitializeDB, OpenDB
  migrate.go  walletCustomSteps, doMigration, MigrateDB

scripts/migration_check.sh listed this migration directory as
"walletdatabase/migrations/sql" and appdatabase's as
"appdatabase/migrations/sql". Neither path has existed since those
packages moved under internal/db/, so the check has been silently
skipping both. Both are corrected here.

refs #7067
2026-08-21 16:46:09 +01:00
Igor Sirotin f9cc782a6f refactor: move services to pkg/services
Part of the Go project layout migration, item 31.

Pure move plus import-path rewrite across 687 files. No API or behaviour
change.

The services keep their grouping under pkg/services/<name> rather than
being promoted to pkg/<name>: 27 top-level directories in pkg/ would read
worse than what we have, and the grouping is what makes "an RPC service"
identifiable at a glance.

Paths that follow the move: the logosstorage test target and generate
step, the two wallet token-list tools, the migration-order check (and the
pre-rebase hook symlinked to it), and the storage env helper.

refs #7067
2026-08-21 10:11:05 +02:00
Igor Sirotin f3e4363808 refactor: move protocol to internal/protocol
Part of the Go project layout migration, item 27.

Pure move plus import-path rewrite across 502 files. No API or behaviour
change. `internal/` keeps the messaging application logic unimportable
from outside the module, which is what the issue asks for -- status-go is
consumed through the C-bindings in mobile/, not as a Go library.

Things that had to follow the move, beyond the Go imports:

- tools/generate-handlers/template.txt. messenger_handlers.go is
  generated, and the template hard-codes the imports it emits, so the
  generated file kept importing protocol/common and failed typecheck.
- .gitignore. The ignore rule for that generated file was pinned to the
  old path; without moving it, a 1486-line generated file starts being
  tracked.
- Makefile: the logosstorage and torrent test targets (both the archive
  packages and ./protocol itself), the archive README, migration-protocol.
- scripts/run_unit_tests.sh, which names the protocol package explicitly
  to shard its tests.
- scripts/cleanup_generated_files.sh and .golangci.yml.

scripts/migration_check.sh also needed a fix that is not specific to this
move: it validated every file the branch touched under a migration dir
against the timestamp naming rule, and a directory rename makes every
migration in it look newly added. It now excludes renames, so moving a
migration is not mistaken for adding one.

refs #7067
2026-08-21 10:11:05 +02:00
Siddarth Kumar 4541494b4c fix: make c-bindings reproducible between runs 2026-08-16 16:56:49 +05:30
Jonathan Rainville e2a4024ea0 chore(store): remove code related to msg send confirmation using stores
Part of https://github.com/status-im/status-app/issues/21598
2026-08-03 16:01:16 -04:00
Alex Jbanca 61ee3d3a7f feat: Add c bindings generator (#7319)
The generator output will consist in two cpp files based on `libstatus.h`. These cpp files will allow a c-based client-server implementation with an arbitrary protocol. The protocol needs to implement `statusgo_stub_callv(const char* method, const char** argv, size_t argc)` on client side. The service needs to call the auto generated `char* statusgo_service_dispatch(const char* method, const char** argv, size_t argc)`.

These bindings can be linked into two (client and server) libs, the server lib linking status-go.
2026-03-12 14:23:30 +02:00
Igor Sirotin 30935148c4 refactor: project layout (crypto, logutils, rpc, accounts-management) (#7226)
* refactor: internal/crypto

* refactor: internal/logutils

* chore: internal/rpc

* refactor: internal/accounts-management
2025-12-18 12:24:40 +00:00
Igor Sirotin 0fcf4ceb8e refactor: project layout (messaging) (#7224)
* refactor: pkg/messaging

* fix: address non-go changes
2025-12-17 19:40:40 +00:00
Igor Sirotin 782462f7c9 chore: project layout (tools, ipfs) (#7207)
* chore: internal/ipfs

* chore: tools/generate-db

* chore: tools/generate-handlers

* chore: tools/generate-cbindings

* fix: rebase issues
2025-12-16 12:54:23 +00:00
Igor Sirotin d770406ebf feat: tools/metrics (#7195) 2025-12-11 17:53:03 +00:00
osmaczko 0fc843266f feat: introduce opentelemetry tracing (#7172)
* feat: introduce opentelemetry tracing

* chore: return associated message hasheh from segmentation layer

Required to derive trace context when a message has been segmented.

* feat: add basic tracing
2025-12-08 20:31:32 +00:00