Nodeenv changelog
=================

Version 1.11.0
--------------
- Fixed zsh `source bin/activate` aborting on the direct-call guard `#398 <https://github.com/ekalinin/nodeenv/issues/398>`_
- Added check for how `activate` is called
  `#384 <https://github.com/ekalinin/nodeenv/pull/384>`_
- Addressed the ``tarfile.extractall`` deprecation on Python >= 3.12 by
  setting ``filter='data'``, which also prevents writing files via ".." or
  absolute paths `#380 <https://github.com/ekalinin/nodeenv/pull/380>`_
- Added support for Solaris/illumos
  `#360 <https://github.com/ekalinin/nodeenv/issues/360>`_
- Added `predeactivate` hooks for Windows
- Added error handling and tests for the node installation
  `#336 <https://github.com/ekalinin/nodeenv/issues/336>`_
- Removed the leftover debug `print` that leaked a dict to stdout on every
  version detection `#390 <https://github.com/ekalinin/nodeenv/issues/390>`_
- Added `--with-certifi` to download packages with the certifi certificate
  bundle `#388 <https://github.com/ekalinin/nodeenv/pull/388>`_
- `--node` accepts npm-style semver ranges
  `#393 <https://github.com/ekalinin/nodeenv/pull/393>`_
- Added `--prefer-system` to use system-wide node.js when available and
  install one otherwise `#153 <https://github.com/ekalinin/nodeenv/issues/153>`_
- Added `--isolate-npm` to keep npm cache, userconfig and init-module inside
  the environment `#154 <https://github.com/ekalinin/nodeenv/issues/154>`_
- Added tests that run the activation scripts in sh, dash, bash, zsh and fish.
- `-p` no longer reinstalls node when the requested version is already in the
  virtualenv `#159 <https://github.com/ekalinin/nodeenv/issues/159>`_
- Repeated `-p` runs no longer duplicate the `predeactivate` hook
  `#159 <https://github.com/ekalinin/nodeenv/issues/159>`_
- `-p` accepts an optional virtualenv directory and prefers the activated
  `VIRTUAL_ENV` over the virtualenv nodeenv itself is installed in
  `#156 <https://github.com/ekalinin/nodeenv/issues/156>`_
- `-r/--requirements` may now be given more than once, and the new
  `--local-requirements` installs the packages of a file locally, into
  "node_modules" of the current directory, which is what `freeze -l` writes.
  Under npm < 1.0.0, which has no `-g`, a local file is still installed the
  old way `#206 <https://github.com/ekalinin/nodeenv/issues/206>`_
- The "src" directory is now removed after installation by default, which
  halves the size of an environment. Added `--no-clean-src` to keep it: with
  `--source` that is what lets a repeated `--force` build reuse the
  downloaded source tree
  `#205 <https://github.com/ekalinin/nodeenv/issues/205>`_
- Documented that `--mirror` takes a `file://` URL, so a local directory can
  serve as the download source
  `#193 <https://github.com/ekalinin/nodeenv/issues/193>`_
- The posix `activate` is now written on Windows too, into "Scripts", so
  git-bash and the other posix shells there can activate an environment
  `#226 <https://github.com/ekalinin/nodeenv/issues/226>`_
- A download that reaches nothing at all, which a broken `http_proxy` or
  `https_proxy` usually causes, now reports the url and the proxy settings
  instead of a traceback
  `#229 <https://github.com/ekalinin/nodeenv/issues/229>`_
- On Windows `-p` extends "activate.bat", "deactivate.bat" and
  "Activate.ps1" of the python virtualenv instead of overwriting them, so
  `VIRTUAL_ENV` and the virtualenv's own deactivation survive
  `#243 <https://github.com/ekalinin/nodeenv/issues/243>`_
- A missing node.js archive now reports the urls that were tried and points
  at `--list` and `--source` instead of a traceback
  `#250 <https://github.com/ekalinin/nodeenv/issues/250>`_
- `freeze` now reads `npm ls --parseable` instead of the drawn tree: scoped
  packages keep their scope, a package whose name contains "npm" is no longer
  dropped, and `npm` and `corepack`, which come with node.js itself, are left
  out of the list. The fish version, which printed nothing at all under
  npm >= 1, now writes the same file as the posix one
  `#287 <https://github.com/ekalinin/nodeenv/issues/287>`_
