Remove the project generator support for Visual Studio 6.0, .Net (2002) and 2003. This support is unmaintained for quite some time and these compilers and their C libraries are not even supported by Microsoft anymore.
* build/generator/gen_msvc_dsp.py Remove file.
* build/generator/gen_vcnet_vcproj.py (get_external_project): Remove function; falling back to ancestor.
* build/generator/gen_win.py (get_external_project): Remove serf project hack that wasn't used since 1.7.
--config-option: Warn when the FILE:SECTION:OPTION combination may be invalid.
Currently there are false negatives: if each component is individually known, then there won't be a warning, even if the tuple as a whole is invalid.
The implementation is as follows: first, parse svn_config.h to generate a list of valid file/section/option names:
* subversion/libsvn_subr/config_keys.inc: Not a versioned file, but will be generated by gen-make.py.
* build/generator/gen_base.py (collections): Import. (GeneratorBase.FileSectionOptionEnum): New class. (GeneratorBase._client_configuration_defines): New method. (GeneratorBase.write_config_keys): New method. (IncludeDependencyInfo._scan_for_includes): Exempt config_keys.inc from dependency scanning.
Second, have the --config-option parser warn to stderr about unknown values:
* subversion/include/private/svn_cmdline_private.h (svn_cmdline__parse_config_option): Add PREFIX argument, document new functionality.
* subversion/libsvn_subr/cmdline.c (config_keys.inc): Include. (most_similar, string_in_array, validate_config_option): New functions. (svn_cmdline__parse_config_option): Validate the config option's coordinates and warn if they may be invalid.
* subversion/svn/similarity.c (svn_cl__similarity_check): Cross-reference most_similar(). No functional change.
Third, add a unit test:
* subversion/tests/cmdline/getopt_tests.py (getopt_config_option): New test.
Finally, update callers for the trivial signature change: