‚̧Nanoseconds Produce Minutes
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ¬Ľ

    p3x-toolspublic

    NPM

    Build Status Scrutinizer Code Quality Code Coverage

    ūüí£ Tools v1.3.249-424

    This is an open-source project. Star this repository if you like it, or even donate! Thank you so much! :)

    I run my own server with dynamic IP address so it may happen that the server can not be reachable for about max 5 minutes due to the dynamic DNS. The server may also be unreachable when I backup the SSD with Clonzilla (very rarely) or an electrical issue (but this should not happen again). When the server is down, please hang on for 5-30 minutes and the server will be back up.

    All my domains (patrikx3.com and corifeus.com) could have errors since I am developing in my free time. However, it is usually stable.

    Node Version Requirement

    >=8.9.0 
    

    Built on Node

    v9.11.1
    

    The async and await keywords are required.

    Install NodeJs:
    https://nodejs.org/en/download/package-manager/

    Description

    This is an internal tool program (p3x) to manage a recursive async and serial command for NPM packages.

    Install

    sudo npm install -g p3x-tools --unsafe-perm=true --allow-root

    Examples

    All folders exclude node_modules and bower_components except it is included.

    p3x docker clean # delete images the have exited 
    p3x docker clear # delete all images in docker 
    p3x docker free # delete exited containers 
    p3x pkg yarn install | <command> # installs recursive every project that has a package.json 
    p3x build yarn install  | <command>  # install recursive every package that has a corifeus-builder 
    p3x npm unpublish # unpublish every package from NPM except the last Minor version (Major.Minor.Build-Commit) 
    p3x link # links every recursive given package together 
    p3x git <command> # you can execute a command on every git dir, recursive 
    p3x rm <folder> # remove recursive the given folder 
    p3x ncu -a # updates recursive all packages 
    p3x git pull # recursive pull every folder 
    p3x git push # recursive push every folder 
    p3x git renew|truncate # remote all commits, from #1231 commit to #1 
    p3x git init repo-name # .git is not required, is auto added, post-update is generated so it is my own, specific for the patrikx3.com server git repo (it adds in the webhook), the names are only lower cased forcefully a-z, digit and dash. 

    and more ...

    If you want the commands is serials, add the -s or --serial flag, otherwise all async.

    etc ...

    Dependencies Fix

    http://cdn.corifeus.com/git/tools/dependencies-fix.json

    Default excludes from GitHub:

    http://cdn.corifeus.com/git/tools/github.json

    Github fork upstream

    1 . Clone your fork:

    git clone git@github.com:YOUR-USERNAME/YOUR-FORKED-REPO.git

    2 . Add remote from original repository in your forked repository:

    cd into/cloned/fork-repo  
    git remote add upstream https://github.com/ORIGINAL-DEV-USERNAME/REPO-YOU-FORKED-FROM.git  
    git fetch upstream  

    3 . Updating your fork from original repo to keep up with their changes:

    git pull upstream master
    git merge upstream/master
    git push
     
    # or 
    git checkout dev
    git pull upstream dev
    git merge upstream/dev
    git push

    Warning / deprecate

    npm deprecate <pkg>[@<version>] <message>
    // or better
    npm deprecate my-thing@"< 0.2.3" "critical bug fixed in v0.2.3"

    Really make a bare repo to smaller

    https://stackoverflow.com/questions/2116778/reduce-git-repository-size
    https://stackoverflow.com/questions/3797907/how-to-remove-unused-objects-from-a-git-repository/14729486#14729486

    git gc --prune=now --aggressive

    Show available versions on NPM

    # for example 
    npm show p3x-angular-compile versions --json

    Verdaccio NPM fix

    https://github.com/verdaccio/verdaccio/issues/577

    docker run --rm -it node:9.2.0-alpine sh
    / # npm login --registry https://npm.company.com
    Username: admin
    Password:
    Email: (this IS public) admin@company.com
    Logged in as admin on https://npm.company.com/.
    / # cat ~/.npmrc
    //npm.company.com/:_authToken=Rwl9t+GHjlgP+brFJ6WycIe1y6r3Z+ShUEqsLusmFC11w3n6ex8JdmkMoKv/0U/D
    / #

    Another solution is like this:

    # project .npmrc
    registry = "https://registry.acmeco.com"
    ca = null
    always-auth = true

    Swap for Docker

    https://askubuntu.com/questions/417215/how-does-kernel-support-swap-limit

    Edit:

    sudo nano /etc/default/grub

    Like:

    GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1" 

    Update:

    sudo update-grub

    P3X-TOOLS Build v1.3.249-424

    Like Corifeus @ Facebook Donate for Corifeus / P3X Contact Corifeus / P3X

    Sponsor

    JetBrains

    install

    npm i p3x-tools

    Downloadsweekly downloads

    2,270

    version

    1.3.249-424

    license

    MIT

    repository

    github.com

    last publish

    collaborators

    • avatar