bigeye-cli 0.8.1__tar.gz → 0.8.2__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 (36) hide show
  1. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/PKG-INFO +5 -3
  2. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/CLI_DOCS.md +3 -1
  3. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/lineage/lineage_commands.py +31 -2
  4. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/pyproject.toml +2 -2
  5. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/LICENSE +0 -0
  6. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/__init__.py +0 -0
  7. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/__main__.py +0 -0
  8. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/__version__.py +0 -0
  9. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/bigconfig/__init__.py +0 -0
  10. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/bigconfig/bigconfig_commands.py +0 -0
  11. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/bigconfig/bigconfig_options.py +0 -0
  12. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/catalog/__init__.py +0 -0
  13. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/catalog/catalog_commands.py +0 -0
  14. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/catalog/custom_repo_commands.py +0 -0
  15. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/collections/__init__.py +0 -0
  16. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/collections/collection_commands.py +0 -0
  17. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/configure/__init__.py +0 -0
  18. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/configure/configure_commands.py +0 -0
  19. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/deltas/__init__.py +0 -0
  20. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/deltas/deltas_commands.py +0 -0
  21. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/enums.py +0 -0
  22. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/exceptions/__init__.py +0 -0
  23. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/exceptions/exceptions.py +0 -0
  24. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/functions.py +0 -0
  25. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/global_options.py +0 -0
  26. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/issues/__init__.py +0 -0
  27. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/issues/issue_commands.py +0 -0
  28. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/lineage/__init__.py +0 -0
  29. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/metric/__init__.py +0 -0
  30. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/metric/metric_commands.py +0 -0
  31. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/model/__init__.py +0 -0
  32. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/model/cicd_conf.py +0 -0
  33. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/model/github_report.py +0 -0
  34. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/model/vendor_report.py +0 -0
  35. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/workspace/__init__.py +0 -0
  36. {bigeye_cli-0.8.1 → bigeye_cli-0.8.2}/bigeye_cli/workspace/workspace_commands.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bigeye-cli
3
- Version: 0.8.1
3
+ Version: 0.8.2
4
4
  Summary: Bigeye CLI offers developer tools for maintaining your developer workspace.
5
5
  Home-page: https://docs.bigeye.com/docs
6
6
  License: Proprietary
@@ -12,13 +12,13 @@ Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Programming Language :: Python :: 3.11
13
13
  Classifier: Programming Language :: Python :: 3.12
14
14
  Requires-Dist: PyGithub (>=1.59.1,<2.0.0)
15
- Requires-Dist: bigeye-sdk (>=0.11.0,<0.12.0)
15
+ Requires-Dist: bigeye-sdk (>=0.11.1,<0.12.0)
16
16
  Requires-Dist: click (>=8.1.8,<9.0.0)
17
17
  Requires-Dist: rich (>=14.1.0,<15.0.0)
18
18
  Description-Content-Type: text/markdown
19
19
 
20
20
  # **Bigeye CLI**
21
- Version: 0.8.1
21
+ Version: 0.8.2
22
22
  ## Installation
23
23
 
24
24
  **Setting up your local/build environment**
@@ -2015,6 +2015,8 @@ $ bigeye lineage export-graphs [OPTIONS]
2015
2015
  * `--direction [upstream|downstream|both]`: Direction to traverse: upstream, downstream, or both. [default: both]
2016
2016
  * `--content [all|nodes|edges|attributes]`: What each per-graph report contains: all, nodes, edges, or attributes. [default: all]
2017
2017
  * `--include-etl / --no-include-etl`: Include or exclude ETL operator nodes. Defaults to including them. [default: include-etl]
2018
+ * `--depth INTEGER`: Per-window traversal depth. When set, the graph is built in bounded depth-hop windows (re-rooting at the lineage frontier) up to the workspace&#x27;s lineage.max_depth, avoiding the oversized single response that fails on very large graphs. Applies to every FQN; a per-row &#x27;depth&#x27; column in the FQNs file overrides it for that row. Omit to request the full graph in one call (the previous behavior).
2019
+ * `--concurrency INTEGER`: Max concurrent window requests when --depth is used. Lower it to reduce client memory and server load on wide graphs. [default: 8]
2018
2020
  * `-o, --output TEXT`: Output .zip path. Defaults to lineage_graphs.zip in the current directory.
2019
2021
  * `--help`: Show this message and exit.
2020
2022
 
@@ -1,5 +1,5 @@
1
1
  # **Bigeye CLI**
2
- Version: 0.8.1
2
+ Version: 0.8.2
3
3
  ## Installation
4
4
 
5
5
  **Setting up your local/build environment**
@@ -1996,6 +1996,8 @@ $ bigeye lineage export-graphs [OPTIONS]
1996
1996
  * `--direction [upstream|downstream|both]`: Direction to traverse: upstream, downstream, or both. [default: both]
