Skip to content

feat: add local-db manifest URL command#2553

Open
findolor wants to merge 1 commit intorename-orderbook-to-raindexfrom
local-db-manifest-urls
Open

feat: add local-db manifest URL command#2553
findolor wants to merge 1 commit intorename-orderbook-to-raindexfrom
local-db-manifest-urls

Conversation

@findolor
Copy link
Copy Markdown
Collaborator

Chained PRs

Motivation

rain.local-db.remote currently fetches a settings YAML file and parses local-db-remotes in shell to discover manifest URLs. That duplicates settings parsing logic outside Rust and can drift from the CLI/parser behavior.

Solution

Add a local-db manifest-urls CLI command that prints local DB remote manifest URLs from settings YAML:

raindex_cli local-db manifest-urls --settings-yaml "$settings_yaml"
  • Parse settings through RaindexYaml, so normal settings requirements such as version and local-db-remotes validation apply.
  • Print only manifest URLs to stdout, one URL per line, sorted by remote key for deterministic script output.
  • Keep diagnostics/errors on stderr through the existing CLI error path.
  • Reject duplicate local-db-remotes URL values in the core settings parser, so all settings consumers share the same uniqueness rule.
  • Add focused parser and CLI tests for single URL output, duplicate URL rejection, no-remotes output, missing version failure, and exact stdout formatting.

Checks

By submitting this for review, I'm confirming I've done the following:

  • made this PR as small as possible
  • unit-tested any new functionality
  • linked any relevant issues or PRs
  • included screenshots (if this involves a front-end change)

Verified locally:

  • nix develop -c cargo fmt --all
  • nix develop -c cargo test -p raindex_app_settings local_db_remotes
  • nix develop -c cargo test -p raindex_cli manifest_urls
  • nix develop -c cargo test -p raindex_cli verify_cli
  • nix develop -c rainix-rs-static

@findolor findolor self-assigned this Apr 20, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 20, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 521b9a0d-f777-4464-a58d-5bf2886e942b

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch local-db-manifest-urls

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.

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