| <?xml version="1.0"?> |
| <!-- |
| 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/maven-v4_0_0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <parent> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-parent</artifactId> |
| <version>40</version> |
| </parent> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-csv</artifactId> |
| <version>1.4</version> |
| <name>Apache Commons CSV</name> |
| <url>http://commons.apache.org/proper/commons-csv/</url> |
| <description> |
| The Apache Commons CSV library provides a simple interface for reading and writing |
| CSV files of various types. |
| </description> |
| |
| <dependencies> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>4.12</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>commons-io</groupId> |
| <artifactId>commons-io</artifactId> |
| <version>2.5</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-lang3</artifactId> |
| <version>3.4</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.h2database</groupId> |
| <artifactId>h2</artifactId> |
| <version>1.4.182</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <developers> |
| <developer> |
| <id>bayard</id> |
| <name>Henri Yandell</name> |
| <email>bayard@apache.org</email> |
| <organization>The Apache Software Foundation</organization> |
| </developer> |
| <developer> |
| <name>Martin van den Bemt</name> |
| <id>mvdb</id> |
| <email>mvdb@apache.org</email> |
| <organization>The Apache Software Foundation</organization> |
| </developer> |
| <developer> |
| <name>Yonik Seeley</name> |
| <id>yonik</id> |
| <email>yonik@apache.org</email> |
| <organization>The Apache Software Foundation</organization> |
| </developer> |
| <developer> |
| <name>Emmanuel Bourg</name> |
| <id>ebourg</id> |
| <email>ebourg@apache.org</email> |
| <organization>Apache</organization> |
| </developer> |
| <developer> |
| <name>Gary Gregory</name> |
| <id>ggregory</id> |
| <email>ggregory@apache.org</email> |
| <url>http://www.garygregory.com</url> |
| <timezone>-5</timezone> |
| </developer> |
| <developer> |
| <name>Benedikt Ritter</name> |
| <id>britter</id> |
| <email>britter@apache.org</email> |
| <organization>The Apache Software Foundation</organization> |
| </developer> |
| </developers> |
| <contributors> |
| <contributor> |
| <name>Bob Smith</name> |
| </contributor> |
| </contributors> |
| |
| <scm> |
| <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/csv/trunk</connection> |
| <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/csv/trunk</developerConnection> |
| <url>http://svn.apache.org/viewvc/commons/proper/csv/trunk</url> |
| </scm> |
| |
| <issueManagement> |
| <system>jira</system> |
| <url>http://issues.apache.org/jira/browse/CSV</url> |
| </issueManagement> |
| |
| <distributionManagement> |
| <site> |
| <id>apache.website</id> |
| <name>Apache Commons Site</name> |
| <url>scm:svn:https://svn.apache.org/repos/infra/websites/production/commons/content/proper/commons-csv/</url> |
| </site> |
| </distributionManagement> |
| |
| <properties> |
| <commons.release.version>1.3</commons.release.version> |
| <commons.release.desc>(Java 6.0+)</commons.release.desc> |
| <!-- The RC version used in the staging repository URL. --> |
| <commons.rc.version>RC1</commons.rc.version> |
| <commons.componentid>csv</commons.componentid> |
| <commons.jira.id>CSV</commons.jira.id> |
| <commons.jira.pid>12313222</commons.jira.pid> |
| <maven.compiler.source>1.6</maven.compiler.source> |
| <maven.compiler.target>1.6</maven.compiler.target> |
| <!-- Ensure copies work OK (can be removed later when this is in parent POM) --> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> |
| <commons.encoding>UTF-8</commons.encoding> |
| |
| <checkstyle.version>2.17</checkstyle.version> |
| <checkstyle.header.file>${basedir}/LICENSE-header.txt</checkstyle.header.file> |
| <checkstyle.resourceExcludes>LICENSE.txt, NOTICE.txt</checkstyle.resourceExcludes> |
| </properties> |
| |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-scm-publish-plugin</artifactId> |
| <version>1.1</version> |
| <configuration> |
| <ignorePathsToDelete> |
| <ignorePathToDelete>archives/**</ignorePathToDelete> |
| </ignorePathsToDelete> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| <plugins> |
| <plugin> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <configuration> |
| <testExcludes> |
| <testExclude>**/*Benchmark*</testExclude> |
| </testExcludes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <configuration> |
| <descriptors> |
| <descriptor>src/assembly/bin.xml</descriptor> |
| <descriptor>src/assembly/src.xml</descriptor> |
| </descriptors> |
| <tarLongFileMode>gnu</tarLongFileMode> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <excludes> |
| <exclude>**/perf/PerformanceTest.java</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| <!-- Allow checkstyle to be run interactively; keep in sync with report config below --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${checkstyle.version}</version> |
| <configuration> |
| <configLocation>${basedir}/checkstyle.xml</configLocation> |
| <enableRulesSummary>false</enableRulesSummary> |
| </configuration> |
| </plugin> |
| |
| <!-- We need to add our test data files to rat exclusions --> |
| <!-- Needed for command-line access, e.g mvn apache-rat:rat and mvn apache-rat:check --> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <version>${commons.rat.version}</version> |
| <!-- Should agree with config in reporting section --> |
| <configuration> |
| <excludes> |
| <!-- These files are used as test data and test result specifications. --> |
| <exclude>src/test/resources/csv-167/sample1.csv</exclude> |
| <exclude>src/test/resources/CSVFileParser/bom.csv</exclude> |
| <exclude>src/test/resources/CSVFileParser/test.csv</exclude> |
| <exclude>src/test/resources/CSVFileParser/test_default.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/test_default_comment.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/test_rfc4180.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/test_rfc4180_trim.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/testCSV85.csv</exclude> |
| <exclude>src/test/resources/CSVFileParser/testCSV85_default.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/testCSV85_ignoreEmpty.txt</exclude> |
| <!-- The ferc.gov files are included discussion in https://issues.apache.org/jira/browse/LEGAL-175. --> |
| <exclude>src/test/resources/ferc.gov/contract.txt</exclude> |
| <exclude>src/test/resources/ferc.gov/transaction.txt</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <reporting> |
| <plugins> |
| <!-- Keep in sync with build config above --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${checkstyle.version}</version> |
| <configuration> |
| <configLocation>${basedir}/checkstyle.xml</configLocation> |
| <enableRulesSummary>false</enableRulesSummary> |
| </configuration> |
| <!-- We need to specify reportSets because 2.9.1 creates two reports --> |
| <reportSets> |
| <reportSet> |
| <reports> |
| <report>checkstyle</report> |
| </reports> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-pmd-plugin</artifactId> |
| <version>3.6</version> |
| <configuration> |
| <targetJdk>${maven.compiler.target}</targetJdk> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>findbugs-maven-plugin</artifactId> |
| <version>3.0.3</version> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>taglist-maven-plugin</artifactId> |
| <version>2.4</version> |
| <configuration> |
| <tagListOptions> |
| <tagClasses> |
| <tagClass> |
| <displayName>Needs Work</displayName> |
| <tags> |
| <tag> |
| <matchString>TODO</matchString> |
| <matchType>exact</matchType> |
| </tag> |
| <tag> |
| <matchString>FIXME</matchString> |
| <matchType>exact</matchType> |
| </tag> |
| <tag> |
| <matchString>XXX</matchString> |
| <matchType>exact</matchType> |
| </tag> |
| </tags> |
| </tagClass> |
| <tagClass> |
| <displayName>Noteable Markers</displayName> |
| <tags> |
| <tag> |
| <matchString>NOTE</matchString> |
| <matchType>exact</matchType> |
| </tag> |
| <tag> |
| <matchString>NOPMD</matchString> |
| <matchType>exact</matchType> |
| </tag> |
| <tag> |
| <matchString>NOSONAR</matchString> |
| <matchType>exact</matchType> |
| </tag> |
| </tags> |
| </tagClass> |
| </tagClasses> |
| </tagListOptions> |
| </configuration> |
| </plugin> |
| <!-- |
| NOTE: this requires Maven 3.0.x; when used with Maven 2.2.1, the following error is seen: |
| Embedded error: Error rendering Maven report: org.dom4j.DocumentFactory cannot be cast to org.dom4j.DocumentFactory |
| --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>javancss-maven-plugin</artifactId> |
| <version>2.1</version> |
| </plugin> |
| |
| <!-- We need to add our test data files to rat exclusions --> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <version>${commons.rat.version}</version> |
| <!-- Should agree with config in build section --> |
| <configuration> |
| <excludes> |
| <exclude>src/test/resources/csv-167/sample1.csv</exclude> |
| <exclude>src/test/resources/CSVFileParser/bom.csv</exclude> |
| <exclude>src/test/resources/CSVFileParser/test.csv</exclude> |
| <exclude>src/test/resources/CSVFileParser/test_default.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/test_default_comment.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/test_rfc4180.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/test_rfc4180_trim.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/testCSV85.csv</exclude> |
| <exclude>src/test/resources/CSVFileParser/testCSV85_default.txt</exclude> |
| <exclude>src/test/resources/CSVFileParser/testCSV85_ignoreEmpty.txt</exclude> |
| <exclude>src/test/resources/ferc.gov/contract.txt</exclude> |
| <exclude>src/test/resources/ferc.gov/transaction.txt</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| </plugins> |
| </reporting> |
| |
| <profiles> |
| <profile> |
| <id>setup-checkout</id> |
| <activation> |
| <file> |
| <missing>site-content</missing> |
| </file> |
| </activation> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <version>1.8</version> |
| <executions> |
| <execution> |
| <id>prepare-checkout</id> |
| <phase>pre-site</phase> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| <configuration> |
| <tasks> |
| <exec executable="svn"> |
| <arg line="checkout --depth immediates ${commons.scmPubUrl} ${commons.scmPubCheckoutDirectory}" /> |
| </exec> |
| |
| <exec executable="svn"> |
| <arg line="update --set-depth exclude ${commons.scmPubCheckoutDirectory}/javadocs" /> |
| </exec> |
| |
| <pathconvert pathsep=" " property="dirs"> |
| <dirset dir="${commons.scmPubCheckoutDirectory}" includes="*" /> |
| </pathconvert> |
| <exec executable="svn"> |
| <arg line="update --set-depth infinity ${dirs}" /> |
| </exec> |
| </tasks> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| |
| |
| <!-- Profile to build and run the benchmarks. Use 'mvn test -Pbenchmark', and add '-Dbenchmark=foo' to run only the foo benchmark --> |
| <profile> |
| <id>benchmark</id> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.openjdk.jmh</groupId> |
| <artifactId>jmh-core</artifactId> |
| <version>1.5.2</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.openjdk.jmh</groupId> |
| <artifactId>jmh-generator-annprocess</artifactId> |
| <version>1.5.2</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>genjava</groupId> |
| <artifactId>gj-csv</artifactId> |
| <version>1.0</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>net.sourceforge.javacsv</groupId> |
| <artifactId>javacsv</artifactId> |
| <version>2.0</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.opencsv</groupId> |
| <artifactId>opencsv</artifactId> |
| <version>3.1</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>net.sf.supercsv</groupId> |
| <artifactId>super-csv</artifactId> |
| <version>2.2.1</version> |
| </dependency> |
| |
| <!-- Not in Maven Central, download manually from http://kasparov.skife.org/csv/csv-1.0.jar and install with: |
| mvn install:install-file -Dfile=E:/Java/skife.org/csv-1.0.jar -DgroupId=org.skife.kasparov -DartifactId=csv -Dversion=1.0 -Dpackaging=jar --> |
| <dependency> |
| <groupId>org.skife.kasparov</groupId> |
| <artifactId>csv</artifactId> |
| <version>1.0</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-lang3</artifactId> |
| <version>3.4</version> |
| </dependency> |
| </dependencies> |
| |
| <properties> |
| <skipTests>true</skipTests> |
| <benchmark>org.apache</benchmark> |
| </properties> |
| |
| <build> |
| <plugins> |
| <!-- Enable the compilation of the benchmarks --> |
| <plugin> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <configuration combine.self="override"> |
| <testIncludes> |
| <testInclude>**/*</testInclude> |
| </testIncludes> |
| </configuration> |
| </plugin> |
| |
| <!-- Hook the benchmarks to the test phase --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>exec-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>benchmark</id> |
| <phase>test</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| <configuration> |
| <classpathScope>test</classpathScope> |
| <executable>java</executable> |
| <arguments> |
| <argument>-classpath</argument> |
| <classpath/> |
| <argument>org.openjdk.jmh.Main</argument> |
| <argument>-rf</argument> |
| <argument>json</argument> |
| <argument>-rff</argument> |
| <argument>target/jmh-result.json</argument> |
| <argument>${benchmark}</argument> |
| </arguments> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| </project> |