avro icon indicating copy to clipboard operation
avro copied to clipboard

AVRO-2955: Avro-C: Support all Visual Studio versions from 2010 to 2019

Open kiyolee opened this issue 3 years ago • 4 comments

AVRO-2955: Avro-C: Support all Visual Studio versions from 2010 to 2019

Fix compiling using Visual Studio 2010|2013|2015|2017|2019. Fix building using either cmake/ninja or cmake/visualstudio. Fix testing using cmake/ninja. Improve Windows compatibility. All existing tests passed using all Visual Studio versions mentioned.

Make sure you have checked all steps below.

Jira

  • [X] My PR addresses the following Avro Jira issues and references them in the PR title. For example, "AVRO-1234: My Avro PR"
    • https://issues.apache.org/jira/browse/AVRO-2955
    • In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy. *** Imported a couple of files (getopt.h/getopt_long.c) from FreeBSD with modification for Windows. BSD licensed sources should be compatible with the license here.

Tests

  • [X] My PR adds the following unit tests OR does not need testing for this extremely good reason: *** No new functionality added. All existing tests passed.

Commits

  • [X] My commits all reference Jira issues in their subject lines. In addition, my commits follow the guidelines from "How to write a good git commit message":
    1. Subject is separated from body by a blank line
    2. Subject is limited to 50 characters (not including Jira issue reference)
    3. Subject does not end with a period
    4. Subject uses the imperative mood ("add", not "adding")
    5. Body wraps at 72 characters
    6. Body explains "what" and "why", not "how"

Documentation

  • [X] In case of new functionality, my PR adds documentation that describes how to use it.
    • All the public functions and the classes in the PR contain Javadoc that explain what it does *** No new functionality added.

kiyolee avatar Nov 07 '20 12:11 kiyolee

@kiyolee The PR is messed up somehow. It contains many unrelated commits. Also the following files have no licence headers:

  • lang/c/src/getopt/getopt.h
  • lang/c/src/getopt/getopt_long.c

martin-g avatar Jan 11 '22 08:01 martin-g

@martin-g Didn't aware the last pull rebase was messed up. Now fixed. The following files are originated from FreeBSD and modified to work with MSVC:

  • lang/c/src/getopt/getopt.h
  • lang/c/src/getopt/getopt_long.c

The license per file does exist and are kept unchanged. What have I missed?

kiyolee avatar Jan 11 '22 10:01 kiyolee

The license per file does exist and are kept unchanged. What have I missed?

The RAT test fails because the new files do not have the ASLv2 license. Since you are copying files from elsewhere we need to add an entry to the NOTICE file about that.

martin-g avatar Jan 11 '22 19:01 martin-g

❌ Deploy Preview for avro-website-preview failed.

🔨 Explore the source changes: 8c926e11ce9aba5732365b717c5df7f7da41f090

🔍 Inspect the deploy log: https://app.netlify.com/sites/avro-website-preview/deploys/6206759aa1fb7b00077d0121

netlify[bot] avatar Feb 11 '22 14:02 netlify[bot]