mirror of
https://github.com/esphome/esphome.git
synced 2024-12-19 16:07:47 +01:00
6682c43dfa
## 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).
128 lines
5.0 KiB
YAML
128 lines
5.0 KiB
YAML
---
|
|
Checks: >-
|
|
*,
|
|
-abseil-*,
|
|
-android-*,
|
|
-boost-*,
|
|
-bugprone-macro-parentheses,
|
|
-cert-dcl50-cpp,
|
|
-cert-err58-cpp,
|
|
-clang-analyzer-core.CallAndMessage,
|
|
-clang-analyzer-osx.*,
|
|
-clang-analyzer-security.*,
|
|
-cppcoreguidelines-avoid-goto,
|
|
-cppcoreguidelines-c-copy-assignment-signature,
|
|
-cppcoreguidelines-owning-memory,
|
|
-cppcoreguidelines-pro-bounds-array-to-pointer-decay,
|
|
-cppcoreguidelines-pro-bounds-constant-array-index,
|
|
-cppcoreguidelines-pro-bounds-pointer-arithmetic,
|
|
-cppcoreguidelines-pro-type-const-cast,
|
|
-cppcoreguidelines-pro-type-cstyle-cast,
|
|
-cppcoreguidelines-pro-type-member-init,
|
|
-cppcoreguidelines-pro-type-reinterpret-cast,
|
|
-cppcoreguidelines-pro-type-static-cast-downcast,
|
|
-cppcoreguidelines-pro-type-union-access,
|
|
-cppcoreguidelines-pro-type-vararg,
|
|
-cppcoreguidelines-special-member-functions,
|
|
-fuchsia-*,
|
|
-fuchsia-default-arguments,
|
|
-fuchsia-multiple-inheritance,
|
|
-fuchsia-overloaded-operator,
|
|
-fuchsia-statically-constructed-objects,
|
|
-google-build-using-namespace,
|
|
-google-explicit-constructor,
|
|
-google-readability-braces-around-statements,
|
|
-google-readability-casting,
|
|
-google-readability-todo,
|
|
-google-runtime-int,
|
|
-google-runtime-references,
|
|
-hicpp-*,
|
|
-llvm-header-guard,
|
|
-llvm-include-order,
|
|
-misc-unconventional-assign-operator,
|
|
-misc-unused-parameters,
|
|
-modernize-deprecated-headers,
|
|
-modernize-pass-by-value,
|
|
-modernize-pass-by-value,
|
|
-modernize-return-braced-init-list,
|
|
-modernize-use-auto,
|
|
-modernize-use-default-member-init,
|
|
-modernize-use-equals-default,
|
|
-mpi-*,
|
|
-objc-*,
|
|
-performance-unnecessary-value-param,
|
|
-readability-braces-around-statements,
|
|
-readability-else-after-return,
|
|
-readability-implicit-bool-conversion,
|
|
-readability-named-parameter,
|
|
-readability-redundant-member-init,
|
|
-warnings-as-errors,
|
|
-zircon-*
|
|
WarningsAsErrors: '*'
|
|
HeaderFilterRegex: '^.*/src/esphome/.*'
|
|
AnalyzeTemporaryDtors: false
|
|
FormatStyle: google
|
|
CheckOptions:
|
|
- key: google-readability-braces-around-statements.ShortStatementLines
|
|
value: '1'
|
|
- key: google-readability-function-size.StatementThreshold
|
|
value: '800'
|
|
- key: google-readability-namespace-comments.ShortNamespaceLines
|
|
value: '10'
|
|
- key: google-readability-namespace-comments.SpacesBeforeComments
|
|
value: '2'
|
|
- key: modernize-loop-convert.MaxCopySize
|
|
value: '16'
|
|
- key: modernize-loop-convert.MinConfidence
|
|
value: reasonable
|
|
- key: modernize-loop-convert.NamingStyle
|
|
value: CamelCase
|
|
- key: modernize-pass-by-value.IncludeStyle
|
|
value: llvm
|
|
- key: modernize-replace-auto-ptr.IncludeStyle
|
|
value: llvm
|
|
- key: modernize-use-nullptr.NullMacros
|
|
value: 'NULL'
|
|
- key: readability-identifier-naming.LocalVariableCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.ClassCase
|
|
value: 'CamelCase'
|
|
- key: readability-identifier-naming.StructCase
|
|
value: 'CamelCase'
|
|
- key: readability-identifier-naming.EnumCase
|
|
value: 'CamelCase'
|
|
- key: readability-identifier-naming.EnumConstantCase
|
|
value: 'UPPER_CASE'
|
|
- key: readability-identifier-naming.StaticConstantCase
|
|
value: 'UPPER_CASE'
|
|
- key: readability-identifier-naming.StaticVariableCase
|
|
value: 'UPPER_CASE'
|
|
- key: readability-identifier-naming.GlobalConstantCase
|
|
value: 'UPPER_CASE'
|
|
- key: readability-identifier-naming.ParameterCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.PrivateMemberPrefix
|
|
value: 'NO_PRIVATE_MEMBERS_ALWAYS_USE_PROTECTED'
|
|
- key: readability-identifier-naming.PrivateMethodPrefix
|
|
value: 'NO_PRIVATE_METHODS_ALWAYS_USE_PROTECTED'
|
|
- key: readability-identifier-naming.ClassMemberCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.ClassMemberCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.ProtectedMemberCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.ProtectedMemberSuffix
|
|
value: '_'
|
|
- key: readability-identifier-naming.FunctionCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.ClassMethodCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.ProtectedMethodCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.ProtectedMethodSuffix
|
|
value: '_'
|
|
- key: readability-identifier-naming.VirtualMethodCase
|
|
value: 'lower_case'
|
|
- key: readability-identifier-naming.VirtualMethodSuffix
|
|
value: ''
|