AydinHassan / magento-core-composer-installer

A Composer Plugin to manage Magento Core
MIT License
94 stars 37 forks source link

Removing file not checked #22

Closed luckyraul closed 8 years ago

luckyraul commented 9 years ago
MagentoCoreInstaller: Removing: "magento/core" version: "1.9.2.1" from: "public/modules"
[ErrorException]                                                                                
  file_put_contents(public/modules/.gitignore): failed to open stream: No such file or directory
AydinHassan commented 9 years ago

You probably have a .gitignore file in whatever repository you are using for the core. Every file in the core package is assumed to be good for removal, there is no checking of files.

There is not really a way around this without keeping track of all files which are installed.

AydinHassan commented 9 years ago

So it's removing the .gitignore file because it exists in the core package, then it's trying to update the .gitignore file which does not exist any more.

luckyraul commented 9 years ago

there is no .gitignore in core package

https://github.com/bragento/magento-core/tree/1.9.2.1 https://github.com/bragento/magento-core/tree/1.9.2.2

AydinHassan commented 9 years ago

Hmm, weird, could you paste your config please?

luckyraul commented 9 years ago
"require": {
        "magento/core": "~1.9",
        "mygento/base": "*",
        "aoepeople/aoe_scheduler": "*",
        "aydin-hassan/magento-core-composer-installer": "^1.3"
    },
    "extra": {
        "magento-force": true,
        "magento-root-dir": "public/modules"
    },
AydinHassan commented 9 years ago

Thanks, I will try to take a look later today

AydinHassan commented 9 years ago

I tried this out with your example composer.json and it worked fine for me, there must be something else which is removing your .gitignore file. If you could reduce this to a test case I can take a further look, but I suspect there is something else having an effect here.

luckyraul commented 9 years ago

Yes, there was a bunch of private modules. I checked them all for .gitignore. Can it be auto-generated one by composer installer?

AydinHassan commented 9 years ago

I'm pretty sure the composer installer doesn't remove the gitignore, I use that functionality on all our projects and haven't noticed the issue :/

luckyraul commented 9 years ago

The issue was during creating/updating file. It's strange problem however I am going to close this issue since I can't reproduce it once again.

luckyraul commented 9 years ago

composer update

[ErrorException]
file_put_contents(public/modules/.gitignore): failed to open stream: No such file or directory

Exception trace: () at /Volumes/Data/GIT/projects/jekyll/vendor/aydin-hassan/magento-core-composer-installer/src/GitIgnore.php:116 Composer\Util\ErrorHandler::handle() at n/a:n/a file_put_contents() at /Volumes/Data/GIT/projects/jekyll/vendor/aydin-hassan/magento-core-composer-installer/src/GitIgnore.php:116 AydinHassan\MagentoCoreComposerInstaller\GitIgnore->__destruct() at /Volumes/Data/GIT/projects/jekyll/vendor/aydin-hassan/magento-core-composer-installer/src/CoreManager.php:222 AydinHassan\MagentoCoreComposerInstaller\CoreManager->uninstallCore() at /Volumes/Data/GIT/projects/jekyll/vendor/aydin-hassan/magento-core-composer-installer/src/CoreManager.php:222 AydinHassan\MagentoCoreComposerInstaller\CoreManager->uninstallCore() at n/a:n/a call_user_func() at phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:152 Composer\EventDispatcher\EventDispatcher->doDispatch() at phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:112 Composer\EventDispatcher\EventDispatcher->dispatchPackageEvent() at phar:///usr/local/bin/composer/src/Composer/Installer.php:588 Composer\Installer->doInstall() at phar:///usr/local/bin/composer/src/Composer/Installer.php:233 Composer\Installer->run() at phar:///usr/local/bin/composer/src/Composer/Command/UpdateCommand.php:143 Composer\Command\UpdateCommand->execute() at phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:257 Symfony\Component\Console\Command\Command->run() at phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:874 Symfony\Component\Console\Application->doRunCommand() at phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:195 Symfony\Component\Console\Application->doRun() at phar:///usr/local/bin/composer/src/Composer/Console/Application.php:147 Composer\Console\Application->doRun() at phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:126 Symfony\Component\Console\Application->run() at phar:///usr/local/bin/composer/src/Composer/Console/Application.php:82 Composer\Console\Application->run() at phar:///usr/local/bin/composer/bin/composer:43 require() at /usr/local/bin/composer:25

