Go to main content

man pages section 1: User Commands

Exit Print View

Updated: Wednesday, February 9, 2022
 
 

npm-prune (1)

Name

npm-prune - Remove extraneous packages Synopsis npm prune [[<@scope>/]<pkg>...] [--production] [--dry-run] [--json] Description This command removes "extraneous" packages. If a package name is pro- vided, then only packages matching one of the supplied names are removed. Extraneous packages are those present in the node_modules folder that are not listed as any package's dependency list. If the --production flag is specified or the NODE_ENV environment vari- able is set to production, this command will remove the packages speci- fied in your devDependencies. Setting --no-production will negate NODE_ENV being set to production. If the --dry-run flag is used then no changes will actually be made. If the --json flag is used, then the changes npm prune made (or would have made with --dry-run) are printed as a JSON object. In normal operation, extraneous modules are pruned automatically, so you'll only need this command with the --production flag. However, in the real world, operation is not always "normal". When crashes or mis- takes happen, this command can help clean up any resulting garbage. Configuration <!-- AUTOGENERATED CONFIG DESCRIPTIONS START --> <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/defini- tions.js --> omit o Default: 'dev' if the NODE_ENV environment variable is set to 'pro- duction', otherwise empty. o Type: "dev", "optional", or "peer" (can be set multiple times) Dependency types to omit from the installation tree on disk. Note that these dependencies are still resolved and added to the pack- age-lock.json or npm-shrinkwrap.json file. They are just not physically installed on disk. If a package type appears in both the --include and --omit lists, then it will be included. If the resulting omit list includes 'dev', then the NODE_ENV environ- ment variable will be set to 'production' for all lifecycle scripts. <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/definitions.js --> dry-run o Default: false o Type: Boolean Indicates that you don't want npm to make any changes and that it should only report what it would have done. This can be passed into any of the commands that modify your local installation, eg, install, update, dedupe, uninstall, as well as pack and publish. Note: This is NOT honored by other network related commands, eg dist-tags, owner, etc. <!-- automatically generated, do not edit manu- ally --> <!-- see lib/utils/config/definitions.js --> json o Default: false o Type: Boolean Whether or not to output JSON data, rather than the normal output. o In npm pkg set it enables parsing set values with JSON.parse() before saving them to your package.json. Not supported by all npm commands. <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/definitions.js --> workspace o Default: o Type: String (can be set multiple times) Enable running a command in the context of the configured workspaces of the current project while filtering by running only the workspaces defined by this configuration option. Valid values for the workspace config are either: o Workspace names o Path to a workspace directory o Path to a parent workspace directory (will result to selecting all of the nested workspaces) When set for the npm init command, this may be set to the folder of a workspace which does not yet exist, to create the folder and set it up as a brand new workspace within the project. This value is not exported to the environment for child processes. <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/definitions.js --> workspaces o Default: false o Type: Boolean Enable running a command in the context of all the configured workspaces. This value is not exported to the environment for child processes. <!-- automatically generated, do not edit manually --> <!-- see lib/utils/config/definitions.js --> <!-- AUTOGENERATED CONFIG DESCRIPTIONS END --> See Also o npm help uninstall o npm help folders o npm help ls

Synopsis

Please see following description for synopsis

Description

NPM-PRUNE(1)                                                      NPM-PRUNE(1)



