sql5 4.1.0

SQLite compatible database with CJK FTS5 full-text search and vector similarity
Documentation
# sql5 v3.0 - WebSocket Server Support

## Overview

v3.0 新增 WebSocket server 模式,支援多 client 連線:

```
┌─────────────────┐                           ┌─────────────────┐
│  Python client  │  subprocess (default)    │  Rust server   │
│  sql5.connect() │ ←─ JSON over stdio ─────→│  sql5 --server  │
└─────────────────┘                           └─────────────────┘

┌─────────────────┐                           ┌─────────────────┐
│  Python client  │  WebSocket                │  Rust server   │
│  sql5.connect( │ ←─ WS ───────────────────→│  sql5 --websocket
│    transport=   │                           │    8080         │
│    "websocket") │                           └─────────────────┘
└─────────────────┘
```

## Server Modes

| Mode | Flag | Description |
|------|------|-------------|
| REPL | `sql5` or `sql5 db.db` | Interactive CLI |
| stdio server | `sql5 --server [db]` | JSON over stdin/stdout (subprocess mode) |
| WebSocket server | `sql5 --websocket <port> [db]` | WebSocket server (multi-client) |

### WebSocket Usage

```bash
# Start WebSocket server on default port 8080
sql5 --websocket 8080

# Start with database file
sql5 --websocket 8080 mydb.db

# Custom port
sql5 --websocket 9000
```

### Python Client

```python
import sql5

# Default: subprocess mode (v2.0 compatible)
conn = sql5.connect("mydb.db")

# WebSocket mode (v3.0 new)
conn = sql5.connect(
    path="mydb.db",
    transport="websocket",
    host="127.0.0.1",
    port=8080
)

# Execute queries
cursor = conn.execute("SELECT * FROM users")
rows = cursor.fetchall()

conn.close()
```

### Protocol

WebSocket server 使用相同的 JSON protocol:

```json
// Request
{"method": "execute", "sql": "SELECT 1"}

// Response
{"ok": true, "columns": ["1"], "rows": [[1]], "affected": 0}

// Error
{"ok": false, "error": "table not found"}
```

## Changes from v2.0

- **New**: WebSocket server mode (`--websocket`)
- **New**: Python client supports `transport` parameter
- **New**: Added `websocket-client` dependency for WebSocket mode
- **Version**: 3.0.0

## Installation

```bash
pip install sql5
```

Or install from source:

```bash
cd sql5_pypi
pip install -e .
```