Surn commited on
Commit
43040c0
·
1 Parent(s): 6fc2b75

Update 1. Minor - add module versions info

Browse files
README.md CHANGED
@@ -7,7 +7,7 @@ sdk: gradio
7
  sdk_version: 5.50.0
8
  python_version: 3.12.8
9
  app_port: 7860
10
- app_file: gradio_app.py
11
  suggested_hardware: cpu-basic
12
  pinned: false
13
  tags:
 
7
  sdk_version: 5.50.0
8
  python_version: 3.12.8
9
  app_port: 7860
10
+ app_file: app.py
11
  suggested_hardware: cpu-basic
12
  pinned: false
13
  tags:
wrdler/gradio_ui.py CHANGED
@@ -37,6 +37,7 @@ from .game_storage import (
37
  load_game_from_sid
38
  )
39
  from .word_loader_ai import generate_ai_words
 
40
 
41
  # Version info
42
  from . import __version__
@@ -1457,6 +1458,15 @@ def create_app() -> gr.Blocks:
1457
  label="Music Volume",
1458
  key="music-volume-slider"
1459
  )
 
 
 
 
 
 
 
 
 
1460
 
1461
  # Audio players using HTML components for better compatibility
1462
  audio_player = gr.HTML(
@@ -1872,6 +1882,8 @@ def create_app() -> gr.Blocks:
1872
  outputs=[*common_outputs, music_player]
1873
  )
1874
 
 
 
1875
  return demo
1876
 
1877
  def handle_share_challenge(username: str, state: Dict[str, Any]) -> Tuple[str, Optional[str], Dict[str, Any]]:
@@ -1950,7 +1962,7 @@ def handle_share_challenge(username: str, state: Dict[str, Any]) -> Tuple[str, O
1950
  exists = any(e.get("username") == name and e.get("score") == score and e.get("time") == time_seconds for e in new_state["challenge_leaderboard"])
1951
  if not exists:
1952
  new_state["challenge_leaderboard"].append(lb_entry)
1953
- status = f"Challenge created! Share with friends: {share_url}";
1954
  return (status, share_url, new_state)
1955
  else:
1956
  return ("Challenge saved but short link creation failed.", full_url, state)
 
37
  load_game_from_sid
38
  )
39
  from .word_loader_ai import generate_ai_words
40
+ from .version_info import versions_html
41
 
42
  # Version info
43
  from . import __version__
 
1458
  label="Music Volume",
1459
  key="music-volume-slider"
1460
  )
1461
+ # Version info footer
1462
+ with gr.Row(
1463
+ elem_classes=["version-info-row"],
1464
+ visible=True
1465
+ ):
1466
+ gr.HTML(
1467
+ value=versions_html(),
1468
+ elem_classes=["version-info"]
1469
+ )
1470
 
1471
  # Audio players using HTML components for better compatibility
1472
  audio_player = gr.HTML(
 
1882
  outputs=[*common_outputs, music_player]
1883
  )
1884
 
1885
+
1886
+
1887
  return demo
1888
 
1889
  def handle_share_challenge(username: str, state: Dict[str, Any]) -> Tuple[str, Optional[str], Dict[str, Any]]:
 
1962
  exists = any(e.get("username") == name and e.get("score") == score and e.get("time") == time_seconds for e in new_state["challenge_leaderboard"])
1963
  if not exists:
1964
  new_state["challenge_leaderboard"].append(lb_entry)
1965
+ status = f"Challenge created! Share with friends: {share_url}"
1966
  return (status, share_url, new_state)
1967
  else:
1968
  return ("Challenge saved but short link creation failed.", full_url, state)
wrdler/version_info.py CHANGED
@@ -6,6 +6,11 @@ try:
6
  except Exception: # pragma: no cover
7
  st = None
8
 
 
 
 
 
 
9
 
10
  def commit_hash() -> str:
11
  """Return current git commit hash or '<none>' if unavailable."""
@@ -27,12 +32,12 @@ def get_wrdler_version() -> str:
27
  def versions_html() -> str:
28
  """Return a small HTML snippet with runtime and app environment info.
29
 
30
- Includes: git commit, Python version, Streamlit version, and Wrdler version.
31
  """
32
  python_version = ".".join(str(x) for x in sys.version_info[:3])
33
  full_python = sys.version.replace("\n", " ")
34
  commit = commit_hash()
35
- streamlit_version = getattr(st, "__version__", "not installed")
36
  wrdler_version = get_wrdler_version()
37
 
38
  html = f"""
@@ -43,7 +48,7 @@ def versions_html() -> str:
43
  &nbsp;|&nbsp;
44
  <span>python: <span title="{full_python}">{python_version}</span></span>
45
  &nbsp;|&nbsp;
46
- <span>streamlit: {streamlit_version}</span>
47
  </div>
48
  """
49
  return html
 
6
  except Exception: # pragma: no cover
7
  st = None
8
 
9
+ try:
10
+ import gradio as gr
11
+ except Exception: # pragma: no cover
12
+ gr = None
13
+
14
 
15
  def commit_hash() -> str:
16
  """Return current git commit hash or '<none>' if unavailable."""
 
32
  def versions_html() -> str:
33
  """Return a small HTML snippet with runtime and app environment info.
34
 
35
+ Includes: git commit, Python version, Gradio version, and Wrdler version.
36
  """
37
  python_version = ".".join(str(x) for x in sys.version_info[:3])
38
  full_python = sys.version.replace("\n", " ")
39
  commit = commit_hash()
40
+ gradio_version = getattr(gr, "__version__", "not installed") if gr else "not installed"
41
  wrdler_version = get_wrdler_version()
42
 
43
  html = f"""
 
48
  &nbsp;|&nbsp;
49
  <span>python: <span title="{full_python}">{python_version}</span></span>
50
  &nbsp;|&nbsp;
51
+ <span>gradio: {gradio_version}</span>
52
  </div>
53
  """
54
  return html
wrdler/word_loader_ai.py CHANGED
@@ -805,7 +805,7 @@ try:
805
  except Exception:
806
  _GRADIO_AVAILABLE = False
807
 
808
- if _GRADIO_AVAILABLE and not USE_HF_WORDS:
809
  @gr.mcp_server_function(
810
  name="generate_ai_words",
811
  description="""
@@ -912,6 +912,8 @@ else:
912
  logger.debug("ℹ️ Gradio not available; MCP function not registered")
913
  elif USE_HF_WORDS:
914
  logger.debug("ℹ️ USE_HF_WORDS=true; MCP function not registered (remote mode)")
 
 
915
 
916
  hf_root = os.path.join(TMPDIR, "hf-cache")
917
  os.makedirs(hf_root, exist_ok=True)
 
805
  except Exception:
806
  _GRADIO_AVAILABLE = False
807
 
808
+ if _GRADIO_AVAILABLE and not USE_HF_WORDS and hasattr(gr, 'mcp_server_function'):
809
  @gr.mcp_server_function(
810
  name="generate_ai_words",
811
  description="""
 
912
  logger.debug("ℹ️ Gradio not available; MCP function not registered")
913
  elif USE_HF_WORDS:
914
  logger.debug("ℹ️ USE_HF_WORDS=true; MCP function not registered (remote mode)")
915
+ else:
916
+ logger.debug("ℹ️ gr.mcp_server_function not available; MCP function not registered")
917
 
918
  hf_root = os.path.join(TMPDIR, "hf-cache")
919
  os.makedirs(hf_root, exist_ok=True)