Giter VIP home page Giter VIP logo

normalize-path's Issues

Strips path fragments

Hi there. I have the following use case:

import normalize from 'path-normalize';

const normalizeUrl = (url: string) => {
  const urlObject = URL(url);
  urlObject.set('pathname', normalize(urlObject.pathname));
  return urlObject.toString();
};

expect(normalizeUrl('https://example.com/badpath//or/.././subpath//data.json')).toEqual(
  'https://example.com/badpath/or/subpath/data.json',
);

In version 2.1.1 this was working as expected and assertion was always successful. Since version 3 it's failing with the following output:

Expected value to equal:
  "https://example.com/badpath/or/subpath/data.json"
Received:
  "https://example.com/badpath/subpath/data.json"

Is this expected? If so you should have mentioned it in the breaking changes list.

Remove redundant segments from paths

I'm looking for a library that removes as many path segments as possible without changing the meaning of the path.

  • /foo/./bar -> /foo/bar
  • ./../foo -> ../foo
  • ./foo/../bar -> ./bar

etc

Tests fail

  normalize:
    1) should normalize file paths.


  0 passing (11ms)
  1 failing

  1) normalize: should normalize file paths.:

      AssertionError: expected 'E://foo/bar/baz' to equal 'E:/foo/bar/baz'
      + expected - actual

      +"E:/foo/bar/baz"
      -"E://foo/bar/baz"

Seems to be this assertion:

expect(normalize('E:\\\\foo/bar\\baz')).to.equal('E:/foo/bar/baz');

npm package 1.0.0 is missing tests and license

test.js and LICENSE are missing from the 1.0.0 tarball on npm. Can you please include them?

$ tar tzf ./normalize-path-0.3.0.tgz 
package/package.json
package/.npmignore
package/README.md
package/test.js
package/index.js
package/.gitattributes
package/.jshintrc
package/bower.json
package/.verbrc.md
package/LICENSE-MIT
package/benchmark/index.js
package/benchmark/code/no-regex.js
package/benchmark/code/node-path.js
package/benchmark/code/regex.js
package/benchmark/fixtures/long.js
package/benchmark/fixtures/path-14.js
package/benchmark/fixtures/path-15.js
package/benchmark/fixtures/path-16.js
package/benchmark/fixtures/path-13.js
package/benchmark/fixtures/path-18.js
package/benchmark/fixtures/path-2.js
package/benchmark/fixtures/path-3.js
package/benchmark/fixtures/path-4.js
package/benchmark/fixtures/path-5.js
package/benchmark/fixtures/path-12.js
package/benchmark/fixtures/path-6.js
package/benchmark/fixtures/path-11.js
package/benchmark/fixtures/path-7.js
package/benchmark/fixtures/path-10.js
package/benchmark/fixtures/path-8.js
package/benchmark/fixtures/path-1.js
package/benchmark/fixtures/path-9.js
package/benchmark/fixtures/path-0.js
package/benchmark/fixtures/short.js
package/benchmark/fixtures/path-17.js
$ tar tzf ./normalize-path-1.0.0.tgz 
package/package.json
package/README.md
package/index.js

changelog

I've just realised I'm behind a major version with this library, but I'm not entirely sure if there was an actual breaking change from my point of view:
2.1.1...3.0.0

Could you consider writing a changelog?
I can help out if you need it. ๐Ÿ‘

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.