diff --git a/.github/workflows/maven-v1-pulls.yml b/.github/workflows/maven-v1-pulls.yml index 1a68017c23..9bb2b8af5d 100644 --- a/.github/workflows/maven-v1-pulls.yml +++ b/.github/workflows/maven-v1-pulls.yml @@ -6,23 +6,26 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest strategy: matrix: - java: [ 8 ] + java: [ "8" ] steps: - uses: actions/checkout@v2 - name: Set up Java - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: java-version: ${{ matrix.java }} + distribution: 'temurin' - name: Cache local Maven repository - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}-maven- - name: Build with Maven - run: mvn -B verify --file pom.xml + run: | + ulimit -n 16384 + mvn -B verify --file pom.xml -Dsurefire.forkCount=4 -DargLine="-XX:-OmitStackTraceInFastThrow" -Dsurefire.useFile=false diff --git a/.github/workflows/maven-v1.yml b/.github/workflows/maven-v1.yml index 5d2460464e..fbb3e359fc 100644 --- a/.github/workflows/maven-v1.yml +++ b/.github/workflows/maven-v1.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest strategy: matrix: java: [ 8 ] @@ -15,14 +15,15 @@ jobs: steps: - uses: actions/checkout@v2 - name: Set up Java - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: java-version: ${{ matrix.java }} server-id: ossrh server-username: MAVEN_USERNAME server-password: MAVEN_PASSWORD + distribution: 'temurin' - name: Cache local Maven repository - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} @@ -30,7 +31,8 @@ jobs: ${{ runner.os }}-maven- - name: Build with Maven, Deploy snapshot to maven central run: | - mvn --no-transfer-progress -B verify --file pom.xml + ulimit -n 16384 + mvn --no-transfer-progress -B verify --file pom.xml -Dsurefire.forkCount=4 -DargLine="-XX:-OmitStackTraceInFastThrow" -Dsurefire.useFile=false export MY_JAVA_VERSION=`java -version 2>&1 | head -1 | cut -d'"' -f2 | sed '/^1\./s///' | cut -d'.' -f1` echo "JAVA VERSION" ${MY_JAVA_VERSION} if [[ ${MY_JAVA_VERSION} == "8" ]]; diff --git a/.github/workflows/next-snapshot-v1.yml b/.github/workflows/next-snapshot-v1.yml index 08f840a014..470d231ef6 100644 --- a/.github/workflows/next-snapshot-v1.yml +++ b/.github/workflows/next-snapshot-v1.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 @@ -21,14 +21,15 @@ jobs: with: python-version: 2.7 - name: Set up Java 11 - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: java-version: 11 server-id: ossrh server-username: MAVEN_USERNAME server-password: MAVEN_PASSWORD + distribution: 'temurin' - name: Cache local Maven repository - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} @@ -37,6 +38,7 @@ jobs: - name: Run pre release script id: preRelease run: | + ulimit -n 16384 # export GPG_TTY=$(tty) export MY_POM_VERSION=`mvn -q -Dexec.executable="echo" -Dexec.args='${projects.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec` if [[ $MY_POM_VERSION =~ ^.*SNAPSHOT$ ]]; diff --git a/.github/workflows/prepare-release-v1.yml b/.github/workflows/prepare-release-v1.yml index 14b99d18f1..f016a01ec6 100644 --- a/.github/workflows/prepare-release-v1.yml +++ b/.github/workflows/prepare-release-v1.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 @@ -21,14 +21,15 @@ jobs: with: python-version: '3.10' - name: Set up Java 8 - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: java-version: 8 server-id: ossrh server-username: MAVEN_USERNAME server-password: MAVEN_PASSWORD + distribution: 'temurin' - name: Cache local Maven repository - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} @@ -37,6 +38,7 @@ jobs: - name: Run prepare release script id: prepare-release run: | + ulimit -n 16384 export MY_POM_VERSION=`mvn -q -Dexec.executable="echo" -Dexec.args='${projects.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec` if [[ $MY_POM_VERSION =~ ^.*SNAPSHOT$ ]]; then diff --git a/.github/workflows/release-v1.yml b/.github/workflows/release-v1.yml index 225330eb3a..b25db0adac 100644 --- a/.github/workflows/release-v1.yml +++ b/.github/workflows/release-v1.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 @@ -21,14 +21,15 @@ jobs: with: python-version: '3.10' - name: Set up Java 8 - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: java-version: 8 server-id: ossrh server-username: MAVEN_USERNAME server-password: MAVEN_PASSWORD + distribution: 'temurin' - name: Cache local Maven repository - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} @@ -37,6 +38,7 @@ jobs: - name: Run pre release script id: preRelease run: | + ulimit -n 16384 # export GPG_TTY=$(tty) export MY_POM_VERSION=`mvn -q -Dexec.executable="echo" -Dexec.args='${projects.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec` if [[ $MY_POM_VERSION =~ ^.*SNAPSHOT$ ]]; diff --git a/modules/swagger-parser/src/main/java/io/swagger/parser/util/SwaggerDeserializer.java b/modules/swagger-parser/src/main/java/io/swagger/parser/util/SwaggerDeserializer.java index 956ff379c7..166b7d2b30 100644 --- a/modules/swagger-parser/src/main/java/io/swagger/parser/util/SwaggerDeserializer.java +++ b/modules/swagger-parser/src/main/java/io/swagger/parser/util/SwaggerDeserializer.java @@ -1269,7 +1269,7 @@ public Info info(ObjectNode node, String location, ParseResult result) { License license = license(obj, location, result); info.license(license); - value = getString("version", node, false, location, result); + value = getString("version", node, true, location, result); info.version(value); // extra keys diff --git a/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java b/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java index 610bce9666..1fb5d47e1b 100644 --- a/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java +++ b/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java @@ -1876,4 +1876,12 @@ public void test20SafeURLResolvingWithLocalhost() throws IOException { new SwaggerParser().read(jsonNodeSwagger, null, parseOptions); }); } + + @Test + public void testIssueSwg14378() { + + SwaggerDeserializationResult result = new SwaggerParser().readWithInfo("src/test/resources/issue-swg-14378.yaml", null, false); + assertNotNull(result); + assertEquals("attribute info.version is missing",result.getMessages().get(0)); + } } diff --git a/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerReaderTest.java b/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerReaderTest.java index 503187855d..e5dd978186 100644 --- a/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerReaderTest.java +++ b/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerReaderTest.java @@ -251,6 +251,7 @@ public void testIssue205() { "swagger: '2.0'\n" + "info:\n" + " title: nice\n" + + " version: '1'\n" + "paths: {}\n" + "definitions:\n" + " Empty:\n" + diff --git a/modules/swagger-parser/src/test/resources/issue-swg-14378.yaml b/modules/swagger-parser/src/test/resources/issue-swg-14378.yaml new file mode 100644 index 0000000000..e82ab1d2f8 --- /dev/null +++ b/modules/swagger-parser/src/test/resources/issue-swg-14378.yaml @@ -0,0 +1,10 @@ +swagger: "2.0" +info: + description: some description + title: data +paths: + /tickets: + get: + responses: + 200: + description: data \ No newline at end of file diff --git a/pom.xml b/pom.xml index 7d0c2e0bf3..453b90d8fe 100644 --- a/pom.xml +++ b/pom.xml @@ -127,7 +127,7 @@ maven-compiler-plugin - 3.11.0 + 3.13.0 1.8 1.8