Skip to:
Content

BuddyPress.org

Changeset 12712


Ignore:
Timestamp:
08/30/2020 05:53:06 PM (3 weeks ago)
Author:
imath
Message:

Build/Test Tools: include @wordpress/env into BuddyPress

wp-env requires Docker and the latest Node.js LTS version. It gives us a set of new npm commands to easily generate a local WordPress environment to unit test, develop and contribute to BuddyPress code.

To enjoy wp-env, make sure you have SVN or Git, composer, Node.js and Docker installed on your computer. Get the development version of BuddyPress using our SVN repository or its GitHub read-only mirror from this URL: https://buddypress.org/download/#trunk, and use the command to fetch the code locally into a buddypress folder. From your terminal software, move to this folder to install the needed libraries using the following commands.
npm install
composer install

Once done, you can set up your local development environment using this single command:
npm run wp-env start

You can now access to your local environment and finish the WordPress setup (permalinks etc..) from this URL:
http://localhost:8888/wp-admin/

The administration credentials are:

  • Username: admin,
  • Password: password

To stop the environment, you can use this command:
npm run wp-env stop

To run PHP unit tests, you can use this command:
npm run test-php

To run PHP unit tests on multisite, you can use this command:
npm run test-php-multisite

You can customize your local development setup using a file named .wp-env.override.json . Our default setup is using the WordPress development version and includes the BP REST plugin. For more details about wp-env, have a look at this documentation page: https://developer.wordpress.org/block-editor/packages/packages-env/

Props oztaser, mercime, vapvarun

Fixes #8317

Location:
trunk
Files:
4 added
8 edited

Legend:

