> For the complete documentation index, see [llms.txt](https://jiribeloch.gitbook.io/poshtrader-help-center/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jiribeloch.gitbook.io/poshtrader-help-center/authors/updates.md).

# Releasing an update

Steps to release a new version

## 1. Increment the version number in Item Attributes

It's a good practice to use semantic versioning that is a universal and widely used way of software versioning. It contains three components, in the format of **`Major`.`Minor`.`Patch`** where:

* **Major** version when you make incompatible API changes.
* **Minor** version when you add functionality in a backward-compatible manner.
* **Patch** version when you make backward-compatible bug fixes.

```csharp
[Item(ID, Name = "Sample Indicator", Version = "1.1.0")]
```

## 2. Build your assembly and create a new distribution file

To create a distribution file, please follow the steps below that are different for each trading platform.

{% tabs %}
{% tab title="cTrader" %}

1. Navigate to **Automate** tab in the left sidebar
2. Select an indicator/robot you wish to export
3. Press **`Build`** (Do **NOT** use **`Build with Source Code`** which would make your code unprotected!)

{% hint style="info" %}
After you finish building your indicator/cBot you will find the distribution file as a **.algo** file located in **%UserProfile%\Documents\cAlgo\Sources\\** in **Indicators** or **Robots** folder.
{% endhint %}
{% endtab %}

{% tab title="NinjaTrader 8" %}

1. From the **Control Center** window select the menu **Tools > Export > NinjaScript Add-On…** to open the **“Export NinjaScript”** dialog window
2. Select the option **“Export as compiled assembly”**
3. Select **“Protect compiled assembly”** (For information on protection [read here](https://ninjatrader.com/support/helpGuides/nt8/protection_dll_security.htm))
4. Press **`Add`** button
5. Select all of the files required, including `References – PoshTrader.Author` and press **`OK`**
6. A list of all files that will be exported will be shown
7. Press the **`Export`** button to export the selected files
8. A file dialog will open where you can choose the location to create your distribution file.
9. Add **`PoshTrader.Author.dll`** to the exported archive file.

{% hint style="info" %}
By default, the NinjaScript Archive File (**.zip**) file will be created in **%UserProfile%\Documents\NinjaTrader 8\bin\Custom\ExportNinjaScript**
{% endhint %}
{% endtab %}
{% endtabs %}

## 3. Update your product on PoshTrader Marketplace

The last step is updating product details listed on the marketplace.

1. Navigate to your [Author Dashboard](https://poshtrader.com/dashboard/?task=products) products listing
2. Click `Edit` on the product you are updating
3. Update **Download File** by uploading the new one
4. Change product **Version** to match Item Attributes of the file uploaded
5. Add details about what changed in the **Changelog**
6. Click **`SUBMIT`** to save changes

## 4. Your customers will be notified that there's a new version

Once you submitted the changes, all your customers will be able to [Update](/poshtrader-help-center/products/updates-and-support.md) their copy of the product.
