mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-29 22:24:26 +00:00 
			
		
		
		
	## Description: Move esphome-core codebase into esphome (and a bunch of other refactors). See https://github.com/esphome/feature-requests/issues/97 Yes this is a shit ton of work and no there's no way to automate it :( But it will be worth it 👍 Progress: - Core support (file copy etc): 80% - Base Abstractions (light, switch): ~50% - Integrations: ~10% - Working? Yes, (but only with ported components). Other refactors: - Moves all codegen related stuff into a single class: `esphome.codegen` (imported as `cg`) - Rework coroutine syntax - Move from `component/platform.py` to `domain/component.py` structure as with HA - Move all defaults out of C++ and into config validation. - Remove `make_...` helpers from Application class. Reason: Merge conflicts with every single new integration. - Pointer Variables are stored globally instead of locally in setup(). Reason: stack size limit. Future work: - Rework const.py - Move all `CONF_...` into a conf class (usage `conf.UPDATE_INTERVAL` vs `CONF_UPDATE_INTERVAL`). Reason: Less convoluted import block - Enable loading from `custom_components` folder. **Related issue (if applicable):** https://github.com/esphome/feature-requests/issues/97 **Pull request in [esphome-docs](https://github.com/esphome/esphome-docs) with documentation (if applicable):** esphome/esphome-docs#<esphome-docs PR number goes here> ## Checklist: - [ ] The code change is tested and works locally. - [ ] Tests have been added to verify that the new code works (under `tests/` folder). If user exposed functionality or configuration variables are added/changed: - [ ] Documentation added/updated in [esphomedocs](https://github.com/OttoWinter/esphomedocs).
		
			
				
	
	
		
			138 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			138 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| Language:        Cpp
 | |
| AccessModifierOffset: -1
 | |
| AlignAfterOpenBracket: Align
 | |
| AlignConsecutiveAssignments: false
 | |
| AlignConsecutiveDeclarations: false
 | |
| AlignEscapedNewlines: DontAlign
 | |
| AlignOperands:   true
 | |
| AlignTrailingComments: true
 | |
| AllowAllParametersOfDeclarationOnNextLine: true
 | |
| AllowShortBlocksOnASingleLine: false
 | |
| AllowShortCaseLabelsOnASingleLine: false
 | |
| AllowShortFunctionsOnASingleLine: All
 | |
| AllowShortIfStatementsOnASingleLine: false
 | |
| AllowShortLoopsOnASingleLine: false
 | |
| AlwaysBreakAfterReturnType: None
 | |
| AlwaysBreakBeforeMultilineStrings: false
 | |
| AlwaysBreakTemplateDeclarations: MultiLine
 | |
| BinPackArguments: true
 | |
| BinPackParameters: true
 | |
| BraceWrapping:
 | |
|   AfterClass:      false
 | |
|   AfterControlStatement: false
 | |
|   AfterEnum:       false
 | |
|   AfterFunction:   false
 | |
|   AfterNamespace:  false
 | |
|   AfterObjCDeclaration: false
 | |
|   AfterStruct:     false
 | |
|   AfterUnion:      false
 | |
|   AfterExternBlock: false
 | |
|   BeforeCatch:     false
 | |
|   BeforeElse:      false
 | |
|   IndentBraces:    false
 | |
|   SplitEmptyFunction: true
 | |
|   SplitEmptyRecord: true
 | |
|   SplitEmptyNamespace: true
 | |
| BreakBeforeBinaryOperators: None
 | |
| BreakBeforeBraces: Attach
 | |
| BreakBeforeInheritanceComma: false
 | |
| BreakInheritanceList: BeforeColon
 | |
| BreakBeforeTernaryOperators: true
 | |
| BreakConstructorInitializersBeforeComma: false
 | |
| BreakConstructorInitializers: BeforeColon
 | |
| BreakAfterJavaFieldAnnotations: false
 | |
| BreakStringLiterals: true
 | |
| ColumnLimit:     120
 | |
| CommentPragmas:  '^ IWYU pragma:'
 | |
| CompactNamespaces: false
 | |
| ConstructorInitializerAllOnOneLineOrOnePerLine: true
 | |
