diff --git a/packages/netglade_analysis/CHANGELOG.md b/packages/netglade_analysis/CHANGELOG.md
index a416e23..48800d9 100644
--- a/packages/netglade_analysis/CHANGELOG.md
+++ b/packages/netglade_analysis/CHANGELOG.md
@@ -1,3 +1,11 @@
+## 8.0.0
+- Adhere to DCM 1.14.0:
+  - Add avoid-empty-test-groups
+  - Add avoid-not-encodable-in-to-json
+  - Add avoid-contradictory-expressions
+  - Add avoid-excessive-expressions
+- Put build method in widgets above private methods.
+ 
 ## 7.0.0
 - Adhere to DCM 1.13.0:
   - Add avoid-duplicate-collection-elements
diff --git a/packages/netglade_analysis/lib/dcm.yaml b/packages/netglade_analysis/lib/dcm.yaml
index 1528d62..db0a3bb 100644
--- a/packages/netglade_analysis/lib/dcm.yaml
+++ b/packages/netglade_analysis/lib/dcm.yaml
@@ -1,380 +1,387 @@
-# version 1.13.0 - https://dcm.dev/changelog/
-dart_code_metrics:
-  rules:
-    ### Common
-    # - arguments-ordering # way too pedantic
-    - avoid-accessing-collections-by-constant-index
-    - avoid-accessing-other-classes-private-members
-    - avoid-async-call-in-sync-function
-    # - avoid-banned-annotations # * OK, we just don't have global config
-    # - avoid-banned-file-names # * OK, we just don't have global config
-    # - avoid-banned-imports # * OK, we just don't have global config
-    # - avoid-banned-types # * OK, we just don't have global config
-    # - avoid-barrel-files # for now we use them
-    - avoid-bottom-type-in-patterns
-    - avoid-bottom-type-in-records
-    - avoid-cascade-after-if-null
-    - avoid-collapsible-if
-    - avoid-collection-methods-with-unrelated-types
-    # - avoid-collection-mutating-methods # sometimes it's ok
-    - avoid-declaring-call-method
-    - avoid-double-slash-imports
-    - avoid-duplicate-cascades
-    - avoid-duplicate-collection-elements
-    - avoid-duplicate-exports
-    - avoid-duplicate-initializers
-    - avoid-duplicate-map-keys
-    - avoid-duplicate-mixins
-    - avoid-duplicate-named-imports
-    - avoid-duplicate-patterns
-    - avoid-duplicate-switch-case-conditions
-    - avoid-duplicate-test-assertions
-    - avoid-dynamic
-    - avoid-equal-expressions
-    - avoid-explicit-pattern-field-name
-    # - avoid-explicit-type-declaration # public API
-    - avoid-extensions-on-records
-    - avoid-function-type-in-records
-    - avoid-future-tostring
-    - avoid-generics-shadowing
-    - avoid-global-state
-    - avoid-identical-exception-handling-blocks
-    - avoid-ignoring-return-values
-    - avoid-importing-entrypoint-exports
-    - avoid-inferrable-type-arguments:
-        ignored-invocations:
-          - context.read
-          - context.watch
-          - GetIt.I
-    - avoid-inverted-boolean-checks
-    - avoid-keywords-in-wildcard-pattern
-    # - avoid-late-keyword
-    - avoid-local-functions
-    # - avoid-long-files # hard to get the right settings
-    # - avoid-long-functions # way too pedantic
-    # - avoid-long-parameter-list: # way too pedantic
-    #     ignore-optional: true # exclude optional and (non-required) named parameters
-    - avoid-long-records
-    - avoid-map-keys-contains
-    - avoid-missed-calls
-    - avoid-missing-enum-constant-in-map
-    - avoid-misused-wildcard-pattern
-    - avoid-mixing-named-and-positional-fields
-    # - avoid-mutating-parameters # we use ValueNotifier etc.
-    # - avoid-negated-conditions # sometimes it might be better
-    - avoid-nested-conditional-expressions:
-        acceptable-level: 2
-    - avoid-nested-futures
-    - avoid-nested-records
-    - avoid-nested-streams-and-futures
-    - avoid-nested-switch-expressions
-    - avoid-nested-switches
-    - avoid-non-ascii-symbols:
-        exclude:
-          - test/**
-    - avoid-non-null-assertion:
-        skip-checked-fields: true
-        exclude:
-          - test/**
-    - avoid-nullable-interpolation
-    - avoid-nullable-parameters-with-default-values
-    - avoid-nullable-tostring
-    - avoid-one-field-records
-    - avoid-passing-async-when-sync-expected:
-        exclude:
-          - test/**
-    - avoid-passing-default-values
-    - avoid-passing-self-as-argument
-    - avoid-positional-record-field-access
-    - avoid-recursive-calls
-    - avoid-redundant-async
-    - avoid-redundant-else
-    - avoid-redundant-positional-field-name
-    - avoid-redundant-pragma-inline
-    - avoid-referencing-discarded-variables
-    - avoid-self-assignment
-    - avoid-self-compare
-    - avoid-shadowed-extension-methods
-    - avoid-shadowing:
-        ignore-parameters: true
-        ignored-names:
-          - context
-    # - avoid-similar-names # way too pedantic
-    - avoid-substring
-    - avoid-throw-in-catch-block
-    - avoid-throw-objects-without-tostring
-    - avoid-top-level-members-in-tests
-    - avoid-unassigned-late-fields
-    - avoid-unassigned-stream-subscriptions
-    - avoid-uncaught-future-errors
-    - avoid-unconditional-break
-    - avoid-unnecessary-call
-    - avoid-unnecessary-conditionals
-    - avoid-unnecessary-futures
-    # - avoid-unnecessary-getter # it's ok to have getter for private field
-    - avoid-unnecessary-if
-    - avoid-unnecessary-local-late
-    - avoid-unnecessary-negations
-    - avoid-unnecessary-nullable-return-type
-    - avoid-unnecessary-reassignment
-    - avoid-unnecessary-return
-    - avoid-unnecessary-super
-    - avoid-unnecessary-type-assertions
-    - avoid-unnecessary-type-casts
-    - avoid-unrelated-type-assertions
-    - avoid-unrelated-type-casts
-    - avoid-unsafe-collection-methods
-    - avoid-unused-after-null-check
-    - avoid-unused-generics
-    - avoid-unused-instances
-    - avoid-unused-parameters
-    - avoid-weak-cryptographic-algorithms
-    - avoid-wildcard-cases-with-enums
-    # - banned-usage # * OK, we just don't have global config
-    - binary-expression-operand-order
-    - double-literal-format
-    - enum-constants-ordering
-    - format-comment:
-        only-doc-comments: true
-    # - format-test-name # good but painful
-    - function-always-returns-null:
-        ignored-invocations:
-          - useEffect
-    - map-keys-ordering:
-        exclude:
-          - test/**
-    # - match-class-name-pattern # * OK, we just don't have global config
-    # - match-getter-setter-field-names # forces API to equals internal code
-    # - match-lib-folder-structure # maybe later
-    # - match-positional-field-names-on-assignment # not compatible with avoid-redundant-positional-field-name
-    - member-ordering:
-        order:
-          - public-fields
-          - private-fields
-          - public-getters
-          - private-getters
-          - public-setters
-          - private-setters
-          - constructors
-          - named-constructors
-          - public-methods
-          - private-methods
-        widgets-order:
-          - public-fields
-          - private-fields
-          - public-getters
-          - private-getters
-          - constructors
-          - named-constructors
-          - init-state-method
-          - overridden-public-methods
-          - public-methods
-          - private-methods
-          - build-method
-    - missing-test-assertion
-    - move-records-to-typedefs:
-        min-fields: 3
-        min-occurrences: 3
-    - move-variable-closer-to-its-usage
-    - move-variable-outside-iteration
-    - newline-before-case
-    - newline-before-return
-    - no-boolean-literal-compare:
-        allow-false: true # allows `variable == false` instead of just `!variable`
-    - no-empty-block
-    # - no-equal-arguments: # hard to set up so it makes sense
-    #     ignored-parameters:
-    #       - height
-    #       - width
-    #       - top
-    #       - right
-    #       - bottom
-    #       - left
-    #       - topLeft
-    #       - topRight
-    #       - bottomLeft
-    #       - bottomRight
-    - no-equal-conditions
-    - no-equal-nested-conditions
-    - no-equal-switch-case
-    - no-equal-switch-expression-cases
-    - no-equal-then-else
-    #- no-magic-number: # way too strict for default values of parameters etc.
-    - no-object-declaration
-    # - parameters-ordering # way too strict
-    # - prefer-addition-subtraction-assignments # dunno
-    - prefer-any-or-every
-    - prefer-async-await
-    - prefer-both-inlining-annotations
-    - prefer-bytes-builder
-    - prefer-commenting-analyzer-ignores
-    - prefer-conditional-expressions
-    - prefer-correct-callback-field-name
-    - prefer-correct-error-name:
-        allowed-names:
-          - e
-    - prefer-correct-for-loop-increment
-    - prefer-correct-future-return-type
-    # - prefer-correct-handler-name # not now
-    # - prefer-correct-identifier-length # way too pedantic
-    # - prefer-correct-json-casts # overkill
-    - prefer-correct-setter-parameter-name
-    - prefer-correct-stream-return-type
-    - prefer-correct-switch-length
-    - prefer-correct-test-file-name
-    - prefer-correct-type-name
-    - prefer-declaring-const-constructor
-    - prefer-early-return
-    - prefer-enums-by-name
-    - prefer-explicit-function-type
-    - prefer-explicit-parameter-names
-    # - prefer-explicit-type-arguments # inference is better
-    - prefer-first
-    # - prefer-getter-over-method # way too pedantic
-    - prefer-immediate-return
-    - prefer-iterable-of
-    - prefer-last
-    - prefer-match-file-name:
-        exclude:
-          - test/**
-    - prefer-moving-to-variable:
-        allowed-duplicated-chains: 3
-        exclude:
-          - test/**
-    - prefer-named-boolean-parameters
-    # - prefer-named-imports # * OK, we just don't have global config
-    - prefer-null-aware-spread
-    - prefer-parentheses-with-if-null
-    # - prefer-prefixed-global-constants # * OK, we just don't have global config
-    - prefer-public-exception-classes
-    - prefer-return-await
-    # - prefer-returning-conditional-expressions # annoying sometimes
-    - prefer-simpler-patterns-null-check
-    - prefer-specific-cases-first
-    - prefer-static-class:
-        ignore-private: true
-        ignore-names:
-          - (.*)Provider
-          - use(.*)
-    - prefer-switch-with-enums:
-        ignore-contains: true
-    - prefer-test-matchers
-    - prefer-trailing-comma
-    # - prefer-type-over-var # we prefer type inference
-    - prefer-typedefs-for-callbacks
-    - prefer-unique-test-names
-    # - prefer-unwrapping-future-or # we are ok with awaiting values
-    - prefer-visible-for-testing-on-members
-    - avoid-missing-interpolation:
-        exclude:
-          - test/**
-    # - avoid-missing-test-files # * OK, but should be enabled per project
-    - avoid-misused-test-matchers
-    - prefer-wildcard-pattern
-    # - tag-name # * OK, we just don't have global config
-    - unnecessary-trailing-comma:
-        max-width: 80
-
-    ### Flutter
-    # - add-copy-with # * OK, we just don't have global config
-    - always-remove-listener
-    - avoid-border-all
-    - avoid-empty-setstate
-    - avoid-expanded-as-spacer
-    - avoid-incomplete-copy-with
-    - avoid-inherited-widget-in-initstate
-    - avoid-late-context
-    - avoid-missing-image-alt
-    - avoid-recursive-widget-calls
-    - avoid-returning-widgets
-    - avoid-shrink-wrap-in-lists
-    - avoid-single-child-column-or-row
-    - avoid-state-constructors
-    - avoid-stateless-widget-initialized-fields
-    - avoid-undisposed-instances
-    - avoid-unnecessary-overrides-in-state
-    - avoid-unnecessary-setstate
-    - avoid-unnecessary-stateful-widgets
-    - avoid-wrapping-in-padding
-    - check-for-equals-in-render-object-setters
-    - consistent-update-render-object
-    - dispose-fields
-    - prefer-action-button-tooltip
-    - prefer-const-border-radius
-    - prefer-correct-edge-insets-constructor
-    - prefer-dedicated-media-query-methods
-    - prefer-define-hero-tag
-    - prefer-extracting-callbacks
-    - prefer-single-widget-per-file:
-        ignore-private-widgets: true
-    - prefer-sliver-prefix
-    - prefer-text-rich
-    - prefer-using-list-view
-    - prefer-widget-private-members
-    - proper-super-calls
-    - use-setstate-synchronously
-
-    ### Provider
-    - avoid-instantiating-in-value-provider
-    - avoid-read-inside-build
-    - avoid-watch-outside-build
-    - dispose-providers
-    - prefer-multi-provider
-
-    ### Bloc
-    - avoid-bloc-public-methods
-    # - avoid-cubits
-    # - avoid-passing-bloc-to-bloc
-    - check-is-not-closed-after-async-gap
-    - prefer-correct-bloc-provider
-    - prefer-multi-bloc-provider
-
-    ### Equatable
-    # - extend-equatable # * OK, we just don't have global config
-    - list-all-equatable-fields
-
-    ### Flame - not used
-    # - avoid-creating-vector-in-update
-    # - avoid-initializing-in-on-mount
-    # - avoid-redundant-async-on-load
-    # - correct-game-instantiating
-
-    ### Patrol
-    - prefer-custom-finder-over-find
-    - prefer-symbol-over-key
-
-    ### Fake Async
-    - avoid-async-callback-in-fake-async
-
-    ### Get It
-    - avoid-functions-in-register-singleton:
-        severity: error
-
-    ### Flutter Hooks
-    - avoid-conditional-hooks
-    - avoid-hooks-outside-build
-    - prefer-use-prefix
-
-    ### Intl - not used
-    # - prefer-date-format
-    # - prefer-intl-name
-    # - prefer-number-format
-    # - prefer-providing-intl-description
-    # - prefer-providing-intl-examples
-    # - provide-correct-intl-args
-
-    ### Angular - not used
-    # - avoid-preserve-whitespace-false
-    # - component-annotation-arguments-ordering
-    # - prefer-on-push-cd-strategy
-
-  pubspec-rules:
-    ### Pubspec
-    - avoid-any-version
-    # - avoid-dependency-overrides
-    # - banned-dependencies # * OK, we just don't have global config
-    - prefer-caret-version-syntax
-    # - prefer-correct-package-name # * OK, we just don't have global config
-    - prefer-correct-screenshots
-    - prefer-publish-to-none
-    - prefer-semver-version
+# version 1.14.0 - https://dcm.dev/changelog/
+dart_code_metrics:
+  rules:
+    ### Common
+    # - arguments-ordering # way too pedantic
+    - avoid-accessing-collections-by-constant-index
+    - avoid-accessing-other-classes-private-members
+    - avoid-async-call-in-sync-function
+    # - avoid-banned-annotations # * OK, we just don't have global config
+    # - avoid-banned-file-names # * OK, we just don't have global config
+    # - avoid-banned-imports # * OK, we just don't have global config
+    # - avoid-banned-types # * OK, we just don't have global config
+    # - avoid-barrel-files # for now we use them
+    - avoid-bottom-type-in-patterns
+    - avoid-bottom-type-in-records
+    - avoid-cascade-after-if-null
+    - avoid-collapsible-if
+    - avoid-collection-methods-with-unrelated-types
+    # - avoid-collection-mutating-methods # sometimes it's ok
+    - avoid-contradictory-expressions
+    - avoid-declaring-call-method
+    - avoid-double-slash-imports
+    - avoid-duplicate-cascades
+    - avoid-duplicate-collection-elements
+    - avoid-duplicate-exports
+    - avoid-duplicate-initializers
+    - avoid-duplicate-map-keys
+    - avoid-duplicate-mixins
+    - avoid-duplicate-named-imports
+    - avoid-duplicate-patterns
+    - avoid-duplicate-switch-case-conditions
+    - avoid-duplicate-test-assertions
+    - avoid-dynamic
+    - avoid-empty-test-groups:
+        include-methods:
+          - blocTest
+          - blocPresentationTest
+    - avoid-equal-expressions
+    - avoid-excessive-expressions
+    - avoid-explicit-pattern-field-name
+    # - avoid-explicit-type-declaration # public API
+    - avoid-extensions-on-records
+    - avoid-function-type-in-records
+    - avoid-future-tostring
+    - avoid-generics-shadowing
+    - avoid-global-state
+    - avoid-identical-exception-handling-blocks
+    - avoid-ignoring-return-values
+    - avoid-importing-entrypoint-exports
+    - avoid-inferrable-type-arguments:
+        ignored-invocations:
+          - context.read
+          - context.watch
+          - GetIt.I
+    - avoid-inverted-boolean-checks
+    - avoid-keywords-in-wildcard-pattern
+    # - avoid-late-keyword
+    - avoid-local-functions
+    # - avoid-long-files # hard to get the right settings
+    # - avoid-long-functions # way too pedantic
+    # - avoid-long-parameter-list: # way too pedantic
+    #     ignore-optional: true # exclude optional and (non-required) named parameters
+    - avoid-long-records
+    - avoid-map-keys-contains
+    - avoid-missed-calls
+    - avoid-missing-enum-constant-in-map
+    - avoid-misused-wildcard-pattern
+    - avoid-mixing-named-and-positional-fields
+    # - avoid-mutating-parameters # we use ValueNotifier etc.
+    # - avoid-negated-conditions # sometimes it might be better
+    - avoid-nested-conditional-expressions:
+        acceptable-level: 2
+    - avoid-nested-futures
+    - avoid-nested-records
+    - avoid-nested-streams-and-futures
+    - avoid-nested-switch-expressions
+    - avoid-nested-switches
+    - avoid-non-ascii-symbols:
+        exclude:
+          - test/**
+    - avoid-non-null-assertion:
+        skip-checked-fields: true
+        exclude:
+          - test/**
+    - avoid-not-encodable-in-to-json
+    - avoid-nullable-interpolation
+    - avoid-nullable-parameters-with-default-values
+    - avoid-nullable-tostring
+    - avoid-one-field-records
+    - avoid-passing-async-when-sync-expected:
+        exclude:
+          - test/**
+    - avoid-passing-default-values
+    - avoid-passing-self-as-argument
+    - avoid-positional-record-field-access
+    - avoid-recursive-calls
+    - avoid-redundant-async
+    - avoid-redundant-else
+    - avoid-redundant-positional-field-name
+    - avoid-redundant-pragma-inline
+    - avoid-referencing-discarded-variables
+    - avoid-self-assignment
+    - avoid-self-compare
+    - avoid-shadowed-extension-methods
+    - avoid-shadowing:
+        ignore-parameters: true
+        ignored-names:
+          - context
+    # - avoid-similar-names # way too pedantic
+    - avoid-substring
+    - avoid-throw-in-catch-block
+    - avoid-throw-objects-without-tostring
+    - avoid-top-level-members-in-tests
+    - avoid-unassigned-late-fields
+    - avoid-unassigned-stream-subscriptions
+    - avoid-uncaught-future-errors
+    - avoid-unconditional-break
+    - avoid-unnecessary-call
+    - avoid-unnecessary-conditionals
+    - avoid-unnecessary-futures
+    # - avoid-unnecessary-getter # it's ok to have getter for private field
+    - avoid-unnecessary-if
+    - avoid-unnecessary-local-late
+    - avoid-unnecessary-negations
+    - avoid-unnecessary-nullable-return-type
+    - avoid-unnecessary-reassignment
+    - avoid-unnecessary-return
+    - avoid-unnecessary-super
+    - avoid-unnecessary-type-assertions
+    - avoid-unnecessary-type-casts
+    - avoid-unrelated-type-assertions
+    - avoid-unrelated-type-casts
+    - avoid-unsafe-collection-methods
+    - avoid-unused-after-null-check
+    - avoid-unused-generics
+    - avoid-unused-instances
+    - avoid-unused-parameters
+    - avoid-weak-cryptographic-algorithms
+    - avoid-wildcard-cases-with-enums
+    # - banned-usage # * OK, we just don't have global config
+    - binary-expression-operand-order
+    - double-literal-format
+    - enum-constants-ordering
+    - format-comment:
+        only-doc-comments: true
+    # - format-test-name # good but painful
+    - function-always-returns-null:
+        ignored-invocations:
+          - useEffect
+    - map-keys-ordering:
+        exclude:
+          - test/**
+    # - match-class-name-pattern # * OK, we just don't have global config
+    # - match-getter-setter-field-names # forces API to equals internal code
+    # - match-lib-folder-structure # maybe later
+    # - match-positional-field-names-on-assignment # not compatible with avoid-redundant-positional-field-name
+    - member-ordering:
+        order:
+          - public-fields
+          - private-fields
+          - public-getters
+          - private-getters
+          - public-setters
+          - private-setters
+          - constructors
+          - named-constructors
+          - public-methods
+          - private-methods
+        widgets-order:
+          - public-fields
+          - private-fields
+          - public-getters
+          - private-getters
+          - constructors
+          - named-constructors
+          - init-state-method
+          - overridden-public-methods
+          - public-methods
+          - build-method
+          - private-methods
+    - missing-test-assertion
+    - move-records-to-typedefs:
+        min-fields: 3
+        min-occurrences: 3
+    - move-variable-closer-to-its-usage
+    - move-variable-outside-iteration
+    - newline-before-case
+    - newline-before-return
+    - no-boolean-literal-compare:
+        allow-false: true # allows `variable == false` instead of just `!variable`
+    - no-empty-block
+    # - no-equal-arguments: # hard to set up so it makes sense
+    #     ignored-parameters:
+    #       - height
+    #       - width
+    #       - top
+    #       - right
+    #       - bottom
+    #       - left
+    #       - topLeft
+    #       - topRight
+    #       - bottomLeft
+    #       - bottomRight
+    - no-equal-conditions
+    - no-equal-nested-conditions
+    - no-equal-switch-case
+    - no-equal-switch-expression-cases
+    - no-equal-then-else
+    #- no-magic-number: # way too strict for default values of parameters etc.
+    - no-object-declaration
+    # - parameters-ordering # way too strict
+    # - prefer-addition-subtraction-assignments # dunno
+    - prefer-any-or-every
+    - prefer-async-await
+    - prefer-both-inlining-annotations
+    - prefer-bytes-builder
+    - prefer-commenting-analyzer-ignores
+    - prefer-conditional-expressions
+    - prefer-correct-callback-field-name
+    - prefer-correct-error-name:
+        allowed-names:
+          - e
+    - prefer-correct-for-loop-increment
+    - prefer-correct-future-return-type
+    # - prefer-correct-handler-name # not now
+    # - prefer-correct-identifier-length # way too pedantic
+    # - prefer-correct-json-casts # overkill
+    - prefer-correct-setter-parameter-name
+    - prefer-correct-stream-return-type
+    - prefer-correct-switch-length
+    - prefer-correct-test-file-name
+    - prefer-correct-type-name
+    - prefer-declaring-const-constructor
+    - prefer-early-return
+    - prefer-enums-by-name
+    - prefer-explicit-function-type
+    - prefer-explicit-parameter-names
+    # - prefer-explicit-type-arguments # inference is better
+    - prefer-first
+    # - prefer-getter-over-method # way too pedantic
+    - prefer-immediate-return
+    - prefer-iterable-of
+    - prefer-last
+    - prefer-match-file-name:
+        exclude:
+          - test/**
+    - prefer-moving-to-variable:
+        allowed-duplicated-chains: 3
+        exclude:
+          - test/**
+    - prefer-named-boolean-parameters
+    # - prefer-named-imports # * OK, we just don't have global config
+    - prefer-null-aware-spread
+    - prefer-parentheses-with-if-null
+    # - prefer-prefixed-global-constants # * OK, we just don't have global config
+    - prefer-public-exception-classes
+    - prefer-return-await
+    # - prefer-returning-conditional-expressions # annoying sometimes
+    - prefer-simpler-patterns-null-check
+    - prefer-specific-cases-first
+    - prefer-static-class:
+        ignore-private: true
+        ignore-names:
+          - (.*)Provider
+          - use(.*)
+    - prefer-switch-with-enums:
+        ignore-contains: true
+    - prefer-test-matchers
+    - prefer-trailing-comma
+    # - prefer-type-over-var # we prefer type inference
+    - prefer-typedefs-for-callbacks
+    - prefer-unique-test-names
+    # - prefer-unwrapping-future-or # we are ok with awaiting values
+    - prefer-visible-for-testing-on-members
+    - avoid-missing-interpolation:
+        exclude:
+          - test/**
+    # - avoid-missing-test-files # * OK, but should be enabled per project
+    - avoid-misused-test-matchers
+    - prefer-wildcard-pattern
+    # - tag-name # * OK, we just don't have global config
+    - unnecessary-trailing-comma:
+        max-width: 80
+
+    ### Flutter
+    # - add-copy-with # * OK, we just don't have global config
+    - always-remove-listener
+    - avoid-border-all
+    - avoid-empty-setstate
+    - avoid-expanded-as-spacer
+    - avoid-incomplete-copy-with
+    - avoid-inherited-widget-in-initstate
+    - avoid-late-context
+    - avoid-missing-image-alt
+    - avoid-recursive-widget-calls
+    - avoid-returning-widgets
+    - avoid-shrink-wrap-in-lists
+    - avoid-single-child-column-or-row
+    - avoid-state-constructors
+    - avoid-stateless-widget-initialized-fields
+    - avoid-undisposed-instances
+    - avoid-unnecessary-overrides-in-state
+    - avoid-unnecessary-setstate
+    - avoid-unnecessary-stateful-widgets
+    - avoid-wrapping-in-padding
+    - check-for-equals-in-render-object-setters
+    - consistent-update-render-object
+    - dispose-fields
+    - prefer-action-button-tooltip
+    - prefer-const-border-radius
+    - prefer-correct-edge-insets-constructor
+    - prefer-dedicated-media-query-methods
+    - prefer-define-hero-tag
+    - prefer-extracting-callbacks
+    - prefer-single-widget-per-file:
+        ignore-private-widgets: true
+    - prefer-sliver-prefix
+    - prefer-text-rich
+    - prefer-using-list-view
+    - prefer-widget-private-members
+    - proper-super-calls
+    - use-setstate-synchronously
+
+    ### Provider
+    - avoid-instantiating-in-value-provider
+    - avoid-read-inside-build
+    - avoid-watch-outside-build
+    - dispose-providers
+    - prefer-multi-provider
+
+    ### Bloc
+    - avoid-bloc-public-methods
+    # - avoid-cubits
+    # - avoid-passing-bloc-to-bloc
+    - check-is-not-closed-after-async-gap
+    - prefer-correct-bloc-provider
+    - prefer-multi-bloc-provider
+
+    ### Equatable
+    # - extend-equatable # * OK, we just don't have global config
+    - list-all-equatable-fields
+
+    ### Flame - not used
+    # - avoid-creating-vector-in-update
+    # - avoid-initializing-in-on-mount
+    # - avoid-redundant-async-on-load
+    # - correct-game-instantiating
+
+    ### Patrol
+    - prefer-custom-finder-over-find
+    - prefer-symbol-over-key
+
+    ### Fake Async
+    - avoid-async-callback-in-fake-async
+
+    ### Get It
+    - avoid-functions-in-register-singleton:
+        severity: error
+
+    ### Flutter Hooks
+    - avoid-conditional-hooks
+    - avoid-hooks-outside-build
+    - prefer-use-prefix
+
+    ### Intl - not used
+    # - prefer-date-format
+    # - prefer-intl-name
+    # - prefer-number-format
+    # - prefer-providing-intl-description
+    # - prefer-providing-intl-examples
+    # - provide-correct-intl-args
+
+    ### Angular - not used
+    # - avoid-preserve-whitespace-false
+    # - component-annotation-arguments-ordering
+    # - prefer-on-push-cd-strategy
+
+  pubspec-rules:
+    ### Pubspec
+    - avoid-any-version
+    # - avoid-dependency-overrides
+    # - banned-dependencies # * OK, we just don't have global config
+    - prefer-caret-version-syntax
+    # - prefer-correct-package-name # * OK, we just don't have global config
+    - prefer-correct-screenshots
+    - prefer-publish-to-none
+    - prefer-semver-version
diff --git a/packages/netglade_analysis/pubspec.yaml b/packages/netglade_analysis/pubspec.yaml
index 037d519..60417b7 100644
--- a/packages/netglade_analysis/pubspec.yaml
+++ b/packages/netglade_analysis/pubspec.yaml
@@ -1,5 +1,5 @@
 name: netglade_analysis
-version: 7.0.0
+version: 8.0.0
 description: Lint rules for Dart and Flutter used internally at netglade.
 repository: https://github.com/netglade/flutter_core/tree/main/packages/netglade_analysis
 issue_tracker: https://github.com/netglade/flutter_core/issues