- musl is now detected whatever the vendor field of the host triplet says,
  so Alpine's own python3 (``x86_64-alpine-linux-musl``) gets the musl build
  of node.js instead of the glibc one
  `#290 <https://github.com/ekalinin/nodeenv/issues/290>`_
- On Windows "nodejs.exe" is linked with ``os.symlink``, falling back to a
  hard link, instead of ``mklink``, which broke on paths with forward slashes
  or spaces and needs elevation or Developer Mode. If both fail, only a
  warning is logged `#303 <https://github.com/ekalinin/nodeenv/issues/303>`_

Version 1.10.0
--------------
- Added support for Python 3.13 `#367 <https://github.com/ekalinin/nodeenv/pull/367>`_
- Added support for UV virtual environments
  `#386 <https://github.com/ekalinin/nodeenv/pull/386>`_
- Used `sh` instead of `bash` `#389 <https://github.com/ekalinin/nodeenv/pull/389>`_
- Replaced the remaining `which(1)` calls with `shutil.which()`
  `#355 <https://github.com/ekalinin/nodeenv/pull/355>`_
- Supported a leading `v` in `.node-version`
  `#359 <https://github.com/ekalinin/nodeenv/pull/359>`_
- Checked the host platform when finding the `node` version
  `#363 <https://github.com/ekalinin/nodeenv/pull/363>`_
- Fixed `archmap` lookup to be lowercase
  `#382 <https://github.com/ekalinin/nodeenv/pull/382>`_

Version 1.9.1
-------------
- Fixed version discovery `#358 <https://github.com/ekalinin/nodeenv/pull/358>`_
  `#356 <https://github.com/ekalinin/nodeenv/issues/356>`_

Version 1.9.0
-------------
- Switched to `packaging` for version comparison
  `#338 <https://github.com/ekalinin/nodeenv/pull/338>`_ and then dropped the
  dependency in favor of a simple version-parsing function
  `#352 <https://github.com/ekalinin/nodeenv/pull/352>`_
- Fixed GitHub Actions `#347 <https://github.com/ekalinin/nodeenv/pull/347>`_
- Added Python 3.11 and 3.12 test coverage
  `#348 <https://github.com/ekalinin/nodeenv/pull/348>`_
- Added support for shells with "set -u"
  `#345 <https://github.com/ekalinin/nodeenv/pull/345>`_
- Replaced `pipes.quote` with `shlex.quote` on Python 3.3+
  `#342 <https://github.com/ekalinin/nodeenv/pull/342>`_
- Removed usage of the non-portable `which`
  `#346 <https://github.com/ekalinin/nodeenv/pull/346>`_

Version 1.8.0
-------------
- Fixed the function name in `fish_prompt`
  `#312 <https://github.com/ekalinin/nodeenv/pull/312>`_
- Added support for riscv64 `#313 <https://github.com/ekalinin/nodeenv/pull/313>`_
- Upgraded GitHub Actions `#317 <https://github.com/ekalinin/nodeenv/pull/317>`_
- Made the `mock` dependency optional
  `#320 <https://github.com/ekalinin/nodeenv/pull/320>`_
- GitHub Actions: `fail-fast: false`
  `#327 <https://github.com/ekalinin/nodeenv/pull/327>`_
- Made multiple attempts to download the node.js archive (IncompleteRead error)
  `#329 <https://github.com/ekalinin/nodeenv/pull/329>`_
- Logged the URL on download failures
  `#330 <https://github.com/ekalinin/nodeenv/pull/330>`_

Version 1.7.0
-------------
- Dropped python3.4, python3.5 and python3.6
- Supported python releases before 3.7 in tests
  `#272 <https://github.com/ekalinin/nodeenv/pull/272>`_
- Required setuptools in setup.py
  `#289 <https://github.com/ekalinin/nodeenv/pull/289>`_
- Used the version specified in `.node-version` if it exists
  `#288 <https://github.com/ekalinin/nodeenv/pull/288>`_
- Fixed the problem when used with fish and virtualenv
  `#294 <https://github.com/ekalinin/nodeenv/pull/294>`_
