This is an automated email from the ASF dual-hosted git repository.
delei pushed a commit to branch release-2.0.0
in repository https://gitbox.apache.org/repos/asf/fesod.git
The following commit(s) were added to refs/heads/release-2.0.0 by this push:
new 7581affc feature: Add the support module to meet ASF policy
requirements (#780)
7581affc is described below
commit 7581affc0dbfdb0a8b0b6295e72503f88f37d7ed
Author: Shuxin Pan <[email protected]>
AuthorDate: Thu Jan 8 19:16:06 2026 +0800
feature: Add the support module to meet ASF policy requirements (#780)
* chore: rename license files for consistency
* chore: update project description to include 'Apache Fesod (Incubating)'
and remove fesod-distribution module
* chore: refactor package imports and add Empty class for support utilities
* chore: refactor package imports and add Empty class for support utilities
* chore: rename LICENSE-fastexcel-support.txt to LICENSE-spring-core.txt
and update license URLs
* chore: rename LICENSE-fastexcel-support.txt to LICENSE-spring-core.txt
and update license URLs
* chore: add Apache License header to Empty.java and clean up imports in
ModelBuildEventListener.java
* feature: update package references to shaded versions and rename related
files
* feature: update package references to shaded versions and rename related
files
* feature: add binary license and notice files for Apache Fesod project
* feature: rename binary license and notice files for consistency
* feature: rename binary license and notice files for consistency
* feature: update LICENSE file to include BSD 3-Clause License details
* feature: update LICENSE file to include BSD 3-Clause License details
* feature: remove resource exclusions for binary license and notice files
in pom.xml
---
LICENSE | 2 +-
dist/licenses/LICENSE-asm.txt | 27 +++++
...NSE-fastexcel-support.txt => LICENSE-cglib.txt} | 2 +-
fesod-shaded/pom.xml | 110 +++++++++++++++++++++
.../main/java/org/apache/fesod/support/Empty.java | 27 +++++
.../src/main/resources/META-INF/LICENSE | 54 ++++++++++
fesod-shaded/src/main/resources/META-INF/NOTICE | 7 ++
fesod-sheet/pom.xml | 5 +-
.../read/listener/ModelBuildEventListener.java | 2 +-
.../org/apache/fesod/sheet/util/BeanMapUtils.java | 10 +-
.../org/apache/fesod/sheet/util/ClassUtils.java | 2 +-
.../org/apache/fesod/sheet/util/FieldUtils.java | 2 +-
.../write/executor/ExcelWriteAddExecutor.java | 2 +-
pom.xml | 8 +-
14 files changed, 241 insertions(+), 19 deletions(-)
diff --git a/LICENSE b/LICENSE
index 261eeb9e..f49a4e16 100644
--- a/LICENSE
+++ b/LICENSE
@@ -198,4 +198,4 @@
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
- limitations under the License.
+ limitations under the License.
\ No newline at end of file
diff --git a/dist/licenses/LICENSE-asm.txt b/dist/licenses/LICENSE-asm.txt
new file mode 100644
index 00000000..631ee53c
--- /dev/null
+++ b/dist/licenses/LICENSE-asm.txt
@@ -0,0 +1,27 @@
+ASM: a very small and fast Java bytecode manipulation framework
+Copyright (c) 2000-2011 INRIA, France Telecom
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+3. Neither the name of the copyright holders nor the names of its
+ contributors may be used to endorse or promote products derived from
+ this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file
diff --git a/dist/licenses/LICENSE-fastexcel-support.txt
b/dist/licenses/LICENSE-cglib.txt
similarity index 99%
rename from dist/licenses/LICENSE-fastexcel-support.txt
rename to dist/licenses/LICENSE-cglib.txt
index 261eeb9e..f49a4e16 100644
--- a/dist/licenses/LICENSE-fastexcel-support.txt
+++ b/dist/licenses/LICENSE-cglib.txt
@@ -198,4 +198,4 @@
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
- limitations under the License.
+ limitations under the License.
\ No newline at end of file
diff --git a/fesod-shaded/pom.xml b/fesod-shaded/pom.xml
new file mode 100644
index 00000000..80e14bfc
--- /dev/null
+++ b/fesod-shaded/pom.xml
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.fesod</groupId>
+ <artifactId>fesod-parent</artifactId>
+ <version>${revision}</version>
+ </parent>
+
+ <artifactId>fesod-shaded</artifactId>
+ <name>Fesod Shaded</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>*</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>shade</goal>
+ </goals>
+ <configuration>
+ <createSourcesJar>true</createSourcesJar>
+
<createDependencyReducedPom>true</createDependencyReducedPom>
+
+ <artifactSet>
+ <includes>
+
<include>org.springframework:spring-core</include>
+ </includes>
+ </artifactSet>
+
+ <filters>
+ <filter>
+
<artifact>org.springframework:spring-core</artifact>
+ <includes>
+
<include>org/springframework/asm/**</include>
+
<include>org/springframework/cglib/**</include>
+ </includes>
+ </filter>
+ <filter>
+ <artifact>*:*</artifact>
+ <excludes>
+ <exclude>META-INF/LICENSE*</exclude>
+ <exclude>META-INF/NOTICE*</exclude>
+ </excludes>
+ </filter>
+ </filters>
+
+ <relocations>
+ <relocation>
+ <pattern>org.springframework</pattern>
+
<shadedPattern>org.apache.fesod.shaded</shadedPattern>
+ </relocation>
+ </relocations>
+
+ <transformers>
+ <transformer
implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
+ <resource>META-INF/LICENSE</resource>
+
<file>${project.basedir}/src/main/resources/META-INF/LICENSE</file>
+ </transformer>
+ <transformer
implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
+ <resource>META-INF/NOTICE</resource>
+
<file>${project.basedir}/src/main/resources/META-INF/NOTICE</file>
+ </transformer>
+ </transformers>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/fesod-shaded/src/main/java/org/apache/fesod/support/Empty.java
b/fesod-shaded/src/main/java/org/apache/fesod/support/Empty.java
new file mode 100644
index 00000000..fbbc5b82
--- /dev/null
+++ b/fesod-shaded/src/main/java/org/apache/fesod/support/Empty.java
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.fesod.support;
+
+/**
+ * empty
+ *
+ *
+ */
+public class Empty {}
diff --git a/LICENSE b/fesod-shaded/src/main/resources/META-INF/LICENSE
similarity index 80%
copy from LICENSE
copy to fesod-shaded/src/main/resources/META-INF/LICENSE
index 261eeb9e..fdae5dd2 100644
--- a/LICENSE
+++ b/fesod-shaded/src/main/resources/META-INF/LICENSE
@@ -199,3 +199,57 @@
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ =======================================================================
+ Apache Fesod(incubating) Subcomponents:
+
+ The Apache Fesod(incubating) project contains subcomponents with separate
copyright
+ notices and license terms. Your use of the source code for these
+ subcomponents is subject to the terms and conditions of the following
+ licenses.
+
+ ========================================================================
+ Apache License 2.0
+ ========================================================================
+ This product bundles modified portions of the Spring Framework,
+ which includes code derived from CGLIB.
+
+ * Source: https://github.com/spring-projects/spring-framework
+ * License: Apache License 2.0
+ * Shaded Package: org.apache.fesod.shaded
+
+ =======================================================================
+ BSD 3-Clause License
+ =======================================================================
+ The bundled Spring Framework includes code derived from ASM.
+
+ * Source: https://gitlab.ow2.org/asm/asm
+ * License: BSD 3-Clause License
+
+ ASM: a very small and fast Java bytecode manipulation framework
+ Copyright (c) 2000-2011 INRIA, France Telecom
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ 1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ 3. Neither the name of the copyright holders nor the names of its
+ contributors may be used to endorse or promote products derived from
+ this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/fesod-shaded/src/main/resources/META-INF/NOTICE
b/fesod-shaded/src/main/resources/META-INF/NOTICE
new file mode 100644
index 00000000..3c7833a7
--- /dev/null
+++ b/fesod-shaded/src/main/resources/META-INF/NOTICE
@@ -0,0 +1,7 @@
+Apache Fesod (Incubating)
+Copyright 2025 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+-----------------------------------------------------------------------
+This product includes software developed by the Spring Framework Project
(https://spring.io).
diff --git a/fesod-sheet/pom.xml b/fesod-sheet/pom.xml
index 50d7217a..d232ed26 100644
--- a/fesod-sheet/pom.xml
+++ b/fesod-sheet/pom.xml
@@ -52,8 +52,9 @@
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>cn.idev.excel</groupId>
- <artifactId>fastexcel-support</artifactId>
+ <groupId>org.apache.fesod</groupId>
+ <artifactId>fesod-shaded</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
diff --git
a/fesod-sheet/src/main/java/org/apache/fesod/sheet/read/listener/ModelBuildEventListener.java
b/fesod-sheet/src/main/java/org/apache/fesod/sheet/read/listener/ModelBuildEventListener.java
index 6f902b54..5d60b913 100644
---
a/fesod-sheet/src/main/java/org/apache/fesod/sheet/read/listener/ModelBuildEventListener.java
+++
b/fesod-sheet/src/main/java/org/apache/fesod/sheet/read/listener/ModelBuildEventListener.java
@@ -19,11 +19,11 @@
package org.apache.fesod.sheet.read.listener;
-import cn.idev.excel.support.cglib.beans.BeanMap;
import java.lang.reflect.Field;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Map;
+import org.apache.fesod.shaded.cglib.beans.BeanMap;
import org.apache.fesod.sheet.context.AnalysisContext;
import org.apache.fesod.sheet.enums.CellDataTypeEnum;
import org.apache.fesod.sheet.enums.HeadKindEnum;
diff --git
a/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/BeanMapUtils.java
b/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/BeanMapUtils.java
index 6c5ac834..3de02128 100644
--- a/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/BeanMapUtils.java
+++ b/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/BeanMapUtils.java
@@ -19,8 +19,8 @@
package org.apache.fesod.sheet.util;
-import cn.idev.excel.support.cglib.beans.BeanMap;
-import cn.idev.excel.support.cglib.core.DefaultNamingPolicy;
+import org.apache.fesod.shaded.cglib.beans.BeanMap;
+import org.apache.fesod.shaded.cglib.core.DefaultNamingPolicy;
/**
* bean utils
@@ -43,12 +43,12 @@ public class BeanMapUtils {
BeanMap.Generator gen = new BeanMap.Generator();
gen.setBean(bean);
gen.setContextClass(bean.getClass());
- gen.setNamingPolicy(FastExcelNamingPolicy.INSTANCE);
+ gen.setNamingPolicy(FesodSheetNamingPolicy.INSTANCE);
return gen.create();
}
- public static class FastExcelNamingPolicy extends DefaultNamingPolicy {
- public static final FastExcelNamingPolicy INSTANCE = new
FastExcelNamingPolicy();
+ public static class FesodSheetNamingPolicy extends DefaultNamingPolicy {
+ public static final FesodSheetNamingPolicy INSTANCE = new
FesodSheetNamingPolicy();
@Override
protected String getTag() {
diff --git
a/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/ClassUtils.java
b/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/ClassUtils.java
index 95993eea..0ce6247f 100644
--- a/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/ClassUtils.java
+++ b/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/ClassUtils.java
@@ -19,7 +19,6 @@
package org.apache.fesod.sheet.util;
-import cn.idev.excel.support.cglib.beans.BeanMap;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
@@ -40,6 +39,7 @@ import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import org.apache.commons.collections4.CollectionUtils;
+import org.apache.fesod.shaded.cglib.beans.BeanMap;
import org.apache.fesod.sheet.annotation.ExcelIgnore;
import org.apache.fesod.sheet.annotation.ExcelIgnoreUnannotated;
import org.apache.fesod.sheet.annotation.ExcelProperty;
diff --git
a/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/FieldUtils.java
b/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/FieldUtils.java
index 8b4eb952..24281f6f 100644
--- a/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/FieldUtils.java
+++ b/fesod-sheet/src/main/java/org/apache/fesod/sheet/util/FieldUtils.java
@@ -19,10 +19,10 @@
package org.apache.fesod.sheet.util;
-import cn.idev.excel.support.cglib.beans.BeanMap;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.Map;
+import org.apache.fesod.shaded.cglib.beans.BeanMap;
import org.apache.fesod.sheet.metadata.NullObject;
public class FieldUtils {
diff --git
a/fesod-sheet/src/main/java/org/apache/fesod/sheet/write/executor/ExcelWriteAddExecutor.java
b/fesod-sheet/src/main/java/org/apache/fesod/sheet/write/executor/ExcelWriteAddExecutor.java
index 5517e371..5715c88c 100644
---
a/fesod-sheet/src/main/java/org/apache/fesod/sheet/write/executor/ExcelWriteAddExecutor.java
+++
b/fesod-sheet/src/main/java/org/apache/fesod/sheet/write/executor/ExcelWriteAddExecutor.java
@@ -19,13 +19,13 @@
package org.apache.fesod.sheet.write.executor;
-import cn.idev.excel.support.cglib.beans.BeanMap;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import org.apache.commons.collections4.CollectionUtils;
+import org.apache.fesod.shaded.cglib.beans.BeanMap;
import org.apache.fesod.sheet.context.WriteContext;
import org.apache.fesod.sheet.enums.HeadKindEnum;
import org.apache.fesod.sheet.metadata.FieldCache;
diff --git a/pom.xml b/pom.xml
index 76a14cbe..853e430c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -49,6 +49,7 @@
<modules>
<module>fesod-bom</module>
<module>fesod-common</module>
+ <module>fesod-shaded</module>
<module>fesod-examples</module>
<module>fesod-sheet</module>
</modules>
@@ -83,7 +84,6 @@
<junit.version>5.13.4</junit.version>
<mockito.version>4.11.0</mockito.version>
<jazzer.junit.version>0.25.1</jazzer.junit.version>
- <fastexcel.support.version>1.3.0</fastexcel.support.version>
<surefire.jvm.args>-Xmx2g -Xms2g -XX:+HeapDumpOnOutOfMemoryError
-Dfile.encoding=UTF-8</surefire.jvm.args>
<surefire.jdk9plus.args></surefire.jdk9plus.args>
<argLine></argLine>
@@ -176,11 +176,7 @@
<artifactId>ehcache</artifactId>
<version>${ehcache.version}</version>
</dependency>
- <dependency>
- <groupId>cn.idev.excel</groupId>
- <artifactId>fastexcel-support</artifactId>
- <version>${fastexcel.support.version}</version>
- </dependency>
+
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]