GRAYBYTE WORDPRESS FILE MANAGER1727

Server IP : 198.54.121.189 / Your IP : 216.73.216.140
System : Linux premium69.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
PHP Version : 7.4.33
Disable Function : NONE
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /lib/node_modules/npm/lib/
Upload Files :
Current_dir [ Not Writeable ] Document_root [ Writeable ]

Command :


Current File : /lib/node_modules/npm/lib//version.js
'use strict'
const BB = require('bluebird')

const assert = require('assert')
const chain = require('slide').chain
const detectIndent = require('detect-indent')
const detectNewline = require('detect-newline')
const fs = require('graceful-fs')
const readFile = BB.promisify(require('graceful-fs').readFile)
const git = require('./utils/git.js')
const lifecycle = require('./utils/lifecycle.js')
const log = require('npmlog')
const npm = require('./npm.js')
const output = require('./utils/output.js')
const parseJSON = require('./utils/parse-json.js')
const path = require('path')
const semver = require('semver')
const stringifyPackage = require('stringify-package')
const writeFileAtomic = require('write-file-atomic')

version.usage = 'npm version [<newversion> | major | minor | patch | premajor | preminor | prepatch | prerelease [--preid=<prerelease-id>] | from-git]' +
                '\n(run in package dir)\n' +
                "'npm -v' or 'npm --version' to print npm version " +
                '(' + npm.version + ')\n' +
                "'npm view <pkg> version' to view a package's " +
                'published version\n' +
                "'npm ls' to inspect current package/dependency versions"

// npm version <newver>
module.exports = version
function version (args, silent, cb_) {
  if (typeof cb_ !== 'function') {
    cb_ = silent
    silent = false
  }
  if (args.length > 1) return cb_(version.usage)

  readPackage(function (er, data, indent, newline) {
    if (!args.length) return dump(data, cb_)

    if (er) {
      log.error('version', 'No valid package.json found')
      return cb_(er)
    }

    if (args[0] === 'from-git') {
      retrieveTagVersion(silent, data, cb_)
    } else {
      var newVersion = semver.valid(args[0])
      if (!newVersion) newVersion = semver.inc(data.version, args[0], npm.config.get('preid'))
      if (!newVersion) return cb_(version.usage)
      persistVersion(newVersion, silent, data, cb_)
    }
  })
}

function retrieveTagVersion (silent, data, cb_) {
  chain([
    verifyGit,
    parseLastGitTag
  ], function (er, results) {
    if (er) return cb_(er)
    var localData = {
      hasGit: true,
      existingTag: true
    }

    var version = results[results.length - 1]
    persistVersion(version, silent, data, localData, cb_)
  })
}

function parseLastGitTag (cb) {
  var options = { env: process.env }
  git.whichAndExec(['describe', '--abbrev=0'], options, function (er, stdout) {
    if (er) {
      if (er.message.indexOf('No names found') !== -1) return cb(new Error('No tags found'))
      return cb(er)
    }

    var tag = stdout.trim()
    var prefix = npm.config.get('tag-version-prefix')
    // Strip the prefix from the start of the tag:
    if (tag.indexOf(prefix) === 0) tag = tag.slice(prefix.length)
    var version = semver.valid(tag)
    if (!version) return cb(new Error(tag + ' is not a valid version'))
    cb(null, version)
  })
}

function persistVersion (newVersion, silent, data, localData, cb_) {
  if (typeof localData === 'function') {
    cb_ = localData
    localData = {}
  }

  if (!npm.config.get('allow-same-version') && data.version === newVersion) {
    return cb_(new Error('Version not changed, might want --allow-same-version'))
  }
  data.version = newVersion
  var lifecycleData = Object.create(data)
  lifecycleData._id = data.name + '@' + newVersion

  var where = npm.prefix
  chain([
    !localData.hasGit && [checkGit, localData],
    [lifecycle, lifecycleData, 'preversion', where],
    [updatePackage, newVersion, silent],
    [lifecycle, lifecycleData, 'version', where],
    [commit, localData, newVersion],
    [lifecycle, lifecycleData, 'postversion', where]
  ], cb_)
}

