Release v4.0

v4.0 has been released ! Theme of this release is to simplify repository management. The master repository was too central and something has to be done!

Repository management the easy way

The biggest obvious change is about indexing/converting

Indexing and converting can require 2 commits in 2 different repositories - not really easy to do. Now it’s over !

  • index command disappeared and only convert remains
  • anthology is no more and has been splitted accross repositories (artifacts and .fbprojects)
  • each repository maintains its own part of the projects tree (.fbprojects) and is consolidated on push alongside binary artifacts (.full-build/bin/.fbprojects) This will be now easier when changing project dependencies.

Ignore

Conversion can be less destructive than before (removal of Paket files, packages.config…). Just create a .fbignore file in repository root and list files you wish not to delete (wildcards are supported too).

Baseline

Baseline is essential to deal with production version or generating new artifacts. Unfortunately it was poorly implemented before: using a file keeping track of all repository hashes. Now it’s far better: a tag is used accross repository avoiding adding useless commits in master repository. Moreover, this will avoid branching master repository when working in branch. Be sure to understand how “branch” command work!

Environment variables

Two new environment variables are now available:

  • FB_REPO_BRANCH: default repository branch
  • FB_BRANCH: current branch Now supercharged scripts can be implemented ;-)

Docker

Docker package is available since long but was not really helpful. Now an artifact is generated from the docker image (image is saved). Just load it in your favorite registry and deploy it easily !

Breaking changes

Commands are now using a syntax. This is easier to remember and getting help. In doubt, ask for help !

Contributors for v4.0 release

  • Pierre Chalamet
Written on January 30, 2017