承接 meeva/create-vendor 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

meeva/create-vendor

Composer 安装命令:

composer require meeva/create-vendor

包简介

composer plugin to quickly create new vendor-packages from within your project.

README 文档

README

composer plugin to quickly create new modules within your project.

What it does / Why do you may need it

Since Symonfy 4 it is no longer recommended to split your application your project into multiple bundles within your application. You may either build one complex application, or you swap out reusable bundles into separate composer packages.

While composer makes it simple to require an existing package, it is somehow impractical to create a new one to develop within your project:

  • If you just create a folder within vendor/ the package isn't recognized, which means that the autoloader and dependencies do not apply
  • If you create an empty git project you need to commit the composer.json at least once (more likely 2, 3 or a dozen times)
  • In either case you need to temporarily change your projects composer.json to add a repository-entry which can be removed if you later publish the package

The Solution

This plugins helps you to create a new composer package directory and correctly require it with just one command. Using this method your vendor/yourvendor/newpackage/composer.json is applied as expected:

  • The requirements are added to your project
  • The autoloader paths are recognized

Installation

$ # either use it globally
$ composer global require meeva/create-vendor
$ # or just within your current project
$ composer require --dev meeva/create-vendor

Usage

Within your composer-managed application-project (e.g. a Symfony 4 Application), just type:

$ composer create-vendor yourvendor/newpackage
$ # Interactively fill your first composer.json

How does it work

The create-vendor command just chains 2 composer commands for you:

  1. chdir to $HOME/.composer/plugin/create-vendor/yourvendor/newpackage and
    composer init --name=yourvendor/newpackage
  2. chdir back to your project and
    composer require yourvendor/newpackage

In addition it adds a transparent ()repository without modifying your composer.json) that provides every project from the directory $HOME/.composer/plugin/create-vendor/*/* as a path-repository. This has the same effect as adding the following snippet to your global composer.json:

{
    "repositories": [
        {
            "type": "path",
            "url": "$HOME/.composer/plugin/create-vendor/*/*"
        }
    ]
}

This symlinks the path to your project/vendor-directory. For more information read: https://getcomposer.org/doc/05-repositories.md#path

Bonus: You may manually copy any composer package to $HOME/.composer/plugin/create-vendor/*/ to make it available for requiring without additional changes to any composer.json.

When you are done

First assure that you have published your new package.

After that you may delete the directory $HOME/.composer/plugin/create-vendor/yourvendor/newpackage. From now on composer install/update should load your package from the external repository (e.g. packagist.org) as usual.

meeva/create-vendor 适用场景与选型建议

meeva/create-vendor 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 23 次下载、GitHub Stars 达 1, 最近一次更新时间为 2018 年 02 月 08 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 meeva/create-vendor 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 meeva/create-vendor 我们能提供哪些服务?
定制开发 / 二次开发

基于 meeva/create-vendor 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 23
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 2
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-02-08