function readPackage (cb) {
  var packagePath = path.join(npm.localPrefix, 'package.json')
  fs.readFile(packagePath, 'utf8', function (er, data) {
    if (er) return cb(new Error(er))
    var indent
    var newline
    try {
      indent = detectIndent(data).indent
      newline = detectNewline(data)
      data = JSON.parse(data)
    } catch (e) {
      er = e
      data = null
    }
    cb(er, data, indent, newline)
  })
}

function updatePackage (newVersion, silent, cb_) {
  function cb (er) {
    if (!er && !silent) output('v' + newVersion)
    cb_(er)
  }

  readPackage(function (er, data, indent, newline) {
    if (er) return cb(new Error(er))
    data.version = newVersion
    write(data, 'package.json', indent, newline, cb)
  })
}

function commit (localData, newVersion, cb) {
  updateShrinkwrap(newVersion, function (er, hasShrinkwrap, hasLock) {
    if (er || !localData.hasGit) return cb(er)
    localData.hasShrinkwrap = hasShrinkwrap
    localData.hasPackageLock = hasLock
    _commit(newVersion, localData, cb)
  })
}

const SHRINKWRAP = 'npm-shrinkwrap.json'
const PKGLOCK = 'package-lock.json'

function readLockfile (name) {
  return readFile(
    path.join(npm.localPrefix, name), 'utf8'
  ).catch({code: 'ENOENT'}, () => null)
}

function updateShrinkwrap (newVersion, cb) {
  BB.join(
    readLockfile(SHRINKWRAP),
    readLockfile(PKGLOCK),
    (shrinkwrap, lockfile) => {
      if (!shrinkwrap && !lockfile) {
        return cb(null, false, false)
      }
      const file = shrinkwrap ? SHRINKWRAP : PKGLOCK
      let data
      let indent
      let newline
      try {
        data = parseJSON(shrinkwrap || lockfile)
        indent = detectIndent(shrinkwrap || lockfile).indent
        newline = detectNewline(shrinkwrap || lockfile)
      } catch (err) {
        log.error('version', `Bad ${file} data.`)
        return cb(err)
      }
      data.version = newVersion
      write(data, file, indent, newline, (err) => {
        if (err) {
          log.error('version', `Failed to update version in ${file}`)
          return cb(err)
        } else {
          return cb(null, !!shrinkwrap, !!lockfile)
        }
      })
    }
  )
}

function dump (data, cb) {
  var v = {}

  if (data && data.name && data.version) v[data.name] = data.version
  v.npm = npm.version
  Object.keys(process.versions).sort().forEach(function (k) {
    v[k] = process.versions[k]
  })

  if (npm.config.get('json')) v = JSON.stringify(v, null, 2)

  output(v)
  cb()
}

function statGitFolder (cb) {
  fs.stat(path.join(npm.localPrefix, '.git'), cb)
}

function callGitStatus (cb) {
  git.whichAndExec(
    [ 'status', '--porcelain' ],
    { env: process.env },
    cb
  )
}

function cleanStatusLines (stdout) {
  var lines = stdout.trim().split('\n').filter(function (line) {
    return line.trim() && !line.match(/^\?\? /)
  }).map(function (line) {
    return line.trim()
  })

  return lines
}

function verifyGit (cb) {
  function checkStatus (er) {
    if (er) return cb(er)
    callGitStatus(checkStdout)
  }

  function checkStdout (er, stdout) {
    if (er) return cb(er)
    var lines = cleanStatusLines(stdout)
    if (lines.length > 0) {
      return cb(new Error(
        'Git working directory not clean.\n' + lines.join('\n')
      ))
    }

    cb()
  }

  statGitFolder(checkStatus)
}

function checkGit (localData, cb) {
  statGitFolder(function (er) {
    var doGit = !er && npm.config.get('git-tag-version')
    if (!doGit) {
      if (er && npm.config.get('git-tag-version')) log.verbose('version', 'error checking for .git', er)
      log.verbose('version', 'not tagging in git')
      return cb(null, false)
    }

    // check for git
    callGitStatus(function (er, stdout) {
      if (er && er.code === 'ENOGIT') {
        log.warn(
          'version',
          'This is a Git checkout, but the git command was not found.',
          'npm could not create a Git tag for this release!'
        )
        return cb(null, false)
      }

      var lines = cleanStatusLines(stdout)
      if (lines.length && !npm.config.get('force')) {
        return cb(new Error(
          'Git working directory not clean.\n' + lines.join('\n')
        ))
      }
      localData.hasGit = true
      cb(null, true)
    })
  })
}

