Skip to content

Tags: humanloop/humanloop-python

Tags

0.8.40b6

Toggle 0.8.40b6's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 0.8.40b6: Introduce async decorators (#75)

* Introduce async versions of the File decorators
* The decorators are compatible with the `eval.run(...)` utility
* The new decorators are available on the sync version of the Humanloop client. In the near future, we'll work on providing feature parity between the sync and async client, and move the async decorator versions there.

0.8.40b5

Toggle 0.8.40b5's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 0.8.40b1 (#72)

* Updated doc-strings to match the changes made in observability, per [16.05 changelog](https://humanloop.com/docs/v5/changelog/2025/05#improved-observability-for-traces)

0.8.40b4

Toggle 0.8.40b4's commit message
chore: Bump SDK version

0.8.40b3

Toggle 0.8.40b3's commit message
chore: Bump SDK version

0.8.40b2

Toggle 0.8.40b2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fix/consistent path normalization (#73)

* fix: improve path handling in sync client pull operation

* Improve and make path handling more consistent in call and log overloads

* refactor(tests): update normalize_path test to cover strip_extension parameter

* fix: improve path validation for SDK calls

- Enhance safety in path extension handling
- Fix path validation tests to work with actual error messages
- Prioritize extension validation over other path format issues
- Ensure consistent error handling across prompt and agent clients

* feat: add path utils for centralized path validation

* Further refined path handling and added more tests

* refactor: use pytest tmp_path fixture to isolate test file operations

This change:
- Replaces hardcoded directories with pytest's tmp_path fixture
- Eliminates filesystem pollution between tests
- Enables safe test parallelization
- Improves path validation and error messages
- Removes redundant cleanup code
- Makes tests follow pytest best practices

* test: fix type errors in local file operations test by using proper ChatMessageParams type

* docs(cli): clarify SyncClient log level control and OpenTelemetry isolation

* refactor: simplified path processing to use pathlib where possible

* docs: improve comment clarity

* test: improve path normalization tests with parametrize and edge cases

* docs: clarify pull_file docstring with failure example

* docs: expand normalize_path docstring with usage and examples

- Add detailed explanation of function's purpose and usage contexts\n- Document rationale for stripping leading/trailing slashes\n- Add comprehensive examples for different path formats\n- Reference SyncClient.pull usage for context

* refactor: SyncClient -> FileSyncer

* fix(sync): Convert base_dir to string in FileSyncer fixture

* fix(dosc): correct logger namespace reference

* docs: Improve error messages and comments in FileSyncer

* refactor(test): use pytest.mark.parametrize for path validation tests

Consolidate the three similar test loops (extension paths, slash paths, and combined paths)
into a single parametrized test. This reduces code duplication while making test cases
more maintainable and test output more descriptive.

- Replace repetitive test loops with @pytest.mark.parametrize
- Use descriptive test IDs for better test output
- Group test cases by type with clear comments
- Make parameter names more explicit (path_generator, test_case_description)

* fix(test): use proper typing.Callable for path generator

0.8.40b1

Toggle 0.8.40b1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fix/consistent path normalization (#73)

* fix: improve path handling in sync client pull operation

* Improve and make path handling more consistent in call and log overloads

* refactor(tests): update normalize_path test to cover strip_extension parameter

* fix: improve path validation for SDK calls

- Enhance safety in path extension handling
- Fix path validation tests to work with actual error messages
- Prioritize extension validation over other path format issues
- Ensure consistent error handling across prompt and agent clients

* feat: add path utils for centralized path validation

* Further refined path handling and added more tests

* refactor: use pytest tmp_path fixture to isolate test file operations

This change:
- Replaces hardcoded directories with pytest's tmp_path fixture
- Eliminates filesystem pollution between tests
- Enables safe test parallelization
- Improves path validation and error messages
- Removes redundant cleanup code
- Makes tests follow pytest best practices

* test: fix type errors in local file operations test by using proper ChatMessageParams type

* docs(cli): clarify SyncClient log level control and OpenTelemetry isolation

* refactor: simplified path processing to use pathlib where possible

* docs: improve comment clarity

* test: improve path normalization tests with parametrize and edge cases

* docs: clarify pull_file docstring with failure example

* docs: expand normalize_path docstring with usage and examples

- Add detailed explanation of function's purpose and usage contexts\n- Document rationale for stripping leading/trailing slashes\n- Add comprehensive examples for different path formats\n- Reference SyncClient.pull usage for context

* refactor: SyncClient -> FileSyncer

* fix(sync): Convert base_dir to string in FileSyncer fixture

* fix(dosc): correct logger namespace reference

* docs: Improve error messages and comments in FileSyncer

* refactor(test): use pytest.mark.parametrize for path validation tests

Consolidate the three similar test loops (extension paths, slash paths, and combined paths)
into a single parametrized test. This reduces code duplication while making test cases
more maintainable and test output more descriptive.

- Replace repetitive test loops with @pytest.mark.parametrize
- Use descriptive test IDs for better test output
- Group test cases by type with clear comments
- Make parameter names more explicit (path_generator, test_case_description)

* fix(test): use proper typing.Callable for path generator

0.8.39

Toggle 0.8.39's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 0.8.39: Sync functionality and CLI

- Humanloop SDK can now use local .prompt and .agent file definitions. By default, the local worskpace is placed in the `humanloop` directory of your project
- You can clone Files from the Humanloop workspace into your local one. After cloning, the local will mirror the directory structure on remote.
- To use local files, refer to them by path in `call` and `log` operations
- In code, the feature can be toggled via the `use_local_files` flag in the Humanloop client constructor
- The feature can also be accessed via CLI: to clone Files, use the `humanloop pull` CLI command

0.8.38

Toggle 0.8.38's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
SDK regeneration (#67)

0.8.37

Toggle 0.8.37's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
SDK regeneration (#65)

0.8.36

Toggle 0.8.36's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🌿 Fern Regeneration -- May 9, 2025 (#64)

* SDK regeneration

* Add type ignore

---------

Co-authored-by: fern-api <115122769+fern-api[bot]@users.noreply.github.com>
Co-authored-by: James Baskerville <jameswbaskerville@gmail.com>