fablazing-cli 0.4.0__tar.gz → 0.4.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/CHANGELOG.md +8 -0
  2. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/PKG-INFO +8 -1
  3. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/README.md +7 -0
  4. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/pyproject.toml +1 -1
  5. fablazing_cli-0.4.1/src/fablazing_cli/__init__.py +1 -0
  6. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/matchup.py +2 -0
  7. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/reference.py +9 -4
  8. fablazing_cli-0.4.0/src/fablazing_cli/__init__.py +0 -1
  9. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/.gitignore +0 -0
  10. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/client.py +0 -0
  11. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/__init__.py +0 -0
  12. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/auth.py +0 -0
  13. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/card.py +0 -0
  14. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/hero.py +0 -0
  15. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/meta.py +0 -0
  16. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/packages.py +0 -0
  17. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/player.py +0 -0
  18. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/commands/tournaments.py +0 -0
  19. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/config.py +0 -0
  20. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/main.py +0 -0
  21. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/output.py +0 -0
  22. {fablazing_cli-0.4.0 → fablazing_cli-0.4.1}/src/fablazing_cli/resolve.py +0 -0
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.1
4
+
5
+ - `--sub-format` flag on matchup (repeatable) - the API capability was
6
+ documented but unreachable from the CLI
7
+ - Reference: honest per-command format coverage (meta and aggregate
8
+ commands don't cover gage; matchup and card commands do)
9
+ - README: troubleshooting note for interrupted pip upgrades
10
+
3
11
  ## 0.4.0
4
12
 
5
13
  - `fabz packages`: same-turn card pairs with lift, share, win rate and
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fablazing-cli
3
- Version: 0.4.0
3
+ Version: 0.4.1
4
4
  Summary: Fablazing analytics from your terminal - Flesh and Blood matchups, meta, cards, and tournaments.
5
5
  Project-URL: Homepage, https://fablazing.com
6
6
  Author: Fablazing
@@ -58,6 +58,13 @@ one. Copy count filters work on matchup includes:
58
58
  Tables on a terminal. JSON when piped or with `--json`, CSV with `--csv`.
59
59
  Exit codes: 0 ok, 1 api error, 2 usage error, 3 quota exceeded.
60
60
 
61
+ ## Troubleshooting
62
+
63
+ If an upgrade leaves `fabz` broken (interrupted pip uninstall can strand
64
+ an empty `fablazing_cli` directory and `~ablazing_cli` backup folders):
65
+
66
+ pip install --force-reinstall fablazing-cli
67
+
61
68
  ## Tab completion
62
69
 
63
70
  fablazing --install-completion
@@ -43,6 +43,13 @@ one. Copy count filters work on matchup includes:
43
43
  Tables on a terminal. JSON when piped or with `--json`, CSV with `--csv`.
44
44
  Exit codes: 0 ok, 1 api error, 2 usage error, 3 quota exceeded.
45
45
 
46
+ ## Troubleshooting
47
+
48
+ If an upgrade leaves `fabz` broken (interrupted pip uninstall can strand
49
+ an empty `fablazing_cli` directory and `~ablazing_cli` backup folders):
50
+
51
+ pip install --force-reinstall fablazing-cli
52
+
46
53
  ## Tab completion
47
54
 
48
55
  fablazing --install-completion
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "fablazing-cli"
7
- version = "0.4.0"
7
+ version = "0.4.1"
8
8
  description = "Fablazing analytics from your terminal - Flesh and Blood matchups, meta, cards, and tournaments."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -0,0 +1 @@
1
+ __version__ = "0.4.1"
@@ -11,6 +11,7 @@ def matchup(
11
11
  hero1: str = typer.Argument(..., help="Deck 1 hero (id or name)", autocompletion=resolve.complete_hero),
12
12
  hero2: str = typer.Argument(..., help="Deck 2 hero (id or name)", autocompletion=resolve.complete_hero),
13
13
  format_type: str = typer.Option("cc", "--format"),
14
+ sub_formats: List[int] = typer.Option([], "--sub-format", help="Restrict to sub-format ids (repeatable), e.g. --sub-format 0 --sub-format 1 for cc without Open"),
14
15
  days: int = typer.Option(30, "--days", min=1, max=365),
15
16
  start_date: str = typer.Option(None, "--start", help="YYYY-MM-DD (overrides --days)"),
16
17
  end_date: str = typer.Option(None, "--end", help="YYYY-MM-DD"),
@@ -31,6 +32,7 @@ def matchup(
31
32
  h2 = resolve.hero_id(hero2)
32
33
  params = {
33
34
  "format": format_type,
35
+ "sub_formats": sub_formats or None,
34
36
  "days": days,
35
37
  "start_date": start_date,
36
38
  "end_date": end_date,
@@ -23,7 +23,12 @@ analytics and paper tournament results for competitive Flesh and Blood.
23
23
  different cards and are counted separately everywhere.
24
24
  - Names are accepted anywhere an id is. Ambiguous names error out and
25
25
  list the matching ids (exit code 2).
26
- - Formats: `cc` (default), `blitz`, `ll`, `sage`, `gage`.
26
+ - Formats: `cc` (default), `blitz`, `ll`, `sage`, `gage` - but coverage
27
+ is per command. matchup, hero cards, card pov and card analytics
28
+ accept all five. meta snapshot/movers cover cc, blitz, ll, sage.
29
+ hero aggregate and meta matrix cover cc, blitz, ll only (their
30
+ pre-computed stores don't process the rest). gage is a tiny corpus
31
+ (a few hundred games total) - expect thin samples everywhere.
27
32
 
28
33
  ## Data notes
29
34
  - win_rate fields are fractions between 0 and 1.
@@ -79,9 +84,9 @@ analytics and paper tournament results for competitive Flesh and Blood.
79
84
  ## Sub-formats ("Open")
80
85
  Each format family maps to internal ids: cc = 0,1 plus Open 4; sage =
81
86
  14,15 plus Open 16; blitz = 2,3; ll = 8,11; gage = 18. All ids in a
82
- family are included by default. The API's matchup endpoint accepts
83
- `sub_formats` (repeatable int) to narrow, e.g. sub_formats=0&sub_formats=1
84
- for cc without Open.
87
+ family are included by default. Narrow with repeatable `--sub-format`
88
+ on matchup (e.g. `--sub-format 0 --sub-format 1` for cc without Open);
89
+ the API parameter is `sub_formats`.
85
90
 
86
91
  ## Output
87
92
  - Tables on a terminal, JSON when piped or with --json (the JSON is the
@@ -1 +0,0 @@
1
- __version__ = "0.4.0"
File without changes