- Replaced optparse with argparse
  `#295 <https://github.com/ekalinin/nodeenv/pull/295>`_
- Set the SSL protocol when ssl certs are ignored
  `#296 <https://github.com/ekalinin/nodeenv/issues/296>`_
- Fixed tests, tested Python 3.10 and moved tests to GitHub Actions
  `#298 <https://github.com/ekalinin/nodeenv/pull/298>`_
- Patched node installation for M1
  `#299 <https://github.com/ekalinin/nodeenv/pull/299>`_
- Added ability to configure the mirror through the settings file
  `#307 <https://github.com/ekalinin/nodeenv/pull/307>`_
- Added `--with-npm` to README `#308 <https://github.com/ekalinin/nodeenv/pull/308>`_

Version 1.6.0
-------------
- Tested for `nodejs` or `node` in tests
  `#270 <https://github.com/ekalinin/nodeenv/pull/270>`_
- Removed the main node.js mirror in tests if musl
  `#271 <https://github.com/ekalinin/nodeenv/pull/271>`_
- Fixed the nodeenv prompt when using Fish
  `#273 <https://github.com/ekalinin/nodeenv/pull/273>`_
- Used `node` instead of `nodejs` `#275 <https://github.com/ekalinin/nodeenv/pull/275>`_
- Fixed typo, remaning -> remaining
  `#276 <https://github.com/ekalinin/nodeenv/pull/276>`_
- Resolved the venv dir for Fish
  `#277 <https://github.com/ekalinin/nodeenv/pull/277>`_
- Added support for installing the latest LTS release
  `#281 <https://github.com/ekalinin/nodeenv/pull/281>`_
- Created a broad mapping for M1
  `#282 <https://github.com/ekalinin/nodeenv/pull/282>`_

Version 1.5.0
-------------
- Improved quoting of variables in the node shim for `-n system`
  `#259 <https://github.com/ekalinin/nodeenv/pull/259>`_
- Added `--ignore_ssl_certs` to ignore SSL certs for MITM/firewalls
  `#256 <https://github.com/ekalinin/nodeenv/pull/256>`_
- Added support for MSYS2 `#263 <https://github.com/ekalinin/nodeenv/pull/263>`_
- Added missing arch's (ppc64le, armv8l, s390x)
  `#268 <https://github.com/ekalinin/nodeenv/pull/268>`_

Version 1.4.0
-------------
- Switched to `/download/release/index.json` to discover versions
- Dropped io.js support
- Worked around IncompleteRead when downloading src
  `#258 <https://github.com/ekalinin/nodeenv/pull/258>`_
- Fixed erasing of NODE_VIRTUAL_ENV while `deactivate_node` in fish
  `#255 <https://github.com/ekalinin/nodeenv/pull/255>`_
- Accepted a URL as well as a domain name for the `--mirror` argument
  `#252 <https://github.com/ekalinin/nodeenv/pull/252>`_
- Downloaded musl-compatible node from unofficial-builds
  `#247 <https://github.com/ekalinin/nodeenv/pull/247>`_

Version 1.3.5
-------------
- Fixed error 183 ("already exists") on Windows when installing prebuilt node
  `#249 <https://github.com/ekalinin/nodeenv/issues/249>`_

Version 1.3.4
-------------
- Used the prebuilt windows zip which contains npm
  `#230 <https://github.com/ekalinin/nodeenv/pull/230>`_
- Fixed url in the CHANGES file
  `#231 <https://github.com/ekalinin/nodeenv/pull/231>`_
- Fixed escape sequences `#232 <https://github.com/ekalinin/nodeenv/pull/232>`_
- Fixed `npm_url` in `install_npm_win`
  `#233 <https://github.com/ekalinin/nodeenv/pull/233>`_
- Changed the URL for downloading npm in Cygwin
  `#234 <https://github.com/ekalinin/nodeenv/pull/234>`_
- Fixed nodeenv in case python4 is ever a thing
  `#241 <https://github.com/ekalinin/nodeenv/pull/241>`_
- Produced py2.py3 wheels, nodeenv is a pure python package
  `#242 <https://github.com/ekalinin/nodeenv/pull/242>`_
- Printed a blank line when `install_node` fails
  `#236 <https://github.com/ekalinin/nodeenv/pull/236>`_
