GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — python-sdk/CLAUDE.md at main · Karan2007/python-sdk

Expand file tree

/

CLAUDE.md

Copy path
More file actions
More file actions

Latest commit

 

History

History
History
73 lines (61 loc) · 2.17 KB
/

CLAUDE.md

Copy path

File metadata and controls

73 lines (61 loc) · 2.17 KB
Raw
Copy raw file
Download raw file
Outline
Edit and raw actions

Tool Usage Learnings

This file is intended to be used by an LLM such as Claude.

UV Package Manager

  • Use uv run to run Python tools without activating virtual environments
  • For formatting: uv run ruff format .
  • For type checking: uv run pyright
  • For upgrading packages:
    • uv add --dev package --upgrade-package package to upgrade a specific package
    • Don't use @latest syntax - it doesn't work
    • Be careful with uv pip install as it may downgrade packages

Git and GitHub CLI

  • When using gh CLI for PRs, always quote title and body:
    gh pr create --title "\"my title\"" --body "\"my body\""
  • For git commits, use double quotes and escape inner quotes:
    git commit -am "\"fix: my commit message\""

Python Tools

Ruff

  • Handles both formatting and linting
  • For formatting: uv run ruff format .
  • For checking: uv run ruff check .
  • For auto-fixing: uv run ruff check . --fix
  • Common issues:
    • Line length (default 88 chars)
    • Import sorting (I001 errors)
    • Unused imports
  • When line length errors occur:
    • For strings, use parentheses and line continuation
    • For function calls, use multiple lines with proper indentation
    • For imports, split into multiple lines

Pyright

  • Type checker
  • Run with: uv run pyright
  • Version warnings can be ignored if type checking passes
  • Common issues:
    • Optional types need explicit None checks
    • String operations need type narrowing

Pre-commit Hooks

  • Configuration in .pre-commit-config.yaml
  • Runs automatically on git commit
  • Includes:
    • Prettier for YAML/JSON formatting
    • Ruff for Python formatting and linting
  • When updating ruff version:
    • Check available versions on PyPI
    • Update rev in config to match available version
    • Add and commit config changes before other changes

Best Practices

  1. Always check git status and diff before committing
  2. Run formatters before type checkers
  3. When fixing CI:
    • Start with formatting issues
    • Then fix type errors
    • Then address any remaining linting issues
  4. For type errors:
    • Get full context around error lines
    • Consider optional types
    • Add type narrowing checks when needed
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.