Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is it necessary to require Lightning? #613

Closed
kevinquillen opened this issue Nov 1, 2016 · 7 comments
Closed

Is it necessary to require Lightning? #613

kevinquillen opened this issue Nov 1, 2016 · 7 comments
Labels
Support A support request

Comments

@kevinquillen
Copy link

I am following the installation readme and just ran

composer create-project acquia/blt-project (projectname) --no-interaction

My project scaffolded out, but I notice that it added in the following:

    "drupal/acquia_connector": "^8.1.5",
    "drupal/acsf": "^8.1.32",
    "drupal/cog": "^8.1.0",
    "drupal/console": "1.0.0-beta5",
    "drupal/core": "~8",
    "drupal/features": "^8.3.0-beta9",
    "drupal/lightning": "8.1.x-dev",
    "drupal/memcache": "^8.2.0-alpha2",
    "drupal/search_api": "8.1.0-alpha14",
    "drupal/search_api_solr": "8.1.0-alpha3",
    "drupal/security_review": "8.*",
    "drupal-composer/drupal-security-advisories": "8.0.x-dev"

Is Lightning necessary? I don't plan on using it, but now it's in my project. What is Cog? Do I need these things? Same for ACSF.

Also, I can't go beyond this point on the README on GitHub due to #612.

What I am looking for:

I would like to require Drupal 8.2.1, and have a blank slate for what modules or themes I want to require in my project via composer. Is BLT a good tool for this objective? I would also like to integrate the solution with a build process via Pipelines.

@grasmash
Copy link
Contributor

grasmash commented Nov 1, 2016

No, it is not necessary. These projects will be downloaded by default. You can easily change the default profile from lightning to standard or minimal by updating project.profile in project.yml.

You can also prevent any default dependency from being added to your composer.json by BLT, see http://blt.readthedocs.io/en/8.x/readme/updating-blt/#modifying-update-behavior

@grasmash grasmash closed this as completed Nov 1, 2016
@grasmash
Copy link
Contributor

grasmash commented Nov 1, 2016

Also yes, BLT is a good tool for your object. You can add a pre-configured Pipelines file to your repo with blt ci:pipelines:init.

@kevinquillen
Copy link
Author

But don't I have to install BLT first? When I run that command, the directory comes out with those things installed. I have no project.yml to edit until that happens. If I want to remove composer packages from that, and I try to do composer remove drupal/acsf or composer remove drupal/lightning - it winds up taking Drupal core with it and other modules. I suppose what I am saying is, I want a smaller footprint for the end result. Or, am I missing something in the middle here?

Have I missed a step to installing BLT?

@grasmash
Copy link
Contributor

grasmash commented Nov 1, 2016

True, in the typical workflow you have to remove Lightning after you've created the project.
Do you have a need to prevent it from being temporarily downloaded before removal?

Removing Lightning with composer remove drupal/lightning should not remove core files. drupal/core should still be listed as a requirement in composer.json. Is that not the case?

@kevinquillen
Copy link
Author

Here is example output:

composer remove drupal/acsf
Gathering patches for root package.
Removing package drupal/core so that it can be re-installed and re-patched.
Deleting docroot/core - deleted
Removing package drupal/replication so that it can be re-installed and re-patched.
Deleting docroot/modules/contrib/replication - deleted
Removing package drupal/workspace so that it can be re-installed and re-patched.
Deleting docroot/modules/contrib/workspace - deleted
Removing package drupal/metatag so that it can be re-installed and re-patched.
Deleting docroot/modules/contrib/metatag - deleted
Removing package drupal/panels so that it can be re-installed and re-patched.
Deleting docroot/modules/contrib/panels - deleted
Removing package drupal/workbench_moderation so that it can be re-installed and re-patched.
Deleting docroot/modules/contrib/workbench_moderation - deleted
Removing package drupal/scheduled_updates so that it can be re-installed and re-patched.
Deleting docroot/modules/contrib/scheduled_updates - deleted
Removing package drupal/panelizer so that it can be re-installed and re-patched.
Deleting docroot/modules/contrib/panelizer - deleted
Removing package drush/drush so that it can be re-installed and re-patched.

But, they never returned.

Let me try again.

@grasmash
Copy link
Contributor

grasmash commented Nov 1, 2016

If core really isn't re-downloaded then that's a bug with cweagens/composer-patches and we'll need to open an issue to address it. In that case, should be able to subsequently run composer update to re-download core and workaround the issue.

However, other modules like metatag, replication, etc. should not be re-downloaded because they are required by Lightning and they are not required by BLT.

@grasmash grasmash added Enhancement A feature or feature request Support A support request and removed Enhancement A feature or feature request labels Nov 1, 2016
@kevinquillen
Copy link
Author

Huh. It works now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Support A support request
Projects
None yet
Development

No branches or pull requests

2 participants