2005-05-07 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
[mono.git] / mcs / class / Mono.GetOptions / ChangeLog
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
7
8 2005-05-09  Raja R Harinath  <rharinath@novell.com>
9         * Mono.GetOptions.Useful/CommonCompilerOptions.cs (AddedReference):
10         Support multiple assemblies separated by commas.
11
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.
16
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.
21
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
35         
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
46
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
53
54 2005-02-03  Manjula GHM  <mmanjula@novell.com>
55         * Mono.GetOptions.csproj modifed to reflect new changes
56
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 
61
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
65         
66 2004-09-15  John Luke  <john.luke@gmail.com>
67         * AssemblyInfo.cs: add CLSCompliant(true) attribute
68
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".
74
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
79
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)
82                                                  Fix for Bug 61188
83                                                  Handling exceptions on conversion of values, and giving a message a bit friendlier 
84
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)
88
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)
91
92 2004-04-08  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
93         * OptionDetails.cs: Implemented Jonathan Pryor request for multiplicity in boolean properties
94
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
98
99 2003-08-25  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
100         * ArgumentProcessorAttribute.cs, OptionAttribute.cs:
101                 - Copyright attribution was missing
102
103 2003-06-16  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
104     * OptionDetails.cs :
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
112
113 2003-01-30  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
114
115     * OptionDetails.cs : now handle composite arguments '/option:suboption'
116
117 2003-01-20  Duncan Mak  <duncan@ximian.com>
118
119     * list.unix: Remove the extra reference to ArgumentProcessorAttribute.cs
120       
121 2002-09-03  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
122
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.
126
127         * added GetOptTest test subproject
128
129 2002-08-30  Juli Mallett  <jmallett@FreeBSD.org>
130
131         * list.unix, makefile.gnu: Added build glue for UNIX.