fiuai-sdk-python 0.16.1__tar.gz → 0.16.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/CHANGELOG.md +5 -0
  2. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/PKG-INFO +1 -1
  3. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/pyproject.toml +1 -1
  4. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/__init__.py +1 -1
  5. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/client.py +42 -6
  6. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/.gitignore +0 -0
  7. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/LICENSE +0 -0
  8. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/README.md +0 -0
  9. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/_resp_helpers.py +0 -0
  10. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/auth/__init__.py +0 -0
  11. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/auth/context_mgr.py +0 -0
  12. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/auth/header.py +0 -0
  13. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/auth/helper.py +0 -0
  14. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/auth/type.py +0 -0
  15. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/bank.py +0 -0
  16. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/company.py +0 -0
  17. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/config.py +0 -0
  18. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/const.py +0 -0
  19. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/context.py +0 -0
  20. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/datatype.py +0 -0
  21. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/doctype.py +0 -0
  22. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/error.py +0 -0
  23. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/error_code.py +0 -0
  24. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/error_parsers.py +0 -0
  25. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/examples/fastapi_integration.py +0 -0
  26. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/http/__init__.py +0 -0
  27. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/http/client.py +0 -0
  28. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/item.py +0 -0
  29. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/perm.py +0 -0
  30. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/pkg/cache/__init__.py +0 -0
  31. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/pkg/cache/cache_client.py +0 -0
  32. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/pkg/cache/circuit_breaker.py +0 -0
  33. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/pkg/cache/decorator.py +0 -0
  34. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/pkg/cache/redis_manager.py +0 -0
  35. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/pkg/cache/types.py +0 -0
  36. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/pkg/scheduler/__init__.py +0 -0
  37. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/pkg/scheduler/runner.py +0 -0
  38. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/profile.py +0 -0
  39. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/resp.py +0 -0
  40. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/setup.py +0 -0
  41. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/type.py +0 -0
  42. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/util.py +0 -0
  43. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/utils/__init__.py +0 -0
  44. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/utils/ids.py +0 -0
  45. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/utils/logger.py +0 -0
  46. {fiuai_sdk_python-0.16.1 → fiuai_sdk_python-0.16.3}/src/fiuai_sdk_python/utils/text.py +0 -0
@@ -5,6 +5,11 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.16.3] - 2026-07-19
9
+
10
+ ### Added
11
+ - `FiuaiSDK.internal_create` 支持单请求 `timeout`,用于覆盖慢写操作的客户端默认超时。
12
+
8
13
  ## [0.16.1] - 2026-07-18
9
14
 
10
15
  ### Fixed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fiuai_sdk_python
3
- Version: 0.16.1
3
+ Version: 0.16.3
4
4
  Summary: FiuAI Python SDK - 企业级AI服务集成开发工具包
5
5
  Project-URL: Homepage, https://github.com/fiuai/fiuai-sdk-python
6
6
  Project-URL: Documentation, https://github.com/fiuai/fiuai-sdk-python#readme
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "fiuai_sdk_python"
3
- version = "0.16.1"
3
+ version = "0.16.3"
4
4
  description = "FiuAI Python SDK - 企业级AI服务集成开发工具包"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12"
@@ -18,7 +18,7 @@ from .error_code import (
18
18
  )
19
19
  from .resp import ApiError, ApiResponse, parse_response
20
20
 
21
- __version__ = "0.16.1"
21
+ __version__ = "0.16.3"
22
22
 
23
23
  __all__ = [
24
24
  'FiuaiSDK',
@@ -299,13 +299,30 @@ class FiuaiSDK(object):
299
299
 
300
300
 
301
301
 
302
- def internal_post_req(self, uri, postdata={}, extra_headers: Optional[Dict[str, Any]] = None) -> ApiResponse:
302
+ def internal_post_req(
303
+ self,
304
+ uri: str,
305
+ postdata: Optional[Dict[str, Any]] = None,
306
+ extra_headers: Optional[Dict[str, Any]] = None,
307
+ *,
308
+ timeout: float | httpx.Timeout | None = None,
309
+ ) -> ApiResponse:
310
+ """调用 internal POST 接口,并允许慢写操作覆盖本次请求超时。
311
+
312
+ ``timeout`` 未提供时沿用客户端全局配置;该方法不自动重试 POST 请求。
313
+ 网络超时仍按 SDK 契约返回状态为 504 的结构化 ``ApiResponse``。
314
+ """
303
315
  headers = self._get_merged_headers(extra_headers)
316
+ request_kwargs: Dict[str, Any] = {
317
+ "data": postdata or {},
318
+ "headers": headers,
319
+ }
320
+ if timeout is not None:
321
+ request_kwargs["timeout"] = timeout
304
322
  return self._safe_request(
305
323
  "POST",
306
324
  self.url + '/api/v2/internal/' + uri.lstrip('/'),
307
- data=postdata,
308
- headers=headers,
325
+ **request_kwargs,
309
326
  )
310
327
 
311
328
  def internal_get_req(self, uri, params={}, extra_headers: Optional[Dict[str, Any]] = None) -> ApiResponse:
@@ -317,13 +334,32 @@ class FiuaiSDK(object):
317
334
  headers=headers,
318
335
  )
319
336
 
320
- def internal_create(self, data={}, auto_submit: bool = False, extra_headers: Optional[Dict[str, Any]] = None) -> ApiResponse:
337
+ def internal_create(
338
+ self,
339
+ data={},
340
+ auto_submit: bool = False,
341
+ extra_headers: Optional[Dict[str, Any]] = None,
342
+ *,
343
+ timeout: float | httpx.Timeout | None = None,
344
+ ) -> ApiResponse:
345
+ """创建文档,并允许慢写操作覆盖本次请求超时。
346
+
347
+ ``timeout`` 未提供时沿用客户端全局配置;该方法不自动重试 POST 请求。
348
+ """
321
349
  headers = self._get_merged_headers(extra_headers)
350
+ request_kwargs: Dict[str, Any] = {
351
+ "data": {
352
+ "data": json.dumps(data, ensure_ascii=False),
353
+ "auto_submit": auto_submit,
354
+ },
355
+ "headers": headers,
356
+ }
357
+ if timeout is not None:
358
+ request_kwargs["timeout"] = timeout
322
359
  return self._safe_request(
323
360
  "POST",
324
361
  self.url + '/api/v2/internal/doctype/create',
325
- data={"data": json.dumps(data, ensure_ascii=False), "auto_submit": auto_submit},
326
- headers=headers,
362
+ **request_kwargs,
327
363
  )
328
364
 
329
365
  def internal_get(self, doctype, name, fields=None, filters=None, extra_headers: Optional[Dict[str, Any]] = None) -> ApiResponse: