Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optimize script #6

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open

Optimize script #6

wants to merge 6 commits into from

Conversation

YuviGold
Copy link

@YuviGold YuviGold commented Aug 3, 2023

Hey @teymour 👋
Great repo you have here, I searched for quite some time for a good solution for import & export of Metabase dashboards and encountered this repository which had the best results I could work with!

It's working really well, I made some adjustments during my usage :)

  • Running loops in multithreaded, when having lots of fields (I had >10K) it's mandatory.
  • Adding some known libraries for UX:
    • typer for CLI and argument parsing including env vars
    • rich for progress bar
  • Adding some parsing tests for parsing conversions, that required some fixes:
    • Support targetId key
    • Fix id key that has a JSON value
    • Fix dashboard to dashboard links
  • Improving usability
    • --verbose flag to increase output verbosity of each command
    • --dry-run flag run the script without making POST/PUT requests
    • --raw flag that stores the raw JSON without parsing it
  • Improving repository maintenance
    • Adding pyproject.toml with poetry for dependency management
    • Adding linter and Makefile for known operations
    • Adding GHA that runs make lint and make test

I know these are lots of changes, but they really helped me using this repository. I hope you'll find them useful as well :)

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