module.exports.buildCommitArgs = buildCommitArgs
function buildCommitArgs (args) {
  const add = []
  args = args || []
  if (args[0] === 'commit') args.shift()
  if (!npm.config.get('commit-hooks')) add.push('-n')
  if (npm.config.get('allow-same-version')) add.push('--allow-empty')
  return ['commit', ...add, ...args]
}

module.exports.buildTagFlags = buildTagFlags
function buildTagFlags () {
  return '-'.concat(
    npm.config.get('sign-git-tag') ? 's' : '',
    npm.config.get('allow-same-version') ? 'f' : '',
    'm'
  )
}

function _commit (version, localData, cb) {
  const options = { env: process.env }
  const message = npm.config.get('message').replace(/%s/g, version)
  const signCommit = npm.config.get('sign-git-commit')
  const commitArgs = buildCommitArgs([
    'commit',
    ...(signCommit ? ['-S', '-m'] : ['-m']),
    message
  ])

  stagePackageFiles(localData, options).then(() => {
    return git.exec(commitArgs, options)
  }).then(() => {
    if (!localData.existingTag) {
      return git.exec([
        'tag', npm.config.get('tag-version-prefix') + version,
        buildTagFlags(), message
      ], options)
    }
  }).nodeify(cb)
}

function stagePackageFiles (localData, options) {
  return addLocalFile('package.json', options, false).then(() => {
    if (localData.hasShrinkwrap) {
      return addLocalFile('npm-shrinkwrap.json', options, true)
    } else if (localData.hasPackageLock) {
      return addLocalFile('package-lock.json', options, true)
    }
  })
}

function addLocalFile (file, options, ignoreFailure) {
  const p = git.exec(['add', path.join(npm.localPrefix, file)], options)
  return ignoreFailure
    ? p.catch(() => {})
    : p
}