- Added an option to set your own mirror
  `#208 <https://github.com/ekalinin/nodeenv/pull/208>`_
- Fixed CI (flake8 errors) `#245 <https://github.com/ekalinin/nodeenv/pull/245>`_
- Fixed call to `logger.info(...)`
  `#246 <https://github.com/ekalinin/nodeenv/pull/246>`_

Version 1.3.3
-------------
- Installed a certain npm version via `npm install`
  `#225 <https://github.com/ekalinin/nodeenv/issues/225>`_

Version 1.3.2
-------------
- Updated node/node -> node/cli `#222 <https://github.com/ekalinin/nodeenv/pull/222>`_
- Fixed arch detection on FreeBSD, which returns amd64
  `#216 <https://github.com/ekalinin/nodeenv/pull/216>`_
- Added a space before the normal $PS1
  `#213 <https://github.com/ekalinin/nodeenv/pull/213>`_
- Dropped py33 support

Version 1.3.1
-------------
- Windows related fix `#207 <https://github.com/ekalinin/nodeenv/pull/207>`_
- Fixed url for arm64 `#210 <https://github.com/ekalinin/nodeenv/pull/210>`_
- Fixed fish support `#212 <https://github.com/ekalinin/nodeenv/pull/212>`_


Version 1.3.0
-------------
- Fixed symlink creation `#189 <https://github.com/ekalinin/nodeenv/issues/189>`_
- Python3.6 support `#200 <https://github.com/ekalinin/nodeenv/pull/200>`_
- Added `activate` for fish `#201 <https://github.com/ekalinin/nodeenv/pull/201>`_
- Fixed cp866 `#202 <https://github.com/ekalinin/nodeenv/pull/202>`_
- Added Conda support `#203 <https://github.com/ekalinin/nodeenv/pull/203>`_


Version 1.2.0
-------------
- Support for Cygwin `#194 <https://github.com/ekalinin/nodeenv/pull/194>`_ `#195
  <https://github.com/ekalinin/nodeenv/pull/195>`_
- tox.ini as default configuration file `#197
  <https://github.com/ekalinin/nodeenv/pull/197>`_

Version 1.1.4
-------------
- Fixed directory copy `#188 <https://github.com/ekalinin/nodeenv/issues/188>`_

Version 1.1.3
-------------
- Fixed spaces in paths `#187 <https://github.com/ekalinin/nodeenv/issues/187>`_

Version 1.1.2
-------------
- Fixed MANIFEST.in `#184 <https://github.com/ekalinin/nodeenv/issues/184>`_

Version 1.1.1
-------------
- Improve Windows support. See `#181
  <https://github.com/ekalinin/nodeenv/pull/181>`_
- Fix bug when downgrading using `--force`. See `#183
  <https://github.com/ekalinin/nodeenv/pull/183>`_
- Environment creation fails with non-ASCII chars in path. See `#49
  <https://github.com/ekalinin/nodeenv/issues/49>`_

Version 1.1.0
-------------
- Windows support

Version 1.0.0
-------------
- `--prebuilt` is default. See `# 161`_
- Added `--source` option
- Added support for the `ARM`. See `# 171`_
- Fixed issue with `$PATH`. See `# 86`_

.. _# 171: https://github.com/ekalinin/nodeenv/issues/171
.. _# 161: https://github.com/ekalinin/nodeenv/issues/161
.. _# 86: https://github.com/ekalinin/nodeenv/issues/86

Version 0.13.6
--------------
- Use https for nodejs.org. See `# 129`_

.. _# 129: https://github.com/ekalinin/nodeenv/issues/129

Version 0.13.5
--------------
- Improved user-agent identification

Version 0.13.4
--------------
- Custom ``user-agent``. See `# 125`_, `# 127`_

.. _# 125: https://github.com/ekalinin/nodeenv/issues/125
.. _# 127: https://github.com/ekalinin/nodeenv/issues/127


Version 0.13.3
--------------
- Fixed env creation with non-ASCII chars in path. See `# 49`_
- Fixed logging with unicode chars. See `# 96`_
- Skip new lines at the end of requirements.txt. See `# 122`_ 
- Fixed UnicodeDecodeError at build on non UTF-8 environment. See `# 124`_

