Commit Graph

14 Commits

Author SHA1 Message Date
mark@chromium.org
c8c76a2389 Update C++ style guide to 3.231:
- Clarify that sentence-like non-sentence comments are permitted.
 - Note that older code with incorrect #include ordering should be fixed.
 - Revamp the section on default function arguments.
 - Avoid explicitly recommending Init() methods.
 - C++11: permit "auto".
 - C++11: permit ">>" in place of "> >".
 - C++11: permit range-based "for".
 - C++11: permit variadic macros (already permitted as a C++03 extension).
 - C++11: permit "LL" and "ULL" literal suffixes (already permitted as a C++03
   extension).
 - Reflect the revised copyright and author line policy: copyright notices are
   not required, but license boilerplate may still be used (and generally
   contains a copyright notice). Author lines are not required.
 - C++11: permit new features in <algorithm> and the portion of <numeric> that
   does not require initializer lists.
 - Revise rules on forward declarations: explicitly forbid forward-declared
   functions, do not mandate forward declarations, discourage forward-declared
   templates.
 - Remove the rule requiring "const" qualifiers for member functions to be
   on the same line as the closing parenthesis of the parameter list.
 - Fix typo: "unnamed namespaces."
 - C++11: permit local types as template parameters.
 - Fix typo: "unfamiliar."
 - Relax RTTI rules to permit its use, but warn about its abuse.
 - C++11: permit nullptr and nullptr_t. Revise text referring to NULL to refer
   more generically to null pointers.
 - Remove the "don't go crazy with const" rule.
 - Fix typo: "dir/foo2" should bee "dir2/foo2."
 - Remove reference to a specific GCC version.

Update Objective-C style guide to 2.48:
 - Revise method declaration and invocation formatting rules for long names.
 - Reflect the revised copyright and author line policy: copyright notices are
   not required, but license boilerplate may still be used (and generally
   contains a copyright notice). Author lines are not required. Top-of-file
   comments are not required.
 - Fix dead link in the "nil Checks" section.
 - Cover ARC.
 - Specify that @private is only required for instance variables in header
   files.
 - Permit NSNumber literals.
 - Change the naming convention for instance variables from trailing underscore
   to leading underscore, allowing a wide exception for existing code and
   projects.
 - Fix description of BOOL with respect to its signedness.

Update Python style guide to 2.45:
 - Recommend "pylint: disable" over "pylint: disable-msg."
 - Fix case-sensitive anchor.
 - Provide a better explanation of the problems with catch-all "except:."
 - Permit "map" and "filter" in absence of inlined lambdas.

Update JavaScript style guide to 2.64:
 - Clarify rules for requiring and providing inner dependencies on classes.
 - Clarify semicolons for functions.
 - Note proper namespace and filename casing.
 - Fix typos: "@extends."
 - Permit parentheses to be omitted on unions.
 - Don't require method descriptions when obvious.
 - "in" is a keyword, put it in <code>.
 - New "Aliasing with goog.scope" section.
 - Rewrite the "Constants" section.
 - Remove the recommendation to use join() to build strings.
 - Add the "@expose" annotation.
 - Fix the "@suppress" example.
 - Remove reference alternate cast syntax.
 - Reflect the revised copyright and author line policy: copyright notices are
   not required, but license boilerplate may still be used (and generally
   contains a copyright notice). Author lines are not required.
 - Say that "use strict" is not required.
 - Fix links to "optional" section.
 - Rewrite "JavaScript Types" section.
 - Fix typos: "parameterizes," "converted."
 - Prefer in-constructor field initialization.
 - Add a section on "delete" and null-assignment.
 - Add a note about optional JSDoc comments on enum values.
 - State explicitly that dot operators belong at the ends of lines.
 - Add "@dict" and "@struct" annotations.
 - Add links to the JavaScript Types section.
 - Require (rather than encourage) compiling.

Update HTML/CSS style guide to 2.19:
 - Rephrased quotation guidelines.
 - Updated W3C I18N article reference.
 - Fixed revision number.