1997
1997
  * `--content [all|nodes|edges|attributes]`: What each per-graph report contains: all, nodes, edges, or attributes. [default: all]
1998
1998
  * `--include-etl / --no-include-etl`: Include or exclude ETL operator nodes. Defaults to including them. [default: include-etl]
1999
+ * `--depth INTEGER`: Per-window traversal depth. When set, the graph is built in bounded depth-hop windows (re-rooting at the lineage frontier) up to the workspace&#x27;s lineage.max_depth, avoiding the oversized single response that fails on very large graphs. Applies to every FQN; a per-row &#x27;depth&#x27; column in the FQNs file overrides it for that row. Omit to request the full graph in one call (the previous behavior).
2000
+ * `--concurrency INTEGER`: Max concurrent window requests when --depth is used. Lower it to reduce client memory and server load on wide graphs. [default: 8]
1999
2001
  * `-o, --output TEXT`: Output .zip path. Defaults to lineage_graphs.zip in the current directory.
2000
2002
  * `--help`: Show this message and exit.
2001
2003
 
@@ -266,6 +266,21 @@ def export_graphs(
266
266
  "--include-etl/--no-include-etl",
267
267
  help="Include or exclude ETL operator nodes. Defaults to including them.",
268
268
  ),
269
+ depth: Optional[int] = typer.Option(
270
+ None,
271
+ "--depth",
272
+ help="Per-window traversal depth. When set, the graph is built in bounded depth-hop "
273
+ "windows (re-rooting at the lineage frontier) up to the workspace's lineage.max_depth, "
274
+ "avoiding the oversized single response that fails on very large graphs. Applies to "
275
+ "every FQN; a per-row 'depth' column in the FQNs file overrides it for that row. "
276
+ "Omit to request the full graph in one call (the previous behavior).",
277
+ ),
278
+ concurrency: int = typer.Option(
279
+ 8,
280
+ "--concurrency",
281
+ help="Max concurrent window requests when --depth is used. Lower it to reduce client "
282
+ "memory and server load on wide graphs.",
283
+ ),
269
284
  output: Optional[str] = typer.Option(
270
285
  None,
271
286
  "--output",
@@ -279,19 +294,31 @@ def export_graphs(
279
294
  and writes one folder per FQN (nodes/edges/attributes) plus a top-level manifest of
280
295
  successes and failures.
281
296
  """
297
+ if depth is not None and depth < 1:
298
+ typer.echo("--depth must be a positive integer (1 or greater).", err=True)
299
+ raise typer.Exit(code=1)
300
+
282
301
  client = cli_client_factory(bigeye_conf, config_file, workspace)
283
302
  controller = LineageCustomReporting(client)
284
303
 
285
304
  try:
286
- fqns = read_fqns_file(fqns_file)
305
+ specs = read_fqns_file(fqns_file)
287
306
  except OSError as e:
288
307
  typer.echo(f"Could not read FQNs file '{fqns_file}': {e}", err=True)
289
308
  raise typer.Exit(code=1)
290
309
 
291
- if not fqns:
310
+ if not specs:
292
311
  typer.echo(f"No FQNs found in '{fqns_file}'.", err=True)
293
312
  raise typer.Exit(code=1)
294
313
 
314
+ fqns = [spec.fqn for spec in specs]
315
+ # Per-row depth wins; --depth is the default for rows without one. No depth anywhere -> full graph.
316
+ depth_by_fqn = {
317
+ spec.fqn: (spec.depth if spec.depth is not None else depth)
318
+ for spec in specs
319
+ if (spec.depth if spec.depth is not None else depth) is not None
320
+ }
321
+
295
322
  output_path = output or "lineage_graphs.zip"
296
323
  summary = controller.export_graphs(
297
324
  fqns=fqns,
@@ -299,6 +326,8 @@ def export_graphs(
299
326
  content=content,
300
327
  include_etl=include_etl,
301
328
  output_path=output_path,
329
+ depth_by_fqn=depth_by_fqn or None,
330
+ concurrency=concurrency,
302
331
  )
303
332
 
304
333
  log.info(
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "bigeye-cli"
3
- version = "0.8.1"
3
+ version = "0.8.2"
4
4
  description = "Bigeye CLI offers developer tools for maintaining your developer workspace."
5
5
  license = "Proprietary"
6
6
  authors = ["Bigeye <support@bigeye.com>"]
@@ -19,7 +19,7 @@ bigeye = "bigeye_cli.__main__:app"
19
19
  [tool.poetry.dependencies]
20
20
  python = "^3.11.0"
21
21
  click = "^8.1.8"
22
- bigeye-sdk = "^0.11.0"
22
+ bigeye-sdk = "^0.11.1"
23
23
  rich = "^14.1.0"
24
24
  PyGithub = '^1.59.1'
25
25
 
File without changes