.. _# 49: https://github.com/ekalinin/nodeenv/issues/49
.. _# 96: https://github.com/ekalinin/nodeenv/issues/96
.. _# 122: https://github.com/ekalinin/nodeenv/issues/122
.. _# 124: https://github.com/ekalinin/nodeenv/pull/124

Version 0.13.2
--------------
- Fixed ``freeze`` command. See `# 121`_

.. _# 121: https://github.com/ekalinin/nodeenv/issues/121

Version 0.13.1
--------------
- Fixed bug: ``nodeenv --list is raising TypeError``. See `# 117`_, `# 118`_

.. _# 117: https://github.com/ekalinin/nodeenv/issues/117
.. _# 118: https://github.com/ekalinin/nodeenv/pull/118

Version 0.13.0
--------------
- Removed deps from ``sort``, ``egrep``, ``curl``, ``tar``.
  See `# 114`_, `# 116`_.

.. _# 114: https://github.com/ekalinin/nodeenv/pull/114
.. _# 116: https://github.com/ekalinin/nodeenv/pull/116

Version 0.12.3
--------------
- Fixed check for installed curl/tar/etc for py3.

Version 0.12.2
--------------
- Added check for installed curl/egrep/sort/tar. See `# 110`_, `# 61`_

.. _# 110: https://github.com/ekalinin/nodeenv/issues/110
.. _# 61: https://github.com/ekalinin/nodeenv/issues/61

Version 0.12.1
--------------
- Removed dep for lxml in favor of stdlib HTMLParser. See `# 109`_
- Added integration with travis-ci. See `# 109`_
- Added some tests. See `# 109`_

.. _# 109: https://github.com/ekalinin/nodeenv/pull/109

Version 0.12.0
--------------
- Added support for io.js (new option ``--iojs``)
- Fixed ``get_last_stable_node_version`` for python3

Version 0.11.1
--------------
- Disallow prefix overridden by .npmrc. See `# 98`_, `# 100`_, `# 103`_

.. _# 98: https://github.com/ekalinin/nodeenv/issue/98
.. _# 100: https://github.com/ekalinin/nodeenv/pull/100
.. _# 103: https://github.com/ekalinin/nodeenv/pull/103

Version 0.11.0
--------------
- Improved dpkg rules. See `# 90`_
- Added --config-file option. See `# 91`_
- Read "./setup.cfg" in addition to "~/.nodeenvrc" by default. See `# 91`_
- Python3 compatibility. See `# 92`_, `# 93`_

.. _# 90: https://github.com/ekalinin/nodeenv/pull/90
.. _# 91: https://github.com/ekalinin/nodeenv/pull/91
.. _# 92: https://github.com/ekalinin/nodeenv/pull/92
.. _# 93: https://github.com/ekalinin/nodeenv/pull/93

Version 0.10.0
--------------
- Added support for config file. See `# 85`_
- Using of virtualenv detected via python not env variable. See `# 87`_
- Fixed ``freeze`` for zsh. See `# 88`_
- Added ``nodejs`` symlink creation. See `# 84`_

.. _# 85: https://github.com/ekalinin/nodeenv/pull/85
.. _# 87: https://github.com/ekalinin/nodeenv/pull/87
.. _# 88: https://github.com/ekalinin/nodeenv/pull/88

Version 0.9.6
-------------
- Removed ``os.symlink`` added in `# 76`_. See `# 84`_

.. _# 84: https://github.com/ekalinin/nodeenv/issues/84

Version 0.9.5
-------------
- Fixed a few spelling typos in README. See `# 74`_
- Fixed example of using --update option in README. See `# 74`_
- Improved args passing into shim script. See `# 75`_
- Try to find ``nodejs`` if used system-wide node as well. See `# 76`_
- Added ``assert`` if used system-wide node and it wasnt found. See `# 76`_
- Added ``-l`` option into ``freeze`` command. See `# 71`_

.. _# 71: https://github.com/ekalinin/nodeenv/issues/71
.. _# 74: https://github.com/ekalinin/nodeenv/issues/74
.. _# 75: https://github.com/ekalinin/nodeenv/pull/75
.. _# 76: https://github.com/ekalinin/nodeenv/pull/76

Version 0.9.4
-------------
- Fixed support for python2.6. See `# 70`_