NAME
       npm-prune - Remove extraneous packages

   Synopsis
         npm prune [[<@scope>/]<pkg>...] [--production] [--dry-run] [--json]

   Description
       This  command removes "extraneous" packages.  If a package name is pro-
       vided, then only packages  matching  one  of  the  supplied  names  are
       removed.

       Extraneous  packages  are those present in the node_modules folder that
       are not listed as any package's dependency list.

       If the --production flag is specified or the NODE_ENV environment vari-
       able is set to production, this command will remove the packages speci-
       fied in  your  devDependencies.  Setting  --no-production  will  negate
       NODE_ENV being set to production.

       If the --dry-run flag is used then no changes will actually be made.

       If  the  --json flag is used, then the changes npm prune made (or would
       have made with --dry-run) are printed as a JSON object.

       In normal operation, extraneous modules are  pruned  automatically,  so
       you'll  only need this command with the --production flag.  However, in
       the real world, operation is not always "normal".  When crashes or mis-
       takes happen, this command can help clean up any resulting garbage.

   Configuration
       <!--  AUTOGENERATED  CONFIG  DESCRIPTIONS  START --> <!-- automatically
       generated, do not edit manually --> <!--  see  lib/utils/config/defini-
       tions.js -->

   omit
       o Default:  'dev'  if the NODE_ENV environment variable is set to 'pro-
         duction', otherwise empty.

       o Type: "dev", "optional", or "peer" (can be set multiple times)


       Dependency types to omit from the installation tree on disk.

       Note that these dependencies are still resolved and added to the  pack-
       age-lock.json or npm-shrinkwrap.json file. They are just not physically
       installed on disk.

       If a package type appears in both the --include and --omit lists,  then
       it will be included.

       If  the  resulting omit list includes 'dev', then the NODE_ENV environ-
       ment variable will be set to 'production' for  all  lifecycle  scripts.
       <!--  automatically  generated,  do  not  edit  manually  -->  <!-- see
       lib/utils/config/definitions.js -->


   dry-run
       o Default: false

       o Type: Boolean


       Indicates that you don't want npm to  make  any  changes  and  that  it
       should only report what it would have done. This can be passed into any
       of the commands that  modify  your  local  installation,  eg,  install,
       update, dedupe, uninstall, as well as pack and publish.

       Note:  This  is  NOT  honored  by  other  network  related commands, eg
       dist-tags, owner, etc.  <!-- automatically generated, do not edit manu-
       ally --> <!-- see lib/utils/config/definitions.js -->


   json
       o Default: false

       o Type: Boolean


       Whether or not to output JSON data, rather than the normal output.

       o In npm pkg set it enables parsing set values with JSON.parse() before
         saving them to your package.json.


       Not supported by all npm commands.  <!--  automatically  generated,  do
       not edit manually --> <!-- see lib/utils/config/definitions.js -->


   workspace
       o Default:

       o Type: String (can be set multiple times)


       Enable running a command in the context of the configured workspaces of
       the current project while filtering  by  running  only  the  workspaces
       defined by this configuration option.

       Valid values for the workspace config are either:

       o Workspace names

       o Path to a workspace directory

       o Path to a parent workspace directory (will result to selecting all of
         the nested workspaces)


       When set for the npm init command, this may be set to the folder  of  a
       workspace  which does not yet exist, to create the folder and set it up
       as a brand new workspace within the project.

       This value is not exported to  the  environment  for  child  processes.
       <!--  automatically  generated,  do  not  edit  manually  -->  <!-- see
       lib/utils/config/definitions.js -->


   workspaces
       o Default: false

       o Type: Boolean


       Enable  running  a  command  in  the  context  of  all  the  configured
       workspaces.

       This  value  is  not  exported  to the environment for child processes.
       <!-- automatically  generated,  do  not  edit  manually  -->  <!--  see
       lib/utils/config/definitions.js -->

       <!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->


   See Also
       o npm help uninstall

       o npm help folders

       o npm help ls




ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+--------------------------+
       |ATTRIBUTE TYPE |     ATTRIBUTE VALUE      |
       +---------------+--------------------------+
       |Availability   | runtime/nodejs/nodejs-16 |
       +---------------+--------------------------+
       |Stability      | Pass-thru volatile       |
       +---------------+--------------------------+

NOTES
       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source    was   downloaded   from    https://github.com/nodejs/node/ar-
       chive/v16.11.1.zip.

       Further information about this software can be found on the open source
       community website at https://github.com/nodejs/node.



                                 October 2021                     NPM-PRUNE(1)