Skip to content

0.3.28

Choose a tag to compare

@github-actions github-actions released this 11 Apr 01:27
c9d4f1d

langgraph 0.3.28

Summary of Changes

  • Added support for multiple retry policies, where the first matching policy will be applied when an exception occurs #4240
  • Improved performance and reliability of schema coercion between dictionaries and Pydantic models #4200
  • Optimized default retry logic with better ordering of HTTP error checks for improved exception handling performance

Detailed Changes

langgraph.func.task

  • Enhanced to accept a sequence of retry policies in addition to a single policy, providing more flexible error handling #4240

langgraph.graph.schema_utils.SchemaCoercionMapper

  • Significantly refactored for better performance with dictionary to Pydantic model coercion #4200
  • Added efficient caching with functools.lru_cache to avoid redundant processing
  • Improved handling of tuple, set, and other collection types
  • Added fast paths for basic types with identity conversions
  • Better compatibility with both Pydantic v1 and v2
  • Fixed order of checking Pydantic versions for more reliable detection

langgraph.graph.state.StateGraph

  • Updated add_node to support sequences of retry policies, with documentation for how multiple policies are applied #4240
  • Fixed a bug in _get_updates to correctly detect Pydantic model field sets based on their version #4200

langgraph.pregel.Pregel

  • Now accepts and properly handles a sequence of retry policies instead of just a single policy #4240
  • Improved type hints and initialization to better handle both single policy and sequence cases

langgraph.pregel.retry

  • Enhanced retry mechanism to select the first matching policy from a sequence of policies #4240
  • Added _should_retry_on helper function to determine if a policy applies to a specific exception
  • Improved backoff calculation logic to apply the correct policy's backoff rate
  • Better logging with clearer retry attempt messages

langgraph.types

  • Updated default_retry_on function with optimized ordering of HTTP error checks for better performance
  • Changed PregelExecutableTask.retry_policy type to support sequences of policies #4240