.. _# 70: https://github.com/ekalinin/nodeenv/issues/70

Version 0.9.3
-------------
- Fixed npm when using prebuilt binaries on Mac OS X. See `# 68`_
- Fixed using ``system`` node under python3.4. See `# 43`_
- If used ``system`` node script ``bin/node`` always overwritten

.. _# 68: https://github.com/ekalinin/nodeenv/issues/68
.. _# 43: https://github.com/ekalinin/nodeenv/issues/43

Version 0.9.2
-------------
- Fixed infinite loop when system-wide node used. See `# 67`_

.. _# 67: https://github.com/ekalinin/nodeenv/issues/67

Version 0.9.1
-------------
- Fixed 'shim' script if used system-wide node
- Fixed shebang in the 'shim'
- Added shim with name 'node' in case of using system-wide node

Version 0.9.0
-------------
- Added `shim` script. See `# 59`_

.. _# 59: https://github.com/ekalinin/nodeenv/issues/59

Version 0.8.2
-------------
- Fixed prebuilt installation:
    - cp more choosy. See `# 64`_
    - exclude top-level files in prebuilt tar. See `# 63`_

.. _# 63: https://github.com/ekalinin/nodeenv/issues/63
.. _# 64: https://github.com/ekalinin/nodeenv/issues/64

Version 0.8.1
-------------
- Fixed system's node usage. See `# 62`_

.. _# 62: https://github.com/ekalinin/nodeenv/pull/62

Version 0.8.0
-------------
- Added support for prebuilt packages. See `# 56`_
- Added support for python3. See `# 42`_

.. _# 56: https://github.com/ekalinin/nodeenv/issues/56
.. _# 42: https://github.com/ekalinin/nodeenv/issues/42

Version 0.7.3
-------------
- Fixed npm.js redirect. See `# 52`_
- Added ``--update`` option. See `# 25`_

.. _# 52: https://github.com/ekalinin/nodeenv/pull/52
.. _# 25: https://github.com/ekalinin/nodeenv/issues/25

Version 0.7.2
-------------
- Bug fixing in ``freeze``. See `# 47`_

.. _# 47: https://github.com/ekalinin/nodeenv/issues/47

Version 0.7.1
-------------
- Added ``--make`` option

Version 0.7.0
-------------
- added ``--force``. See `# 37`_
- python3 support (first steps). See `# 38`_, `# 39`_
- escaping all directories used by subprocesses. See `# 40`_
- added an option to use system-wide node. See `# 41`_

.. _# 37: https://github.com/ekalinin/nodeenv/pull/37
.. _# 38: https://github.com/ekalinin/nodeenv/issues/38
.. _# 39: https://github.com/ekalinin/nodeenv/issues/39
.. _# 40: https://github.com/ekalinin/nodeenv/pull/40
.. _# 41: https://github.com/ekalinin/nodeenv/pull/41


Version 0.6.6
-------------
- Fixed incomplete package names using freeze. See `# 35`_
- Fixed packages installation type in README. See `# 33`_

.. _# 33: https://github.com/ekalinin/nodeenv/issues/33
.. _# 35: https://github.com/ekalinin/nodeenv/pull/35


Version 0.6.5
-------------
- Node's source not loaded if it already exists in FS.


Version 0.6.4
-------------
- Added python3 compatibility. See `# 32`_

.. _# 32: https://github.com/ekalinin/nodeenv/pull/32


Version 0.6.3
-------------
- Fixed ``nodeenv -p``. See `issue # 31`_

.. _issue # 31: https://github.com/ekalinin/nodeenv/issues/31


Version 0.6.2
-------------
- Skipped stand-alone npm installation by default. See `pull # 30`_
- ``--without-npm`` has been changed to ``--with-npm``. See `pull # 30`_
- Fixed options for running Make instances in parallel. See `pull # 30`_

.. _pull # 30: https://github.com/ekalinin/nodeenv/pull/30


Version 0.6.1
-------------
- Used pkg_resources.parse_version to compare versions. See `pull # 29`_
- Fixed doubling prompt inside a virtualenv. See `issues # 26`_

.. _pull # 29: https://github.com/ekalinin/nodeenv/pull/29
.. _issues # 26: https://github.com/ekalinin/nodeenv/issues/26


