PackageTrack
Sign in Get early access

leancode_lint

Robust and high-quality lint rules used at LeanCode.

27.0.0 36K downloads/mo #1716 most downloaded on pub.dev leancodepl/flutter_corelibrary

What this package is like to depend on

Last release 6 days ago

18 Aug 2026

Release timing varies

gaps range from 8 days to 3 months

Nearly every release is documented

notes for 52 of 54 stable releases

Nothing withdrawn

no release was ever pulled

5 years old

59 releases · first in 2021

22 releases in the last 12 months

see the full history below

Release timeline

59 releases · Oct 2021 to Aug 2026
2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 59
  1. 27.0.0 18 Aug 2026
    Release notes Open source →
    Release notes Open source →
    Release notes
    • Support Dart 3.13

    • Enable the following lints:

    • async_return_with_no_await

    • empty_container_bodies

    • initialize_in_field_declaration

    • unnecessary_const_in_enum_constructor

    • unnecessary_primary_constructor_body

    • unnecessary_type_name_in_constructor

    • use_declaring_parameters

    • use_primary_constructors

    • Remove deprecated lints:

    • avoid_private_typedef_functions

    • one_member_abstracts

    • unnecessary_await_in_return

    Open source →
  2. 26.3.0 15 Aug 2026
    Release notes Open source →
    Release notes
    • Update avoid_context_read_in_build to exempt BuildContext-taking closures that don't return a Widget (e.g. a provider's create), since they run once rather than on every rebuild.
    • Support Dart 3.13 primary constructors:
      • missing_equatable_props now requires fields declared by a primary constructor's declaring parameters to be listed in props, and recognizes super.props as needed when the superclass declares its fields in a primary constructor.
      • constructor_parameters_and_fields_should_have_the_same_order now treats fields declared by a primary constructor as coming before the fields declared in the class body.
      • avoid_build_context_in_blocs now reports BuildContext parameters declared in a Bloc/Cubit's primary constructor.
      • prefer_abstract_final_class now recognizes a private ._() primary constructor as an instantiation guard, and its fix removes it from the class header.
      • The "convert to a named formal parameter" assist now preserves the parameter's own declaration (e.g. a primary constructor's declaring final int x or a super.x parameter) instead of always producing this.-prefixed parameters.
    Open source →
    Release notes
    • Update avoid_context_read_in_build to exempt BuildContext -taking closures that don't return a Widget (e.g. a provider's create ), since they run once rather than on every rebuild.

    • Support Dart 3.13 primary constructors:

    • missing_equatable_props now requires fields declared by a primary constructor's declaring parameters to be listed in props , and recognizes super.props as needed when the superclass declares its fields in a primary constructor.

    • constructor_parameters_and_fields_should_have_the_same_order now treats fields declared by a primary constructor as coming before the fields declared in the class body.

    • avoid_build_context_in_blocs now reports BuildContext parameters declared in a Bloc/Cubit's primary constructor.

    • prefer_abstract_final_class now recognizes a private ._() primary constructor as an instantiation guard, and its fix removes it from the class header.

    • The "convert to a named formal parameter" assist now preserves the parameter's own declaration (e.g. a primary constructor's declaring final int x or a super.x parameter) instead of always producing this. -prefixed parameters.

    Open source →
  3. 26.2.0 10 Aug 2026
    Release notes Open source →
    Release notes
    • Update prefer_equatable_mixin to suggest mixing in Equatable directly when the linted package depends on equatable 2.1.0 or higher, where EquatableMixin is deprecated.
    • Update missing_equatable_props to not report a missing super.props when the superclass chain declares no fields, and so its props is empty.
    Open source →
    Release notes
    • Update prefer_equatable_mixin to suggest mixing in Equatable directly when the linted package depends on equatable 2.1.0 or higher, where EquatableMixin is deprecated.

    • Update missing_equatable_props to not report a missing super.props when the superclass chain declares no fields, and so its props is empty.

    Open source →
  4. 26.1.0 08 Aug 2026
    Release notes Open source →
    Release notes
    • Require analyzer: '>=13.0.0 <15.0.0'
    Open source →
    Release notes
    • Require analyzer: '>=13.0.0 <15.0.0'
    Open source →
  5. 26.0.0 06 Aug 2026
    Release notes Open source →
    Release notes Open source →
    Release notes
    • Add new custom lints:

    • avoid_direct_collection_equality_checks

    • avoid_context_read_in_build

    • avoid_build_context_in_blocs

    Open source →
  6. 25.0.0 25 Jul 2026
    Release notes Open source →
    Release notes
    Open source →
    Release notes
    • Add new custom lint prefer_abstract_final_class
    Open source →
  7. 24.0.0 26 Jun 2026
    Release notes
    Open source →
    Release notes
    • Add new custom lints:

    • avoid_catch_error

    • missing_equatable_props

    • never_discard_build_context

    • Replace usages of members deprecated in the analyzer.

    Open source →
  8. 23.0.0 04 May 2026
    Release notes
    • Breaking: Require analyzer ^13.0.0.
    Open source →
    Release notes
    • Breaking: Require analyzer ^13.0.0.
    Open source →
  9. 22.0.1 04 May 2026
    Release notes
    • Fix false positive in bloc_related_class_naming when using generics.
    Open source →
    Release notes
    • Fix false positive in bloc_related_class_naming when using generics.
    Open source →
  10. 22.0.0 05 Mar 2026
    Release notes Open source →
    Release notes
    • Add new custom lints:

    • prefer_equatable_mixin

    • bloc_related_class_naming

    • bloc_subclasses_naming

    • Enable the following lints:

    • always_use_package_imports

    Open source →
  11. 21.0.0 16 Feb 2026
    Release notes Open source →
    Release notes
    • Support Flutter 3.41 and Dart 3.11

    • Enable the following lints:

    • simplify_variable_pattern

    • no_literal_bool_comparisons

    • Remove deprecated lints:

    • avoid_null_checks_in_equality_operators

    • prefer_final_parameters

    • use_if_null_to_convert_nulls_to_bools

    Open source →
  12. 21.0.0+1 26 Feb 2026

    Nothing published for this version

  13. 20.0.2 11 Feb 2026
    Release notes
    • Fix: Support entries with spaces in use_design_system_item.
    Open source →
    Release notes
    • Fix: Support entries with spaces in use_design_system_item .
    Open source →
  14. 20.0.1 10 Feb 2026
    Release notes
    • Add the example/ directory with default and custom configuration examples.
    Open source →
    Release notes
    • Add the example/ directory with default and custom configuration examples.
    Open source →
  15. 20.0.0 04 Feb 2026
    Release notes
    • Breaking: Migrate from custom_lint to the analysis server plugin. See the README for instructions on how to use the plugin.
    • Breaking: Require analyzer ^10.0.0.
    • Breaking: Require Dart 3.10.
    • Add configurable names for the catch_parameter_names rule. Defaults remain err and st.
    • Move implementation files into the src directory.
    Open source →
    Release notes
    • Breaking: Migrate from custom_lint to the analysis server plugin. See the README for instructions on how to use the plugin.

    • Breaking: Require analyzer ^10.0.0.

    • Breaking: Require Dart 3.10.

    • Add configurable names for the catch_parameter_names rule. Defaults remain err and st .

    • Move implementation files into the src directory.

    Open source →
  16. 20.0.0-dev.5 25 Oct 2025 pre-release

    Nothing published for this version

  17. 20.0.0-dev.4 28 Sep 2025 pre-release

    Nothing published for this version

  18. 20.0.0-dev.3 28 Sep 2025 pre-release

    Nothing published for this version

  19. 20.0.0-dev.2 22 Sep 2025 pre-release

    Nothing published for this version

  20. 20.0.0-dev.1 22 Sep 2025 pre-release

    Nothing published for this version

  21. 19.0.1 07 Nov 2025
    Release notes
    • fix: Make prefer_center_over_align not crash in non-Flutter packages.
    Open source →
    Release notes
    • fix: Make prefer_center_over_align not crash in non-Flutter packages.
    Open source →
  22. 19.0.0 18 Sep 2025
    Release notes
    Open source →
    Release notes
    • Support analyzer 8.1.0

    • Support custom_lint_builder 0.8.1

    • Enable the following lints:

    • prefer_center_over_align

    Open source →
  23. 18.0.0 19 Aug 2025
    Release notes
    Open source →
    Release notes
    • chore: Refactor lint codes to use built-in positional parameters.

    • Support Flutter 3.35 and Dart 3.9

    • Enable the following lints:

    • switch_on_type

    • unnecessary_unawaited

    • use_dedicated_media_query_methods

    • use_align

    • use_padding

    • Disable the omit_obvious_property_types lint due to conflict with type_annotate_public_apis ( Dart SDK issue #60642 )

    Open source →
  24. 17.0.0 02 Jun 2025
    Release notes
    Open source →
    Release notes
    • Support Flutter 3.32 and Dart 3.8

    • Enable the following lints:

    • unnecessary_ignore

    • use_null_aware_elements

    Open source →
  25. 16.0.0 08 May 2025
    Release notes
    Open source →
    Release notes
    • Support Flutter 3.29 and Dart 3.7

    • Enable the following lints:

    • strict_top_level_inference

    • unnecessary_underscores

    • omit_obvious_property_types

    • unnecessary_async

    • unsafe_variance

    • Remove the following lints which have been removed from Dart:

    • package_api_docs

    • unsafe_html

    • Disable the require_trailing_commas lint as it conflicts with Dart 3.7 formatter ( https://github.com/dart-lang/sdk/issues/60119 ).

    Open source →
  26. 15.1.0 06 Mar 2025
    Release notes
    • Support analyzer 7.0.0
    Open source →
    Release notes
    • Support analyzer 7.0.0
    Open source →
  27. 15.0.0 27 Dec 2024
    Release notes Open source →
    Release notes
    • Enable the following lints:

    • use_truncating_division

    • avoid_futureor_void

    • omit_obvious_local_variable_types

    • Disable the omit_local_variable_types

    Open source →
  28. 14.4.0 13 Dec 2024
    Release notes
    • Support Flutter 3.27 and Dart 3.6
    Open source →
  29. 14.3.0 13 Dec 2024
    Release notes
    • Support custom_lint 0.7.0
    Open source →
    Release notes
    • Support custom_lint 0.7.0
    Open source →
  30. 14.2.0 16 Oct 2024
    Release notes
    • Remove deprecated division_optimization hint
    Open source →
    Release notes
    • Remove deprecated division_optimization hint
    Open source →
  31. 14.1.0 02 Sep 2024
    Release notes
    • Allow usage of a forbidden item in a hide combinator in use_design_system_item
    Open source →
    Release notes
    • Allow usage of a forbidden item in a hide combinator in use_design_system_item
    Open source →
  32. 14.0.0 28 Aug 2024
    Release notes
    Open source →
    Release notes
    • Bump minimum Dart version to 3.5

    • Enable the following lints:

    • unintended_html_in_doc_comment

    • invalid_runtime_check_with_js_interop_types

    • document_ignores

    • Disable the avoid_positional_boolean_parameters lint

    Open source →
  33. 13.0.0 10 Jun 2024
    Release notes
    Open source →
    Release notes
    • Bump minimum Dart version to 3.4

    • Enable the following lints:

    • unnecessary_library_name

    • missing_code_block_language_in_doc_comment

    Open source →
  34. 12.1.0 29 Apr 2024
    Release notes
    • Treat HookWidget as a new hook context. This should remove some false positives in avoid_conditional_hooks and catch new cases in hook_widget_does_not_use_hooks.
    Open source →
    Release notes
    • Treat HookWidget as a new hook context. This should remove some false positives in avoid_conditional_hooks and catch new cases in hook_widget_does_not_use_hooks .
    Open source →
  35. 12.0.0 04 Apr 2024
    Release notes
    • Remove deprecated import_of_legacy_library_into_null_safe error code
    Open source →
    Release notes
    • Remove deprecated import_of_legacy_library_into_null_safe error code
    Open source →
  36. 11.0.0 05 Mar 2024
    Release notes
    • Treat HookConsumer and HookConsumerWidget from package:hooks_riverpod as hook widgets
    Open source →
    Release notes
    • Treat HookConsumer and HookConsumerWidget from package:hooks_riverpod as hook widgets
    Open source →
  37. 10.0.0 04 Mar 2024
    Release notes
    • Bump custom_lint_builder dependency to 0.6.2
    Open source →
    Release notes
    • Bump custom_lint_builder dependency to 0.6.2
    Open source →
  38. 9.0.0 15 Feb 2024
    Release notes
    • Disable lints deprecated in Dart 3.3.0
    • Bump minimum Dart version to 3.3
    • Enable custom lint avoid_single_child_in_multi_child_widgets for Column, Row, Flex, Wrap, SliverList, MultiSliver, SliverChildListDelegate, SliverMainAxisGroup, and SliverCrossAxisGroup
    • Fix avoid_conditional_hooks false positive
    Open source →
    Release notes
    • Disable lints deprecated in Dart 3.3.0

    • Bump minimum Dart version to 3.3

    • Enable custom lint avoid_single_child_in_multi_child_widgets for Column , Row , Flex , Wrap , SliverList , MultiSliver , SliverChildListDelegate , SliverMainAxisGroup , and SliverCrossAxisGroup

    • Fix avoid_conditional_hooks false positive

    Open source →
  39. 8.0.0 06 Dec 2023
    Release notes Open source →
    Release notes
    • Enable the following lints:

    • annotate_redeclares

    • use_build_context_synchronously

    Open source →
  40. 7.0.0 08 Nov 2023
    Release notes
    • Implement LeanCode custom lints
    Open source →
  41. 7.0.0+1 08 Nov 2023
    Release notes
    • Change package description on pub.dev and in README
    Open source →
  42. 6.0.0 25 Aug 2023
    Release notes
    Open source →
    Release notes
    • Enable the following lints:

    • no_self_assignments

    • no_wildcard_variable_uses

    • Remove deprecated rules iterable_contains_unrelated_type and list_remove_unrelated_type

    • Bump minimum Dart version to 3.1

    Open source →
  43. 5.0.0 04 Aug 2023
    Release notes
    Open source →
    Release notes
    • Elevate level of all infos to warning except for:

    • deprecated_member_use_from_same_package

    • deprecated_export_use

    • deprecated_member_use

    • hack

    • todo

    • undone

    Open source →
  44. 4.0.0 16 May 2023
    Release notes
    Open source →
    Release notes
    • Enable the following lints:

    • implicit_reopen

    • unnecessary_breaks

    • type_literal_in_constant_pattern

    • invalid_case_patterns

    • deprecated_member_use_from_same_package

    • Remove the deprecated lint enable_null_safety

    • Bump minimum Dart version to 3.0

    • Remove dependence on flutter_lints

    Open source →
  45. 4.0.0+1 16 May 2023
    Release notes
    Open source →
    Release notes
    • Remove lint library_private_types_in_public_api which was accidentally enabled
    Open source →
  46. 4.0.0+2 21 Jul 2023
    Release notes
    • Add analysis and lints topics to pubspec
    Open source →
    Release notes
    • Add analysis and lints topics to pubspec
    Open source →
  47. 3.0.0 09 Apr 2023
    Release notes
    • Migrate from analyzer.strong-mode.{implicit-casts,implicit-dynamic} to analyzer.language.{strict-casts,strict-inference,strict-raw-types} which might report new warnings
    Open source →
    Release notes
    • Migrate from analyzer.strong-mode.{implicit-casts,implicit-dynamic} to analyzer.language.{strict-casts,strict-inference,strict-raw-types} which might report new warnings
    Open source →
  48. 2.1.0 01 Feb 2023
    Release notes Open source →
    Release notes
    • Enable the following lints:

    • collection_methods_unrelated_type

    • combinators_ordering

    • dangling_library_doc_comments

    • enable_null_safety

    • library_annotations

    • unnecessary_library_directive

    • use_string_in_part_of_directives

    Open source →
  49. 2.1.0+1 17 Feb 2023

    Nothing published for this version

  50. 2.0.0 11 Oct 2022
    Release notes
    • Breaking: Remove the unawaited() function which is provided by Dart since 2.14 (#88)
    • Disable the discarded_futures lint (#87)
    • Disable the deprecated invariant_booleans lint (#86)
    Open source →
    Release notes
    • Breaking: Remove the unawaited() function which is provided by Dart since 2.14 (#88)

    • Disable the discarded_futures lint (#87)

    • Disable the deprecated invariant_booleans lint (#86)

    Open source →
  51. 2.0.0+1 11 Oct 2022
    Release notes
    • Fix broken changelog (#90)
    Open source →
  52. 1.3.0 18 Sep 2022
    Release notes Open source →
    Release notes
    • Enable the following lints:

    • discarded_futures

    • unnecessary_to_list_in_spreads

    • unnecessary_null_aware_operator_on_extension_on_nullable

    Open source →
  53. 1.2.1 18 May 2022
    Release notes Open source →
    Release notes
    • Disable the following lints:

    • use_build_context_synchronously

    • library_private_types_in_public_api

    Open source →
  54. 1.2.0 14 May 2022
    Release notes
    Open source →
    Release notes
    • Enable the following lints:

    • use_super_parameters

    • use_enums

    • null_check_on_nullable_type_parameter

    • Bump minimum Dart version to 2.17.

    Open source →
  55. 1.1.0 01 Mar 2022
    Release notes Open source →
    Release notes
    • Enable the following lints:

    • avoid_final_parameters

    • conditional_uri_does_not_exist

    • literal_only_boolean_expressions

    • no_leading_underscores_for_library_prefixes

    • no_leading_underscores_for_local_identifiers

    • secure_pubspec_urls

    • sized_box_shrink_expand

    • unnecessary_constructor_name

    • unnecessary_late

    Open source →
  56. 1.0.2 01 Dec 2021
    Release notes
    • Remove dependency on flutter
    • Update README to differentiate between app and package projects
    Open source →
    Release notes
    • Remove dependency on flutter

    • Update README to differentiate between app and package projects

    Open source →
  57. 1.0.1 24 Nov 2021
    Release notes
    Open source →
    Release notes
    • Disable the following lints:

    • prefer_final_parameters

    • library_private_types_in_public_api

    • Fix warning with package:flutter_lints/flutter.yaml not being found

    Open source →
  58. 1.0.1+1 24 Nov 2021
    Release notes
    • Improve explanation in README on why one might want to add leancode_lint as a normal dependency instead of dev dependency when using Dart version < 2.14
    Open source →
    Release notes
    • Improve explanation in README on why one might want to add leancode_lint as a normal dependency instead of dev dependency when using Dart version < 2.14
    Open source →
  59. 1.0.0 29 Oct 2021
    Release notes
    • Initial release
    Open source →
    Release notes
    • Initial release

    77

    likes

    160

    points

    34.4k

    downloads

    Documentation

    API reference

    Publisher

    leancode.co

    Weekly Downloads

    Metadata

    Robust and high-quality lint rules used at LeanCode.

    Homepage

    Repository (GitHub)

    View/report issues

    Topics

    #analysis #analyzer #code-style #lint #lints

    License

    Apache-2.0 ( license )

    Dependencies

    analysis_server_plugin , analyzer , analyzer_plugin , meta , path , source_span , yaml

    More

    Packages that depend on leancode_lint

    ← Metadata

    77

    likes

    160

    points

    34.4k

    downloads

    Documentation

    API reference

    Publisher

    leancode.co

    Weekly Downloads

    Metadata

    Robust and high-quality lint rules used at LeanCode.

    Homepage

    Repository (GitHub)

    View/report issues

    Topics

    #analysis #analyzer #code-style #lint #lints

    License

    Apache-2.0 ( license )

    Dependencies

    analysis_server_plugin , analyzer , analyzer_plugin , meta , path , source_span , yaml

    More

    Packages that depend on leancode_lint

    Back

    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