1 2005-05-07 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
2 * Mono.GetOptions.Useful/CommonCompilerOptions.cs: some refactored code coming from
3 mbas' CompilerOptions. Added overridable string [] AssembliesToReferenceSoftly
4 * Mono.GetOptions/Options.cs: new constructor adds support to use a provided ErrorReporter
5 also added overridable string AdditionalBannerInfo readonly property
6 * Mono.GetOptions/OptionList.cs: AdditionalBannerInfo is porcessed byt ShowBanner
8 2005-05-09 Raja R Harinath <rharinath@novell.com>
9 * Mono.GetOptions.Useful/CommonCompilerOptions.cs (AddedReference):
10 Support multiple assemblies separated by commas.
12 2005-05-07 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
13 * Mono.GetOptions/Options.cs: new constructor adds possibility to not break parameter values at commas
14 * Mono.GetOptions/OptionDetail.cs: check Options.DontSplitOnCommas when parsing values.
15 * Mono.GetOptions.Useful/CommonCompilerOptions.cs ask base class to leave alone commas.
17 2005-05-06:3 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
18 * Adding Mono.GetOptions.Useful directory for new namespace
19 * Added Mono.GetOptions.Useful/CommonCompilerOptions.cs with useful option processing
20 for compilers targetting the managed world. mbas is the first client.
22 2005-05-06:2 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
23 * Adding Samples directory with mcat Sample (changed main Makefile but didn't add to the SUBDIRS)
24 * Mono.GetOptions/Options.cs, Mono.GetOptions/OptionList
25 An overrideable DefaultArgumentProcessor was added to base class Options that just collects them
26 to the string[] RemainingArguments property as before. It is a virtual method, but it can also be
27 overriden by another method tagged with the ArgumentProcessorAttribute in the derived class
28 to stay binary compatible with old code.
29 * Added Mono.GetOptions/KillOptionAttribute.cs
30 This new attribute permit to hide (kill) an inherited option when overriding the virtual base member.
31 * Added Mono/AdditionalInfoAttribute.cs
32 This new attribute permit to add some extra text at the end of the automatically generated help screen
33 * Added Mono/ReportBugsToAttribute.cs
34 This new attribute adds a "Report bugs to <Url>" message at the end of the automatically generated help screen
36 2005-05-06 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
37 * Mono.GetOptions/Options.cs
38 Added helper properties string FirstArgument, SecondArgument, ThirdArgument, FourthArgument,
39 FifthArgument and bool GotNoArguments
40 Added a helper property bool RunningOnWindows
41 Added new constructor Options(string[] args) and an overridable InitializeOtherDefaults method
42 to allow one-line construction and options processing
43 * Mono.GetOptions/OptionDetails.cs
44 Cleaning some logic to avoid throwing exceptions during option parsing
45 Corrected verbose message when setting a boolean option to show the real value being set
47 2005-02-28 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
48 * Mono.GetOptions/OptionAttribute.cs, Mono.GetOptions/OptionDetails.cs, Mono.GetOptions/OptionList:
49 Implemented support for vbc style booleans: /debug+ /debug- . Usage: [Option("debug", VBCStyleBoolean = true)]
50 Implemented support for second level help screen. Usage: [Option("advanced stuff", SecondLevelHelp = true)]
51 Better alignment for descriptions, specially multiline
52 ArgumentProcessor-marked method now is called while processing options to allow positional processing
54 2005-02-03 Manjula GHM <mmanjula@novell.com>
55 * Mono.GetOptions.csproj modifed to reflect new changes
57 2005-01-04 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
58 * Mono.GetOptions/OptionList.cs: Corrected wrong assumption on string length that caused a exception when a
59 single-dash argument was being normalized. Now a single-dash is returned a non-processed argument.
60 The app driver has to deal with it if it should carry any specific meaning. Bug # 70480
62 2004-10-12 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
63 * every *.cs: moved to namespace-based subdirectories as is the norm in Mono
64 * Mono.GetOptions.dll.sources: adjusted to new sources locations
66 2004-09-15 John Luke <john.luke@gmail.com>
67 * AssemblyInfo.cs: add CLSCompliant(true) attribute
69 2004-08-11 Jambunathan K <kjambunathan@novell.com>
70 * OptionList.cs: Fixed NormalizeArgs so that when an option starts
71 with a '/' or a '-', the option and the argument pair gets split
72 at the first ':' or '='. For example /out:"C:\HelloWorld.exe"
73 gets split up as /out and "C:\HelloWorld.exe".
75 2004-08-08 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
76 * OptionDetails.cs : Well format options longform with a double-dash only if parsingMode has OptionsParsingMode.GNU_DoubleDash set
77 * new OptionsParsingMode.cs source, extracted from OptionList.cs - added GNU_DoubleDash member to the enum
78 * Mono.GetOptions.dll.sources: added OptionsParsingMode.cs
80 2004-07-10 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
81 * OptionDetails.cs : ExtractParamName method called on constructor instead of code being called on demand (maybe too late)
83 Handling exceptions on conversion of values, and giving a message a bit friendlier
85 2004-05-31 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
86 * OptionDetails.cs : ShortForm member now a string to favor some simplifications, fixes for Bug 58672
87 * OptionList.cs : Fixes for Bug 58672 and better handling for mixed-form options (linux/windows)
89 2004-05-31 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
90 * OptionDetails.cs: Assemble an one-line authors' list in about processor (also abandon after about)
92 2004-04-08 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
93 * OptionDetails.cs: Implemented Jonathan Pryor request for multiplicity in boolean properties
95 2004-03-31 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
96 * AssemblyInfo.cs: Bumped version and completed some more infos
97 * OptionDetails.cs: Incorporated C.J. Collier patch to make help screen more Windows-ish when mode==windows
99 2003-08-25 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
100 * ArgumentProcessorAttribute.cs, OptionAttribute.cs:
101 - Copyright attribution was missing
103 2003-06-16 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
105 - Now handles correctly options specifiying maxOccurs != 1 (that was preventing mbas from being useable)
106 - Now indicates if option parsing consumed a parameter or not (also checks if it is available first)
107 - Now multivalued options can either be given as many pairs option/parameter and also as a pair option/comma-separated-list, and both
108 Example: -r System.Data -r System.Xml or /r System.Data,System.Xml
109 - Now it is more lax in the form matching: -r /r -reference --reference /reference are valid for a ('r',"reference") option
110 * Options.cs : new BreakSingleDashManyLettersIntoManyOptions field to make more GNUish parsing of single letter options.
111 Makes -zxf become -z -x -f if set to true
113 2003-01-30 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
115 * OptionDetails.cs : now handle composite arguments '/option:suboption'
117 2003-01-20 Duncan Mak <duncan@ximian.com>
119 * list.unix: Remove the extra reference to ArgumentProcessorAttribute.cs
121 2002-09-03 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
123 * added AboutAttribute.cs, AuthorAttribute.cs, OptionAttribute.cs,
124 UsageComplementAttribute.cs, OptionDetails.cs, Options.cs.
125 Now reflection is used to drive the options processing.
127 * added GetOptTest test subproject
129 2002-08-30 Juli Mallett <jmallett@FreeBSD.org>
131 * list.unix, makefile.gnu: Added build glue for UNIX.