Unmodified
Added
Removed
  • trunk

    • Property svn:global-ignores
      •  

        old new  
        11.DS_Store
        22.gitignore
         3.wp-env.override.json
  • trunk/.gitignore

    r12574 r12712  
    2424# The build directory.
    2525build
     26
     27# The custom Docker config file.
     28.wp-env.override.json
  • trunk/composer.json

    r12574 r12712  
    3333    "require-dev": {
    3434        "phpcompatibility/phpcompatibility-wp": "*",
    35         "dealerdirect/phpcodesniffer-composer-installer": "^0.4.3"
     35        "dealerdirect/phpcodesniffer-composer-installer": "^0.4.3",
     36        "wp-phpunit/wp-phpunit": "^5.4"
    3637    }
    3738}
  • trunk/composer.lock

    r12278 r12712  
    55        "This file is @generated automatically"
    66    ],
    7     "content-hash": "90ce29c17b18d6e1939f860a2a0dd560",
     7    "content-hash": "d9a5fdcffcb85a344a7717fa092b72d0",
    88    "packages": [
    99        {
     
    405405            ],
    406406            "time": "2018-09-23T23:08:17+00:00"
     407        },
     408        {
     409            "name": "wp-phpunit/wp-phpunit",
     410            "version": "5.5.0",
     411            "source": {
     412                "type": "git",
     413                "url": "https://github.com/wp-phpunit/wp-phpunit.git",
     414                "reference": "5cf5a40954b8c47941afdc08b0000ce42efe5993"
     415            },
     416            "dist": {
     417                "type": "zip",
     418                "url": "https://api.github.com/repos/wp-phpunit/wp-phpunit/zipball/5cf5a40954b8c47941afdc08b0000ce42efe5993",
     419                "reference": "5cf5a40954b8c47941afdc08b0000ce42efe5993",
     420                "shasum": ""
     421            },
     422            "type": "library",
     423            "autoload": {
     424                "files": [
     425                    "__loaded.php"
     426                ]
     427            },
     428            "notification-url": "https://packagist.org/downloads/",
     429            "license": [
     430                "GPL-2.0-or-later"
     431            ],
     432            "authors": [
     433                {
     434                    "name": "Evan Mattson",
     435                    "email": "me@aaemnnost.tv"
     436                },
     437                {
     438                    "name": "WordPress Community",
     439                    "homepage": "https://wordpress.org/about/"
     440                }
     441            ],
     442            "description": "WordPress core PHPUnit library",
     443            "homepage": "https://github.com/wp-phpunit",
     444            "keywords": [
     445                "phpunit",
     446                "test",
     447                "wordpress"
     448            ],
     449            "time": "2020-08-12T15:43:21+00:00"
    407450        }
    408451    ],
  • trunk/npm-shrinkwrap.json

    r12704 r12712  
    15581558            }
    15591559        },
     1560        "@szmarczak/http-timer": {
     1561            "version": "4.0.5",
     1562            "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.5.tgz",
     1563            "integrity": "sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ==",
     1564            "dev": true,
     1565            "requires": {
     1566                "defer-to-connect": "^2.0.0"
     1567            }
     1568        },
     1569        "@types/cacheable-request": {
     1570            "version": "6.0.1",
     1571            "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.1.tgz",
     1572            "integrity": "sha512-ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ==",
     1573            "dev": true,
     1574            "requires": {
     1575                "@types/http-cache-semantics": "*",
     1576                "@types/keyv": "*",
     1577                "@types/node": "*",
     1578                "@types/responselike": "*"
     1579            }
     1580        },
    15601581        "@types/color-name": {
    15611582            "version": "1.1.1",
     
    15641585            "dev": true
    15651586        },
     1587        "@types/http-cache-semantics": {
     1588            "version": "4.0.0",
     1589            "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz",
     1590            "integrity": "sha512-c3Xy026kOF7QOTn00hbIllV1dLR9hG9NkSrLQgCVs8NF6sBU+VGWjD3wLPhmh1TYAc7ugCFsvHYMN4VcBN1U1A==",
     1591            "dev": true
     1592        },
     1593        "@types/keyv": {
     1594            "version": "3.1.1",
     1595            "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.1.tgz",
     1596            "integrity": "sha512-MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw==",
     1597            "dev": true,
     1598            "requires": {
     1599                "@types/node": "*"
     1600            }
     1601        },
    15661602        "@types/minimist": {
    15671603            "version": "1.2.0",
     
    15701606            "dev": true
    15711607        },
     1608        "@types/node": {
     1609            "version": "14.6.2",
     1610            "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.2.tgz",
     1611            "integrity": "sha512-onlIwbaeqvZyniGPfdw/TEhKIh79pz66L1q06WUQqJLnAb6wbjvOtepLYTGHTqzdXgBYIE3ZdmqHDGsRsbBz7A==",
     1612            "dev": true
     1613        },
    15721614        "@types/normalize-package-data": {
    15731615            "version": "2.4.0",
     
    15871629            "integrity": "sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw==",
    15881630            "dev": true
     1631        },
     1632        "@types/responselike": {
     1633            "version": "1.0.0",
     1634            "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz",
     1635            "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==",
     1636            "dev": true,
     1637            "requires": {
     1638                "@types/node": "*"
     1639            }
    15891640        },
    15901641        "@types/unist": {
     
    16551706            }
    16561707        },
     1708        "@wordpress/env": {
     1709            "version": "1.6.0",
     1710            "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-1.6.0.tgz",
     1711            "integrity": "sha512-+Gim3ByotxgCUEPc3rLsT49jYJOghE3Wrj9/GhTo/scLP7v57MLp0nmd0C36Ny6xraFd17k65tuFg3PcrNhaig==",
     1712            "dev": true,
     1713            "requires": {
     1714                "chalk": "^4.0.0",
     1715                "copy-dir": "^1.3.0",
     1716                "docker-compose": "^0.22.2",
     1717                "extract-zip": "^1.6.7",
     1718                "got": "^10.7.0",
     1719                "inquirer": "^7.1.0",
     1720                "js-yaml": "^3.13.1",
     1721                "nodegit": "^0.26.2",
     1722                "ora": "^4.0.2",
     1723                "rimraf": "^3.0.2",
     1724                "terminal-link": "^2.0.0",
     1725                "yargs": "^14.0.0"
     1726            },
     1727            "dependencies": {
     1728                "@sindresorhus/is": {
     1729                    "version": "2.1.1",
     1730                    "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-2.1.1.tgz",
     1731                    "integrity": "sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==",
     1732                    "dev": true
     1733                },
     1734                "ansi-escapes": {
     1735                    "version": "4.3.1",
     1736                    "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz",
     1737                    "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==",
     1738                    "dev": true,
     1739                    "requires": {
     1740                        "type-fest": "^0.11.0"
     1741                    },
     1742                    "dependencies": {
     1743                        "type-fest": {
     1744                            "version": "0.11.0",
     1745                            "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz",
     1746                            "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==",
     1747                            "dev": true
     1748                        }
     1749                    }
     1750                },
     1751                "ansi-regex": {
     1752                    "version": "5.0.0",
     1753                    "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
     1754                    "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
     1755                    "dev": true
     1756                },
     1757                "ansi-styles": {
     1758                    "version": "4.2.1",
     1759                    "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
     1760                    "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
     1761                    "dev": true,
     1762                    "requires": {
     1763                        "@types/color-name": "^1.1.1",
     1764                        "color-convert": "^2.0.1"
     1765                    }
     1766                },
     1767                "cacheable-request": {
     1768                    "version": "7.0.1",
     1769                    "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.1.tgz",
     1770                    "integrity": "sha512-lt0mJ6YAnsrBErpTMWeu5kl/tg9xMAWjavYTN6VQXM1A/teBITuNcccXsCxF0tDQQJf9DfAaX5O4e0zp0KlfZw==",
     1771                    "dev": true,
     1772                    "requires": {
     1773                        "clone-response": "^1.0.2",
     1774                        "get-stream": "^5.1.0",
     1775                        "http-cache-semantics": "^4.0.0",
     1776                        "keyv": "^4.0.0",
     1777                        "lowercase-keys": "^2.0.0",
     1778                        "normalize-url": "^4.1.0",
     1779                        "responselike": "^2.0.0"
     1780                    }
     1781                },
     1782                "camelcase": {
     1783                    "version": "5.3.1",
     1784                    "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
     1785                    "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
     1786                    "dev": true
     1787                },
     1788                "chalk": {
     1789                    "version": "4.1.0",
     1790                    "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
     1791                    "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
     1792                    "dev": true,
     1793                    "requires": {
     1794                        "ansi-styles": "^4.1.0",
     1795                        "supports-color": "^7.1.0"
     1796                    }
     1797                },
     1798                "chardet": {
     1799                    "version": "0.7.0",
     1800                    "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
     1801                    "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
     1802                    "dev": true
     1803                },
     1804                "cli-cursor": {
     1805                    "version": "3.1.0",
     1806                    "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
     1807                    "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
     1808                    "dev": true,
     1809                    "requires": {
     1810                        "restore-cursor": "^3.1.0"
     1811                    }
     1812                },
     1813                "cli-spinners": {
     1814                    "version": "2.4.0",
     1815                    "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.4.0.tgz",
     1816                    "integrity": "sha512-sJAofoarcm76ZGpuooaO0eDy8saEy+YoZBLjC4h8srt4jeBnkYeOgqxgsJQTpyt2LjI5PTfLJHSL+41Yu4fEJA==",
     1817                    "dev": true
     1818                },
     1819                "cli-width": {
     1820                    "version": "3.0.0",
     1821                    "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
     1822                    "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==",
     1823                    "dev": true
     1824                },
     1825                "color-convert": {
     1826                    "version": "2.0.1",
     1827                    "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
     1828                    "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
     1829                    "dev": true,
     1830                    "requires": {
     1831                        "color-name": "~1.1.4"
     1832                    }
     1833                },
     1834                "color-name": {
     1835                    "version": "1.1.4",
     1836                    "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
     1837                    "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
     1838                    "dev": true
     1839                },
     1840                "decompress-response": {
     1841                    "version": "5.0.0",
     1842                    "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-5.0.0.tgz",
     1843                    "integrity": "sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==",
     1844                    "dev": true,
     1845                    "requires": {
     1846                        "mimic-response": "^2.0.0"
     1847                    }
     1848                },
     1849                "emoji-regex": {
     1850                    "version": "8.0.0",
     1851                    "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
     1852                    "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
     1853                    "dev": true
     1854                },
     1855                "external-editor": {
     1856                    "version": "3.1.0",
     1857                    "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
     1858                    "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
     1859                    "dev": true,
     1860                    "requires": {
     1861                        "chardet": "^0.7.0",
     1862                        "iconv-lite": "^0.4.24",
     1863                        "tmp": "^0.0.33"
     1864                    }
     1865                },
     1866                "figures": {
     1867                    "version": "3.2.0",
     1868                    "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
     1869                    "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
     1870                    "dev": true,
     1871                    "requires": {
     1872                        "escape-string-regexp": "^1.0.5"
     1873                    }
     1874                },
     1875                "find-up": {
     1876                    "version": "3.0.0",
     1877                    "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
     1878                    "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
     1879                    "dev": true,
     1880                    "requires": {
     1881                        "locate-path": "^3.0.0"
     1882                    }
     1883                },
     1884                "get-stream": {
     1885                    "version": "5.2.0",
     1886                    "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
     1887                    "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
     1888                    "dev": true,
     1889                    "requires": {
     1890                        "pump": "^3.0.0"
     1891                    }
     1892                },
     1893                "got": {
     1894                    "version": "10.7.0",
     1895                    "resolved": "https://registry.npmjs.org/got/-/got-10.7.0.tgz",
     1896                    "integrity": "sha512-aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==",
     1897                    "dev": true,
     1898                    "requires": {
     1899                        "@sindresorhus/is": "^2.0.0",
     1900                        "@szmarczak/http-timer": "^4.0.0",
     1901                        "@types/cacheable-request": "^6.0.1",
     1902                        "cacheable-lookup": "^2.0.0",
     1903                        "cacheable-request": "^7.0.1",
     1904                        "decompress-response": "^5.0.0",
     1905                        "duplexer3": "^0.1.4",
     1906                        "get-stream": "^5.0.0",
     1907                        "lowercase-keys": "^2.0.0",
     1908                        "mimic-response": "^2.1.0",
     1909                        "p-cancelable": "^2.0.0",
     1910                        "p-event": "^4.0.0",
     1911                        "responselike": "^2.0.0",
     1912                        "to-readable-stream": "^2.0.0",
     1913                        "type-fest": "^0.10.0"
     1914                    }
     1915                },
     1916                "has-flag": {
     1917                    "version": "4.0.0",
     1918                    "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
     1919                    "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
     1920                    "dev": true
     1921                },
     1922                "http-cache-semantics": {
     1923                    "version": "4.1.0",
     1924                    "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz",
     1925                    "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==",
     1926                    "dev": true
     1927                },
     1928                "inquirer": {
     1929                    "version": "7.3.3",
     1930                    "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz",
     1931                    "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==",
     1932                    "dev": true,
     1933                    "requires": {
     1934                        "ansi-escapes": "^4.2.1",
     1935                        "chalk": "^4.1.0",
     1936                        "cli-cursor": "^3.1.0",
     1937                        "cli-width": "^3.0.0",
     1938                        "external-editor": "^3.0.3",
     1939                        "figures": "^3.0.0",
     1940                        "lodash": "^4.17.19",
     1941                        "mute-stream": "0.0.8",
     1942                        "run-async": "^2.4.0",
     1943                        "rxjs": "^6.6.0",
     1944                        "string-width": "^4.1.0",
     1945                        "strip-ansi": "^6.0.0",
     1946                        "through": "^2.3.6"
     1947                    }
     1948                },
     1949                "is-fullwidth-code-point": {
     1950                    "version": "3.0.0",
     1951                    "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
     1952                    "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
     1953                    "dev": true
     1954                },
     1955                "json-buffer": {
     1956                    "version": "3.0.1",
     1957                    "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
     1958                    "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
     1959                    "dev": true
     1960                },
     1961                "keyv": {
     1962                    "version": "4.0.1",
     1963                    "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.1.tgz",
     1964                    "integrity": "sha512-xz6Jv6oNkbhrFCvCP7HQa8AaII8y8LRpoSm661NOKLr4uHuBwhX4epXrPQgF3+xdJnN4Esm5X0xwY4bOlALOtw==",
     1965                    "dev": true,
     1966                    "requires": {
     1967                        "json-buffer": "3.0.1"
     1968                    }
     1969                },
     1970                "log-symbols": {
     1971                    "version": "3.0.0",
     1972                    "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
     1973                    "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
     1974                    "dev": true,
     1975                    "requires": {
     1976                        "chalk": "^2.4.2"
     1977                    },
     1978                    "dependencies": {
     1979                        "ansi-styles": {
     1980                            "version": "3.2.1",
     1981                            "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
     1982                            "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
     1983                            "dev": true,
     1984                            "requires": {
     1985                                "color-convert": "^1.9.0"
     1986                            }
     1987                        },
     1988                        "chalk": {
     1989                            "version": "2.4.2",
     1990                            "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
     1991                            "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
     1992                            "dev": true,
     1993                            "requires": {
     1994                                "ansi-styles": "^3.2.1",
     1995                                "escape-string-regexp": "^1.0.5",
     1996                                "supports-color": "^5.3.0"
     1997                            }
     1998                        },
     1999                        "color-convert": {
     2000                            "version": "1.9.3",
     2001                            "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
     2002                            "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
     2003                            "dev": true,
     2004                            "requires": {
     2005                                "color-name": "1.1.3"
     2006                            }
     2007                        },
     2008                        "color-name": {
     2009                            "version": "1.1.3",
     2010                            "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
     2011                            "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
     2012                            "dev": true
     2013                        },
     2014                        "has-flag": {
     2015                            "version": "3.0.0",
     2016                            "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
     2017                            "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
     2018                            "dev": true
     2019                        },
     2020                        "supports-color": {
     2021                            "version": "5.5.0",
     2022                            "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
     2023                            "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
     2024                            "dev": true,
     2025                            "requires": {
     2026                                "has-flag": "^3.0.0"
     2027                            }
     2028                        }
     2029                    }
     2030                },
     2031                "lowercase-keys": {
     2032                    "version": "2.0.0",
     2033                    "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz",
     2034                    "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==",
     2035                    "dev": true
     2036                },
     2037                "mimic-fn": {
     2038                    "version": "2.1.0",
     2039                    "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
     2040                    "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
     2041                    "dev": true
     2042                },
     2043                "mimic-response": {
     2044                    "version": "2.1.0",
     2045                    "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz",
     2046                    "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==",
     2047                    "dev": true
     2048                },
     2049                "mute-stream": {
     2050                    "version": "0.0.8",
     2051                    "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
     2052                    "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
     2053                    "dev": true
     2054                },
     2055                "normalize-url": {
     2056                    "version": "4.5.0",
     2057                    "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz",
     2058                    "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==",
     2059                    "dev": true
     2060                },
     2061                "onetime": {
     2062                    "version": "5.1.2",
     2063                    "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
     2064                    "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
     2065                    "dev": true,
     2066                    "requires": {
     2067                        "mimic-fn": "^2.1.0"
     2068                    }
     2069                },
     2070                "ora": {
     2071                    "version": "4.1.1",
     2072                    "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz",
     2073                    "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==",
     2074                    "dev": true,
     2075                    "requires": {
     2076                        "chalk": "^3.0.0",
     2077                        "cli-cursor": "^3.1.0",
     2078                        "cli-spinners": "^2.2.0",
     2079                        "is-interactive": "^1.0.0",
     2080                        "log-symbols": "^3.0.0",
     2081                        "mute-stream": "0.0.8",
     2082                        "strip-ansi": "^6.0.0",
     2083                        "wcwidth": "^1.0.1"
     2084                    },
     2085                    "dependencies": {
     2086                        "chalk": {
     2087                            "version": "3.0.0",
     2088                            "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
     2089                            "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
     2090                            "dev": true,
     2091                            "requires": {
     2092                                "ansi-styles": "^4.1.0",
     2093                                "supports-color": "^7.1.0"
     2094                            }
     2095                        }
     2096                    }
     2097                },
     2098                "p-cancelable": {
     2099                    "version": "2.0.0",
     2100                    "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz",
     2101                    "integrity": "sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg==",
     2102                    "dev": true
     2103                },
     2104                "p-event": {
     2105                    "version": "4.2.0",
     2106                    "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz",
     2107                    "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==",
     2108                    "dev": true,
     2109                    "requires": {
     2110                        "p-timeout": "^3.1.0"
     2111                    }
     2112                },
     2113                "p-timeout": {
     2114                    "version": "3.2.0",
     2115                    "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz",
     2116                    "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==",
     2117                    "dev": true,
     2118                    "requires": {
     2119                        "p-finally": "^1.0.0"
     2120                    }
     2121                },
     2122                "responselike": {
     2123                    "version": "2.0.0",
     2124                    "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz",
     2125                    "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==",
     2126                    "dev": true,
     2127                    "requires": {
     2128                        "lowercase-keys": "^2.0.0"
     2129                    }
     2130                },
     2131                "restore-cursor": {
     2132                    "version": "3.1.0",
     2133                    "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
     2134                    "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
     2135                    "dev": true,
     2136                    "requires": {
     2137                        "onetime": "^5.1.0",
     2138                        "signal-exit": "^3.0.2"
     2139                    }
     2140                },
     2141                "rimraf": {
     2142                    "version": "3.0.2",
     2143                    "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
     2144                    "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
     2145                    "dev": true,
     2146                    "requires": {
     2147                        "glob": "^7.1.3"
     2148                    }
     2149                },
     2150                "run-async": {
     2151                    "version": "2.4.1",
     2152                    "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
     2153                    "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
     2154                    "dev": true
     2155                },
     2156                "rxjs": {
     2157                    "version": "6.6.2",
     2158                    "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.2.tgz",
     2159                    "integrity": "sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg==",
     2160                    "dev": true,
     2161                    "requires": {
     2162                        "tslib": "^1.9.0"
     2163                    }
     2164                },
     2165                "string-width": {
     2166                    "version": "4.2.0",
     2167                    "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
     2168                    "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
     2169                    "dev": true,
     2170                    "requires": {
     2171                        "emoji-regex": "^8.0.0",
     2172                        "is-fullwidth-code-point": "^3.0.0",
     2173                        "strip-ansi": "^6.0.0"
     2174                    }
     2175                },
     2176                "strip-ansi": {
     2177                    "version": "6.0.0",
     2178                    "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
     2179                    "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
     2180                    "dev": true,
     2181                    "requires": {
     2182                        "ansi-regex": "^5.0.0"
     2183                    }
     2184                },
     2185                "supports-color": {
     2186                    "version": "7.2.0",
     2187                    "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
     2188                    "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
     2189                    "dev": true,
     2190                    "requires": {
     2191                        "has-flag": "^4.0.0"
     2192                    }
     2193                },
     2194                "type-fest": {
     2195                    "version": "0.10.0",
     2196                    "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz",
     2197                    "integrity": "sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==",
     2198                    "dev": true
     2199                },
     2200                "yargs": {
     2201                    "version": "14.2.3",
     2202                    "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz",
     2203                    "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==",
     2204                    "dev": true,
     2205                    "requires": {
     2206                        "cliui": "^5.0.0",
     2207                        "decamelize": "^1.2.0",
     2208                        "find-up": "^3.0.0",
     2209                        "get-caller-file": "^2.0.1",
     2210                        "require-directory": "^2.1.1",
     2211                        "require-main-filename": "^2.0.0",
     2212                        "set-blocking": "^2.0.0",
     2213                        "string-width": "^3.0.0",
     2214                        "which-module": "^2.0.0",
     2215                        "y18n": "^4.0.0",
     2216                        "yargs-parser": "^15.0.1"
     2217                    },
     2218                    "dependencies": {
     2219                        "ansi-regex": {
     2220                            "version": "4.1.0",
     2221                            "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
     2222                            "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
     2223                            "dev": true
     2224                        },
     2225                        "emoji-regex": {
     2226                            "version": "7.0.3",
     2227                            "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
     2228                            "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
     2229                            "dev": true
     2230                        },
     2231                        "is-fullwidth-code-point": {
     2232                            "version": "2.0.0",
     2233                            "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
     2234                            "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
     2235                            "dev": true
     2236                        },
     2237                        "string-width": {
     2238                            "version": "3.1.0",
     2239                            "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
     2240                            "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
     2241                            "dev": true,
     2242                            "requires": {
     2243                                "emoji-regex": "^7.0.1",
     2244                                "is-fullwidth-code-point": "^2.0.0",
     2245                                "strip-ansi": "^5.1.0"
     2246                            }
     2247                        },
     2248                        "strip-ansi": {
     2249                            "version": "5.2.0",
     2250                            "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
     2251                            "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
     2252                            "dev": true,
     2253                            "requires": {
     2254                                "ansi-regex": "^4.1.0"
     2255                            }
     2256                        }
     2257                    }
     2258                },
     2259                "yargs-parser": {
     2260                    "version": "15.0.1",
     2261                    "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz",
     2262                    "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==",
     2263                    "dev": true,
     2264                    "requires": {
     2265                        "camelcase": "^5.0.0",
     2266                        "decamelize": "^1.2.0"
     2267                    }
     2268                }
     2269            }
     2270        },
    16572271        "@wordpress/escape-html": {
    16582272            "version": "1.7.0",
     
    18252439            }
    18262440        },
     2441        "argparse": {
     2442            "version": "1.0.10",
     2443            "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
     2444            "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
     2445            "dev": true,
     2446            "requires": {
     2447                "sprintf-js": "~1.0.2"
     2448            },
     2449            "dependencies": {
     2450                "sprintf-js": {
     2451                    "version": "1.0.3",
     2452                    "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
     2453                    "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
     2454                    "dev": true
     2455                }
     2456            }
     2457        },
    18272458        "arr-diff": {
    18282459            "version": "4.0.0",
     
    18802511            "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
    18812512            "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
     2513            "dev": true
     2514        },
     2515        "asap": {
     2516            "version": "2.0.6",
     2517            "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
     2518            "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
    18822519            "dev": true
    18832520        },
     
    24353072            "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
    24363073            "dev": true,
    2437             "optional": true,
    24383074            "requires": {
    24393075                "readable-stream": "^2.3.5",
     
    26603296            "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
    26613297            "dev": true,
    2662             "optional": true,
    26633298            "requires": {
    26643299                "buffer-alloc-unsafe": "^1.1.0",
     
    26703305            "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
    26713306            "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==",
    2672             "dev": true,
    2673             "optional": true
     3307            "dev": true
    26743308        },
    26753309        "buffer-crc32": {
     
    26773311            "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
    26783312            "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
    2679             "dev": true,
    2680             "optional": true
     3313            "dev": true
    26813314        },
    26823315        "buffer-equal": {
     
    26903323            "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
    26913324            "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=",
    2692             "dev": true,
    2693             "optional": true
     3325            "dev": true
    26943326        },
    26953327        "buffer-from": {
     
    27443376                "object-assign": "^4.0.1",
    27453377                "rimraf": "^2.4.0"
     3378            }
     3379        },
     3380        "cacheable-lookup": {
     3381            "version": "2.0.1",
     3382            "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz",
     3383            "integrity": "sha512-EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==",
     3384            "dev": true,
     3385            "requires": {
     3386                "@types/keyv": "^3.1.1",
     3387                "keyv": "^4.0.0"
     3388            },
     3389            "dependencies": {
     3390                "json-buffer": {
     3391                    "version": "3.0.1",
     3392                    "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
     3393                    "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
     3394                    "dev": true
     3395                },
     3396                "keyv": {
     3397                    "version": "4.0.1",
     3398                    "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.1.tgz",
     3399                    "integrity": "sha512-xz6Jv6oNkbhrFCvCP7HQa8AaII8y8LRpoSm661NOKLr4uHuBwhX4epXrPQgF3+xdJnN4Esm5X0xwY4bOlALOtw==",
     3400                    "dev": true,
     3401                    "requires": {
     3402                        "json-buffer": "3.0.1"
     3403                    }
     3404                }
    27463405            }
    27473406        },
     
    30283687            }
    30293688        },
     3689        "chownr": {
     3690            "version": "1.1.4",
     3691            "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
     3692            "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
     3693            "dev": true
     3694        },
    30303695        "cipher-base": {
    30313696            "version": "1.0.4",
     
    31683833            "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
    31693834            "dev": true,
    3170             "optional": true,
    31713835            "requires": {
    31723836                "mimic-response": "^1.0.0"
     
    33754039            "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
    33764040            "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
     4041            "dev": true
     4042        },
     4043        "copy-dir": {
     4044            "version": "1.3.0",
     4045            "resolved": "https://registry.npmjs.org/copy-dir/-/copy-dir-1.3.0.tgz",
     4046            "integrity": "sha512-Q4+qBFnN4bwGwvtXXzbp4P/4iNk0MaiGAzvQ8OiMtlLjkIKjmNN689uVzShSM0908q7GoFHXIPx4zi75ocoaHw==",
    33774047            "dev": true
    33784048        },
     
    41904860            }
    41914861        },
     4862        "deep-extend": {
     4863            "version": "0.6.0",
     4864            "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
     4865            "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
     4866            "dev": true
     4867        },
    41924868        "deep-is": {
    41934869            "version": "0.1.3",
     
    42054881            }
    42064882        },
     4883        "defer-to-connect": {
     4884            "version": "2.0.0",
     4885            "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.0.tgz",
     4886            "integrity": "sha512-bYL2d05vOSf1JEZNx5vSAtPuBMkX8K9EUutg7zlKvTqKXHt7RhWJFbmd7qakVuf13i+IkGmp6FwSsONOf6VYIg==",
     4887            "dev": true
     4888        },
    42074889        "define-properties": {
    42084890            "version": "1.1.3",
     
    42954977            "dev": true
    42964978        },
     4979        "detect-libc": {
     4980            "version": "1.0.3",
     4981            "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
     4982            "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=",
     4983            "dev": true
     4984        },
    42974985        "diff": {
    42984986            "version": "3.5.0",
     
    43375025                }
    43385026            }
     5027        },
     5028        "docker-compose": {
     5029            "version": "0.22.2",
     5030            "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.22.2.tgz",
     5031            "integrity": "sha512-iXWb5+LiYmylIMFXvGTYsjI1F+Xyx78Jm/uj1dxwwZLbWkUdH6yOXY5Nr3RjbYX15EgbGJCq78d29CmWQQQMPg==",
     5032            "dev": true
    43395033        },
    43405034        "dom-serializer": {
     
    44865180            "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
    44875181            "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=",
    4488             "dev": true,
    4489             "optional": true
     5182            "dev": true
    44905183        },
    44915184        "each-async": {
     
    45535246            "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
    45545247            "dev": true,
    4555             "optional": true,
    45565248            "requires": {
    45575249                "once": "^1.4.0"
     
    49545646            }
    49555647        },
     5648        "extract-zip": {
     5649            "version": "1.7.0",
     5650            "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz",
     5651            "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==",
     5652            "dev": true,
     5653            "requires": {
     5654                "concat-stream": "^1.6.2",
     5655                "debug": "^2.6.9",
     5656                "mkdirp": "^0.5.4",
     5657                "yauzl": "^2.10.0"
     5658            }
     5659        },
    49565660        "extsprintf": {
    49575661            "version": "1.3.0",
     
    50525756            "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
    50535757            "dev": true,
    5054             "optional": true,
    50555758            "requires": {
    50565759                "pend": "~1.2.0"
     
    52565959            "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
    52575960            "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
    5258             "dev": true,
    5259             "optional": true
     5961            "dev": true
     5962        },
     5963        "fs-extra": {
     5964            "version": "7.0.1",
     5965            "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
     5966            "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
     5967            "dev": true,
     5968            "requires": {
     5969                "graceful-fs": "^4.1.2",
     5970                "jsonfile": "^4.0.0",
     5971                "universalify": "^0.1.0"
     5972            }
     5973        },
     5974        "fs-minipass": {
     5975            "version": "1.2.7",
     5976            "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz",
     5977            "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==",
     5978            "dev": true,
     5979            "requires": {
     5980                "minipass": "^2.6.0"
     5981            }
    52605982        },
    52615983        "fs.realpath": {
     
    68347556            "dev": true
    68357557        },
     7558        "iconv-lite": {
     7559            "version": "0.4.24",
     7560            "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
     7561            "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
     7562            "dev": true,
     7563            "requires": {
     7564                "safer-buffer": ">= 2.1.2 < 3"
     7565            }
     7566        },
    68367567        "icss-replace-symbols": {
    68377568            "version": "1.1.0",
     
    68517582            "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==",
    68527583            "dev": true
     7584        },
     7585        "ignore-walk": {
     7586            "version": "3.0.3",
     7587            "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz",
     7588            "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==",
     7589            "dev": true,
     7590            "requires": {
     7591                "minimatch": "^3.0.4"
     7592            }
    68537593        },
    68547594        "imagemin": {
     
    72888028            }
    72898029        },
     8030        "is-interactive": {
     8031            "version": "1.0.0",
     8032            "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
     8033            "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
     8034            "dev": true
     8035        },
    72908036        "is-jpg": {
    72918037            "version": "2.0.0",
     
    75118257            "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
    75128258            "dev": true
     8259        },
     8260        "js-yaml": {
     8261            "version": "3.14.0",
     8262            "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz",
     8263            "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==",
     8264            "dev": true,
     8265            "requires": {
     8266                "argparse": "^1.0.7",
     8267                "esprima": "^4.0.0"
     8268            },
     8269            "dependencies": {
     8270                "esprima": {
     8271                    "version": "4.0.1",
     8272                    "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
     8273                    "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
     8274                    "dev": true
     8275                }
     8276            }
    75138277        },
    75148278        "jsbn": {
     
    76828446            }
    76838447        },
     8448        "jsonfile": {
     8449            "version": "4.0.0",
     8450            "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
     8451            "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
     8452            "dev": true,
     8453            "requires": {
     8454                "graceful-fs": "^4.1.6"
     8455            }
     8456        },
    76848457        "jsprim": {
    76858458            "version": "1.4.1",
     
    82389011            "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
    82399012            "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==",
    8240             "dev": true,
    8241             "optional": true
     9013            "dev": true
    82429014        },
    82439015        "min-indent": {
     
    82839055                "is-plain-obj": "^1.1.0",
    82849056                "kind-of": "^6.0.3"
     9057            }
     9058        },
     9059        "minipass": {
     9060            "version": "2.9.0",
     9061            "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz",
     9062            "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==",
     9063            "dev": true,
     9064            "requires": {
     9065                "safe-buffer": "^5.1.2",
     9066                "yallist": "^3.0.0"
     9067            }
     9068        },
     9069        "minizlib": {
     9070            "version": "1.3.3",
     9071            "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz",
     9072            "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==",
     9073            "dev": true,
     9074            "requires": {
     9075                "minipass": "^2.9.0"
    82859076            }
    82869077        },
     
    83649155                "snapdragon": "^0.8.1",
    83659156                "to-regex": "^3.0.1"
     9157            }
     9158        },
     9159        "needle": {
     9160            "version": "2.5.0",
     9161            "resolved": "https://registry.npmjs.org/needle/-/needle-2.5.0.tgz",
     9162            "integrity": "sha512-o/qITSDR0JCyCKEQ1/1bnUXMmznxabbwi/Y4WwJElf+evwJNFNwIDMCCt5IigFVxgeGBJESLohGtIS9gEzo1fA==",
     9163            "dev": true,
     9164            "requires": {
     9165                "debug": "^3.2.6",
     9166                "iconv-lite": "^0.4.4",
     9167                "sax": "^1.2.4"
     9168            },
     9169            "dependencies": {
     9170                "debug": {
     9171                    "version": "3.2.6",
     9172                    "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
     9173                    "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
     9174                    "dev": true,
     9175                    "requires": {
     9176                        "ms": "^2.1.1"
     9177                    }
     9178                },
     9179                "ms": {
     9180                    "version": "2.1.2",
     9181                    "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
     9182                    "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
     9183                    "dev": true
     9184                }
    83669185            }
    83679186        },
     
    84669285            }
    84679286        },
     9287        "node-pre-gyp": {
     9288            "version": "0.13.0",
     9289            "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.13.0.tgz",
     9290            "integrity": "sha512-Md1D3xnEne8b/HGVQkZZwV27WUi1ZRuZBij24TNaZwUPU3ZAFtvT6xxJGaUVillfmMKnn5oD1HoGsp2Ftik7SQ==",
     9291            "dev": true,
     9292            "requires": {
     9293                "detect-libc": "^1.0.2",
     9294                "mkdirp": "^0.5.1",
     9295                "needle": "^2.2.1",
     9296                "nopt": "^4.0.1",
     9297                "npm-packlist": "^1.1.6",
     9298                "npmlog": "^4.0.2",
     9299                "rc": "^1.2.7",
     9300                "rimraf": "^2.6.1",
     9301                "semver": "^5.3.0",
     9302                "tar": "^4"
     9303            },
     9304            "dependencies": {
     9305                "nopt": {
     9306                    "version": "4.0.3",
     9307                    "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz",
     9308                    "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==",
     9309                    "dev": true,
     9310                    "requires": {
     9311                        "abbrev": "1",
     9312                        "osenv": "^0.1.4"
     9313                    }
     9314                },
     9315                "tar": {
     9316                    "version": "4.4.13",
     9317                    "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz",
     9318                    "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==",
     9319                    "dev": true,
     9320                    "requires": {
     9321                        "chownr": "^1.1.1",
     9322                        "fs-minipass": "^1.2.5",
     9323                        "minipass": "^2.8.6",
     9324                        "minizlib": "^1.2.1",
     9325                        "mkdirp": "^0.5.0",
     9326                        "safe-buffer": "^5.1.2",
     9327                        "yallist": "^3.0.3"
     9328                    }
     9329                }
     9330            }
     9331        },
    84689332        "node-releases": {
    84699333            "version": "1.1.52",
     
    85459409            }
    85469410        },
     9411        "nodegit": {
     9412            "version": "0.26.5",
     9413            "resolved": "https://registry.npmjs.org/nodegit/-/nodegit-0.26.5.tgz",
     9414            "integrity": "sha512-l9l2zhcJ0V7FYzPdXIsuJcXN8UnLuhQgM+377HJfCYE/eupL/OWtMVvUOq42F9dRsgC3bAYH9j2Xbwr0lpYVZQ==",
     9415            "dev": true,
     9416            "requires": {
     9417                "fs-extra": "^7.0.0",
     9418                "json5": "^2.1.0",
     9419                "lodash": "^4.17.14",
     9420                "nan": "^2.14.0",
     9421                "node-gyp": "^4.0.0",
     9422                "node-pre-gyp": "^0.13.0",
     9423                "promisify-node": "~0.3.0",
     9424                "ramda": "^0.25.0",
     9425                "request-promise-native": "^1.0.5",
     9426                "tar-fs": "^1.16.3"
     9427            },
     9428            "dependencies": {
     9429                "node-gyp": {
     9430                    "version": "4.0.0",
     9431                    "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-4.0.0.tgz",
     9432                    "integrity": "sha512-2XiryJ8sICNo6ej8d0idXDEMKfVfFK7kekGCtJAuelGsYHQxhj13KTf95swTCN2dZ/4lTfZ84Fu31jqJEEgjWA==",
     9433                    "dev": true,
     9434                    "requires": {
     9435                        "glob": "^7.0.3",
     9436                        "graceful-fs": "^4.1.2",
     9437                        "mkdirp": "^0.5.0",
     9438                        "nopt": "2 || 3",
     9439                        "npmlog": "0 || 1 || 2 || 3 || 4",
     9440                        "osenv": "0",
     9441                        "request": "^2.87.0",
     9442                        "rimraf": "2",
     9443                        "semver": "~5.3.0",
     9444                        "tar": "^4.4.8",
     9445                        "which": "1"
     9446                    }
     9447                },
     9448                "semver": {
     9449                    "version": "5.3.0",
     9450                    "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
     9451                    "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
     9452                    "dev": true
     9453                },
     9454                "tar": {
     9455                    "version": "4.4.13",
     9456                    "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz",
     9457                    "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==",
     9458                    "dev": true,
     9459                    "requires": {
     9460                        "chownr": "^1.1.1",
     9461                        "fs-minipass": "^1.2.5",
     9462                        "minipass": "^2.8.6",
     9463                        "minizlib": "^1.2.1",
     9464                        "mkdirp": "^0.5.0",
     9465                        "safe-buffer": "^5.1.2",
     9466                        "yallist": "^3.0.3"
     9467                    }
     9468                }
     9469            }
     9470        },
     9471        "nodegit-promise": {
     9472            "version": "4.0.0",
     9473            "resolved": "https://registry.npmjs.org/nodegit-promise/-/nodegit-promise-4.0.0.tgz",
     9474            "integrity": "sha1-VyKxhPLfcycWEGSnkdLoQskWezQ=",
     9475            "dev": true,
     9476            "requires": {
     9477                "asap": "~2.0.3"
     9478            }
     9479        },
    85479480        "nopt": {
    85489481            "version": "3.0.6",
     
    85999532            "dev": true
    86009533        },
     9534        "npm-bundled": {
     9535            "version": "1.1.1",
     9536            "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.1.tgz",
     9537            "integrity": "sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==",
     9538            "dev": true,
     9539            "requires": {
     9540                "npm-normalize-package-bin": "^1.0.1"
     9541            }
     9542        },
    86019543        "npm-conf": {
    86029544            "version": "1.1.3",
     
    86179559                    "optional": true
    86189560                }
     9561            }
     9562        },
     9563        "npm-normalize-package-bin": {
     9564            "version": "1.0.1",
     9565            "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz",
     9566            "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==",
     9567            "dev": true
     9568        },
     9569        "npm-packlist": {
     9570            "version": "1.4.8",
     9571            "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz",
     9572            "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==",
     9573            "dev": true,
     9574            "requires": {
     9575                "ignore-walk": "^3.0.1",
     9576                "npm-bundled": "^1.0.1",
     9577                "npm-normalize-package-bin": "^1.0.1"
    86199578            }
    86209579        },
     
    89339892            "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
    89349893            "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
    8935             "dev": true,
    8936             "optional": true
     9894            "dev": true
    89379895        },
    89389896        "p-is-promise": {
     
    936510323            "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
    936610324            "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
    9367             "dev": true,
    9368             "optional": true
     10325            "dev": true
    936910326        },
    937010327        "performance-now": {
     
    1108112038            "dev": true
    1108212039        },
     12040        "promisify-node": {
     12041            "version": "0.3.0",
     12042            "resolved": "https://registry.npmjs.org/promisify-node/-/promisify-node-0.3.0.tgz",
     12043            "integrity": "sha1-tLVaz5D6p9K4uQyjlomQhsAwYM8=",
     12044            "dev": true,
     12045            "requires": {
     12046                "nodegit-promise": "~4.0.0"
     12047            }
     12048        },
    1108312049        "prop-types": {
    1108412050            "version": "15.7.2",
     
    1113012096            "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
    1113112097            "dev": true,
    11132             "optional": true,
    1113312098            "requires": {
    1113412099                "end-of-stream": "^1.1.0",
     
    1137412339            }
    1137512340        },
     12341        "ramda": {
     12342            "version": "0.25.0",
     12343            "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.25.0.tgz",
     12344            "integrity": "sha512-GXpfrYVPwx3K7RQ6aYT8KPS8XViSXUVJT1ONhoKPE9VAleW42YE+U+8VEyGWt41EnEQW7gwecYJriTI0pKoecQ==",
     12345            "dev": true
     12346        },
    1137612347        "randombytes": {
    1137712348            "version": "2.1.0",
     
    1141312384                    "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
    1141412385                    "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
     12386                    "dev": true
     12387                }
     12388            }
     12389        },
     12390        "rc": {
     12391            "version": "1.2.8",
     12392            "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
     12393            "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
     12394            "dev": true,
     12395            "requires": {
     12396                "deep-extend": "^0.6.0",
     12397                "ini": "~1.3.0",
     12398                "minimist": "^1.2.0",
     12399                "strip-json-comments": "~2.0.1"
     12400            },
     12401            "dependencies": {
     12402                "minimist": {
     12403                    "version": "1.2.5",
     12404                    "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
     12405                    "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
    1141512406                    "dev": true
    1141612407                }
     
    1339014381            }
    1339114382        },
     14383        "supports-hyperlinks": {
     14384            "version": "2.1.0",
     14385            "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz",
     14386            "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==",
     14387            "dev": true,
     14388            "requires": {
     14389                "has-flag": "^4.0.0",
     14390                "supports-color": "^7.0.0"
     14391            },
     14392            "dependencies": {
     14393                "has-flag": {
     14394                    "version": "4.0.0",
     14395                    "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
     14396                    "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
     14397                    "dev": true
     14398                },
     14399                "supports-color": {
     14400                    "version": "7.2.0",
     14401                    "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
     14402                    "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
     14403                    "dev": true,
     14404                    "requires": {
     14405                        "has-flag": "^4.0.0"
     14406                    }
     14407                }
     14408            }
     14409        },
    1339214410        "svg-tags": {
    1339314411            "version": "1.0.0",
     
    1351814536            }
    1351914537        },
     14538        "tar-fs": {
     14539            "version": "1.16.3",
     14540            "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.3.tgz",
     14541            "integrity": "sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw==",
     14542            "dev": true,
     14543            "requires": {
     14544                "chownr": "^1.0.1",
     14545                "mkdirp": "^0.5.1",
     14546                "pump": "^1.0.0",
     14547                "tar-stream": "^1.1.2"
     14548            },
     14549            "dependencies": {
     14550                "pump": {
     14551                    "version": "1.0.3",
     14552                    "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz",
     14553                    "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==",
     14554                    "dev": true,
     14555                    "requires": {
     14556                        "end-of-stream": "^1.1.0",
     14557                        "once": "^1.3.1"
     14558                    }
     14559                }
     14560            }
     14561        },
    1352014562        "tar-stream": {
    1352114563            "version": "1.6.2",
     
    1352314565            "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==",
    1352414566            "dev": true,
    13525             "optional": true,
    1352614567            "requires": {
    1352714568                "bl": "^1.0.0",
     
    1355214593            }
    1355314594        },
     14595        "terminal-link": {
     14596            "version": "2.1.1",
     14597            "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz",
     14598            "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==",
     14599            "dev": true,
     14600            "requires": {
     14601                "ansi-escapes": "^4.2.1",
     14602                "supports-hyperlinks": "^2.0.0"
     14603            },
     14604            "dependencies": {
     14605                "ansi-escapes": {
     14606                    "version": "4.3.1",
     14607                    "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz",
     14608                    "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==",
     14609                    "dev": true,
     14610                    "requires": {
     14611                        "type-fest": "^0.11.0"
     14612                    }
     14613                },
     14614                "type-fest": {
     14615                    "version": "0.11.0",
     14616                    "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz",
     14617                    "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==",
     14618                    "dev": true
     14619                }
     14620            }
     14621        },
    1355414622        "terser": {
    1355514623            "version": "3.17.0",
     
    1366114729            "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz",
    1366214730            "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==",
    13663             "dev": true,
    13664             "optional": true
     14731            "dev": true
    1366514732        },
    1366614733        "to-fast-properties": {
     
    1369014757            }
    1369114758        },
     14759        "to-readable-stream": {
     14760            "version": "2.1.0",
     14761            "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-2.1.0.tgz",
     14762            "integrity": "sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==",
     14763            "dev": true
     14764        },
    1369214765        "to-regex": {
    1369314766            "version": "3.0.2",
     
    1378714860                "glob": "^7.1.2"
    1378814861            }
     14862        },
     14863        "tslib": {
     14864            "version": "1.13.0",
     14865            "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
     14866            "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
     14867            "dev": true
    1378914868        },
    1379014869        "tty-browserify": {
     
    1410915188                "unist-util-is": "^4.0.0"
    1411015189            }
     15190        },
     15191        "universalify": {
     15192            "version": "0.1.2",
     15193            "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
     15194            "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
     15195            "dev": true
    1411115196        },
    1411215197        "unquote": {
     
    1468615771            "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
    1468715772            "dev": true,
    14688             "optional": true,
    1468915773            "requires": {
    1469015774                "buffer-crc32": "~0.2.3",
  • trunk/package.json

    r12704 r12712  
    99        "@wordpress/babel-preset-default": "~4.10.0",
    1010        "@wordpress/browserslist-config": "~2.1.4",
     11        "@wordpress/env": "~1.6.0",
    1112        "autoprefixer": "~8.5.2",
    1213        "grunt": "~1.1.0",
     
    4546        "watch:components": "parcel watch src/js/bp-core/js/block-components/block-components.js --out-dir src/bp-core/js --out-file block-components.js --no-source-maps --global bp",
    4647        "dev:components": "parcel build src/js/bp-core/js/block-components/block-components.js --out-dir src/bp-core/js --out-file block-components.js --no-source-maps --no-minify --global bp",
    47         "build:components": "parcel build src/js/bp-core/js/block-components/block-components.js --out-dir build/bp-core/js --out-file block-components.js --global bp"
     48        "build:components": "parcel build src/js/bp-core/js/block-components/block-components.js --out-dir build/bp-core/js --out-file block-components.js --global bp",
     49        "wp-env": "wp-env",
     50        "test-php": "npm run wp-env run phpunit 'phpunit -c /var/www/html/wp-content/plugins/buddypress/tests/phpunit/env.xml'",
     51        "test-php-multisite": "npm run wp-env run phpunit 'phpunit -c /var/www/html/wp-content/plugins/buddypress/tests/phpunit/env.multisite.xml'"
    4852    },
    4953    "keywords": [
  • trunk/tests/phpunit/bootstrap.php

    r10539 r12712  
    11<?php
     2
     3if ( defined( 'BP_USE_WP_ENV_TESTS' ) ) {
     4    // wp-env setup.
     5    define( 'WP_TESTS_CONFIG_FILE_PATH', dirname( __FILE__ ) . '/assets/phpunit-wp-config.php' );
     6    define( 'WP_TESTS_CONFIG_PATH', WP_TESTS_CONFIG_FILE_PATH );
     7
     8    // Use WP PHPUnit.
     9    require_once dirname( dirname( dirname( __FILE__ ) ) ) . '/vendor/wp-phpunit/wp-phpunit/__loaded.php';
     10}
    211
    312require( dirname( __FILE__ ) . '/includes/define-constants.php' );
  • trunk/tests/phpunit/includes/define-constants.php

    r9819 r12712  
    2121 *   up the directory tree
    2222 */
    23 if ( false !== getenv( 'WP_TESTS_DIR' ) ) {
     23if ( false !== getenv( 'WP_PHPUNIT__DIR' ) ) {
     24    define( 'WP_TESTS_DIR', getenv( 'WP_PHPUNIT__DIR' ) );
     25    define( 'WP_ROOT_DIR', '/var/www/html' );
     26} elseif ( false !== getenv( 'WP_TESTS_DIR' ) ) {
    2427    define( 'WP_TESTS_DIR', getenv( 'WP_TESTS_DIR' ) );
    2528    define( 'WP_ROOT_DIR', WP_TESTS_DIR );
     
    3538}
    3639
    37 // Based on the tests directory, look for a config file
    38 if ( file_exists( WP_ROOT_DIR . '/wp-tests-config.php' ) ) {
    39     // Standard develop.svn.wordpress.org setup
    40     define( 'WP_TESTS_CONFIG_PATH', WP_ROOT_DIR . '/wp-tests-config.php' );
     40if ( ! defined( 'WP_TESTS_CONFIG_FILE_PATH' ) ) {
     41    // Based on the tests directory, look for a config file
     42    if ( file_exists( WP_ROOT_DIR . '/wp-tests-config.php' ) ) {
     43        // Standard develop.svn.wordpress.org setup
     44        define( 'WP_TESTS_CONFIG_PATH', WP_ROOT_DIR . '/wp-tests-config.php' );
    4145
    42 } elseif ( file_exists( WP_TESTS_DIR . '/wp-tests-config.php' ) ) {
    43     // Legacy unit-test.svn.wordpress.org setup
    44     define( 'WP_TESTS_CONFIG_PATH', WP_TESTS_DIR . '/wp-tests-config.php' );
     46    } elseif ( file_exists( WP_TESTS_DIR . '/wp-tests-config.php' ) ) {
     47        // Legacy unit-test.svn.wordpress.org setup
     48        define( 'WP_TESTS_CONFIG_PATH', WP_TESTS_DIR . '/wp-tests-config.php' );
    4549
    46 } elseif ( file_exists( dirname( dirname( WP_TESTS_DIR ) ) . '/wp-tests-config.php' ) ) {
    47     // Environment variable exists and points to tests/phpunit of
    48     // develop.svn.wordpress.org setup
    49     define( 'WP_TESTS_CONFIG_PATH', dirname( dirname( WP_TESTS_DIR ) ) . '/wp-tests-config.php' );
     50    } elseif ( file_exists( dirname( dirname( WP_TESTS_DIR ) ) . '/wp-tests-config.php' ) ) {
     51        // Environment variable exists and points to tests/phpunit of
     52        // develop.svn.wordpress.org setup
     53        define( 'WP_TESTS_CONFIG_PATH', dirname( dirname( WP_TESTS_DIR ) ) . '/wp-tests-config.php' );
    5054
    51 } else {
    52     die( "wp-tests-config.php could not be found.\n" );
     55    } else {
     56        die( "wp-tests-config.php could not be found.\n" );
     57    }
    5358}
Note: See TracChangeset for help on using the changeset viewer.