AydinHassan commented 9 years ago

Is the modules folder still present? file_put_contents doesn't need the file to be present. Can you try running composer update with -vvv?

luckyraul commented 9 years ago

Nope, it's deleted by jekyll on every publish. Previous log was with verbose option

AydinHassan commented 9 years ago

You will have to provide an example repository with the issue bevause I can't reproduce it, if you can do that I wil debug it and get a fix in place (if there is a bug)

luckyraul commented 9 years ago

There is few private repositories inside so you can't debug it.

installed files.json

[
    {
        "packageName": "aoepeople\/aoe_scheduler",
        "version": "1.2.2.0-2e80e39c01a8311a48a1a8909d0d820176b9d813",
        "installedFiles": [
            "\/app\/code\/community\/Aoe\/Scheduler",
            "\/app\/etc\/modules\/Aoe_Scheduler.xml",
            "\/shell\/scheduler.php",
            "\/app\/locale\/sv_SE\/Aoe_Scheduler.csv",
            "\/app\/locale\/de_DE\/Aoe_Scheduler.csv",
            "\/app\/locale\/en_US\/template\/email\/aoe_scheduler",
            "\/app\/design\/adminhtml\/default\/default\/template\/aoe_scheduler",
            "\/app\/design\/adminhtml\/default\/default\/layout\/aoe_scheduler",
            "\/skin\/adminhtml\/default\/default\/aoe_scheduler",
            "\/scheduler_cron.sh"
        ]
    },
    {
        "packageName": "mygento\/base",
        "version": "1.0.5.0-efe258d12700acc82ead5a27a59c2f3f8ff85bd9",
        "installedFiles": [
            "\/app\/code\/community\/Mygento\/Base",
            "\/app\/etc\/modules\/Mygento_Base.xml",
            "\/app\/locale\/ru_RU\/Mygento_Base.csv",
            "\/skin\/adminhtml\/default\/default\/images\/mygento\/base\/logo.png"
        ]
    },
    {
        "packageName": "mygento\/theme",
        "version": "9999999-dev-cf7342b08ec151bb075b6d5d8de439276a003fce",
        "installedFiles": [
            "\/app\/design\/frontend\/mygento",
            "\/skin\/frontend\/mygento"
        ]
    },
    {
        "packageName": "mygento\/yandexkassa",
        "version": "1.1.7.0-5c2367afde1cf7a4563f4ebbfd94fed93a0db921",
        "installedFiles": [
            "\/app\/code\/local\/Mygento\/Yandexkassa",
            "\/app\/design\/adminhtml\/default\/default\/template\/mygento\/yandexkassa\/info.phtml",
            "\/app\/design\/frontend\/base\/default\/template\/mygento\/yandexkassa",
            "\/app\/etc\/modules\/Mygento_Yandexkassa.xml",
            "\/app\/locale\/ru_RU\/Mygento_Yandexkassa.csv"
        ]
    }
]
AydinHassan commented 9 years ago

I can't you help then if you can't reproduce with any non private modules. I can't tell if there is an issue just by looking at it.

luckyraul commented 9 years ago

I know, so please, can you provide me some help with debugging. I just want to reduce debug time. Where I should firstly look ?