Update styleguide.xsl to 1.34:
 - Fix error in RefreshVisibilityFromHashParam when a URL fragment points to a
   named anchor within a section, as used by the JavaScript style guide.
2012-11-28 20:26:27 +00:00
mark@chromium.org
e33361fcd3 Update C++ style guide to 3.199:
- Update an example to omit the blank line between C and C++ #includes.
 - Rewrite the paragraph about #include ordering.
 - Clarify namespace closing comments.
 - Discourage const references for input arguments which are aliased beyond
   the scope of the function call.
 - Replace all '&' with '&amp;'.
 - Clarify that interfaces must have virtual destructors.
 - Add an explicit example for |else if|.
 - C++11 updates.

Update Objective-C style guide to 2.36:
 - Remove requirement to list @dynamic implementations.
 - Remove requirement to never synthesize CFType properties, since they may
   be retained on 10.6.
 - Use __weak and __strong type declaration modifiers rather than comments.
 - Make the copyright/license information consistent.
 - An example initializer comment revealed too much about the implementation.
 - Correct spelling mistakes.
 - Fix names that didn't follow Cocoa conventions.
 - Fix examples to conform to style.
 - Add a section about no braces for empty interfaces.
 - Add a section about automatically synthesized instance variables.
 - Codify avoidance of accessors in -init and -dealloc methods.
 - Changes for the 80-column rule.
 - Weaken the language around object ownership type qualifiers.
 - Document the rules for formatting blocks.

Update JavaScript style guide to 2.27:
 - Introduce EcmaScript 5 Strict verbiage.
 - Add a note about private constructors.
 - Simplify explanations about JSDoc comments.
 - Sort the JSDoc tags.
 - Remove the sections about type-checking now that the JSDoc tags and JS
   types are no longer one table.
 - Convert <tt> to <code>, because the XSL processor eats <tt>.
 - Add @suppress.
 - Mark @inheritDoc deprecated in favor of @override.
 - Add a section about inner classes and enums being defined in the same file
   as the top-level class they are defined on.

Update Python style guide to 2.28:
 - Change "Naming" summary to match body.
 - Make the prohibition against backslash line continuation explicit.
 - Update the TODO section to match the C++ style guide.
 - Declare Python code without a shebang line to be stylish.
 - Clarify rules on function docstrings.
 - Fix spelling errors.
 - Update with styleguide.xsl 1.33.

Update styleguide.xsl to 1.33:
 - Clean up style guide JS.
 - Links to anchor tags auto-expand.
2011-11-04 16:55:22 +00:00
mmentovai
cd4ce0fff0 Update C++ style guide to 3.188:
- Revise "Smart Pointers" section.
 - Clarify that it's OK to have spaces after '#' in a preprocessor directive,
   even though '#' itself must not be indented.
 - Revise "TODO Comments" section.
 - Fix wording.
 - Explicitly recommend foo.h be the first file #included by foo_test.cc.

Update Objective-C style guide to 2.24:
 - Clarify the spacing of @property declarations.
 - Add "Overridden NSObject Method Placement" section.
 - Explicitly permit blank lines around @interface, @implementation, and @end.

Update JavaScript style guide to 2.20:
 - Provide additional guidance with respect to the compiler.
 - Add {function(new:Type)} as a type syntax for constructors of Type.
 - Revise "Method and Function Comments" section.
 - Harmonize text and example in the "Passing Anonymous Functions" section.
 - Explicitly state that @param and @return types must be enclosed in braces.
 - Add documentation on the UNKNOWN type.
 - Replace a CODE_SNIPPET with BAD_CODE_SNIPPET in the "Internet Explorer's
   Conditional Comments" section.
 - Remove a redundant "Expand for more information" in the "Naming" section
   and fully spell out "information" in the "Code Formatting" section.
 - Provide a positive example in the "Multiline string literals" section.
 - Provide guidance for indentation within nested functions.

Update Python style guide to 2.20:
 - Clarify shebang rule.
2011-03-29 20:30:47 +00:00
mmentovai
7ead64485b Update C++ style guide to 3.174:
- Add leading blank line exception.
 - Improve guidance for function definition comments.
 - Tweak class comment example to not violate type naming guidelines.

