core icon indicating copy to clipboard operation
core copied to clipboard

ControllerCommand uses Nette\PhpGenerator but that dependency is not declared in composer.json

Open lubiana opened this issue 1 year ago • 2 comments

Describe the bug A clear and concise description of what the bug is.

To Reproduce Steps to reproduce the behavior:

  • clone current git master
  • composer install
  • composer test

Expected behavior The tests run successfully

Actual behavior ControllerCommandTest fails, and notes that the files does not exist. When stepdebugging we can find out, that it boils down to a class not found error for Nette\PhpGenerator

Environment (please complete the following information):

  • OS: Linux
  • PHP Version: 8.3
  • Flight Version: current master

lubiana avatar Aug 27 '24 16:08 lubiana

So I see your point, but here me out on this one.

It is required through require-dev in composer through flightphp/runway. Why I thought that was ok was typically you aren't going to be running runway commands in production, but instead on your development environments. If the argument is that runway should also work in production then we probably should move that flightphp/runway to production, but that would add a dependency to the core. One other option is that we could put the ControllerCommand and the other commands in runway itself, or in another package altogether to keep core dependency free.

Thoughts?

n0nag0n avatar Aug 28 '24 13:08 n0nag0n

the current composer.json in the master branch requires runway in version 0.2.0, the php-generator dependency was only added in runway 0.2.2, so maybe we should bump the dependency requirement for runway to a newer version?

edit: and yes, i am absolutety fine with requiring runway (and therefore php-generator), but we need to make shure, that the tests do not fail when installing the dependencies as declared in composer.json

lubiana avatar Aug 28 '24 14:08 lubiana

This is now updated and pushed to master. Thanks so much!

n0nag0n avatar Aug 29 '24 13:08 n0nag0n