Skip to content

Conversation

@adhami3310
Copy link
Member

No description provided.

@codspeed-hq
Copy link

codspeed-hq bot commented Oct 27, 2025

CodSpeed Performance Report

Merging #5933 will degrade performances by 28.18%

Comparing 0818dev (e92bc77) with main (f050374)

Summary

❌ 8 regressions

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Benchmarks breakdown

Benchmark BASE HEAD Change
test_compile_page[_complicated_page] 65.3 ms 88.4 ms -26.11%
test_compile_page[_stateful_page] 7.7 ms 10.4 ms -26.22%
test_compile_stateful[_complicated_page] 457 µs 584.5 µs -21.82%
test_compile_stateful[_stateful_page] 115.4 µs 147.7 µs -21.87%
test_get_all_imports[_complicated_page] 16.3 ms 22.7 ms -28.18%
test_get_all_imports[_stateful_page] 2.2 ms 3 ms -27.53%
test_evaluate_page[_complicated_page] 34.6 ms 46.1 ms -24.96%
test_evaluate_page[_stateful_page] 4.9 ms 6.5 ms -24.69%

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Greptile Overview

Greptile Summary

This PR bumps the development version to 0.8.18dev1 and updates multiple dependencies to their latest versions.

Key Changes

  • Version bump: Reflex version updated from 0.8.17dev1 to 0.8.18dev1
  • Redis compatibility: Extended redis support from <7.0 to <8.0 with backward-compatible handling of sync/async ping() methods
  • Frontend tooling updates:
    • Bun: 1.3.0 → 1.3.1
    • Lucide icons: 0.546.0 → 0.548.0 (adds birdhouse and gamepad_directional)
    • Tailwind CSS: 4.1.15 → 4.1.16
    • Rolldown-vite: 7.1.18 → 7.1.20
  • Python dependency updates:
    • reflex-hosting-cli: >=0.1.57 → >=0.1.58
    • ruff: v0.14.1 → v0.14.2
    • pyright: v1.1.406 → v1.1.407

Implementation Details

The most significant code change is in reflex/utils/prerequisites.py:436-441, where the redis ping check now uses inspect.isawaitable() to handle both synchronous (redis <7.0) and asynchronous (redis >=7.0) redis clients. This ensures backward compatibility while supporting newer redis versions.

Confidence Score: 5/5

  • This PR is safe to merge with no identified issues
  • All changes are routine dependency updates with proper backward compatibility handling. The redis compatibility fix correctly uses inspect.isawaitable() to support both sync and async clients, and existing tests already cover this pattern. Version bumps are incremental and follow semantic versioning.
  • No files require special attention

Important Files Changed

File Analysis

Filename Score Overview
pyproject.toml 5/5 Version bump to 0.8.18dev1, updated dependencies (redis <8.0, reflex-hosting-cli >=0.1.58, ruff v0.14.2, pyright v1.1.407, rolldown-vite@7.1.20)
reflex/components/lucide/icon.py 5/5 Updated lucide-react from 0.546.0 to 0.548.0, added two new icons: birdhouse and gamepad_directional
reflex/constants/installer.py 5/5 Updated Bun from 1.3.0 to 1.3.1, rolldown-vite from 7.1.18 to 7.1.20
reflex/plugins/tailwind_v4.py 5/5 Updated tailwindcss and @tailwindcss/postcss from 4.1.15 to 4.1.16
reflex/utils/prerequisites.py 5/5 Added inspect.isawaitable() check for redis ping() to handle both sync and async redis clients, supporting redis >=7.0

Sequence Diagram

sequenceDiagram
    participant App as Application
    participant Health as Health Endpoint
    participant Redis as Redis Client
    participant Inspect as inspect.isawaitable()
    
    App->>Health: Request health status
    Health->>Redis: get_redis()
    
    alt Redis client exists
        Health->>Redis: redis_client.ping()
        Redis-->>Health: Returns ping command
        Health->>Inspect: Check if awaitable
        
        alt Command is awaitable (redis >=7.0)
            Health->>Redis: await ping_command
            Redis-->>Health: Ping response
        else Command is not awaitable (redis <7.0)
            Note over Health: Use result directly
        end
        
        Health-->>App: {"redis": True}
    else Redis client is None
        Health-->>App: {"redis": None}
    end
Loading

6 files reviewed, no comments

Edit Code Review Agent Settings | Greptile

@adhami3310 adhami3310 merged commit c4254ed into main Oct 27, 2025
46 of 47 checks passed
@adhami3310 adhami3310 deleted the 0818dev branch October 27, 2025 19:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants