Re: Features/SourceLayout
On Tue, 2008-03-25 at 11:29 +1300, Amos Jeffries wrote: > I missed that email from you. > I don't see any huge problems with that approach, as long as we make > sure its kept to. Same here, except for some minor human confusion about which file is really meant when someone says just "file.h". Regards Henrik
Re: Features/SourceLayout
Alex Rousskov wrote: On Tue, 2008-03-25 at 10:29 +1300, Amos Jeffries wrote: Alex Rousskov wrote: The following page has been changed by Amos Jeffries: http://wiki.squid-cache.org/Features/SourceLayout?action=diff&rev2=9&rev1=8 Original: Question: Can we remove Foo prefix from FOO/!FooSomething.h file names? The prefix carries no additional information and is probably not required for modern compilers, especially in C++ world. Answer: File name should match the primary class declared or defined in that file. Directory name should match the namespace used by classes in that directory. We should move from PROTOFoo to PROTO::Foo classes. Added to Answer: Some systemic problems have been found cleaning filenames like this with compiler include methods. Amos, Please clarify what you meant. What systemic problems and with what kind of filenames? Is this about the case of "proto", the directory name? We have agreed that directories will use low_case, for Windows sake, right? I was referring to the g++ "foo.h foo.h -I./src/Module -I./src" problem Robert pointed out following that windows talk. IMO the windows case-sensitivity can be worked around, but the -I problem is a big one. Do you see a flaw in my response to that Robert's email? I have said that Robert's example will not be applicable to Squid sources: All module files will include using the "module/file.h" pattern and not the current "file.h" pattern. We are going to use -I src/ and never -I src/module/. I do not recall objections from Robert or others. Did I miss them? Are there any problems with that approach? I missed that email from you. I don't see any huge problems with that approach, as long as we make sure its kept to. Amos -- Please use Squid 2.6STABLE17+ or 3.0STABLE1+ There are serious security advisories out on all earlier releases.
Re: Features/SourceLayout
On Tue, 2008-03-25 at 10:29 +1300, Amos Jeffries wrote: > Alex Rousskov wrote: > >> The following page has been changed by Amos Jeffries: > >> http://wiki.squid-cache.org/Features/SourceLayout?action=diff&rev2=9&rev1=8 > > > > Original: > > > >> Question: Can we remove Foo prefix from FOO/!FooSomething.h file > >> names? The prefix carries no additional information and is probably > >> not required for modern compilers, especially in C++ world. > >> > >> Answer: File name should match the primary class declared or defined > >> in that file. Directory name should match the namespace used by > >> classes in that directory. We should move from PROTOFoo to PROTO::Foo > >> classes. > > > > Added to Answer: > > > >> Some systemic problems have been found cleaning filenames like this > >> with compiler include methods. > > > > Amos, > > > > Please clarify what you meant. What systemic problems and with what > > kind of filenames? Is this about the case of "proto", the directory > > name? We have agreed that directories will use low_case, for Windows > > sake, right? > > > > I was referring to the g++ "foo.h foo.h -I./src/Module -I./src" problem > Robert pointed out following that windows talk. > IMO the windows case-sensitivity can be worked around, but the -I > problem is a big one. Do you see a flaw in my response to that Robert's email? I have said that Robert's example will not be applicable to Squid sources: All module files will include using the "module/file.h" pattern and not the current "file.h" pattern. We are going to use -I src/ and never -I src/module/. I do not recall objections from Robert or others. Did I miss them? Are there any problems with that approach? Thanks, Alex.
Re: Features/SourceLayout
Alex Rousskov wrote: The following page has been changed by Amos Jeffries: http://wiki.squid-cache.org/Features/SourceLayout?action=diff&rev2=9&rev1=8 Original: Question: Can we remove Foo prefix from FOO/!FooSomething.h file names? The prefix carries no additional information and is probably not required for modern compilers, especially in C++ world. Answer: File name should match the primary class declared or defined in that file. Directory name should match the namespace used by classes in that directory. We should move from PROTOFoo to PROTO::Foo classes. Added to Answer: Some systemic problems have been found cleaning filenames like this with compiler include methods. Amos, Please clarify what you meant. What systemic problems and with what kind of filenames? Is this about the case of "proto", the directory name? We have agreed that directories will use low_case, for Windows sake, right? I was referring to the g++ "foo.h foo.h -I./src/Module -I./src" problem Robert pointed out following that windows talk. IMO the windows case-sensitivity can be worked around, but the -I problem is a big one. Amos -- Please use Squid 2.6STABLE17+ or 3.0STABLE1+ There are serious security advisories out on all earlier releases.
Re: Features/SourceLayout
> The following page has been changed by Amos Jeffries: > http://wiki.squid-cache.org/Features/SourceLayout?action=diff&rev2=9&rev1=8 Original: > Question: Can we remove Foo prefix from FOO/!FooSomething.h file > names? The prefix carries no additional information and is probably > not required for modern compilers, especially in C++ world. > > Answer: File name should match the primary class declared or defined > in that file. Directory name should match the namespace used by > classes in that directory. We should move from PROTOFoo to PROTO::Foo > classes. Added to Answer: > Some systemic problems have been found cleaning filenames like this > with compiler include methods. Amos, Please clarify what you meant. What systemic problems and with what kind of filenames? Is this about the case of "proto", the directory name? We have agreed that directories will use low_case, for Windows sake, right? Thank you, Alex.