Commit graph

2,884 commits

Author SHA1 Message Date
gustavoschaedler
f1b2fea20f Merge remote-tracking branch 'origin/dev' into authentication 2023-08-11 19:40:11 +01:00
gustavoschaedler
580b439b80 🔧 chore(users.py): refactor and improve code readability in users.py
 feat(users.py): add docstrings to API endpoints for better documentation
🔥 chore(users.py): remove unnecessary code and comments
🐛 fix(users.py): fix return type hints in API endpoints
2023-08-11 03:52:02 +01:00
gustavoschaedler
0a5026a6ed 🔧 fix(auth.py): change refresh token expiration time from 180 minutes to 70 minutes for better security
🔧 fix(auth.py): change SECRET_KEY comment from "TODO" to "JUST FOR TEST" for clarity
🔧 fix(auth.py): change create_access_token function name to create_token for consistency
🔧 fix(auth.py): change create_refresh_token function to accept refresh_token parameter instead of data dictionary
🔧 fix(auth.py): change create_refresh_token function to decode and validate refresh_token before creating new user tokens
🔧 fix(auth.py): change authenticate_user function to use get_user_by_username instead of get_user
🔧 fix(auth.py): change get_current_user function to use get_user_by_username instead of get_user
🔧 fix(auth.py): change get_user function name to get_user_by_username for clarity
🔧 fix(users.py): change get_password_hash function to be inside the router scope for better encapsulation
🔧 fix(users.py): change add_user function to return UserListModel instead of User
🔧 fix(users.py): change update_user function to update user data based on UserPatchModel fields
🔧 fix(users.py): change update_user function to handle username conflicts and update user's updated_at field
🔧 fix(users.py): change delete_user function to delete user based on user_id
 feat(login.py): add refresh_token endpoint to refresh access token using refresh token
 feat(login.py): add refresh_token function to create new user tokens based on refresh token
 feat(login.py): add refresh_token endpoint to refresh access token using refresh token
 feat(login.py): add refresh_token function to create new user tokens based on refresh token
 feat(login.py): add refresh_token endpoint to refresh access token using refresh token
 feat(login.py): add refresh_token function to create new user tokens based on refresh token
 feat(login.py): add refresh_token endpoint to refresh access token using refresh token
 feat(login.py): add refresh_token function to create new user tokens based on refresh token
 feat(login.py): add refresh_token endpoint to refresh access token using refresh token
 feat(login.py): add refresh_token function to create new user tokens based on refresh token
 feat(login.py): add refresh_token endpoint to refresh access token using refresh token
 feat(login.py): add refresh
2023-08-11 03:13:08 +01:00
gustavoschaedler
f0f061ab46 🔒 chore(auth.py): increase access token expiration time to 60 minutes for better user experience
🔒 chore(auth.py): add refresh token functionality with expiration time of 180 minutes
🔒 chore(login.py): change token endpoint URL from /token to /login for better semantics
🔒 chore(login.py): add refresh token creation to login endpoint to provide a refresh token along with the access token
2023-08-10 19:05:11 +01:00
Gabriel Luiz Freitas Almeida
83631606d3 🐛 fix(manager.py): fix undefined variable 'database_url' error in _create_engine method
 feat(manager.py): add support for SQLite database by setting connect_args in create_engine method