Version 0.6.0
-------------
- Fixed typo in deactive command. See `pull # 20`_
- Not used "--insecure" to download npm. See `pull # 21`_
- Removed "src" directory after installation. See `pull # 22`_
- Added option "--clean-src"
- Added integration with python's virtualenv. See `pull # 23`_

.. _pull # 20: https://github.com/ekalinin/nodeenv/pull/20
.. _pull # 21: https://github.com/ekalinin/nodeenv/pull/21
.. _pull # 22: https://github.com/ekalinin/nodeenv/pull/22
.. _pull # 23: https://github.com/ekalinin/nodeenv/pull/23

Version 0.5.3
-------------
- Bug fix. Used https, /dist/latest/. See `pull # 16`_

.. _pull # 16: https://github.com/ekalinin/nodeenv/pull/16

Version 0.5.2
-------------
- Improved installation logic for release candidate versions. See `pull # 10`_

.. _pull # 10: https://github.com/ekalinin/nodeenv/pull/10

Version 0.5.1
-------------
- Improved logic for the option '--without-npm'. See `issue # 14`_, `pull # 15`_

.. _issue # 14: https://github.com/ekalinin/nodeenv/issues/14
.. _pull # 15: https://github.com/ekalinin/nodeenv/pull/15

Version 0.5.0
-------------
- The virtual environment's path is no longer hardcoded into the
  activation script. See `pull # 13`_

.. _pull # 13: https://github.com/ekalinin/nodeenv/pull/13

Version 0.4.3
-------------
- Fixed metavar for ``--npm``
- ``npm install -g`` used for npm >=1.0, not noly for `latest`

Version 0.4.2
-------------
- Added README.ru.rst

Version 0.4.1
-------------
- Fixed bug in print_node_versions. See `pull # 11`_
- Added deps in README

.. _pull # 11: https://github.com/ekalinin/nodeenv/pull/11

Version 0.4.0
-------------
- Compatibility with virtualenv (renamed deactivate to deactivate_node).
  See `pull # 9`_, `issue # 6`_

.. _pull # 9: https://github.com/ekalinin/nodeenv/pull/9
.. _issue # 6: https://github.com/ekalinin/nodeenv/issues/6

Version 0.3.10
--------------
- Fixed bug in url detection for node.js download

Version 0.3.9
-------------
- Deleted notify method calls. See `pull # 7`_
- Updated tar url for node.js > 0.5.0. See `pull # 8`_

.. _pull # 7: https://github.com/ekalinin/nodeenv/pull/7
.. _pull # 8: https://github.com/ekalinin/nodeenv/pull/8

Version 0.3.8
-------------
- Added `NODE_PATH` variable export (for correct module
  search after installation via npm)

Version 0.3.7
-------------
- Shows command output when error occurs
- Excluded 'npm' from `freeze` list
- Fixed bug with 'not only letter' names in `freeze` list
- Added global installation for npm >= 1.0 (when install
  soft from requirement file)

Version 0.3.6
-------------
- Fixed ``freeze`` output command. See `request # 5`_
- Diagnostic message fixed. See `pull # 4`_

.. _request # 5 : https://github.com/ekalinin/nodeenv/issues/5
.. _pull # 4 : https://github.com/ekalinin/nodeenv/pull/4

Version 0.3.5
-------------
- Added option ``--npm`` to install certain npm.js version. Request_ .
- Fixed ``freeze`` command for npm >= 1.0.x.

.. _Request: https://github.com/ekalinin/nodeenv/issues/3

Version 0.3.4
-------------

- Fixed `problem #2`_ with new npm installation script. Added
  ``--no-npm-clean`` option. The default to the npm 0.x cleanup.

.. _problem #2: https://github.com/ekalinin/nodeenv/issues/2

Version 0.3.3
-------------

- Fixed `problem #1`_ with installation from PyPI via easy_install.
  Added ``MANIFEST.in`` file.

.. _problem #1: https://github.com/ekalinin/nodeenv/issues/1

Version 0.3.2
-------------

- Internal improvements
- Logging refactoring

Version 0.3.1
-------------

- Default environment promt is folder name

Version 0.3.0
--------------

- Renamed nve to nodeenv
