Update package

Create branch for working on package update:

[hunter]> git checkout master
[hunter]> git checkout -b pr.hunter_box_1

Calculate SHA1 of release:

> wget https://github.com/hunterbox/hunter_box_1/archive/v1.0.1.tar.gz
> openssl sha1 v1.0.1.tar.gz
SHA1(v1.0.1.tar.gz)= 10d046eec6c8b0aabd28bd3d1b99faf6beeb226b

Add URL and SHA1 to corresponding hunter.cmake:

--- /home/docs/checkouts/readthedocs.org/user_builds/pol51-hunter/checkouts/latest/docs/creating-new/hunter.cmake
+++ /home/docs/checkouts/readthedocs.org/user_builds/pol51-hunter/checkouts/latest/docs/creating-new/hunter-NEW.cmake
@@ -19,6 +19,17 @@
     4fa7fe75629f148a61cedc6ba0bce74f177a6747
 )
 
+hunter_add_version(
+    PACKAGE_NAME
+    hunter_box_1
+    VERSION
+    1.0.1
+    URL
+    "https://github.com/hunterbox/hunter_box_1/archive/v1.0.1.tar.gz"
+    SHA1
+    10d046eec6c8b0aabd28bd3d1b99faf6beeb226b
+)
+
 hunter_pick_scheme(DEFAULT url_sha1_cmake)
 hunter_cacheable(hunter_box_1)
 hunter_download(PACKAGE_NAME hunter_box_1)

Hint

Put new hunter_add_version at the bottom of file, diff will look prettier in this case.

Update default version in cmake/configs/default.cmake:

--- /home/docs/checkouts/readthedocs.org/user_builds/pol51-hunter/checkouts/latest/docs/creating-new/default.cmake
+++ /home/docs/checkouts/readthedocs.org/user_builds/pol51-hunter/checkouts/latest/docs/creating-new/default-NEW.cmake
@@ -181,7 +181,7 @@
 hunter_config(glproto VERSION 1.4.17)
 hunter_config(half VERSION 1.1.0-p1)
 hunter_config(hdf5 VERSION 1.8.15-p1)
-hunter_config(hunter_box_1 VERSION 1.0.0)
+hunter_config(hunter_box_1 VERSION 1.0.1)
 hunter_config(ice VERSION 1.0.8)
 hunter_config(imshow VERSION 1.0.0-p0)
 hunter_config(inputproto VERSION 2.2)

Commit changes:

[hunter]> git add cmake/projects/hunter_box_1/hunter.cmake
[hunter]> git add cmake/configs/default.cmake
[hunter]> git commit -m "Update 'hunter_box_1' to v1.0.1"

Testing

Note

Check Create package: CI testing page for registering services and branches/remotes description.

Fetch latest CI configs, you may need to run git pull if you have pkg.hunter_box_1 locally:

[hunter]> git fetch ci
[hunter]> git checkout pkg.hunter_box_1
[hunter]> git pull

Create temporary branch test.hunter_box_1 for testing basing on pkg.hunter_box_1:

[hunter]> git checkout -b test.hunter_box_1

Merge it with hunter_box_1 package updates:

[hunter]> git merge pr.hunter_box_1

Push changes to your Hunter fork remote to start tests:

[hunter]> git push -u origin test.hunter_box_1
Branches

Add toolchains

If new version of package fix some build:

  • Add new version to master
  • Tests against old set of toolchains
  • New version merged to master
  • Send pull request to pkg.hunter_box_1 to enable new toolchains

Remove toolchains

If new version broke some toolchain:

  • Disable toolchains in pkg.hunter_box_1
  • Add new version to master
  • Tests against new set of toolchains without broken