function write (data, file, indent, newline, cb) {
  assert(data && typeof data === 'object', 'must pass data to version write')
  assert(typeof file === 'string', 'must pass filename to write to version write')

  log.verbose('version.write', 'data', data, 'to', file)
  writeFileAtomic(
    path.join(npm.localPrefix, file),
    stringifyPackage(data, indent, newline),
    cb
  )
}

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
January 01 1970 00:00:00
root / root
0
auth
--
March 03 2024 22:36:29
root / root
0755
config
--
March 03 2024 22:36:29
root / root
0755
doctor
--
March 03 2024 22:36:29
root / root
0755
install
--
March 03 2024 22:36:29
root / root
0755
search
--
March 03 2024 22:36:29
root / root
0755
utils
--
March 03 2024 22:36:29
root / root
0755
access.js
5.539 KB
March 10 2021 14:36:36
root / root
0644
adduser.js
1.306 KB
March 10 2021 14:36:36
root / root
0644
audit.js
10.558 KB
March 10 2021 14:36:36
root / root
0644
bin.js
0.503 KB
March 10 2021 14:36:36
root / root
0644
bugs.js
0.844 KB
March 10 2021 14:36:35
root / root
0644
build.js
4.438 KB
March 10 2021 14:36:36
root / root
0644
cache.js
4.661 KB
March 10 2021 14:36:36
root / root
0644
ci.js
1.31 KB
March 10 2021 14:36:36
root / root
0644
completion.js
7.107 KB
March 10 2021 14:36:36
root / root
0644
config.js
7.434 KB
March 10 2021 14:36:36
root / root
0644
dedupe.js
4.882 KB
March 10 2021 14:36:35
root / root
0644
deprecate.js
2.106 KB
March 10 2021 14:36:35
root / root
0644
dist-tag.js
4.105 KB
March 10 2021 14:36:36
root / root
0644
docs.js
1.038 KB
March 10 2021 14:36:36
root / root
0644
doctor.js
3.979 KB
March 10 2021 14:36:35
root / root
0644
edit.js
1.374 KB
March 10 2021 14:36:36
root / root
0644
explore.js
1.669 KB
March 10 2021 14:36:36
root / root
0644
fetch-package-metadata.js
3.969 KB
March 10 2021 14:36:36
root / root
0644
fetch-package-metadata.md
1.769 KB
March 10 2021 14:36:36
root / root
0644
fund.js
4.908 KB
March 10 2021 14:36:36
root / root
0644
get.js
0.229 KB
March 10 2021 14:36:36
root / root
0644
help-search.js
5.642 KB
March 10 2021 14:36:36
root / root
0644
help.js
6.354 KB
March 10 2021 14:36:36
root / root
0644
hook.js
4.616 KB
March 10 2021 14:36:35
root / root
0644
init.js
2.739 KB
March 10 2021 14:36:36
root / root
0644
install-ci-test.js
0.475 KB
March 10 2021 14:36:36
root / root
0644
install-test.js
0.495 KB
March 10 2021 14:36:36
root / root
0644
install.js
36.47 KB
March 10 2021 14:36:36
root / root
0644
link.js
5.604 KB
March 10 2021 14:36:36
root / root
0644
logout.js
1.259 KB
March 10 2021 14:36:36
root / root
0644
ls.js
16.094 KB
March 10 2021 14:36:36
root / root
0644
npm.js
14.374 KB
March 10 2021 14:36:36
root / root
0644
org.js
4.176 KB
March 10 2021 14:36:36
root / root
0644
outdated.js
12.277 KB
March 10 2021 14:36:35
root / root
0644
owner.js
6.596 KB
March 10 2021 14:36:36
root / root
0644
pack.js
11.785 KB
March 10 2021 14:36:36
root / root
0644
ping.js
1.114 KB
March 10 2021 14:36:36
root / root
0644
prefix.js
0.322 KB
March 10 2021 14:36:36
root / root
0644
profile.js
11.134 KB
March 10 2021 14:36:36
root / root
0644
prune.js
2.228 KB
March 10 2021 14:36:36
root / root
0644
publish.js
5.141 KB
March 10 2021 14:36:36
root / root
0644
rebuild.js
2.093 KB
March 10 2021 14:36:36
root / root
0644
repo.js
1.437 KB
March 10 2021 14:36:35
root / root
0644
restart.js
0.063 KB
March 10 2021 14:36:36
root / root
0644
root.js
0.313 KB
March 10 2021 14:36:35
root / root
0644
run-script.js
5.41 KB
March 10 2021 14:36:36
root / root
0644
search.js
3.361 KB
March 10 2021 14:36:36
root / root
0644
set.js
0.27 KB
March 10 2021 14:36:36
root / root
0644
shrinkwrap.js
9.82 KB
March 10 2021 14:36:36
root / root
0644
star.js
2.106 KB
March 10 2021 14:36:36
root / root
0644
stars.js
1.029 KB
March 10 2021 14:36:36
root / root
0644
start.js
0.061 KB
March 10 2021 14:36:36
root / root
0644
stop.js
0.06 KB
March 10 2021 14:36:36
root / root
0644
substack.js
0.497 KB
March 10 2021 14:36:36
root / root
0644
team.js
4.613 KB
March 10 2021 14:36:36
root / root
0644
test.js
0.365 KB
March 10 2021 14:36:36
root / root
0644
token.js
6.658 KB
March 10 2021 14:36:36
root / root
0644
unbuild.js
4.271 KB
March 10 2021 14:36:36
root / root
0644
uninstall.js
2.208 KB
March 10 2021 14:36:35
root / root
0644
unpublish.js
3.51 KB
March 10 2021 14:36:36
root / root
0644
update.js
2.161 KB
March 10 2021 14:36:36
root / root
0644
version.js
9.794 KB
March 10 2021 14:36:36
root / root
0644
view.js
15.11 KB
March 10 2021 14:36:36
root / root
0644
visnup.js
4.008 KB
March 10 2021 14:36:35
root / root
0644
whoami.js
1.767 KB
March 10 2021 14:36:36
root / root
0644
xmas.js
1.624 KB
March 10 2021 14:36:35
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF