bigeye-cli 0.8.3__tar.gz → 0.8.4__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.3 → bigeye_cli-0.8.4}/PKG-INFO +3 -3
  2. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/CLI_DOCS.md +1 -1
  3. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/bigconfig/bigconfig_commands.py +19 -8
  4. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/metric/metric_commands.py +2 -1
  5. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/pyproject.toml +2 -2
  6. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/LICENSE +0 -0
  7. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/__init__.py +0 -0
  8. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/__main__.py +0 -0
  9. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/__version__.py +0 -0
  10. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/bigconfig/__init__.py +0 -0
  11. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/bigconfig/bigconfig_options.py +0 -0
  12. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/catalog/__init__.py +0 -0
  13. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/catalog/catalog_commands.py +0 -0
  14. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/catalog/custom_repo_commands.py +0 -0
  15. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/collections/__init__.py +0 -0
  16. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/collections/collection_commands.py +0 -0
  17. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/configure/__init__.py +0 -0
  18. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/configure/configure_commands.py +0 -0
  19. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/deltas/__init__.py +0 -0
  20. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/deltas/deltas_commands.py +0 -0
  21. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/enums.py +0 -0
  22. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/exceptions/__init__.py +0 -0
  23. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/exceptions/exceptions.py +0 -0
  24. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/functions.py +0 -0
  25. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/global_options.py +0 -0
  26. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/issues/__init__.py +0 -0
  27. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/issues/issue_commands.py +0 -0
  28. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/lineage/__init__.py +0 -0
  29. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/lineage/lineage_commands.py +0 -0
  30. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/metric/__init__.py +0 -0
  31. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/model/__init__.py +0 -0
  32. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/model/cicd_conf.py +0 -0
  33. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/model/github_report.py +0 -0
  34. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/model/vendor_report.py +0 -0
  35. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/bigeye_cli/workspace/__init__.py +0 -0
  36. {bigeye_cli-0.8.3 → bigeye_cli-0.8.4}/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.3
3
+ Version: 0.8.4
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.2,<0.12.0)
15
+ Requires-Dist: bigeye-sdk (>=0.11.3,<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.3
21
+ Version: 0.8.4
22
22
  ## Installation
23
23
 
24
24
  **Setting up your local/build environment**
@@ -1,5 +1,5 @@
1
1
  # **Bigeye CLI**
2
- Version: 0.8.3
2
+ Version: 0.8.4
3
3
  ## Installation
4
4
 
5
5
  **Setting up your local/build environment**
@@ -11,7 +11,8 @@ from bigeye_cli import global_options
11
11
  from bigeye_cli.bigconfig import bigconfig_options
12
12
  from bigeye_cli.model.github_report import GitHubReport
13
13
  from bigeye_sdk.bigconfig_validation.big_config_reports import all_reports
14
- from bigeye_sdk.controller.metric_controller import MetricController
14
+ from bigeye_sdk.controller.metric_controller import MetricController, filter_metrics_by_namespace
15
+ from bigeye_sdk.functions.file_functs import sanitize_filename
15
16
  from bigeye_sdk.controller.metric_suite_controller import MetricSuiteController
16
17
  from bigeye_sdk.generated.com.bigeye.models.generated import MetricInfoList, MetricInfo
17
18
  from bigeye_sdk.model.big_config import BigConfig
@@ -219,14 +220,15 @@ def export(
219
220
  raw_metrics: List[dict] = client.get_metric_info_batch_post(metric_ids=final_metric_ids,
220
221
  return_raw_response=True)
221
222
 
223
+ # `namespace` is used ONLY to filter which metrics get exported. It is
224
+ # intentionally NOT written into the generated bigconfig file (nor the shared
225
+ # SMD library): the SMD library is reused across every namespace and must stay
226
+ # namespace-agnostic, and combine_bigconfigs() fails an apply where one file
227
+ # carries a namespace and another does not. Users re-scope on apply by passing
228
+ # `--namespace` (see the reminder printed after export).
222
229
  if namespace:
223
230
  log.info(f"Filtering metrics that only reside in the namespace: {namespace}")
224
- raw_metrics = []
225
- # 2025-09-26: Some metric configs don't have the key 'bigconfigNamespace' in them
226
- for m in raw_metrics:
227
- cfg = m.get("metricConfiguration")
228
- if "bigconfigNamespace" in cfg and cfg.get("bigconfigNamespace") == namespace:
229
- raw_metrics.append(m)
231
+ raw_metrics = filter_metrics_by_namespace(raw_metrics, namespace)
230
232
  log.info(f"{len(raw_metrics)} metrics found in namespace: {namespace}")
231
233
 
232
234
  if not output_path:
@@ -267,7 +269,7 @@ def export(
267
269
  metric_info=MetricInfoList(metrics=[MetricInfo().from_dict(m) for m in raw_metrics]), collection=collection
268
270
  )
269
271
 
270
- file_name = collection.name.lower().replace(" ", "_")
272
+ file_name = sanitize_filename(collection.name)
271
273
  output = bigconfig.save(
272
274
  output_path=output_path,
273
275
  default_file_name=f"{file_name}.bigconfig",
@@ -276,3 +278,12 @@ def export(
276
278
  typer.secho(
277
279
  f"\nBigconfig file generated at: {output}\n", fg="green", bold=True
278
280
  )
281
+
282
+ if namespace:
283
+ typer.secho(
284
+ f"These metrics were exported from the '{namespace}' namespace. The namespace is "
285
+ f"intentionally omitted from the generated file(s) so the shared SMD library stays "
286
+ f"namespace-agnostic. To preserve it on apply, pass the namespace explicitly, e.g.:\n"
287
+ f" bigeye bigconfig apply -n {namespace} ...\n",
288
+ fg="yellow",
289
+ )
@@ -17,6 +17,7 @@ from bigeye_cli.enums import MetricFileType
17
17
  from bigeye_sdk.controller.metric_controller import MetricController
18
18
  from bigeye_sdk.functions.metric_functions import get_file_name_for_metric
19
19
  from bigeye_sdk.functions.bigconfig_functions import build_fq_name
20
+ from bigeye_sdk.functions.file_functs import sanitize_filename
20
21
  from bigeye_sdk.model.dbt_schema import (
21
22
  SimpleDbtSchema,
22
23
  relationships_test_names,
@@ -458,7 +459,7 @@ def dbt_tests_to_metrics(
458
459
  bigconfig = BigConfig.tag_deployments_to_bigconfig(
459
460
  tag_deployments=tag_deployments, collection=collection
460
461
  )
461
- file_name = collection.name.lower().replace(" ", "_")
462
+ file_name = sanitize_filename(collection.name)
462
463
  if not output_path:
463
464
  output_path = Path.cwd()
464
465
  output = bigconfig.save(
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "bigeye-cli"
3
- version = "0.8.3"
3
+ version = "0.8.4"
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.2"
22
+ bigeye-sdk = "^0.11.3"
23
23
  rich = "^14.1.0"
24
24
  PyGithub = '^1.59.1'
25
25
 
File without changes