2005-11-12 Joshua Tauberer * Mono.GetOptions/OptionDetails.cs: Don't split on commas for options that have a MaxOccurs of 1 (it would try, show an error, and ignore text after comma). 2005-08-05 Rafael Teixeira * Mono.GetOptions.Useful/CommonCompilerOptions.cs: fix some descriptions 2005-06-08:2 Rafael Teixeira * Mono.GetOptions/OptionDetails.cs: oops, mcat breaks as it has more than one option with a blank long form 2005-06-08 Rafael Teixeira * Mono.GetOptions/OptionDetails.cs: Checks alternate forms first (new method IsAlternate(string compoundArg)) this allow for '/debug[+|-]' coexisting with independently listed/described '/debug:full' and '/debug:pdbonly' as needed by mbas. Alternate forms are based on the option long form name ('debug' not 'g'). * Mono.GetOptions/OptionList.cs: Register alternates with OptionDetails.LinkAlternatesInsideList(). Same reason. * Mono.GetOptions.Useful/CommonCompilerOptions.cs: fix /debug:full and /debug:pdbonly semantics while positioning the public flags * Mono.GetOptions/Options.cs: Implement new standard option /debugoptions (/~). 2005-06-08 Rafael Teixeira * oops Mono.IsPartOfPackage renamed to Mono.IsPartOfPackageAttribute, as mandates the convention 2005-06-06 Rafael Teixeira * Mono.GetOptions/OptionList.cs: Some refactoring of Gert's contribution * Added Mono/IsPartOfPackage.cs: new informational assembly attribute 2005-06-05 Gert Driesen * Mono.GetOptions/OptionList.cs: Support quoted arguments in response files. Fixes bug #65484. 2005-05-23:2 Rafael Teixeira * Mono.GetOptions/OptionList.cs: Oops, forgot some debugging messages 2005-05-23 Rafael Teixeira * Mono.GetOptions/Options.cs: To make code using Mono.GetOptions Unit-Testable, as suggested by Rodrigo 'Bamboo' Oliveira, assume the assembly with the Options-derived class to be the "entry" one instead of the one pointed by Reflection, unless some Mono.GetOptions provided class is used directly 2005-05-18 Rafael Teixeira * Mono.GetOptions/Options.cs: Reverting ABI change on RemainingArguments (will break packaged MonoDevelop 0.7) 2005-05-16:3 Rafael Teixeira * Mono.GetOptions.Useful/CommonCompilerOptions.cs: fix for #74954 part 2 "Ensure assembly is added to TypeManager if path separator characters are part of assembly name" 2005-05-16:2 Rafael Teixeira * Mono.GetOptions.Useful/CommonCompilerOptions.cs: fix for #74954 current dir should be searched for referenced assemblies 2005-05-16 Rafael Teixeira * Mono.GetOptions.Useful/CommonCompilerOptions.cs: some refactored code coming from mbas' CompilerOptions. Added overridable string [] AssembliesToReferenceSoftly * Mono.GetOptions/Options.cs: new constructor adds support to use a provided ErrorReporter also added overridable string AdditionalBannerInfo readonly property * Mono.GetOptions/OptionList.cs: AdditionalBannerInfo is processed by ShowBanner 2005-05-09 Raja R Harinath * Mono.GetOptions.Useful/CommonCompilerOptions.cs (AddedReference): Support multiple assemblies separated by commas. 2005-05-07 Rafael Teixeira * Mono.GetOptions/Options.cs: new constructor adds possibility to not break parameter values at commas * Mono.GetOptions/OptionDetail.cs: check Options.DontSplitOnCommas when parsing values. * Mono.GetOptions.Useful/CommonCompilerOptions.cs ask base class to leave alone commas. 2005-05-06:3 Rafael Teixeira * Adding Mono.GetOptions.Useful directory for new namespace * Added Mono.GetOptions.Useful/CommonCompilerOptions.cs with useful option processing for compilers targetting the managed world. mbas is the first client. 2005-05-06:2 Rafael Teixeira * Adding Samples directory with mcat Sample (changed main Makefile but didn't add to the SUBDIRS) * Mono.GetOptions/Options.cs, Mono.GetOptions/OptionList An overrideable DefaultArgumentProcessor was added to base class Options that just collects them to the string[] RemainingArguments property as before. It is a virtual method, but it can also be overriden by another method tagged with the ArgumentProcessorAttribute in the derived class to stay binary compatible with old code. * Added Mono.GetOptions/KillOptionAttribute.cs This new attribute permit to hide (kill) an inherited option when overriding the virtual base member. * Added Mono/AdditionalInfoAttribute.cs This new attribute permit to add some extra text at the end of the automatically generated help screen * Added Mono/ReportBugsToAttribute.cs This new attribute adds a "Report bugs to " message at the end of the automatically generated help screen 2005-05-06 Rafael Teixeira * Mono.GetOptions/Options.cs Added helper properties string FirstArgument, SecondArgument, ThirdArgument, FourthArgument, FifthArgument and bool GotNoArguments Added a helper property bool RunningOnWindows Added new constructor Options(string[] args) and an overridable InitializeOtherDefaults method to allow one-line construction and options processing * Mono.GetOptions/OptionDetails.cs Cleaning some logic to avoid throwing exceptions during option parsing Corrected verbose message when setting a boolean option to show the real value being set 2005-02-28 Rafael Teixeira * Mono.GetOptions/OptionAttribute.cs, Mono.GetOptions/OptionDetails.cs, Mono.GetOptions/OptionList: Implemented support for vbc style booleans: /debug+ /debug- . Usage: [Option("debug", VBCStyleBoolean = true)] Implemented support for second level help screen. Usage: [Option("advanced stuff", SecondLevelHelp = true)] Better alignment for descriptions, specially multiline ArgumentProcessor-marked method now is called while processing options to allow positional processing 2005-02-03 Manjula GHM * Mono.GetOptions.csproj modifed to reflect new changes 2005-01-04 Rafael Teixeira * Mono.GetOptions/OptionList.cs: Corrected wrong assumption on string length that caused a exception when a single-dash argument was being normalized. Now a single-dash is returned a non-processed argument. The app driver has to deal with it if it should carry any specific meaning. Bug # 70480 2004-10-12 Rafael Teixeira * every *.cs: moved to namespace-based subdirectories as is the norm in Mono * Mono.GetOptions.dll.sources: adjusted to new sources locations 2004-09-15 John Luke * AssemblyInfo.cs: add CLSCompliant(true) attribute 2004-08-11 Jambunathan K * OptionList.cs: Fixed NormalizeArgs so that when an option starts with a '/' or a '-', the option and the argument pair gets split at the first ':' or '='. For example /out:"C:\HelloWorld.exe" gets split up as /out and "C:\HelloWorld.exe". 2004-08-08 Rafael Teixeira * OptionDetails.cs : Well format options longform with a double-dash only if parsingMode has OptionsParsingMode.GNU_DoubleDash set * new OptionsParsingMode.cs source, extracted from OptionList.cs - added GNU_DoubleDash member to the enum * Mono.GetOptions.dll.sources: added OptionsParsingMode.cs 2004-07-10 Rafael Teixeira * OptionDetails.cs : ExtractParamName method called on constructor instead of code being called on demand (maybe too late) Fix for Bug 61188 Handling exceptions on conversion of values, and giving a message a bit friendlier 2004-05-31 Rafael Teixeira * OptionDetails.cs : ShortForm member now a string to favor some simplifications, fixes for Bug 58672 * OptionList.cs : Fixes for Bug 58672 and better handling for mixed-form options (linux/windows) 2004-05-31 Rafael Teixeira * OptionDetails.cs: Assemble an one-line authors' list in about processor (also abandon after about) 2004-04-08 Rafael Teixeira * OptionDetails.cs: Implemented Jonathan Pryor request for multiplicity in boolean properties 2004-03-31 Rafael Teixeira * AssemblyInfo.cs: Bumped version and completed some more infos * OptionDetails.cs: Incorporated C.J. Collier patch to make help screen more Windows-ish when mode==windows 2003-08-25 Rafael Teixeira * ArgumentProcessorAttribute.cs, OptionAttribute.cs: - Copyright attribution was missing 2003-06-16 Rafael Teixeira * OptionDetails.cs : - Now handles correctly options specifiying maxOccurs != 1 (that was preventing mbas from being useable) - Now indicates if option parsing consumed a parameter or not (also checks if it is available first) - Now multivalued options can either be given as many pairs option/parameter and also as a pair option/comma-separated-list, and both Example: -r System.Data -r System.Xml or /r System.Data,System.Xml - Now it is more lax in the form matching: -r /r -reference --reference /reference are valid for a ('r',"reference") option * Options.cs : new BreakSingleDashManyLettersIntoManyOptions field to make more GNUish parsing of single letter options. Makes -zxf become -z -x -f if set to true 2003-01-30 Rafael Teixeira * OptionDetails.cs : now handle composite arguments '/option:suboption' 2003-01-20 Duncan Mak * list.unix: Remove the extra reference to ArgumentProcessorAttribute.cs 2002-09-03 Rafael Teixeira * added AboutAttribute.cs, AuthorAttribute.cs, OptionAttribute.cs, UsageComplementAttribute.cs, OptionDetails.cs, Options.cs. Now reflection is used to drive the options processing. * added GetOptTest test subproject 2002-08-30 Juli Mallett * list.unix, makefile.gnu: Added build glue for UNIX.