PackageTrack
Sign in Get early access

pyramid_lint

Linting tool for Dart and Flutter projects to encourage good coding practices.

3.0.0 3.0K downloads/mo #4655 most downloaded on pub.dev charlescyt/pyramid_lint

What this package is like to depend on

Last release 2 months ago

03 Jun 2026

Release timing varies

gaps range from 3 weeks to 7 months

Nearly every release is documented

notes for 22 of 22 stable releases

Nothing withdrawn

no release was ever pulled

3 years old

22 releases · first in 2023

2 releases in the last 12 months

see the full history below

Release timeline

22 releases · Sep 2023 to Jun 2026
2024 2025 2026
Release Pre-release

Releases

latest 22
  1. 3.0.0 03 Jun 2026
    Release notes

    Changed

    Removed

    • BREAKING: Drop custom_lint / custom_lint_builder dependency and CLI integration.
    • Lint: avoid_abbreviations_in_doc_comments.
    • Lint: avoid_nested_if.
    • Lint: boolean_prefixes.
    • Lint: max_switch_cases.
    • Lint: avoid_returning_widgets.
    • Lint: avoid_redundant_pattern_field_names in favor of the built-in simplify_variable_pattern.
    • Lint: avoid_inverted_boolean_expressions.
    • Lint: prefer_const_constructor_declarations.
    • Lint: prefer_immediate_return.
    • Assist: invert_boolean_expression.
    • Assist: swap_then_else_expression.
    • Assist: use_edge_insets_zero.
    • Assist: wrap_all_children_with_expanded.
    • Assist: wrap_with_listenable_builder.
    Open source →
  2. 2.4.0 14 Nov 2025
    Release notes

    Changed

    • Bump the minimum analyzer version to 8.0.0. (#73)
    Open source →
  3. 2.3.0 16 Aug 2025
    Release notes

    Changed

    • Bump the minimum analyzer version to 7.5.0. (#71)
    Open source →
  4. 2.2.0 28 Jul 2025
    Release notes

    Changed

    • Bump the minimum analyzer version to 7.4.0. (#68)
    Open source →
  5. 2.1.0 31 May 2025
    Release notes

    Added

    • Assist: convert_to_for_in_iterable_indexed_loop. (#55)
    • Lint: specify_icon_button_tooltip. (#56)

    Changed

    • Require Dart 3.8.0.

    Fixed

    • Fix prefer_const_constructor_declarations to support constructors with super parameters. (#58)

    Removed

    • Remove wrap_with_expanded assist in favor of the built-in one introduced in Dart 3.7.0. (#60)
    • Remove wrap_with_value_listenable_builder assist in favor of the built-in one introduced in Dart 3.8.0. (#61)
    Open source →
  6. 2.0.3 14 Mar 2025
    Release notes

    Changed

    • Bump the minimum analyzer_plugin version to 0.13.0. (#52 thanks to [jogboms])
    Open source →
  7. 2.0.2 05 Feb 2025
    Release notes

    Changed

    • Require Dart 3.6.0.
    • Bump the minimum analyzer version to 7.0.0.
    • Bump the minimum custom_lint_builder version to 0.7.0.
    • Bump the minimum pubspec_parse version to 1.4.0.
    Open source →
  8. 2.0.1 15 Aug 2024
    Release notes

    Changed

    • Bump the minimum analyzer version to 6.6.0.
    • Bump the minimum custom_lint_builder version to 0.6.5.
    • avoid_public_members_in_states now ignores public fields and methods with @visibleForTesting annotations.

    Fixed

    • Fix false positive for dispose_controllers when dispose is already called via cascade notation.
    Open source →
  9. 2.0.0 06 Mar 2024
    Release notes

    Added

    • Add support for changing the lint severity. (#38)
    • Lint: avoid_mutable_global_variables (#37)
    • Lint: avoid_redundant_pattern_field_names (#40)
    • Lint: avoid_positional_fields_in_records (#41)
    • Lint: class_members_ordering (#42)
    • Assist: wrap_with_listenable_builder (#26) thanks to [imsamgarg])

    Changed

    • BREAKING: All lints are now disabled by default. To enable a specific lint, add the lint in the analysis_options.yaml file. (#39)
    • BREAKING: avoid_duplicate_import has been renamed to no_duplicate_imports.
    • BREAKING: prefer_declaring_const_constructors has been renamed to prefer_const_constructor_declarations.
    • BREAKING: doc_comments_before_annotations has been renamed to always_put_doc_comments_before_annotations.
    • BREAKING: boolean_prefix has been renamed to boolean_prefixes.
    • BREAKING: always_declare_parameter_names has been renamed to always_specify_parameter_names.
    • BREAKING: prefer_spacer has been renamed to use_spacer.
    • BREAKING: proper_controller_dispose has been renamed to dispose_controllers.
    • BREAKING: avoid_widget_state_public_members has been renamed to avoid_public_members_in_states.
    • BREAKING: proper_edge_insets_constructor has been renamed to proper_edge_insets_constructors.
    • BREAKING: prefer_dedicated_media_query_method has been renamed to prefer_dedicated_media_query_functions.
    • Bump the minimum custom_lint_builder version to 0.6.2.
    • Fix false positive for avoid_nested_if when the if statement is a else if statement. (#44)

    Removed

    • BREAKING: Remove prefer_value_changed lint. (#45)
    Open source →
  10. 1.5.0 14 Feb 2024
    Release notes

    Added

    • Lint: prefer_iterable_any (#36)
    • Lint: prefer_iterable_every (#36)

    Changed

    • wrap_with_layout_builder will not be available if the selected widget is a LayoutBuilder or already wrapped with a LayoutBuilder. (#35)
    Open source →
  11. 1.4.0 06 Feb 2024
    Release notes

    Added

    • Lint: avoid_nested_if (#25)
    • Lint: max_switch_cases (#30)
    • Assist: wrap_all_children_with_expanded (#27)

    Changed

    • avoid_returning_widgets now ignores static, overridden and extension methods and supports ignored_method_names option. (#24 #28)
    • Bump the minimum custom lint version to 0.6.0.

    Fixed

    • Fix false positive for prefer_declaring_const_constructors when redirecting/super constructor is not a const constructor. (#29)
    • Fix incorrect quick fix for prefer_iterable_first and prefer_iterable_last on 2D list. (#33)
    Open source →
  12. 1.3.0 15 Jan 2024
    Release notes

    Added

    • Lint: no_self_comparisons (#9)
    • Lint: avoid_widget_state_public_members (#10)
    • Assist: wrap_with_value_listenable_builder (#16 thanks to [imsamgarg])

    Changed

    • prefer_dedicated_media_query_method now supports indirect calls to MediaQuery.of(context) and MediaQuery.maybeOf(context) (#13 thanks to [imsamgarg])
    • proper_controller_dispose now supports ChangeNotifier's subclasses (#14 thanks to [imsamgarg])
    • Add quick fixes for proper_controller_dispose (#15 thanks to [imsamgarg])

    Fixed

    • Fix boolean_prefix false positive on overridden methods (#18 thanks to [imsamgarg])
    • Fix prefer_async_callback to handle cases where the type is not void (#19 thanks to [imsamgarg])
    Open source →
  13. 1.2.0 23 Nov 2023
    Release notes

    Added

    • Lint: avoid_abbreviations_in_doc_comments
    • Lint: doc_comments_before_annotations
    • Lint: prefer_library_prefixes

    Changed

    • Disable Flutter lints and assists for Dart projects.
    • Improve lints' messages.
    • Improve documentation.
    • prefer_dedicated_media_query_method now supports onOffSwitchLabels and textScaler.

    Fixed

    • Fix the quick fix for prefer_void_callback, prefer_async_callback and prefer_value_changed when the function is nullable.
    Open source →
  14. 1.1.0 18 Oct 2023
    Release notes

    Added

    • Lint: avoid_unused_parameters
    • Lint: prefer_async_await
    • Lint: prefer_new_line_before_return
    • Lint: unnecessary_nullable_return_type

    Fixed

    • Fix pubspec.yaml description and format (#1 thanks to [parlough])
    Open source →
  15. 1.0.0 12 Oct 2023
    Release notes

    Added

    • Lint: avoid_returning_widgets
    • Lint: boolean_prefix

    Changed

    • BREAKING: avoid_empty_block has been renamed to avoid_empty_blocks.
    • BREAKING: avoid_inverted_boolean_expression has been renamed to avoid_inverted_boolean_expressions.
    • BREAKING: correct_order_for_super_dispose has been renamed to proper_super_dispose.
    • BREAKING: correct_order_for_super_init_state has been renamed to proper_super_init_state.
    • BREAKING: proper_usage_of_expanded_and_flexible has been renamed to proper_expanded_and_flexible.
    • BREAKING: proper_usage_of_from_environment has been renamed to proper_from_environment.
    • BREAKING: prefer_declaring_const_constructor has been renamed to prefer_declaring_const_constructors.
    • BREAKING: prefer_declaring_parameter_name has been renamed to always_declare_parameter_names.
    • proper_edge_insets_constructor now works when arguments are variables.
    • proper_edge_insets_constructor is no longer triggered if all the arguments are 0 in flavor of the built-in use_named_constants.

    Fixed

    • Fix prefer_underscore_for_unused_callback_parameters false positive on unused parameters in function declarations.
    Open source →
  16. 0.6.0 09 Oct 2023
    Release notes

    Added

    • Lint: avoid_dynamic
    • Lint: prefer_async_callback
    • Lint: prefer_value_changed
    • Lint: prefer_void_callback
    • Lint: prefer_underscore_for_unused_callback_parameters
    Open source →
  17. 0.5.0 04 Oct 2023
    Release notes

    Added

    • Lint: proper_usage_of_from_environment
    • Assist: wrap_with_layout_builder

    Changed

    • Assists triggered on InstanceCreationExpression are now available on new and const keywords.

    Fixed

    • Fix a bug where the fix for correct_order_for_super_dispose is not working.
    Open source →
  18. 0.4.0 26 Sep 2023
    Release notes

    Added

    • Lint: avoid_duplicate_import
    • Lint: max_lines_for_file
    • Lint: max_lines_for_function
    Open source →
  19. 0.3.0 25 Sep 2023
    Release notes

    Added

    • Lint: avoid_inverted_boolean_expression
    • Assist: invert_boolean_expression
    • Assist: swap_then_else_expression
    Open source →
  20. 0.2.0 20 Sep 2023
    Release notes

    Added

    • Lint: prefer_dedicated_media_query_method
    • Lint: proper_controller_dispose
    • Lint: proper_edge_insets_constructor
    Open source →
  21. 0.1.1 17 Sep 2023
    Release notes

    Fixed

    • README.md image links.
    Open source →
  22. 0.1.0 17 Sep 2023
    Release notes
    • Initial release.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive