User Tools

Site Tools


map_suite_via_nuget

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
map_suite_via_nuget [2017/03/13 10:06]
kevinlaw
map_suite_via_nuget [2017/03/30 14:59] (current)
benbai
Line 1: Line 1:
 ====== Map Suite via NuGet ====== ====== Map Suite via NuGet ======
  
-A big difference in Map Suite 10.0 is that we are starting ​to provide our products via NuGet. ​Now we can add references to Map Suite products ​by NuGet easily. ​For more details about how we approach thisplease refer to http://wiki.thinkgeo.com/​wiki/​repackaged_nuget_packages.+In Map Suite 10.0 we have started ​to provide our products via packages on NuGet. ​ This will allow references to our products ​to be added and updated ​easily. ​ We have three different types of packages on NuGet: feature packagesdependency packages, and product packagesThese will be explained in detail below Each of these packages will also have two different build branches: production and development.
  
-===== Versioning Strategy ​=====+===== Map Suite NuGet Packages ​=====
  
-New version strategy comes out with Map Suite 10.0Now we maintain LTS(long-term support) version as well a develop versionLTS releases were recommended ​for most users, giving them a stable maintenance ​and only contains bug fixDevelop version contains bug fix and new features, it's suitable ​for users who want to try new features from Map Suite.+We have three different types of packages: feature packages, dependency packages, and product packages You can tell the difference between these packages by their name ​Feature Packages begin with "​ThinkGeo.MapSuite"​ and are named for the namespace ​and class that they containDependency Packages begin with "​MapSuiteDependency" ​and contain repackaged third party dependencies. Product packages are named for what product they support and their name ends with either Standard or Barebone.
  
-==== Hot Fixes ====+==== Feature Packages ​====
  
-If there are any bug fixed in Map Suite productswe will update the LTS version. You can get the latest LTS version ​by click update ​in NuGet Package Manager.+Feature packages contain one specific featuresuch as a data source, and can be added or removed from your product as needed. The package name is usually ​the same as the assembly and the name of the class that it provides is prefixed ​by the namespace that it is added in.
  
-Whenever a hotfix is applied to our source, the specific package version will increase by 1. +==== Product Packages ====
  
-==== Minor Release ​====+Product packages are a collection of packages used in specific products. ​ Each product has a Standard version and a Barebone version which each provide different levels of features with Standard having most of the features that you will need and Barebone not including only the most basic features. You can install and uninstall feature packages as desired on top of these. ​ You can see more about the coverage on each of the products on the product'​s coverage page. For example: [[map_suite_desktop_for_winforms_package_coverage|Map Suite Desktop For WinForms Package Coverage]]. 
 +==== Dependency Packages ​====
  
-We plan to publish a minor release for LTS each xx weeks(xxx days)In the minor release, we will merge the new features from 11.0.0-beta into 10.0.0 and test carefully, then release as long term support version+Dependency packages are third party dependencies that we have repackaged ​to references within our packages There should never be need to install these manually 
  
-===== Daily Build through NuGet =====  +You can find more information on which versions our dependencies use [[map_suite_dependencies|here]].
-We will release a new version of Develop to NuGet every day, you can get the latest feature from here. The version number is suffixed with beta***.  ​+
  
-For example, ​if you want to get the daily NuGet package ​for MapSuiteDesktopForWinForms-StandardPlease check following ​steps +==== Why We Repackage ==== 
-  + 
-  - Open NuGet Package Manager. +The 3rd party dependencies included in the Dependency Packages are needed by our feature packages. ​ Sometimes these packages can release updates that break compatibility with our APIs and some of the packages do not provide older versions for download. ​ Because of these issues, we repackage the dependencies so that we have complete control of which versions of the dependency packages we use. 
-  - Input "​MapSuiteDesktopForWinForms-Standard" ​in search field. + 
-  - Check the Include ​prerelease ​option ​on right side of the search field. ​{{mapsuite10:​nuget-select-prerelease.png}} +Repackaging also allows us to keep the dependencies for each of our feature packages well organized and consistent. 
-  - Select ​the "​MapSuiteDesktopForWinForms-Standard"​all available versions include daily package will be listed. + 
-  - Install ​the daily package you want by clicking ​the install button. ​+===== Production Builds (Stable) through NuGet ===== 
 + 
 +Production builds in NuGet are our well-tested assemblies and for the most part the ones we suggest using. ​ They all have a three-number version number which relates to the Major, Minor, and Patch versions.  ​For example, ​10.1.2 where 10 is the major version, 1 is the minor version, and 2 is the patch version. 
 + 
 +==== Hotfix ==== 
 + 
 +Hotfixes are released when we want a code change to be immediately applied ​to the production build. ​ These are generally bug fixes and will rarely, if ever add features. ​ There will be no API breaking changes and typically new APIs will not be added in a hotfix release. 
 + 
 +==== Minor Release ====  
 + 
 +Minor releases will be periodically released to add new features once they have been tested. ​ These updates will also contain all of the hotfix changes released previously. ​ For example 10.2.0 will include every change in hotfixes for the previous minor release version. 
 + 
 + 
 +===== Daily Development Build (Unstable) through ​NuGet ===== 
 + 
 +The Development Branch is built daily which means that new changes will be available the day after they are made.  These versions will always have the latest features as we add them, but may not be tested fully yet, and the APIs for the new features may change through development. The version numbers for daily builds are the next major version suffixed with "​beta"​ and a build number. For example: 11.0.0-Beta002. 
 + 
 +If you want to install the daily builds, you can follow these steps: 
 + 
 +  - Open NuGet Package Manager 
 +  - Input package you wish to install ​in the search field. 
 +  - Check "Include ​Prerelease" ​option ​to the right of the search field. 
 +  - In the version dropdownselect an option with a beta version ​listed ​such as 11.0.0-Beta001
 +  - Install ​using the install button. ​  
 +{{mapsuite10:​installing_prerelease_packages_on_nuget.png? ​ }}
map_suite_via_nuget.1489399577.txt.gz · Last modified: 2017/03/13 10:06 by kevinlaw