diff --git a/templates/README.md b/templates/README.md index 7ef0a7a42cab2dece00710a44fb2b65f44b98b4a..08e5473e7d5627d39640d8525e9c499e8b377f8c 100644 --- a/templates/README.md +++ b/templates/README.md @@ -52,7 +52,65 @@ You also need to enable the following options on your project: of `coverage report` -## 1.5 Conda recipe +#### New package dependencies + +If your package depends on third-party packages that are not in the CI, you should +perform some extra steps: + +1. add the package in the ``meta.yml`` file of bob-devel in ``bob.conda/conda/bob-devel`` +```yaml + requirements: + host: + - python {{ python }} + - {{ compiler('c') }} + - {{ compiler('cxx') }} + # Dependency list of bob packages. Everything is pinned to allow for better + # reproducibility. Please keep this list sorted. It is recommended that you + # update all dependencies at once (to their latest version) each time you + # modify the dependencies here. Use ``conda search`` to find the latest + # version of packages. + - boost 1.65.1 + - caffe 1.0 # [linux] + - click 6.7 + - click-plugins 1.0.3 + - .. + - [your dependency here] +``` + +2. in the same file, update the version with the current date. +```yaml + package: + name: bob-devel + version: 2018.05.02 <-- HERE +``` + +3. update the beat-devel and bob-devel version in the ``meta.yml`` file in ``bob.conda/conda/beat-devel`` +```yaml + package: + name: beat-devel + version: 2018.05.02 <-- HERE + + [...] + + requirements: + host: + - python {{ python }} + - bob-devel 2018.05.02 <-- HERE + - requests 2.18.4 +``` + +4. update the ``conda_build_config.yaml`` in ``bob.admin/gitlab/`` with your dependencies, + and with the updated version of bob-devel and beat-devel. + + see [here](https://gitlab.idiap.ch/bob/bob.conda/merge_requests/363) and [here](https://gitlab.idiap.ch/bob/bob.admin/merge_requests/89) + for concrete examples on how to do this. + + **Note that this step should be performed after bob.conda's pipeline on master is finished** + (i.e. perform steps 1 to 3 in a branch, open a merge request and wait for it to be merged, and wait + for the new master branch to be "green"). + + +## 2. Conda recipe The CI system is based on conda recipes to build the package. The recipes must be located in the `conda` folder of each package. You can start modifying the @@ -300,7 +358,7 @@ packages typically require this download command to be added in the - bob_dbmanage.py {{ name.replace('bob.db.', '') }} download --missing ``` -## 2. Licensing +## 3. Licensing Verify if the license of your package satisfies what is written on our spreadsheet: @@ -376,7 +434,7 @@ $ sed -i "s;github.com/bioidiap;gitlab.idiap.ch/bob;g" setup.py ``` -## 3. Buildout +## 4. Buildout The default buildout file `buildout.cfg` should buildout _from the installed distribution_ and avoid mr.developer checkouts. If you have one of those, move @@ -392,7 +450,7 @@ $ sed -i "s;github.com/bioidiap;gitlab.idiap.ch/bob;g" develop.cfg $ git add buildout.cfg ``` -## 4. README +## 5. README Changes are supposed to make the README smaller and easier to maintain. As of today, many packages contain outdated installation instructions or outdated @@ -422,7 +480,7 @@ Replace the following tags by hand if you don't like/trust the `sed` lines above C++ and python.` -## 5. Bootstrap +## 6. Bootstrap Make sure to **remove** your bootstrap file from your package. Since a few releases, buildout is not supposed to be bootstrapped anymore as setuptools @@ -432,7 +490,7 @@ Also make sure to remove any mention of `bootstrap-buildout.py` from the `MANIFEST.in` file. -## 6. doc/conf.py +## 7. doc/conf.py This file needs updating to support newer versions of Sphinx and to get it in sync with the rest of the documentation. Do this: @@ -469,6 +527,6 @@ text files to be placed along `conf.py` (on the same directory): resource**. You should first try to fix the errors as best as you can, so your documentation links are properly working. -## 7. Update the logo on your project +## 8. Update the logo on your project Please update the logo of your project (on the Settings), just set it to [this one](templates/bob-128x128.png).