pubspec_lock 1.1.0 copy "pubspec_lock: ^1.1.0" to clipboard
pubspec_lock: ^1.1.0 copied to clipboard

outdated

Dart library to access and manipulate content of pubpec.lock files

example/main.dart

import 'dart:io';

import 'package:pubspec_lock/pubspec_lock.dart';

// ignore_for_file: avoid_print

void main() {
  final pubspecLock = PubspecLock.loadFromYamlString(File('pubspec.lock').readAsStringSync());
  print('Loaded pubspec.lock with ${pubspecLock.packages.length} package dependencies:');

  final depsNotHostedByPubDev = [for (final package in pubspecLock.packages) if (!isHostedByPubDev(package)) package];

  if (depsNotHostedByPubDev.isEmpty) {
    print('SUCCESS: All dependencies are hosted by pub.dev');
  } else {
    print('WARNING: Dependencies hosted outside of pub.dev:');
    depsNotHostedByPubDev.forEach(print);
  }
}

bool isHostedByPubDev(PackageDependency package) =>
    package.iswitcho(hosted: (package) => package.url == 'https://pub.dartlang.org', otherwise: () => false);
4
likes
40
pub points
63%
popularity

Publisher

verified publisherdart-borg.dev

Dart library to access and manipulate content of pubpec.lock files

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

functional_data, json2yaml, meta, sum_types, yaml

More

Packages that depend on pubspec_lock