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
Related Packages
- df_safer_dart - Core safety types (Option, Result, Resolvable)
- df_safer_dart_lints - Lint rules that use these annotations
🔍 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.
