eric 1.0.0-alpha.5
eric: ^1.0.0-alpha.5 copied to clipboard
Read, write and modify a pubspec.yaml including retention and modifications of comments and out of spec content.
Eric #
Say hello to Eric.
Eric allows you to read, .modify and write pubspec.yaml files.
Why another pubspec.yaml manipulation file?
As a sometimes maintainer of the pubspec package and the creator of the fork pubspec2 I've long been unhappy with the usability and maintainability of the pubspec package.
There are also a number of other pubspec maintinance packages but none of them meet all of the criteria. In particualar none of them are able to preserve comments.
So the aim of Eric is to fix three problems
- simplified API
- fully type safe code based to ease maintenance
- preservation of comments when modifying an existing pubspec.yaml
- abiltity to modify every elment of a pubspec.yaml including comments.
import 'package:eric/eric.dart'
void main() {
Pubspec.fromFile()
..name.value = 'new eric'
..version.value = '1.0.0-alpha.2'
..dependencies
.append(HostedDependency(name: 'dcli', url: 'https://onepub.dev'))
..dependencies.append(PubHostedDependency(name: 'dcli', version: '1.0.0'))
..save();
}