Commit Graph

37 Commits

Author SHA1 Message Date
Maries c6f83a63e1 feat[0.4.2]: Tool OAuth (#179)
* chore: fix ruff issue

* feat(oauth): implement OAuth

* feat(invoke-message): refactor message handling and introduce InvokeMessage class

* feat(plugin-oauth): add credential_id and credential_type to tool parameters

* feat(plugin-oauth): add credential_id and credential_type to tool parameters

* chore: update dify_plugin version to 0.5.0b4 and clean up github.yaml

* chore: update plugin version to 0.1.2 in manifest.yaml

* feat(session): session context and tool backwards invocation credential support

* feat(oauth): session context and tool backwards invocation credential support

* feat: update README and requirements for OAuth support in version 0.4.2

* feat: add .gitignore to exclude IDE files and secret keys

* chore: apply ruff

* feat: bump version to 0.4.2b1

* feat: update GitHub plugin configuration for OAuth support and improve credential handling

* feat: update .gitignore to exclude dify plugin files and public keys

* feat: fix credential validation for GitHub API and bump version to 0.2.1

* feat: update GitHub plugin to support multiple access tokens and bump version to 0.2.5

* chore: apply ruff

* feat: add ToolProviderOAuthError for improved OAuth error handling in GitHub plugin

* chore: apply ruff

* chore: bump version to 0.4.2

* chore: update examples sdk version to 0.4.2

* fix: thread deadlock in PluginRunner when running tests without gevent monkey patching

* feat: add support for refreshing OAuth credentials in Plugin and GitHub provider

* feat: refactor OAuth credential handling to return structured OAuthCredentials object

* apply ruff

* feat: refactor OAuth credential handling to use ToolOAuthCredentials for improved structure

* feat: reorganize imports in __init__.py for improved clarity and structure

* feat: add Microsoft To Do plugin for refresh token example

* chore: apply ruff

* fix: update author in GitHub configuration and clean up Microsoft To Do schema

* chore: bump version to 0.4.2b2 in pyproject.toml

* feat: update Microsoft To Do plugin to handle OAuth token encoding and version bump

* feat:remove inelegant example

* chore: update dify_plugin version to 0.4.2

* chore: bump version to 0.4.2 in pyproject.toml

---------

Co-authored-by: Yeuoly <admin@srmxy.cn>
2025-07-23 13:49:01 +08:00
QuantumGhost 5cb24625c3 ci(python): Add CI Pipeline for Python SDK (#72)
* chore(python): temporarily disable `UP007` rule in Ruff

Disable the `UP007` rule temporarily due to numerous existing
violations in the current codebase.

* ci(python): add lint and test for Python SDK

* ci: Add mega-linter

* chore(python): Add final newline to markdown files

* fix(python): Fix linter issues by using ruff's auto fix

* fix(python): Fix TRY400 linter violations

Ruff suggests using `logger.exception` to log when
logging an exception, instead of using `logging.error`.

The former logs the exception and the traceback
automatically.

ref: https://docs.astral.sh/ruff/rules/error-instead-of-exception/

* fix(python): fix ruff linter violations

* test(python): Add Test cases for LLM entities

Test the initialization of `LLMResult` and `LLMResultChunk`.

* test(python): Add test for `AgentModelConfig`

Ensures that the `history_prompt_messages` attribute is
not shared between instances of `AgentModelConfig`.

* chore(python): output diffs in Ruff's format check

* style(python): format code with Ruff

* chore(python): Add a bash script for fix and format python code

* chore: add `persist-credentials: false` to checkout action

Enhances security by preventing subsequent
steps from accessing GitHub credentials, reducing
potential attack surfaces.

Ref: https://github.com/actions/checkout#checkout-v4
2025-04-14 20:25:19 +08:00
Yeuoly 12ad9db9b5 enhancement: remove prompt_messages from LLMResult and LLMResultChunk (#88)
* refactor: remove prompt_messages from LLMResult and LLMResultChunk

* fix: add backward compatibility for deprecated prompt_messages field in LLMResult and LLMResultChunk

* fix: set default value for prompt_messages field to an empty list in LLMResult and LLMResultChunk for backward compatibility

* feat: add test for LLMResult to validate prompt_messages field and ensure backward compatibility

* apply ruff
2025-04-11 15:23:05 +08:00
QuantumGhost 9e084d7d09 feat(python): upgrade ruff to v0.11.2, integrate flake8-bandit ruleset for security linting (#65)
* chore(python): update .gitignore for Python SDK

Adjust .gitignore for Python SDK based on the templated generated by
gitignore.io, with minor custom modifications.

* chore: add .editorconfig for consistent formatting

Add a .editorconfig file to enforce consistent file encoding,
indentation, and end-of-line characters across the project.

* chore(python): upgrade ruff version to v0.11.2

* feat(python): Integrate flake8-bandit ruleset for security linting

Enable the flake8-bandit (S) ruleset in ruff to enforce security-related
best practices and mitigate potential vulnerabilities in the codebase.

Suppress existing issues in the current code using `noqa` comments, primarily for
instances of `requests` calls without a specified `timeout` parameter.
2025-03-24 18:00:14 +08:00
Yeuoly 1477f72b70 feat: support mime type and type for File 2024-12-03 15:48:59 +08:00
Yeuoly 435c0da60e refactor: use absolute paths 2024-12-03 15:19:19 +08:00
-LAN- b4b0c29169 refactor: prevent raise-without-from-inside-except
Signed-off-by: -LAN- <laipz8200@outlook.com>
2024-12-02 22:18:56 +08:00
-LAN- b3e0612e53 chore: Apply format
Signed-off-by: -LAN- <laipz8200@outlook.com>
2024-12-02 21:18:36 +08:00
-LAN- 5858fe715e chore: Apply formet and auto fix
Signed-off-by: -LAN- <laipz8200@outlook.com>
2024-12-02 21:10:36 +08:00
Yeuoly 01b46e76ba cleanup 2024-11-29 16:13:23 +08:00
Yeuoly 4a6dd16441 bump jina's sdk to b31 2024-11-22 20:18:59 +08:00
Yeuoly af63f59827 refactor: text-embedding 2024-11-22 18:15:58 +08:00
Yeuoly 8d07075e9c fix: update jina icons 2024-11-20 18:24:57 +08:00
Yeuoly 15ccb8376b fix: openai: missing numpy, jina: missing _position.yml 2024-11-15 18:06:41 +08:00
Yeuoly f89e4e4750 bump versions to 0.0.2 2024-11-15 17:49:06 +08:00
Yeuoly e9dc47c683 fix: missing sdk dependencies like pydub 2024-10-31 15:37:50 +08:00
Yeuoly 8e93e782b1 feat: add description 2024-10-16 20:05:46 +08:00
takatost 71081cf1c4 feat: text embedding invoke add input_type param 2024-09-29 14:35:40 +08:00
Yeuoly 8a4ea4b6e3 feat: support position.yaml 2024-09-20 01:01:42 +08:00
Yeuoly c475235aee fix: pattern 2024-09-14 17:45:39 +08:00
Yeuoly fb0dd26492 fix: jina 2024-09-13 15:20:37 +08:00
Yeuoly a152c857e6 refactor: manifest 2024-09-13 15:19:39 +08:00
Yeuoly 8d7cc02a19 refactor: manifest structure 2024-09-13 15:10:04 +08:00
Yeuoly d8dd877c14 refactor: invoke_from_executor -> invoke, invoke -> _invoke 2024-09-12 23:36:44 +08:00
Yeuoly f10fa31c39 fix: deps 2024-09-11 17:05:07 +08:00
takatost 022e8a16ca chore: optimize interface methods 2024-09-11 16:46:17 +08:00
Yeuoly 69fe86e029 release: beta 2024-09-11 16:19:46 +08:00
Yeuoly 70db8bcb8e refactor 2024-09-11 15:12:37 +08:00
takatost f611636766 remove unused files 2024-09-04 19:51:15 +08:00
Yeuoly 98ce6231a5 feat: assets 2024-09-04 18:26:54 +08:00
Yeuoly b20176d20b refactor: add requirements.txt 2024-09-04 16:02:23 +08:00
Yeuoly f8ceb02a56 fix: remove execution 2024-09-04 15:59:24 +08:00
Yeuoly 9c7d311d43 feat: labels 2024-09-02 20:17:32 +08:00
Yeuoly 3d3e6fbd9b feat: support persistence storage 2024-08-29 01:27:10 +08:00
Yeuoly 8a471941dc refactor 2024-08-27 12:45:00 +08:00
Yeuoly 2ff7635ae6 refactor: plugin stream reader 2024-08-26 10:33:19 +08:00
Yeuoly 454f498a53 feat: jina 2024-07-22 21:45:56 +08:00