Plugin Directory

Changeset 2385939


Ignore:
Timestamp:
09/21/2020 09:40:33 PM (5 years ago)
Author:
welaika
Message:

Release 4.1.0

Location:
wordless
Files:
72 added
20 edited
1 copied

Legend:

Unmodified
Added
Removed
  • wordless/tags/4.1.0/readme.txt

    r2260188 r2385939  
    66Requires at least: 3.0
    77Tested up to: 5.3.0
    8 Stable tag: 4.0.0
     8Stable tag: 4.1.0
    99License: The MIT License
    1010License URI: http://www.opensource.org/licenses/MIT
  • wordless/tags/4.1.0/rtfm/source/_pages/install.rst

    r2261320 r2385939  
    3131#. Global packages from NPM: ``npm install -g foreman yarn`` [1]_ [2]_
    3232#. WordPress installed and configured as per `official documentation`_
     33#. `Composer`_ ``brew install composer``
    3334#. If you'd like to enable the mail-catcher while developing, install MailHog_.
    3435   On MacOS this is as simple as ``brew install mailhog``. Wordless
     
    3738.. _official documentation: https://codex.wordpress.org/Installing_WordPress
    3839.. _MailHog: https://github.com/mailhog/MailHog
     40.. _Composer: https://getcomposer.org/
    3941
    4042.. note::
     
    8183        cd wp-content/themes/mybrandnewtheme
    8284
    83 #. Bundle NPM packages
     85#. Setup all the things
    8486
    8587    .. code-block:: bash
    8688
    87         yarn install
     89        yarn setup
    8890
    8991#. Start the server - and the magic
     
    9698your needs :)
    9799
     100
     101Acceptance tests
     102""""""""""""""""
     103
     104To run acceptance test suite start the test server in one terminal
     105
     106    .. code-block:: bash
     107
     108        yarn test:server
     109
     110and in another terminal let's actually run tests:
     111
     112    .. code-block:: bash
     113
     114        yarn test
     115
    98116.. seealso::
    99117    :ref:`Server` to understand how the magic works
  • wordless/tags/4.1.0/rtfm/source/_pages/usage.rst

    r2261320 r2385939  
    77
    88    usage/anatomy
     9    usage/test_suite
    910    usage/build
    1011    usage/filters
  • wordless/tags/4.1.0/wordless.php

    r2261320 r2385939  
    44Plugin URI: https://github.com/welaika/wordless
    55Description: Wordless is framework which dramatically speeds up and enhances your custom themes creation, thanks to Sass, Pug, Coffeescript, ES6, Babel and Webpack.
    6 Version: 4.0.0
     6Version: 4.1.0
    77Author: weLaika
    88Author URI: http://welaika.com/
  • wordless/tags/4.1.0/wordless/theme_builder.php

    r2261320 r2385939  
    4141                    $source_content = file_get_contents($src . '/' . $file);
    4242                    $source_content = str_replace("%THEME_NAME%", $this->theme_name, $source_content);
     43                    $source_content = str_replace("%ABSPATH%", ABSPATH, $source_content);
    4344                    file_put_contents($dst . '/' . $file, $source_content);
    4445                    chmod($dst . '/' . $file, $this->chmod_set);
  • wordless/tags/4.1.0/wordless/theme_builder/vanilla_theme/.gitignore

    r2221096 r2385939  
    66.DS_Store
    77node_modules
     8vendor/
  • wordless/tags/4.1.0/wordless/theme_builder/vanilla_theme/package.json

    r2261320 r2385939  
    2121    "sign-release": "git rev-parse HEAD | cut -c 1-8 > release.txt",
    2222    "lint": "yarn lint:sass",
    23     "lint:sass": "npx stylelint 'src/stylesheets/**/*.scss'"
     23    "lint:sass": "npx stylelint 'src/stylesheets/**/*.scss'",
     24    "test:db:create": "WP_ENV=test wp db create",
     25    "test:db:snapshot": "wp db export tests/_data/dump.sql",
     26    "test:setup": "wp wordless theme setup_test_suite && composer install && yarn test:db:create && php ./vendor/bin/codecept build",
     27    "test:server": "npx nf start --procfile Procfile.testing --env .env.testing",
     28    "test": "vendor/bin/codecept run acceptance",
     29    "setup": "yarn install && yarn test:setup"
    2430  },
    2531  "dependencies": {},
  • wordless/tags/4.1.0/wordless/theme_builder/vanilla_theme/yarn.lock

    r2261320 r2385939  
    25382538    ms "2.0.0"
    25392539
    2540 debug@^3.0.0, debug@^3.2.6:
     2540debug@^3.0.0:
    25412541  version "3.2.6"
    25422542  resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
     
    26232623    strip-dirs "^2.0.0"
    26242624
    2625 deep-extend@^0.6.0:
    2626   version "0.6.0"
    2627   resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
    2628   integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
    2629 
    26302625define-properties@^1.1.2, define-properties@^1.1.3:
    26312626  version "1.1.3"
     
    26892684  resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
    26902685  integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
    2691 
    2692 detect-libc@^1.0.2:
    2693   version "1.0.3"
    2694   resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
    2695   integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
    26962686
    26972687dev-ip@^1.0.1:
     
    35783568    jsonfile "^3.0.0"
    35793569    universalify "^0.1.0"
    3580 
    3581 fs-minipass@^1.2.5:
    3582   version "1.2.7"
    3583   resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"
    3584   integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==
    3585   dependencies:
    3586     minipass "^2.6.0"
    35873570
    35883571fs-write-stream-atomic@^1.0.8:
     
    41644147  integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
    41654148
    4166 [email protected], iconv-lite@^0.4.4:
     4149[email protected]:
    41674150  version "0.4.24"
    41684151  resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
     
    41874170  resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501"
    41884171  integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE=
    4189 
    4190 ignore-walk@^3.0.1:
    4191   version "3.0.3"
    4192   resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37"
    4193   integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==
    4194   dependencies:
    4195     minimatch "^3.0.4"
    41964172
    41974173ignore@^3.3.5:
     
    44624438  integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
    44634439
    4464 ini@^1.3.4, ini@^1.3.5, ini@~1.3.0:
     4440ini@^1.3.4, ini@^1.3.5:
    44654441  version "1.3.5"
    44664442  resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
     
    55265502  integrity sha512-wTiNDqe4D2rbTJGZk1qcdZgFtY0/r+iuE6GDT7V0/+Gu5MLpIDm4+CssDECR79OJs/OxLPXMzdxy153b5Qy3hg==
    55275503
    5528 minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
    5529   version "2.9.0"
    5530   resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
    5531   integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==
    5532   dependencies:
    5533     safe-buffer "^5.1.2"
    5534     yallist "^3.0.0"
    5535 
    5536 minizlib@^1.2.1:
    5537   version "1.3.3"
    5538   resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
    5539   integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==
    5540   dependencies:
    5541     minipass "^2.9.0"
    5542 
    55435504mississippi@^3.0.0:
    55445505  version "3.0.0"
     
    56345595    snapdragon "^0.8.1"
    56355596    to-regex "^3.0.1"
    5636 
    5637 needle@^2.2.1:
    5638   version "2.3.3"
    5639   resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.3.tgz#a041ad1d04a871b0ebb666f40baaf1fb47867117"
    5640   integrity sha512-EkY0GeSq87rWp1hoq/sH/wnTWgFVhYlnIkbJ0YJFfRgEFlz2RraCjBpFQ+vrEgEdp0ThfyHADmkChEhcb7PKyw==
    5641   dependencies:
    5642     debug "^3.2.6"
    5643     iconv-lite "^0.4.4"
    5644     sax "^1.2.4"
    56455597
    56465598[email protected]:
     
    57065658    vm-browserify "^1.0.1"
    57075659
    5708 node-pre-gyp@*:
    5709   version "0.14.0"
    5710   resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83"
    5711   integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==
    5712   dependencies:
    5713     detect-libc "^1.0.2"
    5714     mkdirp "^0.5.1"
    5715     needle "^2.2.1"
    5716     nopt "^4.0.1"
    5717     npm-packlist "^1.1.6"
    5718     npmlog "^4.0.2"
    5719     rc "^1.2.7"
    5720     rimraf "^2.6.1"
    5721     semver "^5.3.0"
    5722     tar "^4.4.2"
    5723 
    57245660node-releases@^1.1.50:
    57255661  version "1.1.51"
     
    57595695    abbrev "1"
    57605696
    5761 nopt@^4.0.1:
    5762   version "4.0.3"
    5763   resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48"
    5764   integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==
    5765   dependencies:
    5766     abbrev "1"
    5767     osenv "^0.1.4"
    5768 
    57695697normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0:
    57705698  version "2.5.0"
     
    58185746    sort-keys "^2.0.0"
    58195747
    5820 npm-bundled@^1.0.1:
    5821   version "1.1.1"
    5822   resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b"
    5823   integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==
    5824   dependencies:
    5825     npm-normalize-package-bin "^1.0.1"
    5826 
    58275748npm-conf@^1.1.0:
    58285749  version "1.1.3"
     
    58335754    pify "^3.0.0"
    58345755
    5835 npm-normalize-package-bin@^1.0.1:
    5836   version "1.0.1"
    5837   resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2"
    5838   integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==
    5839 
    5840 npm-packlist@^1.1.6:
    5841   version "1.4.8"
    5842   resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e"
    5843   integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==
    5844   dependencies:
    5845     ignore-walk "^3.0.1"
    5846     npm-bundled "^1.0.1"
    5847     npm-normalize-package-bin "^1.0.1"
    5848 
    58495756npm-run-path@^2.0.0:
    58505757  version "2.0.2"
     
    58545761    path-key "^2.0.0"
    58555762
    5856 "npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2:
     5763"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0:
    58575764  version "4.1.2"
    58585765  resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
     
    60445951  integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
    60455952
    6046 osenv@0, osenv@^0.1.4:
     5953osenv@0:
    60475954  version "0.1.5"
    60485955  resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
     
    67916698    iconv-lite "0.4.24"
    67926699    unpipe "1.0.0"
    6793 
    6794 rc@^1.2.7:
    6795   version "1.2.8"
    6796   resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
    6797   integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
    6798   dependencies:
    6799     deep-extend "^0.6.0"
    6800     ini "~1.3.0"
    6801     minimist "^1.2.0"
    6802     strip-json-comments "~2.0.1"
    68036700
    68046701read-pkg-up@^1.0.1:
     
    71627059  integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
    71637060
    7164 rimraf@2, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3:
     7061rimraf@2, rimraf@^2.5.4, rimraf@^2.6.3:
    71657062  version "2.7.1"
    71667063  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
     
    72587155    semver "^6.3.0"
    72597156
    7260 sax@^1.2.4, sax@~1.2.4:
     7157sax@~1.2.4:
    72617158  version "1.2.4"
    72627159  resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
     
    79537850  dependencies:
    79547851    min-indent "^1.0.0"
    7955 
    7956 strip-json-comments@~2.0.1:
    7957   version "2.0.1"
    7958   resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
    7959   integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
    79607852
    79617853strip-outer@^1.0.0:
     
    82678159    inherits "2"
    82688160
    8269 tar@^4.4.2:
    8270   version "4.4.13"
    8271   resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525"
    8272   integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==
    8273   dependencies:
    8274     chownr "^1.1.1"
    8275     fs-minipass "^1.2.5"
    8276     minipass "^2.8.6"
    8277     minizlib "^1.2.1"
    8278     mkdirp "^0.5.0"
    8279     safe-buffer "^5.1.2"
    8280     yallist "^3.0.3"
    8281 
    82828161temp-dir@^1.0.0:
    82838162  version "1.0.0"
     
    90198898  integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
    90208899
    9021 yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3:
     8900yallist@^3.0.2:
    90228901  version "3.1.1"
    90238902  resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
  • wordless/tags/4.1.0/wordless/wordless.php

    r2261320 r2385939  
    33require_once Wordless::join_paths(dirname(__FILE__), '../vendor/autoload.php');
    44require_once Wordless::join_paths(dirname(__FILE__), 'theme_builder.php');
     5require_once Wordless::join_paths(dirname(__FILE__), 'wordless_test_configurations.php');
    56require_once Wordless::join_paths(dirname(__FILE__), 'wp-cli-wordless', 'command.php');
    67
     
    3839            self::register_activation();
    3940        } else {
    40             trigger_error("Missing directories: theme is missing following directories: " . join(array_map('basename', $missing_directories), ", ") . ". Fix theme or deactivate wordless plugin", E_USER_WARNING);
    41         }
     41            $dirlist = join(array_map('basename', $missing_directories), ', ');
     42            $error_text = <<<"ERRORTEXT"
     43
     44Missing directories: theme is missing following directories: $dirlist.
     45You could try following actions:
     46
     47* ignore this WARNING if you're creating the starter theme
     48* `wp wordless theme create THEMENAME` if you have not created the starter theme yet
     49* manually fix the theme if you have deleted something and if you know what are you doing :)
     50* disable Wordless plugin if you activated it by error
     51
     52ERRORTEXT;
     53            trigger_error($error_text, E_USER_WARNING);
     54        }
     55
    4256        self::register_plugin_i18n();
    4357    }
  • wordless/tags/4.1.0/wordless/wp-cli-wordless/command.php

    r2261320 r2385939  
    101101
    102102    /**
     103    * Update wp-config.php to support test suite and .gitlab-ci.yml for CI into project root.
     104    *
     105    * @return void
     106    */
     107    public function setup_test_suite() {
     108        $testConfigs = new WordlessTestConfigurations();
     109        $testConfigs->install();
     110
     111        WP_CLI::success('Test configuration installed');
     112
     113        // NOTE: We're not managing error cases
     114        return true;
     115    }
     116
     117    /**
    103118    * Return the list of files in theme's `tmp` directory
    104119    *
  • wordless/trunk/readme.txt

    r2260188 r2385939  
    66Requires at least: 3.0
    77Tested up to: 5.3.0
    8 Stable tag: 4.0.0
     8Stable tag: 4.1.0
    99License: The MIT License
    1010License URI: http://www.opensource.org/licenses/MIT
  • wordless/trunk/rtfm/source/_pages/install.rst

    r2261320 r2385939  
    3131#. Global packages from NPM: ``npm install -g foreman yarn`` [1]_ [2]_
    3232#. WordPress installed and configured as per `official documentation`_
     33#. `Composer`_ ``brew install composer``
    3334#. If you'd like to enable the mail-catcher while developing, install MailHog_.
    3435   On MacOS this is as simple as ``brew install mailhog``. Wordless
     
    3738.. _official documentation: https://codex.wordpress.org/Installing_WordPress
    3839.. _MailHog: https://github.com/mailhog/MailHog
     40.. _Composer: https://getcomposer.org/
    3941
    4042.. note::
     
    8183        cd wp-content/themes/mybrandnewtheme
    8284
    83 #. Bundle NPM packages
     85#. Setup all the things
    8486
    8587    .. code-block:: bash
    8688
    87         yarn install
     89        yarn setup
    8890
    8991#. Start the server - and the magic
     
    9698your needs :)
    9799
     100
     101Acceptance tests
     102""""""""""""""""
     103
     104To run acceptance test suite start the test server in one terminal
     105
     106    .. code-block:: bash
     107
     108        yarn test:server
     109
     110and in another terminal let's actually run tests:
     111
     112    .. code-block:: bash
     113
     114        yarn test
     115
    98116.. seealso::
    99117    :ref:`Server` to understand how the magic works
  • wordless/trunk/rtfm/source/_pages/usage.rst

    r2261320 r2385939  
    77
    88    usage/anatomy
     9    usage/test_suite
    910    usage/build
    1011    usage/filters
  • wordless/trunk/wordless.php

    r2261320 r2385939  
    44Plugin URI: https://github.com/welaika/wordless
    55Description: Wordless is framework which dramatically speeds up and enhances your custom themes creation, thanks to Sass, Pug, Coffeescript, ES6, Babel and Webpack.
    6 Version: 4.0.0
     6Version: 4.1.0
    77Author: weLaika
    88Author URI: http://welaika.com/
  • wordless/trunk/wordless/theme_builder.php

    r2261320 r2385939  
    4141                    $source_content = file_get_contents($src . '/' . $file);
    4242                    $source_content = str_replace("%THEME_NAME%", $this->theme_name, $source_content);
     43                    $source_content = str_replace("%ABSPATH%", ABSPATH, $source_content);
    4344                    file_put_contents($dst . '/' . $file, $source_content);
    4445                    chmod($dst . '/' . $file, $this->chmod_set);
  • wordless/trunk/wordless/theme_builder/vanilla_theme/.gitignore

    r2221096 r2385939  
    66.DS_Store
    77node_modules
     8vendor/
  • wordless/trunk/wordless/theme_builder/vanilla_theme/package.json

    r2261320 r2385939  
    2121    "sign-release": "git rev-parse HEAD | cut -c 1-8 > release.txt",
    2222    "lint": "yarn lint:sass",
    23     "lint:sass": "npx stylelint 'src/stylesheets/**/*.scss'"
     23    "lint:sass": "npx stylelint 'src/stylesheets/**/*.scss'",
     24    "test:db:create": "WP_ENV=test wp db create",
     25    "test:db:snapshot": "wp db export tests/_data/dump.sql",
     26    "test:setup": "wp wordless theme setup_test_suite && composer install && yarn test:db:create && php ./vendor/bin/codecept build",
     27    "test:server": "npx nf start --procfile Procfile.testing --env .env.testing",
     28    "test": "vendor/bin/codecept run acceptance",
     29    "setup": "yarn install && yarn test:setup"
    2430  },
    2531  "dependencies": {},
  • wordless/trunk/wordless/theme_builder/vanilla_theme/yarn.lock

    r2261320 r2385939  
    25382538    ms "2.0.0"
    25392539
    2540 debug@^3.0.0, debug@^3.2.6:
     2540debug@^3.0.0:
    25412541  version "3.2.6"
    25422542  resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
     
    26232623    strip-dirs "^2.0.0"
    26242624
    2625 deep-extend@^0.6.0:
    2626   version "0.6.0"
    2627   resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
    2628   integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
    2629 
    26302625define-properties@^1.1.2, define-properties@^1.1.3:
    26312626  version "1.1.3"
     
    26892684  resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
    26902685  integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
    2691 
    2692 detect-libc@^1.0.2:
    2693   version "1.0.3"
    2694   resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
    2695   integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
    26962686
    26972687dev-ip@^1.0.1:
     
    35783568    jsonfile "^3.0.0"
    35793569    universalify "^0.1.0"
    3580 
    3581 fs-minipass@^1.2.5:
    3582   version "1.2.7"
    3583   resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"
    3584   integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==
    3585   dependencies:
    3586     minipass "^2.6.0"
    35873570
    35883571fs-write-stream-atomic@^1.0.8:
     
    41644147  integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
    41654148
    4166 [email protected], iconv-lite@^0.4.4:
     4149[email protected]:
    41674150  version "0.4.24"
    41684151  resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
     
    41874170  resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501"
    41884171  integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE=
    4189 
    4190 ignore-walk@^3.0.1:
    4191   version "3.0.3"
    4192   resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37"
    4193   integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==
    4194   dependencies:
    4195     minimatch "^3.0.4"
    41964172
    41974173ignore@^3.3.5:
     
    44624438  integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
    44634439
    4464 ini@^1.3.4, ini@^1.3.5, ini@~1.3.0:
     4440ini@^1.3.4, ini@^1.3.5:
    44654441  version "1.3.5"
    44664442  resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
     
    55265502  integrity sha512-wTiNDqe4D2rbTJGZk1qcdZgFtY0/r+iuE6GDT7V0/+Gu5MLpIDm4+CssDECR79OJs/OxLPXMzdxy153b5Qy3hg==
    55275503
    5528 minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
    5529   version "2.9.0"
    5530   resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
    5531   integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==
    5532   dependencies:
    5533     safe-buffer "^5.1.2"
    5534     yallist "^3.0.0"
    5535 
    5536 minizlib@^1.2.1:
    5537   version "1.3.3"
    5538   resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
    5539   integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==
    5540   dependencies:
    5541     minipass "^2.9.0"
    5542 
    55435504mississippi@^3.0.0:
    55445505  version "3.0.0"
     
    56345595    snapdragon "^0.8.1"
    56355596    to-regex "^3.0.1"
    5636 
    5637 needle@^2.2.1:
    5638   version "2.3.3"
    5639   resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.3.tgz#a041ad1d04a871b0ebb666f40baaf1fb47867117"
    5640   integrity sha512-EkY0GeSq87rWp1hoq/sH/wnTWgFVhYlnIkbJ0YJFfRgEFlz2RraCjBpFQ+vrEgEdp0ThfyHADmkChEhcb7PKyw==
    5641   dependencies:
    5642     debug "^3.2.6"
    5643     iconv-lite "^0.4.4"
    5644     sax "^1.2.4"
    56455597
    56465598[email protected]:
     
    57065658    vm-browserify "^1.0.1"
    57075659
    5708 node-pre-gyp@*:
    5709   version "0.14.0"
    5710   resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83"
    5711   integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==
    5712   dependencies:
    5713     detect-libc "^1.0.2"
    5714     mkdirp "^0.5.1"
    5715     needle "^2.2.1"
    5716     nopt "^4.0.1"
    5717     npm-packlist "^1.1.6"
    5718     npmlog "^4.0.2"
    5719     rc "^1.2.7"
    5720     rimraf "^2.6.1"
    5721     semver "^5.3.0"
    5722     tar "^4.4.2"
    5723 
    57245660node-releases@^1.1.50:
    57255661  version "1.1.51"
     
    57595695    abbrev "1"
    57605696
    5761 nopt@^4.0.1:
    5762   version "4.0.3"
    5763   resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48"
    5764   integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==
    5765   dependencies:
    5766     abbrev "1"
    5767     osenv "^0.1.4"
    5768 
    57695697normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0:
    57705698  version "2.5.0"
     
    58185746    sort-keys "^2.0.0"
    58195747
    5820 npm-bundled@^1.0.1:
    5821   version "1.1.1"
    5822   resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b"
    5823   integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==
    5824   dependencies:
    5825     npm-normalize-package-bin "^1.0.1"
    5826 
    58275748npm-conf@^1.1.0:
    58285749  version "1.1.3"
     
    58335754    pify "^3.0.0"
    58345755
    5835 npm-normalize-package-bin@^1.0.1:
    5836   version "1.0.1"
    5837   resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2"
    5838   integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==
    5839 
    5840 npm-packlist@^1.1.6:
    5841   version "1.4.8"
    5842   resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e"
    5843   integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==
    5844   dependencies:
    5845     ignore-walk "^3.0.1"
    5846     npm-bundled "^1.0.1"
    5847     npm-normalize-package-bin "^1.0.1"
    5848 
    58495756npm-run-path@^2.0.0:
    58505757  version "2.0.2"
     
    58545761    path-key "^2.0.0"
    58555762
    5856 "npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2:
     5763"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0:
    58575764  version "4.1.2"
    58585765  resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
     
    60445951  integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
    60455952
    6046 osenv@0, osenv@^0.1.4:
     5953osenv@0:
    60475954  version "0.1.5"
    60485955  resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
     
    67916698    iconv-lite "0.4.24"
    67926699    unpipe "1.0.0"
    6793 
    6794 rc@^1.2.7:
    6795   version "1.2.8"
    6796   resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
    6797   integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
    6798   dependencies:
    6799     deep-extend "^0.6.0"
    6800     ini "~1.3.0"
    6801     minimist "^1.2.0"
    6802     strip-json-comments "~2.0.1"
    68036700
    68046701read-pkg-up@^1.0.1:
     
    71627059  integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
    71637060
    7164 rimraf@2, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3:
     7061rimraf@2, rimraf@^2.5.4, rimraf@^2.6.3:
    71657062  version "2.7.1"
    71667063  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
     
    72587155    semver "^6.3.0"
    72597156
    7260 sax@^1.2.4, sax@~1.2.4:
     7157sax@~1.2.4:
    72617158  version "1.2.4"
    72627159  resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
     
    79537850  dependencies:
    79547851    min-indent "^1.0.0"
    7955 
    7956 strip-json-comments@~2.0.1:
    7957   version "2.0.1"
    7958   resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
    7959   integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
    79607852
    79617853strip-outer@^1.0.0:
     
    82678159    inherits "2"
    82688160
    8269 tar@^4.4.2:
    8270   version "4.4.13"
    8271   resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525"
    8272   integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==
    8273   dependencies:
    8274     chownr "^1.1.1"
    8275     fs-minipass "^1.2.5"
    8276     minipass "^2.8.6"
    8277     minizlib "^1.2.1"
    8278     mkdirp "^0.5.0"
    8279     safe-buffer "^5.1.2"
    8280     yallist "^3.0.3"
    8281 
    82828161temp-dir@^1.0.0:
    82838162  version "1.0.0"
     
    90198898  integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
    90208899
    9021 yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3:
     8900yallist@^3.0.2:
    90228901  version "3.1.1"
    90238902  resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
  • wordless/trunk/wordless/wordless.php

    r2261320 r2385939  
    33require_once Wordless::join_paths(dirname(__FILE__), '../vendor/autoload.php');
    44require_once Wordless::join_paths(dirname(__FILE__), 'theme_builder.php');
     5require_once Wordless::join_paths(dirname(__FILE__), 'wordless_test_configurations.php');
    56require_once Wordless::join_paths(dirname(__FILE__), 'wp-cli-wordless', 'command.php');
    67
     
    3839            self::register_activation();
    3940        } else {
    40             trigger_error("Missing directories: theme is missing following directories: " . join(array_map('basename', $missing_directories), ", ") . ". Fix theme or deactivate wordless plugin", E_USER_WARNING);
    41         }
     41            $dirlist = join(array_map('basename', $missing_directories), ', ');
     42            $error_text = <<<"ERRORTEXT"
     43
     44Missing directories: theme is missing following directories: $dirlist.
     45You could try following actions:
     46
     47* ignore this WARNING if you're creating the starter theme
     48* `wp wordless theme create THEMENAME` if you have not created the starter theme yet
     49* manually fix the theme if you have deleted something and if you know what are you doing :)
     50* disable Wordless plugin if you activated it by error
     51
     52ERRORTEXT;
     53            trigger_error($error_text, E_USER_WARNING);
     54        }
     55
    4256        self::register_plugin_i18n();
    4357    }
  • wordless/trunk/wordless/wp-cli-wordless/command.php

    r2261320 r2385939  
    101101
    102102    /**
     103    * Update wp-config.php to support test suite and .gitlab-ci.yml for CI into project root.
     104    *
     105    * @return void
     106    */
     107    public function setup_test_suite() {
     108        $testConfigs = new WordlessTestConfigurations();
     109        $testConfigs->install();
     110
     111        WP_CLI::success('Test configuration installed');
     112
     113        // NOTE: We're not managing error cases
     114        return true;
     115    }
     116
     117    /**
    103118    * Return the list of files in theme's `tmp` directory
    104119    *
Note: See TracChangeset for help on using the changeset viewer.