Answers.Body: <p>Currently the Plugin Store requires non-development dependencies in your <code>composer.json</code> file.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-11-02T23:46:12.433Z
Answers.Text: Great thanks, that clears things up! So I will give the alternate API client a try, since it's on Packagist and looks easy to implement.
Answers.UserDisplayName: Dalton Rooney
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-11-02T23:07:24.710Z
Answers.LastActivityDate: 2018-11-02T23:07:24.710Z
Answers.UserDisplayName: Brad Bell
Body: <p>I recently put together a basic <a href="https://github.com/madebyraygun/constant-contact" rel="nofollow noreferrer">Constant Contact plugin</a> for a project, and I'd like to clean it up and improve it for a public release. The problem is that it requires a development version of the Constant Contact SDK for compatibility with PHP 7+. I did this by adding a custom repository to the composer.json file pointing to the github repo, and then requiring the development branch. </p>
  
  <pre><code>"repositories": [
    {
      "type": "git",
      "url": "https://github.com/constantcontact/php-sdk.git"
    }
  ],
  "require": {
    "craftcms/cms": "^3.0.0-RC1",
    "constantcontact/constantcontact": "dev-development"
  },
  </code></pre>
  
  <p>In order for this to work, I had to change the stability requirements in my main composer.json file:</p>
  
  <pre><code>"minimum-stability": "dev",
  "prefer-stable" : true,
  </code></pre>
  
  <p>It seems to me this would not be ideal for a plugin in the Plugin Store. Is packaging all of the dependencies up into a vendor subfolder within the project a better option?</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2018-11-02T22:53:10.200Z
Comments.Text: Hmmm... maybe I should have used this alternate client: https://github.com/classy-org/constantcontact-php-client ... probably would have made things a lot easier.
Comments.UserDisplayName: Dalton Rooney
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2018-11-14T22:45:18.020Z
Comments.Text: Updated with the alternate API client and released in the plugin store! https://github.com/madebyraygun/constant-contact
Comments.UserDisplayName: Dalton Rooney
Tags: <plugin-development>
Title: Can plugins in the Plugin Store require development versions of libraries via Composer?
ThreadText: # Can plugins in the Plugin Store require development versions of libraries via Composer?
  
  (Asked by: username_0 on 2018-11-02)
  
  I recently put together a basic [Constant Contact plugin](https://github.com/madebyraygun/constant-contact) for a project, and I'd like to clean it up and improve it for a public release. The problem is that it requires a development version of the Constant Contact SDK for compatibility with PHP 7+. I did this by adding a custom repository to the composer.json file pointing to the github repo, and then requiring the development branch.
  
  ```
  "repositories": [
    {
      "type": "git",
      "url": "https://github.com/constantcontact/php-sdk.git"
    }
  ],
  "require": {
    "craftcms/cms": "^3.0.0-RC1",
    "constantcontact/constantcontact": "dev-development"
  },
  
  ```
  
  In order for this to work, I had to change the stability requirements in my main composer.json file:
  
  ```
  "minimum-stability": "dev",
  "prefer-stable" : true,
  
  ```
  
  It seems to me this would not be ideal for a plugin in the Plugin Store. Is packaging all of the dependencies up into a vendor subfolder within the project a better option?
  
  **Tags:** plugin-development
  
  > **Comments:**
  > **username_0**: Hmmm... maybe I should have used this alternate client: https://github.com/classy-org/constantcontact-php-client ... probably would have made things a lot easier.  
  > **username_0**: Updated with the alternate API client and released in the plugin store! https://github.com/madebyraygun/constant-contact  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2018-11-02. Score: 1 | Accepted answer
  
  Currently the Plugin Store requires non-development dependencies in your `composer.json` file.
  
  > **Comments:**
  > **username_0**: Great thanks, that clears things up! So I will give the alternate API client a try, since it's on Packagist and looks easy to implement.  
  
  ---
  
  