luckyraul commented 9 years ago
AydinHassan\MagentoCoreComposerInstaller\Options Object
(
    [deployExcludes:protected] => Array
        (
            [0] => .git
        )

    [ignoreDirectories:protected] => Array
        (
            [0] => /app/code/core/Mage
            [1] => /app/code/core/Zend
            [2] => /app/code/core/Enterprise
            [3] => /dev
            [4] => /lib/Zend
            [5] => /lib/Varien
            [6] => /lib/Magento
            [7] => /lib/PEAR
            [8] => /lib/Mage
            [9] => /lib/phpseclib
            [10] => /lib/flex
            [11] => /lib/LinLibertineFont
            [12] => /downloader
            [13] => /js/extjs
            [14] => /js/prototype
            [15] => /js/calendar
            [16] => /js/mage
            [17] => /js/varien
            [18] => /js/tiny_mce
            [19] => /lib/Apache
            [20] => /app/code/community/Phoenix/Moneybookers
            [21] => /app/design/adminhtml/default/default/template/bundle
            [22] => /app/design/adminhtml/default/default/template/catalog
            [23] => /app/design/adminhtml/default/default/template/customer
            [24] => /app/design/adminhtml/default/default/template/downloadable
            [25] => /app/design/adminhtml/default/default/template/newsletter
            [26] => /app/design/adminhtml/default/default/template/payment
            [27] => /app/design/adminhtml/default/default/template/sales
            [28] => /app/design/adminhtml/default/default/template/system
            [29] => /app/design/adminhtml/default/default/template/widget
            [30] => /app/design/adminhtml/default/default/template/xmlconnect
            [31] => /app/design/frontend/base/default/template/bundle
            [32] => /app/design/frontend/base/default/template/catalog
            [33] => /app/design/frontend/base/default/template/checkout
            [34] => /app/design/frontend/base/default/template/customer
            [35] => /app/design/frontend/base/default/template/downloadable
            [36] => /app/design/frontend/base/default/template/page
            [37] => /app/design/frontend/base/default/template/payment
            [38] => /app/design/frontend/base/default/template/paypal
            [39] => /app/design/frontend/base/default/template/reports
            [40] => /app/design/frontend/base/default/template/sales
            [41] => /app/design/frontend/base/default/template/wishlist
            [42] => /app/design/frontend/default/iphone/template/catalog
            [43] => /app/design/frontend/default/iphone/template/checkout
            [44] => /app/design/frontend/default/iphone/template/page
            [45] => /app/design/frontend/default/iphone/template/sales
            [46] => /app/design/frontend/default/iphone/template/wishlist
            [47] => /app/design/frontend/rwd/default/template/bundle
            [48] => /app/design/frontend/rwd/default/template/catalog
            [49] => /app/design/frontend/rwd/default/template/checkout
            [50] => /app/design/frontend/rwd/default/template/customer
            [51] => /app/design/frontend/rwd/default/template/downloadable
            [52] => /app/design/frontend/base/default/template/cataloginventory
            [53] => /app/design/frontend/base/default/template/catalogsearch
            [54] => /app/design/frontend/base/default/template/pagecache
            [55] => /app/design/frontend/default/iphone/template/catalogsearch
            [56] => /app/design/frontend/rwd/default/template/cataloginventory
            [57] => /app/design/frontend/rwd/default/template/catalogsearch
            [58] => /app/design/frontend/rwd/default/template/configurableswatches
            [59] => /app/design/frontend/rwd/default/template/email
            [60] => /app/design/frontend/rwd/default/template/page
            [61] => /app/design/frontend/rwd/default/template/paypal
            [62] => /app/design/frontend/rwd/default/template/persistent
            [63] => /app/design/frontend/rwd/default/template/reports
            [64] => /app/design/frontend/rwd/default/template/sales
            [65] => /app/design/frontend/rwd/default/template/wishlist
            [66] => /app/design/install/default/default/template/install
            [67] => /skin/adminhtml/default/default/images/xmlconnect
            [68] => /skin/frontend/base/default/images/moneybookers
            [69] => /skin/frontend/rwd/default/scss
            [70] => /app/design/adminhtml/default/default/template/paypal
            [71] => /app/design/adminhtml/default/default/template/permissions
            [72] => /app/design/adminhtml/default/default/template/report
            [73] => /app/design/adminhtml/default/default/template/tax
            [74] => /app/design/frontend/base/default/template/cms
            [75] => /app/design/frontend/base/default/template/email
            [76] => /app/design/frontend/base/default/template/moneybookers
            [77] => /app/design/frontend/base/default/template/oauth
            [78] => /app/design/frontend/base/default/template/review
            [79] => /app/design/frontend/default/modern/template/catalog
            [80] => /skin/adminhtml/default/default/xmlconnect
            [81] => /skin/frontend/base/default/images/cookies
            [82] => /skin/frontend/base/default/images/xmlconnect
            [83] => /app/design/frontend/default/modern/template/catalogsearch
        )

    [appendToGitIgnore:protected] => 1
    [magentoRootDir:protected] => public/modules
)
AydinHassan commented 9 years ago

