🔍 refactor(base.py): refactor build_error_message function to improve readability and error message generation
The check_input_variables function now correctly handles empty variables and variables that start with a number. It removes invalid characters from the variables and adds them to the wrong_variables set. The build_error_message function has been refactored to generate a more informative error message, including details about invalid characters, wrong variables, empty variables, and duplicate variables. This improves the clarity of error messages when validating input variables.
🐛 fix(chatMessage): add max height and overflow to AccordionContent in ChatMessage component to prevent content overflow
🐛 fix(formModal): adjust width of left panel in FormModal component to improve layout
🐛 fix(formModal): fix flexbox alignment issue in right panel of FormModal component
The representation of the built object in the Vertex class has been improved to provide more meaningful information. Instead of returning the actual object representation, it now returns "Built successfully" if the object has been built, or "Not built yet" if the object has not been built yet. This change enhances the clarity and readability of the code.
The code now handles the case when the `artifacts` variable is empty by setting `input_keys_response` to an empty dictionary. This prevents potential errors that could occur when trying to build the `input_keys_response` object.
The code now checks if the `base_type` attribute is None before attempting to instantiate a class. If `base_type` is None, a ValueError is raised with a descriptive error message. This fix prevents potential errors when the `base_type` is not found for a given node.
🐛 fix(schemas.py): change class name from "ExportedFlow" to "Exported flow from Langflow" for consistency
The word variable in __main__.py is changed from "LangFlow" to "Langflow" to maintain consistency in naming conventions. Similarly, the class name in schemas.py is changed from "ExportedFlow" to "Exported flow from Langflow" for consistency in naming conventions.
📝 docs(README.md): update project name to "Langflow" for consistency
📝 chore(frontend): update project name in HTML title tag to "Langflow" for consistency
The project name "LangFlow" has been updated to "Langflow" for consistency throughout the documentation and codebase. This change improves readability and maintains a consistent naming convention.
🐛 fix(tabsContext.tsx): fix typo in variable name from LangFlowState to LangflowState
🐛 fix(flow_constants.tsx): fix typo in description from LangFlow to Langflow
🐛 fix(chatModal/index.tsx): fix typo in chat modal title from LangFlow Chat to Langflow Chat
🐛 fix(importModal/index.tsx): fix typo in import modal title from LangFlow Examples to Langflow Examples
🐛 fix(CommunityPage/index.tsx): fix typo in community page text from LangFlow to Langflow
🐛 fix(FlowPage/index.tsx): fix typo in flow page text from LangFlow to Langflow
The changes were made to fix typos in various parts of the codebase where the name "LangFlow" was misspelled as "Langflow". This improves consistency and ensures that the correct name is used throughout the application.
The load_params() function is added to load the parameters from the environment variables. This allows for more flexibility and configurability of the application by allowing the parameters to be set via environment variables.
🔧 chore(README.md): reformat and update CLI section for clarity and consistency
The README.md file has been updated to improve the organization and readability of the document. The table of contents has been updated to include all relevant sections. Headings have been adjusted to provide a clear hierarchy and improve navigation. The CLI section has been reformatted and updated to provide clearer instructions and explanations.
The README file now includes a new section that provides information on how to use the command-line interface (CLI) of Langflow. It explains the available options and their usage. Additionally, a section on environment variables is added, which explains how to configure CLI options using environment variables. This provides users with more flexibility in customizing the behavior of the Langflow server.
🌟 feat(__main__.py): add support for environment variables to configure serve function
The serve function in __main__.py has been refactored to use environment variables for configuration options. The following configuration options now support environment variables: host, workers, port, log_level, log_file, path, open_browser, and remove_api_keys. This change allows for greater flexibility and easier configuration of the serve function by using environment variables instead of command line options.
The .env.example file has been updated to include example values and new configuration options. The LANGFLOW_DATABASE_URL example has been updated to include both Postgres and SQLite examples. New configuration options have been added for cache type, server host, worker processes, server port, logging level, log file path, frontend directory path, whether to open the browser after starting the server, and whether to remove API keys from the projects saved in the database. These changes provide more flexibility and customization options for the application.
The environment variable name is changed from LANGFLOW_DATABASE_URL to langflow_database_url to maintain consistency with the naming conventions used in the codebase. This ensures that the code is more readable and easier to understand.
The `cache` option has been changed to use the `LANGFLOW_LANGCHAIN_CACHE` environment variable instead of `LANGCHAIN_CACHE` for clarity and consistency. Similarly, the `database_url` option now uses the `LANGFLOW_DATABASE_URL` environment variable instead of the previous behavior of using a local SQLite database by default. This change allows for more flexibility in configuring the cache and database connections.