This package has been deprecated

    Author message:

    Deprecated in favor of findup-sync, please use that library instead.

    look-up

    0.8.3 • Public • Published

    look-up NPM version Build Status

    Faster drop-in replacement for find-up and findup-sync.

    Install

    Install with npm

    $ npm i look-up --save

    See the benchmarks or unit tests.

    Usage

    var lookup = require('look-up');
    lookup('package.json');
    //=> '/Users/jonschlinkert/dev/look-up/package.json'

    look-up will recurse up from the cwd until it finds the given file.

    lookup('package.json', { cwd: 'foo/bar' });
    //=> '/Users/jonschlinkert/dev/look-up/package.json'

    Glob patterns are also supported (string or array):

    lookup(['*.json', '*.foo'], { cwd: 'foo/bar' });
    //=> '/Users/jonschlinkert/dev/look-up/package.json'

    Running benchmarks

    Benchmarks were run on mac and windows. look-up is 5x-20x faster than findup-sync and 3x faster than find-up

    Note that find-up does not support glob patterns, so these benchmarks only include arguments that are supported by all three libs.

    As of November 20, 2015:

    #1: deep-close 
      findup-sync x 5,797 ops/sec ±1.66% (90 runs sampled)
      findup x 22,972 ops/sec ±0.82% (92 runs sampled)
      lookup x 64,389 ops/sec ±0.75% (92 runs sampled)
     
    #2: deep-far 
      findup-sync x 2,165 ops/sec ±1.01% (92 runs sampled)
      findup x 8,250 ops/sec ±0.78% (96 runs sampled)
      lookup x 12,730 ops/sec ±0.93% (92 runs sampled)
     
    #3: nested 
      findup-sync x 21,603 ops/sec ±0.76% (93 runs sampled)
      findup x 103,427 ops/sec ±0.93% (95 runs sampled)
      lookup x 381,425 ops/sec ±0.91% (91 runs sampled)
     
    #4: shallow 
      findup-sync x 6,565 ops/sec ±0.66% (92 runs sampled)
      findup x 23,674 ops/sec ±0.89% (95 runs sampled)
      lookup x 57,029 ops/sec ±0.83% (93 runs sampled)

    To run the benchmarks, install dev dependencies:

    npm i -d && npm run benchmark

    Related

    • is-glob: Returns true if the given string looks like a glob pattern or an extglob pattern.… more | homepage
    • look-up-cli: Find a file matching a pattern by walking up parent directories | homepage
    • micromatch: Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch. Just… more | homepage

    Running tests

    Install dev dependencies:

    $ npm i -d && npm test

    Coverage

    As of November 20, 2015:

    Statements : 100% (57/57)
    Branches   : 100% (26/26)
    Functions  : 100% (5/5)
    Lines      : 100% (55/55)
    

    Contributing

    Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

    Author

    Jon Schlinkert

    License

    Copyright © 2015 Jon Schlinkert Released under the MIT license.


    This file was generated by verb-cli on November 20, 2015.

    Install

    npm i look-up

    DownloadsWeekly Downloads

    915

    Version

    0.8.3

    License

    MIT

    Last publish

    Collaborators

    • doowb
    • jonschlinkert