You could try put some dumps in here: https://github.com/AydinHassan/magento-core-composer-installer/blob/master/src/CoreManager.php#L163 check the state of the file system. Eg does public/modules exist? Because it should on update. Maybe it has something to do with your root being two folders deep. Try it with one level deep. Other than that you can setup xdebug to run composer update and put a breakpoint in the installer.

luckyraul commented 9 years ago
class AydinHassan\MagentoCoreComposerInstaller\GitIgnore#69714 (4) {
  protected $lines =>
  array(84) {
    [0] =>
    string(19) "/app/code/core/Mage"
    [1] =>
    string(19) "/app/code/core/Zend"
    [2] =>
    string(25) "/app/code/core/Enterprise"
    [3] =>
    string(4) "/dev"
    [4] =>
    string(9) "/lib/Zend"
    [5] =>
    string(11) "/lib/Varien"
    [6] =>
    string(12) "/lib/Magento"
    [7] =>
    string(9) "/lib/PEAR"
    [8] =>
    string(9) "/lib/Mage"
    [9] =>
    string(14) "/lib/phpseclib"
    [10] =>
    string(9) "/lib/flex"
    [11] =>
    string(21) "/lib/LinLibertineFont"
    [12] =>
    string(11) "/downloader"
    [13] =>
    string(9) "/js/extjs"
    [14] =>
    string(13) "/js/prototype"
    [15] =>
    string(12) "/js/calendar"
    [16] =>
    string(8) "/js/mage"
    [17] =>
    string(10) "/js/varien"
    [18] =>
    string(12) "/js/tiny_mce"
    [19] =>
    string(11) "/lib/Apache"
    [20] =>
    string(40) "/app/code/community/Phoenix/Moneybookers"
    [21] =>
    string(53) "/app/design/adminhtml/default/default/template/bundle"
    [22] =>
    string(54) "/app/design/adminhtml/default/default/template/catalog"
    [23] =>
    string(55) "/app/design/adminhtml/default/default/template/customer"
    [24] =>
    string(59) "/app/design/adminhtml/default/default/template/downloadable"
    [25] =>
    string(57) "/app/design/adminhtml/default/default/template/newsletter"
    [26] =>
    string(54) "/app/design/adminhtml/default/default/template/payment"
    [27] =>
    string(52) "/app/design/adminhtml/default/default/template/sales"
    [28] =>
    string(53) "/app/design/adminhtml/default/default/template/system"
    [29] =>
    string(53) "/app/design/adminhtml/default/default/template/widget"
    [30] =>
    string(57) "/app/design/adminhtml/default/default/template/xmlconnect"
    [31] =>
    string(49) "/app/design/frontend/base/default/template/bundle"
    [32] =>
    string(50) "/app/design/frontend/base/default/template/catalog"
    [33] =>
    string(51) "/app/design/frontend/base/default/template/checkout"
    [34] =>
    string(51) "/app/design/frontend/base/default/template/customer"
    [35] =>
    string(55) "/app/design/frontend/base/default/template/downloadable"
    [36] =>
    string(47) "/app/design/frontend/base/default/template/page"
    [37] =>
    string(50) "/app/design/frontend/base/default/template/payment"
    [38] =>
    string(49) "/app/design/frontend/base/default/template/paypal"
    [39] =>
    string(50) "/app/design/frontend/base/default/template/reports"
    [40] =>
    string(48) "/app/design/frontend/base/default/template/sales"
    [41] =>
    string(51) "/app/design/frontend/base/default/template/wishlist"
    [42] =>
    string(52) "/app/design/frontend/default/iphone/template/catalog"
    [43] =>
    string(53) "/app/design/frontend/default/iphone/template/checkout"
    [44] =>
    string(49) "/app/design/frontend/default/iphone/template/page"
    [45] =>
    string(50) "/app/design/frontend/default/iphone/template/sales"
    [46] =>
    string(53) "/app/design/frontend/default/iphone/template/wishlist"
    [47] =>
    string(48) "/app/design/frontend/rwd/default/template/bundle"
    [48] =>
    string(49) "/app/design/frontend/rwd/default/template/catalog"
    [49] =>
    string(50) "/app/design/frontend/rwd/default/template/checkout"
    [50] =>
    string(50) "/app/design/frontend/rwd/default/template/customer"
    [51] =>
    string(54) "/app/design/frontend/rwd/default/template/downloadable"
    [52] =>
    string(59) "/app/design/frontend/base/default/template/cataloginventory"
    [53] =>
    string(56) "/app/design/frontend/base/default/template/catalogsearch"
    [54] =>
    string(52) "/app/design/frontend/base/default/template/pagecache"
    [55] =>
    string(58) "/app/design/frontend/default/iphone/template/catalogsearch"
    [56] =>
    string(58) "/app/design/frontend/rwd/default/template/cataloginventory"
    [57] =>
    string(55) "/app/design/frontend/rwd/default/template/catalogsearch"
    [58] =>
    string(62) "/app/design/frontend/rwd/default/template/configurableswatches"
    [59] =>
    string(47) "/app/design/frontend/rwd/default/template/email"
    [60] =>
    string(46) "/app/design/frontend/rwd/default/template/page"
    [61] =>
    string(48) "/app/design/frontend/rwd/default/template/paypal"
    [62] =>
    string(52) "/app/design/frontend/rwd/default/template/persistent"
    [63] =>
    string(49) "/app/design/frontend/rwd/default/template/reports"
    [64] =>
    string(47) "/app/design/frontend/rwd/default/template/sales"
    [65] =>
    string(50) "/app/design/frontend/rwd/default/template/wishlist"
    [66] =>
    string(52) "/app/design/install/default/default/template/install"
    [67] =>
    string(49) "/skin/adminhtml/default/default/images/xmlconnect"
    [68] =>
    string(47) "/skin/frontend/base/default/images/moneybookers"
    [69] =>
    string(31) "/skin/frontend/rwd/default/scss"
    [70] =>
    string(53) "/app/design/adminhtml/default/default/template/paypal"
    [71] =>
    string(58) "/app/design/adminhtml/default/default/template/permissions"
    [72] =>
    string(53) "/app/design/adminhtml/default/default/template/report"
    [73] =>
    string(50) "/app/design/adminhtml/default/default/template/tax"
    [74] =>
    string(46) "/app/design/frontend/base/default/template/cms"
    [75] =>
    string(48) "/app/design/frontend/base/default/template/email"
    [76] =>
    string(55) "/app/design/frontend/base/default/template/moneybookers"
    [77] =>
    string(48) "/app/design/frontend/base/default/template/oauth"
    [78] =>
    string(49) "/app/design/frontend/base/default/template/review"
    [79] =>
    string(52) "/app/design/frontend/default/modern/template/catalog"
    [80] =>
    string(42) "/skin/adminhtml/default/default/xmlconnect"
    [81] =>
    string(42) "/skin/frontend/base/default/images/cookies"
    [82] =>
    string(45) "/skin/frontend/base/default/images/xmlconnect"
    [83] =>
    string(58) "/app/design/frontend/default/modern/template/catalogsearch"
  }
  protected $directoriesToIgnoreEntirely =>
  array(84) {
    [0] =>
    string(19) "/app/code/core/Mage"
    [1] =>
    string(19) "/app/code/core/Zend"
    [2] =>
    string(25) "/app/code/core/Enterprise"
    [3] =>
    string(4) "/dev"
    [4] =>
    string(9) "/lib/Zend"
    [5] =>
    string(11) "/lib/Varien"
    [6] =>
    string(12) "/lib/Magento"
    [7] =>
    string(9) "/lib/PEAR"
    [8] =>
    string(9) "/lib/Mage"
    [9] =>
    string(14) "/lib/phpseclib"
    [10] =>
    string(9) "/lib/flex"
    [11] =>
    string(21) "/lib/LinLibertineFont"
    [12] =>
    string(11) "/downloader"
    [13] =>
    string(9) "/js/extjs"
    [14] =>
    string(13) "/js/prototype"
    [15] =>
    string(12) "/js/calendar"
    [16] =>
    string(8) "/js/mage"
    [17] =>
    string(10) "/js/varien"
    [18] =>
    string(12) "/js/tiny_mce"
    [19] =>
    string(11) "/lib/Apache"
    [20] =>
    string(40) "/app/code/community/Phoenix/Moneybookers"
    [21] =>
    string(53) "/app/design/adminhtml/default/default/template/bundle"
    [22] =>
    string(54) "/app/design/adminhtml/default/default/template/catalog"
    [23] =>
    string(55) "/app/design/adminhtml/default/default/template/customer"
    [24] =>
    string(59) "/app/design/adminhtml/default/default/template/downloadable"
    [25] =>
    string(57) "/app/design/adminhtml/default/default/template/newsletter"
    [26] =>
    string(54) "/app/design/adminhtml/default/default/template/payment"
    [27] =>
    string(52) "/app/design/adminhtml/default/default/template/sales"
    [28] =>
    string(53) "/app/design/adminhtml/default/default/template/system"
    [29] =>
    string(53) "/app/design/adminhtml/default/default/template/widget"
    [30] =>
    string(57) "/app/design/adminhtml/default/default/template/xmlconnect"
    [31] =>
    string(49) "/app/design/frontend/base/default/template/bundle"
    [32] =>
    string(50) "/app/design/frontend/base/default/template/catalog"
    [33] =>
    string(51) "/app/design/frontend/base/default/template/checkout"
    [34] =>
    string(51) "/app/design/frontend/base/default/template/customer"
    [35] =>
    string(55) "/app/design/frontend/base/default/template/downloadable"
    [36] =>
    string(47) "/app/design/frontend/base/default/template/page"
    [37] =>
    string(50) "/app/design/frontend/base/default/template/payment"
    [38] =>
    string(49) "/app/design/frontend/base/default/template/paypal"
    [39] =>
    string(50) "/app/design/frontend/base/default/template/reports"
    [40] =>
    string(48) "/app/design/frontend/base/default/template/sales"
    [41] =>
    string(51) "/app/design/frontend/base/default/template/wishlist"
    [42] =>
    string(52) "/app/design/frontend/default/iphone/template/catalog"
    [43] =>
    string(53) "/app/design/frontend/default/iphone/template/checkout"
    [44] =>
    string(49) "/app/design/frontend/default/iphone/template/page"
    [45] =>
    string(50) "/app/design/frontend/default/iphone/template/sales"
    [46] =>
    string(53) "/app/design/frontend/default/iphone/template/wishlist"
    [47] =>
    string(48) "/app/design/frontend/rwd/default/template/bundle"
    [48] =>
    string(49) "/app/design/frontend/rwd/default/template/catalog"
    [49] =>
    string(50) "/app/design/frontend/rwd/default/template/checkout"
    [50] =>
    string(50) "/app/design/frontend/rwd/default/template/customer"
    [51] =>
    string(54) "/app/design/frontend/rwd/default/template/downloadable"
    [52] =>
    string(59) "/app/design/frontend/base/default/template/cataloginventory"
    [53] =>
    string(56) "/app/design/frontend/base/default/template/catalogsearch"
    [54] =>
    string(52) "/app/design/frontend/base/default/template/pagecache"
    [55] =>
    string(58) "/app/design/frontend/default/iphone/template/catalogsearch"
    [56] =>
    string(58) "/app/design/frontend/rwd/default/template/cataloginventory"
    [57] =>
    string(55) "/app/design/frontend/rwd/default/template/catalogsearch"
    [58] =>
    string(62) "/app/design/frontend/rwd/default/template/configurableswatches"
    [59] =>
    string(47) "/app/design/frontend/rwd/default/template/email"
    [60] =>
    string(46) "/app/design/frontend/rwd/default/template/page"
    [61] =>
    string(48) "/app/design/frontend/rwd/default/template/paypal"
    [62] =>
    string(52) "/app/design/frontend/rwd/default/template/persistent"
    [63] =>
    string(49) "/app/design/frontend/rwd/default/template/reports"
    [64] =>
    string(47) "/app/design/frontend/rwd/default/template/sales"
    [65] =>
    string(50) "/app/design/frontend/rwd/default/template/wishlist"
    [66] =>
    string(52) "/app/design/install/default/default/template/install"
    [67] =>
    string(49) "/skin/adminhtml/default/default/images/xmlconnect"
    [68] =>
    string(47) "/skin/frontend/base/default/images/moneybookers"
    [69] =>
    string(31) "/skin/frontend/rwd/default/scss"
    [70] =>
    string(53) "/app/design/adminhtml/default/default/template/paypal"
    [71] =>
    string(58) "/app/design/adminhtml/default/default/template/permissions"
    [72] =>
    string(53) "/app/design/adminhtml/default/default/template/report"
    [73] =>
    string(50) "/app/design/adminhtml/default/default/template/tax"
    [74] =>
    string(46) "/app/design/frontend/base/default/template/cms"
    [75] =>
    string(48) "/app/design/frontend/base/default/template/email"
    [76] =>
    string(55) "/app/design/frontend/base/default/template/moneybookers"
    [77] =>
    string(48) "/app/design/frontend/base/default/template/oauth"
    [78] =>
    string(49) "/app/design/frontend/base/default/template/review"
    [79] =>
    string(52) "/app/design/frontend/default/modern/template/catalog"
    [80] =>
    string(42) "/skin/adminhtml/default/default/xmlconnect"
    [81] =>
    string(42) "/skin/frontend/base/default/images/cookies"
    [82] =>
    string(45) "/skin/frontend/base/default/images/xmlconnect"
    [83] =>
    string(58) "/app/design/frontend/default/modern/template/catalogsearch"
  }
  protected $gitIgnoreLocation =>
  string(25) "public/modules/.gitignore"
  protected $hasChanges =>
  bool(true)
}
luckyraul commented 9 years ago

No, there is no public/modules.

AydinHassan commented 9 years ago

Ok why doesn't it exist at that point? To remove the core it must exist?

luckyraul commented 9 years ago

So If you know jekyll is a static site generator. On building it deletes all public folder content. Then composer install magento as a new installation to the public/modules. However now I want to update dependencies and lock them to 1.9.2.2.

luckyraul commented 9 years ago

In my opinion the problem is in not checking availability of the gitignore on the remove action

AydinHassan commented 9 years ago

OK this is your issue. The workflow for the installer, when updating a magento core package is:

Your workflow doesn't tie in with the workflow of the installer.

Maybe the installer could have an option like "no-remove-on-update" which would skip the removal process when updating if true.

Sadly I don't have time to implement this at the minute, however, I would accept pull requests :)

Sent from my iPhone

On 6 Nov 2015, at 12:12, Nikita notifications@github.com wrote:

So If you know jekyll is a static site generator. On building it deletes all public folder content. Then composer install magento as new installation. However now I want to update dependencies and lock them to 1.9.2.2.

— Reply to this email directly or view it on GitHub.