| ConstructorInitializerIndentWidth: 4
 | |
| ContinuationIndentWidth: 4
 | |
| Cpp11BracedListStyle: true
 | |
| DerivePointerAlignment: true
 | |
| DisableFormat:   false
 | |
| ExperimentalAutoDetectBinPacking: false
 | |
| FixNamespaceComments: true
 | |
| ForEachMacros:
 | |
|   - foreach
 | |
|   - Q_FOREACH
 | |
|   - BOOST_FOREACH
 | |
| IncludeBlocks:   Preserve
 | |
| IncludeCategories:
 | |
|   - Regex:           '^<ext/.*\.h>'
 | |
|     Priority:        2
 | |
|   - Regex:           '^<.*\.h>'
 | |
|     Priority:        1
 | |
|   - Regex:           '^<.*'
 | |
|     Priority:        2
 | |
|   - Regex:           '.*'
 | |
|     Priority:        3
 | |
| IncludeIsMainRegex: '([-_](test|unittest))?$'
 | |
| IndentCaseLabels: true
 | |
| IndentPPDirectives: None
 | |
| IndentWidth:     2
 | |
| IndentWrappedFunctionNames: false
 | |
| KeepEmptyLinesAtTheStartOfBlocks: false
 | |
| MacroBlockBegin: ''
 | |
| MacroBlockEnd:   ''
 | |
| MaxEmptyLinesToKeep: 1
 | |
| NamespaceIndentation: None
 | |
| PenaltyBreakAssignment: 2
 | |
| PenaltyBreakBeforeFirstCallParameter: 1
 | |
| PenaltyBreakComment: 300
 | |
| PenaltyBreakFirstLessLess: 120
 | |
| PenaltyBreakString: 1000
 | |
| PenaltyBreakTemplateDeclaration: 10
 | |
| PenaltyExcessCharacter: 1000000
 | |
| PenaltyReturnTypeOnItsOwnLine: 2000
 | |
| PointerAlignment: Right
 | |
| RawStringFormats:
 | |
|   - Language:        Cpp
 | |
|     Delimiters:
 | |
|       - cc
 | |
|       - CC
 | |
|       - cpp
 | |
|       - Cpp
 | |
|       - CPP
 | |
|       - 'c++'
 | |
|       - 'C++'
 | |
|     CanonicalDelimiter: ''
 | |
|     BasedOnStyle:    google
 | |
|   - Language:        TextProto
 | |
|     Delimiters:
 | |
|       - pb
 | |
|       - PB
 | |
|       - proto
 | |
|       - PROTO
 | |
|     EnclosingFunctions:
 | |
|       - EqualsProto
 | |
|       - EquivToProto
 | |
|       - PARSE_PARTIAL_TEXT_PROTO
 | |
|       - PARSE_TEST_PROTO
 | |
|       - PARSE_TEXT_PROTO
 | |
|       - ParseTextOrDie
 | |
|       - ParseTextProtoOrDie
 | |
|     CanonicalDelimiter: ''
 | |
|     BasedOnStyle:    google
 | |
| ReflowComments:  true
 | |
| SortIncludes:    false
 | |
| SortUsingDeclarations: false
 | |
| SpaceAfterCStyleCast: true
 | |
| SpaceAfterTemplateKeyword: false
 | |
| SpaceBeforeAssignmentOperators: true
 | |
| SpaceBeforeCpp11BracedList: false
 | |
| SpaceBeforeCtorInitializerColon: true
 | |
| SpaceBeforeInheritanceColon: true
 | |
| SpaceBeforeParens: ControlStatements
 | |
| SpaceBeforeRangeBasedForLoopColon: true
 | |
| SpaceInEmptyParentheses: false
 | |
| SpacesBeforeTrailingComments: 2
 | |
| SpacesInAngles:  false
 | |
| SpacesInContainerLiterals: false
 | |
| SpacesInCStyleCastParentheses: false
 | |
| SpacesInParentheses: false
 | |
| SpacesInSquareBrackets: false
 | |
| Standard:        Auto
 | |
| TabWidth:        2
 | |
| UseTab:          Never
 |