GithubHelp home page GithubHelp logo

Comments (2)

BrianHenryIE avatar BrianHenryIE commented on July 21, 2024

I suspect what's happening is that composer/composer is an explicit require dependency of one of your dependencies (a full composer.json would be helpful here) and so it is being copied and then deleted. An exclusion rule should be written for the Composer autoload files.

You could try setting the target_directory to vendor, and use the exclude_from_prefix setting for your two exclusions. Then it will prefix in-place and won't delete anything at all.

require_once __DIR__ . '/vendor/prefixed/autoload.php';

I think maybe that line won't be necessary after composer dump-autoload is run because you're using a sub-directory of vendor to copy the files to, and dump-autoload should scan the entire vendor directory

find vendor -type d -empty -delete

I've been meaning to add this to Strauss itself.

from strauss.

TussendoorHQ avatar TussendoorHQ commented on July 21, 2024

Thanks for the astonishing fast reply Brian!

I searched for the requirement that had composer/composer in their requirements and funnily enough it was the strauss package itself! After switching to the .phar file the problem was resolved. I needed some extra changes too (also based on your reply). So for anybody coming accross this, these are my changes:

  1. Removed brianhenryie/strauss from my requirements.
  2. Now using the .phar from the latest release.
  3. Changed the command in my prefixer.sh from vendor/bin/strauss to: php strauss.phar
  4. Changed target_directory to: vendor
  5. Renamed exclude_from_copy to exclude_from_prefix in my config to acommodate for the target_directory change.
  6. Added the below to my autoload config as per issue 34 and this reply. (#34)
"classmap": [
    "vendor"
]
  1. Also removed the autoload from the prefixed folder as this doesnt exist anymore. Only this line is now sufficient to autoload everything:
require_once __DIR__ . '/vendor/autoload.php';

The issue mentioned here is resolved. Still running into another issue where a specific directory (/lazy) of nesbot/carbon doesnt get prefixed. But I will create a new issue for it as it is not related.

from strauss.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.