Search code examples
symfonygithubcomposer-phppackagist

Symfony2 - github - publishing packagist


A main problem is that triggers error on composer require package.

I'm trying to publish Symfony package using packagist. I have already commited with composer.json:

{
    "name" : "vendor/package",
    "description" : "Some description",
    "type" : "symfony-bundle",
    "authors" : [{
    "name" : "Name",
    "email" : "[email protected]"
    }],
    "keywords" : [
    "keywords"
    ],
    "license" : [
    "MIT"
    ],
    "require": {
    "php": ">=5.2.0",
    "twig": "~1.18"
    },
    "autoload" : {
    "psr-0" : {
        "Vendor\\Package" : ""
    }
    },
    "minimum-stability": "dev",
    "target-dir" : "Vendor/Package",
    "repositories" : [{
    }]
}

On packagist binding and successfully shows package vendor/package, so I have only dev-master:

"vendor/package": "dev-master"

Here is problem when trying require package in Symfony 2.6 and throws:

composer require "vendor/package": "dev-master"                                                                      
  [InvalidArgumentException]                                                                                                                  
  Could not find package dev-master at any version for your minimum-stability (stable). Check the package spelling or your minimum-stability 

Solution

  • Fixed with this composer.json and add into Github tags and branches version such as 1.0.0, then require version 1.0.* or dev-master.

    {
        "name" : "vendor/package",
        "description" : "Description",
        "type" : "symfony-bundle",
        "authors" : [{
        "name" : "Name",
        "email" : "[email protected]"
        }],
        "keywords" : [  
        "keywords"
        ],
        "license" : [
        "MIT"
        ],
        "require": {
        "php": ">=5.2.0",
        "symfony/console": "~2.0"
        },
        "autoload" : {
        "psr-0" : {
            "vendor\\package" : ""
        }
        },
        "target-dir" : "vendor/package"
    }