2023-08-10 11:30:06 -03:00
Gabriel Luiz Freitas Almeida
3d8d44538f Merge branch 'release' into dev 2023-08-10 10:10:28 -03:00
Gabriel Luiz Freitas Almeida
df77ba81f7 🐛 fix(custom_component.py): fix condition to check if Optional type hint is used but not imported in the code 2023-08-10 09:24:10 -03:00
Gabriel Luiz Freitas Almeida
564634d36c 🐛 fix(directory_reader.py): handle SyntaxError when parsing code to prevent crashes
🐛 fix(directory_reader.py): return False if code is not valid Python to prevent false positives
🐛 fix(directory_reader.py): fix method name from is_type_hint_used_but_not_imported to _is_type_hint_used_in_args for consistency
🐛 fix(directory_reader.py): fix method name from is_type_hint_imported to _is_type_hint_imported for consistency
🐛 fix(directory_reader.py): fix return value of _is_type_hint_used_in_args method to return False if type hint is used but not imported
2023-08-10 09:23:36 -03:00
Gabriel Luiz Freitas Almeida
261e258ed4 🐛 fix(loading.py): make a copy of the params before modifying it to prevent unintended side effects 2023-08-10 09:23:02 -03:00
Gabriel Luiz Freitas Almeida
7b22fd2711
add waitlist button on header (#742) 2023-08-10 07:59:03 -03:00
Gabriel Luiz Freitas Almeida
8c41415a32 🐛 fix(custom_component.py): handle case when return_type is None to prevent errors
🐛 fix(test_custom_component.py): update assertion to expect return_type as a list instead of a string
🐛 fix(test_vectorstore_template.py): update assertion to check if all vectorstores in settings are present in the response
2023-08-09 17:50:03 -03:00
gustavoschaedler
f065a46950 Merge remote-tracking branch 'origin/dev' into authentication 2023-08-09 21:46:08 +01:00
Gabriel Luiz Freitas Almeida
e1407d0595 🔧 chore(Metaphor.py): refactor build method to accept additional parameters for improved configurability
🔧 chore(Metaphor.py): update search method to use the provided parameters for use_autoprompt and search_num_results
🔧 chore(Metaphor.py): update find_similar method to use the provided parameter for similar_num_results
2023-08-09 17:12:22 -03:00
Gabriel Luiz Freitas Almeida
29766ecaf0 🐛 fix(Metaphor.py): ignore type error for importing Metaphor from metaphor_python
🐛 fix(Metaphor.py): ignore type error for returning a list with mixed types
🐛 fix(Vectara.py): add condition to check if documents and embedding are not None before creating Vectara instance
🐛 fix(CustomComponent.py): change return type of get_function_entrypoint_return_type to List[str] to match the actual return value
2023-08-09 15:53:18 -03:00
Gabriel Luiz Freitas Almeida
9bbdd9465b 🔨 refactor(Vectara.py): reorganize function parameters for better readability and maintainability
🔧 chore(Vectara.py): add "embedding" parameter to the build function to support custom embeddings in VectaraComponent
2023-08-09 15:47:22 -03:00
Gabriel Luiz Freitas Almeida
e5e23a1da6 🐛 fix(component.py): add support for "documentation" field in template_config to properly handle component documentation
🐛 fix(types.py): update_attributes function now updates frontend_node with "documentation" field from template_config
2023-08-09 15:32:41 -03:00
Gabriel Luiz Freitas Almeida
38b6831b57 feat(Metaphor.py): add MetaphorToolkit component to langflow toolkit
The MetaphorToolkit component is added to the langflow toolkit. It provides functionality for searching metaphors using the Metaphor API. The component includes three tools: search, get_contents, and find_similar. The search tool allows users to search for metaphors using a query. The get_contents tool retrieves the contents of a webpage based on the ids returned from the search tool. The find_similar tool finds search results similar to a given URL returned from the search tool.

The MetaphorToolkit component is still in beta and requires a Metaphor API key to function. The API key is stored securely and can be configured in the field_config of the component. For more information, refer to the documentation: [Metaphor Toolkit Documentation](https://python.langchain.com/docs/integrations/tools/metaphor_search)
2023-08-09 15:29:11 -03:00
Gabriel Luiz Freitas Almeida
d16d916952 🐛 fix(custom_component.py): improve parsing of return type in CustomComponent class
 feat(custom_component.py): add support for parsing return type when it is a Union of types in CustomComponent class
2023-08-09 15:28:39 -03:00
Gabriel Luiz Freitas Almeida
b3e512f55f feat(PromptRunner.py): add PromptRunner component to run a Chain with a given PromptTemplate
 feat(Vectara.py): add VectaraComponent to implement Vector Store using Vectara
🔧 chore(vectorstores): add empty __init__.py file to the vectorstores directory
2023-08-09 14:37:20 -03:00
Gabriel Luiz Freitas Almeida
72f88e1a16 🐛 fix(custom_component.py): handle return_type as a Union[type1, type2] and add support for multiple return types in add_base_classes function
🐛 fix(types.py): handle multiple return types in add_base_classes function and raise HTTPException with appropriate error message if return type is invalid
2023-08-09 14:36:45 -03:00
anovazzi1
5e370f3e34
Refactoring: Rename Generic Variable Names to More Descriptive Ones (#725)
This PR is a code refactoring initiative aiming to improve the
readability and maintainability of our codebase. It specifically targets
generic or non-descriptive variable names, renaming them to more
meaningful names that better express their purpose within the code.
2023-08-09 11:21:34 -03:00
anovazzi1
21fb5aad6c style(headerComponent): capitalize the first letter of "The" in "Join The Waitlist" for consistency and readability 2023-08-09 10:59:50 -03:00
anovazzi1
181beb810e style(headerComponent): capitalize the first letter of "join the waitlist" to improve consistency and readability 2023-08-09 10:44:25 -03:00
anovazzi1
24cc59674b chore(headerComponent): remove commented out code for waitlist link
The commented out code for the waitlist link in the header component has been removed. This code was not being used and was cluttering the codebase.
2023-08-09 10:28:50 -03:00
Gabriel Luiz Freitas Almeida
be14d45589 🐛 fix(utils.py): handle CommandError when running migrations and delete alembic_version table if wrong revision in DB 2023-08-09 10:28:41 -03:00
Gabriel Luiz Freitas Almeida
61bee4424f
Add zip_path and workspace_url fields (#729) 2023-08-09 09:18:30 -03:00
Gabriel Luiz Freitas Almeida
f7afbd89b0 🔧 chore(vector_store.py): change the way pinecone_api_key and pinecone_env are retrieved from params dictionary to improve code readability and remove unnecessary code duplication 2023-08-09 08:48:53 -03:00
Melvin Hillsman
f4ad8572e7 Add zip_path and workspace_url fields
As noted in the
[documentation](https://python.langchain.com/docs/integrations/document_loaders/slack)
for this plugin zip_path is the first named parameter not file_path and
workspace_url is the second with zip_path being required and
workspace_url being optional.

Fixes #695

Signed-off-by: Melvin Hillsman <mhillsma@redhat.com>
2023-08-08 21:01:34 -05:00
anovazzi1
a99a7fe189 fix(headerComponent): fix conditional rendering of waitlist link in header component
chore(headerComponent): comment out unused waitlist link in header component
chore(applies.css): update styling of waitlist link in header component to match design requirements
2023-08-08 22:06:14 -03:00
anovazzi1
c67aa738ea feat(headerComponent): add "join the waitlist" link to the header component
- Added a new anchor tag with the link to the Langflow website's waitlist page
- Added a new CSS class `.header-waitlist-link-box` to style the waitlist link
- Added hover effect to the waitlist link when hovered over
2023-08-08 21:55:23 -03:00
anovazzi1
9b523ad11c update templateName variable to templateField 2023-08-08 20:59:28 -03:00
anovazzi1
fccb004248 format code and fix merge errors generated after conflict 2023-08-08 20:53:39 -03:00
anovazzi1
303387a3ec Merge branch 'dev' into variables_refactor 2023-08-08 20:46:18 -03:00
gustavoschaedler
056ce51ad0 🐛 fix(login.py): change argument type of create_user_token function from str to User to improve type safety and clarity
🐛 fix(login.py): remove unnecessary type ignore comment in create_user_token function
🐛 fix(login.py): remove unnecessary type ignore comment in return statement of login_to_get_access_token function
🐛 fix(users.py): remove unnecessary async keyword from read_current_user function
🐛 fix(users.py): remove unnecessary async keyword from read_all_users function
🐛 fix(users.py): remove unnecessary async keyword from add_user function
🐛 fix(users.py): remove unnecessary async keyword from add_super_user_to_testing_purposes function
2023-08-08 22:20:53 +01:00
gustavoschaedler
3c6d46021d 🔧 chore(user.py): remove unnecessary line breaks and import formatting for better code readability
🔧 chore(main.py): fix indentation and remove unnecessary line breaks for better code readability
🔧 chore(login.py): fix indentation and add missing line breaks for better code readability
2023-08-08 22:09:38 +01:00
gustavoschaedler
1c28979766 🔀 refactor(users.py): rename router prefix from "/users" to "Login" to improve clarity and consistency 2023-08-08 22:08:51 +01:00
gustavoschaedler
4af08d99fc Merge remote-tracking branch 'origin/dev' into authentication 2023-08-08 22:05:23 +01:00
Gabriel Luiz Freitas Almeida
d6bb6bf3d9 🐛 fix(base.py): handle case where database and tables already exist to prevent error and log a debug message 2023-08-08 17:41:17 -03:00
gustavoschaedler
59a55b4371 🔧 fix(auth.py): update import statements to reflect new file structure in langflow package
🔧 fix(auth.py): fix typo in verify_password function call
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect new file structure in langflow package
🔧 fix(auth.py): update get_current_user function signature to match the annotated type
🔧 fix(auth.py): update get_user function call to reflect
2023-08-08 21:19:22 +01:00
Gabriel Luiz Freitas Almeida
4b47f9f196 🐛 fix(endpoints.py): add check to skip empty custom_component_dict to prevent potential errors 2023-08-08 16:35:15 -03:00
Gabriel Luiz Freitas Almeida
a6cacbf377 Merge branch 'dev' into migrations_service 2023-08-08 16:13:32 -03:00
Gabriel Luiz Freitas Almeida
a40a81b458 Merge remote-tracking branch 'origin/main' into dev 2023-08-08 16:12:12 -03:00
Gabriel Luiz Freitas Almeida
b8d8ed8283 Revert "Revert "Fixes flows without input_keys not being runnable" (#731)"
This reverts commit 352e74cbc7, reversing
changes made to 3f531a1157.
2023-08-08 15:12:37 -03:00
Gabriel Luiz Freitas Almeida
f9b392d5b8
Revert "Fixes flows without input_keys not being runnable" 2023-08-08 15:02:16 -03:00
Gabriel Luiz Freitas Almeida
df49a6a410
Merge branch 'main' into inputKeysBugFix 2023-08-08 15:01:35 -03:00
Gabriel Luiz Freitas Almeida
a64f03da9c 📝 docs(loading_document.mdx): update the "Web Page" field URL to point to the correct documentation URL
📝 docs(CNAME): update the CNAME file to point to the new domain for the documentation

🔧 fix(ApiModal/index.tsx): update the links in the description to point to the correct documentation URL
2023-08-08 14:11:57 -03:00
Gabriel Luiz Freitas Almeida
4dafbae1b9 📝 docs(loading_document.mdx): update the "Web Page" field URL to point to the correct documentation URL
📝 docs(CNAME): update the CNAME file to point to the new domain for the documentation

🔧 fix(ApiModal/index.tsx): update the links in the description to point to the correct documentation URL
2023-08-08 14:09:15 -03:00
Gabriel Luiz Freitas Almeida
d1f09a6a64 🔨 refactor(utils.ts): remove unnecessary newline after the return statement in getChatInputField function 2023-08-07 20:34:22 -03:00
Gabriel Luiz Freitas Almeida
bd7489206d 🐛 fix(chatComponent): add null check for formKeysData.input_keys to prevent error when accessing undefined property 2023-08-07 20:32:27 -03:00
Gabriel Luiz Freitas Almeida
16666426f7 🐛 fix(chatComponent): fix condition to check if parsedData.input_keys is not undefined
 feat(chatComponent): add logic to close the connection and finish when end_of_stream event is received
2023-08-07 20:31:59 -03:00