pen 0.1.9

  • README.md
  • CHANGELOG.md
  • Installing
  • Versions
  • 47

pen pub package Build Status

A pubspec authoring tool. (forked from den)

Install

pub global activate pen

Usage

# `pen ...` requires Dart >=1.7, on 1.6 use `pub global run pen ...`

# Create a pubspec.  Field value prompts default to your local git info.
pen spec
# Bypass prompts, accept defaults.
pen spec --force

# Bump your pubspec version (and do a tagged version commit if in a git repo)
pen bump patch               # 1.2.3 -> 1.2.4
pen bump minor               # 1.2.3 -> 1.3.0
pen bump major --pre-id beta # 1.2.3 -> 2.0.0-beta.0
pen bump release --pre       # 1.0.0-dev.2 -> 1.0.0-dev.3
pen bump release             # 1.0.0-dev.2 -> 1.0.0
pen bump build               # 1.0.2+1 -> 1.0.2+2
pen bump breaking            # 0.5.1 -> 0.6.0 / 1.2.3 -> 2.0.0
pen bump 1.2.3-dev           # 1.2.2 -> 1.2.3-dev
pen bump minor -m "ver{v}"   # Custom commit message.

# Install dependencies (defaults to '>={latest stable} <{next breaking}')
pen install polymer browser
pen install unittest --dev
pen install polymer#any
pen install git://github.com/owner/repo.git -sgit
pen install git://github.com/owner/repo#ref -sgit
pen install path/to/foo -spath

# Uninstall dependencies
pen uninstall junk kludge

# Keep dependencies up-to-date

# Show outdated (all by deafult)
pen fetch
pen fetch polymer

# Update outdated to '>={latest stable} <{next breaking}' (all by default)
pen pull
pen pull polymer

# Install comprehensive TAB-completion for pen
pen completion install

# Complete commands, options, package names, etc.
pen i[TAB] -> install
pen install unit[TAB] -> unittest
pen uninstall j[TAB] -> junk
pen fetch p[TAB] -> polymer
pen pull p[TAB] -> polymer

Package Authors

Add the following package installation instructions to your README:

pub global activate pen
pen install <your package name>

^ Constraints

pen install and pen pull will take advantage of ^ constraints e.g. ^1.2.3 if either of:

  • Your sdk constraint disallows pre-1.8.0 SDKs when ^ was introduced.
  • You pass the --caret flag, which updates your sdk constraint for you.

Otherwise, they will use range syntax e.g. >=1.2.3 <2.0.0

Programmatic Usage

The underlying functionality is available as a Dart API through the pen_api package, which this package is merely a command-line interface for.

Inspiration

pen install was inspired by npm install --save and bower install --save pen fetch and pen pull were inspired by david and david update.

0.1.9

  • fixed pubspec typo
  • modifications for strong-type matters

0.1.8

  • fixed pubspec typo

0.1.7

  • Forked

Use this package as an executable

1. Install it

You can install the package from the command line:


$ pub global activate pen

2. Use it

The package has the following executables:


$ pen
Version Uploaded Documentation Archive
0.1.9 Dec 9, 2017 Go to the documentation of pen 0.1.9 Download pen 0.1.9 archive
0.1.8 Dec 2, 2017 Go to the documentation of pen 0.1.8 Download pen 0.1.8 archive
0.1.7 Dec 2, 2017 Go to the documentation of pen 0.1.7 Download pen 0.1.7 archive

Analysis

We analyzed this package on Jun 21, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0-dev.63.0
  • pana: 0.11.3

Scores

Popularity:
Describes how popular the package is relative to other packages. [more]
10 / 100
Health:
Code health derived from static analysis. [more]
75 / 100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
96 / 100
Overall score:
Weighted score of the above. [more]
47
Learn more about scoring.

Platforms

Detected platforms: Flutter, web, other

No platform restriction found in libraries.

Suggestions

  • Fix analysis and formatting issues.

    Analysis or formatting checks reported 7 errors 5 hints.

    Strong-mode analysis of lib/src/commands/install.dart failed with the following error:

    line: 114 col: 19
    The argument type '(VersionConstraint) → PackageDep' can't be assigned to the parameter type '(Object) → FutureOr<PackageDep>'.

    Strong-mode analysis of lib/src/commands/spec.dart failed with the following error:

    line: 80 col: 129
    The argument type '(bool) → Null' can't be assigned to the parameter type '(dynamic) → FutureOr<dynamic>'.

    Similar analysis of the following files failed:

    • lib/src/util.dart (error)
    • lib/src/yaml_highlighter.dart (error)
    • lib/src/commands/uninstall.dart (hint)
  • The description is too short.

    Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

  • Package is pre-v1 release.

    While there is nothing inherently wrong with versions of 0.*.*, it usually means that the author is still experimenting with the general direction API.

  • Maintain an example.

    Create a short demo in the example/ directory to show how to use this package. Common file name patterns include: main.dart, example.dart or you could also use pen.dart.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.8.0 <2.0.0
ansicolor ^0.0.9 0.0.10 0.1.1
contrast >=0.1.1 <0.2.0 0.1.1
path >=1.3.0 <2.0.0 1.6.1
pen_api ^0.1.1 0.1.2
prompt >=0.1.7 <0.2.0 0.1.7
pub_package_data ^0.0.1 0.0.1
pub_semver >=1.1.0 <2.0.0 1.4.1
quiver >=0.20.0 <0.27.0 0.24.0 0.29.0+1
source_span ^1.4.0 1.4.0
unscripted ^0.6.0 0.6.2
which >=0.1.3 <0.2.0 0.1.3
yaml >=2.0.1+1 <3.0.0 2.1.14
Transitive dependencies
args 0.13.7 1.4.3
async 2.0.7
barback 0.15.2+16
charcode 1.1.1
collection 1.14.10
convert 2.0.1
csslib 0.14.4
github 3.0.2
html 0.13.3+1
http 0.11.3+16
http_parser 3.1.2
logging 0.11.3+1
markdown 0.11.4 2.0.0
matcher 0.12.3
mock 0.11.0+4 0.12.0
mockable_filesystem 0.0.3
petitparser 1.7.6
pool 1.3.5
stack_trace 1.9.2
string_scanner 1.0.2
supports_color 0.1.1
typed_data 1.1.5
unittest 0.11.7 0.12.4+1
utf 0.9.0+4
when 0.2.0
xml 2.6.0 3.0.0