Resolves a package name to its path on your HD
Since version v0.3 it also supports pub global activate
packages!
pubspec.yaml
...
dependencies:
packages: ^0.1.0
import 'package:packages/packages.dart';
final Packages packages = new Packages();
final Package package = packages.resolvePackageUri(
Uri.parse("package:grinder")
);
print(package.packagename); // grinder
print(package.lib.path);
// file:///Users/mikemitterer/.pub-cache/hosted/pub.dartlang.org/grinder-0.8.0+3/lib;
print(package.uri.path);
// file:///Users/mikemitterer/.pub-cache/hosted/pub.dartlang.org/grinder-0.8.0+3/lib;
final Uri resource = await package.resource;
print(resource);
// http://localhost:62232/packages/grinder
print(package.root);
// file:///Users/mikemitterer/.pub-cache/hosted/pub.dartlang.org/grinder-0.8.0+3
or if you want a specific file in a package
final Package package = packages.resolvePackageUri(
Uri.parse("package:grinder/src/ansi.dart")
);
print(package.packagename); // grinder
print(package.lib.path);
// file:///Users/mikemitterer/.pub-cache/hosted/pub.dartlang.org/grinder-0.8.0+3/lib;
print(package.uri.path);
// file:///Users/mikemitterer/.pub-cache/hosted/pub.dartlang.org/grinder-0.8.0+3/lib/src/ansi.dart;
final Uri resource = await package.resource;
print(resource);
// http://localhost:62232/packages/grinder/src/ansi.dart
// Global packages
final globals = await packages.globals;
final localPackages = globals.where((final GlobalPackage package) => package.hasPath);
localPackages.forEach((final package) => print(package.path.value));
Usage: packages [options] <packagename>
-h, --[no-]help Shows this help information
-l, --[no-]list Lists all packages
-g, --[no-]globals Lists all global packages
-v, --[no-]verbose More package details
packages -v package:grinder/src/ansi.dart
Name: grinder
Lib: file:///Users/mikemitterer/.pub-cache/hosted/pub.dartlang.org/grinder-0.8.0+3/lib
Uri: file:///Users/mikemitterer/.pub-cache/hosted/pub.dartlang.org/grinder-0.8.0+3/lib/src/ansi.dart
Resource: http://localhost:62788/packages/grinder/src/ansi.dart
Install 'Packages'
pub global activate packages
Update 'Packages'
# activate packages again
pub global activate packages
Uninstall 'Packages'
pub global deactivate packages
###License
Copyright 2018 Michael Mitterer (office@mikemitterer.at),
IT-Consulting and Development Limited, Austrian Branch
_____ _
| __ \ | |
| |__) |_ _ ___| | ____ _ __ _ ___ ___
| ___/ _` |/ __| |/ / _` |/ _` |/ _ \/ __|
| | | (_| | (__| < (_| | (_| | __/\__ \
|_| \__,_|\___|_|\_\__,_|\__, |\___||___/
__/ |
|___/
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
either express or implied. See the License for the specific language
governing permissions and limitations under the License.
If this plugin is helpful for you - please (Circle) me or star this repo here on GitHub
Resolves a package name to its path on your HD
This CHANGELOG.md was generated with Changelog for Dart
You can install the package from the command line:
$ pub global activate packages
The package has the following executables:
$ packages
Add this to your package's pubspec.yaml file:
dependencies:
packages: ^0.4.4
You can install packages from the command line:
with pub:
$ pub get
with Flutter:
$ flutter packages get
Alternatively, your editor might support pub get
or flutter packages get
.
Check the docs for your editor to learn more.
Now in your Dart code, you can use:
import 'package:packages/packages.dart';
Version | Uploaded | Documentation | Archive |
---|---|---|---|
0.4.4 | Nov 22, 2018 |
|
|
0.4.1 | Jun 7, 2018 |
|
|
0.3.3 | Dec 15, 2017 |
|
|
0.3.1 | Dec 15, 2017 |
|
|
0.2.4 | Dec 13, 2017 |
|
|
0.2.1 | Dec 13, 2017 |
|
|
0.1.9 | Feb 28, 2017 |
|
|
0.1.8 | Dec 15, 2016 |
|
|
0.1.7 | Dec 6, 2016 |
|
|
0.1.6 | Nov 16, 2016 |
|
|
Popularity:
Describes how popular the package is relative to other packages.
[more]
|
26
|
Health:
Code health derived from static analysis.
[more]
|
100
|
Maintenance:
Reflects how tidy and up-to-date the package is.
[more]
|
56
|
Overall:
Weighted score of the above.
[more]
|
54
|
We analyzed this package on Feb 14, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:
Detected platforms: Flutter, other
Primary library:
package:packages/packages.dart
with components:io
,isolate
.
Format bin/packages.dart
.
Run dartfmt
to format bin/packages.dart
.
Format lib/packages.dart
.
Run dartfmt
to format lib/packages.dart
.
Format lib/src/Packages.dart
.
Run dartfmt
to format lib/src/Packages.dart
.
Format lib/src/mock.dart
.
Run dartfmt
to format lib/src/mock.dart
.
Homepage URL doesn't exist. (-20 points)
At the time of the analysis the homepage
field https://github.com/Mike Mitterer/dart-packages
was unreachable.
The package description is too short. (-14 points)
Add more detail to the description
field of pubspec.yaml
. Use 60 to 180 characters to describe the package, what it does, and its target use case.
Maintain an example. (-10 points)
Create a short demo in the example/
directory to show how to use this package.
Common filename patterns include main.dart
, example.dart
, and packages.dart
. Packages with multiple examples should provide example/README.md
.
For more information see the pub package layout conventions.
Package | Constraint | Resolved | Available |
---|---|---|---|
Direct dependencies | |||
Dart SDK | >=2.0.0 <3.0.0 | ||
args | ^1.0.0 | 1.5.1 | |
console_log_handler | ^1.0.0 | 1.1.6 | |
logging | >=0.11.3 <1.0.0 | 0.11.3+2 | |
optional | ^3.0.0 | 3.0.0+2 | |
path | ^1.3.0 | 1.6.2 | |
Transitive dependencies | |||
ansicolor | 1.0.2 | ||
intl | 0.15.7 | ||
Dev dependencies | |||
build_runner | any | ||
build_test | any | ||
build_web_compilers | any | ||
grinder | any | ||
test | any |