recce-cloud 1.34.1__py3-none-any.whl → 1.35.0__py3-none-any.whl

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.
recce_cloud/VERSION CHANGED
@@ -1 +1 @@
1
- 1.34.1
1
+ 1.35.0
recce_cloud/cli.py CHANGED
@@ -43,6 +43,7 @@ logging.getLogger("recce_cloud.ci_providers.detector").setLevel(logging.WARNING)
43
43
 
44
44
 
45
45
  @click.group()
46
+ @click.version_option(version=__version__, prog_name="recce-cloud")
46
47
  def cloud_cli():
47
48
  """
48
49
  Recce Cloud CLI - Manage Recce Cloud sessions and state files.
@@ -158,11 +159,11 @@ def logout():
158
159
  @cloud_cli.command()
159
160
  @click.option(
160
161
  "--org",
161
- help="Organization name or slug to bind to",
162
+ help="Organization ID, name, or slug to bind to",
162
163
  )
163
164
  @click.option(
164
165
  "--project",
165
- help="Project name or slug to bind to",
166
+ help="Project ID, name, or slug to bind to",
166
167
  )
167
168
  @click.option(
168
169
  "--status",
@@ -257,13 +258,15 @@ def init(org, project, status, clear):
257
258
  api = RecceCloudClient(token)
258
259
  org_obj = api.get_organization(org)
259
260
  if not org_obj:
260
- console.print(f"[red]Error:[/red] Organization '{org}' not found")
261
+ console.print(f"[red]Error:[/red] Organization '{org}' not found or you don't have access")
261
262
  sys.exit(1)
262
263
 
263
264
  # Use org ID for project lookup (API requires ID)
264
265
  project_obj = api.get_project(org_obj.get("id"), project)
265
266
  if not project_obj:
266
- console.print(f"[red]Error:[/red] Project '{project}' not found in organization '{org}'")
267
+ console.print(
268
+ f"[red]Error:[/red] Project '{project}' not found in organization '{org}' or you don't have access"
269
+ )
267
270
  sys.exit(1)
268
271
 
269
272
  # Store IDs (immutable) instead of slugs (can be renamed)
@@ -276,13 +279,7 @@ def init(org, project, status, clear):
276
279
  )
277
280
  console.print(f" Config saved to {get_config_path()}")
278
281
 
279
- # Offer to add to .gitignore
280
- if click.confirm("Add .recce/ to .gitignore?", default=True):
281
- if add_to_gitignore():
282
- console.print("[green]✓[/green] Added .recce/ to .gitignore")
283
- else:
284
- console.print(" .recce/ already in .gitignore")
285
-
282
+ # Skip gitignore prompt in explicit mode (scripted/CI usage)
286
283
  sys.exit(0)
287
284
 
288
285
  except RecceCloudException as e:
@@ -363,8 +360,8 @@ def init(org, project, status, clear):
363
360
  )
364
361
  console.print(f" Config saved to {get_config_path()}")
365
362
 
366
- # Offer to add to .gitignore
367
- if click.confirm("Add .recce/ to .gitignore?", default=True):
363
+ # Offer to add to .gitignore (default: No, since .recce/config should typically be committed)
364
+ if click.confirm("Add .recce/ to .gitignore?", default=False):
368
365
  if add_to_gitignore():
369
366
  console.print("[green]✓[/green] Added .recce/ to .gitignore")
370
367
  else:
@@ -1,8 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: recce-cloud
3
- Version: 1.34.1
3
+ Version: 1.35.0
4
4
  Summary: Lightweight CLI for Recce Cloud operations
5
- Project-URL: Bug Tracker, https://github.com/InfuseAI/recce/issues
5
+ Project-URL: Homepage, https://cloud.reccehq.com
6
+ Project-URL: Documentation, https://docs.reccehq.com
7
+ Project-URL: Repository, https://github.com/DataRecce/recce
8
+ Project-URL: Bug Tracker, https://github.com/DataRecce/recce/issues
9
+ Project-URL: Changelog, https://github.com/DataRecce/recce/releases
6
10
  Author-email: InfuseAI Dev Team <dev@infuseai.io>
7
11
  License: Apache-2.0
8
12
  Classifier: Development Status :: 4 - Beta
@@ -46,8 +50,31 @@ catalog.json) to/from Recce Cloud without the full `recce` package dependencies.
46
50
 
47
51
  ## Installation
48
52
 
53
+ ### Quick Run (no install needed)
54
+
55
+ Using [uv](https://github.com/astral-sh/uv), you can run `recce-cloud` directly
56
+ without installation:
57
+
49
58
  ```bash
59
+ # Run with uvx (creates temporary isolated environment)
60
+ uvx recce-cloud upload --type prod
61
+ uvx recce-cloud download --prod --target-path target-base
62
+
63
+ # Short alias also available
64
+ uvx --from recce-cloud rcc upload --type prod
65
+ ```
66
+
67
+ ### Permanent Install
68
+
69
+ ```bash
70
+ # With uv (recommended)
71
+ uv tool install recce-cloud
72
+
73
+ # With pip
50
74
  pip install recce-cloud
75
+
76
+ # With pipx
77
+ pipx install recce-cloud
51
78
  ```
52
79
 
53
80
  ## Quick Start
@@ -1,7 +1,7 @@
1
- recce_cloud/VERSION,sha256=IQ5KFJvT0Qx6Y9JW3EvhCa6rjP1tqpRTtk_fHgwamkY,7
1
+ recce_cloud/VERSION,sha256=w00ZuN3Pb5FuTkM1TToiBY3LWEqVfWKslnBS7HuzpCQ,7
2
2
  recce_cloud/__init__.py,sha256=2Zlm9V1IBJ9DxovzHIUJB0QDl6ergO5ktY09baQ-Kxc,907
3
3
  recce_cloud/artifact.py,sha256=C6q1i8d0JdTIVLcJY1ZEmJJ0uBz-0g3zVZD8ss0K1iI,1458
4
- recce_cloud/cli.py,sha256=eFS4WQkL-1K7gdSe4Cc9g6y-8QbcTc-5CgaKJMFGfe4,56652
4
+ recce_cloud/cli.py,sha256=aLOmimn3S9HLL8OI-b6HD1tlx-D5WS009BCqsD0M9zo,56627
5
5
  recce_cloud/delete.py,sha256=sZSJkCLcTkiI2qVRUZwV5vqqV3BRzzuRUKdTLlVZfr0,3751
6
6
  recce_cloud/download.py,sha256=bNBkh2tKLdFoQIuZNXG_wcP46VPCO_WlVszSmHAseGE,8482
7
7
  recce_cloud/report.py,sha256=MRlT-CGV-SBzzYepp1zzoFuHqomC2vhpn7s5ACoNyyQ,10214
@@ -32,7 +32,7 @@ recce_cloud/config/project_config.py,sha256=sfToZjP1TZNnSr31x0pwpLc_2DBZywrcqNpY
32
32
  recce_cloud/config/resolver.py,sha256=EYsWX0dwKHVKYf6kftekrbWd17vrALMUMl-T26up4VM,4712
33
33
  recce_cloud/services/__init__.py,sha256=GMxN0Wtf166qvSSMGmU5jwqfly5b3K0vsIe8PkX7AKo,36
34
34
  recce_cloud/services/diagnostic_service.py,sha256=X3YBHFTkB31WRIH9MCKpZxbl4drw9evD6bBiD8cDIkw,13049
35
- recce_cloud-1.34.1.dist-info/METADATA,sha256=B_4WaVxfk6_ahoOhPW1DWihbsM4nOr5P1RhuJkrwahg,9140
36
- recce_cloud-1.34.1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
37
- recce_cloud-1.34.1.dist-info/entry_points.txt,sha256=MVzgsEDWaQ4fWf33zlyPF83wg5Rgg5Axq2hlLEf0Yxg,58
38
- recce_cloud-1.34.1.dist-info/RECORD,,
35
+ recce_cloud-1.35.0.dist-info/METADATA,sha256=ps18ZQ1kVOS3rFgSBsiuCkbuz-qy_bFQZYGfEb8l7tg,9872
36
+ recce_cloud-1.35.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
37
+ recce_cloud-1.35.0.dist-info/entry_points.txt,sha256=_1wH_y7frAGRQPL8CDFUKhgYERZl9md_soULvqZfU3k,90
38
+ recce_cloud-1.35.0.dist-info/RECORD,,
@@ -1,2 +1,3 @@
1
1
  [console_scripts]
2
+ rcc = recce_cloud.cli:cloud_cli
2
3
  recce-cloud = recce_cloud.cli:cloud_cli