🐼 为PandasAI做贡献

你好!我们非常高兴你愿意为这个项目做出贡献。你的帮助对于保持项目的优秀至关重要。

🤝 如何提交贡献

要做出贡献,请按照以下步骤操作:

  1. Fork 并克隆此仓库
  2. 在你的分支上进行更改
  3. 如果您修改了代码(新功能或错误修复),请为其添加测试
  4. 检查代码规范 见下文
  5. 确保所有测试通过 见下文
  6. 提交一个拉取请求

有关拉取请求的更多详情,请阅读GitHub’s guides

📦 包管理器

我们使用poetry作为我们的包管理器。您可以按照这里的说明安装poetry。

请不要使用 pip 或 conda 来安装依赖项。相反,请使用 poetry:

poetry install --all-extras --with dev

📌 预提交

为确保我们的标准,在开始贡献之前请确保安装pre-commit。

pre-commit install

🧹 代码检查

我们使用ruff来检查我们的代码。你可以通过运行以下命令来运行检查器:

make format_diff

在提交拉取请求之前,请确保linter没有报告任何错误或警告。

使用 ruff-format 格式化代码

我们使用ruff通过运行以下命令来重新格式化代码:

make format

拼写检查

我们使用 codespell 来检查代码的拼写。你可以通过运行以下命令来运行 codespell:

make spell_fix

🧪 测试

我们使用pytest来测试我们的代码。你可以通过运行以下命令来运行测试:

make tests

在提交拉取请求之前,请确保所有测试都通过。

🚀 发布流程

目前,发布过程是手动的。我们尝试频繁发布。通常,当我们有新功能或错误修复时,我们会发布新版本。具有仓库管理员权限的开发人员将在GitHub上创建新版本,然后将新版本发布到PyPI。