The swiss army knife for Magento developers, sysadmins and devops. The tool provides a huge set of well tested command line commands which save hours of work time. All commands are extendable by a module API.

Overview

netz98 magerun CLI tools for Magento 2

The n98 magerun cli tools provides some handy tools to work with Magento from command line.

Gitter

Build Status

Latest Release Maintenance Badge Tests Quality Score Master Branch https://packagist.org/packages/n98/magerun2
Development Branch Tests Quality Score Develop Branch

Development is done in develop branch.

This software is only running with Magento 2.

If you use Magento 1 please use another stable version (https://github.com/netz98/n98-magerun).

Compatibility

The tools will automatically be tested for multiple PHP versions. It's currently running in various Linux distributions and Mac OS X. Microsoft Windows is not fully supported (some Commands like db:dump or install are excluded).

We support the following Magento Versions:

  • 2.4.x Open Source/Commerce
  • 2.3.x Open Source/Commerce

We support the following PHP Versions:

  • PHP 7.4
  • PHP 7.3
  • PHP 7.2

Installation

There are three ways to install the tools:

Download and Install Phar File

Download the latest stable N98-Magerun phar-file from the file-server:

wget https://files.magerun.net/n98-magerun2.phar

or if you prefer to use Curl:

curl -O https://files.magerun.net/n98-magerun2.phar

Verify the download by comparing the SHA256 checksum with the one on the website:

shasum -a256 n98-magerun2.phar

It is also possible to verify automatically:

curl -sS -O https://files.magerun.net/n98-magerun2-latest.phar
curl -sS -o n98-magerun2-latest.phar.sha256 https://files.magerun.net/sha256.php?file=n98-magerun2-latest.phar
shasum -a 256 -c n98-magerun2-latest.phar.sha256

If it shows the same checksum as on the website, you downloaded the file successfully.

Now you can make the phar-file executable:

chmod +x ./n98-magerun2.phar

The base-installation is now complete and you can verify it:

./n98-magerun2.phar --version

The command should execute successfully and show you the version number of N98-Magerun like:

n98-magerun2 version 3.2.0 by netz98 GmbH

You now have successfully installed Magerun! You can tailor the installation further like installing it system-wide and enable autocomplete - read on for more information about these and other features.

If you want to use the command system wide you can copy it to /usr/local/bin.

sudo cp ./n98-magerun2.phar /usr/local/bin/

Install with Composer

The installation via Composer is not recommended. Please use the phar file instead of the Composer version. We are not able to provide compatibility to all Magento versions anymore.

Update

There is a self-update command available. This works only for phar-distribution.

./n98-magerun2.phar self-update [--dry-run]

With --dry-run option it is possible to download and test the phar file without replacing the old one.

Autocompletion

Files for autocompletion with Magerun can be found inside the folder res/autocompletion, In the following some more information about a specific one (Bash), there are more (e.g. Fish, Zsh).

Bash

Bash completion is available pre-generated, all commands and their respective options are availble on tab. To get completion for an option type two dashes (--) and then tab.

To install the completion files, copy n98-magerun2.phar.bash to your bash compatdir folder for autocompletion.

On my Ubuntu system this can be done with the following command:

sudo cp res/autocompletion/bash/n98-magerun2.phar.bash /etc/bash_completion.d/

The concrete folder can be obtained via pkg-config:

pkg-config --variable=compatdir bash-completion

Detailed information is available in the bash-completions FAQ: https://github.com/scop/bash-completion#faq

Usage / Commands

NOTE There are more commands available as documented here. Please use the list command to see all.

All commands try to detect the current Magento root directory. If you have multiple Magento installations you must change your working directory to the preferred installation.

You can list all available commands by:

n98-magerun2.phar list

If you don't have the .phar file installed system wide you can call it with the PHP CLI interpreter:

php n98-magerun2.phar list

Global config parameters:

Parameter Description
--root-dir Force Magento root dir. No auto detection.
--skip-config Do not load any custom config.
--skip-root-check Do not check if n98-magerun2 runs as root.
--skip-core-commands Do not include Magento commands.
--skip-magento-compatibility-check Do not check Magento version compatibility.

Open Shop in Browser

n98-magerun2.phar open-browser [store]

Customer Info

Loads basic customer info by email address.

n98-magerun2.phar  customer:info [email] [website]

Create customer

Creates a new customer/user for shop frontend.

n98-magerun2.phar  customer:create [email] [password] [firstname] [lastname] [website]

Example:

n98-magerun2.phar customer:create [email protected] password123 John Doe base

You can add additional any number of custom fields, example:

n98-magerun2.phar customer:create [email protected] password123 John Doe base taxvat DE12345678

List Customers

List customers. The output is limited to 1000 (can be changed by overriding config). If search parameter is given the customers are filtered (searchs in firstname, lastname and email).

n98-magerun2.phar  customer:list [--format[="..."]] [search]

Change customer password

n98-magerun2.phar customer:change-password [email] [password] [website]
  • Website parameter must only be given if more than one websites are available.

Create Customer Token for Webapi

n98-magerun2.phar customer:token:create <email>

Magento Installer

  • Downloads Composer (if not already installed)
  • Downloads Magento 2.
  • Tries to create database if it does not exist.
  • Installs Magento sample data.
  • Starts Magento installer
  • Sets rewrite base in .htaccess file

Interactive installer:

n98-magerun2.phar install

Unattended installation:

n98-magerun2.phar install [--magentoVersion[="..."]] [--magentoVersionByName[="..."]] [--installationFolder[="..."]] [--dbHost[="..."]] [--dbUser[="..."]] [--dbPass[="..."]] [--dbName[="..."]] [--installSampleData[="..."]] [--useDefaultConfigParams[="..."]] [--baseUrl[="..."]] [--replaceHtaccessFile[="..."]]

Example of an unattended Magento CE 2.0.0.0 dev beta 1 installation:

n98-magerun2.phar install --dbHost="localhost" --dbUser="mydbuser" --dbPass="mysecret" --dbName="magentodb" --installSampleData=yes --useDefaultConfigParams=yes --magentoVersionByName="magento-ce-2.0.0.0-dev-beta1" --installationFolder="magento2" --baseUrl="http://magento2.localdomain/"

Additionally, with --noDownload option you can install Magento working copy already stored in --installationFolder on the given database.


Magento system info

Provides info like the edition and version or the configured cache backends.

n98-magerun2.phar sys:info

Magento Stores

Lists all store views.

n98-magerun2.phar sys:store:list [--format[="..."]]

Magento Websites

Lists all websites.

n98-magerun2.phar sys:website:list [--format[="..."]]

Create app/etc/env.php

Create env file interactively. If can also update existing files. To update a single value you can use the command config:env:set.

n98-magerun2.phar config:env:create

Set single value in env.php file

Set a single value in env.php by providing a key and an optional value. The command will save an empty string as default value if no value is set.

Sub-arrays in config.php can be specified by adding a "." character to every array.

n98-magerun2.phar config:env:set <key> [<value>]

Examples:

n98-magerun2.phar config:env:set backend.frontName mybackend
n98-magerun2.phar config:env:set crypt.key bb5b0075303a9bb8e3d210a971674367
n98-magerun2.phar config:env:set session.redis.host 192.168.1.1
n98-magerun2.phar config:env:set 'x-frame-options' '*'

Show env.php settings

n98-magerun2.phar config:env:show config:env:show [options] [<key>]

If no key is passed, the whole content of the file is displayed as table.

Examples:

n98-magerun2.phar config:env:show  # whole content
n98-magerun2.phar config:env:show backend.frontName
n98-magerun2.phar config:env:show --format=json
n98-magerun2.phar config:env:show --format=csv
n98-magerun2.phar config:env:show --format=xml

Set Store Config

n98-magerun2.phar config:store:set [--scope[="..."]] [--scope-id[="..."]] [--encrypt] path value

Arguments:

  • path - The config path value The config value

Options:

Option Description
--scope The config value's scope (default: default). Can be default, websites, stores)
--scope-id The config value's scope ID (default: 0)
--encrypt Encrypt the config value using crypt key

Get Store Config

n98-magerun2.phar config:store:get [--scope="..."] [--scope-id="..."] [--decrypt] [--format[="..."]] [path]

Arguments:

  • path - The config path

Options:

Option Description
--scope The config value's scope (default, websites, stores)
--scope-id The config value's scope ID
--decrypt Decrypt the config value using crypt key defined in env.php
--update-script Output as update script lines
--magerun-script Output for usage with config:store:set
--format Output as json, xml or csv

Help:

If path is not set, all available config items will be listed. path may contain wildcards (*)

Example:

n98-magerun2.phar config:store:get web/* --magerun-script

Delete Store Config

n98-magerun2.phar config:store:delete [--scope[="..."]] [--scope-id[="..."]] [--all] path

Arguments:

  • path - The config path

Options:

Option Description
--scope The config value's scope (default, websites, stores)
--scope-id The config value's scope ID
--all Delete all entries by path

Display ACL Tree

n98-magerun2.phar config:data:acl

Help:

Prints acl.xml data as table

Print Dependency Injection Config Data

n98-magerun2.phar config:data:di <type>

Arguments:

  • type - Type (class)

Options:

Option Description
--scope -s Config scope (global, adminhtml, frontend, webapi_rest, webapi_soap, ...) (default: global)

List Magento cache status

n98-magerun2.phar cache:list

Clean Magento cache

Cleans expired cache entries.

If you would like to clean only one cache type:

n98-magerun2.phar cache:clean [code]

If you would like to clean multiple cache types at once:

n98-magerun2.phar cache:clean [code] [code] ...

If you would like to remove all cache entries use cache:flush

Run cache:list command to see all codes.

Remove all cache entries

n98-magerun2.phar cache:flush [code]

Keep in mind that cache:flush cleares the cache backend, so other cache types in the same backend will be cleared as well.

List Magento caches

n98-magerun2.phar cache:list [--format[="..."]]

Disable Magento cache

n98-magerun2.phar cache:disable [code]

If no code is specified, all cache types will be disabled. Run cache:list command to see all codes.

Enable Magento cache

n98-magerun2.phar cache:enable [code]

If no code is specified, all cache types will be enabled. Run cache:list command to see all codes.

List admin users

n98-magerun2.phar admin:user:list [--format[="..."]]

Change admin user password

n98-magerun2.phar admin:user:change-password [username] [password]

Delete admin user

n98-magerun2.phar admin:user:delete [email|username] [-f]

ID can be e-mail or username. The command will attempt to find the user by username first and if it cannot be found it will attempt to find the user by e-mail. If ID is omitted you will be prompted for it. If the force parameter -f is omitted you will be prompted for confirmation.

Create Admin Token for Webapi

n98-magerun2.phar admin:token:create <username>

Run a raw DB query

n98-magerun2.phar db:query <sql-query>

Example:

n98-magerun2.phar db:query "select * from store"

Open MySQL Console

n98-magerun2.phar db:console [options]

Options:

Option Description
--use-mycli-instead-of-mysql Use mycli as the MySQL client instead of mysql
--no-auto-rehash Same as -A option to MySQL client to turn off auto-complete (avoids long initial connection time).
--connection=CONNECTION Select DB connection type for Magento configurations with several databases (default: default)

Dump database

Dumps configured Magento database with mysqldump.

  • Requires MySQL CLI tools

Arguments

  • filename - Dump filename

Options

Option Description
--add-routines Include stored routines in dump (procedures & functions).
--add-time Adds time to filename (only if filename was provided)
--compression -c Compress the dump file using one of the supported algorithms
--dry-run Do everything but the actual dump. Useful to test.
--exclude Tables to exclude entirely from the dump (including structure)
--force -f Do not prompt if all options are defined
--git-friendly Use one insert statement, but with line breaks instead of separate insert statements.
--human-readable Use a single insert with column names per row.
--include Tables to include entirely to the dump (default: all tables are included)
--keep-column-statistics Retains column statistics table in mysqldump
--no-single-transaction Do not use single-transaction (not recommended, this is blocking)
--no-tablespaces Use this option if you want to create a dump without having the PROCESS privilege.
--only-command Print only mysqldump command. Does not execute.
--print-only-filename Execute and prints not output except the dump filename
--set-gtid-purged-off' Adds --set-gtid-purged=OFF to mysqlqump
--stdout Dump to stdout
--strip Tables to strip (dump only structure of those tables)
n98-magerun2.phar db:dump

Only the mysqldump command:

n98-magerun2.phar db:dump --only-command [filename]

Or directly to stdout:

n98-magerun2.phar db:dump --stdout

Use compression (gzip cli tool has to be installed):

n98-magerun2.phar db:dump --compression="gzip"

Stripped Database Dump

Dumps your database and excludes some tables. This is useful for development or staging environments where you may want to provision a restricted database.

Separate each table to strip by a space. You can use wildcards like * and ? in the table names to strip multiple tables. In addition you can specify pre-defined table groups, that start with an @
Example: dataflow_batch_export unimportant_module_* @log

n98-magerun2.phar db:dump --strip="@stripped"

Available Table Groups:

Table Group Description
@2fa 2FA tables. These tables are used for storing 2FA information for admin users.
@admin Admin users, roles, sessions, etc.
@aggregated Aggregated tables used for generating reports, etc.
@dotmailer Dotmailer data(email_abandoned_cart email_automation email_campaign email_contact).
@customers Customer data (and company data from the B2B extension).
@development Removes logs, sessions, trade data and admin users so developers do not have to work with real customer data or admin user accounts.
@dotmailer Dotmailer module tables
@ee_changelog Changelog tables of new indexer since EE 1.13
@idx Tables with _idx suffix and index event tables.
@klarna Klarna tables containing information about klarna payments and their quotes/orders.
@log Log tables.
@mailchimp Mailchimp tables.
@newrelic_reporting New Relic reporting tables. These tables provide production metric data for New Relic.
@oauth OAuth sessions, tokens, etc.
@quotes Cart (quote) data and B2B quotes.
@replica Replica tables, these are generated from Magento Staging functionality.
@sales Sales data (orders, invoices, creditmemos etc).
@search Search related tables (catalogsearch_).
@sessions Database session tables.
@stripped Standard definition for a stripped dump (logs and sessions).
@trade Current trade data (customers, orders and quotes). You usually do not want those in developer systems.
@temp Indexer __temp tables.

Import database

  • Requires MySQL CLI tools

Arguments

  • filename - Dump filename

Options

Option Description
--connection=CONNECTION Select DB connection type for Magento configurations with several databases
-c, --compression=COMPRESSION The compression of the specified file
--drop Drop and recreate database before import
--drop-tables Drop tables before import
--force Continue even if an SQL error occurs
--only-command Print only mysql command. Do not execute
--only-if-empty Imports only if database is empty
--optimize Convert verbose INSERTs to short ones before import (not working with compression)
--skip-authorization-entry-creation Add default entry to authorization_role and authorization_rule tables.
n98-magerun2.phar db:import

Fix empty authorization tables

If you run db:dump with stripped option and @admin group, the authorization_rule and authorization_role tables are empty. This blocks the creation of admin users.

You can re-create the default entries by running the command:

n98-magerun2.phar db:add-default-authorization-entries

If you are using the db:import command to import the stripped SQL dump, then this command will be implicitly called.

Clear static view files

n98-magerun2.phar dev:asset:clear [--theme="..."]

Options

Option Description
--theme The specific theme(s) to clear

To clear assets for all themes:

n98-magerun2.phar dev:asset:clear

To clear assets for specific theme(s) only:

n98-magerun2.phar dev:asset:clear --theme=Magento/luma

List Themes

n98-magerun2.phar dev:theme:list

Create Module Skeleton

Creates an empty module and registers it in current Magento shop.

n98-magerun2.phar dev:module:create [-m|--minimal] [--add-blocks] [--add-helpers] [--add-models] [--add-setup] [--add-all] [-e|--enable] [--modman] [--add-readme] [--add-composer] [--add-strict-types] [--author-name [AUTHOR-NAME]] [--author-email [AUTHOR-EMAIL]] [--description [DESCRIPTION]] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [--root-dir [ROOT-DIR]] [--skip-config] [--skip-root-check] [--skip-core-commands [SKIP-CORE-COMMANDS]] [--skip-magento-compatibility-check] [--] <command> <vendorNamespace> <moduleName>

List modules

n98-magerun2.phar dev:module:list [--vendor=VENDOR]

List Observers

n98-magerun2.phar dev:module:observer:list [--sort] <event> [<area>

EAV Attributes

View the data for a particular attribute:

n98-magerun2.phar eav:attribute:view [--format[="..."]] entityType attributeCode

Generate Gift Card Pool

Generates a new gift card pool.

n98-magerun2.phar giftcard:pool:generate

Create a Gift Card

n98-magerun2.phar giftcard:create [--website[="..."]] [--expires[="..."]] [amount]

You may specify a website ID or use the default. You may also optionally add an expiration date to the gift card using the --expires option. Dates should be in YYYY-MM-DD format.

View Gift Card Information

n98-magerun2.phar giftcard:info [--format[="..."]] [code]

Remove a Gift Card

n98-magerun2.phar giftcard:remove [code]

Compare Setup Versions

Compares module version with saved setup version in setup_module table and displays version mismatchs if found.

n98-magerun2.phar sys:setup:compare-versions [--ignore-data] [--log-junit="..."] [--format[="..."]]
  • If a filename with --log-junit option is set the tool generates an XML file and no output to stdout.

Change Setup Version

Changes the version of a module. This command is useful if you want to re-run an upgrade script again possibly for debugging. Alternatively you would have to alter the row in the database manually.

n98-magerun2.phar sys:setup:change-version module version

Downgrade Setup Versions

Downgrade the versions in the database to the module version from its xml file if necessary. Useful while developing and switching branches between module version changes.

n98-magerun2.phar sys:setup:downgrade-versions

Dump Media folder

Creates a ZIP archive with media folder content.

n98-magerun2.phar media:dump [--strip] [filename]

Integrations (Webapi Access Tokens)

There are four commands to create, show, list, delete integrations (access tokens). This commands are very useful for developers.

List all existing integrations

n98-magerun2.phar integration:list

Create a new integration

n98-magerun2.phar integration:create [options] [--] <name> <email> <endpoint>

Options

Option Description
--consumer-key=CONSUMER-KEY Consumer Key (length 32 chars)
--consumer-secret=CONSUMER-SECRET Consumer Secret (length 32 chars)
--access-token=ACCESS-TOKEN Access-Token (length 32 chars)
--access-token-secret=ACCESS-TOKEN-SECRET Access-Token Secret (length 32 chars)
--resource=RESOURCE -r Defines a granted ACL resource (multiple values allowed)

If no ACL resource is defined the new integration token will be created with FULL ACCESS.

If you do not want that, please provide a list of ACL resources by using the --resource option.

Example:

n98-magerun2.phar integration:create "My new integration 10" [email protected] https://example.com -r Magento_Catalog::catalog_inventory -r Magento_Backend::system_other_settings

To see all available ACL resources, please run the command config:data:acl.

Show infos about existing integration

n98-magerun2.phar integration:show <name_or_id>

Delete integration

n98-magerun2.phar integration:delete <name_or_id>

Interactive Development Console

Opens PHP interactive shell with initialized Magento Admin-Store.

n98-magerun2.phar dev:console [--area=AREA] <arg>

Optional an area code can be defined. If provided, the configuration (di.xml, translations) of the area are loaded.

Possible area codes are:

  • adminhtml
  • crontab
  • frontend
  • graphql
  • webapi_xml
  • webapi_rest

Variable $di is made available with a Magento\Framework\ObjectManagerInterface instance to allow creation of object instances.

The interactive console works as REPL. It's possible to enter any PHP code. The code will be executed immediately. The interactive console also comes with a lot of embedded scommands.

It's possible to add initial commands to the interactive console. Commands should be delimited by a semicolon. You can mix PHP-Code with embedded interactive console commands.

Example:

n98-magerun2.phar dev:console "$a = 1; call cache:flush; ls;"

The interactive console comes with a extendable code generator tool to create i.e. modules, cli commands, controllers, blocks, helpers etc.

The console can be in a module context which allows you to generate code for a selected module.

The basic idea of the stateful console was developed by Jacques Bodin-Hullin in this great tool Installer.

n98-magerun Shell

If you need autocompletion for all n98-magerun commands you can start with shell command.

n98-magerun2.phar shell

n98-magerun Script

Run multiple commands from a script file.

n98-magerun2.phar script [-d|--define[="..."]] [--stop-on-error] [filename]

Example:

# Set multiple config
config:store:set "web/cookie/cookie_domain" example.com

# Set with multiline values with `\n`
config:store:set "general/store_information/address" "First line\nSecond line\nThird line"

# This is a comment
cache:flush

Optionally you can work with unix pipes.

echo "cache:flush" | n98-magerun2.phar script
n98-magerun2.phar script < filename

It is even possible to create executable scripts:

Create file test.magerun and make it executable chmod +x test.magerun:

#!/usr/bin/env n98-magerun2.phar script

config:store:set "web/cookie/cookie_domain" example.com
cache:flush

# Run a shell script with "!" as first char
! ls -l

# Register your own variable (only key = value currently supported)
${my.var}=bar

# Let magerun ask for variable value - add a question mark
${my.var}=?

! echo ${my.var}

# Use resolved variables from n98-magerun in shell commands
! ls -l ${magento.root}/code/local

Pre-defined variables:

Variable Description
${magento.root} Magento Root-Folder
${magento.version} Magento Version i.e. 2.0.0.0
${magento.edition} Magento Edition -> Community or Enterprise
${magerun.version} Magerun version i.e. 2.1.0
${php.version} PHP Version
${script.file} Current script file path
${script.dir} Current script file dir

Variables can be passed to a script with "--define (-d)" option.

Example:

n98-magerun2.phar script -d foo=bar filename

# This will register the variable ${foo} with value bar.

It's possible to define multiple values by passing more than one option.

Toggle CMS Block status

Toggles the status for a CMS block based on the given Block identifier.

n98-magerun2.phar cms:block:toggle [blockId]

Change Admin user status

Changes the admin user based on the options, the command will toggle the status if no options are supplied.

n98-magerun2.phar admin:user:change-status [user] [--activate] [--deactivate]

Note: It is possible for a user to exist with a username that matches the email of a different user. In this case the first matched user will be changed.

Comments
  • Simple Version update for Magento 2.2

    Simple Version update for Magento 2.2

    Do not degrade Symfony YAML component when installing Magerun 2 w/ latest Magento 2.2 via Composer.

    There is an incompatibility with the YAML format when Symfony YAML 3.x is used ("@" use in non-quoted scalars - e.g. for table-groups in Magerun config files, since ca. 2005 per YAML specs). As the Magerun project didn't communicate this non-standard use of the reserved notation earlier, Magerun users who write their own table-groups need to be made aware of this.

    • [ ] Blog-post on magerun.net about the issue
    • [ ] Add composer installations of the source version of Magerun (1+2) into the Travis build
    • [ ] Update version constraints w/ a Magerun version that shows a backwards incompatible change.
    opened by atlan 28
  • Incompatibility with Magento 2.3.0-alpha

    Incompatibility with Magento 2.3.0-alpha

    As a headsup when running against the Magento 2 root dir with 2.3.0-alpha installed the following error comes up:

    ~$ ./n98-magerun2.phar --root-dir=/var/www
    PHP Fatal error:  Uncaught Error: Call to undefined method N98\Magento\Application\Console\Event::setDispatcher() in phar:///home/jenkins/n98-magerun2.phar/vendor/symfony/event-dispatcher/EventDispatcher.php:42
    Stack trace:
    #0 phar:///home/jenkins/n98-magerun2.phar/src/N98/Magento/Application.php(525): Symfony\Component\EventDispatcher\EventDispatcher->dispatch('n98-magerun.app...', Object(N98\Magento\Application\Console\Event))
    #1 phar:///home/jenkins/n98-magerun2.phar/vendor/symfony/console/Application.php(117): N98\Magento\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
    #2 phar:///home/jenkins/n98-magerun2.phar/src/N98/Magento/Application.php(576): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
    #3 /home/jenkins/n98-magerun2.phar(8): N98\Magento\Application->run()
    #4 {main}
      thrown in phar:///home/jenkins/n98-magerun2.phar/vendor/symfony/event-dispatcher/EventDispatcher.php on line 42
    

    Magerun2 2.1.2 itself is working outside that directory:

    ~$ ./n98-magerun2.phar --version
    n98-magerun2 version 2.1.2 by netz98 GmbH
    

    The following symfony packages got installed

    symfony/config               v4.1.0-BETA2 Symfony Config Component
    symfony/console              v4.0.10      Symfony Console Component
    symfony/dependency-injection v4.1.0-BETA2 Symfony DependencyInjection Component
    symfony/event-dispatcher     v4.0.10      Symfony EventDispatcher Component
    symfony/filesystem           v4.1.0-BETA2 Symfony Filesystem Component
    symfony/finder               v4.1.0-BETA2 Symfony Finder Component
    symfony/options-resolver     v4.1.0-BETA2 Symfony OptionsResolver Component
    symfony/polyfill-ctype       v1.8.0       Symfony polyfill for ctype functions
    symfony/polyfill-mbstring    v1.8.0       Symfony polyfill for the Mbstring extension
    symfony/polyfill-php70       v1.8.0       Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions
    symfony/polyfill-php72       v1.8.0       Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions
    symfony/process              v4.0.10      Symfony Process Component
    symfony/stopwatch            v4.1.0-BETA2 Symfony Stopwatch Component
    
    bug 
    opened by fooman 24
  • admin:user:create not working on dump --strip @development

    admin:user:create not working on dump --strip @development

    1. I create a dump with --strip @development @idx
    2. Import that dump
    3. Run $ n98-magerun2 admin:user:create --admin-user=dev_admin --admin-password=dev123456 [email protected] --admin-firstname=DEV --admin-lastname=dev123456

    Error:

      [Exception]                                                     
      No Administrators role was found, data fixture needs to be run  
    

    I assume that the admin role itself is stripped away, did anybody experience the same?

    bug 
    opened by amenk 24
  • Sending email with cronjob throws exception

    Sending email with cronjob throws exception

    I'm trying to send email with cronjob to list from adminhtml area, throws error:

    Required parameter 'theme_dir' was not passed

    email sending works with magento cron:run command.

    bug question 
    opened by kandrejevs 21
  • Provides more config values for install command

    Provides more config values for install command

    Changes proposed in this pull request:

    • Adds DB default settings in the installation config (host, port, user and db name). It's possible to use the %s placeholder in DB name config setting that will be replaced with the installation folder base name.
    • Adds default base URL setting in the installation config and like the DB name it's possible to use the %s placeholder that will be replaced with the installation folder base name.
    • Adds the boolean sample data setting in the installation config to specify whether to install sample data or not by default.

    With these changes it's possible to run an unattended installation with:

    n98-magerun2.phar install -n --magentoVersionByName="magento-ce-2.2.0" --installationFolder="myproject"
    

    Or with:

    n98-magerun2.phar install -n --noDownload --installationFolder="myproject"
    

    if the myproject contains a Magento version already downloaded.

    In such examples the http://myproject.dev/ base URL and myproject database name will be used along other default settings.

    enhancement 
    opened by mmenozzi 18
  • Command install: parameter --replaceHtaccessFile=no doesn't work

    Command install: parameter --replaceHtaccessFile=no doesn't work

    When trying to automatically answer the question

    Write BaseURL to .htaccess file? [n]
    

    with "no" by passing --replaceHtaccessFile=no, I'm still asked.

    I assume this happens because in https://github.com/netz98/n98-magerun2/blob/3523cb80728ba87c5e87ae75af24e54e76ba2e94/src/N98/Magento/Command/Installer/SubCommand/RewriteHtaccessFile.php#L24 the question will only be skipped if I specify a value that converts to true.

    By the way, after checking the code I assume that this also happens in n98-magerun (https://github.com/netz98/n98-magerun/blob/0c8d1b9b630f2b93a00da77ad5e43fd2f56bdb90/src/N98/Magento/Command/Installer/InstallCommand.php#L863) but I didn't try it there.

    opened by mzeis 18
  • How do I include my own Magento repo to download Magento Commerce version?

    How do I include my own Magento repo to download Magento Commerce version?

    Hi, can someone enlighten me on how to make Magerun2 use my auth.json file located at ~/composer/auth.json on my mac? This file contains my Magento repo credentials as used by Composer.

    I'm trying to get Magerun2 to automate the installation of Magento Commerce version, but it won't show up in the list when firing magerun2 install. I'm only able to see CE versions in there.

    Please advise

    question support 
    opened by maurisource 17
  • Can't run db:import without having valid db

    Can't run db:import without having valid db

    If you run on db:import on a magento installation with a missing database then it throws SQLSTATE[42S02]: Base table or view not found: 1146 Table 'magento_full.xxx_store_website' doesn't exist, query was: SELECT 'xxx_store_website'.* FROM 'xxx_store_website'. Which is the same error magento gives. I guess it's not unreasonable as this is a wrapper for bin\magento.

    This is inconvenient as I'd like to use db:import to setup the database on a blank staging server, but it won't work until the database is setup. I'll add I've not checked if this command relies on bin/magento for anything.

    bug support needs investigation 
    opened by lingwooc 15
  • n98-magerun2.phar admin:user:change-password throws an error

    n98-magerun2.phar admin:user:change-password throws an error

    Hello n98-magerun2-Team,

    We have found a bug with the latest enterprise-edition:

    n98-magerun2.phar admin:user:change-password
    Username:<username>
    Password:<password>
    Circular dependency: Magento\Backend\Model\Auth\Session depends on Magento\Backend\Model\Authorization\RoleLocator and vice versa.
    

    Our System:

    
    +------------------+----------------------------------+
    | name             | value                            |
    +------------------+----------------------------------+
    | Name             | Magento                          |
    | Version          | 2.1.2                            |
    | Edition          | Enterprise                       |
    | Application Mode | developer                        |
    | Session          | files                            |
    | Crypt Key        | <crypt key> |
    | Install Date     | Mon, 21 Nov 2016 14:54:12 +0000  |
    | Cache Backend    | Cm_Cache_Backend_File            |
    | Vendors          | Magento                          |
    | Attribute Count  | 176                              |
    | Customer Count   | 0                                |
    | Category Count   | 2                                |
    | Product Count    | 0                                |
    +------------------+----------------------------------+
    
    

    Note: Its vanilla Magento, no customisations were made

    Greetings, Elias

    question support 
    opened by EliasKotlyar 15
  • db:dump produces COLUMN_STATISTICS error

    db:dump produces COLUMN_STATISTICS error

    It is supposedly an error with mysqldump 8+ where a flag is enabled by default.

    Searching this error online, it states that mysqldump should be ran with the flag --column-statistics=0.

    Could this be added to the db:dump command? Or is there an existing workaround for this?

    opened by callum-atwal 14
  • sampledata:deploy returns composer error, bin/magento works (Composer 1)

    sampledata:deploy returns composer error, bin/magento works (Composer 1)

    Describe the bug

    n98-magerun2 version: 4.6.1 Magento version: 2.4.2-p1 Composer version 1.10.22 2021-04-27 13:10:45

    n98-magerun2 sampledata:deploy doen not work while bin/magento sampledata:deploy does work.

    Expected behaviour

    Deploy sample data.

    Steps to reproduce the issue

    ~/magento2$ n98-magerun2  sampledata:deploy
    
    Fatal error: Uncaught Error: Call to undefined method Composer\Composer::setLoop() in phar:///usr/local/bin/n98-magerun2.phar/vendor/composer/composer/src/Composer/Factory.php:357
    Stack trace:
    #0 phar:///usr/local/bin/n98-magerun2.phar/vendor/composer/composer/src/Composer/Factory.php(604): Composer\Factory->createComposer(Object(Composer\IO\BufferIO), Array, false)
    #1 /home/jeroenvm/magento2/vendor/magento/framework/Composer/ComposerFactory.php(47): Composer\Factory::create(Object(Composer\IO\BufferIO), '/home/jeroenvm/...')
    #2 /home/jeroenvm/magento2/vendor/magento/framework/Composer/ComposerInformation.php(368): Magento\Framework\Composer\ComposerFactory->create()
    #3 /home/jeroenvm/magento2/vendor/magento/framework/Composer/ComposerInformation.php(381): Magento\Framework\Composer\ComposerInformation->getComposer()
    #4 /home/jeroenvm/magento2/vendor/magento/framework/Composer/ComposerInformation.php(176): Magento\Framework\Composer\ComposerInformation->getLocker()
    #5 /home/jeroenvm/magento2/vendor/magento/module-sample-d in phar:///usr/local/bin/n98-magerun2.phar/vendor/composer/composer/src/Composer/Factory.php on line 357
    
    ~/magento2$ bin/magento sampledata:deploy
    <warning>Warning from https://repo.packagist.org: Support for Composer 1 is deprecated and some packages will not be available. You should upgrade to Composer 2. See https://blog.packagist.com/deprecating-composer-1-support/</warning>
    ./composer.json has been updated
    Loading composer repositories with package information
    <warning>Warning from https://repo.packagist.org: Support for Composer 1 is deprecated and some packages will not be available. You should upgrade to Composer 2. See https://blog.packagist.com/deprecating-composer-1-support/</warning>
    Updating dependencies (including require-dev)
    Nothing to install or update
    <warning>Package container-interop/container-interop is abandoned, you should avoid using it. Use psr/container instead.</warning>
    <warning>Package laminas/laminas-console is abandoned, you should avoid using it. Use laminas/laminas-cli instead.</warning>
    <warning>Package phpunit/php-token-stream is abandoned, you should avoid using it. No replacement was suggested.</warning>
    <warning>Package sebastian/finder-facade is abandoned, you should avoid using it. No replacement was suggested.</warning>
    Generating autoload files
    96 packages you are using are looking for funding.
    Use the `composer fund` command to find out more!
    PHP CodeSniffer Config installed_paths set to ../../magento/magento-coding-standard,../../phpcompatibility/php-compatibility
    

    Technical details

    • Host Machine OS (Windows/Linux/Mac): Ubuntu 20.04.2 LTS Linux [hostname] 5.8.0-55-generic # 62~20.04.1-Ubuntu SMP Wed Jun 2 08:55:04 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

    Possible Fix

    Because of backwards compatibility our servers are using Composer 1 by default. Developers can use Composer 2.x by calling composer2. If that is the cause of this problem and there is no easy way to solve it, N98 could warn the user to switch to Composer 2.

    Additional context

    bug 
    opened by jeroenvermeulen 13
  • add option to drop views during DropCommand

    add option to drop views during DropCommand

    Magerun pull-request check-list:

    • [x] Pull request against develop branch (if not, just close and create a new one against it)
    • [ ] README.md reflects changes (if any)
    • [ ] phar fuctional test (in tests/phar-test.sh)

    Summary: (some words as summary)

    Fixes #602.

    Changes proposed in this pull request:

    • ...

    • ...

    • ...

    opened by torhoehn 2
  • dev:console Code Generator

    dev:console Code Generator

    Describe the bug

    Create a new module in dev:console

    ReflectionException with message 'Class "Zend\Filter\Word\SeparatorToSeparator" does not exist'

    Expected behaviour

    Code should be generated.

    bug 
    opened by cmuench 0
  • cron list / cron run

    cron list / cron run

    I frequently see this when calling up a cron list or trying to run a specific cron job

    PHP Fatal error: Uncaught TypeError: Argument 1 passed to N98\Magento\Command\System\Cron\AbstractCronCommand::getSchedule() must be of the type array, bool given, called in phar:///var/www/vhosts/m2-proam.magedemo.co.uk/httpdocs/n98-magerun2.phar/src/N98/Magento/Command/System/Cron/AbstractCronCommand.php on line 106 and defined in phar:///var/www/vhosts/m2-proam.magedemo.co.uk/httpdocs/n98-magerun2.phar/src/N98/Magento/Command/System/Cron/AbstractCronCommand.php:141

    Anyone know what it refers to?

    n98-magerun2 5.2.0 PHP 7.4.30 Magento CLI 2.4.3

    opened by Dx3webs 9
  • config:get show default config.xml value

    config:get show default config.xml value

    Current Implementation

    The current config:get doesn't show the default value from the config.xml if it's not in the database.

    Suggested Enhancement

    Check the default value in case there's no value found via DB. https://github.com/netz98/n98-magerun2/blob/develop/src/N98/Magento/Command/Config/Store/GetCommand.php#L128

    This alias function does this:

    function m2-config-get () {
      bin/mageru2 dev:con "\$di->create(\Magento\Framework\App\Config\ScopeConfigInterface::class)->getValue('$1');exit" | grep '=>'
    }
    

    Expected Benefits

    image

    enhancement 
    opened by rafaelstz 0
  • db:dump - Limit product export

    db:dump - Limit product export

    Feature description

    It would be nice if there would be an option to limit the products on export.

    Problem and motivation

    If you have a lot of products and stores it's a pain to update the whole db. It most cases you only need a few products to successfully work in local development.

    Or is there already on option and I missed it!?

    Maybe something like this:

    n98-magerun2 db:dump --strip="@development" --limit="@catalog_product:1000 custom_tables_*:1000 custom_table:1000"

    enhancement 
    opened by mvenghaus 4
  • Use symfony process helper

    Use symfony process helper

    Current Implementation

    Currently we have own logic in our util section to execute processes. We should evaluate if it's better to use the build in symfony process helper.

    https://symfony.com/doc/4.4/components/console/helpers/processhelper.html

    Expected Benefits

    Reduce anount of maintained code.

    enhancement 
    opened by cmuench 2
Releases(5.2.0)
  • 5.2.0(Aug 7, 2022)

    • Add: #987: more dev:console debug helper functions (by Christian Münch)
    • Add: #1000: additional phar tests (by Christian Münch)
    • Imp: #957: Exclude system_config_snapshot from stripped dumps (by Alexander Menk)
    • Imp: #1007: Upgrade compatibility list for PHP versions (by Lukasz Bajsarowicz)
    • Imp: #1008: Allow use of pipefail where supported (by Dan Wallis)
    • Imp: Change mage-os repo url and disable unstable dev build job (by Christian Münch)
    • Imp: Changed installation workflow starting with composer 2.3.7 (by Christian Münch)
    • Imp: Update 3rd party dependencies (Symfony, psysh, vfsstream, captainhook, requests lib, faker lib, phpunit, twig)
    • Fix: #993: Try to drop only existing databases (by Christian Münch)
    • Fix: #996: Customer Debug Functions in Dev Console Dev Helper (by Alexander Menk)
    • Fix: #998: Pass empty string as default value to getFileName (by Peter Jaap)
    • Fix: #1015: deprecated: passing null to dirname (by Alexander Menk).
    • Fix: #1019: type error in cache-list command on php 8.1 (by Tom Klingenberg)
    • Fix: #1024: config:store:get wrong filters applied (by Alexander Dite)
    Source code(tar.gz)
    Source code(zip)
  • 5.1.0(May 6, 2022)

    • Add: New table renderer yaml/json_array
    • Add: Print integration:show command data as table or only a single value (by Christian Münch)
    • Imp: #976: Exclude sequence table data when associated entities are excluded (by Dan Wallis)
    • Imp: #979: Dynamically change application name in phar (by Christian Münch)
    • Imp: Update 3rd party dependencies (symfony/finder, psysh)
    • Imp: Github Actions (Artifact for PRs and dependabot for actions)
    • Fix: #984: integration show command (by Christian Münch)
    • Fix: #979 Replace strftime function calls (by Artur Jewuła)
    • Fix: #977: Prevent Deprecated Functionality under PHP 8.1 (by Jisse Reitsma)
    • Fix: #980: Fix scope-id condition (by Christian Münch)
    • Fix: #981: Add error handler for possible warnings of autoloader (by Christian Münch)
    Source code(tar.gz)
    Source code(zip)
  • 5.0.2(Apr 20, 2022)

  • 5.0.1(Apr 15, 2022)

    What's Changed

    • Hotfix/replace guzzle by @cmuench in https://github.com/netz98/n98-magerun2/pull/965

    Full Changelog: https://github.com/netz98/n98-magerun2/compare/5.0.0...5.0.1

    Source code(tar.gz)
    Source code(zip)
  • 5.0.0(Apr 15, 2022)

    What's Changed

    • Bump phpunit/phpunit from 9.5.10 to 9.5.11 by @dependabot in https://github.com/netz98/n98-magerun2/pull/908
    • Replace Composer dependency for downloads with Guzzle by @cmuench in https://github.com/netz98/n98-magerun2/pull/906
    • Bump symfony/yaml from 5.3.11 to 5.3.13 by @dependabot in https://github.com/netz98/n98-magerun2/pull/915
    • Bump symfony/finder from 5.4.0 to 5.4.2 by @dependabot in https://github.com/netz98/n98-magerun2/pull/911
    • Bump seld/phar-utils from 1.0.2 to 1.2.0 by @dependabot in https://github.com/netz98/n98-magerun2/pull/916
    • Feature/ddev local setup by @cmuench in https://github.com/netz98/n98-magerun2/pull/917
    • Replace phar build process by @cmuench in https://github.com/netz98/n98-magerun2/pull/918
    • Bump twig/twig from 3.3.4 to 3.3.6 by @dependabot in https://github.com/netz98/n98-magerun2/pull/919
    • Bump psy/psysh from 0.11.0 to 0.11.1 by @dependabot in https://github.com/netz98/n98-magerun2/pull/920
    • Bump captainhook/captainhook from 5.10.5 to 5.10.6 by @dependabot in https://github.com/netz98/n98-magerun2/pull/921
    • Add new phar tests for Magerun commands by @cmuench in https://github.com/netz98/n98-magerun2/pull/922
    • Remove Composer download methods in abstract command by @cmuench in https://github.com/netz98/n98-magerun2/pull/923
    • Port dev:translate commands by @cmuench in https://github.com/netz98/n98-magerun2/pull/924
    • PHP 8.1 Compatibility by @cmuench in https://github.com/netz98/n98-magerun2/pull/927
    • Replace dependency "adbario/php-dot-notation" with "dflydev/dot-access-data" by @cmuench in https://github.com/netz98/n98-magerun2/pull/928
    • [Feature] #56: add customer:delete command by @mautz-et-tong in https://github.com/netz98/n98-magerun2/pull/925
    • Bump phpunit/phpunit from 9.5.11 to 9.5.12 by @dependabot in https://github.com/netz98/n98-magerun2/pull/931
    • Bump phpunit/phpunit from 9.5.12 to 9.5.13 by @dependabot in https://github.com/netz98/n98-magerun2/pull/933
    • Bump fakerphp/faker from 1.17.0 to 1.18.0 by @dependabot in https://github.com/netz98/n98-magerun2/pull/932
    • Bump symfony/finder from 5.4.2 to 5.4.3 by @dependabot in https://github.com/netz98/n98-magerun2/pull/939
    • Bump symfony/event-dispatcher from 4.4.34 to 4.4.37 by @dependabot in https://github.com/netz98/n98-magerun2/pull/938
    • Bump symfony/yaml from 5.3.13 to 5.3.14 by @dependabot in https://github.com/netz98/n98-magerun2/pull/936
    • Allow for xdebug ^3.0 - check if xdebug_is_enabled function exists by @lsv in https://github.com/netz98/n98-magerun2/pull/935
    • Fix php8.1 deprecations -> strlen checks by @cmuench in https://github.com/netz98/n98-magerun2/pull/940
    • Bump fakerphp/faker from 1.18.0 to 1.19.0 by @dependabot in https://github.com/netz98/n98-magerun2/pull/941
    • Bump twig/twig from 3.3.7 to 3.3.8 by @dependabot in https://github.com/netz98/n98-magerun2/pull/942
    • Bump pbergman/tree-helper from 1.0.1 to 1.0.2 by @dependabot in https://github.com/netz98/n98-magerun2/pull/943
    • Bump phpunit/phpunit from 9.5.13 to 9.5.14 by @dependabot in https://github.com/netz98/n98-magerun2/pull/945
    • Bump captainhook/captainhook from 5.10.6 to 5.10.7 by @dependabot in https://github.com/netz98/n98-magerun2/pull/946
    • Bump phpunit/phpunit from 9.5.14 to 9.5.16 by @dependabot in https://github.com/netz98/n98-magerun2/pull/947
    • Bump psy/psysh from 0.11.1 to 0.11.2 by @dependabot in https://github.com/netz98/n98-magerun2/pull/948
    • Bump captainhook/captainhook from 5.10.7 to 5.10.8 by @dependabot in https://github.com/netz98/n98-magerun2/pull/949
    • Bump phpunit/phpunit from 9.5.16 to 9.5.17 by @dependabot in https://github.com/netz98/n98-magerun2/pull/950
    • A tiny bit of cleanup by @hardyjohnson in https://github.com/netz98/n98-magerun2/pull/951
    • Add mage-os to Github actions and installation source by @cmuench in https://github.com/netz98/n98-magerun2/pull/952
    • Bump phpunit/phpunit from 9.5.17 to 9.5.18 by @dependabot in https://github.com/netz98/n98-magerun2/pull/953
    • Add new dev:module:detect-composer-dependencies command (netz98 contribution) by @cmuench in https://github.com/netz98/n98-magerun2/pull/954
    • Make path argument required (#954) by @cmuench in https://github.com/netz98/n98-magerun2/pull/955
    • Bump phpunit/phpunit from 9.5.18 to 9.5.19 by @dependabot in https://github.com/netz98/n98-magerun2/pull/956
    • Bump guzzlehttp/guzzle from 7.4.1 to 7.4.2 by @dependabot in https://github.com/netz98/n98-magerun2/pull/958
    • Bump twig/twig from 3.3.8 to 3.3.9 by @dependabot in https://github.com/netz98/n98-magerun2/pull/959
    • Bump phpunit/phpunit from 9.5.19 to 9.5.20 by @dependabot in https://github.com/netz98/n98-magerun2/pull/960
    • Bump twig/twig from 3.3.9 to 3.3.10 by @dependabot in https://github.com/netz98/n98-magerun2/pull/961
    • Bump bamarni/symfony-console-autocomplete from 1.5.3 to 1.5.4 by @dependabot in https://github.com/netz98/n98-magerun2/pull/962
    • Test latest Magento versions by @cmuench in https://github.com/netz98/n98-magerun2/pull/963

    New Contributors

    • @mautz-et-tong made their first contribution in https://github.com/netz98/n98-magerun2/pull/925
    • @lsv made their first contribution in https://github.com/netz98/n98-magerun2/pull/935

    Full Changelog: https://github.com/netz98/n98-magerun2/compare/4.9.1...5.0.0

    Source code(tar.gz)
    Source code(zip)
  • 4.9.0(Dec 21, 2021)

    • Add: #899: config:env:delete command (by Pieter Hoste)
    • Add: Dependency information in README (by Christian Münch)
    • Imp: Updated dependencies (faker, psysh, symfony-console-autocomplete, php-cs-fixer, captainhook)
    • Fix: #898: Disable Composer gc during Magerun process (by Christian Münch)
    Source code(tar.gz)
    Source code(zip)
  • 4.8.0(Dec 4, 2021)

    What's Changed

    • Bump phpunit/phpunit from 8.5.17 to 8.5.18 by @dependabot in https://github.com/netz98/n98-magerun2/pull/792
    • Bump mikey179/vfsstream from 1.6.8 to 1.6.9 by @dependabot in https://github.com/netz98/n98-magerun2/pull/791
    • Bump composer/composer from 2.1.3 to 2.1.5 by @dependabot in https://github.com/netz98/n98-magerun2/pull/794
    • Bump symfony/process from 4.4.26 to 4.4.27 by @dependabot in https://github.com/netz98/n98-magerun2/pull/799
    • Bump symfony/console from 4.4.26 to 4.4.27 by @dependabot in https://github.com/netz98/n98-magerun2/pull/798
    • Bump symfony/finder from 4.4.25 to 4.4.27 by @dependabot in https://github.com/netz98/n98-magerun2/pull/797
    • Bump symfony/event-dispatcher from 4.4.25 to 4.4.27 by @dependabot in https://github.com/netz98/n98-magerun2/pull/796
    • Bump symfony/validator from 4.4.26 to 4.4.27 by @dependabot in https://github.com/netz98/n98-magerun2/pull/795
    • Skip authorization creation during db import if option is specified by @LucaGallinari in https://github.com/netz98/n98-magerun2/pull/805
    • Implement input format json for config env set command by @hostep in https://github.com/netz98/n98-magerun2/pull/806
    • Bump phpunit/phpunit from 8.5.18 to 8.5.19 by @dependabot in https://github.com/netz98/n98-magerun2/pull/808
    • Bump symfony/validator from 4.4.27 to 4.4.29 by @dependabot in https://github.com/netz98/n98-magerun2/pull/801
    • Bump symfony/console from 4.4.27 to 4.4.29 by @dependabot in https://github.com/netz98/n98-magerun2/pull/802
    • Bump symfony/yaml from 4.4.26 to 4.4.29 by @dependabot in https://github.com/netz98/n98-magerun2/pull/803
    • Bump composer/composer from 2.1.5 to 2.1.6 by @dependabot in https://github.com/netz98/n98-magerun2/pull/810
    • Bump symfony/console from 4.4.29 to 4.4.30 by @dependabot in https://github.com/netz98/n98-magerun2/pull/815
    • Bump symfony/finder from 4.4.27 to 4.4.30 by @dependabot in https://github.com/netz98/n98-magerun2/pull/814
    • Bump symfony/validator from 4.4.29 to 4.4.30 by @dependabot in https://github.com/netz98/n98-magerun2/pull/813
    • Bump symfony/process from 4.4.27 to 4.4.30 by @dependabot in https://github.com/netz98/n98-magerun2/pull/812
    • Optimize script repo performance by @cmuench in https://github.com/netz98/n98-magerun2/pull/820
    • Bump captainhook/captainhook from 5.10.1 to 5.10.2 by @dependabot in https://github.com/netz98/n98-magerun2/pull/822
    • Bump symfony/event-dispatcher from 4.4.27 to 4.4.30 by @dependabot in https://github.com/netz98/n98-magerun2/pull/816
    • Bump phing/phing from 2.16.4 to 2.17.0 by @dependabot in https://github.com/netz98/n98-magerun2/pull/817
    • Bump phpunit/phpunit from 8.5.19 to 8.5.20 by @dependabot in https://github.com/netz98/n98-magerun2/pull/818
    • Fix for #823: restore terminal mode after import by @jeroenvermeulen in https://github.com/netz98/n98-magerun2/pull/824
    • Bump composer/composer from 2.1.6 to 2.1.7 by @dependabot in https://github.com/netz98/n98-magerun2/pull/825
    • Bump composer/composer from 2.1.7 to 2.1.8 by @dependabot in https://github.com/netz98/n98-magerun2/pull/826
    • Bump captainhook/captainhook from 5.10.2 to 5.10.3 by @dependabot in https://github.com/netz98/n98-magerun2/pull/827
    • #620 Inject Development Helper () into dev:console by @amenk in https://github.com/netz98/n98-magerun2/pull/830
    • Fix/828 db reconnect by @amenk in https://github.com/netz98/n98-magerun2/pull/829
    • Bump phpunit/phpunit from 8.5.20 to 8.5.21 by @dependabot in https://github.com/netz98/n98-magerun2/pull/832
    • Bump mikey179/vfsstream from 1.6.9 to 1.6.10 by @dependabot in https://github.com/netz98/n98-magerun2/pull/831
    • Bump symfony/validator from 4.4.30 to 4.4.31 by @dependabot in https://github.com/netz98/n98-magerun2/pull/837
    • Bump captainhook/captainhook from 5.10.3 to 5.10.4 by @dependabot in https://github.com/netz98/n98-magerun2/pull/836
    • Replace the definer instead of trying to remove it by @alinalexandru in https://github.com/netz98/n98-magerun2/pull/835
    • Bump composer/composer from 2.1.8 to 2.1.9 by @dependabot in https://github.com/netz98/n98-magerun2/pull/839
    • Bump psy/psysh from 0.10.8 to 0.10.9 by @dependabot in https://github.com/netz98/n98-magerun2/pull/840
    • Bump bamarni/symfony-console-autocomplete from 1.4.1 to 1.4.2 by @dependabot in https://github.com/netz98/n98-magerun2/pull/841
    • Bump symfony/validator from 4.4.31 to 4.4.33 by @dependabot in https://github.com/netz98/n98-magerun2/pull/842
    • Bump composer/composer from 2.1.9 to 2.1.10 by @dependabot in https://github.com/netz98/n98-magerun2/pull/843
    • Bump symfony/console from 4.4.30 to 4.4.33 by @dependabot in https://github.com/netz98/n98-magerun2/pull/844
    • Update faker dependency and composer in build.sh by @cmuench in https://github.com/netz98/n98-magerun2/pull/845
    • Set minimium PHP 7.3 platform version and allow PHP 8 by @cmuench in https://github.com/netz98/n98-magerun2/pull/846
    • Add Composer v2 support to github actions by @cmuench in https://github.com/netz98/n98-magerun2/pull/851
    • Add Magento 2.4.3 to installer and test pipeline by @cmuench in https://github.com/netz98/n98-magerun2/pull/852
    • Feature/add new infos to info command by @cmuench in https://github.com/netz98/n98-magerun2/pull/859
    • Bump friendsofphp/php-cs-fixer from 2.19.2 to 3.3.1 by @dependabot in https://github.com/netz98/n98-magerun2/pull/853
    • Bump twig/twig from 2.14.7 to 3.3.4 by @dependabot in https://github.com/netz98/n98-magerun2/pull/863
      • upd: always run composer to make sure dependencies are correct by @deubert-it in https://github.com/netz98/n98-magerun2/pull/866
    • Deubert it dependabot/composer/phpunit/phpunit 9.5.10 by @cmuench in https://github.com/netz98/n98-magerun2/pull/869
    • Fix false positive of dependabot by @cmuench in https://github.com/netz98/n98-magerun2/pull/871
    • Bump symfony/finder from 4.4.30 to 5.3.7 by @dependabot in https://github.com/netz98/n98-magerun2/pull/847
    • Add test suite to run core command tests by @cmuench in https://github.com/netz98/n98-magerun2/pull/873
    • Bump symfony/event-dispatcher from 4.4.30 to 4.4.34 by @dependabot in https://github.com/netz98/n98-magerun2/pull/870
      • add: experimental mysql ssl support #578 by @deubert-it in https://github.com/netz98/n98-magerun2/pull/874
    • Add environment variable support in Magerun scripts by @cmuench in https://github.com/netz98/n98-magerun2/pull/875
    • Bump psy/psysh from 0.10.9 to 0.10.11 by @dependabot in https://github.com/netz98/n98-magerun2/pull/876
    • Bump symfony/yaml from 4.4.29 to 5.3.11 by @dependabot in https://github.com/netz98/n98-magerun2/pull/872
    • Bump composer/composer from 2.1.10 to 2.1.12 by @dependabot in https://github.com/netz98/n98-magerun2/pull/880
    • Fix for #882 "Undefined index: host" error when running db:import by @cmuench in https://github.com/netz98/n98-magerun2/pull/883
    • Hyva support for sys:check and sys:info command by @cmuench in https://github.com/netz98/n98-magerun2/pull/884
    • Bump composer/composer from 2.1.12 to 2.1.14 by @dependabot in https://github.com/netz98/n98-magerun2/pull/885
    • Bump psy/psysh from 0.10.11 to 0.10.12 by @dependabot in https://github.com/netz98/n98-magerun2/pull/886
    • check if file name was provided for db import command by @torhoehn in https://github.com/netz98/n98-magerun2/pull/888

    New Contributors

    • @LucaGallinari made their first contribution in https://github.com/netz98/n98-magerun2/pull/805
    • @alinalexandru made their first contribution in https://github.com/netz98/n98-magerun2/pull/835

    Full Changelog: https://github.com/netz98/n98-magerun2/compare/4.7.0...4.8.0

    Source code(tar.gz)
    Source code(zip)
  • 4.7.0(Oct 27, 2021)

    • New: Command db:add-default-authorization-entries (by Christian Münch)
    • Imp: Add handling for missing authorization rule/role in db:import (by Christian Münch, Alexander Menk)
    • Add: Add table authorization_role to table group @admin (by hannes011)
    • Fix: #781 - empty cron expression (by Christian Münch)
    • Fix: #789 - sampledata:deploy returns composer error, bin/magento works (by Christian Münch)
    Source code(tar.gz)
    Source code(zip)
  • 4.6.0(Jun 13, 2021)

    • Add: ui_bookmark to admin group (by Leland Clemmons)
    • Add: inventory_reservation to @sales group (by Dan Wallis)
    • Add: mailchimp table group (by Timon de Groot)
    • Add: Magento 2.4.2-p1 (by Christian Münch)
    • Fix: Changed filename in README where database config comes from. (by Martien Mortiaux)
    • Fix: Remove whitespace to fix code violations (by Christian Münch)
    • Fix: Remove push trigger for tests / github actions (by Christian Münch)
    • Imp: Updated symfony dependencies (console, event-dispatcher, finder, process, validator, yaml) (Dependbot)
    • Imp: Updated composer dependencies (Dependbot)
    • Imp: Updated captainhook dependency (Dependbot)
    • Imp: Updated php-cs-fixer dependency (Dependbot)
    • Imp: Updated phpunit dependency (Dependbot)
    • Imp: Updated psy shell dependency (Dependbot)
    Source code(tar.gz)
    Source code(zip)
  • 4.5.0(Jun 13, 2021)

    • Add: Magento 2.4.2 (by Christian Münch)
    • Imp: Change autoloading from PSR-0 to PSR-4 (by Tom Klingenberg)
    • Imp: Updated n98/junit-xml dependency (by Tom Klingenberg)
    • Imp: Updated Symfony dependencies (Dependabot)
    • Imp: Updated faker dependency (Dependabot)
    • Imp: Updated captainhook dependency (Dependabot)
    • Imp: Updated php-cs-fixer dependency (Dependabot)
    • Imp: Test with PHP 7.4 in github actions (by Christian Münch)
    • Fix: When the mysql import fails, make db:import fail as well (by Pieter Hoste)
    • Fix: Set php version to 7.4 in Github actions (by Christian Münch)
    • Fix: db:dump set correct default value (by Torben Höhn)
    Source code(tar.gz)
    Source code(zip)
  • 4.4.0(Dec 24, 2020)

    • New: #482: Add a command to change the admin user status (by Melvin Versluijs)
    • New: #595: Command to toggle the CMS block status (by Melvin Versluijs)
    • New: #662: Github Actions QA Workflow (by Christian Münch)
    • Fix: #653: Order of import statements in the Setup classes generated by dev:module:create (by Aad Mathijssen)
    • Add: #628: --set-gtid-purged-off option for db:dump command (by Luke Rodgers)
    • Add: #654: --add-strict-types option for dev:module:create command (by Aad Mathijssen)
    • Add: #661: Magento 2.4.1 Open Source (by Christian Münch)
    • Add: #665: --include option for db:dump command (by Hannes Drittler)
    • Add: #666: --force option for db:import command (by Luke Rodgers)
    • Fix: #651: Fix PSR-12-violation in the registration.php file generated by dev:module:create (by Aad Mathijssen)
    • Fix: #631: Correct grammar on db:dump help text (by Dan Wallis)
    • Imp: Updated Symfony dependencies (Dependabot)
    • Imp: Updated psysh dependency (Dependabot)
    • Imp: Updated phpunit dependencies (Dependabot)
    Source code(tar.gz)
    Source code(zip)
  • 4.3.0(Dec 24, 2020)

    • New: #615: Add option to dump db with —no-tablespaces option (by Torben Höhn)
    • Imp: Updated Symfony and Composer components to latest v4.4 (by dependabot)
    • Add: #617: Gitleaks config (by Christian Münch)
    • Add: Github super linter (by Christian Münch)
    • Fix: #603: Fixed typos in help (by Rico Neitzel)
    • Fix: #621: Correct list of 'dotmailer' tables (by Dan Wallis)
    Source code(tar.gz)
    Source code(zip)
  • 4.2.0(Aug 22, 2020)

    • New: #598: #597 Add support for additional fields to customer:create (by Alexander Menk)
    • New: #596: Support Magento 2.4.0 (by Christian Münch)
    • New: #586: MySQL 8 Support (by Callum Atwal)
    • New: #575: Env Checker (by Slawomir Boczek)
    • New: #552: Support Magento 2.3.5 (by Alexander Menk)
    • Imp: #551: When mysqldump fails, make db:dump fail as well (Pieter Hoste)
    • New: #547: Add table groups 'oauth' and 'klarna', update README.md (by Timon de Groot)
    • New: #544: --skip-magento-compatibility-check (by Timon de Groot)
    • Imp: #568: Strip all dotmailer tables (by Arnoud Beekman)
    • Imp: #548: Db console strip temp tables (by Doug Hatcher)
    • Imp: #543: Check if config:env:set does any changes (by Timon de Groot)
    • Imp: Updated Dependencies (Symfony latest 4.4.x) (by Christian Münch)
    • Imp: Update phpunit to 8.x (by Christian Münch)
    • Fix: #590: Fix format if db:status is dumped as CSV (by Christian Münch)
    Source code(tar.gz)
    Source code(zip)
Swiss-German language pack for Magento 2

Magento 2 Swiss-German Language Pack Facts Based on Magento2_German_LocalePack_de_DE from Splendid Internet GmbH & Co. KG Adaptions for the Swiss-Germ

Stämpfli AG 6 Sep 16, 2020
Hachkathon DevOps - Deploy application with docker container

Hackathon-Semesta-DevOps Nama : Islam Nurul Yakin Mail : [email protected] Sebuah Web Server menggunakan Nginx, PHP, dan MySQl di tambah dengan p

Islam Nurul Yakin 3 Jul 14, 2022
Magento 2 module to automatically flush the cache whenever you save something in the System Configuration

Yireo AutoFlushCache Magento 2 module to automatically flush the cache whenever you save something in the System Configuration. Do NOT use this in pro

Yireo 21 May 14, 2022
Laravel-hours-helper - Creates a Collection of times with a given interval.

Laravel Hours Helper With laravel-hours-helper you can create a collection of dates and/of times with a specific interval (in minutes) for a specific

Label84 167 Sep 17, 2022
Magento 2 Module Experius Page Not Found 404. This module saves all 404 url to a database table

Magento 2 Module Experius Page Not Found 404 This module saves all 404 urls to a database table. Adds an admin grid with 404s It includes a count so y

Experius 27 Jun 20, 2022
m4b-tool is a command line utility to merge, split and chapterize audiobook files such as mp3, ogg, flac, m4a or m4b

m4b-tool m4b-tool is a is a wrapper for ffmpeg and mp4v2 to merge, split or and manipulate audiobook files with chapters. Although m4b-tool is designe

Andreas 734 Sep 26, 2022
🎮 A simple command line tool for installing and interacting with your leaf apps

Leaf CLI 2 A simple command line tool for creating and interacting with your leaf projects. You can do stuff like installing packages, interacting wit

Leaf Framework 7 Aug 24, 2022
Tango is a command-line tool for analyzing access logs 💃

Tango Tool to get insights from the server access logs Tango is a dependency-free command-line tool for analyzing access logs ?? Currently, work on th

Roman Glushko 95 Sep 7, 2022
Quickly and easily preview and test your Magento 2 order confirmation page, without hacks or spending time placing new order each time

Preview Order Confirmation Page for Magento 2 For Magento 2.0.x, 2.1.x, 2.2.x and 2.3.x Styling and testing Magento's order confirmation page can be a

MagePal :: Magento Extensions 71 Aug 12, 2022
Dispatcher is a Laravel artisan command scheduling tool used to schedule artisan commands within your project so you don't need to touch your crontab when deploying.

Dispatcher Dispatcher allows you to schedule your artisan commands within your Laravel project, eliminating the need to touch the crontab when deployi

Indatus 1.1k Sep 17, 2022
A PHP Library To Make Your Work Work Easier/Faster

This Is A Php Library To Make Your Work Easier/Faster,

functionality 3 Aug 30, 2022
A tool that allows to quickly export data from Magento 1 and Magento 2 store and import it back into Magento 2

Simple Import / Export tool A tool that allows to quickly export data from Magento 1 and Magento 2 store and import it back into Magento 2. Table data

EcomDev B.V. 50 Jun 9, 2022
[ONLY Magento 2.0.x Compatible] Code samples for Magento developers

Synopsis This project is a collection of samples to demonstrate technologies introduced in Magento 2. You will find the most simple extension along wi

Magento 57 Jul 28, 2022
Phpcs-magento-rules - A set of PHPCS rules used by made.com when hacking Magento

Made.com PHPCS Magento Rules A set of PHPCS rules used by made.com when hacking Magento. Pre-Requisites PHPCS Installation Short Version Clone this re

Made.com Tech Team 26 Jun 3, 2020
Demo of symfony/console features to build rich command line utilities

Symfony Console Demo This project is a demonstration of symfony/console features. To run the project with Docker. With bash: docker build -t myconsole

Jérôme Tamarelle 3 Jun 16, 2022
TrovCMS command line installer.

Trov CMS Installer TrovCMS is a start kit for websites, built on Filament and Laravel. This install allows you to quickly spin up new sites to hit the

TrovCMS 10 Aug 31, 2022
Rugby schedules on the command-line

Rugby Schedule Rugby Schedule is a command-line tool that keeps you up to date with rugby tournament schedules. Install Requires PHP 8.0 or later Via

Owen Voke 0 Mar 17, 2022