banner

pub tag buymeacoffee sponsor patreon discord instagram license


Summary

df_safer_dart_annotations provides annotations used by df_safer_dart_lints custom lint rules. These annotations help enforce safety patterns in your code.

Available Annotations

Annotation Purpose
@mustHandleReturn Warns when return value is ignored
@mustHandleReturnOrError Errors when return value is ignored
@noFutures Warns when Futures are used in annotated scope
@noFuturesOrError Errors when Futures are used in annotated scope
@mustBeAnonymous Warns when non-anonymous functions are used
@mustBeStrongRef Warns when weak references are used
@mustAwaitAllFutures Warns when Futures aren't awaited
@UNSAFE Marks intentionally unsafe code blocks

Usage

import 'package:df_safer_dart_annotations/df_safer_dart_annotations.dart';

@mustHandleReturn
String whatIsYourName() {
  return 'Tony';
}

void main() {
  whatIsYourName(); // triggers a warning - return value not used!
  print(whatIsYourName()); // OK - return value is used
}

Installation

Add to your pubspec.yaml:

dev_dependencies:
  df_safer_dart_annotations: any
  df_safer_dart_lints: any
  custom_lint: any

Enable in analysis_options.yaml:

analyzer:
  plugins:
    - custom_lint

🔍 For more information, refer to the API reference.


💬 Contributing and Discussions

This is an open-source project, and we warmly welcome contributions from everyone, regardless of experience level. Whether you're a seasoned developer or just starting out, contributing to this project is a fantastic way to learn, share your knowledge, and make a meaningful impact on the community.

☝️ Ways you can contribute

  • Find us on Discord: Feel free to ask questions and engage with the community here: https://discord.gg/gEQ8y2nfyX.
  • Share your ideas: Every perspective matters, and your ideas can spark innovation.
  • Help others: Engage with other users by offering advice, solutions, or troubleshooting assistance.
  • Report bugs: Help us identify and fix issues to make the project more robust.
  • Suggest improvements or new features: Your ideas can help shape the future of the project.
  • Help clarify documentation: Good documentation is key to accessibility. You can make it easier for others to get started by improving or expanding our documentation.
  • Write articles: Share your knowledge by writing tutorials, guides, or blog posts about your experiences with the project. It's a great way to contribute and help others learn.

No matter how you choose to contribute, your involvement is greatly appreciated and valued!

☕ We drink a lot of coffee...

If you're enjoying this package and find it valuable, consider showing your appreciation with a small donation. Every bit helps in supporting future development. You can donate here: https://www.buymeacoffee.com/dev_cetera

LICENSE

This project is released under the MIT License. See LICENSE for more information.

Libraries

df_safer_dart_annotations
Annotations for the df_safer_dart_lints package.