Skip to content

Conversation

@gschier
Copy link
Member

@gschier gschier commented Dec 29, 2025

Remove dependency on reqwest for cookie handling by implementing custom
cookie store and management in the yaak-http crate:

  • Add new cookies.rs module with CookieStore for storing and matching
    cookies based on RFC 6265 domain/path rules
  • Update HttpTransaction to inject Cookie headers before requests and
    parse Set-Cookie headers from responses
  • Maintain cookies across redirect chains
  • Update http_request.rs to use new CookieStore instead of
    reqwest_cookie_store
  • Update WebSocket cookie handling to use new CookieStore
  • Remove reqwest_cookie_store dependency from all crates
  • Add comprehensive tests for cookie injection, parsing, and redirects

claude and others added 7 commits December 29, 2025 04:13
Remove dependency on reqwest for cookie handling by implementing custom
cookie store and management in the yaak-http crate:

- Add new cookies.rs module with CookieStore for storing and matching
  cookies based on RFC 6265 domain/path rules
- Update HttpTransaction to inject Cookie headers before requests and
  parse Set-Cookie headers from responses
- Maintain cookies across redirect chains
- Update http_request.rs to use new CookieStore instead of
  reqwest_cookie_store
- Update WebSocket cookie handling to use new CookieStore
- Remove reqwest_cookie_store dependency from all crates
- Add comprehensive tests for cookie injection, parsing, and redirects
Add validation to prevent cookies from being set for overly broad
single-component domains like .com or .org, while allowing localhost
variants (localhost, 127.0.0.1, ::1) for local development.
@gschier gschier merged commit 25d51a0 into main Dec 29, 2025
4 checks passed
@gschier gschier deleted the claude/custom-cookie-handling-MPpml branch December 29, 2025 17:47
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