Compare commits

...

3 Commits

9 changed files with 192 additions and 13 deletions

View File

@ -0,0 +1,12 @@
<!-- 请确保你已经阅读并理解了贡献指南 -->
### . 描述这个 PR 做了什么
### Ⅱ. 这个 pull request 是否修复了一个问题?
<!-- 如果是请在下一行添加“fix #xxx”,例如 fix #97。-->
### Ⅲ. 为什么不需要添加测试用例(单元测试/集成测试)?
### Ⅳ. 描述如何验证它
### . 评审的特别说明

View File

@ -0,0 +1,144 @@
# 为 FastExcel 做贡献
FastExcel 欢迎社区的每一位用户和开发者成为贡献者。无论是报告问题、改进文档、提交代码,还是提供技术支持,您的参与都将帮助 FastExcel 变得更好。
---
## 报告问题
我们鼓励用户在使用 FastExcel 的过程中随时提供反馈。您可以通过 [NEW ISSUE](https://github.com/CodePhiliaX/fastexcel/issues/new/choose) 提交问题。
### 高质量问题报告
为了提高沟通效率,请在提交问题前:
1. **搜索现有问题**:检查您的问题是否已被报告。如果存在,请直接在现有问题下评论补充详细信息,而不是创建新问题。
2. **使用问题模板**:问题模板位于 [ISSUE TEMPLATE](./.github/ISSUE_TEMPLATE),请按照模板要求填写,以确保问题描述准确且完整。
以下情况适合提交新问题:
- Bug 报告
- 新功能需求
- 性能问题
- 功能提案或设计
- 文档改进
- 测试覆盖率优化
- 需要技术支持
- 其他与项目相关的问题
> **注意**:请勿在问题中包含敏感信息,如密码、密钥、服务器地址或私人数据。
---
## 贡献代码与文档
所有对 FastExcel 的改进均可通过 Pull Request (PR) 实现。无论是修复 Bug、优化代码、增强功能还是改进文档都非常欢迎
### 您可以贡献的方向
- 修复错别字
- 修复 Bug
- 删除冗余代码
- 添加测试用例
- 增强功能
- 添加注释以提升代码可读性
- 优化代码结构
- 改进或完善文档
**原则****任何有助于项目改进的 PR 都值得鼓励!**
在提交 PR 前,请熟悉以下指南:
1. [工作区准备](#工作区准备)
2. [分支定义](#分支定义)
3. [提交规则](#提交规则)
4. [PR 说明](#pr说明)
---
### 工作区准备
确保您已注册 GitHub 账号,并按照以下步骤完成本地开发环境配置:
1. **Fork 仓库**:在 FastExcel 的 [GitHub 页面](https://github.com/CodePhiliaX/fastexcel) 点击 `Fork` 按钮,将项目复制到您的 GitHub 账户下,例如:`https://github.com/<your-username>/fastexcel`
2. **克隆代码库**:运行以下命令将 Fork 的项目克隆到本地:
```bash
git clone git@github.com:<your-username>/fastexcel.git
```
3. **设置上游仓库**:将官方仓库设置为 `upstream`,方便同步更新:
```bash
git remote add upstream git@github.com:CodePhiliaX/fastexcel.git
git remote set-url --push upstream no-pushing
```
运行 `git remote -v` 可检查配置是否正确。
---
### 分支定义
在 FastExcel 中,所有贡献应基于 `main` 开发分支。此外,还有以下分支类型:
- **release 分支**:用于版本发布(如 `0.6.0`, `0.6.1`)。
- **feature 分支**:用于开发较大的功能。
- **hotfix 分支**:用于修复重要 Bug。
提交 PR 时,请确保变更基于 `main` 分支。
---
### 提交规则
#### 提交信息
请确保提交消息清晰且具有描述性,遵循以下格式:
- **docs**: 更新文档,例如 `docs: 更新 PR 提交指南`
- **feature**: 新功能,例如 `feature: 支持 并发写入`
- **bugfix**: 修复 Bug例如 `bugfix: 修复空指针异常`
- **refactor**: 重构代码,例如 `refactor: 优化数据处理逻辑`
- **test**: 增加或改进测试,例如 `test: 添加单元测试`
不建议使用模糊的提交信息,如:
- ~~修复问题~~
- ~~更新代码~~
如果需要帮助,请参考 [如何编写 Git 提交消息](http://chris.beams.io/posts/git-commit/)。
#### 提交内容
一次提交应包含完整且可审查的更改,确保:
- 避免提交过于庞大的改动。
- 每次提交内容独立且可通过 CI 测试。
另外,请确保提交时配置正确的 Git 用户信息:
```bash
git config --get user.name
git config --get user.email
```
---
### PR 说明
为了帮助审阅者快速了解 PR 的内容和目的,请使用 [PR 模板](.github/PULL_REQUEST_TEMPLATE/pull_request_template.md)。详细的描述将极大提高代码审阅效率。
---
## 测试用例贡献
任何测试用例的贡献都值得鼓励,尤其是单元测试。建议在对应模块的 `test` 目录中创建 `XXXTest.java` 文件,推荐使用 JUnit5 框架。
---
## 其他参与方式
除了直接贡献代码,以下方式同样是对 FastExcel 的宝贵支持:
- 回答其他用户的问题。
- 帮助审阅他人的 PR。
- 提出改进建议。
- 撰写技术博客,宣传 FastExcel。
- 在社区中分享项目相关知识。
---
## 代码风格
请遵循 [阿里巴巴 Java 编码规范](https://alibaba.github.io/Alibaba-Java-Coding-Guidelines/) 进行代码编写。
您可以选择安装以下插件(非必需)以帮助检查代码风格:
- **IntelliJ IDEA 插件**[安装指南](https://github.com/alibaba/p3c/blob/master/idea-plugin/README.md)
- **Eclipse 插件**[安装指南](https://github.com/alibaba/p3c/blob/master/eclipse-plugin/README.md)
---
**最后,感谢您对 FastExcel 的支持!每一份帮助,都是我们前进的动力。**

View File

@ -37,20 +37,22 @@ FastExcel 将始终坚持免费开源,并采用最开放的 MIT 协议,使
> 当前 FastExcel 底层使用 poi 作为基础包,如果您的项目中已经有 poi 相关组件,需要您手动排除 poi 的相关 jar 包。
## 更新
您可以在 [版本升级详情](update.md) 中查询到具体的版本更新细节。 您也可以在[Maven 中心仓库](https://mvnrepository.com/artifact/cn.idev.excel/fastexcel)中查询到所有的版本。
### Maven
如果您使用 Maven 进行项目构建,请在 `pom.xml` 文件中引入以下配置:
```xml
<dependency>
<groupId>cn.idev.excel</groupId>
<artifactId>fastexcel</artifactId>
<version>1.0.0</version>
<version>1.1.0</version>
</dependency>
```
### Gradle
如果您使用 Gradle 进行项目构建,请在 `build.gradle` 文件中引入以下配置:
```gradle
dependencies {
implementation 'cn.idev.excel:fastexcel:1.0.0'
implementation 'cn.idev.excel:fastexcel:1.1.0'
}
```
## EasyExcel 与 FastExcel 的区别
@ -75,7 +77,7 @@ dependencies {
<dependency>
<groupId>cn.idev.excel</groupId>
<artifactId>fastexcel</artifactId>
<version>1.0.0</version>
<version>1.1.0</version>
</dependency>
```

View File

@ -37,7 +37,7 @@ If you are using Maven for project building, add the following configuration in
<dependency>
<groupId>cn.idev.excel</groupId>
<artifactId>fastexcel</artifactId>
<version>1.0.0</version>
<version>1.1.0</version>
</dependency>
```
### Gradle
@ -45,9 +45,11 @@ If you are using Gradle for project building, add the following configuration in
```gradle
dependencies {
implementation 'cn.idev.excel:fastexcel:1.0.0'
implementation 'cn.idev.excel:fastexcel:1.1.0'
}
```
## Update
For detailed update logs, refer to [Details of version updates](update.md). You can also find all available versions in the [Maven Central Repository](https://mvnrepository.com/artifact/cn.idev.excel/fastexcel).
## Differences Between EasyExcel and FastExcel
- FastExcel supports all the features of EasyExcel but with better performance and stability.
@ -71,7 +73,7 @@ Replace with:
<dependency>
<groupId>cn.idev.excel</groupId>
<artifactId>fastexcel</artifactId>
<version>1.0.0</version>
<version>1.1.0</version>
</dependency>
```
### 2. Modify Code

View File

@ -37,7 +37,7 @@ Mavenでプロジェクトを構築する場合、`pom.xml`ファイルに次の
<dependency>
<groupId>cn.idev.excel</groupId>
<artifactId>fastexcel</artifactId>
<version>1.0.0</version>
<version>1.1.0</version>
</dependency>
```
### Gradle
@ -45,9 +45,11 @@ Mavenでプロジェクトを構築する場合、`pom.xml`ファイルに次の
Gradleでプロジェクトを構築する場合、build.gradleファイルに次の構成を含めてください
```gradle
dependencies {
implementation 'cn.idev.excel:fastexcel:1.0.0'
implementation 'cn.idev.excel:fastexcel:1.1.0'
}
```
## 更新する
具体的なバージョンアップ内容は[バージョンアップ詳細](update.md)で確認できます。 [Maven Central Repository](https://mvnrepository.com/artifact/cn.idev.excel/fastexcel) 内のすべてのバージョンをクエリすることもできます。
## EasyExcelとFastExcelの違い
- FastExcelはEasyExcelのすべての機能をサポートしていますが、FastExcelのパフォーマンスはより良く、より安定しています。
- FastExcelとEasyExcelのAPIは完全に一致しているため、シームレスに切り替えることができます。
@ -68,7 +70,7 @@ EasyExcelの依存関係をFastExcelの依存関係に置き換えます。以
<dependency>
<groupId>cn.idev.excel</groupId>
<artifactId>fastexcel</artifactId>
<version>1.0.0</version>
<version>1.1.0</version>
</dependency>
```
### 2. コードの修正

View File

@ -1 +0,0 @@
1

View File

@ -28,11 +28,27 @@
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>5.2.5</version>
<exclusions>
<exclusion>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</exclusion>
<exclusion>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.5</version>
<exclusions>
<exclusion>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>

View File

@ -20,7 +20,7 @@
<properties>
<revision>1.0.0</revision>
<revision>1.1.0</revision>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jdk.version>1.8</jdk.version>
<gpg.skip>true</gpg.skip>

View File

@ -1,9 +1,11 @@
# 1.1.0
此次升级主要修复历史 BUG同时剔除了部分依赖库保证 `MIT` 协议下的使用
此次升级主要修复 [EasyExcel](https://github.com/alibaba/easyexcel) 历史 BUG同时剔除了部分依赖库保证符合 `MIT` 协议的相关规范
具体更新内容如下:
- 【改进】移除 `itext` 依赖库,将 `转换PDF` 功能迁移至新项目;
- 【修复】fill填充空数据可能导致行数据错乱的问题
- 【修复】自定义数据格式可能导致数据读取失败的问题;
- 【优化】例行升级依赖的Jar包版本;
- 【优化】增加报错内容详细信息;
- 【优化】更新代码格式和部分错别字。
- 【优化】更新代码格式和部分错别字;
- 【优化】更新部分文档和使用说明。