Update Objective-C style guide to 2.21:
 - Prohibit +new.

Update JavaScript style guide to 2.9:
 - Add new "Function Declarations Within Blocks" section.
 - Add new "Internet Explorer's Conditional Comments" section.
 - Add new "Alias long type names to improve readability" section.
 - Add @lends.
2010-10-04 16:26:53 +00:00
mmentovai
4d50302d0e Update Objective-C style guide to 2.20:
- Allow dot notation for simple property access.
 - Clarify spacing around category definitions and parameters that take
   protocols.
2010-08-04 17:39:00 +00:00
mmentovai
e5aeb8fb72 Update C++ style guide to 3.161:
- Forbid the use of operator synonyms such as "and."
 - Specify the naming convention (OrDie) to use when a function has
   crash-on-failure semantics.
 - Allow static const data members to be non-private.
 - Specify placement of friend declarations.
 - Require each file to include headers that they use.

Update Objective-C style guide to 2.18:
 - Prefer @optional to informal protocols when possible.
 - Specify formatting for invoking methods.
 - Require that -dealloc be easy to review.
2010-05-12 16:52:16 +00:00
mmentovai
f7facf9026 Update C++ style guide to 3.146:
- Make the messaging on DISALLOW_EVIL_CONSTRUCTORS more clear that we should
   not be rewriting old code but should simply prefer DISALLOW_COPY_AND_ASSIGN
   on new code.
 - s/Initializer Lists/Constructor Initializer Lists/ since people search for
   this based on knowing it's part of the constructor, but forget the precise
   name.
 - Allow data members in a test fixture to be private.
 - Loosen restrictions on globals.
 - Add explicit guideline for nested namespace formatting.
 - Strengthen the prohibition against operator overloading for operator&.
 - Add recommendation for "_" over "-" in file names.
 - Revise the "Copy Constructors" section for brevity and clarity.  Emphasize
   preference for standard over nonstandard copy operations.
 - Weaken the wording at the top of the "Doing Work in Constructors" section,
   making it clear that Init() methods are not absolutely required for
   non-trivial initialization.
 - Fix minor typos and grammatical errors.

Update Objective-C style guide to 2.14:
 - Add the Rule of Four for indenting parameters.  Allow either of two forms
   for formatting methods with short first keywords.
 - Update the guidance on BOOL vs. bool.
 - Whitespace cleanup.

Update Python style guide to 2.14:
 - Consolidate discussion of the string module, apply, map, filter, and reduce
   into a single section.
 - Make it explicit that functions and classes can be nested inside methods.
2009-10-23 21:01:49 +00:00
mmentovai
a764d2becf Update Objective-C style guide to 2.12:
- Refer to the correct section on avoiding exceptions
2009-04-17 17:48:25 +00:00
mmentovai
71619d34e3 Update C++ style guide to 3.133:
- Clarify that a "very strong convention" is, in fact, only very strong
   within Google code
 - Update the style guide with an additional naming possibility for enums:
   kEnumName
 - Reword the summary for the section on header file dependencies
 - Simplify wording regarding static variables

Update Objective-C style guide to 2.11:
 - Provide guidance on when to use #import and #include
 - Display revision in style guide

Update styleguide.xsl with a hint of things to come

Set svn:eol-style on xmlstyle.html
2009-03-25 22:24:14 +00:00
pinkerton
b87a3025fc space comments correctly on code example 2008-09-23 16:20:02 +00:00
pinkerton
a7dd19342d Add section on properties from dmaclach, remove some tabs. 2008-09-10 19:31:02 +00:00
mmentovai
48fcffea4c Update C++ style guide:
- Change list of permitted Boost libraries
 - Permit one space before // in a new {scope}
 - Grammar fix!

Update Objective-C style guide:
 - Link spacing changes only
2008-09-04 18:34:20 +00:00
pinkerton
7bcc208650 fix typo 2008-09-02 12:51:27 +00:00
pinkerton
c6fe2bcedd open-sourcing Google's objective-C/C++ style guide. 2008-08-29 18:04:02 +00:00