summary refs log tree commit diff
path: root/pkgs/applications/version-management
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2018-11-01 16:47:42 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2018-11-01 16:47:42 -0400
commite3082c313b75f13e8e1049673efe6a42dcd1499f (patch)
tree0d11815c9bed24ca9f27d3839ac0f9577d8308e5 /pkgs/applications/version-management
parentf2ed7c7af9f5b2db5e88b78e192b470c47f4c4fd (diff)
parentcc41aefe4485dea399930b8d173c26e438cb5e22 (diff)
downloadnixlib-e3082c313b75f13e8e1049673efe6a42dcd1499f.tar
nixlib-e3082c313b75f13e8e1049673efe6a42dcd1499f.tar.gz
nixlib-e3082c313b75f13e8e1049673efe6a42dcd1499f.tar.bz2
nixlib-e3082c313b75f13e8e1049673efe6a42dcd1499f.tar.lz
nixlib-e3082c313b75f13e8e1049673efe6a42dcd1499f.tar.xz
nixlib-e3082c313b75f13e8e1049673efe6a42dcd1499f.tar.zst
nixlib-e3082c313b75f13e8e1049673efe6a42dcd1499f.zip
Merge remote-tracking branch 'upstream/master' into release-lib-cleanup
Diffstat (limited to 'pkgs/applications/version-management')
-rw-r--r--pkgs/applications/version-management/bazaar/default.nix5
-rw-r--r--pkgs/applications/version-management/bazaar/tools.nix7
-rw-r--r--pkgs/applications/version-management/cvs2svn/default.nix39
-rw-r--r--pkgs/applications/version-management/fossil/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/cgit/default.nix5
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix7
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-appraise/default.nix24
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-bug/default.nix32
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-bug/deps.nix417
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-crypt/default.nix9
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-extras/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-imerge/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-recent/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix11
-rw-r--r--pkgs/applications/version-management/git-and-tools/grv/default.nix14
-rw-r--r--pkgs/applications/version-management/git-and-tools/hub/default.nix9
-rw-r--r--pkgs/applications/version-management/git-and-tools/pass-git-helper/default.nix22
-rw-r--r--pkgs/applications/version-management/git-and-tools/pre-commit/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/stgit/default.nix21
-rw-r--r--pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/tig/default.nix4
-rw-r--r--pkgs/applications/version-management/git-lfs/default.nix6
-rw-r--r--pkgs/applications/version-management/git-review/default.nix4
-rw-r--r--pkgs/applications/version-management/gitaly/Gemfile11
-rw-r--r--pkgs/applications/version-management/gitaly/Gemfile.lock76
-rw-r--r--pkgs/applications/version-management/gitaly/default.nix8
-rw-r--r--pkgs/applications/version-management/gitaly/gemset.nix95
-rw-r--r--pkgs/applications/version-management/gitea/default.nix14
-rw-r--r--pkgs/applications/version-management/gitkraken/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab-shell/default.nix9
-rw-r--r--pkgs/applications/version-management/gitlab-shell/fixes.patch16
-rw-r--r--pkgs/applications/version-management/gitlab-workhorse/default.nix16
-rw-r--r--pkgs/applications/version-management/gitlab-workhorse/deterministic-build.patch11
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix78
-rw-r--r--pkgs/applications/version-management/gitlab/fix-36783.patch29
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile (renamed from pkgs/applications/version-management/gitlab/Gemfile)112
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile.lock (renamed from pkgs/applications/version-management/gitlab/Gemfile.lock)392
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ce/gemset.nix (renamed from pkgs/applications/version-management/gitlab/gemset.nix)617
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile456
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock1227
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix3654
-rw-r--r--pkgs/applications/version-management/gitolite/default.nix6
-rw-r--r--pkgs/applications/version-management/gogs/default.nix4
-rw-r--r--pkgs/applications/version-management/guitone/default.nix3
-rw-r--r--pkgs/applications/version-management/meld/default.nix2
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix4
-rw-r--r--pkgs/applications/version-management/monotone/default.nix9
-rw-r--r--pkgs/applications/version-management/mr/default.nix2
-rw-r--r--pkgs/applications/version-management/pijul/default.nix23
-rw-r--r--pkgs/applications/version-management/pijul/libpijul.patch61
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile64
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.lock48
-rw-r--r--pkgs/applications/version-management/redmine/default.nix9
-rw-r--r--pkgs/applications/version-management/redmine/gemset.nix151
-rw-r--r--pkgs/applications/version-management/smartgithg/default.nix4
-rw-r--r--pkgs/applications/version-management/subversion/default.nix4
-rw-r--r--pkgs/applications/version-management/tortoisehg/default.nix4
-rw-r--r--pkgs/applications/version-management/vcprompt/default.nix1
58 files changed, 6944 insertions, 942 deletions
diff --git a/pkgs/applications/version-management/bazaar/default.nix b/pkgs/applications/version-management/bazaar/default.nix
index fea6fb358303..097c1e86a897 100644
--- a/pkgs/applications/version-management/bazaar/default.nix
+++ b/pkgs/applications/version-management/bazaar/default.nix
@@ -27,9 +27,10 @@ python2Packages.buildPythonApplication rec {
       --subst-var-by certPath /etc/ssl/certs/ca-certificates.crt
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://bazaar-vcs.org/;
     description = "A distributed version control system that Just Works";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/version-management/bazaar/tools.nix b/pkgs/applications/version-management/bazaar/tools.nix
index 0ad3c6079acd..82c87f30b711 100644
--- a/pkgs/applications/version-management/bazaar/tools.nix
+++ b/pkgs/applications/version-management/bazaar/tools.nix
@@ -3,7 +3,7 @@
 python2Packages.buildPythonApplication rec {
   name = "bzr-tools-${version}";
   version = "2.6.0";
-  
+
   src = fetchurl {
     url = "http://launchpad.net/bzrtools/stable/${version}/+download/bzrtools-${version}.tar.gz";
     sha256 = "0n3zzc6jf5866kfhmrnya1vdr2ja137a45qrzsz8vz6sc6xgn5wb";
@@ -11,9 +11,10 @@ python2Packages.buildPythonApplication rec {
 
   doCheck = false;
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Bazaar plugins";
     homepage = http://wiki.bazaar.canonical.com/BzrTools;
-    platforms = stdenv.lib.platforms.unix;
+    platforms = platforms.unix;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/version-management/cvs2svn/default.nix b/pkgs/applications/version-management/cvs2svn/default.nix
index 90a9f26045f3..a2ebb8195db4 100644
--- a/pkgs/applications/version-management/cvs2svn/default.nix
+++ b/pkgs/applications/version-management/cvs2svn/default.nix
@@ -1,32 +1,37 @@
-{stdenv, lib, fetchurl, python2, cvs, makeWrapper}:
+{ lib, fetchurl, makeWrapper
+, python2Packages
+, cvs, subversion, git, bazaar
+}:
 
-stdenv.mkDerivation rec {
-  name = "cvs2svn-2.4.0";
+python2Packages.buildPythonApplication  rec {
+  name = "cvs2svn-${version}";
+  version = "2.5.0";
 
   src = fetchurl {
-    url = "http://cvs2svn.tigris.org/files/documents/1462/49237/${name}.tar.gz";
-    sha256 = "05piyrcp81a1jgjm66xhq7h1sscx42ccjqaw30h40dxlwz1pyrx6";
+    url = "http://cvs2svn.tigris.org/files/documents/1462/49543/${name}.tar.gz";
+    sha256 = "1ska0z15sjhyfi860rjazz9ya1gxbf5c0h8dfqwz88h7fccd22b4";
   };
 
-  buildInputs = [python2 makeWrapper];
+  buildInputs = [ makeWrapper ];
 
-  dontBuild = true;
-  installPhase = ''
-    python ./setup.py install --prefix=$out
+  checkInputs = [ subversion git bazaar ];
+
+  checkPhase = "python run-tests.py";
+
+  doCheck = false; # Couldn't find node 'transaction...' in expected output tree
+
+  postInstall = ''
     for i in bzr svn git; do
       wrapProgram $out/bin/cvs2$i \
-          --prefix PATH : "${lib.makeBinPath [ cvs ]}" \
-          --set PYTHONPATH "$(toPythonPath $out):$PYTHONPATH"
+          --prefix PATH : "${lib.makeBinPath [ cvs ]}"
     done
   '';
 
-  /* !!! maybe we should absolutise the program names in
-     $out/lib/python2.4/site-packages/cvs2svn_lib/config.py. */
-
-  meta = {
+  meta = with lib; {
     description = "A tool to convert CVS repositories to Subversion repositories";
     homepage = http://cvs2svn.tigris.org/;
-    maintainers = [ lib.maintainers.makefu ];
-    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ maintainers.makefu ];
+    platforms = platforms.unix;
+    license = licenses.asl20;
   };
 }
diff --git a/pkgs/applications/version-management/fossil/default.nix b/pkgs/applications/version-management/fossil/default.nix
index b65ada145b9e..cf58731b46c2 100644
--- a/pkgs/applications/version-management/fossil/default.nix
+++ b/pkgs/applications/version-management/fossil/default.nix
@@ -5,7 +5,7 @@
 
 stdenv.mkDerivation rec {
   name = "fossil-${version}";
-  version = "2.6";
+  version = "2.7";
 
   src = fetchurl {
     urls =
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
         "https://www.fossil-scm.org/index.html/uv/fossil-src-${version}.tar.gz"
       ];
     name = "${name}.tar.gz";
-    sha256 = "1nbfzxwnq66f8162nmddd22xn3nyazqr16kka2c1gghqb5ar99vn";
+    sha256 = "0g032502lx4l1lvkczh8v7g0i90vbyriw0lmvi3mwjfp668ka91c";
   };
 
   buildInputs = [ zlib openssl readline sqlite which ed ]
diff --git a/pkgs/applications/version-management/git-and-tools/cgit/default.nix b/pkgs/applications/version-management/git-and-tools/cgit/default.nix
index 3fb227909040..5bfd74344e8c 100644
--- a/pkgs/applications/version-management/git-and-tools/cgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/cgit/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, openssl, zlib, asciidoc, libxml2, libxslt
 , docbook_xsl, pkgconfig, luajit
-, gzip, bzip2, xz
+, groff, gzip, bzip2, xz
 , python, wrapPython, pygments, markdown
 }:
 
@@ -32,6 +32,9 @@ stdenv.mkDerivation rec {
         -e 's|"bzip2"|"${bzip2.bin}/bin/bzip2"|' \
         -e 's|"xz"|"${xz.bin}/bin/xz"|' \
         -i ui-snapshot.c
+
+    substituteInPlace filters/html-converters/man2html \
+      --replace 'groff' '${groff}/bin/groff'
   '';
 
   # Give cgit a git source tree and pass configuration parameters (as make
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index 2093c86b050c..6661b4aa2282 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -4,7 +4,6 @@
 args @ {config, lib, pkgs}: with args; with pkgs;
 let
   gitBase = callPackage ./git {
-    texinfo = texinfo5;
     svnSupport = false;         # for git-svn support
     guiSupport = false;         # requires tcl/tk
     sendEmailSupport = false;   # requires plenty of perl libraries
@@ -31,6 +30,8 @@ let
 
   git = appendToName "minimal" gitBase;
 
+  git-appraise = callPackage ./git-appraise {};
+
   git-fame = callPackage ./git-fame {};
 
   # The full-featured Git.
@@ -56,6 +57,8 @@ let
 
   git-annex-remote-rclone = callPackage ./git-annex-remote-rclone { };
 
+  git-bug = callPackage ./git-bug { };
+
   # support for bugzilla
   git-bz = callPackage ./git-bz { };
 
@@ -113,6 +116,8 @@ let
 
   pre-commit = callPackage ./pre-commit { };
 
+  pass-git-helper = python3Packages.callPackage ./pass-git-helper { };
+
   qgit = qt5.callPackage ./qgit { };
 
   stgit = callPackage ./stgit {
diff --git a/pkgs/applications/version-management/git-and-tools/git-appraise/default.nix b/pkgs/applications/version-management/git-and-tools/git-appraise/default.nix
new file mode 100644
index 000000000000..185ed38b5db0
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-appraise/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "git-appraise-unstable-${version}";
+  version = "2018-02-26";
+  rev = "2414523905939525559e4b2498c5597f86193b61";
+
+  goPackagePath = "github.com/google/git-appraise";
+
+  src = fetchFromGitHub {
+    inherit rev;
+    owner = "google";
+    repo = "git-appraise";
+    sha256 = "04xkp1jpas1dfms6i9j09bgkydih0q10nhwn75w9ds8hi2qaa3sa";
+  };
+
+  meta = {
+    description = "Distributed code review system for Git repos";
+    homepage = https://github.com/google/git-appraise;
+    license = stdenv.lib.licenses.asl20;
+    platforms = stdenv.lib.platforms.all;
+    maintainers = [ stdenv.lib.maintainers.vdemeester ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-bug/default.nix b/pkgs/applications/version-management/git-and-tools/git-bug/default.nix
new file mode 100644
index 000000000000..eabc9258e29a
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-bug/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "git-bug-${version}";
+  version = "0.4.0";
+  rev = "2ab2412771d58a1b1f3bfeb5a6e9da2e683b0e12";
+  goPackagePath = "github.com/MichaelMure/git-bug";
+
+  src = fetchFromGitHub {
+    inherit rev;
+    owner = "MichaelMure";
+    repo = "git-bug";
+    sha256 = "1zyvyg0p5h71wvyxrzkr1bwddxm3x8p44n6wh9ccfdxp8d2k6k25";
+  };
+
+  goDeps = ./deps.nix;
+
+  postInstall = ''
+    cd go/src/${goPackagePath}
+    install -D -m 0644 misc/bash_completion/git-bug "$bin/etc/bash_completion.d/git-bug"
+    install -D -m 0644 misc/zsh_completion/git-bug "$bin/share/zsh/site-functions/git-bug"
+    install -D -m 0644 -t "$bin/share/man/man1" doc/man/*
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Distributed bug tracker embedded in Git";
+    homepage = https://github.com/MichaelMure/git-bug;
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ royneary ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-bug/deps.nix b/pkgs/applications/version-management/git-and-tools/git-bug/deps.nix
new file mode 100644
index 000000000000..77d79602a9c1
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-bug/deps.nix
@@ -0,0 +1,417 @@
+# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
+[
+  {
+    goPackagePath  = "github.com/99designs/gqlgen";
+    fetch = {
+      type = "git";
+      url = "https://github.com/99designs/gqlgen";
+      rev =  "636435b68700211441303f1a5ed92f3768ba5774";
+      sha256 = "0d4sr6kpyn3zq3kpvk8lizy7hdpcw3fjmv7fbv2m1k9w8fzjawrz";
+    };
+  }
+  {
+    goPackagePath  = "github.com/agnivade/levenshtein";
+    fetch = {
+      type = "git";
+      url = "https://github.com/agnivade/levenshtein";
+      rev =  "3d21ba515fe27b856f230847e856431ae1724adc";
+      sha256 = "0dym3k3ycsj0zj0p4dhdp7gd2hm7c7pyh2wii1mdbmpdyipy99cd";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cheekybits/genny";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cheekybits/genny";
+      rev =  "9127e812e1e9e501ce899a18121d316ecb52e4ba";
+      sha256 = "1z57ga9c2sjnl5ngqgb1ap0zqv36sk0rarm02bbbkipz4m9yabjg";
+    };
+  }
+  {
+    goPackagePath  = "github.com/corpix/uarand";
+    fetch = {
+      type = "git";
+      url = "https://github.com/corpix/uarand";
+      rev =  "2b8494104d86337cdd41d0a49cbed8e4583c0ab4";
+      sha256 = "06ml5m8l9wbr96gvyg6z1syawn797f8kmq74nhgry3vqpngyb6yn";
+    };
+  }
+  {
+    goPackagePath  = "github.com/cpuguy83/go-md2man";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev =  "20f5889cbdc3c73dbd2862796665e7c465ade7d1";
+      sha256 = "1w22dfdamsq63b5rvalh9k2y7rbwfkkjs7vm9vd4a13h2ql70lg2";
+    };
+  }
+  {
+    goPackagePath  = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev =  "8991bc29aa16c548c550c7ff78260e27b9ab7c73";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath  = "github.com/dustin/go-humanize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustin/go-humanize";
+      rev =  "9f541cc9db5d55bce703bd99987c9d5cb8eea45e";
+      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
+    };
+  }
+  {
+    goPackagePath  = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev =  "5b77d2a35fb0ede96d138fc9a99f5c9b6aef11b4";
+      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-test/deep";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-test/deep";
+      rev =  "6592d9cc0a499ad2d5f574fde80a2b5c5cc3b4f5";
+      sha256 = "0f4rbdl6qmlq4bzh0443i634bm675bbrkyzwp8wkc1yhdl9qsij7";
+    };
+  }
+  {
+    goPackagePath  = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev =  "aa810b61a9c79d51363740d207bb46cf8e620ed5";
+      sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab";
+    };
+  }
+  {
+    goPackagePath  = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev =  "3af367b6b30c263d47e8895973edcca9a49cf029";
+      sha256 = "1fbv0x27k9sn8svafc0hjwsnckk864lv4yi7bvzrxvmd3d5hskds";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gorilla/context";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/context";
+      rev =  "08b5f424b9271eedf6f9f0ce86cb9396ed337a42";
+      sha256 = "03p4hn87vcmfih0p9w663qbx9lpsf7i7j3lc7yl7n84la3yz63m4";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gorilla/mux";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/mux";
+      rev =  "e3702bed27f0d39777b0b37b664b6280e8ef8fbf";
+      sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2";
+    };
+  }
+  {
+    goPackagePath  = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev =  "ea4d1f681babbce9545c9c5f3d5194a789c89f5b";
+      sha256 = "1bhgs2542qs49p1dafybqxfs2qc072xv41w5nswyrknwyjxxs2a1";
+    };
+  }
+  {
+    goPackagePath  = "github.com/hashicorp/golang-lru";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/golang-lru";
+      rev =  "20f1fb78b0740ba8c3cb143a61e86ba5c8669768";
+      sha256 = "12k2cp2k615fjvfa5hyb9k2alian77wivds8s65diwshwv41939f";
+    };
+  }
+  {
+    goPackagePath  = "github.com/icrowley/fake";
+    fetch = {
+      type = "git";
+      url = "https://github.com/icrowley/fake";
+      rev =  "4178557ae428460c3780a381c824a1f3aceb6325";
+      sha256 = "1mv4bxfphaqbvacy49v4lf4gf2nmadzpmjq0jbdx93wi5bnkc977";
+    };
+  }
+  {
+    goPackagePath  = "github.com/inconshreveable/mousetrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev =  "76626ae9c91c4f2a10f34cad8ce83ea42c93bb75";
+      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
+    };
+  }
+  {
+    goPackagePath  = "github.com/jroimartin/gocui";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jroimartin/gocui";
+      rev =  "c055c87ae801372cd74a0839b972db4f7697ae5f";
+      sha256 = "1b1cbjg925l1c5v3ls8amni9716190yzf847cqs9wjnj82z8qa47";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev =  "167de6bfdfba052fa6b2d3664c8f5272e23c9072";
+      sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev =  "0360b2af4f38e8d38c7fce2a9f4e702702d73a39";
+      sha256 = "06w45aqz2a6yrk25axbly2k5wmsccv8cspb94bfmz4izvw8h927n";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev =  "9e777a8366cce605130a531d2cd6363d07ad7317";
+      sha256 = "0vkrfrz3fzn5n6ix4k8s0cg0b448459sldq8bp4riavsxm932jzb";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev =  "fa473d140ef3c6adf42d6b391fe76707f1f243c8";
+      sha256 = "0f06q4fpzg0c370cvmpsl0iq2apl5nkbz5cd3nba5x5ysmshv1lm";
+    };
+  }
+  {
+    goPackagePath  = "github.com/nsf/termbox-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nsf/termbox-go";
+      rev =  "5c94acc5e6eb520f1bcd183974e01171cc4c23b3";
+      sha256 = "1fi8imdgwvlsgifw2qfl3ww0lsrgkfsimkzz7bnrq41nar78s0fw";
+    };
+  }
+  {
+    goPackagePath  = "github.com/phayes/freeport";
+    fetch = {
+      type = "git";
+      url = "https://github.com/phayes/freeport";
+      rev =  "b8543db493a5ed890c5499e935e2cad7504f3a04";
+      sha256 = "1gwaan8fwmc5lfx4dzymq0jd6z2l1frg83jkmjpm4kw8ay4vr11q";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev =  "645ef00459ed84a119197bfb8d8205042c6df63d";
+      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev =  "792786c7400a136282c1664665ae0a8db921c6c2";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath  = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev =  "55d61fa8aa702f59229e6cff85793c22e580eaf5";
+      sha256 = "0qmavm5d14kj6im6sqzpqnlhpy524428vkn4hnfwknndr9rycmn0";
+    };
+  }
+  {
+    goPackagePath  = "github.com/shurcooL/githubv4";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/githubv4";
+      rev =  "b5f70540eee0ebfb6a27b52fc5b131be76415539";
+      sha256 = "0hrjk16l8jwkhrbzcasp4dflv6hl24hcc4q2md5rn6i8f73dl18h";
+    };
+  }
+  {
+    goPackagePath  = "github.com/shurcooL/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/go";
+      rev =  "9e1955d9fb6e1ee2345ba1f5e71669263e719e27";
+      sha256 = "1lad9bvs75jsn61cfza19739c2c057k0bqxg2b4xz3z3l4w1mkqj";
+    };
+  }
+  {
+    goPackagePath  = "github.com/shurcooL/graphql";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/graphql";
+      rev =  "365899397c9ad12805631fe4c9b2a64be9d74818";
+      sha256 = "10n4id76zpj5g4hr1ry8d9v5cvm039rygrpgdk4ygk198vhr0gwm";
+    };
+  }
+  {
+    goPackagePath  = "github.com/shurcooL/httpfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/httpfs";
+      rev =  "809beceb23714880abc4a382a00c05f89d13b1cc";
+      sha256 = "1hvj5q5kjw83z7f77y03fqfg7fps7pqj2cj2c38x752m0pq4j2w3";
+    };
+  }
+  {
+    goPackagePath  = "github.com/shurcooL/vfsgen";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/vfsgen";
+      rev =  "62bca832be04bd2bcaabd3b68a6b19a7ec044411";
+      sha256 = "1lh8sw7qxs43jj8k9pfn91kfy2033p3il9bcb63whz8zhqw2a16y";
+    };
+  }
+  {
+    goPackagePath  = "github.com/skratchdot/open-golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/skratchdot/open-golang";
+      rev =  "75fb7ed4208cf72d323d7d02fd1a5964a7a9073c";
+      sha256 = "1b67imqbsdvg19vif1q1dfmapxy3v2anagacbql95fwnnw0v8jga";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/cobra";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cobra";
+      rev =  "ef82de70bb3f60c65fb8eebacbb2d122ef517385";
+      sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd";
+    };
+  }
+  {
+    goPackagePath  = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev =  "583c0c0531f06d5278b7d917446061adc344b5cd";
+      sha256 = "0nr4mdpfhhk94hq4ymn5b2sxc47b29p1akxd8b0hx4dvdybmipb5";
+    };
+  }
+  {
+    goPackagePath  = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev =  "f35b8ab0b5a2cef36673838d662e249dd9c94686";
+      sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
+    };
+  }
+  {
+    goPackagePath  = "github.com/vektah/gqlgen";
+    fetch = {
+      type = "git";
+      url = "https://github.com/vektah/gqlgen";
+      rev =  "636435b68700211441303f1a5ed92f3768ba5774";
+      sha256 = "0d4sr6kpyn3zq3kpvk8lizy7hdpcw3fjmv7fbv2m1k9w8fzjawrz";
+    };
+  }
+  {
+    goPackagePath  = "github.com/vektah/gqlparser";
+    fetch = {
+      type = "git";
+      url = "https://github.com/vektah/gqlparser";
+      rev =  "14e83ae06ec152e6d0afb9766a00e0c0918aa8fc";
+      sha256 = "162j259402pa2wb4645z6gplx5g1a2sfk393k2svwgws3bg2bws2";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev =  "0e37d006457bf46f9e6692014ba72ef82c33022c";
+      sha256 = "1fj8rvrhgv5j8pmckzphvm3sqkzhcqp3idkxvgv13qrjdfycsa5r";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev =  "2f5d2388922f370f4355f327fcf4cfe9f5583908";
+      sha256 = "03s92ygxfrd2c1m4697sd6iksgbar6c007w1yf3h6wmd79vr5dxs";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/oauth2";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/oauth2";
+      rev =  "d2e6202438beef2727060aa7cabdd924d92ebfd9";
+      sha256 = "0wbn75fd10485nb93bm4kqldqifdim5xqy4v7r5sdvimvf3fyhn7";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev =  "ac767d655b305d4e9612f5f6e33120b9176c4ad4";
+      sha256 = "1ds29n5lh4j21hmzxz7vk7hv1k6sixc7f0zsdc9xqdg0j7d212zm";
+    };
+  }
+  {
+    goPackagePath  = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev =  "a434f64ace81347eff0fb4a32bc80a235e0ad762";
+      sha256 = "0zngnxrxjync4caz6ikmv5v0cn895iqhqmzqg9qddfm5bvl2a2my";
+    };
+  }
+  {
+    goPackagePath  = "google.golang.org/appengine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/appengine";
+      rev =  "ae0ab99deb4dc413a2b4bd6c8bdd0eb67f1e4d06";
+      sha256 = "1iabxnqgxvvn1239i6fvfl375vlbvhfrc03m1x2rvalmx4d6w9c7";
+    };
+  }
+  {
+    goPackagePath  = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-yaml/yaml";
+      rev =  "5420a8b6744d3b0345ab293f6fcba19c978f1183";
+      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
+    };
+  }
+  {
+    goPackagePath  = "gotest.tools";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gotestyourself/gotest.tools";
+      rev =  "b6e20af1ed078cd01a6413b734051a292450b4cb";
+      sha256 = "11k6hmfhaf0qxpddp3i5kfpacdx51q6pv4n1kn3jnf1hjs0yny2k";
+    };
+  }
+]
\ No newline at end of file
diff --git a/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix b/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix
index 0d6b206cb4a4..2163855d00e1 100644
--- a/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix
@@ -1,14 +1,14 @@
 { fetchFromGitHub, git, gnupg1compat, makeWrapper, openssl, stdenv }:
 
 stdenv.mkDerivation rec {
-
-  name = "git-crypt-${meta.version}";
+  name = "git-crypt-${version}";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "AGWA";
     repo = "git-crypt";
-    rev = meta.version;
-    sha256 = "4fe45f903a4b3cc06a5fe11334b914c225009fe8440d9e91a54fdf21cf4dcc4d";
+    rev = "${version}";
+    sha256 = "13m9y0m6gc3mlw3pqv9x4i0him2ycbysizigdvdanhh514kga602";
     inherit name;
   };
 
@@ -40,7 +40,6 @@ stdenv.mkDerivation rec {
     '';
     downloadPage = "https://github.com/AGWA/git-crypt/releases";
     license = licenses.gpl3;
-    version = "0.5.0";
     maintainers = [ maintainers.dochang ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/git-extras/default.nix b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
index 1ea60272c338..7b6dd8aacb44 100644
--- a/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
@@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
 
   installFlags = [ "DESTDIR=$(out) PREFIX=" ];
 
+  postInstall = ''
+    install -D etc/git-extras-completion.zsh $out/share/zsh/site-functions/_git_extras
+  '';
+
   meta = with stdenv.lib; {
     homepage = https://github.com/tj/git-extras;
     description = "GIT utilities -- repo summary, repl, changelog population, author commit percentages and more";
diff --git a/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix b/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
index 49856552aa3b..10e786222710 100644
--- a/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "git-imerge-${version}";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "mhagger";
     repo = "git-imerge";
     rev = "v${version}";
-    sha256 = "1ylzxmbjfrzzxmcrbqzy1wv21npqj1r6cgl77a9n2zvsrz8zdb74";
+    sha256 = "0vi1w3f0yk4gqhxj2hzqafqq28rihyhyfnp8x7xzib96j2si14a4";
   };
 
   buildInputs = [ pythonPackages.python pythonPackages.wrapPython ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-recent/default.nix b/pkgs/applications/version-management/git-and-tools/git-recent/default.nix
index 82bcbf74a9eb..c52a78ff0076 100644
--- a/pkgs/applications/version-management/git-and-tools/git-recent/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-recent/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "git-recent-${version}";
-  version = "1.0.4";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "paulirish";
     repo = "git-recent";
     rev = "v${version}";
-    sha256 = "0dbnm5b2v04fy0jgzphm3xvz9scx0n4p10fw8wjd0cy56308h79k";
+    sha256 = "06r1jzmzdv3d4vxdh5qyf5g5rgavxfmh2rpbs7a7byg3k7d77hpn";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 6cc109c48c75..b946d0b7daaf 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -20,7 +20,7 @@ assert sendEmailSupport -> perlSupport;
 assert svnSupport -> perlSupport;
 
 let
-  version = "2.18.0";
+  version = "2.19.1";
   svn = subversionClient.override { perlBindings = perlSupport; };
 in
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
-    sha256 = "14hfwfkrci829a9316hnvkglnqqw1p03cw9k56p4fcb078wbwh4b";
+    sha256 = "1dfv43lmdnxz42504jc89sihbv1d4d6kgqcz3c5ji140kfm5cl1l";
   };
 
   outputs = [ "out" ] ++ stdenv.lib.optional perlSupport "gitweb";
@@ -283,7 +283,7 @@ EOF
 
     # XXX: I failed to understand why this one fails.
     # Could someone try to re-enable it on the next release ?
-    # Tested to fail: 2.18.0
+    # Tested to fail: 2.18.0 and 2.19.0
     disable_test t1700-split-index "null sha1"
 
     # Tested to fail: 2.18.0
@@ -292,6 +292,9 @@ EOF
 
     # Tested to fail: 2.18.0
     disable_test t9902-completion "sourcing the completion script clears cached --options"
+
+    # As of 2.19.0, t5562 refers to #!/usr/bin/perl
+    patchShebangs t/t5562/invoke-with-content-length.pl
   '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
     # Test fails (as of 2.17.0, musl 1.1.19)
     disable_test t3900-i18n-commit
@@ -300,6 +303,8 @@ EOF
     disable_test t0028-working-tree-encoding
   '';
 
+  stripDebugList = [ "lib" "libexec" "bin" "share/git/contrib/credential/libsecret" ];
+
 
   meta = {
     homepage = https://git-scm.com/;
diff --git a/pkgs/applications/version-management/git-and-tools/grv/default.nix b/pkgs/applications/version-management/git-and-tools/grv/default.nix
index cfb028004c70..dd080799557b 100644
--- a/pkgs/applications/version-management/git-and-tools/grv/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/grv/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, curl, libgit2_0_27, ncurses, pkgconfig, readline }:
+{ stdenv, buildGo19Package, fetchFromGitHub, curl, libgit2_0_27, ncurses, pkgconfig, readline }:
 let
-  version = "0.2.0";
+  version = "0.3.0";
 in
-buildGoPackage {
+buildGo19Package {
   name = "grv-${version}";
 
   buildInputs = [ ncurses readline curl libgit2_0_27 ];
@@ -14,14 +14,18 @@ buildGoPackage {
     owner = "rgburke";
     repo = "grv";
     rev = "v${version}";
-    sha256 = "0hlqw6b51jglqzzjgazncckpgarp25ghshl0lxv1mff80jg8wd1a";
+    sha256 = "00v502mwnpv09l7fsbq3s72i5fz5dxbildwxgw0r8zzf6d54xrgl";
     fetchSubmodules = true;
   };
 
+  postPatch = ''
+    rm util/update_latest_release.go
+  '';
+
   buildFlagsArray = [ "-ldflags=" "-X main.version=${version}" ];
 
   meta = with stdenv.lib; {
-    description = " GRV is a terminal interface for viewing git repositories";
+    description = "GRV is a terminal interface for viewing Git repositories";
     homepage = https://github.com/rgburke/grv;
     license = licenses.gpl3;
     platforms = platforms.unix;
diff --git a/pkgs/applications/version-management/git-and-tools/hub/default.nix b/pkgs/applications/version-management/git-and-tools/hub/default.nix
index 113d7f78b905..e01101c6a662 100644
--- a/pkgs/applications/version-management/git-and-tools/hub/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/hub/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "hub-${version}";
-  version = "2.5.1";
+  version = "2.6.0";
 
   goPackagePath = "github.com/github/hub";
 
@@ -10,10 +10,11 @@ buildGoPackage rec {
     owner = "github";
     repo = "hub";
     rev = "v${version}";
-    sha256 = "0a5i351v998vdwf883qhh39c15x56db01fr9hscz4ha7r9550pqg";
+    sha256 = "0hxmbpyv2yjxg4v3z50x5ikgcz7mgv5prya8jcpi277vq2s0wwa1";
   };
 
-  buildInputs = [ groff ronn ruby utillinux ] ++
+  nativeBuildInputs = [ groff ronn utillinux ];
+  buildInputs = [ ruby ] ++
     stdenv.lib.optional stdenv.isDarwin Security;
 
   postPatch = ''
@@ -29,7 +30,7 @@ buildGoPackage rec {
     install -D etc/hub.fish_completion  "$bin/share/fish/vendor_completions.d/hub.fish"
 
     make man-pages
-    cp -r share/man $bin/share/man
+    cp -vr --parents share/man/man[1-9]/*.[1-9] $bin/
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/version-management/git-and-tools/pass-git-helper/default.nix b/pkgs/applications/version-management/git-and-tools/pass-git-helper/default.nix
new file mode 100644
index 000000000000..d0d60b193437
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/pass-git-helper/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildPythonApplication, fetchFromGitHub, pyxdg }:
+
+buildPythonApplication rec {
+  pname   = "pass-git-helper";
+  version = "0.4";
+
+  src = fetchFromGitHub {
+    owner  = "languitar";
+    repo   = "pass-git-helper";
+    rev    = "${version}";
+    sha256 = "1zccbmq5l6asl9qm1f90vg9467y3spmv3ayrw07qizrj43yfd9ap";
+  };
+
+  propagatedBuildInputs = [ pyxdg ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/languitar/pass-git-helper";
+    description = "A git credential helper interfacing with pass, the standard unix password manager";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ vanzef ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/pre-commit/default.nix b/pkgs/applications/version-management/git-and-tools/pre-commit/default.nix
index d125672f8ca0..331b020d8ca7 100644
--- a/pkgs/applications/version-management/git-and-tools/pre-commit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/pre-commit/default.nix
@@ -1,11 +1,11 @@
 { stdenv, python3Packages }:
 with python3Packages; buildPythonApplication rec {
   pname = "pre_commit";
-  version = "1.10.4";
+  version = "1.11.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1kn8h9k9ca330m5n7r4cvxp679y3sc95m1x23a3qhzgam09n7jwr";
+    sha256 = "1kjrq8z78b6aqhyyw07dlwf6cqls88kik6f5l07hs71fj5ddvs9w";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/version-management/git-and-tools/stgit/default.nix b/pkgs/applications/version-management/git-and-tools/stgit/default.nix
index 64e700273d12..4cc1a6f78dfa 100644
--- a/pkgs/applications/version-management/git-and-tools/stgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/stgit/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python2, git }:
+{ stdenv, fetchFromGitHub, python2, git }:
 
 let
   name = "stgit-${version}";
@@ -7,9 +7,11 @@ in
 stdenv.mkDerivation {
   inherit name;
 
-  src = fetchurl {
-    url = "https://github.com/ctmarinas/stgit/archive/v${version}.tar.gz";
-    sha256 = "19fk6vw3pgp2a98wpd4j3kyiyll5dy9bi4921wq1mrky0l53mj00";
+  src = fetchFromGitHub {
+    owner = "ctmarinas";
+    repo = "stgit";
+    rev = "v${version}";
+    sha256 = "0ydgg744m671nkhg7h4q2z3b9vpbc9914rbc0wcgimqfqsxkxx2y";
   };
 
   buildInputs = [ python2 git ];
@@ -24,12 +26,11 @@ stdenv.mkDerivation {
   doCheck = false;
   checkTarget = "test";
 
-  meta = {
-    homepage = http://procode.org/stgit/;
+  meta = with stdenv.lib; {
     description = "A patch manager implemented on top of Git";
-    license = "GPL";
-
-    maintainers = with stdenv.lib.maintainers; [ the-kenny ];
-    platforms = stdenv.lib.platforms.unix;
+    homepage = http://procode.org/stgit/;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ the-kenny ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix b/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
index 17fb74945dc4..35c6d33d74da 100644
--- a/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, qmake, qtbase, qttools, subversion, apr }:
 
 let
-  version = "1.0.12";
+  version = "1.0.13";
 in
 stdenv.mkDerivation {
   name = "svn-all-fast-export-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     owner = "svn-all-fast-export";
     repo = "svn2git";
     rev = version;
-    sha256 = "158w2ynz16dlp992g8nfk7v2f5962z88b4xyv5dyjvbl4l1v7r0v";
+    sha256 = "0f1qj0c4cdq46mz54wcy17g7rq1fy2q0bq3sswhr7r5a2s433x4f";
   };
 
   nativeBuildInputs = [ qmake qttools ];
diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix
index 6d2753e45437..a407f6e7ab12 100644
--- a/pkgs/applications/version-management/git-and-tools/tig/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix
@@ -31,6 +31,10 @@ stdenv.mkDerivation rec {
   installPhase = ''
     make install
     make install-doc
+
+    substituteInPlace contrib/tig-completion.zsh \
+      --replace 'e=$(dirname ''${funcsourcetrace[1]%:*})/tig-completion.bash' "e=$out/etc/bash_completion.d/tig-completion.bash"
+
     install -D contrib/tig-completion.bash $out/etc/bash_completion.d/tig-completion.bash
     install -D contrib/tig-completion.zsh $out/share/zsh/site-functions/_tig
     cp contrib/vim.tigrc $out/etc/
diff --git a/pkgs/applications/version-management/git-lfs/default.nix b/pkgs/applications/version-management/git-lfs/default.nix
index 6ca563f7d1a6..67c07072d41f 100644
--- a/pkgs/applications/version-management/git-lfs/default.nix
+++ b/pkgs/applications/version-management/git-lfs/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "git-lfs-${version}";
-  version = "2.4.2";
+  version = "2.5.2";
 
   goPackagePath = "github.com/git-lfs/git-lfs";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "git-lfs";
     repo = "git-lfs";
-    sha256 = "0ww1jh45nlm74vbi4n6cdxi35bzgjlqmz3q8h9igdwfhkf79kd5c";
+    sha256 = "1y9l35j59d422v9hsbi117anm5d0177nspiy9r2zbjz3ygd9a4ck";
   };
 
   preBuild = ''
@@ -20,7 +20,7 @@ buildGoPackage rec {
   '';
 
   postInstall = ''
-    rm -v $bin/bin/{man,script,genmakefile}
+    rm -v $bin/bin/{man,script,cmd}
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/version-management/git-review/default.nix b/pkgs/applications/version-management/git-review/default.nix
index 7b81c28c3755..101770da8885 100644
--- a/pkgs/applications/version-management/git-review/default.nix
+++ b/pkgs/applications/version-management/git-review/default.nix
@@ -2,7 +2,7 @@
 
 pythonPackages.buildPythonApplication rec {
   name = "git-review-${version}";
-  version = "1.26.0";
+  version = "1.27.0";
 
   # Manually set version because prb wants to get it from the git
   # upstream repository (and we are installing from tarball instead)
@@ -14,7 +14,7 @@ pythonPackages.buildPythonApplication rec {
 
   src = fetchurl rec {
     url = "https://github.com/openstack-infra/git-review/archive/${version}.tar.gz";
-    sha256 = "106nk6p7byf5vi68b2fvmwma5nk7qrv39nfj9p1bfxmb1gjdixhc";
+    sha256 = "0smdkps9avnj58izyfc5m0amq8nafgs9iqlyaf7ncrlvypia1f3q";
   };
 
   propagatedBuildInputs = with pythonPackages; [ pbr requests setuptools ];
diff --git a/pkgs/applications/version-management/gitaly/Gemfile b/pkgs/applications/version-management/gitaly/Gemfile
index fd8e6b40225b..2b752992fecd 100644
--- a/pkgs/applications/version-management/gitaly/Gemfile
+++ b/pkgs/applications/version-management/gitaly/Gemfile
@@ -1,15 +1,16 @@
 source 'https://rubygems.org'
 
-gem 'rugged', '~> 0.27.0'
-gem 'github-linguist', '~> 5.3.3', require: 'linguist'
-gem 'gitlab-markup', '~> 1.6.2'
-gem 'gitaly-proto', '~> 0.99.0', require: 'gitaly'
+gem 'rugged', '~> 0.27.4'
+gem 'github-linguist', '~> 6.1', require: 'linguist'
+gem 'gitlab-markup', '~> 1.6.4'
+gem 'gitaly-proto', '~> 0.116.0', require: 'gitaly'
 gem 'activesupport', '~> 5.0.2'
 gem 'rdoc', '~> 4.2'
 gem 'gitlab-gollum-lib', '~> 4.2', require: false
 gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4', require: false
-gem 'grpc', '~> 1.10.0'
+gem 'grpc', '~> 1.11.0'
 gem 'sentry-raven', '~> 2.7.2', require: false
+gem 'faraday', '~> 0.12'
 
 # Detects the open source license the repository includes
 # This version needs to be in sync with GitLab CE/EE
diff --git a/pkgs/applications/version-management/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitaly/Gemfile.lock
index fb63553221dc..d76ba86c398a 100644
--- a/pkgs/applications/version-management/gitaly/Gemfile.lock
+++ b/pkgs/applications/version-management/gitaly/Gemfile.lock
@@ -11,30 +11,31 @@ GEM
     ast (2.3.0)
     charlock_holmes (0.7.6)
     concurrent-ruby (1.0.5)
+    crass (1.0.4)
     diff-lcs (1.3)
-    escape_utils (1.1.1)
-    faraday (0.14.0)
+    escape_utils (1.2.1)
+    faraday (0.12.2)
       multipart-post (>= 1.2, < 3)
     gemojione (3.3.0)
       json
-    gitaly-proto (0.99.0)
+    gitaly-proto (0.116.0)
       google-protobuf (~> 3.1)
       grpc (~> 1.10)
-    github-linguist (5.3.3)
-      charlock_holmes (~> 0.7.5)
-      escape_utils (~> 1.1.0)
+    github-linguist (6.2.0)
+      charlock_holmes (~> 0.7.6)
+      escape_utils (~> 1.2.0)
       mime-types (>= 1.19)
       rugged (>= 0.25.1)
     github-markup (1.7.0)
-    gitlab-gollum-lib (4.2.7.1)
+    gitlab-gollum-lib (4.2.7.5)
       gemojione (~> 3.2)
       github-markup (~> 1.6)
       gollum-grit_adapter (~> 1.0)
       nokogiri (>= 1.6.1, < 2.0)
-      rouge (~> 2.1)
-      sanitize (~> 2.1)
+      rouge (~> 3.1)
+      sanitize (~> 4.6.4)
       stringex (~> 2.6)
-    gitlab-gollum-rugged_adapter (0.4.4)
+    gitlab-gollum-rugged_adapter (0.4.4.1)
       mime-types (>= 1.15)
       rugged (~> 0.25)
     gitlab-grit (2.8.2)
@@ -42,7 +43,7 @@ GEM
       diff-lcs (~> 1.1)
       mime-types (>= 1.16)
       posix-spawn (~> 0.3)
-    gitlab-markup (1.6.3)
+    gitlab-markup (1.6.4)
     gitlab-styles (2.0.0)
       rubocop (~> 0.49)
       rubocop-gitlab-security (~> 0.1.0)
@@ -60,7 +61,7 @@ GEM
       multi_json (~> 1.11)
       os (~> 0.9)
       signet (~> 0.7)
-    grpc (1.10.0)
+    grpc (1.11.0)
       google-protobuf (~> 3.1)
       googleapis-common-protos-types (~> 1.0.0)
       googleauth (>= 0.5.1, < 0.7)
@@ -74,15 +75,17 @@ GEM
       little-plugger (~> 1.1)
       multi_json (~> 1.10)
     memoist (0.16.0)
-    mime-types (3.1)
+    mime-types (3.2.2)
       mime-types-data (~> 3.2015)
-    mime-types-data (3.2016.0521)
+    mime-types-data (3.2018.0812)
     mini_portile2 (2.3.0)
     minitest (5.9.1)
     multi_json (1.13.1)
     multipart-post (2.0.0)
-    nokogiri (1.8.2)
+    nokogiri (1.8.4)
       mini_portile2 (~> 2.3.0)
+    nokogumbo (1.5.0)
+      nokogiri
     os (0.9.6)
     parallel (1.12.0)
     parser (2.4.0.0)
@@ -94,20 +97,20 @@ GEM
       rake
     rake (12.1.0)
     rdoc (4.3.0)
-    rouge (2.2.1)
-    rspec (3.6.0)
-      rspec-core (~> 3.6.0)
-      rspec-expectations (~> 3.6.0)
-      rspec-mocks (~> 3.6.0)
-    rspec-core (3.6.0)
-      rspec-support (~> 3.6.0)
-    rspec-expectations (3.6.0)
+    rouge (3.2.1)
+    rspec (3.7.0)
+      rspec-core (~> 3.7.0)
+      rspec-expectations (~> 3.7.0)
+      rspec-mocks (~> 3.7.0)
+    rspec-core (3.7.1)
+      rspec-support (~> 3.7.0)
+    rspec-expectations (3.7.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.6.0)
-    rspec-mocks (3.6.0)
+      rspec-support (~> 3.7.0)
+    rspec-mocks (3.7.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.6.0)
-    rspec-support (3.6.0)
+      rspec-support (~> 3.7.0)
+    rspec-support (3.7.1)
     rubocop (0.50.0)
       parallel (~> 1.10)
       parser (>= 2.3.3.1, < 3.0)
@@ -120,9 +123,11 @@ GEM
     rubocop-rspec (1.17.0)
       rubocop (>= 0.50.0)
     ruby-progressbar (1.8.3)
-    rugged (0.27.0)
-    sanitize (2.1.0)
+    rugged (0.27.4)
+    sanitize (4.6.6)
+      crass (~> 1.0.2)
       nokogiri (>= 1.4.4)
+      nokogumbo (~> 1.4)
     sentry-raven (2.7.2)
       faraday (>= 0.7.6, < 1.0)
     signet (0.8.1)
@@ -141,19 +146,20 @@ PLATFORMS
 
 DEPENDENCIES
   activesupport (~> 5.0.2)
-  gitaly-proto (~> 0.99.0)
-  github-linguist (~> 5.3.3)
+  faraday (~> 0.12)
+  gitaly-proto (~> 0.116.0)
+  github-linguist (~> 6.1)
   gitlab-gollum-lib (~> 4.2)
   gitlab-gollum-rugged_adapter (~> 0.4.4)
-  gitlab-markup (~> 1.6.2)
+  gitlab-markup (~> 1.6.4)
   gitlab-styles (~> 2.0.0)
   google-protobuf (= 3.5.1)
-  grpc (~> 1.10.0)
+  grpc (~> 1.11.0)
   licensee (~> 8.9.0)
   rdoc (~> 4.2)
   rspec
-  rugged (~> 0.27.0)
+  rugged (~> 0.27.4)
   sentry-raven (~> 2.7.2)
 
 BUNDLED WITH
-   1.16.1
+   1.16.4
diff --git a/pkgs/applications/version-management/gitaly/default.nix b/pkgs/applications/version-management/gitaly/default.nix
index 52d46a991187..88bd0b9f10db 100644
--- a/pkgs/applications/version-management/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitaly/default.nix
@@ -7,14 +7,14 @@ let
     gemdir = ./.;
   };
 in buildGoPackage rec {
-  version = "0.100.0";
+  version = "0.125.1";
   name = "gitaly-${version}";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "0lnyk3abk1jxhii4cx009w11fm082c3va0nnnnycghrmfkv2r1rs";
+    sha256 = "0vbxjqjs1r5c350r67812andasby5zk25xlaqp201lmlvamiv0ni";
   };
 
   goPackagePath = "gitlab.com/gitlab-org/gitaly";
@@ -23,11 +23,11 @@ in buildGoPackage rec {
     inherit rubyEnv;
   };
 
-  buildInputs = [rubyEnv.wrappedRuby];
+  buildInputs = [ rubyEnv.wrappedRuby ];
 
   postInstall = ''
     mkdir -p $ruby
-    cp -rv $src/ruby/{bin,lib,vendor} $ruby
+    cp -rv $src/ruby/{bin,lib} $ruby
   '';
 
   outputs = [ "bin" "out" "ruby" ];
diff --git a/pkgs/applications/version-management/gitaly/gemset.nix b/pkgs/applications/version-management/gitaly/gemset.nix
index bd192d0b2e43..0717555b3829 100644
--- a/pkgs/applications/version-management/gitaly/gemset.nix
+++ b/pkgs/applications/version-management/gitaly/gemset.nix
@@ -41,6 +41,14 @@
     };
     version = "1.0.5";
   };
+  crass = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bpxzy6gjw9ggjynlxschbfsgmx8lv3zw1azkjvnb8b9i895dqfi";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
   diff-lcs = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -52,19 +60,19 @@
   escape_utils = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "088r5c2mz2vy2jbbx1xjbi8msnzg631ggli29nhik2spbcp1z6vh";
+      sha256 = "0qminivnyzwmqjhrh3b92halwbk0zcl9xn828p5rnap1szl2yag5";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.2.1";
   };
   faraday = {
     dependencies = ["multipart-post"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1c3x3s8vb5nf7inyfvhdxwa4q3swmnacpxby6pish5fgmhws7zrr";
+      sha256 = "157c4cmb5g1b3ny6k9qf9z57rfijl54fcq3hnqqf6g31g1m096b2";
       type = "gem";
     };
-    version = "0.14.0";
+    version = "0.12.2";
   };
   gemojione = {
     dependencies = ["json"];
@@ -79,19 +87,19 @@
     dependencies = ["google-protobuf" "grpc"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1y5sn60h71ssxmc8br32fqhgmfqxgrmdlg4vya8dyy37ai20f85z";
+      sha256 = "15946776v5v8c2jisknjm82s4q3b3q9x2xygjf4bkk4m45n766w1";
       type = "gem";
     };
-    version = "0.99.0";
+    version = "0.116.0";
   };
   github-linguist = {
     dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0kgashbqpypv329m63b85ri1dx0gppwd0832hvwh124lk5b19drk";
+      sha256 = "1fs0i5xxsl91hnfa17ipk8cwxrg84kjg9mzxvxkd4ykldfdp353y";
       type = "gem";
     };
-    version = "5.3.3";
+    version = "6.2.0";
   };
   github-markup = {
     source = {
@@ -105,19 +113,19 @@
     dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lk5ly17a40xjz8b7l05b4hkrlnq8vawjy4szxl5w0hkaa24m97s";
+      sha256 = "15h6a7lsfkm967d5dhjlbcm2lnl1l9akzvaq92qlxq40r5apw0kn";
       type = "gem";
     };
-    version = "4.2.7.1";
+    version = "4.2.7.5";
   };
   gitlab-gollum-rugged_adapter = {
     dependencies = ["mime-types" "rugged"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zk89c2ljv9skcxzwnr84rqxv3iam30n5liv5r8hgl0l67qbg1mg";
+      sha256 = "092i02k3kd4ghk1h1l5yrvi9b180dgfxrvwni26facb2kc9f3wbi";
       type = "gem";
     };
-    version = "0.4.4";
+    version = "0.4.4.1";
   };
   gitlab-grit = {
     dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
@@ -131,10 +139,10 @@
   gitlab-markup = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pvx257azpr00yvb74lgjpgnj72nwyd29l9a18280rgmp4cjniki";
+      sha256 = "1v6w3z7smmkqnhphb4ghgpqg61vimflqzpszybji0li99f2k1jb6";
       type = "gem";
     };
-    version = "1.6.3";
+    version = "1.6.4";
   };
   gitlab-styles = {
     dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
@@ -184,10 +192,10 @@
     dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17wvqhjmldxph4li402rvfbyzi5455lzmfr2y19kq9ghrzjyad82";
+      sha256 = "1is4czi3i7y6zyxzyrpsma1z91axmc0jz2ngr6ckixqd3629npkz";
       type = "gem";
     };
-    version = "1.10.0";
+    version = "1.11.0";
   };
   i18n = {
     source = {
@@ -251,18 +259,18 @@
     dependencies = ["mime-types-data"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
+      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
       type = "gem";
     };
-    version = "3.1";
+    version = "3.2.2";
   };
   mime-types-data = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
+      sha256 = "07wvp0aw2gjm4njibb70as6rh5hi1zzri5vky1q6jx95h8l56idc";
       type = "gem";
     };
-    version = "3.2016.0521";
+    version = "3.2018.0812";
   };
   mini_portile2 = {
     source = {
@@ -300,10 +308,19 @@
     dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
+      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
       type = "gem";
     };
-    version = "1.8.2";
+    version = "1.8.4";
+  };
+  nokogumbo = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09qc1c7acv9qm48vk2kzvnrq4ij8jrql1cv33nmv2nwmlggy0jyj";
+      type = "gem";
+    };
+    version = "1.5.0";
   };
   os = {
     source = {
@@ -382,54 +399,54 @@
   rouge = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02kpahk5nkc33yxnn75649kzxaz073wvazr2zyg491nndykgnvcs";
+      sha256 = "0h79gn2wmn1wix2d27lgiaimccyj8gvizrllyym500pir408x62f";
       type = "gem";
     };
-    version = "2.2.1";
+    version = "3.2.1";
   };
   rspec = {
     dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nd50hycab2a2vdah9lxi585g8f63jxjvmzmxqyln51grxwx9hzb";
+      sha256 = "0134g96wzxjlig2gxzd240gm2dxfw8izcyi2h6hjmr40syzcyx01";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-core = {
     dependencies = ["rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18np8wyw2g79waclpaacba6nd7x60ixg07ncya0j0qj1z9b37grd";
+      sha256 = "0zvjbymx3avxm3lf8v4gka3a862vnaxldmwvp6767bpy48nhnvjj";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.1";
   };
   rspec-expectations = {
     dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "028ifzf9mqp3kxx40q1nbwj40g72g9zk0wr78l146phblkv96w0a";
+      sha256 = "1fw06wm8jdj8k7wrb8xmzj0fr1wjyb0ya13x31hidnyblm41hmvy";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-mocks = {
     dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nv6jkxy24sag1i9w9wi3850k6skk2fm6yhcrgnmlz6vmwxvizp8";
+      sha256 = "0b02ya3qhqgmcywqv4570dlhav70r656f7dmvwg89whpkq1z1xr3";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-support = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "050paqqpsml8w88nf4a15zbbj3vvm471zpv73sjfdnz7w21wnypb";
+      sha256 = "1nl30xb6jmcl0awhqp6jycl01wdssblifwy921phfml70rd9flj1";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.1";
   };
   rubocop = {
     dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
@@ -469,19 +486,19 @@
   rugged = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0q1krxgd0ql03x8m9m05x5sxizw5sc7lms7rkp44qf45grpdk3v3";
+      sha256 = "1y6k5yrfmhc1v4albbpa3xzl28vk5lric3si8ada28sp9mmk2x72";
       type = "gem";
     };
-    version = "0.27.0";
+    version = "0.27.4";
   };
   sanitize = {
-    dependencies = ["nokogiri"];
+    dependencies = ["crass" "nokogiri" "nokogumbo"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xsv6xqrlz91rd8wifjknadbl3z5h6qphmxy0hjb189qbdghggn3";
+      sha256 = "0j4j2a2mkk1a70vbx959pvx0gvr1zb9snjwvsppwj28bp0p0b2bv";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "4.6.6";
   };
   sentry-raven = {
     dependencies = ["faraday"];
diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix
index 592b348d03fd..a25492e4546c 100644
--- a/pkgs/applications/version-management/gitea/default.nix
+++ b/pkgs/applications/version-management/gitea/default.nix
@@ -7,13 +7,21 @@ with stdenv.lib;
 
 buildGoPackage rec {
   name = "gitea-${version}";
-  version = "1.5.0";
+  version = "1.5.2";
 
   src = fetchFromGitHub {
     owner = "go-gitea";
     repo = "gitea";
     rev = "v${version}";
-    sha256 = "0gp777x8yjbqvz9i79qv3bn3hrlp1bn7ib57r7w5a7jmr9rd0nca";
+    sha256 = "168pbndlh7c148p8wzkd39kd7idiba9zw7v0alp9zqcqzzayaydj";
+    # Required to generate the same checksum on MacOS due to unicode encoding differences
+    # More information: https://github.com/NixOS/nixpkgs/pull/48128
+    extraPostFetch = ''
+      rm -rf $out/integrations
+      rm -rf $out/vendor/github.com/Unknown/cae/tz/testdata
+      rm -rf $out/vendor/github.com/Unknown/cae/zip/testdata
+      rm -rf $out/vendor/gopkg.in/macaron.v1/fixtures
+    '';
   };
 
   patches = [ ./static-root-path.patch ];
@@ -31,7 +39,7 @@ buildGoPackage rec {
 
   postInstall = ''
     mkdir $data
-    cp -R $src/{public,templates} $data
+    cp -R $src/{public,templates,options} $data
     mkdir -p $out
     cp -R $src/options/locale $out/locale
 
diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix
index 051ea080fb4e..0fcbe54be175 100644
--- a/pkgs/applications/version-management/gitkraken/default.nix
+++ b/pkgs/applications/version-management/gitkraken/default.nix
@@ -12,11 +12,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "gitkraken-${version}";
-  version = "4.0.2";
+  version = "4.0.5";
 
   src = fetchurl {
-    url = "https://release.gitkraken.com/linux/v${version}.deb";
-    sha256 = "0dnckd75fcgc9wa4ivbnw2djmk4phzzr891snhxpsvb1dhlc7rgx";
+    url = "https://release.axocdn.com/linux/GitKraken-v${version}.deb";
+    sha256 = "15wxcahlnz2k3331wqv30d5gq38fqh178hv87xky9b9vyh8qpcvz";
   };
 
   libPath = makeLibraryPath [
diff --git a/pkgs/applications/version-management/gitlab-shell/default.nix b/pkgs/applications/version-management/gitlab-shell/default.nix
index 09c1cd13d440..69c4b9a255e3 100644
--- a/pkgs/applications/version-management/gitlab-shell/default.nix
+++ b/pkgs/applications/version-management/gitlab-shell/default.nix
@@ -1,19 +1,19 @@
 { stdenv, ruby, bundler, fetchFromGitLab, go }:
 
 stdenv.mkDerivation rec {
-  version = "7.1.2";
+  version = "8.3.3";
   name = "gitlab-shell-${version}";
 
-  srcs = fetchFromGitLab {
+  src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-shell";
     rev = "v${version}";
-    sha256 = "1mkr2k2ldn5hl84acajvfify97qy80lmicxx49jbpln22vh9rcni";
+    sha256 = "1qapw0yvlw1nxjik7jpbbbl3yx299sfvdx67zsd5ai7bhk1gd8xl";
   };
 
   buildInputs = [ ruby bundler go ];
 
-  patches = [ ./remove-hardcoded-locations.patch ./fixes.patch ];
+  patches = [ ./remove-hardcoded-locations.patch ];
 
   installPhase = ''
     ruby bin/compile
@@ -36,6 +36,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
+    description = "SSH access and repository management app for GitLab";
     homepage = http://www.gitlab.com/;
     platforms = platforms.unix;
     maintainers = with maintainers; [ fpletz globin ];
diff --git a/pkgs/applications/version-management/gitlab-shell/fixes.patch b/pkgs/applications/version-management/gitlab-shell/fixes.patch
deleted file mode 100644
index 29e4dccb26c7..000000000000
--- a/pkgs/applications/version-management/gitlab-shell/fixes.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/support/go_build.rb b/support/go_build.rb
-index 30a6b71..46b4dfa 100644
---- a/support/go_build.rb
-+++ b/support/go_build.rb
-@@ -26,8 +26,8 @@ module GoBuild
-     raise "env must be a hash" unless env.is_a?(Hash)
-     raise "cmd must be an array" unless cmd.is_a?(Array)
- 
--    unless system(env, *cmd)
--      abort "command failed: #{env.inspect} #{cmd.join(' ')}"
--    end
-+    puts "Starting #{env.inspect} #{cmd.join(' ')}"
-+    Process::wait(Process::spawn(env, *cmd))
-+    abort "command failed: #{env.inspect} #{cmd.join(' ')}" unless $?.exitstatus == 0
-   end
- end
diff --git a/pkgs/applications/version-management/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab-workhorse/default.nix
index 723d2faeb267..3fab965bf547 100644
--- a/pkgs/applications/version-management/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab-workhorse/default.nix
@@ -1,28 +1,22 @@
 { stdenv, fetchFromGitLab, git, go }:
 
 stdenv.mkDerivation rec {
-  version = "4.2.0";
   name = "gitlab-workhorse-${version}";
 
+  version = "7.0.0";
+
   srcs = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-workhorse";
     rev = "v${version}";
-    sha256 = "11n43mfp7a59iq8k7sh9bnww3bq56ml2p6752csclg77xii6dzyy";
+    sha256 = "1mmfb7h5sbva2kv9h9cxfg7dyksxrwwikq7jwggfawqaadzwm677";
   };
 
   buildInputs = [ git go ];
 
-  patches = [ ./remove-hardcoded-paths.patch ];
-
-  buildPhase = ''
-    make PREFIX=$out
-  '';
+  patches = [ ./remove-hardcoded-paths.patch ./deterministic-build.patch ];
 
-  installPhase = ''
-    mkdir -p $out/bin
-    make install PREFIX=$out
-  '';
+  makeFlags = [ "PREFIX=$(out)" "VERSION=${version}" ];
 
   meta = with stdenv.lib; {
     homepage = http://www.gitlab.com/;
diff --git a/pkgs/applications/version-management/gitlab-workhorse/deterministic-build.patch b/pkgs/applications/version-management/gitlab-workhorse/deterministic-build.patch
new file mode 100644
index 000000000000..da6dc5493ac5
--- /dev/null
+++ b/pkgs/applications/version-management/gitlab-workhorse/deterministic-build.patch
@@ -0,0 +1,11 @@
+--- a/Makefile	2018-10-08 12:45:15.206269937 +0200
++++ b/Makefile	2018-10-08 12:45:24.435366307 +0200
+@@ -6,7 +6,7 @@
+ BIN_BUILD_DIR := $(TARGET_DIR)/bin
+ PKG_BUILD_DIR := $(TARGET_DIR)/src/$(PKG)
+ COVERAGE_DIR := $(TARGET_DIR)/cover
+-VERSION := $(shell git describe)-$(shell date -u +%Y%m%d.%H%M%S)
++VERSION := 6.1.1
+ GOBUILD := go build -ldflags "-X main.Version=$(VERSION)"
+ EXE_ALL := gitlab-zip-cat gitlab-zip-metadata gitlab-workhorse
+ INSTALL := install
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index 90d16d846608..ace0df5efdfd 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -1,47 +1,54 @@
-{ stdenv, lib, fetchurl, fetchFromGitHub, bundlerEnv
+{ stdenv, lib, fetchurl, fetchFromGitLab, bundlerEnv
 , ruby, tzdata, git, procps, nettools
+, gitlabEnterprise ? false
 }:
 
 let
   rubyEnv = bundlerEnv {
     name = "gitlab-env-${version}";
     inherit ruby;
-    gemdir = ./.;
+    gemdir = ./rubyEnv- + "${if gitlabEnterprise then "ee" else "ce"}";
     groups = [ "default" "unicorn" "ed25519" "metrics" ];
-    meta = with lib; {
-      homepage = http://www.gitlab.com/;
-      platforms = platforms.linux;
-      maintainers = with maintainers; [ fpletz globin ];
-      license = licenses.mit;
-    };
   };
 
-  version = "10.8.0";
+  version = "11.4.3";
 
-  gitlabDeb = fetchurl {
-    url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download";
-    sha256 = "0j5jrlwfpgwfirjnqb9w4snl9w213kdxb1ajyrla211q603d4j34";
+  sources = if gitlabEnterprise then {
+    gitlabDeb = fetchurl {
+      url = "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_${version}-ee.0_amd64.deb/download.deb";
+      sha256 = "1cw75qj508z6n00rqgqjzdm2013kyb7c57cypmq0m08nc6f3jspz";
+    };
+    gitlab = fetchFromGitLab {
+      owner = "gitlab-org";
+      repo = "gitlab-ee";
+      rev = "v${version}-ee";
+      sha256 = "1vqc77whpbsifbm9vgcmpxnw13v8jz1s9q04i8jfv99c59fjlids";
+    };
+  } else {
+    gitlabDeb = fetchurl {
+      url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_${version}-ce.0_amd64.deb/download.deb";
+      sha256 = "0vk03k42pp92h520wnynl9czcigjhj9m7y68z1x0gwqr9m61r7zm";
+    };
+    gitlab = fetchFromGitLab {
+      owner = "gitlab-org";
+      repo = "gitlab-ce";
+      rev = "v${version}";
+      sha256 = "1zvjz2gv2vwqqjz52zcvi0ap3d8rdbpgsqk9wv80hqq4v37a5gfx";
+    };
   };
 
 in
 
 stdenv.mkDerivation rec {
-  name = "gitlab-${version}";
+  name = "gitlab${if gitlabEnterprise then "-ee" else ""}-${version}";
 
-  src = fetchFromGitHub {
-    owner = "gitlabhq";
-    repo = "gitlabhq";
-    rev = "v${version}";
-    sha256 = "1idvi27xpghvvb3sv62afhcnnswvjlrbg5lld79a761kd4187cym";
-  };
+  src = sources.gitlab;
 
   buildInputs = [
     rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler tzdata git procps nettools
   ];
 
-  patches = [
-    ./remove-hardcoded-locations.patch
-  ];
+  patches = [ ./remove-hardcoded-locations.patch ];
 
   postPatch = ''
     # For reasons I don't understand "bundle exec" ignores the
@@ -72,13 +79,14 @@ stdenv.mkDerivation rec {
   buildPhase = ''
     mv config/gitlab.yml.example config/gitlab.yml
 
-    # work around unpacking deb containing binary with suid bit
-    ar p ${gitlabDeb} data.tar.gz | gunzip > gitlab-deb-data.tar
+    # Building this requires yarn, node &c, so we just get it from the deb
+    ar p ${sources.gitlabDeb} data.tar.gz | gunzip > gitlab-deb-data.tar
+    # Work around unpacking deb containing binary with suid bit
     tar -f gitlab-deb-data.tar --delete ./opt/gitlab/embedded/bin/ksu
     tar -xf gitlab-deb-data.tar
 
     mv -v opt/gitlab/embedded/service/gitlab-rails/public/assets public
-    rm -rf opt
+    rm -rf opt # only directory in data.tar.gz
 
     mv config/gitlab.yml config/gitlab.yml.example
     rm -f config/secrets.yml
@@ -105,9 +113,19 @@ stdenv.mkDerivation rec {
     ruby = rubyEnv.wrappedRuby;
   };
 
-  meta = with stdenv.lib; {
-    description = "Web-based Git-repository manager";
-    homepage = https://gitlab.com;
-    license = licenses.mit;
-  };
+  meta = with lib; {
+    homepage = http://www.gitlab.com/;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ fpletz globin krav ];
+  } // (if gitlabEnterprise then
+    {
+      license = licenses.unfreeRedistributable; # https://gitlab.com/gitlab-org/gitlab-ee/raw/master/LICENSE
+      description = "GitLab Enterprise Edition";
+    }
+  else
+    {
+      license = licenses.mit;
+      description = "GitLab Community Edition";
+      longDescription = "GitLab Community Edition (CE) is an open source end-to-end software development platform with built-in version control, issue tracking, code review, CI/CD, and more. Self-host GitLab CE on your own servers, in a container, or on a cloud provider.";
+    });
 }
diff --git a/pkgs/applications/version-management/gitlab/fix-36783.patch b/pkgs/applications/version-management/gitlab/fix-36783.patch
deleted file mode 100644
index 64301fa2c526..000000000000
--- a/pkgs/applications/version-management/gitlab/fix-36783.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/app/workers/post_receive.rb
-+++ b/app/workers/post_receive.rb
-@@ -3,7 +3,9 @@ class PostReceive
-   include DedicatedSidekiqQueue
-
-   def perform(gl_repository, identifier, changes)
--    project, is_wiki = Gitlab::GlRepository.parse(gl_repository)
-+    # XXX: https://gitlab.com/gitlab-org/gitlab-ce/issues/36783
-+    # project, is_wiki = Gitlab::GlRepository.parse(gl_repository)
-+    project, is_wiki = parse_project_identifier(gl_repository)
-
-     if project.nil?
-       log("Triggered hook for non-existing project with gl_repository \"#{gl_repository}\"")
-@@ -59,6 +61,15 @@ class PostReceive
-     # Nothing defined here yet.
-   end
-
-+  # XXX: https://gitlab.com/gitlab-org/gitlab-ce/issues/36783
-+  def parse_project_identifier(project_identifier)
-+    if project_identifier.start_with?('/')
-+      Gitlab::RepoPath.parse(project_identifier)
-+    else
-+      Gitlab::GlRepository.parse(project_identifier)
-+    end
-+  end
-+
-   def log(message)
-     Gitlab::GitLogger.error("POST-RECEIVE: #{message}")
-   end
diff --git a/pkgs/applications/version-management/gitlab/Gemfile b/pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile
index 89febc9bc0c2..ecbfba0827d2 100644
--- a/pkgs/applications/version-management/gitlab/Gemfile
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile
@@ -6,7 +6,7 @@ end
 gem_versions = {}
 gem_versions['activerecord_sane_schema_dumper'] = rails5? ? '1.0'      : '0.2'
 gem_versions['default_value_for']               = rails5? ? '~> 3.0.5' : '~> 3.0.0'
-gem_versions['rails']                           = rails5? ? '5.0.6'    : '4.2.10'
+gem_versions['rails']                           = rails5? ? '5.0.7'    : '4.2.10'
 gem_versions['rails-i18n']                      = rails5? ? '~> 5.1'   : '~> 4.0.9'
 # --- The end of special code for migrating to Rails 5.0 ---
 
@@ -28,14 +28,14 @@ gem 'mysql2', '~> 0.4.10', group: :mysql
 gem 'pg', '~> 0.18.2', group: :postgres
 
 gem 'rugged', '~> 0.27'
-gem 'grape-route-helpers', '~> 2.1.0'
+gem 'grape-path-helpers', '~> 1.0'
 
 gem 'faraday', '~> 0.12'
 
 # Authentication libraries
 gem 'devise', '~> 4.4'
 gem 'doorkeeper', '~> 4.3'
-gem 'doorkeeper-openid_connect', '~> 1.3'
+gem 'doorkeeper-openid_connect', '~> 1.5'
 gem 'omniauth', '~> 1.8'
 gem 'omniauth-auth0', '~> 2.0.0'
 gem 'omniauth-azure-oauth2', '~> 0.0.9'
@@ -47,10 +47,10 @@ gem 'omniauth-google-oauth2', '~> 0.5.3'
 gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos
 gem 'omniauth-oauth2-generic', '~> 0.2.2'
 gem 'omniauth-saml', '~> 1.10'
-gem 'omniauth-shibboleth', '~> 1.2.0'
+gem 'omniauth-shibboleth', '~> 1.3.0'
 gem 'omniauth-twitter', '~> 1.4'
 gem 'omniauth_crowd', '~> 2.2.0'
-gem 'omniauth-authentiq', '~> 0.3.1'
+gem 'omniauth-authentiq', '~> 0.3.3'
 gem 'rack-oauth2', '~> 1.2.1'
 gem 'jwt', '~> 1.5.6'
 
@@ -68,7 +68,7 @@ gem 'u2f', '~> 0.2.1'
 gem 'validates_hostname', '~> 1.0.6'
 
 # Browser detection
-gem 'browser', '~> 2.2'
+gem 'browser', '~> 2.5'
 
 # GPG
 gem 'gpgme'
@@ -80,19 +80,21 @@ gem 'gitlab_omniauth-ldap', '~> 2.0.4', require: 'omniauth-ldap'
 gem 'net-ldap'
 
 # Git Wiki
-# Required manually in config/initializers/gollum.rb to control load order
+# Only used to compute wiki page slugs
 gem 'gitlab-gollum-lib', '~> 4.2', require: false
 
-gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4', require: false
-
 # Language detection
 gem 'github-linguist', '~> 5.3.3', require: 'linguist'
 
 # API
-gem 'grape', '~> 1.0'
+gem 'grape', '~> 1.1'
 gem 'grape-entity', '~> 0.7.1'
 gem 'rack-cors', '~> 1.0.0', require: 'rack/cors'
 
+# GraphQL API
+gem 'graphql', '~> 1.8.0'
+gem 'graphiql-rails', '~> 1.4.10'
+
 # Disable strong_params so that Mash does not respond to :permitted?
 gem 'hashie-forbidden_attributes'
 
@@ -100,25 +102,25 @@ gem 'hashie-forbidden_attributes'
 gem 'kaminari', '~> 1.0'
 
 # HAML
-gem 'hamlit', '~> 2.6.1'
+gem 'hamlit', '~> 2.8.8'
 
 # Files attachments
-gem 'carrierwave', '~> 1.2'
-
-# Drag and Drop UI
-gem 'dropzonejs-rails', '~> 0.7.1'
+# Locked until https://github.com/carrierwaveuploader/carrierwave/pull/2332/files is merged.
+# config/initializers/carrierwave_patch.rb can be removed once that change is released.
+gem 'carrierwave', '= 1.2.3'
+gem 'mini_magick'
 
 # for backups
 gem 'fog-aws', '~> 2.0.1'
 gem 'fog-core', '~> 1.44'
-gem 'fog-google', '~> 1.3.3'
+gem 'fog-google', '~> 1.7.1'
 gem 'fog-local', '~> 0.3'
 gem 'fog-openstack', '~> 0.1'
 gem 'fog-rackspace', '~> 0.1.1'
 gem 'fog-aliyun', '~> 0.2.0'
 
 # for Google storage
-gem 'google-api-client', '~> 0.19.8'
+gem 'google-api-client', '~> 0.23'
 
 # for aws storage
 gem 'unf', '~> 0.1.4'
@@ -127,13 +129,14 @@ gem 'unf', '~> 0.1.4'
 gem 'seed-fu', '~> 2.3.7'
 
 # Markdown and HTML processing
-gem 'html-pipeline', '~> 2.7.1'
+gem 'html-pipeline', '~> 2.8'
 gem 'deckar01-task_list', '2.0.0'
-gem 'gitlab-markup', '~> 1.6.2'
+gem 'gitlab-markup', '~> 1.6.4'
+gem 'github-markup', '~> 1.7.0', require: 'github/markup'
 gem 'redcarpet', '~> 3.4'
 gem 'commonmarker', '~> 0.17'
 gem 'RedCloth', '~> 4.3.2'
-gem 'rdoc', '~> 4.2'
+gem 'rdoc', '~> 6.0'
 gem 'org-ruby', '~> 0.9.12'
 gem 'creole', '~> 0.5.0'
 gem 'wikicloth', '0.8.1'
@@ -144,6 +147,9 @@ gem 'truncato', '~> 0.7.9'
 gem 'bootstrap_form', '~> 2.7.0'
 gem 'nokogiri', '~> 1.8.2'
 
+# Calendar rendering
+gem 'icalendar'
+
 # Diffs
 gem 'diffy', '~> 3.1.0'
 
@@ -160,10 +166,9 @@ gem 'state_machines-activerecord', '~> 0.5.1'
 gem 'acts-as-taggable-on', '~> 5.0'
 
 # Background jobs
-gem 'sidekiq', '~> 5.0'
+gem 'sidekiq', '~> 5.2.1'
 gem 'sidekiq-cron', '~> 0.6.0'
-gem 'redis-namespace', '~> 1.5.2'
-gem 'sidekiq-limit_fetch', '~> 3.4', require: false
+gem 'redis-namespace', '~> 1.6.0'
 
 # Cron Parser
 gem 'rufus-scheduler', '~> 3.4'
@@ -172,7 +177,10 @@ gem 'rufus-scheduler', '~> 3.4'
 gem 'httparty', '~> 0.13.3'
 
 # Colored output to console
-gem 'rainbow', '~> 2.2'
+gem 'rainbow', '~> 3.0'
+
+# Progress bar
+gem 'ruby-progressbar'
 
 # GitLab settings
 gem 'settingslogic', '~> 2.0.9'
@@ -184,6 +192,9 @@ gem 're2', '~> 1.1.1'
 
 gem 'version_sorter', '~> 2.1.0'
 
+# Export Ruby Regex to Javascript
+gem 'js_regex', '~> 2.2.1'
+
 # User agent parsing
 gem 'device_detector'
 
@@ -203,12 +214,12 @@ gem 'jira-ruby', '~> 1.4'
 # Flowdock integration
 gem 'gitlab-flowdock-git-hook', '~> 1.0.1'
 
-# Gemnasium integration
-gem 'gemnasium-gitlab-service', '~> 0.2'
-
 # Slack integration
 gem 'slack-notifier', '~> 1.5.1'
 
+# Hangouts Chat integration
+gem 'hangouts-chat', '~> 0.0.5'
+
 # Asana integration
 gem 'asana', '~> 0.6.0'
 
@@ -216,13 +227,10 @@ gem 'asana', '~> 0.6.0'
 gem 'ruby-fogbugz', '~> 0.2.1'
 
 # Kubernetes integration
-gem 'kubeclient', '~> 3.0'
-
-# d3
-gem 'd3_rails', '~> 3.5.0'
+gem 'kubeclient', '~> 3.1.0'
 
 # Sanitize user input
-gem 'sanitize', '~> 2.0'
+gem 'sanitize', '~> 4.6'
 gem 'babosa', '~> 1.0.2'
 
 # Sanitizes SVG input
@@ -257,10 +265,9 @@ gem 'sass-rails', '~> 5.0.6'
 gem 'uglifier', '~> 2.7.2'
 
 gem 'addressable', '~> 2.5.2'
-gem 'bootstrap-sass', '~> 3.3.0'
 gem 'font-awesome-rails', '~> 4.7'
 gem 'gemojione', '~> 3.3'
-gem 'gon', '~> 6.1.0'
+gem 'gon', '~> 6.2'
 gem 'jquery-atwho-rails', '~> 1.3.2'
 gem 'request_store', '~> 1.3'
 gem 'select2-rails', '~> 3.5.9'
@@ -288,16 +295,15 @@ gem 'peek-mysql2', '~> 1.1.0', group: :mysql
 gem 'peek-pg', '~> 1.3.0', group: :postgres
 gem 'peek-rblineprof', '~> 0.2.0'
 gem 'peek-redis', '~> 1.2.0'
-gem 'peek-sidekiq', '~> 1.0.3'
+gem 'gitlab-sidekiq-fetcher', require: 'sidekiq-reliable-fetch'
 
 # Metrics
 group :metrics do
-  gem 'allocations', '~> 1.0', require: false, platform: :mri
   gem 'method_source', '~> 0.8', require: false
   gem 'influxdb', '~> 0.2', require: false
 
   # Prometheus
-  gem 'prometheus-client-mmap', '~> 0.9.1'
+  gem 'prometheus-client-mmap', '~> 0.9.4'
   gem 'raindrops', '~> 0.18'
 end
 
@@ -317,19 +323,18 @@ group :development do
 end
 
 group :development, :test do
+  gem 'bootsnap', '~> 1.3'
   gem 'bullet', '~> 5.5.0', require: !!ENV['ENABLE_BULLET']
   gem 'pry-byebug', '~> 3.4.1', platform: :mri
   gem 'pry-rails', '~> 0.3.4'
 
-  gem 'awesome_print', '~> 1.2.0', require: false
+  gem 'awesome_print', require: false
   gem 'fuubar', '~> 2.2.0'
 
   gem 'database_cleaner', '~> 1.5.0'
   gem 'factory_bot_rails', '~> 4.8.2'
-  gem 'rspec-rails', '~> 3.6.0'
+  gem 'rspec-rails', '~> 3.7.0'
   gem 'rspec-retry', '~> 0.4.5'
-  gem 'spinach-rails', '~> 0.2.1'
-  gem 'spinach-rerun-reporter', '~> 0.0.2'
   gem 'rspec_profiling', '~> 0.0.5'
   gem 'rspec-set', '~> 0.1.3'
   gem 'rspec-parameterized', require: false
@@ -342,26 +347,24 @@ group :development, :test do
 
   gem 'capybara', '~> 2.15'
   gem 'capybara-screenshot', '~> 1.0.0'
-  gem 'selenium-webdriver', '~> 3.5'
+  gem 'selenium-webdriver', '~> 3.12'
 
   gem 'spring', '~> 2.0.0'
   gem 'spring-commands-rspec', '~> 1.0.4'
-  gem 'spring-commands-spinach', '~> 1.1.0'
 
-  gem 'gitlab-styles', '~> 2.3', require: false
+  gem 'gitlab-styles', '~> 2.4', require: false
   # Pin these dependencies, otherwise a new rule could break the CI pipelines
-  gem 'rubocop', '~> 0.52.1'
+  gem 'rubocop', '~> 0.54.0'
   gem 'rubocop-rspec', '~> 1.22.1'
 
   gem 'scss_lint', '~> 0.56.0', require: false
   gem 'haml_lint', '~> 0.26.0', require: false
   gem 'simplecov', '~> 0.14.0', require: false
-  gem 'flay', '~> 2.10.0', require: false
   gem 'bundler-audit', '~> 0.5.0', require: false
 
   gem 'benchmark-ips', '~> 2.3.0', require: false
 
-  gem 'license_finder', '~> 3.1', require: false
+  gem 'license_finder', '~> 5.4', require: false
   gem 'knapsack', '~> 1.16'
 
   gem 'activerecord_sane_schema_dumper', gem_versions['activerecord_sane_schema_dumper']
@@ -375,7 +378,7 @@ end
 
 group :test do
   gem 'shoulda-matchers', '~> 3.1.2', require: false
-  gem 'email_spec', '~> 1.6.0'
+  gem 'email_spec', '~> 2.2.0'
   gem 'json-schema', '~> 2.8.0'
   gem 'webmock', '~> 2.3.2'
   gem 'rails-controller-testing' if rails5? # Rails5 only gem.
@@ -383,9 +386,10 @@ group :test do
   gem 'sham_rack', '~> 1.3.6'
   gem 'concurrent-ruby', '~> 1.0.5'
   gem 'test-prof', '~> 0.2.5'
+  gem 'rspec_junit_formatter'
 end
 
-gem 'octokit', '~> 4.8'
+gem 'octokit', '~> 4.9'
 
 gem 'mail_room', '~> 0.9.1'
 
@@ -393,6 +397,7 @@ gem 'email_reply_trimmer', '~> 0.1'
 gem 'html2text'
 
 gem 'ruby-prof', '~> 0.17.0'
+gem 'rbtrace', '~> 0.4', require: false
 
 # OAuth
 gem 'oauth2', '~> 1.4'
@@ -405,18 +410,17 @@ gem 'vmstat', '~> 2.3.0'
 gem 'sys-filesystem', '~> 1.1.6'
 
 # SSH host key support
-gem 'net-ssh', '~> 4.2.0'
+gem 'net-ssh', '~> 5.0'
 gem 'sshkey', '~> 1.9.0'
 
 # Required for ED25519 SSH host key support
 group :ed25519 do
-  gem 'rbnacl-libsodium'
-  gem 'rbnacl', '~> 4.0'
+  gem 'ed25519', '~> 1.2'
   gem 'bcrypt_pbkdf', '~> 1.0'
 end
 
 # Gitaly GRPC client
-gem 'gitaly-proto', '~> 0.99.0', require: 'gitaly'
+gem 'gitaly-proto', '~> 0.118.1', require: 'gitaly'
 gem 'grpc', '~> 1.11.0'
 
 # Locked until https://github.com/google/protobuf/issues/4210 is closed
@@ -434,4 +438,4 @@ gem 'lograge', '~> 0.5'
 gem 'grape_logging', '~> 1.7'
 
 # Asset synchronization
-gem 'asset_sync', '~> 2.2.0'
+gem 'asset_sync', '~> 2.4'
diff --git a/pkgs/applications/version-management/gitlab/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile.lock
index 2a63ee6a5328..9837a195d8c7 100644
--- a/pkgs/applications/version-management/gitlab/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ce/Gemfile.lock
@@ -49,7 +49,6 @@ GEM
       public_suffix (>= 2.0.2, < 4.0)
     aes_key_wrap (1.0.1)
     akismet (2.0.0)
-    allocations (1.0.5)
     arel (6.0.4)
     asana (0.6.0)
       faraday (~> 0.9)
@@ -59,7 +58,7 @@ GEM
     asciidoctor (1.5.6.2)
     asciidoctor-plantuml (0.0.8)
       asciidoctor (~> 1.5)
-    asset_sync (2.2.0)
+    asset_sync (2.4.0)
       activemodel (>= 4.1.0)
       fog-core
       mime-types (>= 2.99)
@@ -69,10 +68,7 @@ GEM
     attr_encrypted (3.1.0)
       encryptor (~> 3.0.0)
     attr_required (1.0.0)
-    autoprefixer-rails (6.2.3)
-      execjs
-      json
-    awesome_print (1.2.0)
+    awesome_print (1.8.0)
     axiom-types (0.1.1)
       descendants_tracker (~> 0.0.4)
       ice_nine (~> 0.11.0)
@@ -80,7 +76,7 @@ GEM
     babosa (1.0.2)
     base32 (0.3.2)
     batch-loader (1.2.1)
-    bcrypt (3.1.11)
+    bcrypt (3.1.12)
     bcrypt_pbkdf (1.0.0)
     benchmark-ips (2.3.0)
     better_errors (2.1.1)
@@ -90,13 +86,11 @@ GEM
     bindata (2.4.3)
     binding_of_caller (0.7.2)
       debug_inspector (>= 0.0.1)
-    blankslate (2.1.2.4)
-    bootstrap-sass (3.3.6)
-      autoprefixer-rails (>= 5.2.1)
-      sass (>= 3.3.4)
+    bootsnap (1.3.2)
+      msgpack (~> 1.0)
     bootstrap_form (2.7.0)
     brakeman (4.2.1)
-    browser (2.2.0)
+    browser (2.5.3)
     builder (3.2.3)
     bullet (5.5.1)
       activesupport (>= 3.0.0)
@@ -115,24 +109,23 @@ GEM
     capybara-screenshot (1.0.14)
       capybara (>= 1.0, < 3)
       launchy
-    carrierwave (1.2.1)
+    carrierwave (1.2.3)
       activemodel (>= 4.0.0)
       activesupport (>= 4.0.0)
       mime-types (>= 1.16)
     cause (0.1)
     charlock_holmes (0.7.6)
-    childprocess (0.7.0)
+    childprocess (0.9.0)
       ffi (~> 1.0, >= 1.0.11)
     chronic (0.10.2)
     chronic_duration (0.10.6)
       numerizer (~> 0.1.1)
     chunky_png (1.3.5)
     citrus (3.0.2)
-    coderay (1.1.1)
+    coderay (1.1.2)
     coercible (1.0.0)
       descendants_tracker (~> 0.0.1)
-    colorize (0.7.7)
-    commonmarker (0.17.8)
+    commonmarker (0.17.13)
       ruby-enum (~> 0.5)
     concord (0.1.5)
       adamantium (~> 0.2.0)
@@ -140,16 +133,14 @@ GEM
     concurrent-ruby (1.0.5)
     concurrent-ruby-ext (1.0.5)
       concurrent-ruby (= 1.0.5)
-    connection_pool (2.2.1)
+    connection_pool (2.2.2)
     crack (0.4.3)
       safe_yaml (~> 1.0.0)
     crass (1.0.4)
     creole (0.5.0)
     css_parser (1.5.0)
       addressable
-    d3_rails (3.5.11)
-      railties (>= 3.1.0)
-    daemons (1.2.3)
+    daemons (1.2.6)
     database_cleaner (1.5.3)
     debug_inspector (0.0.2)
     debugger-ruby_core_source (1.3.8)
@@ -177,27 +168,27 @@ GEM
     diff-lcs (1.3)
     diffy (3.1.0)
     docile (1.1.5)
-    domain_name (0.5.20170404)
+    domain_name (0.5.20180417)
       unf (>= 0.0.5, < 1.0.0)
     doorkeeper (4.3.2)
       railties (>= 4.2)
-    doorkeeper-openid_connect (1.3.0)
+    doorkeeper-openid_connect (1.5.0)
       doorkeeper (~> 4.3)
       json-jwt (~> 1.6)
-    dropzonejs-rails (0.7.2)
-      rails (> 3.1)
+    ed25519 (1.2.4)
     email_reply_trimmer (0.1.6)
-    email_spec (1.6.0)
+    email_spec (2.2.0)
+      htmlentities (~> 4.3.3)
       launchy (~> 2.1)
-      mail (~> 2.2)
+      mail (~> 2.7)
     encryptor (3.0.0)
     equalizer (0.0.11)
     erubis (2.7.0)
     escape_utils (1.1.1)
     et-orbi (1.0.3)
       tzinfo
-    eventmachine (1.0.8)
-    excon (0.60.0)
+    eventmachine (1.2.7)
+    excon (0.62.0)
     execjs (2.6.0)
     expression_parser (0.9.0)
     factory_bot (4.8.2)
@@ -215,12 +206,7 @@ GEM
     fast_blank (1.0.0)
     fast_gettext (1.6.0)
     ffaker (2.4.0)
-    ffi (1.9.18)
-    flay (2.10.0)
-      erubis (~> 2.7.0)
-      path_expander (~> 1.0)
-      ruby_parser (~> 3.0)
-      sexp_processor (~> 4.0)
+    ffi (1.9.25)
     flipper (0.13.0)
     flipper-active_record (0.13.0)
       activerecord (>= 3.2, < 6)
@@ -245,11 +231,11 @@ GEM
       builder
       excon (~> 0.58)
       formatador (~> 0.2)
-    fog-google (1.3.3)
+    fog-google (1.7.1)
       fog-core
       fog-json
       fog-xml
-      google-api-client (~> 0.19.1)
+      google-api-client (~> 0.23.0)
     fog-json (1.0.2)
       fog-core (~> 1.0)
       multi_json (~> 1.10)
@@ -275,8 +261,6 @@ GEM
     fuubar (2.2.0)
       rspec-core (~> 3.0)
       ruby-progressbar (~> 1.4)
-    gemnasium-gitlab-service (0.2.6)
-      rugged (~> 0.21)
     gemojione (3.3.0)
       json
     get_process_mem (0.2.0)
@@ -290,8 +274,7 @@ GEM
       gettext_i18n_rails (>= 0.7.1)
       po_to_json (>= 1.0.0)
       rails (>= 3.2.0)
-    gherkin-ruby (0.3.2)
-    gitaly-proto (0.99.0)
+    gitaly-proto (0.118.1)
       google-protobuf (~> 3.1)
       grpc (~> 1.10)
     github-linguist (5.3.3)
@@ -304,25 +287,24 @@ GEM
       flowdock (~> 0.7)
       gitlab-grit (>= 2.4.1)
       multi_json
-    gitlab-gollum-lib (4.2.7.2)
+    gitlab-gollum-lib (4.2.7.5)
       gemojione (~> 3.2)
       github-markup (~> 1.6)
       gollum-grit_adapter (~> 1.0)
       nokogiri (>= 1.6.1, < 2.0)
       rouge (~> 3.1)
-      sanitize (~> 2.1)
+      sanitize (~> 4.6.4)
       stringex (~> 2.6)
-    gitlab-gollum-rugged_adapter (0.4.4)
-      mime-types (>= 1.15)
-      rugged (~> 0.25)
     gitlab-grit (2.8.2)
       charlock_holmes (~> 0.6)
       diff-lcs (~> 1.1)
       mime-types (>= 1.16)
       posix-spawn (~> 0.3)
-    gitlab-markup (1.6.3)
-    gitlab-styles (2.3.2)
-      rubocop (~> 0.51)
+    gitlab-markup (1.6.4)
+    gitlab-sidekiq-fetcher (0.3.0)
+      sidekiq (~> 5)
+    gitlab-styles (2.4.1)
+      rubocop (~> 0.54.0)
       rubocop-gitlab-security (~> 0.1.0)
       rubocop-rspec (~> 1.19)
     gitlab_omniauth-ldap (2.0.4)
@@ -334,12 +316,11 @@ GEM
       activesupport (>= 4.2.0)
     gollum-grit_adapter (1.0.1)
       gitlab-grit (~> 2.7, >= 2.7.1)
-    gon (6.1.0)
+    gon (6.2.0)
       actionpack (>= 3.0)
-      json
       multi_json
       request_store (>= 1.0)
-    google-api-client (0.19.8)
+    google-api-client (0.23.4)
       addressable (~> 2.5, >= 2.5.1)
       googleauth (>= 0.5, < 0.7.0)
       httpclient (>= 2.8.1, < 3.0)
@@ -359,7 +340,7 @@ GEM
       signet (~> 0.7)
     gpgme (2.0.13)
       mini_portile2 (~> 2.1)
-    grape (1.0.2)
+    grape (1.1.0)
       activesupport
       builder
       mustermann-grape (~> 1.0.0)
@@ -369,17 +350,22 @@ GEM
     grape-entity (0.7.1)
       activesupport (>= 4.0)
       multi_json (>= 1.3.2)
-    grape-route-helpers (2.1.0)
-      activesupport
-      grape (>= 0.16.0)
-      rake
+    grape-path-helpers (1.0.6)
+      activesupport (>= 4, < 5.1)
+      grape (~> 1.0)
+      rake (~> 12)
     grape_logging (1.7.0)
       grape
+    graphiql-rails (1.4.10)
+      railties
+      sprockets-rails
+    graphql (1.8.1)
     grpc (1.11.0)
       google-protobuf (~> 3.1)
       googleapis-common-protos-types (~> 1.0.0)
       googleauth (>= 0.5.1, < 0.7)
-    haml (4.0.7)
+    haml (5.0.4)
+      temple (>= 0.8.0)
       tilt
     haml_lint (0.26.0)
       haml (>= 4.0, < 5.1)
@@ -387,10 +373,11 @@ GEM
       rake (>= 10, < 13)
       rubocop (>= 0.49.0)
       sysexits (~> 1.1)
-    hamlit (2.6.1)
-      temple (~> 0.7.6)
+    hamlit (2.8.8)
+      temple (>= 0.8.0)
       thor
       tilt
+    hangouts-chat (0.0.5)
     hashdiff (0.3.4)
     hashie (3.5.7)
     hashie-forbidden_attributes (0.1.1)
@@ -400,7 +387,7 @@ GEM
     hipchat (1.5.2)
       httparty
       mimemagic
-    html-pipeline (2.7.1)
+    html-pipeline (2.8.4)
       activesupport (>= 2)
       nokogiri (>= 1.4)
     html2text (0.2.0)
@@ -421,6 +408,7 @@ GEM
     httpclient (2.8.3)
     i18n (0.9.5)
       concurrent-ruby (~> 1.0)
+    icalendar (2.4.1)
     ice_nine (0.11.2)
     influxdb (0.2.3)
       cause
@@ -431,13 +419,13 @@ GEM
       multipart-post
       oauth (~> 0.5, >= 0.5.0)
     jquery-atwho-rails (1.3.2)
+    js_regex (2.2.1)
+      regexp_parser (>= 0.4.11, <= 0.5.0)
     json (1.8.6)
-    json-jwt (1.9.2)
+    json-jwt (1.9.4)
       activesupport
       aes_key_wrap
       bindata
-      securecompare
-      url_safe_base64
     json-schema (2.8.0)
       addressable (>= 2.4)
     jwt (1.5.6)
@@ -456,10 +444,9 @@ GEM
     kgio (2.10.0)
     knapsack (1.16.0)
       rake
-      timecop (>= 0.1.0)
-    kubeclient (3.0.0)
+    kubeclient (3.1.0)
       http (~> 2.2.2)
-      recursive-open-struct (~> 1.0.4)
+      recursive-open-struct (~> 1.0, >= 1.0.4)
       rest-client (~> 2.0)
     launchy (2.4.3)
       addressable (~> 2.3)
@@ -469,13 +456,12 @@ GEM
       actionmailer (>= 3.2)
       letter_opener (~> 1.0)
       railties (>= 3.2)
-    license_finder (3.1.1)
+    license_finder (5.4.0)
       bundler
-      httparty
       rubyzip
       thor
-      toml (= 0.1.2)
-      with_env (> 1.0)
+      toml (= 0.2.0)
+      with_env (= 1.1.0)
       xml-simple
     licensee (8.9.2)
       rugged (~> 0.24)
@@ -498,27 +484,31 @@ GEM
     memoist (0.16.0)
     memoizable (0.4.2)
       thread_safe (~> 0.3, >= 0.3.1)
-    method_source (0.8.2)
+    method_source (0.9.0)
     mime-types (3.1)
       mime-types-data (~> 3.2015)
     mime-types-data (3.2016.0521)
     mimemagic (0.3.0)
-    mini_mime (1.0.0)
+    mini_magick (4.8.0)
+    mini_mime (1.0.1)
     mini_portile2 (2.3.0)
     minitest (5.7.0)
     mousetrap-rails (1.4.6)
+    msgpack (1.2.4)
     multi_json (1.13.1)
     multi_xml (0.6.0)
     multipart-post (2.0.0)
-    mustermann (1.0.2)
+    mustermann (1.0.3)
     mustermann-grape (1.0.0)
       mustermann (~> 1.0.0)
     mysql2 (0.4.10)
     net-ldap (0.16.0)
-    net-ssh (4.2.0)
+    net-ssh (5.0.1)
     netrc (0.11.0)
-    nokogiri (1.8.2)
+    nokogiri (1.8.4)
       mini_portile2 (~> 2.3.0)
+    nokogumbo (1.5.0)
+      nokogiri
     numerizer (0.1.1)
     oauth (0.5.4)
     oauth2 (1.4.0)
@@ -527,15 +517,16 @@ GEM
       multi_json (~> 1.3)
       multi_xml (~> 0.5)
       rack (>= 1.2, < 3)
-    octokit (4.8.0)
+    octokit (4.9.0)
       sawyer (~> 0.8.0, >= 0.5.3)
     omniauth (1.8.1)
       hashie (>= 3.4.6, < 3.6.0)
       rack (>= 1.6.2, < 3)
     omniauth-auth0 (2.0.0)
       omniauth-oauth2 (~> 1.4)
-    omniauth-authentiq (0.3.1)
-      omniauth-oauth2 (~> 1.3, >= 1.3.1)
+    omniauth-authentiq (0.3.3)
+      jwt (>= 1.5)
+      omniauth-oauth2 (>= 1.5)
     omniauth-azure-oauth2 (0.0.9)
       jwt (~> 1.0)
       omniauth (~> 1.0)
@@ -549,7 +540,7 @@ GEM
     omniauth-github (1.3.0)
       omniauth (~> 1.5)
       omniauth-oauth2 (>= 1.4.0, < 2.0)
-    omniauth-gitlab (1.0.2)
+    omniauth-gitlab (1.0.3)
       omniauth (~> 1.0)
       omniauth-oauth2 (~> 1.0)
     omniauth-google-oauth2 (0.5.3)
@@ -572,7 +563,7 @@ GEM
     omniauth-saml (1.10.0)
       omniauth (~> 1.3, >= 1.3.2)
       ruby-saml (~> 1.7)
-    omniauth-shibboleth (1.2.1)
+    omniauth-shibboleth (1.3.0)
       omniauth (>= 1.0.0)
     omniauth-twitter (1.4.0)
       omniauth-oauth (~> 1.1)
@@ -588,9 +579,7 @@ GEM
     parallel (1.12.1)
     parser (2.5.1.0)
       ast (~> 2.4.0)
-    parslet (1.5.0)
-      blankslate (~> 2.0)
-    path_expander (1.0.2)
+    parslet (1.8.2)
     peek (1.0.1)
       concurrent-ruby (>= 0.9.0)
       concurrent-ruby-ext (>= 0.9.0)
@@ -613,10 +602,6 @@ GEM
       atomic (>= 1.0.0)
       peek
       redis
-    peek-sidekiq (1.0.3)
-      atomic (>= 1.0.0)
-      peek
-      sidekiq
     pg (0.18.4)
     po_to_json (1.0.1)
       json (>= 1.6.0)
@@ -634,17 +619,16 @@ GEM
       parser
       unparser
     procto (0.0.3)
-    prometheus-client-mmap (0.9.1)
-    pry (0.10.4)
+    prometheus-client-mmap (0.9.4)
+    pry (0.11.3)
       coderay (~> 1.1.0)
-      method_source (~> 0.8.1)
-      slop (~> 3.4)
-    pry-byebug (3.4.2)
-      byebug (~> 9.0)
+      method_source (~> 0.9.0)
+    pry-byebug (3.4.3)
+      byebug (>= 9.0, < 9.1)
       pry (~> 0.10)
-    pry-rails (0.3.5)
-      pry (>= 0.9.10)
-    public_suffix (3.0.2)
+    pry-rails (0.3.6)
+      pry (>= 0.10.4)
+    public_suffix (3.0.3)
     pyu-ruby-sasl (0.0.3.3)
     rack (1.6.10)
     rack-accept (0.4.5)
@@ -658,7 +642,7 @@ GEM
       httpclient (>= 2.4)
       multi_json (>= 1.3.6)
       rack (>= 1.1)
-    rack-protection (2.0.1)
+    rack-protection (2.0.3)
       rack
     rack-proxy (0.6.0)
       rack
@@ -691,8 +675,7 @@ GEM
       activesupport (= 4.2.10)
       rake (>= 0.8.7)
       thor (>= 0.18.1, < 2.0)
-    rainbow (2.2.2)
-      rake
+    rainbow (3.0.0)
     raindrops (0.18.0)
     rake (12.3.1)
     rb-fsevent (0.10.2)
@@ -700,16 +683,15 @@ GEM
       ffi (>= 0.5.0, < 2)
     rblineprof (0.3.6)
       debugger-ruby_core_source (~> 1.3)
-    rbnacl (4.0.2)
-      ffi
-    rbnacl-libsodium (1.0.11)
-      rbnacl (>= 3.0.1)
-    rdoc (4.2.2)
-      json (~> 1.4)
+    rbtrace (0.4.10)
+      ffi (>= 1.0.6)
+      msgpack (>= 0.4.3)
+      trollop (>= 1.16.2)
+    rdoc (6.0.4)
     re2 (1.1.1)
     recaptcha (3.0.0)
       json
-    recursive-open-struct (1.0.5)
+    recursive-open-struct (1.1.0)
     redcarpet (3.4.0)
     redis (3.3.5)
     redis-actionpack (5.0.2)
@@ -719,8 +701,8 @@ GEM
     redis-activesupport (5.0.4)
       activesupport (>= 3, < 6)
       redis-store (>= 1.3, < 2)
-    redis-namespace (1.5.2)
-      redis (~> 3.0, >= 3.0.4)
+    redis-namespace (1.6.0)
+      redis (>= 3.0.4)
     redis-rack (2.0.4)
       rack (>= 1.5, < 3)
       redis-store (>= 1.2, < 2)
@@ -730,6 +712,7 @@ GEM
       redis-store (>= 1.2, < 2)
     redis-store (1.4.1)
       redis (>= 2.2, < 5)
+    regexp_parser (0.5.0)
     representable (3.0.4)
       declarative (< 0.1.0)
       declarative-option (< 0.2.0)
@@ -742,59 +725,62 @@ GEM
       http-cookie (>= 1.0.2, < 2.0)
       mime-types (>= 1.16, < 4.0)
       netrc (~> 0.8)
-    retriable (3.1.1)
+    retriable (3.1.2)
     rinku (2.0.0)
     rotp (2.1.2)
-    rouge (3.1.1)
+    rouge (3.3.0)
     rqrcode (0.7.0)
       chunky_png
     rqrcode-rails3 (0.1.7)
       rqrcode (>= 0.4.2)
-    rspec (3.6.0)
-      rspec-core (~> 3.6.0)
-      rspec-expectations (~> 3.6.0)
-      rspec-mocks (~> 3.6.0)
-    rspec-core (3.6.0)
-      rspec-support (~> 3.6.0)
-    rspec-expectations (3.6.0)
+    rspec (3.7.0)
+      rspec-core (~> 3.7.0)
+      rspec-expectations (~> 3.7.0)
+      rspec-mocks (~> 3.7.0)
+    rspec-core (3.7.1)
+      rspec-support (~> 3.7.0)
+    rspec-expectations (3.7.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.6.0)
-    rspec-mocks (3.6.0)
+      rspec-support (~> 3.7.0)
+    rspec-mocks (3.7.0)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.6.0)
+      rspec-support (~> 3.7.0)
     rspec-parameterized (0.4.0)
       binding_of_caller
       parser
       proc_to_ast
       rspec (>= 2.13, < 4)
       unparser
-    rspec-rails (3.6.0)
+    rspec-rails (3.7.2)
       actionpack (>= 3.0)
       activesupport (>= 3.0)
       railties (>= 3.0)
-      rspec-core (~> 3.6.0)
-      rspec-expectations (~> 3.6.0)
-      rspec-mocks (~> 3.6.0)
-      rspec-support (~> 3.6.0)
+      rspec-core (~> 3.7.0)
+      rspec-expectations (~> 3.7.0)
+      rspec-mocks (~> 3.7.0)
+      rspec-support (~> 3.7.0)
     rspec-retry (0.4.5)
       rspec-core
     rspec-set (0.1.3)
-    rspec-support (3.6.0)
+    rspec-support (3.7.1)
+    rspec_junit_formatter (0.2.3)
+      builder (< 4)
+      rspec-core (>= 2, < 4, != 2.12.0)
     rspec_profiling (0.0.5)
       activerecord
       pg
       rails
       sqlite3
-    rubocop (0.52.1)
+    rubocop (0.54.0)
       parallel (~> 1.10)
-      parser (>= 2.4.0.2, < 3.0)
+      parser (>= 2.5)
       powerpack (~> 0.1)
       rainbow (>= 2.2.2, < 4.0)
       ruby-progressbar (~> 1.7)
       unicode-display_width (~> 1.0, >= 1.0.1)
     rubocop-gitlab-security (0.1.1)
       rubocop (>= 0.51)
-    rubocop-rspec (1.22.1)
+    rubocop-rspec (1.22.2)
       rubocop (>= 0.52.1)
     ruby-enum (0.7.2)
       i18n
@@ -808,13 +794,15 @@ GEM
       sexp_processor (~> 4.1)
     rubyntlm (0.6.2)
     rubypants (0.2.0)
-    rubyzip (1.2.1)
+    rubyzip (1.2.2)
     rufus-scheduler (3.4.0)
       et-orbi (~> 1.0)
-    rugged (0.27.0)
+    rugged (0.27.4)
     safe_yaml (1.0.4)
-    sanitize (2.1.0)
+    sanitize (4.6.6)
+      crass (~> 1.0.2)
       nokogiri (>= 1.4.4)
+      nokogumbo (~> 1.4)
     sass (3.5.5)
       sass-listen (~> 4.0.0)
     sass-listen (4.0.0)
@@ -832,15 +820,14 @@ GEM
     scss_lint (0.56.0)
       rake (>= 0.9, < 13)
       sass (~> 3.5.3)
-    securecompare (1.0.0)
     seed-fu (2.3.7)
       activerecord (>= 3.1)
       activesupport (>= 3.1)
     select2-rails (3.5.9.3)
       thor (~> 0.14)
-    selenium-webdriver (3.5.0)
+    selenium-webdriver (3.12.0)
       childprocess (~> 0.5)
-      rubyzip (~> 1.0)
+      rubyzip (~> 1.2)
     sentry-raven (2.7.2)
       faraday (>= 0.7.6, < 1.0)
     settingslogic (2.0.9)
@@ -849,16 +836,13 @@ GEM
       rack
     shoulda-matchers (3.1.2)
       activesupport (>= 4.0.0)
-    sidekiq (5.0.5)
-      concurrent-ruby (~> 1.0)
-      connection_pool (~> 2.2, >= 2.2.0)
+    sidekiq (5.2.1)
+      connection_pool (~> 2.2, >= 2.2.2)
       rack-protection (>= 1.5.0)
-      redis (>= 3.3.4, < 5)
+      redis (>= 3.3.5, < 5)
     sidekiq-cron (0.6.0)
       rufus-scheduler (>= 3.3.0)
       sidekiq (>= 4.2.1)
-    sidekiq-limit_fetch (3.4.0)
-      sidekiq (>= 4)
     signet (0.8.1)
       addressable (~> 2.3)
       faraday (~> 0.9)
@@ -871,24 +855,11 @@ GEM
       simplecov-html (~> 0.10.0)
     simplecov-html (0.10.0)
     slack-notifier (1.5.1)
-    slop (3.6.0)
-    spinach (0.8.10)
-      colorize
-      gherkin-ruby (>= 0.3.2)
-      json
-    spinach-rails (0.2.1)
-      capybara (>= 2.0.0)
-      railties (>= 3)
-      spinach (>= 0.4)
-    spinach-rerun-reporter (0.0.2)
-      spinach (~> 0.8)
-    spring (2.0.1)
+    spring (2.0.2)
       activesupport (>= 4.2)
     spring-commands-rspec (1.0.4)
       spring (>= 0.9.1)
-    spring-commands-spinach (1.1.0)
-      spring (>= 0.9.1)
-    sprockets (3.7.1)
+    sprockets (3.7.2)
       concurrent-ruby (~> 1.0)
       rack (> 1, < 3)
     sprockets-rails (3.2.1)
@@ -909,24 +880,25 @@ GEM
     sys-filesystem (1.1.6)
       ffi
     sysexits (1.2.0)
-    temple (0.7.7)
+    temple (0.8.0)
     test-prof (0.2.5)
     test_after_commit (1.1.0)
       activerecord (>= 3.2)
     text (1.3.1)
-    thin (1.7.0)
+    thin (1.7.2)
       daemons (~> 1.0, >= 1.0.9)
       eventmachine (~> 1.0, >= 1.0.4)
       rack (>= 1, < 3)
     thor (0.19.4)
     thread_safe (0.3.6)
-    tilt (2.0.6)
+    tilt (2.0.8)
     timecop (0.8.1)
     timfel-krb5-auth (0.8.3)
-    toml (0.1.2)
-      parslet (~> 1.5.0)
+    toml (0.2.0)
+      parslet (~> 1.8.0)
     toml-rb (1.0.0)
       citrus (~> 3.0, > 3.0)
+    trollop (2.1.3)
     truncato (0.7.10)
       htmlentities (~> 4.3.1)
       nokogiri (~> 1.8.0, >= 1.7.0)
@@ -940,7 +912,7 @@ GEM
     unf (0.1.4)
       unf_ext
     unf_ext (0.0.7.5)
-    unicode-display_width (1.3.0)
+    unicode-display_width (1.3.2)
     unicorn (5.1.0)
       kgio (~> 2.6)
       raindrops (~> 0.7)
@@ -956,7 +928,6 @@ GEM
       equalizer (~> 0.0.9)
       parser (>= 2.3.1.2, < 2.6)
       procto (~> 0.0.2)
-    url_safe_base64 (0.2.2)
     validates_hostname (1.0.6)
       activerecord (>= 3.0)
       activesupport (>= 3.0)
@@ -973,7 +944,7 @@ GEM
       addressable (>= 2.3.6)
       crack (>= 0.3.2)
       hashdiff
-    webpack-rails (0.9.10)
+    webpack-rails (0.9.11)
       railties (>= 3.2.0)
     wikicloth (0.8.1)
       builder
@@ -994,13 +965,12 @@ DEPENDENCIES
   acts-as-taggable-on (~> 5.0)
   addressable (~> 2.5.2)
   akismet (~> 2.0)
-  allocations (~> 1.0)
   asana (~> 0.6.0)
   asciidoctor (~> 1.5.6)
   asciidoctor-plantuml (= 0.0.8)
-  asset_sync (~> 2.2.0)
+  asset_sync (~> 2.4)
   attr_encrypted (~> 3.1.0)
-  awesome_print (~> 1.2.0)
+  awesome_print
   babosa (~> 1.0.2)
   base32 (~> 0.3.0)
   batch-loader (~> 1.2.1)
@@ -1008,15 +978,15 @@ DEPENDENCIES
   benchmark-ips (~> 2.3.0)
   better_errors (~> 2.1.0)
   binding_of_caller (~> 0.7.2)
-  bootstrap-sass (~> 3.3.0)
+  bootsnap (~> 1.3)
   bootstrap_form (~> 2.7.0)
   brakeman (~> 4.2)
-  browser (~> 2.2)
+  browser (~> 2.5)
   bullet (~> 5.5.0)
   bundler-audit (~> 0.5.0)
   capybara (~> 2.15)
   capybara-screenshot (~> 1.0.0)
-  carrierwave (~> 1.2)
+  carrierwave (= 1.2.3)
   charlock_holmes (~> 0.7.5)
   chronic (~> 0.10.2)
   chronic_duration (~> 0.10.6)
@@ -1024,7 +994,6 @@ DEPENDENCIES
   concurrent-ruby (~> 1.0.5)
   connection_pool (~> 2.0)
   creole (~> 0.5.0)
-  d3_rails (~> 3.5.0)
   database_cleaner (~> 1.5.0)
   deckar01-task_list (= 2.0.0)
   default_value_for (~> 3.0.0)
@@ -1033,84 +1002,89 @@ DEPENDENCIES
   devise-two-factor (~> 3.0.0)
   diffy (~> 3.1.0)
   doorkeeper (~> 4.3)
-  doorkeeper-openid_connect (~> 1.3)
-  dropzonejs-rails (~> 0.7.1)
+  doorkeeper-openid_connect (~> 1.5)
+  ed25519 (~> 1.2)
   email_reply_trimmer (~> 0.1)
-  email_spec (~> 1.6.0)
+  email_spec (~> 2.2.0)
   factory_bot_rails (~> 4.8.2)
   faraday (~> 0.12)
   fast_blank
   ffaker (~> 2.4)
-  flay (~> 2.10.0)
   flipper (~> 0.13.0)
   flipper-active_record (~> 0.13.0)
   flipper-active_support_cache_store (~> 0.13.0)
   fog-aliyun (~> 0.2.0)
   fog-aws (~> 2.0.1)
   fog-core (~> 1.44)
-  fog-google (~> 1.3.3)
+  fog-google (~> 1.7.1)
   fog-local (~> 0.3)
   fog-openstack (~> 0.1)
   fog-rackspace (~> 0.1.1)
   font-awesome-rails (~> 4.7)
   foreman (~> 0.84.0)
   fuubar (~> 2.2.0)
-  gemnasium-gitlab-service (~> 0.2)
   gemojione (~> 3.3)
   gettext (~> 3.2.2)
   gettext_i18n_rails (~> 1.8.0)
   gettext_i18n_rails_js (~> 1.3)
-  gitaly-proto (~> 0.99.0)
+  gitaly-proto (~> 0.118.1)
   github-linguist (~> 5.3.3)
+  github-markup (~> 1.7.0)
   gitlab-flowdock-git-hook (~> 1.0.1)
   gitlab-gollum-lib (~> 4.2)
-  gitlab-gollum-rugged_adapter (~> 0.4.4)
-  gitlab-markup (~> 1.6.2)
-  gitlab-styles (~> 2.3)
+  gitlab-markup (~> 1.6.4)
+  gitlab-sidekiq-fetcher
+  gitlab-styles (~> 2.4)
   gitlab_omniauth-ldap (~> 2.0.4)
-  gon (~> 6.1.0)
-  google-api-client (~> 0.19.8)
+  gon (~> 6.2)
+  google-api-client (~> 0.23)
   google-protobuf (= 3.5.1)
   gpgme
-  grape (~> 1.0)
+  grape (~> 1.1)
   grape-entity (~> 0.7.1)
-  grape-route-helpers (~> 2.1.0)
+  grape-path-helpers (~> 1.0)
   grape_logging (~> 1.7)
+  graphiql-rails (~> 1.4.10)
+  graphql (~> 1.8.0)
   grpc (~> 1.11.0)
   haml_lint (~> 0.26.0)
-  hamlit (~> 2.6.1)
+  hamlit (~> 2.8.8)
+  hangouts-chat (~> 0.0.5)
   hashie-forbidden_attributes
   health_check (~> 2.6.0)
   hipchat (~> 1.5.0)
-  html-pipeline (~> 2.7.1)
+  html-pipeline (~> 2.8)
   html2text
   httparty (~> 0.13.3)
+  icalendar
   influxdb (~> 0.2)
   jira-ruby (~> 1.4)
   jquery-atwho-rails (~> 1.3.2)
+  js_regex (~> 2.2.1)
   json-schema (~> 2.8.0)
   jwt (~> 1.5.6)
   kaminari (~> 1.0)
   knapsack (~> 1.16)
-  kubeclient (~> 3.0)
+  kubeclient (~> 3.1.0)
   letter_opener_web (~> 1.3.0)
-  license_finder (~> 3.1)
+  license_finder (~> 5.4)
   licensee (~> 8.9)
   lograge (~> 0.5)
   loofah (~> 2.2)
   mail_room (~> 0.9.1)
   method_source (~> 0.8)
+  mini_magick
   minitest (~> 5.7.0)
   mousetrap-rails (~> 1.4.6)
   mysql2 (~> 0.4.10)
   net-ldap
-  net-ssh (~> 4.2.0)
+  net-ssh (~> 5.0)
   nokogiri (~> 1.8.2)
   oauth2 (~> 1.4)
-  octokit (~> 4.8)
+  octokit (~> 4.9)
   omniauth (~> 1.8)
   omniauth-auth0 (~> 2.0.0)
-  omniauth-authentiq (~> 0.3.1)
+  omniauth-authentiq (~> 0.3.3)
   omniauth-azure-oauth2 (~> 0.0.9)
   omniauth-cas3 (~> 1.1.4)
   omniauth-facebook (~> 4.0.0)
@@ -1120,7 +1094,7 @@ DEPENDENCIES
   omniauth-kerberos (~> 0.3.0)
   omniauth-oauth2-generic (~> 0.2.2)
   omniauth-saml (~> 1.10)
-  omniauth-shibboleth (~> 1.2.0)
+  omniauth-shibboleth (~> 1.3.0)
   omniauth-twitter (~> 1.4)
   omniauth_crowd (~> 2.2.0)
   org-ruby (~> 0.9.12)
@@ -1130,10 +1104,9 @@ DEPENDENCIES
   peek-pg (~> 1.3.0)
   peek-rblineprof (~> 0.2.0)
   peek-redis (~> 1.2.0)
-  peek-sidekiq (~> 1.0.3)
   pg (~> 0.18.2)
   premailer-rails (~> 1.9.7)
-  prometheus-client-mmap (~> 0.9.1)
+  prometheus-client-mmap (~> 0.9.4)
   pry-byebug (~> 3.4.1)
   pry-rails (~> 0.3.4)
   rack-attack (~> 4.4.1)
@@ -1143,55 +1116,52 @@ DEPENDENCIES
   rails (= 4.2.10)
   rails-deprecated_sanitizer (~> 1.0.3)
   rails-i18n (~> 4.0.9)
-  rainbow (~> 2.2)
+  rainbow (~> 3.0)
   raindrops (~> 0.18)
   rblineprof (~> 0.3.6)
-  rbnacl (~> 4.0)
-  rbnacl-libsodium
-  rdoc (~> 4.2)
+  rbtrace (~> 0.4)
+  rdoc (~> 6.0)
   re2 (~> 1.1.1)
   recaptcha (~> 3.0)
   redcarpet (~> 3.4)
   redis (~> 3.2)
-  redis-namespace (~> 1.5.2)
+  redis-namespace (~> 1.6.0)
   redis-rails (~> 5.0.2)
   request_store (~> 1.3)
   responders (~> 2.0)
   rouge (~> 3.1)
   rqrcode-rails3 (~> 0.1.7)
   rspec-parameterized
-  rspec-rails (~> 3.6.0)
+  rspec-rails (~> 3.7.0)
   rspec-retry (~> 0.4.5)
   rspec-set (~> 0.1.3)
+  rspec_junit_formatter
   rspec_profiling (~> 0.0.5)
-  rubocop (~> 0.52.1)
+  rubocop (~> 0.54.0)
   rubocop-rspec (~> 1.22.1)
   ruby-fogbugz (~> 0.2.1)
   ruby-prof (~> 0.17.0)
+  ruby-progressbar
   ruby_parser (~> 3.8)
   rufus-scheduler (~> 3.4)
   rugged (~> 0.27)
-  sanitize (~> 2.0)
+  sanitize (~> 4.6)
   sass-rails (~> 5.0.6)
   scss_lint (~> 0.56.0)
   seed-fu (~> 2.3.7)
   select2-rails (~> 3.5.9)
-  selenium-webdriver (~> 3.5)
+  selenium-webdriver (~> 3.12)
   sentry-raven (~> 2.7)
   settingslogic (~> 2.0.9)
   sham_rack (~> 1.3.6)
   shoulda-matchers (~> 3.1.2)
-  sidekiq (~> 5.0)
+  sidekiq (~> 5.2.1)
   sidekiq-cron (~> 0.6.0)
-  sidekiq-limit_fetch (~> 3.4)
   simple_po_parser (~> 1.1.2)
   simplecov (~> 0.14.0)
   slack-notifier (~> 1.5.1)
-  spinach-rails (~> 0.2.1)
-  spinach-rerun-reporter (~> 0.0.2)
   spring (~> 2.0.0)
   spring-commands-rspec (~> 1.0.4)
-  spring-commands-spinach (~> 1.1.0)
   sprockets (~> 3.7.0)
   sshkey (~> 1.9.0)
   stackprof (~> 0.2.10)
@@ -1217,4 +1187,4 @@ DEPENDENCIES
   wikicloth (= 0.8.1)
 
 BUNDLED WITH
-   1.16.1
+   1.16.4
diff --git a/pkgs/applications/version-management/gitlab/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv-ce/gemset.nix
index 57c274566166..ee262b6b5d96 100644
--- a/pkgs/applications/version-management/gitlab/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ce/gemset.nix
@@ -130,14 +130,6 @@
     };
     version = "2.0.0";
   };
-  allocations = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1y7z66lpzabyvviphk1fnzvrj5vhv7v9vppcnkrf0n5wh8qwx2zi";
-      type = "gem";
-    };
-    version = "1.0.5";
-  };
   arel = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -176,10 +168,10 @@
     dependencies = ["activemodel" "fog-core" "mime-types" "unf"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "044nqqnbib1bpld33j5jxcql06d6fr6zmhq8hlm69zqd0xd509p0";
+      sha256 = "0wjd662yyg72dwwc6cav7gk2bjv9nkhn056f03h8zmyank451hdf";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "2.4.0";
   };
   ast = {
     source = {
@@ -214,22 +206,13 @@
     };
     version = "1.0.0";
   };
-  autoprefixer-rails = {
-    dependencies = ["execjs" "json"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0m1w42ncz0p48r5hbyglayxkzrnplw18r99dc1ia2cb3nizkwllx";
-      type = "gem";
-    };
-    version = "6.2.3";
-  };
   awesome_print = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1k85hckprq0s9pakgadf42k1d5s07q23m3y6cs977i6xmwdivyzr";
+      sha256 = "14arh1ixfsd6j5md0agyzvksm5svfkvchb90fp32nn7y3avcmc2h";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.8.0";
   };
   axiom-types = {
     dependencies = ["descendants_tracker" "ice_nine" "thread_safe"];
@@ -267,10 +250,10 @@
   bcrypt = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1d254sdhdj6mzak3fb5x3jam8b94pvl1srladvs53j05a89j5z50";
+      sha256 = "0ysblqxkclmnhrd0kmb5mr8p38mbar633gdsb14b7dhkhgawgzfy";
       type = "gem";
     };
-    version = "3.1.11";
+    version = "3.1.12";
   };
   bcrypt_pbkdf = {
     source = {
@@ -314,22 +297,14 @@
     };
     version = "0.7.2";
   };
-  blankslate = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0jnnq5q5dwy2rbfcl769vd9bk1yn0242f6yjlb9mnqdm9627cdcx";
-      type = "gem";
-    };
-    version = "2.1.2.4";
-  };
-  bootstrap-sass = {
-    dependencies = ["autoprefixer-rails" "sass"];
+  bootsnap = {
+    dependencies = ["msgpack"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12hhw42hk9clwfj6yz5v0c5p35wrn5yjnji7bnzsfs99vi2q00ld";
+      sha256 = "0g6r784lmjfhwi046w82phsk244byq9wkj1q3lddwxg9z559bmhy";
       type = "gem";
     };
-    version = "3.3.6";
+    version = "1.3.2";
   };
   bootstrap_form = {
     source = {
@@ -350,10 +325,10 @@
   browser = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "055r4wyc3z61r7mg2bgqpzabpkg8db2q5rciwfx9lwfyhjx19pbv";
+      sha256 = "0sdx0ny34i6vqxdsc7sy9g0nafdbrw8kvvb5xh9m18x1bzpqk92f";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "2.5.3";
   };
   builder = {
     source = {
@@ -411,10 +386,10 @@
     dependencies = ["activemodel" "activesupport" "mime-types"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "012b5jks7hxis1agiy7rbra5h4zhmwhy95gck3kr22nwdxfk71ii";
+      sha256 = "1k9kla5ncygm97vn33lsrs7ch5zy4qqhhvc8m3khm986yaqh75qs";
       type = "gem";
     };
-    version = "1.2.1";
+    version = "1.2.3";
   };
   cause = {
     source = {
@@ -436,10 +411,10 @@
     dependencies = ["ffi"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rqf595gv0bb48awck2cvipk78jy5pj08p1r4xbrfpd0i60jb9hd";
+      sha256 = "0a61922kmvcxyj5l70fycapr87gz1dzzlkfpq85rfqk5vdh3d28p";
       type = "gem";
     };
-    version = "0.7.0";
+    version = "0.9.0";
   };
   chronic = {
     source = {
@@ -477,10 +452,10 @@
   coderay = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1x6z923iwr1hi04k6kz5a6llrixflz8h5sskl9mhaaxy9jx2x93r";
+      sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.1.2";
   };
   coercible = {
     dependencies = ["descendants_tracker"];
@@ -491,22 +466,14 @@
     };
     version = "1.0.0";
   };
-  colorize = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "16bsjcqb6pg3k94dh1l5g3hhx5g2g4g8rlr76dnc78yyzjjrbayn";
-      type = "gem";
-    };
-    version = "0.7.7";
-  };
   commonmarker = {
     dependencies = ["ruby-enum"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02iz27421qk6lnn0xwlz95w5l65dc4rnfqlwyal0h6mnawwy3b5i";
+      sha256 = "1pmjm87p0hxnknp33cxyvkgbr1swfp9gcznssmalm9z8kwyancb9";
       type = "gem";
     };
-    version = "0.17.8";
+    version = "0.17.13";
   };
   concord = {
     dependencies = ["adamantium" "equalizer"];
@@ -537,10 +504,10 @@
   connection_pool = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17vpaj6kyf2i8bimaxz7rg1kyadf4d10642ja67qiqlhwgczl2w7";
+      sha256 = "0lflx29mlznf1hn0nihkgllzbj8xp5qasn8j7h838465pi399k68";
       type = "gem";
     };
-    version = "2.2.1";
+    version = "2.2.2";
   };
   crack = {
     dependencies = ["safe_yaml"];
@@ -576,22 +543,13 @@
     };
     version = "1.5.0";
   };
-  d3_rails = {
-    dependencies = ["railties"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "12vxiiflnnkcxak2wmbajyf5wzmcv9wkl4drsp0am72azl8a6g9x";
-      type = "gem";
-    };
-    version = "3.5.11";
-  };
   daemons = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0b839hryy9sg7x3knsa1d6vfiyvn0mlsnhsb6an8zsalyrz1zgqg";
+      sha256 = "0lxqq6dgb8xhliywar2lvkwqy2ssraf9dk4b501pb4ixc2mvxbp2";
       type = "gem";
     };
-    version = "1.2.3";
+    version = "1.2.6";
   };
   database_cleaner = {
     source = {
@@ -714,10 +672,10 @@
     dependencies = ["unf"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12hs8yijhak7p2hf1xkh98g0mnp5phq3mrrhywzaxpwz1gw5r3kf";
+      sha256 = "0abdlwb64ns7ssmiqhdwgl27ly40x2l27l8hs8hn0z4kb3zd2x3v";
       type = "gem";
     };
-    version = "0.5.20170404";
+    version = "0.5.20180417";
   };
   doorkeeper = {
     dependencies = ["railties"];
@@ -732,19 +690,18 @@
     dependencies = ["doorkeeper" "json-jwt"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sknjc7gdyswvyh6bry3l4l57hjcab0bmkyz88i9k7qbb4p1fwck";
+      sha256 = "1wgrz0xcply5vl6d1m62blqwcbn4v0b27bswyws2y9wbyglz6f95";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "1.5.0";
   };
-  dropzonejs-rails = {
-    dependencies = ["rails"];
+  ed25519 = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1vqqxzv6qdqy47m2q28adnmccfvc17p2bmkkaqjvrczrhvkkha64";
+      sha256 = "1f5kr8za7hvla38fc0n9jiv55iq62k5bzclsa5kdb14l3r4w6qnw";
       type = "gem";
     };
-    version = "0.7.2";
+    version = "1.2.4";
   };
   email_reply_trimmer = {
     source = {
@@ -755,13 +712,13 @@
     version = "0.1.6";
   };
   email_spec = {
-    dependencies = ["launchy" "mail"];
+    dependencies = ["htmlentities" "launchy" "mail"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00p1cc69ncrgg7m45va43pszip8anx5735w1lsb7p5ygkyw8nnpv";
+      sha256 = "0yadaif80cf2ry0nvhir1s70xmm22xzncq6vfvvffdd8h02ridv0";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "2.2.0";
   };
   encryptor = {
     source = {
@@ -807,18 +764,18 @@
   eventmachine = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1frvpk3p73xc64qkn0ymll3flvn4xcycq5yx8a43zd3gyzc1ifjp";
+      sha256 = "0wh9aqb0skz80fhfn66lbpr4f86ya2z5rx6gm5xlfhd05bj1ch4r";
       type = "gem";
     };
-    version = "1.0.8";
+    version = "1.2.7";
   };
   excon = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rxwlfs7dq4r3bi9avgn7j6bz4hq1a3hdlr9xwdiyp4dp4286xfc";
+      sha256 = "15l9w0938c19nxmrp09n75qpmm64k12xj69h47yvxzcxcpbgnkb2";
       type = "gem";
     };
-    version = "0.60.0";
+    version = "0.62.0";
   };
   execjs = {
     source = {
@@ -908,19 +865,10 @@
   ffi = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0";
+      sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q";
       type = "gem";
     };
-    version = "1.9.18";
-  };
-  flay = {
-    dependencies = ["erubis" "path_expander" "ruby_parser" "sexp_processor"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0rzggr9w6z2jvs3mv0bp7d64yjivpp93ww9g4j9azzcfjqnh9hn3";
-      type = "gem";
-    };
-    version = "2.10.0";
+    version = "1.9.25";
   };
   flipper = {
     source = {
@@ -988,10 +936,10 @@
     dependencies = ["fog-core" "fog-json" "fog-xml" "google-api-client"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09q0khxyaqckgz2d44sp4zkw61gbmhjdww0wsqjy5mwj041bwn3i";
+      sha256 = "0azs1i061ig0x1cljdy68hjskzj8d25xkq8nqf3z7qya5lmfn1z2";
       type = "gem";
     };
-    version = "1.3.3";
+    version = "1.7.1";
   };
   fog-json = {
     dependencies = ["fog-core" "multi_json"];
@@ -1073,15 +1021,6 @@
     };
     version = "2.2.0";
   };
-  gemnasium-gitlab-service = {
-    dependencies = ["rugged"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1qv7fkahmqkah3770ycrxd0x2ais4z41hb43a0r8q8wcdklns3m3";
-      type = "gem";
-    };
-    version = "0.2.6";
-  };
   gemojione = {
     dependencies = ["json"];
     source = {
@@ -1126,22 +1065,14 @@
     };
     version = "1.3.0";
   };
-  gherkin-ruby = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "18ay7yiibf4sl9n94k7mbi4k5zj2igl4j71qcmkswv69znyx0sn1";
-      type = "gem";
-    };
-    version = "0.3.2";
-  };
   gitaly-proto = {
     dependencies = ["google-protobuf" "grpc"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1y5sn60h71ssxmc8br32fqhgmfqxgrmdlg4vya8dyy37ai20f85z";
+      sha256 = "19nyx75xnb3lsap6rr3p1avqsw1dcrm8d3ggmmihd58a9s762fki";
       type = "gem";
     };
-    version = "0.99.0";
+    version = "0.118.1";
   };
   github-linguist = {
     dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@@ -1173,19 +1104,10 @@
     dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1a1dv8n33pj2il07c8z7gz5542iby0z2qwymv8yj1kcn4avs4dxv";
+      sha256 = "15h6a7lsfkm967d5dhjlbcm2lnl1l9akzvaq92qlxq40r5apw0kn";
       type = "gem";
     };
-    version = "4.2.7.2";
-  };
-  gitlab-gollum-rugged_adapter = {
-    dependencies = ["mime-types" "rugged"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0zk89c2ljv9skcxzwnr84rqxv3iam30n5liv5r8hgl0l67qbg1mg";
-      type = "gem";
-    };
-    version = "0.4.4";
+    version = "4.2.7.5";
   };
   gitlab-grit = {
     dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
@@ -1199,19 +1121,28 @@
   gitlab-markup = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pvx257azpr00yvb74lgjpgnj72nwyd29l9a18280rgmp4cjniki";
+      sha256 = "1v6w3z7smmkqnhphb4ghgpqg61vimflqzpszybji0li99f2k1jb6";
       type = "gem";
     };
-    version = "1.6.3";
+    version = "1.6.4";
+  };
+  gitlab-sidekiq-fetcher = {
+    dependencies = ["sidekiq"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dvrp4iapwfaakc3qgf7mw05blxzfywpjfr7bhswwflih0pm67l7";
+      type = "gem";
+    };
+    version = "0.3.0";
   };
   gitlab-styles = {
     dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m0ihbp7kjis03pcdx5310j7nzsxh22hfailnz0j467zab9jiap0";
+      sha256 = "1ywizn3191mjl7ibxlfajaxm5vkywwl4i9q2xh6miq37nk2q98dx";
       type = "gem";
     };
-    version = "2.3.2";
+    version = "2.4.1";
   };
   gitlab_omniauth-ldap = {
     dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"];
@@ -1241,22 +1172,22 @@
     version = "1.0.1";
   };
   gon = {
-    dependencies = ["actionpack" "json" "multi_json" "request_store"];
+    dependencies = ["actionpack" "multi_json" "request_store"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1jmf6ly9wfrg52xkk9qb4hlfn3zdmz62ivclhp4f424m39rd9ngz";
+      sha256 = "0q9nvnw98mbb40h7mlzn1zk40r2l29yybhinmiqhrq8a6adsv806";
       type = "gem";
     };
-    version = "6.1.0";
+    version = "6.2.0";
   };
   google-api-client = {
     dependencies = ["addressable" "googleauth" "httpclient" "mime-types" "representable" "retriable"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gk6c21na1sizgsi71c6l6gpyjgib863jg991ycmrdnpr12mvs0q";
+      sha256 = "05h2lca9b334ayabgs3h0mzc2wg3csvkqv1lv3iirpgf90ypbk1k";
       type = "gem";
     };
-    version = "0.19.8";
+    version = "0.23.4";
   };
   google-protobuf = {
     source = {
@@ -1297,10 +1228,10 @@
     dependencies = ["activesupport" "builder" "mustermann-grape" "rack" "rack-accept" "virtus"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nv7ijyr20can779cfgna76dwrckmscpc7nxj699lrwarr9as17v";
+      sha256 = "04bam0iq9sad1df361317zz4knwci905yig502khl8gm1lp1168c";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.1.0";
   };
   grape-entity = {
     dependencies = ["activesupport" "multi_json"];
@@ -1311,14 +1242,14 @@
     };
     version = "0.7.1";
   };
-  grape-route-helpers = {
+  grape-path-helpers = {
     dependencies = ["activesupport" "grape" "rake"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ja4dlakk6r8p2cx113kymz9sbhdybjsiynnqpfs71lv0r6mmghj";
+      sha256 = "13h5575xfc144wsr48sp3qngpwvh4ikz4r3m55j8jmdr6sa16rbw";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "1.0.6";
   };
   grape_logging = {
     dependencies = ["grape"];
@@ -1329,6 +1260,23 @@
     };
     version = "1.7.0";
   };
+  graphiql-rails = {
+    dependencies = ["railties" "sprockets-rails"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10q5zipwgjgaan9lfqakdkm5ry8afgkq79bkimgksn6jyyvpz6w8";
+      type = "gem";
+    };
+    version = "1.4.10";
+  };
+  graphql = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10bnl8yjyg5x6h787cfkpd5gphl5z5jblj8fc9lbmgk27n2knssl";
+      type = "gem";
+    };
+    version = "1.8.1";
+  };
   grpc = {
     dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
     source = {
@@ -1339,13 +1287,13 @@
     version = "1.11.0";
   };
   haml = {
-    dependencies = ["tilt"];
+    dependencies = ["temple" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mrzjgkygvfii66bbylj2j93na8i89998yi01fin3whwqbvx0m1p";
+      sha256 = "1q0a9fvqh8kn6wm97fcks6qzbjd400bv8bx748w8v87m7p4klhac";
       type = "gem";
     };
-    version = "4.0.7";
+    version = "5.0.4";
   };
   haml_lint = {
     dependencies = ["haml" "rainbow" "rake" "rubocop" "sysexits"];
@@ -1360,10 +1308,18 @@
     dependencies = ["temple" "thor" "tilt"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ph4kv2ddr538f9ni2fmk7aq38djv5am29r3m6y64adg52n6jma9";
+      sha256 = "0hk338vkzmwszxdh0q02iw88rbr3bj3fd7fzn4psm8wy80zcgl9i";
+      type = "gem";
+    };
+    version = "2.8.8";
+  };
+  hangouts-chat = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dmnv3723c22683bzys8walkl6wi74xzawxjbhwqzjdbwk3bdgmx";
       type = "gem";
     };
-    version = "2.6.1";
+    version = "0.0.5";
   };
   hashdiff = {
     source = {
@@ -1412,10 +1368,10 @@
     dependencies = ["activesupport" "nokogiri"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hkx70z9ijgnncmrna9qdh9ajn9m7v146k91j257lrzyq2f6jdjd";
+      sha256 = "1mpj5y13jk1arqkhdk66n49kyglmci980c1l6np7pqgyjllb68ad";
       type = "gem";
     };
-    version = "2.7.1";
+    version = "2.8.4";
   };
   html2text = {
     dependencies = ["nokogiri"];
@@ -1494,6 +1450,14 @@
     };
     version = "0.9.5";
   };
+  icalendar = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xsydpp2xph00awi25axv2mwjd5p2rlgd4qb3kh05lvq795kirxd";
+      type = "gem";
+    };
+    version = "2.4.1";
+  };
   ice_nine = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -1536,6 +1500,15 @@
     };
     version = "1.3.2";
   };
+  js_regex = {
+    dependencies = ["regexp_parser"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lnyd4c7lybhra3l6dai7j83lh3xapqjb340pp0h4bnqjgx52bkf";
+      type = "gem";
+    };
+    version = "2.2.1";
+  };
   json = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -1545,13 +1518,13 @@
     version = "1.8.6";
   };
   json-jwt = {
-    dependencies = ["activesupport" "aes_key_wrap" "bindata" "securecompare" "url_safe_base64"];
+    dependencies = ["activesupport" "aes_key_wrap" "bindata"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08sisbiz851ny0bgikfqdqjn1hqpgrzsfzddpm7s5a8ln51s9x78";
+      sha256 = "065k7vffdki73f4nz89lxi6wxmcw5dlf593831pgvlbralll6x3r";
       type = "gem";
     };
-    version = "1.9.2";
+    version = "1.9.4";
   };
   json-schema = {
     dependencies = ["addressable"];
@@ -1614,7 +1587,7 @@
     version = "2.10.0";
   };
   knapsack = {
-    dependencies = ["rake" "timecop"];
+    dependencies = ["rake"];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1q2y7mb8ii1ncdrlp46l9v2x909gdnjaid2dg5gcicj39hna36di";
@@ -1626,10 +1599,10 @@
     dependencies = ["http" "recursive-open-struct" "rest-client"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "14kmip7zprb7q6rp4lj011ikv33x193sy1642l2gmf8yv320h0sw";
+      sha256 = "1czzdp9lfsrah2jkaddkqzmphyvnk096zm1ra6jddh626d8d53r4";
       type = "gem";
     };
-    version = "3.0.0";
+    version = "3.1.0";
   };
   launchy = {
     dependencies = ["addressable"];
@@ -1659,13 +1632,13 @@
     version = "1.3.0";
   };
   license_finder = {
-    dependencies = ["httparty" "rubyzip" "thor" "toml" "with_env" "xml-simple"];
+    dependencies = ["rubyzip" "thor" "toml" "with_env" "xml-simple"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12p18a34q8dgzjwi2plgv889kxnxqnnmrqhvjs3ng2z26hv2zfag";
+      sha256 = "01rhqm5m3m22gq6q9f1x9fh3x3wrf9khnnsycblj0xg5frdjv77v";
       type = "gem";
     };
-    version = "3.1.1";
+    version = "5.4.0";
   };
   licensee = {
     dependencies = ["rugged"];
@@ -1756,10 +1729,10 @@
   method_source = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2";
+      sha256 = "0xqj21j3vfq4ldia6i2akhn2qd84m0iqcnsl49kfpq3xk6x0dzgn";
       type = "gem";
     };
-    version = "0.8.2";
+    version = "0.9.0";
   };
   mime-types = {
     dependencies = ["mime-types-data"];
@@ -1786,13 +1759,21 @@
     };
     version = "0.3.0";
   };
+  mini_magick = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1djxfs9rxw6q6vr6wb4ndxhp1vj1zbwb55s1kf6mz9bzgmswqg0n";
+      type = "gem";
+    };
+    version = "4.8.0";
+  };
   mini_mime = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1lwhlvjqaqfm6k3ms4v29sby9y7m518ylsqz2j74i740715yl5c8";
+      sha256 = "1q4pshq387lzv9m39jv32vwb8wrq3wc4jwgl4jk209r4l33v09d3";
       type = "gem";
     };
-    version = "1.0.0";
+    version = "1.0.1";
   };
   mini_portile2 = {
     source = {
@@ -1818,6 +1799,14 @@
     };
     version = "1.4.6";
   };
+  msgpack = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09xy1wc4wfbd1jdrzgxwmqjzfdfxbz0cqdszq2gv6rmc3gv1c864";
+      type = "gem";
+    };
+    version = "1.2.4";
+  };
   multi_json = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -1845,10 +1834,10 @@
   mustermann = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07sb7fckrraqh48fjnqf6yl7vxxabfx0qrsrhfdz67pd838g4k8g";
+      sha256 = "0lycgkmnyy0bf29nnd2zql5a6pcf8sp69g9v4xw0gcfcxgpwp7i1";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.0.3";
   };
   mustermann-grape = {
     dependencies = ["mustermann"];
@@ -1878,10 +1867,10 @@
   net-ssh = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07c4v97zl1daabmri9zlbzs6yvkl56z1q14bw74d53jdj0c17nhx";
+      sha256 = "0hj2i8rk5wb6235r5n19in1hkrp1fbz2bf40xmagavb5ahv7205w";
       type = "gem";
     };
-    version = "4.2.0";
+    version = "5.0.1";
   };
   netrc = {
     source = {
@@ -1895,10 +1884,19 @@
     dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
+      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
       type = "gem";
     };
-    version = "1.8.2";
+    version = "1.8.4";
+  };
+  nokogumbo = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09qc1c7acv9qm48vk2kzvnrq4ij8jrql1cv33nmv2nwmlggy0jyj";
+      type = "gem";
+    };
+    version = "1.5.0";
   };
   numerizer = {
     source = {
@@ -1929,10 +1927,10 @@
     dependencies = ["sawyer"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1hp77svmpxcwnfajb324i1g2b7jazg23fn4ccjr5y3lww0rnj1dg";
+      sha256 = "1ssn5iyax07a22mvmj0y45bfy8ali129bl1qmasp6bcg03bvk298";
       type = "gem";
     };
-    version = "4.8.0";
+    version = "4.9.0";
   };
   omniauth = {
     dependencies = ["hashie" "rack"];
@@ -1953,13 +1951,13 @@
     version = "2.0.0";
   };
   omniauth-authentiq = {
-    dependencies = ["omniauth-oauth2"];
+    dependencies = ["jwt" "omniauth-oauth2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06hfga3ar8cl4glc3i2plwzhzvssfsz63sqjrvhzsjp4mz81k38c";
+      sha256 = "0k7vajxwplsp188xfj4mi9iqbc7f7djqh02by4mphc51hl87kcqi";
       type = "gem";
     };
-    version = "0.3.1";
+    version = "0.3.3";
   };
   omniauth-azure-oauth2 = {
     dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
@@ -2001,10 +1999,10 @@
     dependencies = ["omniauth" "omniauth-oauth2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hv672p372jq7p9p6dw8i7qyisbny3lq0si077yys1fy4bjw127x";
+      sha256 = "19ydk2zd2mz8zi80z3l03pajpm9357sg3lrankrcb3pirkkdb9fp";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.0.3";
   };
   omniauth-google-oauth2 = {
     dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
@@ -2073,10 +2071,10 @@
     dependencies = ["omniauth"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0a8pwy23aybxhn545357zdjy0hnpfgldwqk5snmz9kxingpq12jl";
+      sha256 = "04yin7j8xpr8llvank3ivzahqkc6ss5bppc7q6znzdswxmf75fxh";
       type = "gem";
     };
-    version = "1.2.1";
+    version = "1.3.0";
   };
   omniauth-twitter = {
     dependencies = ["omniauth-oauth" "rack"];
@@ -2139,21 +2137,12 @@
     version = "2.5.1.0";
   };
   parslet = {
-    dependencies = ["blankslate"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qp1m8n3m6k6g22nn1ivcfkvccq5jmbkw53vvcjw5xssq179l9z3";
+      sha256 = "12nrzfwjphjlakb9pmpj70hgjwgzvnr8i1zfzddifgyd44vspl88";
       type = "gem";
     };
-    version = "1.5.0";
-  };
-  path_expander = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0wsymhprfjazdkmfv02kski3iwjjkciwxqjg9brh56sbymcgk34a";
-      type = "gem";
-    };
-    version = "1.0.2";
+    version = "1.8.2";
   };
   peek = {
     dependencies = ["concurrent-ruby" "concurrent-ruby-ext" "railties"];
@@ -2209,15 +2198,6 @@
     };
     version = "1.2.0";
   };
-  peek-sidekiq = {
-    dependencies = ["atomic" "peek" "sidekiq"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0y7s32p6cp66z1hpd1wcv4crmvvvcag5i39aazclckjsfpdfn24x";
-      type = "gem";
-    };
-    version = "1.0.3";
-  };
   pg = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -2289,45 +2269,45 @@
   prometheus-client-mmap = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1p3xkk9zal95di5v999mk7sq02fk0fimg633ixvhvv70ph6c8dhn";
+      sha256 = "14ww8c2qy43jw3fzmq54hsljmqmlx9a7zg9sv6ddw48qy118ls10";
       type = "gem";
     };
-    version = "0.9.1";
+    version = "0.9.4";
   };
   pry = {
-    dependencies = ["coderay" "method_source" "slop"];
+    dependencies = ["coderay" "method_source"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05xbzyin63aj2prrv8fbq2d5df2mid93m81hz5bvf2v4hnzs42ar";
+      sha256 = "1mh312k3y94sj0pi160wpia0ps8f4kmzvm505i6bvwynfdh7v30g";
       type = "gem";
     };
-    version = "0.10.4";
+    version = "0.11.3";
   };
   pry-byebug = {
     dependencies = ["byebug" "pry"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lwqc8vjq7b177xfknmigxvahp6dc8i1fy09d3n8ld1ndd909xjq";
+      sha256 = "0g820bqmlq8vvh78895zgrzgmj3g6n63px7cba11s02lpz56630n";
       type = "gem";
     };
-    version = "3.4.2";
+    version = "3.4.3";
   };
   pry-rails = {
     dependencies = ["pry"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0v8xlzzb535k7wcl0vrpday237xwc04rr9v3gviqzasl7ydw32x6";
+      sha256 = "0k2d43bwmqbswfra4fkadjjbszwb11pr7qdkma91qrcrk62wqxvy";
       type = "gem";
     };
-    version = "0.3.5";
+    version = "0.3.6";
   };
   public_suffix = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1x5h1dh1i3gwc01jbg01rly2g6a1qwhynb1s8a30ic507z1nh09s";
+      sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
       type = "gem";
     };
-    version = "3.0.2";
+    version = "3.0.3";
   };
   pyu-ruby-sasl = {
     source = {
@@ -2384,10 +2364,10 @@
     dependencies = ["rack"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ywmgh7x8ljf7jfnq5hmfzki3f803waji3fcvi107w7mlyflbng7";
+      sha256 = "1z5598qipilmnf45428jnxi63ykrgvnyywa5ckpr52zv2vpd8jdp";
       type = "gem";
     };
-    version = "2.0.1";
+    version = "2.0.3";
   };
   rack-proxy = {
     dependencies = ["rack"];
@@ -2462,13 +2442,12 @@
     version = "4.2.10";
   };
   rainbow = {
-    dependencies = ["rake"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w";
+      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
       type = "gem";
     };
-    version = "2.2.2";
+    version = "3.0.0";
   };
   raindrops = {
     source = {
@@ -2512,32 +2491,22 @@
     };
     version = "0.3.6";
   };
-  rbnacl = {
-    dependencies = ["ffi"];
+  rbtrace = {
+    dependencies = ["ffi" "msgpack" "trollop"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08dkigw8wdx53hviw1zqrs7rcrzqcwh9jd3dvwr72013z9fmyp48";
+      sha256 = "1zj9xwazjp0g0fmhvc918irzcp2wyciwqzr0y199vc7r5qdr4sqv";
       type = "gem";
     };
-    version = "4.0.2";
-  };
-  rbnacl-libsodium = {
-    dependencies = ["rbnacl"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0qxrlig0i711zln0qzs9z37bs3wys1i6139bn7p7qxmdpnb9qgda";
-      type = "gem";
-    };
-    version = "1.0.11";
+    version = "0.4.10";
   };
   rdoc = {
-    dependencies = ["json"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "027dvwz1g1h4bm40v3kxqbim4p7ww4fcmxa2l1mvwiqm5cjiqd7k";
+      sha256 = "0anv42cqcdc6g4n386mrva7mgav5i0c2ry3yzvzzc6z6hymkmcr7";
       type = "gem";
     };
-    version = "4.2.2";
+    version = "6.0.4";
   };
   re2 = {
     source = {
@@ -2559,10 +2528,10 @@
   recursive-open-struct = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0p8x9w9zzv56ka6czdmzl5sbsqjhnb9lkchvw55rf5lp8h0z3r6z";
+      sha256 = "0wfcyigmf5mwrxy76p0bi4sdb4h9afs8jc73pjav5cnqszljjl3c";
       type = "gem";
     };
-    version = "1.0.5";
+    version = "1.1.0";
   };
   redcarpet = {
     source = {
@@ -2610,10 +2579,10 @@
     dependencies = ["redis"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rp8gfkznfxqzxk9s976k71jnljkh0clkrhnp6vgx46s5yhj9g25";
+      sha256 = "0r7daagrjjribn098dxwbv9zivrbq2rsffbkj2ccxyn9lmjjbgah";
       type = "gem";
     };
-    version = "1.5.2";
+    version = "1.6.0";
   };
   redis-rack = {
     dependencies = ["rack" "redis-store"];
@@ -2642,6 +2611,14 @@
     };
     version = "1.4.1";
   };
+  regexp_parser = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1375q2v74cccjh290d9x28fdircvy18v6h0ww7a8i66qhh1jf2pb";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
   representable = {
     dependencies = ["declarative" "declarative-option" "uber"];
     source = {
@@ -2680,10 +2657,10 @@
   retriable = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0pnriyn9zh120hxm92vb12hfsf7c98nawyims1shxj3ldpl0l3ar";
+      sha256 = "1q48hqws2dy1vws9schc0kmina40gy7sn5qsndpsfqdslh65snha";
       type = "gem";
     };
-    version = "3.1.1";
+    version = "3.1.2";
   };
   rinku = {
     source = {
@@ -2704,10 +2681,10 @@
   rouge = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sfhy0xxqjnzqa7qxmpz1bmy0mzcr55qyvi410gsb6d6i4ialbw3";
+      sha256 = "1digsi2s8wyzx8vsqcxasw205lg6s7izx8jypl8rrpjwshmv83ql";
       type = "gem";
     };
-    version = "3.1.1";
+    version = "3.3.0";
   };
   rqrcode = {
     dependencies = ["chunky_png"];
@@ -2731,37 +2708,37 @@
     dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nd50hycab2a2vdah9lxi585g8f63jxjvmzmxqyln51grxwx9hzb";
+      sha256 = "0134g96wzxjlig2gxzd240gm2dxfw8izcyi2h6hjmr40syzcyx01";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-core = {
     dependencies = ["rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18np8wyw2g79waclpaacba6nd7x60ixg07ncya0j0qj1z9b37grd";
+      sha256 = "0zvjbymx3avxm3lf8v4gka3a862vnaxldmwvp6767bpy48nhnvjj";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.1";
   };
   rspec-expectations = {
     dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "028ifzf9mqp3kxx40q1nbwj40g72g9zk0wr78l146phblkv96w0a";
+      sha256 = "1fw06wm8jdj8k7wrb8xmzj0fr1wjyb0ya13x31hidnyblm41hmvy";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-mocks = {
     dependencies = ["diff-lcs" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nv6jkxy24sag1i9w9wi3850k6skk2fm6yhcrgnmlz6vmwxvizp8";
+      sha256 = "0b02ya3qhqgmcywqv4570dlhav70r656f7dmvwg89whpkq1z1xr3";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.0";
   };
   rspec-parameterized = {
     dependencies = ["binding_of_caller" "parser" "proc_to_ast" "rspec" "unparser"];
@@ -2776,10 +2753,10 @@
     dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cvlmbn90k4rymlfb20ksayns5h199r9ggs67shnnanmrnh9zvyj";
+      sha256 = "0cdcnbv5dppwy3b4jdp5a0wd9m07a8wlqwb9yazn8i7k1k2mwgvx";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.2";
   };
   rspec-retry = {
     dependencies = ["rspec-core"];
@@ -2801,10 +2778,19 @@
   rspec-support = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "050paqqpsml8w88nf4a15zbbj3vvm471zpv73sjfdnz7w21wnypb";
+      sha256 = "1nl30xb6jmcl0awhqp6jycl01wdssblifwy921phfml70rd9flj1";
       type = "gem";
     };
-    version = "3.6.0";
+    version = "3.7.1";
+  };
+  rspec_junit_formatter = {
+    dependencies = ["builder" "rspec-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hphl8iggqh1mpbbv0avf8735x6jgry5wmkqyzgv1zwnimvja1ai";
+      type = "gem";
+    };
+    version = "0.2.3";
   };
   rspec_profiling = {
     dependencies = ["activerecord" "pg" "rails" "sqlite3"];
@@ -2819,10 +2805,10 @@
     dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0d22rr1jnjfkw10rbnqb8plyd7kzf553nm3sbv14xil65s4mkijf";
+      sha256 = "106y99lq0fg62k3vk1w5wwb4vq16pnh4l61skc82xck627z0h8is";
       type = "gem";
     };
-    version = "0.52.1";
+    version = "0.54.0";
   };
   rubocop-gitlab-security = {
     dependencies = ["rubocop"];
@@ -2837,10 +2823,10 @@
     dependencies = ["rubocop"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18rd3w2q07vkfdk9nl8apkpyjfw1478qg82zgfnd4hn3r40jkbcx";
+      sha256 = "0vk51h9swvgshan8vp8yjz03qv9vn5vs29i9iddhjwcwgzsganla";
       type = "gem";
     };
-    version = "1.22.1";
+    version = "1.22.2";
   };
   ruby-enum = {
     dependencies = ["i18n"];
@@ -2913,10 +2899,10 @@
   rubyzip = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06js4gznzgh8ac2ldvmjcmg9v1vg9llm357yckkpylaj6z456zqz";
+      sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj";
       type = "gem";
     };
-    version = "1.2.1";
+    version = "1.2.2";
   };
   rufus-scheduler = {
     dependencies = ["et-orbi"];
@@ -2930,10 +2916,10 @@
   rugged = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0q1krxgd0ql03x8m9m05x5sxizw5sc7lms7rkp44qf45grpdk3v3";
+      sha256 = "1y6k5yrfmhc1v4albbpa3xzl28vk5lric3si8ada28sp9mmk2x72";
       type = "gem";
     };
-    version = "0.27.0";
+    version = "0.27.4";
   };
   safe_yaml = {
     source = {
@@ -2944,13 +2930,13 @@
     version = "1.0.4";
   };
   sanitize = {
-    dependencies = ["nokogiri"];
+    dependencies = ["crass" "nokogiri" "nokogumbo"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xsv6xqrlz91rd8wifjknadbl3z5h6qphmxy0hjb189qbdghggn3";
+      sha256 = "0j4j2a2mkk1a70vbx959pvx0gvr1zb9snjwvsppwj28bp0p0b2bv";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "4.6.6";
   };
   sass = {
     dependencies = ["sass-listen"];
@@ -2997,14 +2983,6 @@
     };
     version = "0.56.0";
   };
-  securecompare = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0ay65wba4i7bvfqyvf5i4r48q6g70s5m724diz9gdvdavscna36b";
-      type = "gem";
-    };
-    version = "1.0.0";
-  };
   seed-fu = {
     dependencies = ["activerecord" "activesupport"];
     source = {
@@ -3027,10 +3005,10 @@
     dependencies = ["childprocess" "rubyzip"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0w6r0k1w7hpk853qfw18lipyzxs0r0d6xr70zqsjfdn2dwr0rb30";
+      sha256 = "07bl3wjkf254r3ljfl4qdazz5aw60s6nqjwrbbgq754j9b7226kz";
       type = "gem";
     };
-    version = "3.5.0";
+    version = "3.12.0";
   };
   sentry-raven = {
     dependencies = ["faraday"];
@@ -3076,13 +3054,13 @@
     version = "3.1.2";
   };
   sidekiq = {
-    dependencies = ["concurrent-ruby" "connection_pool" "rack-protection" "redis"];
+    dependencies = ["connection_pool" "rack-protection" "redis"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mmmv6k4l5rd74zw4xmwsadi0pbbcyzk1cm73zd8fzwra6nfz7sh";
+      sha256 = "0s57vl2hwfaga73yiscak2rs7byg1q0z44wa9si9vl92qcmbik2j";
       type = "gem";
     };
-    version = "5.0.5";
+    version = "5.2.1";
   };
   sidekiq-cron = {
     dependencies = ["rufus-scheduler" "sidekiq"];
@@ -3093,15 +3071,6 @@
     };
     version = "0.6.0";
   };
-  sidekiq-limit_fetch = {
-    dependencies = ["sidekiq"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0ykpqw2nc9fs4v0slk5n4m42n3ihwwkk5mcyw3rz51blrdzj92kr";
-      type = "gem";
-    };
-    version = "3.4.0";
-  };
   signet = {
     dependencies = ["addressable" "faraday" "jwt" "multi_json"];
     source = {
@@ -3144,49 +3113,14 @@
     };
     version = "1.5.1";
   };
-  slop = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n";
-      type = "gem";
-    };
-    version = "3.6.0";
-  };
-  spinach = {
-    dependencies = ["colorize" "gherkin-ruby" "json"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0phfjs4iw2iqxdaljzwk6qxmi2x86pl3hirmpgw2pgfx76wfx688";
-      type = "gem";
-    };
-    version = "0.8.10";
-  };
-  spinach-rails = {
-    dependencies = ["capybara" "railties" "spinach"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1nfacfylkncfgi59g2wga6m4nzdcjqb8s50cax4nbx362ap4bl70";
-      type = "gem";
-    };
-    version = "0.2.1";
-  };
-  spinach-rerun-reporter = {
-    dependencies = ["spinach"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0fkmp99cpxrdzkjrxw9y9qp8qxk5d1arpmmlg5njx40rlcvx002k";
-      type = "gem";
-    };
-    version = "0.0.2";
-  };
   spring = {
     dependencies = ["activesupport"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wwbyg2nab2k4hdpd1i65qmnfixry29b4yqynrqfnmjghn0xvc7x";
+      sha256 = "168yz9c1fv21wc5i8q7n43b9nk33ivg3ws1fn6x0afgryz3ssx75";
       type = "gem";
     };
-    version = "2.0.1";
+    version = "2.0.2";
   };
   spring-commands-rspec = {
     dependencies = ["spring"];
@@ -3197,23 +3131,14 @@
     };
     version = "1.0.4";
   };
-  spring-commands-spinach = {
-    dependencies = ["spring"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "12qa60sclhnclwi6lskhdgr1l007bca831vhp35f06hq1zmimi2x";
-      type = "gem";
-    };
-    version = "1.1.0";
-  };
   sprockets = {
     dependencies = ["concurrent-ruby" "rack"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sv3zk5hwxyjvg7iy9sggjc7k3mfxxif7w8p260rharfyib939ar";
+      sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
       type = "gem";
     };
-    version = "3.7.1";
+    version = "3.7.2";
   };
   sprockets-rails = {
     dependencies = ["actionpack" "activesupport" "sprockets"];
@@ -3302,10 +3227,10 @@
   temple = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xlf1if32xj14mkfwh8nxy3zzjzd9lipni0v2bghknp2kfc1hcz6";
+      sha256 = "00nxf610nzi4n1i2lkby43nrnarvl89fcl6lg19406msr0k3ycmq";
       type = "gem";
     };
-    version = "0.7.7";
+    version = "0.8.0";
   };
   test-prof = {
     source = {
@@ -3336,10 +3261,10 @@
     dependencies = ["daemons" "eventmachine" "rack"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1dq9q7qyjyg4444bmn12r2s0mir8dqnvc037y0zidhbyaavrv95q";
+      sha256 = "0nagbf9pwy1vg09k6j4xqhbjjzrg5dwzvkn4ffvlj76fsn6vv61f";
       type = "gem";
     };
-    version = "1.7.0";
+    version = "1.7.2";
   };
   thor = {
     source = {
@@ -3360,10 +3285,10 @@
   tilt = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qsyzq2k7blyp1rph56xczwfqi8gplns2whswyr67mdfzdi60vvm";
+      sha256 = "0020mrgdf11q23hm1ddd6fv691l51vi10af00f137ilcdb2ycfra";
       type = "gem";
     };
-    version = "2.0.6";
+    version = "2.0.8";
   };
   timecop = {
     source = {
@@ -3385,10 +3310,10 @@
     dependencies = ["parslet"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wnvi1g8id1sg6776fvzf98lhfbscchgiy1fp5pvd58a8ds2fq9v";
+      sha256 = "0xj460rkyqvg74xc8kivmbvgc46c6mm7r8mbjs5m2gq8khf8sbki";
       type = "gem";
     };
-    version = "0.1.2";
+    version = "0.2.0";
   };
   toml-rb = {
     dependencies = ["citrus"];
@@ -3399,6 +3324,14 @@
     };
     version = "1.0.0";
   };
+  trollop = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rzx9rkacpq58dsvbbzs4cpybls1v1h36xskkfs5q2askpdr00wq";
+      type = "gem";
+    };
+    version = "2.1.3";
+  };
   truncato = {
     dependencies = ["htmlentities" "nokogiri"];
     source = {
@@ -3462,10 +3395,10 @@
   unicode-display_width = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12pi0gwqdnbx1lv5136v3vyr0img9wr0kxcn4wn54ipq4y41zxq8";
+      sha256 = "0x31fgv1acywbb50prp7y4fr677c2d9gsl6wxmfcrlxbwz7nxn5n";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "1.3.2";
   };
   unicorn = {
     dependencies = ["kgio" "raindrops"];
@@ -3502,14 +3435,6 @@
     };
     version = "0.2.7";
   };
-  url_safe_base64 = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1wgslyapmw4m6l5f6xvcvrvdz3hbkqczkhmjp96s6pzwcgxvcazz";
-      type = "gem";
-    };
-    version = "0.2.2";
-  };
   validates_hostname = {
     dependencies = ["activerecord" "activesupport"];
     source = {
@@ -3566,10 +3491,10 @@
     dependencies = ["railties"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0l0jzw05yk1c19q874nhkanrn2ik7hjbr2vjcdnk1fqp2f3ypzvv";
+      sha256 = "0fsjxw730bh4k1dfnbjm645fgjyqrh830l1z7brqbsm6306ig1rr";
       type = "gem";
     };
-    version = "0.9.10";
+    version = "0.9.11";
   };
   wikicloth = {
     dependencies = ["builder" "expression_parser" "rinku"];
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile b/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile
new file mode 100644
index 000000000000..ef14aace277e
--- /dev/null
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile
@@ -0,0 +1,456 @@
+# --- Special code for migrating to Rails 5.0 ---
+def rails5?
+  %w[1 true].include?(ENV["RAILS5"])
+end
+
+gem_versions = {}
+gem_versions['activerecord_sane_schema_dumper'] = rails5? ? '1.0'      : '0.2'
+gem_versions['default_value_for']               = rails5? ? '~> 3.0.5' : '~> 3.0.0'
+gem_versions['rails']                           = rails5? ? '5.0.7'    : '4.2.10'
+gem_versions['rails-i18n']                      = rails5? ? '~> 5.1'   : '~> 4.0.9'
+# --- The end of special code for migrating to Rails 5.0 ---
+
+source 'https://rubygems.org'
+
+gem 'rails', gem_versions['rails']
+gem 'rails-deprecated_sanitizer', '~> 1.0.3'
+
+# Responders respond_to and respond_with
+gem 'responders', '~> 2.0'
+
+gem 'sprockets', '~> 3.7.0'
+
+# Default values for AR models
+gem 'default_value_for', gem_versions['default_value_for']
+
+# Supported DBs
+gem 'mysql2', '~> 0.4.10', group: :mysql
+gem 'pg', '~> 0.18.2', group: :postgres
+
+gem 'rugged', '~> 0.27'
+gem 'grape-path-helpers', '~> 1.0'
+
+gem 'faraday', '~> 0.12'
+
+# Authentication libraries
+gem 'devise', '~> 4.4'
+gem 'doorkeeper', '~> 4.3'
+gem 'doorkeeper-openid_connect', '~> 1.5'
+gem 'omniauth', '~> 1.8'
+gem 'omniauth-auth0', '~> 2.0.0'
+gem 'omniauth-azure-oauth2', '~> 0.0.9'
+gem 'omniauth-cas3', '~> 1.1.4'
+gem 'omniauth-facebook', '~> 4.0.0'
+gem 'omniauth-github', '~> 1.3'
+gem 'omniauth-gitlab', '~> 1.0.2'
+gem 'omniauth-google-oauth2', '~> 0.5.3'
+gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos
+gem 'omniauth-oauth2-generic', '~> 0.2.2'
+gem 'omniauth-saml', '~> 1.10'
+gem 'omniauth-shibboleth', '~> 1.3.0'
+gem 'omniauth-twitter', '~> 1.4'
+gem 'omniauth_crowd', '~> 2.2.0'
+gem 'omniauth-authentiq', '~> 0.3.3'
+gem 'rack-oauth2', '~> 1.2.1'
+gem 'jwt', '~> 1.5.6'
+
+# Kerberos authentication. EE-only
+gem 'gssapi', group: :kerberos
+
+# Spam and anti-bot protection
+gem 'recaptcha', '~> 3.0', require: 'recaptcha/rails'
+gem 'akismet', '~> 2.0'
+
+# Two-factor authentication
+gem 'devise-two-factor', '~> 3.0.0'
+gem 'rqrcode-rails3', '~> 0.1.7'
+gem 'attr_encrypted', '~> 3.1.0'
+gem 'u2f', '~> 0.2.1'
+
+# GitLab Pages
+gem 'validates_hostname', '~> 1.0.6'
+
+# Browser detection
+gem 'browser', '~> 2.5'
+
+# GPG
+gem 'gpgme'
+
+# LDAP Auth
+# GitLab fork with several improvements to original library. For full list of changes
+# see https://github.com/intridea/omniauth-ldap/compare/master...gitlabhq:master
+gem 'gitlab_omniauth-ldap', '~> 2.0.4', require: 'omniauth-ldap'
+gem 'net-ldap'
+
+# Git Wiki
+# Only used to compute wiki page slugs
+gem 'gitlab-gollum-lib', '~> 4.2', require: false
+
+# Language detection
+gem 'github-linguist', '~> 5.3.3', require: 'linguist'
+
+# API
+gem 'grape', '~> 1.1'
+gem 'grape-entity', '~> 0.7.1'
+gem 'rack-cors', '~> 1.0.0', require: 'rack/cors'
+
+# GraphQL API
+gem 'graphql', '~> 1.8.0'
+gem 'graphiql-rails', '~> 1.4.10'
+
+# Disable strong_params so that Mash does not respond to :permitted?
+gem 'hashie-forbidden_attributes'
+
+# Pagination
+gem 'kaminari', '~> 1.0'
+
+# HAML
+gem 'hamlit', '~> 2.8.8'
+
+# Files attachments
+# Locked until https://github.com/carrierwaveuploader/carrierwave/pull/2332/files is merged.
+# config/initializers/carrierwave_patch.rb can be removed once that change is released.
+gem 'carrierwave', '= 1.2.3'
+gem 'mini_magick'
+
+# for backups
+gem 'fog-aws', '~> 2.0.1'
+gem 'fog-core', '~> 1.44'
+gem 'fog-google', '~> 1.7.1'
+gem 'fog-local', '~> 0.3'
+gem 'fog-openstack', '~> 0.1'
+gem 'fog-rackspace', '~> 0.1.1'
+gem 'fog-aliyun', '~> 0.2.0'
+
+# for Google storage
+gem 'google-api-client', '~> 0.23'
+
+# for aws storage
+gem 'unf', '~> 0.1.4'
+
+# Seed data
+gem 'seed-fu', '~> 2.3.7'
+
+# Search
+gem 'elasticsearch-model', '~> 0.1.9'
+gem 'elasticsearch-rails', '~> 0.1.9'
+gem 'elasticsearch-api',   '5.0.3'
+gem 'aws-sdk'
+gem 'faraday_middleware-aws-signers-v4'
+
+# Markdown and HTML processing
+gem 'html-pipeline', '~> 2.8'
+gem 'deckar01-task_list', '2.0.0'
+gem 'gitlab-markup', '~> 1.6.4'
+gem 'github-markup', '~> 1.7.0', require: 'github/markup'
+gem 'redcarpet', '~> 3.4'
+gem 'commonmarker', '~> 0.17'
+gem 'RedCloth', '~> 4.3.2'
+gem 'rdoc', '~> 6.0'
+gem 'org-ruby', '~> 0.9.12'
+gem 'creole', '~> 0.5.0'
+gem 'wikicloth', '0.8.1'
+gem 'asciidoctor', '~> 1.5.6'
+gem 'asciidoctor-plantuml', '0.0.8'
+gem 'rouge', '~> 3.1'
+gem 'truncato', '~> 0.7.9'
+gem 'bootstrap_form', '~> 2.7.0'
+gem 'nokogiri', '~> 1.8.2'
+
+# Calendar rendering
+gem 'icalendar'
+
+# Diffs
+gem 'diffy', '~> 3.1.0'
+
+# Application server
+group :unicorn do
+  gem 'unicorn', '~> 5.1.0'
+  gem 'unicorn-worker-killer', '~> 0.4.4'
+end
+
+# State machine
+gem 'state_machines-activerecord', '~> 0.5.1'
+
+# Issue tags
+gem 'acts-as-taggable-on', '~> 5.0'
+
+# Background jobs
+gem 'sidekiq', '~> 5.2.1'
+gem 'sidekiq-cron', '~> 0.6.0'
+gem 'redis-namespace', '~> 1.6.0'
+
+# Cron Parser
+gem 'rufus-scheduler', '~> 3.4'
+
+# HTTP requests
+gem 'httparty', '~> 0.13.3'
+
+# Colored output to console
+gem 'rainbow', '~> 3.0'
+
+# Progress bar
+gem 'ruby-progressbar'
+
+# GitLab settings
+gem 'settingslogic', '~> 2.0.9'
+
+# Linear-time regex library for untrusted regular expressions
+gem 're2', '~> 1.1.1'
+
+# Misc
+
+gem 'version_sorter', '~> 2.1.0'
+
+# Export Ruby Regex to Javascript
+gem 'js_regex', '~> 2.2.1'
+
+# User agent parsing
+gem 'device_detector'
+
+# Cache
+gem 'redis-rails', '~> 5.0.2'
+
+# Redis
+gem 'redis', '~> 3.2'
+gem 'connection_pool', '~> 2.0'
+
+# HipChat integration
+gem 'hipchat', '~> 1.5.0'
+
+# JIRA integration
+gem 'jira-ruby', '~> 1.4'
+
+# Flowdock integration
+gem 'gitlab-flowdock-git-hook', '~> 1.0.1'
+
+# Slack integration
+gem 'slack-notifier', '~> 1.5.1'
+
+# Hangouts Chat integration
+gem 'hangouts-chat', '~> 0.0.5'
+
+# Asana integration
+gem 'asana', '~> 0.6.0'
+
+# FogBugz integration
+gem 'ruby-fogbugz', '~> 0.2.1'
+
+# Kubernetes integration
+gem 'kubeclient', '~> 3.1.0'
+
+# Sanitize user input
+gem 'sanitize', '~> 4.6'
+gem 'babosa', '~> 1.0.2'
+
+# Sanitizes SVG input
+gem 'loofah', '~> 2.2'
+
+# Working with license
+gem 'licensee', '~> 8.9'
+
+# Protect against bruteforcing
+gem 'rack-attack', '~> 4.4.1'
+
+# Ace editor
+gem 'ace-rails-ap', '~> 4.1.0'
+
+# Keyboard shortcuts
+gem 'mousetrap-rails', '~> 1.4.6'
+
+# Detect and convert string character encoding
+gem 'charlock_holmes', '~> 0.7.5'
+
+# Faster blank
+gem 'fast_blank'
+
+# Parse time & duration
+gem 'chronic', '~> 0.10.2'
+gem 'chronic_duration', '~> 0.10.6'
+
+gem 'webpack-rails', '~> 0.9.10'
+gem 'rack-proxy', '~> 0.6.0'
+
+gem 'sass-rails', '~> 5.0.6'
+gem 'uglifier', '~> 2.7.2'
+
+gem 'addressable', '~> 2.5.2'
+gem 'font-awesome-rails', '~> 4.7'
+gem 'gemojione', '~> 3.3'
+gem 'gon', '~> 6.2'
+gem 'jquery-atwho-rails', '~> 1.3.2'
+gem 'request_store', '~> 1.3'
+gem 'select2-rails', '~> 3.5.9'
+gem 'virtus', '~> 1.0.1'
+gem 'base32', '~> 0.3.0'
+
+gem "gitlab-license", "~> 1.0"
+
+# Sentry integration
+gem 'sentry-raven', '~> 2.7'
+
+gem 'premailer-rails', '~> 1.9.7'
+
+# I18n
+gem 'ruby_parser', '~> 3.8', require: false
+gem 'rails-i18n', gem_versions['rails-i18n']
+gem 'gettext_i18n_rails', '~> 1.8.0'
+gem 'gettext_i18n_rails_js', '~> 1.3'
+gem 'gettext', '~> 3.2.2', require: false, group: :development
+
+gem 'batch-loader', '~> 1.2.1'
+
+# Perf bar
+gem 'peek', '~> 1.0.1'
+gem 'peek-gc', '~> 0.0.2'
+gem 'peek-mysql2', '~> 1.1.0', group: :mysql
+gem 'peek-pg', '~> 1.3.0', group: :postgres
+gem 'peek-rblineprof', '~> 0.2.0'
+gem 'peek-redis', '~> 1.2.0'
+gem 'gitlab-sidekiq-fetcher', require: 'sidekiq-reliable-fetch'
+
+# Metrics
+group :metrics do
+  gem 'method_source', '~> 0.8', require: false
+  gem 'influxdb', '~> 0.2', require: false
+
+  # Prometheus
+  gem 'prometheus-client-mmap', '~> 0.9.4'
+  gem 'raindrops', '~> 0.18'
+end
+
+group :development do
+  gem 'foreman', '~> 0.84.0'
+  gem 'brakeman', '~> 4.2', require: false
+
+  gem 'letter_opener_web', '~> 1.3.0'
+  gem 'rblineprof', '~> 0.3.6', platform: :mri, require: false
+
+  # Better errors handler
+  gem 'better_errors', '~> 2.1.0'
+  gem 'binding_of_caller', '~> 0.7.2'
+
+  # thin instead webrick
+  gem 'thin', '~> 1.7.0'
+end
+
+group :development, :test do
+  gem 'bootsnap', '~> 1.3'
+  gem 'bullet', '~> 5.5.0', require: !!ENV['ENABLE_BULLET']
+  gem 'pry-byebug', '~> 3.4.1', platform: :mri
+  gem 'pry-rails', '~> 0.3.4'
+
+  gem 'awesome_print', require: false
+  gem 'fuubar', '~> 2.2.0'
+
+  gem 'database_cleaner', '~> 1.5.0'
+  gem 'factory_bot_rails', '~> 4.8.2'
+  gem 'rspec-rails', '~> 3.7.0'
+  gem 'rspec-retry', '~> 0.4.5'
+  gem 'rspec_profiling', '~> 0.0.5'
+  gem 'rspec-set', '~> 0.1.3'
+  gem 'rspec-parameterized', require: false
+
+  # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
+  gem 'minitest', '~> 5.7.0'
+
+  # Generate Fake data
+  gem 'ffaker', '~> 2.4'
+
+  gem 'capybara', '~> 2.15'
+  gem 'capybara-screenshot', '~> 1.0.0'
+  gem 'selenium-webdriver', '~> 3.12'
+
+  gem 'spring', '~> 2.0.0'
+  gem 'spring-commands-rspec', '~> 1.0.4'
+
+  gem 'gitlab-styles', '~> 2.4', require: false
+  # Pin these dependencies, otherwise a new rule could break the CI pipelines
+  gem 'rubocop', '~> 0.54.0'
+  gem 'rubocop-rspec', '~> 1.22.1'
+
+  gem 'scss_lint', '~> 0.56.0', require: false
+  gem 'haml_lint', '~> 0.26.0', require: false
+  gem 'simplecov', '~> 0.14.0', require: false
+  gem 'bundler-audit', '~> 0.5.0', require: false
+
+  gem 'benchmark-ips', '~> 2.3.0', require: false
+
+  gem 'license_finder', '~> 5.4', require: false
+  gem 'knapsack', '~> 1.16'
+
+  gem 'activerecord_sane_schema_dumper', gem_versions['activerecord_sane_schema_dumper']
+
+  gem 'stackprof', '~> 0.2.10', require: false
+
+  gem 'simple_po_parser', '~> 1.1.2', require: false
+
+  gem 'timecop', '~> 0.8.0'
+end
+
+group :test do
+  gem 'shoulda-matchers', '~> 3.1.2', require: false
+  gem 'email_spec', '~> 2.2.0'
+  gem 'json-schema', '~> 2.8.0'
+  gem 'webmock', '~> 2.3.2'
+  gem 'rails-controller-testing' if rails5? # Rails5 only gem.
+  gem 'test_after_commit', '~> 1.1' unless rails5? # Remove this gem when migrated to rails 5.0. It's been integrated to rails 5.0.
+  gem 'sham_rack', '~> 1.3.6'
+  gem 'concurrent-ruby', '~> 1.0.5'
+  gem 'test-prof', '~> 0.2.5'
+  gem 'rspec_junit_formatter'
+end
+
+gem 'octokit', '~> 4.9'
+
+gem 'mail_room', '~> 0.9.1'
+
+gem 'email_reply_trimmer', '~> 0.1'
+gem 'html2text'
+
+gem 'ruby-prof', '~> 0.17.0'
+gem 'rbtrace', '~> 0.4', require: false
+
+# OAuth
+gem 'oauth2', '~> 1.4'
+
+# Health check
+gem 'health_check', '~> 2.6.0'
+
+# System information
+gem 'vmstat', '~> 2.3.0'
+gem 'sys-filesystem', '~> 1.1.6'
+
+# NTP client
+gem 'net-ntp'
+
+# SSH host key support
+gem 'net-ssh', '~> 5.0'
+gem 'sshkey', '~> 1.9.0'
+
+# Required for ED25519 SSH host key support
+group :ed25519 do
+  gem 'ed25519', '~> 1.2'
+  gem 'bcrypt_pbkdf', '~> 1.0'
+end
+
+# Gitaly GRPC client
+gem 'gitaly-proto', '~> 0.118.1', require: 'gitaly'
+gem 'grpc', '~> 1.11.0'
+
+# Locked until https://github.com/google/protobuf/issues/4210 is closed
+gem 'google-protobuf', '= 3.5.1'
+
+gem 'toml-rb', '~> 1.0.0', require: false
+
+# Feature toggles
+gem 'flipper', '~> 0.13.0'
+gem 'flipper-active_record', '~> 0.13.0'
+gem 'flipper-active_support_cache_store', '~> 0.13.0'
+
+# Structured logging
+gem 'lograge', '~> 0.5'
+gem 'grape_logging', '~> 1.7'
+
+# Asset synchronization
+gem 'asset_sync', '~> 2.4'
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock
new file mode 100644
index 000000000000..4355b3ae2717
--- /dev/null
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ee/Gemfile.lock
@@ -0,0 +1,1227 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    RedCloth (4.3.2)
+    abstract_type (0.0.7)
+    ace-rails-ap (4.1.2)
+    actionmailer (4.2.10)
+      actionpack (= 4.2.10)
+      actionview (= 4.2.10)
+      activejob (= 4.2.10)
+      mail (~> 2.5, >= 2.5.4)
+      rails-dom-testing (~> 1.0, >= 1.0.5)
+    actionpack (4.2.10)
+      actionview (= 4.2.10)
+      activesupport (= 4.2.10)
+      rack (~> 1.6)
+      rack-test (~> 0.6.2)
+      rails-dom-testing (~> 1.0, >= 1.0.5)
+      rails-html-sanitizer (~> 1.0, >= 1.0.2)
+    actionview (4.2.10)
+      activesupport (= 4.2.10)
+      builder (~> 3.1)
+      erubis (~> 2.7.0)
+      rails-dom-testing (~> 1.0, >= 1.0.5)
+      rails-html-sanitizer (~> 1.0, >= 1.0.3)
+    activejob (4.2.10)
+      activesupport (= 4.2.10)
+      globalid (>= 0.3.0)
+    activemodel (4.2.10)
+      activesupport (= 4.2.10)
+      builder (~> 3.1)
+    activerecord (4.2.10)
+      activemodel (= 4.2.10)
+      activesupport (= 4.2.10)
+      arel (~> 6.0)
+    activerecord_sane_schema_dumper (0.2)
+      rails (>= 4, < 5)
+    activesupport (4.2.10)
+      i18n (~> 0.7)
+      minitest (~> 5.1)
+      thread_safe (~> 0.3, >= 0.3.4)
+      tzinfo (~> 1.1)
+    acts-as-taggable-on (5.0.0)
+      activerecord (>= 4.2.8)
+    adamantium (0.2.0)
+      ice_nine (~> 0.11.0)
+      memoizable (~> 0.4.0)
+    addressable (2.5.2)
+      public_suffix (>= 2.0.2, < 4.0)
+    aes_key_wrap (1.0.1)
+    akismet (2.0.0)
+    arel (6.0.4)
+    asana (0.6.0)
+      faraday (~> 0.9)
+      faraday_middleware (~> 0.9)
+      faraday_middleware-multi_json (~> 0.0)
+      oauth2 (~> 1.0)
+    asciidoctor (1.5.6.2)
+    asciidoctor-plantuml (0.0.8)
+      asciidoctor (~> 1.5)
+    asset_sync (2.4.0)
+      activemodel (>= 4.1.0)
+      fog-core
+      mime-types (>= 2.99)
+      unf
+    ast (2.4.0)
+    atomic (1.1.99)
+    attr_encrypted (3.1.0)
+      encryptor (~> 3.0.0)
+    attr_required (1.0.0)
+    awesome_print (1.8.0)
+    aws-sdk (2.9.32)
+      aws-sdk-resources (= 2.9.32)
+    aws-sdk-core (2.9.32)
+      aws-sigv4 (~> 1.0)
+      jmespath (~> 1.0)
+    aws-sdk-resources (2.9.32)
+      aws-sdk-core (= 2.9.32)
+    aws-sigv4 (1.0.0)
+    axiom-types (0.1.1)
+      descendants_tracker (~> 0.0.4)
+      ice_nine (~> 0.11.0)
+      thread_safe (~> 0.3, >= 0.3.1)
+    babosa (1.0.2)
+    base32 (0.3.2)
+    batch-loader (1.2.1)
+    bcrypt (3.1.12)
+    bcrypt_pbkdf (1.0.0)
+    benchmark-ips (2.3.0)
+    better_errors (2.1.1)
+      coderay (>= 1.0.0)
+      erubis (>= 2.6.6)
+      rack (>= 0.9.0)
+    bindata (2.4.3)
+    binding_of_caller (0.7.2)
+      debug_inspector (>= 0.0.1)
+    bootsnap (1.3.2)
+      msgpack (~> 1.0)
+    bootstrap_form (2.7.0)
+    brakeman (4.2.1)
+    browser (2.5.3)
+    builder (3.2.3)
+    bullet (5.5.1)
+      activesupport (>= 3.0.0)
+      uniform_notifier (~> 1.10.0)
+    bundler-audit (0.5.0)
+      bundler (~> 1.2)
+      thor (~> 0.18)
+    byebug (9.0.6)
+    capybara (2.15.1)
+      addressable
+      mini_mime (>= 0.1.3)
+      nokogiri (>= 1.3.3)
+      rack (>= 1.0.0)
+      rack-test (>= 0.5.4)
+      xpath (~> 2.0)
+    capybara-screenshot (1.0.14)
+      capybara (>= 1.0, < 3)
+      launchy
+    carrierwave (1.2.3)
+      activemodel (>= 4.0.0)
+      activesupport (>= 4.0.0)
+      mime-types (>= 1.16)
+    cause (0.1)
+    charlock_holmes (0.7.6)
+    childprocess (0.9.0)
+      ffi (~> 1.0, >= 1.0.11)
+    chronic (0.10.2)
+    chronic_duration (0.10.6)
+      numerizer (~> 0.1.1)
+    chunky_png (1.3.5)
+    citrus (3.0.2)
+    coderay (1.1.2)
+    coercible (1.0.0)
+      descendants_tracker (~> 0.0.1)
+    commonmarker (0.17.13)
+      ruby-enum (~> 0.5)
+    concord (0.1.5)
+      adamantium (~> 0.2.0)
+      equalizer (~> 0.0.9)
+    concurrent-ruby (1.0.5)
+    concurrent-ruby-ext (1.0.5)
+      concurrent-ruby (= 1.0.5)
+    connection_pool (2.2.2)
+    crack (0.4.3)
+      safe_yaml (~> 1.0.0)
+    crass (1.0.4)
+    creole (0.5.0)
+    css_parser (1.5.0)
+      addressable
+    daemons (1.2.6)
+    database_cleaner (1.5.3)
+    debug_inspector (0.0.2)
+    debugger-ruby_core_source (1.3.8)
+    deckar01-task_list (2.0.0)
+      html-pipeline
+    declarative (0.0.10)
+    declarative-option (0.1.0)
+    default_value_for (3.0.2)
+      activerecord (>= 3.2.0, < 5.1)
+    descendants_tracker (0.0.4)
+      thread_safe (~> 0.3, >= 0.3.1)
+    device_detector (1.0.0)
+    devise (4.4.3)
+      bcrypt (~> 3.0)
+      orm_adapter (~> 0.1)
+      railties (>= 4.1.0, < 6.0)
+      responders
+      warden (~> 1.2.3)
+    devise-two-factor (3.0.0)
+      activesupport
+      attr_encrypted (>= 1.3, < 4, != 2)
+      devise (~> 4.0)
+      railties
+      rotp (~> 2.0)
+    diff-lcs (1.3)
+    diffy (3.1.0)
+    docile (1.1.5)
+    domain_name (0.5.20180417)
+      unf (>= 0.0.5, < 1.0.0)
+    doorkeeper (4.3.2)
+      railties (>= 4.2)
+    doorkeeper-openid_connect (1.5.0)
+      doorkeeper (~> 4.3)
+      json-jwt (~> 1.6)
+    ed25519 (1.2.4)
+    elasticsearch (5.0.3)
+      elasticsearch-api (= 5.0.3)
+      elasticsearch-transport (= 5.0.3)
+    elasticsearch-api (5.0.3)
+      multi_json
+    elasticsearch-model (0.1.9)
+      activesupport (> 3)
+      elasticsearch (> 0.4)
+      hashie
+    elasticsearch-rails (0.1.9)
+    elasticsearch-transport (5.0.3)
+      faraday
+      multi_json
+    email_reply_trimmer (0.1.6)
+    email_spec (2.2.0)
+      htmlentities (~> 4.3.3)
+      launchy (~> 2.1)
+      mail (~> 2.7)
+    encryptor (3.0.0)
+    equalizer (0.0.11)
+    erubis (2.7.0)
+    escape_utils (1.1.1)
+    et-orbi (1.0.3)
+      tzinfo
+    eventmachine (1.2.7)
+    excon (0.62.0)
+    execjs (2.6.0)
+    expression_parser (0.9.0)
+    factory_bot (4.8.2)
+      activesupport (>= 3.0.0)
+    factory_bot_rails (4.8.2)
+      factory_bot (~> 4.8.2)
+      railties (>= 3.0.0)
+    faraday (0.12.2)
+      multipart-post (>= 1.2, < 3)
+    faraday_middleware (0.12.2)
+      faraday (>= 0.7.4, < 1.0)
+    faraday_middleware-aws-signers-v4 (0.1.7)
+      aws-sdk-resources (~> 2)
+      faraday (~> 0.9)
+    faraday_middleware-multi_json (0.0.6)
+      faraday_middleware
+      multi_json
+    fast_blank (1.0.0)
+    fast_gettext (1.6.0)
+    ffaker (2.4.0)
+    ffi (1.9.25)
+    flipper (0.13.0)
+    flipper-active_record (0.13.0)
+      activerecord (>= 3.2, < 6)
+      flipper (~> 0.13.0)
+    flipper-active_support_cache_store (0.13.0)
+      activesupport (>= 3.2, < 6)
+      flipper (~> 0.13.0)
+    flowdock (0.7.1)
+      httparty (~> 0.7)
+      multi_json
+    fog-aliyun (0.2.0)
+      fog-core (~> 1.27)
+      fog-json (~> 1.0)
+      ipaddress (~> 0.8)
+      xml-simple (~> 1.1)
+    fog-aws (2.0.1)
+      fog-core (~> 1.38)
+      fog-json (~> 1.0)
+      fog-xml (~> 0.1)
+      ipaddress (~> 0.8)
+    fog-core (1.45.0)
+      builder
+      excon (~> 0.58)
+      formatador (~> 0.2)
+    fog-google (1.7.1)
+      fog-core
+      fog-json
+      fog-xml
+      google-api-client (~> 0.23.0)
+    fog-json (1.0.2)
+      fog-core (~> 1.0)
+      multi_json (~> 1.10)
+    fog-local (0.3.1)
+      fog-core (~> 1.27)
+    fog-openstack (0.1.21)
+      fog-core (>= 1.40)
+      fog-json (>= 1.0)
+      ipaddress (>= 0.8)
+    fog-rackspace (0.1.1)
+      fog-core (>= 1.35)
+      fog-json (>= 1.0)
+      fog-xml (>= 0.1)
+      ipaddress (>= 0.8)
+    fog-xml (0.1.3)
+      fog-core
+      nokogiri (>= 1.5.11, < 2.0.0)
+    font-awesome-rails (4.7.0.1)
+      railties (>= 3.2, < 5.1)
+    foreman (0.84.0)
+      thor (~> 0.19.1)
+    formatador (0.2.5)
+    fuubar (2.2.0)
+      rspec-core (~> 3.0)
+      ruby-progressbar (~> 1.4)
+    gemojione (3.3.0)
+      json
+    get_process_mem (0.2.0)
+    gettext (3.2.9)
+      locale (>= 2.0.5)
+      text (>= 1.3.0)
+    gettext_i18n_rails (1.8.0)
+      fast_gettext (>= 0.9.0)
+    gettext_i18n_rails_js (1.3.0)
+      gettext (>= 3.0.2)
+      gettext_i18n_rails (>= 0.7.1)
+      po_to_json (>= 1.0.0)
+      rails (>= 3.2.0)
+    gitaly-proto (0.118.1)
+      google-protobuf (~> 3.1)
+      grpc (~> 1.10)
+    github-linguist (5.3.3)
+      charlock_holmes (~> 0.7.5)
+      escape_utils (~> 1.1.0)
+      mime-types (>= 1.19)
+      rugged (>= 0.25.1)
+    github-markup (1.7.0)
+    gitlab-flowdock-git-hook (1.0.1)
+      flowdock (~> 0.7)
+      gitlab-grit (>= 2.4.1)
+      multi_json
+    gitlab-gollum-lib (4.2.7.5)
+      gemojione (~> 3.2)
+      github-markup (~> 1.6)
+      gollum-grit_adapter (~> 1.0)
+      nokogiri (>= 1.6.1, < 2.0)
+      rouge (~> 3.1)
+      sanitize (~> 4.6.4)
+      stringex (~> 2.6)
+    gitlab-grit (2.8.2)
+      charlock_holmes (~> 0.6)
+      diff-lcs (~> 1.1)
+      mime-types (>= 1.16)
+      posix-spawn (~> 0.3)
+    gitlab-license (1.0.0)
+    gitlab-markup (1.6.4)
+    gitlab-sidekiq-fetcher (0.3.0)
+      sidekiq (~> 5)
+    gitlab-styles (2.4.1)
+      rubocop (~> 0.54.0)
+      rubocop-gitlab-security (~> 0.1.0)
+      rubocop-rspec (~> 1.19)
+    gitlab_omniauth-ldap (2.0.4)
+      net-ldap (~> 0.16)
+      omniauth (~> 1.3)
+      pyu-ruby-sasl (>= 0.0.3.3, < 0.1)
+      rubyntlm (~> 0.5)
+    globalid (0.4.1)
+      activesupport (>= 4.2.0)
+    gollum-grit_adapter (1.0.1)
+      gitlab-grit (~> 2.7, >= 2.7.1)
+    gon (6.2.0)
+      actionpack (>= 3.0)
+      multi_json
+      request_store (>= 1.0)
+    google-api-client (0.23.4)
+      addressable (~> 2.5, >= 2.5.1)
+      googleauth (>= 0.5, < 0.7.0)
+      httpclient (>= 2.8.1, < 3.0)
+      mime-types (~> 3.0)
+      representable (~> 3.0)
+      retriable (>= 2.0, < 4.0)
+    google-protobuf (3.5.1)
+    googleapis-common-protos-types (1.0.1)
+      google-protobuf (~> 3.0)
+    googleauth (0.6.2)
+      faraday (~> 0.12)
+      jwt (>= 1.4, < 3.0)
+      logging (~> 2.0)
+      memoist (~> 0.12)
+      multi_json (~> 1.11)
+      os (~> 0.9)
+      signet (~> 0.7)
+    gpgme (2.0.13)
+      mini_portile2 (~> 2.1)
+    grape (1.1.0)
+      activesupport
+      builder
+      mustermann-grape (~> 1.0.0)
+      rack (>= 1.3.0)
+      rack-accept
+      virtus (>= 1.0.0)
+    grape-entity (0.7.1)
+      activesupport (>= 4.0)
+      multi_json (>= 1.3.2)
+    grape-path-helpers (1.0.6)
+      activesupport (>= 4, < 5.1)
+      grape (~> 1.0)
+      rake (~> 12)
+    grape_logging (1.7.0)
+      grape
+    graphiql-rails (1.4.10)
+      railties
+      sprockets-rails
+    graphql (1.8.1)
+    grpc (1.11.0)
+      google-protobuf (~> 3.1)
+      googleapis-common-protos-types (~> 1.0.0)
+      googleauth (>= 0.5.1, < 0.7)
+    gssapi (1.2.0)
+      ffi (>= 1.0.1)
+    haml (5.0.4)
+      temple (>= 0.8.0)
+      tilt
+    haml_lint (0.26.0)
+      haml (>= 4.0, < 5.1)
+      rainbow
+      rake (>= 10, < 13)
+      rubocop (>= 0.49.0)
+      sysexits (~> 1.1)
+    hamlit (2.8.8)
+      temple (>= 0.8.0)
+      thor
+      tilt
+    hangouts-chat (0.0.5)
+    hashdiff (0.3.4)
+    hashie (3.5.7)
+    hashie-forbidden_attributes (0.1.1)
+      hashie (>= 3.0)
+    health_check (2.6.0)
+      rails (>= 4.0)
+    hipchat (1.5.2)
+      httparty
+      mimemagic
+    html-pipeline (2.8.4)
+      activesupport (>= 2)
+      nokogiri (>= 1.4)
+    html2text (0.2.0)
+      nokogiri (~> 1.6)
+    htmlentities (4.3.4)
+    http (2.2.2)
+      addressable (~> 2.3)
+      http-cookie (~> 1.0)
+      http-form_data (~> 1.0.1)
+      http_parser.rb (~> 0.6.0)
+    http-cookie (1.0.3)
+      domain_name (~> 0.5)
+    http-form_data (1.0.3)
+    http_parser.rb (0.6.0)
+    httparty (0.13.7)
+      json (~> 1.8)
+      multi_xml (>= 0.5.2)
+    httpclient (2.8.3)
+    i18n (0.9.5)
+      concurrent-ruby (~> 1.0)
+    icalendar (2.4.1)
+    ice_nine (0.11.2)
+    influxdb (0.2.3)
+      cause
+      json
+    ipaddress (0.8.3)
+    jira-ruby (1.4.1)
+      activesupport
+      multipart-post
+      oauth (~> 0.5, >= 0.5.0)
+    jmespath (1.3.1)
+    jquery-atwho-rails (1.3.2)
+    js_regex (2.2.1)
+      regexp_parser (>= 0.4.11, <= 0.5.0)
+    json (1.8.6)
+    json-jwt (1.9.4)
+      activesupport
+      aes_key_wrap
+      bindata
+    json-schema (2.8.0)
+      addressable (>= 2.4)
+    jwt (1.5.6)
+    kaminari (1.0.1)
+      activesupport (>= 4.1.0)
+      kaminari-actionview (= 1.0.1)
+      kaminari-activerecord (= 1.0.1)
+      kaminari-core (= 1.0.1)
+    kaminari-actionview (1.0.1)
+      actionview
+      kaminari-core (= 1.0.1)
+    kaminari-activerecord (1.0.1)
+      activerecord
+      kaminari-core (= 1.0.1)
+    kaminari-core (1.0.1)
+    kgio (2.10.0)
+    knapsack (1.16.0)
+      rake
+    kubeclient (3.1.0)
+      http (~> 2.2.2)
+      recursive-open-struct (~> 1.0, >= 1.0.4)
+      rest-client (~> 2.0)
+    launchy (2.4.3)
+      addressable (~> 2.3)
+    letter_opener (1.4.1)
+      launchy (~> 2.2)
+    letter_opener_web (1.3.0)
+      actionmailer (>= 3.2)
+      letter_opener (~> 1.0)
+      railties (>= 3.2)
+    license_finder (5.4.0)
+      bundler
+      rubyzip
+      thor
+      toml (= 0.2.0)
+      with_env (= 1.1.0)
+      xml-simple
+    licensee (8.9.2)
+      rugged (~> 0.24)
+    little-plugger (1.1.4)
+    locale (2.1.2)
+    logging (2.2.2)
+      little-plugger (~> 1.1)
+      multi_json (~> 1.10)
+    lograge (0.10.0)
+      actionpack (>= 4)
+      activesupport (>= 4)
+      railties (>= 4)
+      request_store (~> 1.0)
+    loofah (2.2.2)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.5.9)
+    mail (2.7.0)
+      mini_mime (>= 0.1.1)
+    mail_room (0.9.1)
+    memoist (0.16.0)
+    memoizable (0.4.2)
+      thread_safe (~> 0.3, >= 0.3.1)
+    method_source (0.9.0)
+    mime-types (3.1)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2016.0521)
+    mimemagic (0.3.0)
+    mini_magick (4.8.0)
+    mini_mime (1.0.1)
+    mini_portile2 (2.3.0)
+    minitest (5.7.0)
+    mousetrap-rails (1.4.6)
+    msgpack (1.2.4)
+    multi_json (1.13.1)
+    multi_xml (0.6.0)
+    multipart-post (2.0.0)
+    mustermann (1.0.3)
+    mustermann-grape (1.0.0)
+      mustermann (~> 1.0.0)
+    mysql2 (0.4.10)
+    net-ldap (0.16.0)
+    net-ntp (2.1.3)
+    net-ssh (5.0.1)
+    netrc (0.11.0)
+    nokogiri (1.8.4)
+      mini_portile2 (~> 2.3.0)
+    nokogumbo (1.5.0)
+      nokogiri
+    numerizer (0.1.1)
+    oauth (0.5.4)
+    oauth2 (1.4.0)
+      faraday (>= 0.8, < 0.13)
+      jwt (~> 1.0)
+      multi_json (~> 1.3)
+      multi_xml (~> 0.5)
+      rack (>= 1.2, < 3)
+    octokit (4.9.0)
+      sawyer (~> 0.8.0, >= 0.5.3)
+    omniauth (1.8.1)
+      hashie (>= 3.4.6, < 3.6.0)
+      rack (>= 1.6.2, < 3)
+    omniauth-auth0 (2.0.0)
+      omniauth-oauth2 (~> 1.4)
+    omniauth-authentiq (0.3.3)
+      jwt (>= 1.5)
+      omniauth-oauth2 (>= 1.5)
+    omniauth-azure-oauth2 (0.0.9)
+      jwt (~> 1.0)
+      omniauth (~> 1.0)
+      omniauth-oauth2 (~> 1.4)
+    omniauth-cas3 (1.1.4)
+      addressable (~> 2.3)
+      nokogiri (~> 1.7, >= 1.7.1)
+      omniauth (~> 1.2)
+    omniauth-facebook (4.0.0)
+      omniauth-oauth2 (~> 1.2)
+    omniauth-github (1.3.0)
+      omniauth (~> 1.5)
+      omniauth-oauth2 (>= 1.4.0, < 2.0)
+    omniauth-gitlab (1.0.3)
+      omniauth (~> 1.0)
+      omniauth-oauth2 (~> 1.0)
+    omniauth-google-oauth2 (0.5.3)
+      jwt (>= 1.5)
+      omniauth (>= 1.1.1)
+      omniauth-oauth2 (>= 1.5)
+    omniauth-kerberos (0.3.0)
+      omniauth-multipassword
+      timfel-krb5-auth (~> 0.8)
+    omniauth-multipassword (0.4.2)
+      omniauth (~> 1.0)
+    omniauth-oauth (1.1.0)
+      oauth
+      omniauth (~> 1.0)
+    omniauth-oauth2 (1.5.0)
+      oauth2 (~> 1.1)
+      omniauth (~> 1.2)
+    omniauth-oauth2-generic (0.2.2)
+      omniauth-oauth2 (~> 1.0)
+    omniauth-saml (1.10.0)
+      omniauth (~> 1.3, >= 1.3.2)
+      ruby-saml (~> 1.7)
+    omniauth-shibboleth (1.3.0)
+      omniauth (>= 1.0.0)
+    omniauth-twitter (1.4.0)
+      omniauth-oauth (~> 1.1)
+      rack
+    omniauth_crowd (2.2.3)
+      activesupport
+      nokogiri (>= 1.4.4)
+      omniauth (~> 1.0)
+    org-ruby (0.9.12)
+      rubypants (~> 0.2)
+    orm_adapter (0.5.0)
+    os (0.9.6)
+    parallel (1.12.1)
+    parser (2.5.1.0)
+      ast (~> 2.4.0)
+    parslet (1.8.2)
+    peek (1.0.1)
+      concurrent-ruby (>= 0.9.0)
+      concurrent-ruby-ext (>= 0.9.0)
+      railties (>= 4.0.0)
+    peek-gc (0.0.2)
+      peek
+    peek-mysql2 (1.1.0)
+      atomic (>= 1.0.0)
+      mysql2
+      peek
+    peek-pg (1.3.0)
+      concurrent-ruby
+      concurrent-ruby-ext
+      peek
+      pg
+    peek-rblineprof (0.2.0)
+      peek
+      rblineprof
+    peek-redis (1.2.0)
+      atomic (>= 1.0.0)
+      peek
+      redis
+    pg (0.18.4)
+    po_to_json (1.0.1)
+      json (>= 1.6.0)
+    posix-spawn (0.3.13)
+    powerpack (0.1.1)
+    premailer (1.10.4)
+      addressable
+      css_parser (>= 1.4.10)
+      htmlentities (>= 4.0.0)
+    premailer-rails (1.9.7)
+      actionmailer (>= 3, < 6)
+      premailer (~> 1.7, >= 1.7.9)
+    proc_to_ast (0.1.0)
+      coderay
+      parser
+      unparser
+    procto (0.0.3)
+    prometheus-client-mmap (0.9.4)
+    pry (0.11.3)
+      coderay (~> 1.1.0)
+      method_source (~> 0.9.0)
+    pry-byebug (3.4.3)
+      byebug (>= 9.0, < 9.1)
+      pry (~> 0.10)
+    pry-rails (0.3.6)
+      pry (>= 0.10.4)
+    public_suffix (3.0.3)
+    pyu-ruby-sasl (0.0.3.3)
+    rack (1.6.10)
+    rack-accept (0.4.5)
+      rack (>= 0.4)
+    rack-attack (4.4.1)
+      rack
+    rack-cors (1.0.2)
+    rack-oauth2 (1.2.3)
+      activesupport (>= 2.3)
+      attr_required (>= 0.0.5)
+      httpclient (>= 2.4)
+      multi_json (>= 1.3.6)
+      rack (>= 1.1)
+    rack-protection (2.0.3)
+      rack
+    rack-proxy (0.6.0)
+      rack
+    rack-test (0.6.3)
+      rack (>= 1.0)
+    rails (4.2.10)
+      actionmailer (= 4.2.10)
+      actionpack (= 4.2.10)
+      actionview (= 4.2.10)
+      activejob (= 4.2.10)
+      activemodel (= 4.2.10)
+      activerecord (= 4.2.10)
+      activesupport (= 4.2.10)
+      bundler (>= 1.3.0, < 2.0)
+      railties (= 4.2.10)
+      sprockets-rails
+    rails-deprecated_sanitizer (1.0.3)
+      activesupport (>= 4.2.0.alpha)
+    rails-dom-testing (1.0.9)
+      activesupport (>= 4.2.0, < 5.0)
+      nokogiri (~> 1.6)
+      rails-deprecated_sanitizer (>= 1.0.1)
+    rails-html-sanitizer (1.0.4)
+      loofah (~> 2.2, >= 2.2.2)
+    rails-i18n (4.0.9)
+      i18n (~> 0.7)
+      railties (~> 4.0)
+    railties (4.2.10)
+      actionpack (= 4.2.10)
+      activesupport (= 4.2.10)
+      rake (>= 0.8.7)
+      thor (>= 0.18.1, < 2.0)
+    rainbow (3.0.0)
+    raindrops (0.18.0)
+    rake (12.3.1)
+    rb-fsevent (0.10.2)
+    rb-inotify (0.9.10)
+      ffi (>= 0.5.0, < 2)
+    rblineprof (0.3.6)
+      debugger-ruby_core_source (~> 1.3)
+    rbtrace (0.4.10)
+      ffi (>= 1.0.6)
+      msgpack (>= 0.4.3)
+      trollop (>= 1.16.2)
+    rdoc (6.0.4)
+    re2 (1.1.1)
+    recaptcha (3.0.0)
+      json
+    recursive-open-struct (1.1.0)
+    redcarpet (3.4.0)
+    redis (3.3.5)
+    redis-actionpack (5.0.2)
+      actionpack (>= 4.0, < 6)
+      redis-rack (>= 1, < 3)
+      redis-store (>= 1.1.0, < 2)
+    redis-activesupport (5.0.4)
+      activesupport (>= 3, < 6)
+      redis-store (>= 1.3, < 2)
+    redis-namespace (1.6.0)
+      redis (>= 3.0.4)
+    redis-rack (2.0.4)
+      rack (>= 1.5, < 3)
+      redis-store (>= 1.2, < 2)
+    redis-rails (5.0.2)
+      redis-actionpack (>= 5.0, < 6)
+      redis-activesupport (>= 5.0, < 6)
+      redis-store (>= 1.2, < 2)
+    redis-store (1.4.1)
+      redis (>= 2.2, < 5)
+    regexp_parser (0.5.0)
+    representable (3.0.4)
+      declarative (< 0.1.0)
+      declarative-option (< 0.2.0)
+      uber (< 0.2.0)
+    request_store (1.3.1)
+    responders (2.4.0)
+      actionpack (>= 4.2.0, < 5.3)
+      railties (>= 4.2.0, < 5.3)
+    rest-client (2.0.2)
+      http-cookie (>= 1.0.2, < 2.0)
+      mime-types (>= 1.16, < 4.0)
+      netrc (~> 0.8)
+    retriable (3.1.2)
+    rinku (2.0.0)
+    rotp (2.1.2)
+    rouge (3.3.0)
+    rqrcode (0.7.0)
+      chunky_png
+    rqrcode-rails3 (0.1.7)
+      rqrcode (>= 0.4.2)
+    rspec (3.7.0)
+      rspec-core (~> 3.7.0)
+      rspec-expectations (~> 3.7.0)
+      rspec-mocks (~> 3.7.0)
+    rspec-core (3.7.1)
+      rspec-support (~> 3.7.0)
+    rspec-expectations (3.7.0)
+      diff-lcs (>= 1.2.0, < 2.0)
+      rspec-support (~> 3.7.0)
+    rspec-mocks (3.7.0)
+      diff-lcs (>= 1.2.0, < 2.0)
+      rspec-support (~> 3.7.0)
+    rspec-parameterized (0.4.0)
+      binding_of_caller
+      parser
+      proc_to_ast
+      rspec (>= 2.13, < 4)
+      unparser
+    rspec-rails (3.7.2)
+      actionpack (>= 3.0)
+      activesupport (>= 3.0)
+      railties (>= 3.0)
+      rspec-core (~> 3.7.0)
+      rspec-expectations (~> 3.7.0)
+      rspec-mocks (~> 3.7.0)
+      rspec-support (~> 3.7.0)
+    rspec-retry (0.4.5)
+      rspec-core
+    rspec-set (0.1.3)
+    rspec-support (3.7.1)
+    rspec_junit_formatter (0.2.3)
+      builder (< 4)
+      rspec-core (>= 2, < 4, != 2.12.0)
+    rspec_profiling (0.0.5)
+      activerecord
+      pg
+      rails
+      sqlite3
+    rubocop (0.54.0)
+      parallel (~> 1.10)
+      parser (>= 2.5)
+      powerpack (~> 0.1)
+      rainbow (>= 2.2.2, < 4.0)
+      ruby-progressbar (~> 1.7)
+      unicode-display_width (~> 1.0, >= 1.0.1)
+    rubocop-gitlab-security (0.1.1)
+      rubocop (>= 0.51)
+    rubocop-rspec (1.22.2)
+      rubocop (>= 0.52.1)
+    ruby-enum (0.7.2)
+      i18n
+    ruby-fogbugz (0.2.1)
+      crack (~> 0.4)
+    ruby-prof (0.17.0)
+    ruby-progressbar (1.9.0)
+    ruby-saml (1.7.2)
+      nokogiri (>= 1.5.10)
+    ruby_parser (3.9.0)
+      sexp_processor (~> 4.1)
+    rubyntlm (0.6.2)
+    rubypants (0.2.0)
+    rubyzip (1.2.2)
+    rufus-scheduler (3.4.0)
+      et-orbi (~> 1.0)
+    rugged (0.27.4)
+    safe_yaml (1.0.4)
+    sanitize (4.6.6)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.4.4)
+      nokogumbo (~> 1.4)
+    sass (3.5.5)
+      sass-listen (~> 4.0.0)
+    sass-listen (4.0.0)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+    sass-rails (5.0.6)
+      railties (>= 4.0.0, < 6)
+      sass (~> 3.1)
+      sprockets (>= 2.8, < 4.0)
+      sprockets-rails (>= 2.0, < 4.0)
+      tilt (>= 1.1, < 3)
+    sawyer (0.8.1)
+      addressable (>= 2.3.5, < 2.6)
+      faraday (~> 0.8, < 1.0)
+    scss_lint (0.56.0)
+      rake (>= 0.9, < 13)
+      sass (~> 3.5.3)
+    seed-fu (2.3.7)
+      activerecord (>= 3.1)
+      activesupport (>= 3.1)
+    select2-rails (3.5.9.3)
+      thor (~> 0.14)
+    selenium-webdriver (3.12.0)
+      childprocess (~> 0.5)
+      rubyzip (~> 1.2)
+    sentry-raven (2.7.2)
+      faraday (>= 0.7.6, < 1.0)
+    settingslogic (2.0.9)
+    sexp_processor (4.9.0)
+    sham_rack (1.3.6)
+      rack
+    shoulda-matchers (3.1.2)
+      activesupport (>= 4.0.0)
+    sidekiq (5.2.1)
+      connection_pool (~> 2.2, >= 2.2.2)
+      rack-protection (>= 1.5.0)
+      redis (>= 3.3.5, < 5)
+    sidekiq-cron (0.6.0)
+      rufus-scheduler (>= 3.3.0)
+      sidekiq (>= 4.2.1)
+    signet (0.8.1)
+      addressable (~> 2.3)
+      faraday (~> 0.9)
+      jwt (>= 1.5, < 3.0)
+      multi_json (~> 1.10)
+    simple_po_parser (1.1.2)
+    simplecov (0.14.1)
+      docile (~> 1.1.0)
+      json (>= 1.8, < 3)
+      simplecov-html (~> 0.10.0)
+    simplecov-html (0.10.0)
+    slack-notifier (1.5.1)
+    spring (2.0.2)
+      activesupport (>= 4.2)
+    spring-commands-rspec (1.0.4)
+      spring (>= 0.9.1)
+    sprockets (3.7.2)
+      concurrent-ruby (~> 1.0)
+      rack (> 1, < 3)
+    sprockets-rails (3.2.1)
+      actionpack (>= 4.0)
+      activesupport (>= 4.0)
+      sprockets (>= 3.0.0)
+    sqlite3 (1.3.13)
+    sshkey (1.9.0)
+    stackprof (0.2.10)
+    state_machines (0.5.0)
+    state_machines-activemodel (0.5.1)
+      activemodel (>= 4.1, < 6.0)
+      state_machines (>= 0.5.0)
+    state_machines-activerecord (0.5.1)
+      activerecord (>= 4.1, < 6.0)
+      state_machines-activemodel (>= 0.5.0)
+    stringex (2.8.4)
+    sys-filesystem (1.1.6)
+      ffi
+    sysexits (1.2.0)
+    temple (0.8.0)
+    test-prof (0.2.5)
+    test_after_commit (1.1.0)
+      activerecord (>= 3.2)
+    text (1.3.1)
+    thin (1.7.2)
+      daemons (~> 1.0, >= 1.0.9)
+      eventmachine (~> 1.0, >= 1.0.4)
+      rack (>= 1, < 3)
+    thor (0.19.4)
+    thread_safe (0.3.6)
+    tilt (2.0.8)
+    timecop (0.8.1)
+    timfel-krb5-auth (0.8.3)
+    toml (0.2.0)
+      parslet (~> 1.8.0)
+    toml-rb (1.0.0)
+      citrus (~> 3.0, > 3.0)
+    trollop (2.1.3)
+    truncato (0.7.10)
+      htmlentities (~> 4.3.1)
+      nokogiri (~> 1.8.0, >= 1.7.0)
+    tzinfo (1.2.5)
+      thread_safe (~> 0.1)
+    u2f (0.2.1)
+    uber (0.1.0)
+    uglifier (2.7.2)
+      execjs (>= 0.3.0)
+      json (>= 1.8.0)
+    unf (0.1.4)
+      unf_ext
+    unf_ext (0.0.7.5)
+    unicode-display_width (1.3.2)
+    unicorn (5.1.0)
+      kgio (~> 2.6)
+      raindrops (~> 0.7)
+    unicorn-worker-killer (0.4.4)
+      get_process_mem (~> 0)
+      unicorn (>= 4, < 6)
+    uniform_notifier (1.10.0)
+    unparser (0.2.7)
+      abstract_type (~> 0.0.7)
+      adamantium (~> 0.2.0)
+      concord (~> 0.1.5)
+      diff-lcs (~> 1.3)
+      equalizer (~> 0.0.9)
+      parser (>= 2.3.1.2, < 2.6)
+      procto (~> 0.0.2)
+    validates_hostname (1.0.6)
+      activerecord (>= 3.0)
+      activesupport (>= 3.0)
+    version_sorter (2.1.0)
+    virtus (1.0.5)
+      axiom-types (~> 0.1)
+      coercible (~> 1.0)
+      descendants_tracker (~> 0.0, >= 0.0.3)
+      equalizer (~> 0.0, >= 0.0.9)
+    vmstat (2.3.0)
+    warden (1.2.7)
+      rack (>= 1.0)
+    webmock (2.3.2)
+      addressable (>= 2.3.6)
+      crack (>= 0.3.2)
+      hashdiff
+    webpack-rails (0.9.11)
+      railties (>= 3.2.0)
+    wikicloth (0.8.1)
+      builder
+      expression_parser
+      rinku
+    with_env (1.1.0)
+    xml-simple (1.1.5)
+    xpath (2.1.0)
+      nokogiri (~> 1.3)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  RedCloth (~> 4.3.2)
+  ace-rails-ap (~> 4.1.0)
+  activerecord_sane_schema_dumper (= 0.2)
+  acts-as-taggable-on (~> 5.0)
+  addressable (~> 2.5.2)
+  akismet (~> 2.0)
+  asana (~> 0.6.0)
+  asciidoctor (~> 1.5.6)
+  asciidoctor-plantuml (= 0.0.8)
+  asset_sync (~> 2.4)
+  attr_encrypted (~> 3.1.0)
+  awesome_print
+  aws-sdk
+  babosa (~> 1.0.2)
+  base32 (~> 0.3.0)
+  batch-loader (~> 1.2.1)
+  bcrypt_pbkdf (~> 1.0)
+  benchmark-ips (~> 2.3.0)
+  better_errors (~> 2.1.0)
+  binding_of_caller (~> 0.7.2)
+  bootsnap (~> 1.3)
+  bootstrap_form (~> 2.7.0)
+  brakeman (~> 4.2)
+  browser (~> 2.5)
+  bullet (~> 5.5.0)
+  bundler-audit (~> 0.5.0)
+  capybara (~> 2.15)
+  capybara-screenshot (~> 1.0.0)
+  carrierwave (= 1.2.3)
+  charlock_holmes (~> 0.7.5)
+  chronic (~> 0.10.2)
+  chronic_duration (~> 0.10.6)
+  commonmarker (~> 0.17)
+  concurrent-ruby (~> 1.0.5)
+  connection_pool (~> 2.0)
+  creole (~> 0.5.0)
+  database_cleaner (~> 1.5.0)
+  deckar01-task_list (= 2.0.0)
+  default_value_for (~> 3.0.0)
+  device_detector
+  devise (~> 4.4)
+  devise-two-factor (~> 3.0.0)
+  diffy (~> 3.1.0)
+  doorkeeper (~> 4.3)
+  doorkeeper-openid_connect (~> 1.5)
+  ed25519 (~> 1.2)
+  elasticsearch-api (= 5.0.3)
+  elasticsearch-model (~> 0.1.9)
+  elasticsearch-rails (~> 0.1.9)
+  email_reply_trimmer (~> 0.1)
+  email_spec (~> 2.2.0)
+  factory_bot_rails (~> 4.8.2)
+  faraday (~> 0.12)
+  faraday_middleware-aws-signers-v4
+  fast_blank
+  ffaker (~> 2.4)
+  flipper (~> 0.13.0)
+  flipper-active_record (~> 0.13.0)
+  flipper-active_support_cache_store (~> 0.13.0)
+  fog-aliyun (~> 0.2.0)
+  fog-aws (~> 2.0.1)
+  fog-core (~> 1.44)
+  fog-google (~> 1.7.1)
+  fog-local (~> 0.3)
+  fog-openstack (~> 0.1)
+  fog-rackspace (~> 0.1.1)
+  font-awesome-rails (~> 4.7)
+  foreman (~> 0.84.0)
+  fuubar (~> 2.2.0)
+  gemojione (~> 3.3)
+  gettext (~> 3.2.2)
+  gettext_i18n_rails (~> 1.8.0)
+  gettext_i18n_rails_js (~> 1.3)
+  gitaly-proto (~> 0.118.1)
+  github-linguist (~> 5.3.3)
+  github-markup (~> 1.7.0)
+  gitlab-flowdock-git-hook (~> 1.0.1)
+  gitlab-gollum-lib (~> 4.2)
+  gitlab-license (~> 1.0)
+  gitlab-markup (~> 1.6.4)
+  gitlab-sidekiq-fetcher
+  gitlab-styles (~> 2.4)
+  gitlab_omniauth-ldap (~> 2.0.4)
+  gon (~> 6.2)
+  google-api-client (~> 0.23)
+  google-protobuf (= 3.5.1)
+  gpgme
+  grape (~> 1.1)
+  grape-entity (~> 0.7.1)
+  grape-path-helpers (~> 1.0)
+  grape_logging (~> 1.7)
+  graphiql-rails (~> 1.4.10)
+  graphql (~> 1.8.0)
+  grpc (~> 1.11.0)
+  gssapi
+  haml_lint (~> 0.26.0)
+  hamlit (~> 2.8.8)
+  hangouts-chat (~> 0.0.5)
+  hashie-forbidden_attributes
+  health_check (~> 2.6.0)
+  hipchat (~> 1.5.0)
+  html-pipeline (~> 2.8)
+  html2text
+  httparty (~> 0.13.3)
+  icalendar
+  influxdb (~> 0.2)
+  jira-ruby (~> 1.4)
+  jquery-atwho-rails (~> 1.3.2)
+  js_regex (~> 2.2.1)
+  json-schema (~> 2.8.0)
+  jwt (~> 1.5.6)
+  kaminari (~> 1.0)
+  knapsack (~> 1.16)
+  kubeclient (~> 3.1.0)
+  letter_opener_web (~> 1.3.0)
+  license_finder (~> 5.4)
+  licensee (~> 8.9)
+  lograge (~> 0.5)
+  loofah (~> 2.2)
+  mail_room (~> 0.9.1)
+  method_source (~> 0.8)
+  mini_magick
+  minitest (~> 5.7.0)
+  mousetrap-rails (~> 1.4.6)
+  mysql2 (~> 0.4.10)
+  net-ldap
+  net-ntp
+  net-ssh (~> 5.0)
+  nokogiri (~> 1.8.2)
+  oauth2 (~> 1.4)
+  octokit (~> 4.9)
+  omniauth (~> 1.8)
+  omniauth-auth0 (~> 2.0.0)
+  omniauth-authentiq (~> 0.3.3)
+  omniauth-azure-oauth2 (~> 0.0.9)
+  omniauth-cas3 (~> 1.1.4)
+  omniauth-facebook (~> 4.0.0)
+  omniauth-github (~> 1.3)
+  omniauth-gitlab (~> 1.0.2)
+  omniauth-google-oauth2 (~> 0.5.3)
+  omniauth-kerberos (~> 0.3.0)
+  omniauth-oauth2-generic (~> 0.2.2)
+  omniauth-saml (~> 1.10)
+  omniauth-shibboleth (~> 1.3.0)
+  omniauth-twitter (~> 1.4)
+  omniauth_crowd (~> 2.2.0)
+  org-ruby (~> 0.9.12)
+  peek (~> 1.0.1)
+  peek-gc (~> 0.0.2)
+  peek-mysql2 (~> 1.1.0)
+  peek-pg (~> 1.3.0)
+  peek-rblineprof (~> 0.2.0)
+  peek-redis (~> 1.2.0)
+  pg (~> 0.18.2)
+  premailer-rails (~> 1.9.7)
+  prometheus-client-mmap (~> 0.9.4)
+  pry-byebug (~> 3.4.1)
+  pry-rails (~> 0.3.4)
+  rack-attack (~> 4.4.1)
+  rack-cors (~> 1.0.0)
+  rack-oauth2 (~> 1.2.1)
+  rack-proxy (~> 0.6.0)
+  rails (= 4.2.10)
+  rails-deprecated_sanitizer (~> 1.0.3)
+  rails-i18n (~> 4.0.9)
+  rainbow (~> 3.0)
+  raindrops (~> 0.18)
+  rblineprof (~> 0.3.6)
+  rbtrace (~> 0.4)
+  rdoc (~> 6.0)
+  re2 (~> 1.1.1)
+  recaptcha (~> 3.0)
+  redcarpet (~> 3.4)
+  redis (~> 3.2)
+  redis-namespace (~> 1.6.0)
+  redis-rails (~> 5.0.2)
+  request_store (~> 1.3)
+  responders (~> 2.0)
+  rouge (~> 3.1)
+  rqrcode-rails3 (~> 0.1.7)
+  rspec-parameterized
+  rspec-rails (~> 3.7.0)
+  rspec-retry (~> 0.4.5)
+  rspec-set (~> 0.1.3)
+  rspec_junit_formatter
+  rspec_profiling (~> 0.0.5)
+  rubocop (~> 0.54.0)
+  rubocop-rspec (~> 1.22.1)
+  ruby-fogbugz (~> 0.2.1)
+  ruby-prof (~> 0.17.0)
+  ruby-progressbar
+  ruby_parser (~> 3.8)
+  rufus-scheduler (~> 3.4)
+  rugged (~> 0.27)
+  sanitize (~> 4.6)
+  sass-rails (~> 5.0.6)
+  scss_lint (~> 0.56.0)
+  seed-fu (~> 2.3.7)
+  select2-rails (~> 3.5.9)
+  selenium-webdriver (~> 3.12)
+  sentry-raven (~> 2.7)
+  settingslogic (~> 2.0.9)
+  sham_rack (~> 1.3.6)
+  shoulda-matchers (~> 3.1.2)
+  sidekiq (~> 5.2.1)
+  sidekiq-cron (~> 0.6.0)
+  simple_po_parser (~> 1.1.2)
+  simplecov (~> 0.14.0)
+  slack-notifier (~> 1.5.1)
+  spring (~> 2.0.0)
+  spring-commands-rspec (~> 1.0.4)
+  sprockets (~> 3.7.0)
+  sshkey (~> 1.9.0)
+  stackprof (~> 0.2.10)
+  state_machines-activerecord (~> 0.5.1)
+  sys-filesystem (~> 1.1.6)
+  test-prof (~> 0.2.5)
+  test_after_commit (~> 1.1)
+  thin (~> 1.7.0)
+  timecop (~> 0.8.0)
+  toml-rb (~> 1.0.0)
+  truncato (~> 0.7.9)
+  u2f (~> 0.2.1)
+  uglifier (~> 2.7.2)
+  unf (~> 0.1.4)
+  unicorn (~> 5.1.0)
+  unicorn-worker-killer (~> 0.4.4)
+  validates_hostname (~> 1.0.6)
+  version_sorter (~> 2.1.0)
+  virtus (~> 1.0.1)
+  vmstat (~> 2.3.0)
+  webmock (~> 2.3.2)
+  webpack-rails (~> 0.9.10)
+  wikicloth (= 0.8.1)
+
+BUNDLED WITH
+   1.16.4
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix
new file mode 100644
index 000000000000..03efc4e9600f
--- /dev/null
+++ b/pkgs/applications/version-management/gitlab/rubyEnv-ee/gemset.nix
@@ -0,0 +1,3654 @@
+{
+  abstract_type = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09330cmhrc2wmfhdj9zzg82sv6cdhm3qgdkva5ni5xfjril2pf14";
+      type = "gem";
+    };
+    version = "0.0.7";
+  };
+  ace-rails-ap = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14wj9gsiy7rm0lvs27ffsrh92wndjksj6rlfj3n7jhv1v77w9v2h";
+      type = "gem";
+    };
+    version = "4.1.2";
+  };
+  actionmailer = {
+    dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ivyjsapqgn1xfb2p8yqjrg2jldqm5r7hxrjxq6kdr05gk4fsg59";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  actionpack = {
+    dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0l6agrxdaishxjx2zc2x8md95plfp39bfskzgs6v9gsdp2y2arpx";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  actionview = {
+    dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jrx2pmkywk70z7n17gw3jrcdw3n03wdzvg45bnq8wxshl1lmbhv";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  activejob = {
+    dependencies = ["activesupport" "globalid"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10jsa5pqklcsd2npicqxr5abjlwi53di2brpzgz35k557fkpc1z8";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  activemodel = {
+    dependencies = ["activesupport" "builder"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c4vj9xajxa906bqbcjpni74nya6rh2nbb15gl8xm0vl9zf3ll9v";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  activerecord = {
+    dependencies = ["activemodel" "activesupport" "arel"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lws9y4p9c2vnmv3ddfpv8jh6azlddppl3fi31vahaz14ifxjk5s";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  activerecord_sane_schema_dumper = {
+    dependencies = ["rails"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "122c7v7lvs0gwckvx2rar07waxnx1vv0lryz322nybb69d8vbhl6";
+      type = "gem";
+    };
+    version = "0.2";
+  };
+  activesupport = {
+    dependencies = ["i18n" "minitest" "thread_safe" "tzinfo"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s12j8vl8vrxfngkdlz9g8bpz9akq1z42d57mx5r537b2pji8nr7";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  acts-as-taggable-on = {
+    dependencies = ["activerecord"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kvbhlansqiz1xp5r28cv27ghbfmx4b39cv51w6xrhkb52bskn3i";
+      type = "gem";
+    };
+    version = "5.0.0";
+  };
+  adamantium = {
+    dependencies = ["ice_nine" "memoizable"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0165r2ikgfwv2rm8dzyijkp74fvg0ni72hpdx8ay2v7cj08dqyak";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  addressable = {
+    dependencies = ["public_suffix"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
+      type = "gem";
+    };
+    version = "2.5.2";
+  };
+  aes_key_wrap = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0li86k0g812jkzrppb2fvqngvzp09nygywjpn81nx90s01wxqw07";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  akismet = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hqpn25iyypkwkrqaibjm5nss5jmlkrddhia7frmz94prvyjr02w";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  arel = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nfcrdiys6q6ylxiblky9jyssrw2xj96fmxmal7f4f0jj3417vj4";
+      type = "gem";
+    };
+    version = "6.0.4";
+  };
+  asana = {
+    dependencies = ["faraday" "faraday_middleware" "faraday_middleware-multi_json" "oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bn7f3sc2f02g871jd0y6qdhixn464mflkjchp56x6kcnyqy24z6";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  asciidoctor = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zq3az4836nxkc8g5wnnbzmarw7663s1ky6gf8pc04sfpa8n2l3f";
+      type = "gem";
+    };
+    version = "1.5.6.2";
+  };
+  asciidoctor-plantuml = {
+    dependencies = ["asciidoctor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x092ldl8p7svczg4lnrnp0h918acnflh7jz5qwv40ksh1fflqna";
+      type = "gem";
+    };
+    version = "0.0.8";
+  };
+  asset_sync = {
+    dependencies = ["activemodel" "fog-core" "mime-types" "unf"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wjd662yyg72dwwc6cav7gk2bjv9nkhn056f03h8zmyank451hdf";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  ast = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  atomic = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kh9rvhjn4dndbfsk3yjq7alds6s2j70rc4k8wdwdyibab8a8gq9";
+      type = "gem";
+    };
+    version = "1.1.99";
+  };
+  attr_encrypted = {
+    dependencies = ["encryptor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ncv2az1zlj33bsllr6q1qdvbw42gv91lxq0ryclbv8l8xh841jg";
+      type = "gem";
+    };
+    version = "3.1.0";
+  };
+  attr_required = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pawa2i7gw9ppj6fq6y288da1ncjpzsmc6kx7z63mjjvypa5q3dc";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  awesome_print = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14arh1ixfsd6j5md0agyzvksm5svfkvchb90fp32nn7y3avcmc2h";
+      type = "gem";
+    };
+    version = "1.8.0";
+  };
+  aws-sdk = {
+    dependencies = ["aws-sdk-resources"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03r754cqa0jayf1nxpcmp1anaypxwpcjyjaq5cz7i04l9jdxvsnn";
+      type = "gem";
+    };
+    version = "2.9.32";
+  };
+  aws-sdk-core = {
+    dependencies = ["aws-sigv4" "jmespath"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pq09wwb74y4m5adk4hi4zlz05q6sxjxij6g71v6nkd0z83hi34x";
+      type = "gem";
+    };
+    version = "2.9.32";
+  };
+  aws-sdk-resources = {
+    dependencies = ["aws-sdk-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15m56k12x9gzkcyhwrab1qhi3wqla0qmv84dkqcjwp44d7c2xjyi";
+      type = "gem";
+    };
+    version = "2.9.32";
+  };
+  aws-sigv4 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0cnrfxbaxn86qrxhfidg10f89ka1hddihakdhcvnri0dljaw7dsz";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  axiom-types = {
+    dependencies = ["descendants_tracker" "ice_nine" "thread_safe"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10q3k04pll041mkgy0m5fn2b1lazm6ly1drdbcczl5p57lzi3zy1";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  babosa = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05rgxg4pz4bc4xk34w5grv0yp1j94wf571w84lf3xgqcbs42ip2f";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  base32 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0b7y8sy6j9v1lvfzd4va88k5vg9yh0xcjzzn3llcw7yxqlcrnbjk";
+      type = "gem";
+    };
+    version = "0.3.2";
+  };
+  batch-loader = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nvmwzn8q6dkp2n8wz47z7gldj3yrj7h6syy0cwrkzi19bfvxba2";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  bcrypt = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ysblqxkclmnhrd0kmb5mr8p38mbar633gdsb14b7dhkhgawgzfy";
+      type = "gem";
+    };
+    version = "3.1.12";
+  };
+  bcrypt_pbkdf = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0cj4k13c7qvvck7y25i3xarvyqq8d27vl61jddifkc7llnnap1hv";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  benchmark-ips = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bh681m54qdsdyvpvflj1wpnj3ybspbpjkr4cnlrl4nk4yikli0j";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  better_errors = {
+    dependencies = ["coderay" "erubis" "rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11csk41yhijqvp0dkky0cjl8kn6blw4jhr8b6v4islfvvayddcxc";
+      type = "gem";
+    };
+    version = "2.1.1";
+  };
+  bindata = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kxy917xyxckifmnawff65j7g6yb3wh2s45npjq9lqjbi1p86lsr";
+      type = "gem";
+    };
+    version = "2.4.3";
+  };
+  binding_of_caller = {
+    dependencies = ["debug_inspector"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15jg6dkaq2nzcd602d7ppqbdxw3aji961942w93crs6qw4n6h9yk";
+      type = "gem";
+    };
+    version = "0.7.2";
+  };
+  bootsnap = {
+    dependencies = ["msgpack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0g6r784lmjfhwi046w82phsk244byq9wkj1q3lddwxg9z559bmhy";
+      type = "gem";
+    };
+    version = "1.3.2";
+  };
+  bootstrap_form = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sw88vi5sb48xzgwclic38jdgmcbvah2qfi3rijrlmi1wai4j1fw";
+      type = "gem";
+    };
+    version = "2.7.0";
+  };
+  brakeman = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "161l4ln7x1vnqrcvbvglznf46f0lvq305vq211xaxp4fv4wwv89v";
+      type = "gem";
+    };
+    version = "4.2.1";
+  };
+  browser = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sdx0ny34i6vqxdsc7sy9g0nafdbrw8kvvb5xh9m18x1bzpqk92f";
+      type = "gem";
+    };
+    version = "2.5.3";
+  };
+  builder = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qibi5s67lpdv1wgcj66wcymcr04q6j4mzws6a479n0mlrmh5wr1";
+      type = "gem";
+    };
+    version = "3.2.3";
+  };
+  bullet = {
+    dependencies = ["activesupport" "uniform_notifier"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pdq3ckmwxnwrdm2x89zfj68h0yhiln35y8wps2nkvam4kpivyr5";
+      type = "gem";
+    };
+    version = "5.5.1";
+  };
+  bundler-audit = {
+    dependencies = ["thor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gr7k6m9fda7m66irxzydm8v9xbmlryjj65cagwm1zyi5f317srb";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  byebug = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kbfcn65rgdhi72n8x9l393b89rvi5z542459k7d1ggchpb0idb0";
+      type = "gem";
+    };
+    version = "9.0.6";
+  };
+  capybara = {
+    dependencies = ["addressable" "mini_mime" "nokogiri" "rack" "rack-test" "xpath"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bahhwrd1rpfhci1x57yz0df9plziipljbw3p4k6mlash4wq6w92";
+      type = "gem";
+    };
+    version = "2.15.1";
+  };
+  capybara-screenshot = {
+    dependencies = ["capybara" "launchy"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xy79lf3rwn3602r4hqm9s8a03bhlf6hzwdi6345dzrkmhwwj2ij";
+      type = "gem";
+    };
+    version = "1.0.14";
+  };
+  carrierwave = {
+    dependencies = ["activemodel" "activesupport" "mime-types"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1k9kla5ncygm97vn33lsrs7ch5zy4qqhhvc8m3khm986yaqh75qs";
+      type = "gem";
+    };
+    version = "1.2.3";
+  };
+  cause = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0digirxqlwdg79mkbn70yc7i9i1qnclm2wjbrc47kqv6236bpj00";
+      type = "gem";
+    };
+    version = "0.1";
+  };
+  charlock_holmes = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nf1l31n10yaark2rrg5qzyzcx9w80681449s3j09qmnipsl8rl5";
+      type = "gem";
+    };
+    version = "0.7.6";
+  };
+  childprocess = {
+    dependencies = ["ffi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a61922kmvcxyj5l70fycapr87gz1dzzlkfpq85rfqk5vdh3d28p";
+      type = "gem";
+    };
+    version = "0.9.0";
+  };
+  chronic = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hrdkn4g8x7dlzxwb1rfgr8kw3bp4ywg5l4y4i9c2g5cwv62yvvn";
+      type = "gem";
+    };
+    version = "0.10.2";
+  };
+  chronic_duration = {
+    dependencies = ["numerizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1k7sx3xqbrn6s4pishh2pgr4kw6fmw63h00lh503l66k8x0qvigs";
+      type = "gem";
+    };
+    version = "0.10.6";
+  };
+  chunky_png = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vf0axgrm95bs3y0x5gdb76xawfh210yxplj7jbwr6z7n88i1axn";
+      type = "gem";
+    };
+    version = "1.3.5";
+  };
+  citrus = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0l7nhk3gkm1hdchkzzhg2f70m47pc0afxfpl6mkiibc9qcpl3hjf";
+      type = "gem";
+    };
+    version = "3.0.2";
+  };
+  coderay = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  coercible = {
+    dependencies = ["descendants_tracker"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p5azydlsz0nkxmcq0i1gzmcfq02lgxc4as7wmf47j1c6ljav0ah";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  commonmarker = {
+    dependencies = ["ruby-enum"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pmjm87p0hxnknp33cxyvkgbr1swfp9gcznssmalm9z8kwyancb9";
+      type = "gem";
+    };
+    version = "0.17.13";
+  };
+  concord = {
+    dependencies = ["adamantium" "equalizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b6cdn0fg4n9gzbdr7zyf4jq40y6h0c0g9cra7wk9hhmsylk91bg";
+      type = "gem";
+    };
+    version = "0.1.5";
+  };
+  concurrent-ruby = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "183lszf5gx84kcpb779v6a2y0mx9sssy8dgppng1z9a505nj1qcf";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  concurrent-ruby-ext = {
+    dependencies = ["concurrent-ruby"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "119l554zi3720d3rk670ldcqhsgmfii28a9z307v4mwdjckdm4gp";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  connection_pool = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lflx29mlznf1hn0nihkgllzbj8xp5qasn8j7h838465pi399k68";
+      type = "gem";
+    };
+    version = "2.2.2";
+  };
+  crack = {
+    dependencies = ["safe_yaml"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0abb0fvgw00akyik1zxnq7yv391va148151qxdghnzngv66bl62k";
+      type = "gem";
+    };
+    version = "0.4.3";
+  };
+  crass = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bpxzy6gjw9ggjynlxschbfsgmx8lv3zw1azkjvnb8b9i895dqfi";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  creole = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00rcscz16idp6dx0dk5yi5i0fz593i3r6anbn5bg2q07v3i025wm";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  css_parser = {
+    dependencies = ["addressable"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jlr17cn044yaq4l3d9p42g3bghnamwsprq9c39xn6pxjrn5k1hy";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  daemons = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lxqq6dgb8xhliywar2lvkwqy2ssraf9dk4b501pb4ixc2mvxbp2";
+      type = "gem";
+    };
+    version = "1.2.6";
+  };
+  database_cleaner = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fx6zmqznklmkbjl6f713jyl11d4g9q220rcl86m2jp82r8kfwjj";
+      type = "gem";
+    };
+    version = "1.5.3";
+  };
+  debug_inspector = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "109761g00dbrw5q0dfnbqg8blfm699z4jj70l4zrgf9mzn7ii50m";
+      type = "gem";
+    };
+    version = "0.0.2";
+  };
+  debugger-ruby_core_source = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lp5dmm8a8dpwymv6r1y6yr24wxsj0gvgb2b8i7qq9rcv414snwd";
+      type = "gem";
+    };
+    version = "1.3.8";
+  };
+  deckar01-task_list = {
+    dependencies = ["html-pipeline"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w6qsk712ic6vx9ydmix2ys95zwpkvdx3a9xxi8bdqlpgh1ipm9j";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  declarative = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0642xvwzzbgi3kp1bg467wma4g3xqrrn0sk369hjam7w579gnv5j";
+      type = "gem";
+    };
+    version = "0.0.10";
+  };
+  declarative-option = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1g4ibxq566f1frnhdymzi9hxxcm4g2gw4n21mpjk2mhwym4q6l0p";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  default_value_for = {
+    dependencies = ["activerecord"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "014482mxjrc227fxv6vff6ccjr9dr0ydz52flxslsa7biq542k73";
+      type = "gem";
+    };
+    version = "3.0.2";
+  };
+  descendants_tracker = {
+    dependencies = ["thread_safe"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15q8g3fcqyb41qixn6cky0k3p86291y7xsh1jfd851dvrza1vi79";
+      type = "gem";
+    };
+    version = "0.0.4";
+  };
+  device_detector = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zbsjj1bgwmsiqiw6x5fzbzp25xc10c02s37ggl2635ha0qzn05q";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  devise = {
+    dependencies = ["bcrypt" "orm_adapter" "railties" "responders" "warden"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xmxfhym0yxwb0zwmmzhdiykbpyqqm3id02g7rf3vcgbc1lqvdnj";
+      type = "gem";
+    };
+    version = "4.4.3";
+  };
+  devise-two-factor = {
+    dependencies = ["activesupport" "attr_encrypted" "devise" "railties" "rotp"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pkldws5lga4mlv4xmcrfb0yivl6qad0l8qyb2hdb50adv6ny4gs";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  diff-lcs = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
+      type = "gem";
+    };
+    version = "1.3";
+  };
+  diffy = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1azibizfv91sjbzhjqj1pg2xcv8z9b8a7z6kb3wpl4hpj5hil5kj";
+      type = "gem";
+    };
+    version = "3.1.0";
+  };
+  docile = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
+      type = "gem";
+    };
+    version = "1.1.5";
+  };
+  domain_name = {
+    dependencies = ["unf"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0abdlwb64ns7ssmiqhdwgl27ly40x2l27l8hs8hn0z4kb3zd2x3v";
+      type = "gem";
+    };
+    version = "0.5.20180417";
+  };
+  doorkeeper = {
+    dependencies = ["railties"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "022r03i830b2lvmr0xzlj6ivlvc1zr64hy4a4bsy3flv94da77rz";
+      type = "gem";
+    };
+    version = "4.3.2";
+  };
+  doorkeeper-openid_connect = {
+    dependencies = ["doorkeeper" "json-jwt"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1wgrz0xcply5vl6d1m62blqwcbn4v0b27bswyws2y9wbyglz6f95";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  ed25519 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f5kr8za7hvla38fc0n9jiv55iq62k5bzclsa5kdb14l3r4w6qnw";
+      type = "gem";
+    };
+    version = "1.2.4";
+  };
+  elasticsearch = {
+    dependencies = ["elasticsearch-api" "elasticsearch-transport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fik4nrxyi28zy1xwi4rygn0pf1sm1gskcrvbsnmqfrsdd6l4ga4";
+      type = "gem";
+    };
+    version = "5.0.3";
+  };
+  elasticsearch-api = {
+    dependencies = ["multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0aal128hq59l5kscl2ag2cv24g1sp5ysdb4jxkqmj0b1l9rv16mw";
+      type = "gem";
+    };
+    version = "5.0.3";
+  };
+  elasticsearch-model = {
+    dependencies = ["activesupport" "elasticsearch" "hashie"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10kbsdxd192g8x60fhaxs4gqpgwag68d53flcw8rwvdm0i8smyzf";
+      type = "gem";
+    };
+    version = "0.1.9";
+  };
+  elasticsearch-rails = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "081hm2dc3l6kky027wm3s8k6lmiygg0hnrggnidchbl94nlalw2z";
+      type = "gem";
+    };
+    version = "0.1.9";
+  };
+  elasticsearch-transport = {
+    dependencies = ["faraday" "multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1a7fak70ajdqw1ahd2gmgijka52pjjfr3chaakkxa5fk3rwwna26";
+      type = "gem";
+    };
+    version = "5.0.3";
+  };
+  email_reply_trimmer = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vijywhy1acsq4187ss6w8a7ksswaf1d5np3wbj962b6rqif5vcz";
+      type = "gem";
+    };
+    version = "0.1.6";
+  };
+  email_spec = {
+    dependencies = ["htmlentities" "launchy" "mail"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yadaif80cf2ry0nvhir1s70xmm22xzncq6vfvvffdd8h02ridv0";
+      type = "gem";
+    };
+    version = "2.2.0";
+  };
+  encryptor = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s8rvfl0vn8w7k1sgkc234060jh468s3zd45xa64p1jdmfa3zwmb";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  equalizer = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
+      type = "gem";
+    };
+    version = "0.0.11";
+  };
+  erubis = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
+      type = "gem";
+    };
+    version = "2.7.0";
+  };
+  escape_utils = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "088r5c2mz2vy2jbbx1xjbi8msnzg631ggli29nhik2spbcp1z6vh";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
+  et-orbi = {
+    dependencies = ["tzinfo"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1apn9gzgbgs7z6p6l3rv66vrfwyfh68p2rxkybh10vx82fp6g0wi";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  eventmachine = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wh9aqb0skz80fhfn66lbpr4f86ya2z5rx6gm5xlfhd05bj1ch4r";
+      type = "gem";
+    };
+    version = "1.2.7";
+  };
+  excon = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15l9w0938c19nxmrp09n75qpmm64k12xj69h47yvxzcxcpbgnkb2";
+      type = "gem";
+    };
+    version = "0.62.0";
+  };
+  execjs = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0grlxwiccbnflxs30r3h7g23xnps5knav1jyqkk3anvm8363ifjw";
+      type = "gem";
+    };
+    version = "2.6.0";
+  };
+  expression_parser = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1938z3wmmdabqxlh5d5c56xfg1jc6z15p7zjyhvk7364zwydnmib";
+      type = "gem";
+    };
+    version = "0.9.0";
+  };
+  factory_bot = {
+    dependencies = ["activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r975ba6y0mcy3aya099gpnjn5gf1h6fbw8f3smmjay5zvin3nwx";
+      type = "gem";
+    };
+    version = "4.8.2";
+  };
+  factory_bot_rails = {
+    dependencies = ["factory_bot" "railties"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0cdbp12ih2w77l331frv8gv6bv9dinn1663dy1jn0gb9ss1hwvs2";
+      type = "gem";
+    };
+    version = "4.8.2";
+  };
+  faraday = {
+    dependencies = ["multipart-post"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "157c4cmb5g1b3ny6k9qf9z57rfijl54fcq3hnqqf6g31g1m096b2";
+      type = "gem";
+    };
+    version = "0.12.2";
+  };
+  faraday_middleware = {
+    dependencies = ["faraday"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p7icfl28nvl8qqdsngryz1snqic9l8x6bk0dxd7ygn230y0k41d";
+      type = "gem";
+    };
+    version = "0.12.2";
+  };
+  faraday_middleware-aws-signers-v4 = {
+    dependencies = ["aws-sdk-resources" "faraday"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y88xcbq8k2ijhsqdava5493p26k49agvnzca6vkl3qwfv3ambhp";
+      type = "gem";
+    };
+    version = "0.1.7";
+  };
+  faraday_middleware-multi_json = {
+    dependencies = ["faraday_middleware" "multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0651sxhzbq9xfq3hbpmrp0nbybxnm9ja3m97k386m4bqgamlvz1q";
+      type = "gem";
+    };
+    version = "0.0.6";
+  };
+  fast_blank = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "16s1ilyvwzmkcgmklbrn0c2pch5n02vf921njx0bld4crgdr6z56";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  fast_gettext = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s42dsy3rh9h37d16pwhswf2q9cx25v5fn3q881b5iz6fvdjixv3";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  ffaker = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rlfvf2iakphs3krxy1hiywr2jzmrhvhig8n8fw6rcivpz9v52ry";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  ffi = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q";
+      type = "gem";
+    };
+    version = "1.9.25";
+  };
+  flipper = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pdj9y3k6padiicfraxw9ibx9fm8yi2ihh608736lq5nnbf3k6gw";
+      type = "gem";
+    };
+    version = "0.13.0";
+  };
+  flipper-active_record = {
+    dependencies = ["activerecord" "flipper"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rgm4h5h6xcbf17z47sw8ancaxva8x4hwlxmyqpm0vzj1pnc47c1";
+      type = "gem";
+    };
+    version = "0.13.0";
+  };
+  flipper-active_support_cache_store = {
+    dependencies = ["activesupport" "flipper"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zpikmfhadb7l1ny6xbhk5d4840im6yq0wvfsnlw718spxi4ccgk";
+      type = "gem";
+    };
+    version = "0.13.0";
+  };
+  flowdock = {
+    dependencies = ["httparty" "multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04nrvg4gzgabf5mnnhccl8bwrkvn3y4pm7a1dqzqhpvfr4m5pafg";
+      type = "gem";
+    };
+    version = "0.7.1";
+  };
+  fog-aliyun = {
+    dependencies = ["fog-core" "fog-json" "ipaddress" "xml-simple"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x66xyrw4ahyr6f9masiqmz5q6h8scv46y59crnfp8dj7r52hw8m";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  fog-aws = {
+    dependencies = ["fog-core" "fog-json" "fog-xml" "ipaddress"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00skbbgvhqzq6gpgzmw0957n0wf1y3vjgrdyq3sib0ghpyfgmig3";
+      type = "gem";
+    };
+    version = "2.0.1";
+  };
+  fog-core = {
+    dependencies = ["builder" "excon" "formatador"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02449kh2x3zj9xxszm02vy8zpbsrykvjrg5gj3kqcy2yizy2bhp3";
+      type = "gem";
+    };
+    version = "1.45.0";
+  };
+  fog-google = {
+    dependencies = ["fog-core" "fog-json" "fog-xml" "google-api-client"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0azs1i061ig0x1cljdy68hjskzj8d25xkq8nqf3z7qya5lmfn1z2";
+      type = "gem";
+    };
+    version = "1.7.1";
+  };
+  fog-json = {
+    dependencies = ["fog-core" "multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0advkkdjajkym77r3c0bg2rlahl2akj0vl4p5r273k2qmi16n00r";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  fog-local = {
+    dependencies = ["fog-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q1hyga02l9civ0b9gvfdmscvwv2jr4dq87q2g3qxh2974x213mn";
+      type = "gem";
+    };
+    version = "0.3.1";
+  };
+  fog-openstack = {
+    dependencies = ["fog-core" "fog-json" "ipaddress"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ii0q22bdv170f7b007k9jlph40rn7fnzd84vaxhf4zhjhaijmys";
+      type = "gem";
+    };
+    version = "0.1.21";
+  };
+  fog-rackspace = {
+    dependencies = ["fog-core" "fog-json" "fog-xml" "ipaddress"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y2bli061g37l9p4w0ljqbmg830rp2qz6sf8b0ck4cnx68j7m32a";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  fog-xml = {
+    dependencies = ["fog-core" "nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "043lwdw2wsi6d55ifk0w3izi5l1d1h0alwyr3fixic7b94kc812n";
+      type = "gem";
+    };
+    version = "0.1.3";
+  };
+  font-awesome-rails = {
+    dependencies = ["railties"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qc07vj7qyllrj7lr7wl89l5ir0gj104rc7sds2jynzmrqsamnlw";
+      type = "gem";
+    };
+    version = "4.7.0.1";
+  };
+  foreman = {
+    dependencies = ["thor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06mq39lpmc17bxzlwhad9d8i0lcnbb08xr18smh2x79mm631wsw0";
+      type = "gem";
+    };
+    version = "0.84.0";
+  };
+  formatador = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0";
+      type = "gem";
+    };
+    version = "0.2.5";
+  };
+  fuubar = {
+    dependencies = ["rspec-core" "ruby-progressbar"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jlv2wisgnim29h47shvqhipbz1wgndfdr7i6y5wcfag0z2660lv";
+      type = "gem";
+    };
+    version = "2.2.0";
+  };
+  gemojione = {
+    dependencies = ["json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ayk8r147k1s38nj18pwk76npx1p7jhi86silk800nj913pjvrhj";
+      type = "gem";
+    };
+    version = "3.3.0";
+  };
+  get_process_mem = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "025f7v6bpbgsa2nr0hzv2riggj8qmzbwcyxfgjidpmwh5grh7j29";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  gettext = {
+    dependencies = ["locale" "text"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0764vj7gacn0aypm2bf6m46dzjzwzrjlmbyx6qwwwzbmi94r40wr";
+      type = "gem";
+    };
+    version = "3.2.9";
+  };
+  gettext_i18n_rails = {
+    dependencies = ["fast_gettext"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vs918a03mqvx9aczaqdg9d2q9s3c6swqavzn82qgq5i822czrcm";
+      type = "gem";
+    };
+    version = "1.8.0";
+  };
+  gettext_i18n_rails_js = {
+    dependencies = ["gettext" "gettext_i18n_rails" "po_to_json" "rails"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11yn5cf92wsmlj5c1065mg6swf8gq9l6g9ahikvvyf9npvjay42x";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  gitaly-proto = {
+    dependencies = ["google-protobuf" "grpc"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19nyx75xnb3lsap6rr3p1avqsw1dcrm8d3ggmmihd58a9s762fki";
+      type = "gem";
+    };
+    version = "0.118.1";
+  };
+  github-linguist = {
+    dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kgashbqpypv329m63b85ri1dx0gppwd0832hvwh124lk5b19drk";
+      type = "gem";
+    };
+    version = "5.3.3";
+  };
+  github-markup = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17g6g18gdjg63k75sfwiskjzl9i0hfcnrkcpb4fwrnb20v3jgswp";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  gitlab-flowdock-git-hook = {
+    dependencies = ["flowdock" "gitlab-grit" "multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s3a10cdbh4xy732b92zcsm5zyc1lhi5v29d76j8mwbqmj11a2p8";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  gitlab-gollum-lib = {
+    dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15h6a7lsfkm967d5dhjlbcm2lnl1l9akzvaq92qlxq40r5apw0kn";
+      type = "gem";
+    };
+    version = "4.2.7.5";
+  };
+  gitlab-grit = {
+    dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xgs3l81ghlc5nm75n0pz7b2cj3hpscfq5iy27c483nnjn2v5mc4";
+      type = "gem";
+    };
+    version = "2.8.2";
+  };
+  gitlab-license = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q26cgp3ln3b36n3sc69r6hxafkxjwdr3m0d7jlch5j7vyib9bih";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  gitlab-markup = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1v6w3z7smmkqnhphb4ghgpqg61vimflqzpszybji0li99f2k1jb6";
+      type = "gem";
+    };
+    version = "1.6.4";
+  };
+  gitlab-sidekiq-fetcher = {
+    dependencies = ["sidekiq"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dvrp4iapwfaakc3qgf7mw05blxzfywpjfr7bhswwflih0pm67l7";
+      type = "gem";
+    };
+    version = "0.3.0";
+  };
+  gitlab-styles = {
+    dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ywizn3191mjl7ibxlfajaxm5vkywwl4i9q2xh6miq37nk2q98dx";
+      type = "gem";
+    };
+    version = "2.4.1";
+  };
+  gitlab_omniauth-ldap = {
+    dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cpjadx852vw1gv5cm1qiqq6mclglzqajw7q572zncw4q3ji2fkv";
+      type = "gem";
+    };
+    version = "2.0.4";
+  };
+  globalid = {
+    dependencies = ["activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02smrgdi11kziqi9zhnsy9i6yr2fnxrqlv3lllsvdjki3cd4is38";
+      type = "gem";
+    };
+    version = "0.4.1";
+  };
+  gollum-grit_adapter = {
+    dependencies = ["gitlab-grit"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fcibm63v1afc0fj5rki0mm51m7nndil4cjcjjvkh3yigfn4nr4b";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  gon = {
+    dependencies = ["actionpack" "multi_json" "request_store"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0q9nvnw98mbb40h7mlzn1zk40r2l29yybhinmiqhrq8a6adsv806";
+      type = "gem";
+    };
+    version = "6.2.0";
+  };
+  google-api-client = {
+    dependencies = ["addressable" "googleauth" "httpclient" "mime-types" "representable" "retriable"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05h2lca9b334ayabgs3h0mzc2wg3csvkqv1lv3iirpgf90ypbk1k";
+      type = "gem";
+    };
+    version = "0.23.4";
+  };
+  google-protobuf = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s8ijd9wdrkqwsb6nasrsv7f9i5im2nyax7f7jlb5y9vh8nl98qi";
+      type = "gem";
+    };
+    version = "3.5.1";
+  };
+  googleapis-common-protos-types = {
+    dependencies = ["google-protobuf"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yf10s7w8wpa49hc86z7z2fkn9yz7j2njz0n8xmqb24ji090z4ck";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  googleauth = {
+    dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08z4zfj9cwry13y8c2w5p4xylyslxxjq4wahd95bk1ddl5pknd4f";
+      type = "gem";
+    };
+    version = "0.6.2";
+  };
+  gpgme = {
+    dependencies = ["mini_portile2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fclgx3pg3sihk9xn3amcf8db0q749dsqkycayn1c8x134zml3gb";
+      type = "gem";
+    };
+    version = "2.0.13";
+  };
+  grape = {
+    dependencies = ["activesupport" "builder" "mustermann-grape" "rack" "rack-accept" "virtus"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04bam0iq9sad1df361317zz4knwci905yig502khl8gm1lp1168c";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  grape-entity = {
+    dependencies = ["activesupport" "multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1w78wylkhdkc0s6n6d20hggbb3pl3ladzzd5lx6ack2iswybx7b9";
+      type = "gem";
+    };
+    version = "0.7.1";
+  };
+  grape-path-helpers = {
+    dependencies = ["activesupport" "grape" "rake"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13h5575xfc144wsr48sp3qngpwvh4ikz4r3m55j8jmdr6sa16rbw";
+      type = "gem";
+    };
+    version = "1.0.6";
+  };
+  grape_logging = {
+    dependencies = ["grape"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lg2vhk0dlnyqs2rz8wilfm039q5mbsp5nvf51asir48a1rf9yza";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  graphiql-rails = {
+    dependencies = ["railties" "sprockets-rails"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10q5zipwgjgaan9lfqakdkm5ry8afgkq79bkimgksn6jyyvpz6w8";
+      type = "gem";
+    };
+    version = "1.4.10";
+  };
+  graphql = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10bnl8yjyg5x6h787cfkpd5gphl5z5jblj8fc9lbmgk27n2knssl";
+      type = "gem";
+    };
+    version = "1.8.1";
+  };
+  grpc = {
+    dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1is4czi3i7y6zyxzyrpsma1z91axmc0jz2ngr6ckixqd3629npkz";
+      type = "gem";
+    };
+    version = "1.11.0";
+  };
+  gssapi = {
+    dependencies = ["ffi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j93nsf9j57p7x4aafalvjg8hia2mmqv3aky7fmw2ck5yci343ix";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  haml = {
+    dependencies = ["temple" "tilt"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q0a9fvqh8kn6wm97fcks6qzbjd400bv8bx748w8v87m7p4klhac";
+      type = "gem";
+    };
+    version = "5.0.4";
+  };
+  haml_lint = {
+    dependencies = ["haml" "rainbow" "rake" "rubocop" "sysexits"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04illnjl9hsg7wqf8x5s108m5is9aj52g80c6nrgsksyp4vh9ynn";
+      type = "gem";
+    };
+    version = "0.26.0";
+  };
+  hamlit = {
+    dependencies = ["temple" "thor" "tilt"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hk338vkzmwszxdh0q02iw88rbr3bj3fd7fzn4psm8wy80zcgl9i";
+      type = "gem";
+    };
+    version = "2.8.8";
+  };
+  hangouts-chat = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dmnv3723c22683bzys8walkl6wi74xzawxjbhwqzjdbwk3bdgmx";
+      type = "gem";
+    };
+    version = "0.0.5";
+  };
+  hashdiff = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1n6hj7k7b9hazac0j48ypbak2nqi5wy4nh5cjra6xl3a92r8db0a";
+      type = "gem";
+    };
+    version = "0.3.4";
+  };
+  hashie = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hh5lybf8hm7d7xs4xm8hxvm8xqrs2flc8fnwkrclaj746izw6xb";
+      type = "gem";
+    };
+    version = "3.5.7";
+  };
+  hashie-forbidden_attributes = {
+    dependencies = ["hashie"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1chgg5d2iddja6ww02x34g8avg11fzmzcb8yvnqlykii79zx6vis";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  health_check = {
+    dependencies = ["rails"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mfa180nyzz1j0abfihm5nm3lmzq99362ibcphky6rh5vwhckvm8";
+      type = "gem";
+    };
+    version = "2.6.0";
+  };
+  hipchat = {
+    dependencies = ["httparty" "mimemagic"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hgy5jav479vbzzk53lazhpjj094dcsqw6w1d6zjn52p72bwq60k";
+      type = "gem";
+    };
+    version = "1.5.2";
+  };
+  html-pipeline = {
+    dependencies = ["activesupport" "nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mpj5y13jk1arqkhdk66n49kyglmci980c1l6np7pqgyjllb68ad";
+      type = "gem";
+    };
+    version = "2.8.4";
+  };
+  html2text = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kxdj8pf9pss9xgs8aac0alj5g1fi225yzdhh33lzampkazg1hii";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  htmlentities = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nkklqsn8ir8wizzlakncfv42i32wc0w9hxp00hvdlgjr7376nhj";
+      type = "gem";
+    };
+    version = "4.3.4";
+  };
+  http = {
+    dependencies = ["addressable" "http-cookie" "http-form_data" "http_parser.rb"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kcd9qp8vm1rkyp7gfh8j0dbl3zpi97vz2vbhpbcsdsa7l21a59r";
+      type = "gem";
+    };
+    version = "2.2.2";
+  };
+  http-cookie = {
+    dependencies = ["domain_name"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  http-form_data = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j8dwwbfpf8kc0lcsqcgy29lflszd1x4d7kc0f7227892m7r6y0m";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  "http_parser.rb" = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  httparty = {
+    dependencies = ["json" "multi_xml"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c9gvg6dqw2h3qyaxhrq1pzm6r69zfcmfh038wyhisqsd39g9hr2";
+      type = "gem";
+    };
+    version = "0.13.7";
+  };
+  httpclient = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99";
+      type = "gem";
+    };
+    version = "2.8.3";
+  };
+  i18n = {
+    dependencies = ["concurrent-ruby"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "038qvz7kd3cfxk8bvagqhakx68pfbnmghpdkx7573wbf0maqp9a3";
+      type = "gem";
+    };
+    version = "0.9.5";
+  };
+  icalendar = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xsydpp2xph00awi25axv2mwjd5p2rlgd4qb3kh05lvq795kirxd";
+      type = "gem";
+    };
+    version = "2.4.1";
+  };
+  ice_nine = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
+      type = "gem";
+    };
+    version = "0.11.2";
+  };
+  influxdb = {
+    dependencies = ["cause" "json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vhg5nd88nwvfa76lqcczld916nljswwq6clsixrzi3js8ym9y1w";
+      type = "gem";
+    };
+    version = "0.2.3";
+  };
+  ipaddress = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x86s0s11w202j6ka40jbmywkrx8fhq8xiy8mwvnkhllj57hqr45";
+      type = "gem";
+    };
+    version = "0.8.3";
+  };
+  jira-ruby = {
+    dependencies = ["activesupport" "multipart-post" "oauth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14019mliqwcppj6qp2wdhh5gbvs2yh2idibag13m9a18ag965bhw";
+      type = "gem";
+    };
+    version = "1.4.1";
+  };
+  jmespath = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07w8ipjg59qavijq59hl82zs74jf3jsp7vxl9q3a2d0wpv5akz3y";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  jquery-atwho-rails = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0g8239cddyi48i5n0hq2acg9k7n7jilhby9g36zd19mwqyia16w9";
+      type = "gem";
+    };
+    version = "1.3.2";
+  };
+  js_regex = {
+    dependencies = ["regexp_parser"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lnyd4c7lybhra3l6dai7j83lh3xapqjb340pp0h4bnqjgx52bkf";
+      type = "gem";
+    };
+    version = "2.2.1";
+  };
+  json = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qmj7fypgb9vag723w1a49qihxrcf5shzars106ynw2zk352gbv5";
+      type = "gem";
+    };
+    version = "1.8.6";
+  };
+  json-jwt = {
+    dependencies = ["activesupport" "aes_key_wrap" "bindata"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "065k7vffdki73f4nz89lxi6wxmcw5dlf593831pgvlbralll6x3r";
+      type = "gem";
+    };
+    version = "1.9.4";
+  };
+  json-schema = {
+    dependencies = ["addressable"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11di8qyam6bmqn0fvvvf3crgaqy4sil0d406ymx0jacn3ff98ymz";
+      type = "gem";
+    };
+    version = "2.8.0";
+  };
+  jwt = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "124zz1142bi2if7hl5pcrcamwchv4icyr5kaal9m2q6wqbdl6aw4";
+      type = "gem";
+    };
+    version = "1.5.6";
+  };
+  kaminari = {
+    dependencies = ["activesupport" "kaminari-actionview" "kaminari-activerecord" "kaminari-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0invfvfb252ihsdr65rylkvd1x2wy004jval52v3i8ybb0jhc5hi";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  kaminari-actionview = {
+    dependencies = ["actionview" "kaminari-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0mhhsm6xhmwqc7hfw7xnk1kdbfg468bqs5awcqm5j6j8b9zyjvdi";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  kaminari-activerecord = {
+    dependencies = ["activerecord" "kaminari-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kb5aj6iy1cwcq5548jd3w1ipxicnzmnx2ay1s4hvad2gvrd4g93";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  kaminari-core = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r2n293ad1xr9wgn8cr53nfzwls4w3p1xi4kjfjgl1z0yf05mpwr";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  kgio = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1y6wl3vpp82rdv5g340zjgkmy6fny61wib7xylyg0d09k5f26118";
+      type = "gem";
+    };
+    version = "2.10.0";
+  };
+  knapsack = {
+    dependencies = ["rake"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q2y7mb8ii1ncdrlp46l9v2x909gdnjaid2dg5gcicj39hna36di";
+      type = "gem";
+    };
+    version = "1.16.0";
+  };
+  kubeclient = {
+    dependencies = ["http" "recursive-open-struct" "rest-client"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1czzdp9lfsrah2jkaddkqzmphyvnk096zm1ra6jddh626d8d53r4";
+      type = "gem";
+    };
+    version = "3.1.0";
+  };
+  launchy = {
+    dependencies = ["addressable"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "190lfbiy1vwxhbgn4nl4dcbzxvm049jwc158r2x7kq3g5khjrxa2";
+      type = "gem";
+    };
+    version = "2.4.3";
+  };
+  letter_opener = {
+    dependencies = ["launchy"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pcrdbxvp2x5six8fqn8gf09bn9rd3jga76ds205yph5m8fsda21";
+      type = "gem";
+    };
+    version = "1.4.1";
+  };
+  letter_opener_web = {
+    dependencies = ["actionmailer" "letter_opener" "railties"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "050x5cwqbxj2cydd2pzy9vfhmpgn1w6lfbwjaax1m1vpkn3xg9bv";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  license_finder = {
+    dependencies = ["rubyzip" "thor" "toml" "with_env" "xml-simple"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01rhqm5m3m22gq6q9f1x9fh3x3wrf9khnnsycblj0xg5frdjv77v";
+      type = "gem";
+    };
+    version = "5.4.0";
+  };
+  licensee = {
+    dependencies = ["rugged"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w6d2smhg3kzcx4m2ii06akakypwhiglansk51bpx290hhc8h3pc";
+      type = "gem";
+    };
+    version = "8.9.2";
+  };
+  little-plugger = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
+      type = "gem";
+    };
+    version = "1.1.4";
+  };
+  locale = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1sls9bq4krx0fmnzmlbn64dw23c4d6pz46ynjzrn9k8zyassdd0x";
+      type = "gem";
+    };
+    version = "2.1.2";
+  };
+  logging = {
+    dependencies = ["little-plugger" "multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06j6iaj89h9jhkx1x3hlswqrfnqds8br05xb1qra69dpvbdmjcwn";
+      type = "gem";
+    };
+    version = "2.2.2";
+  };
+  lograge = {
+    dependencies = ["actionpack" "activesupport" "railties" "request_store"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00lcn7s3slfn32di4qwlx2yj5f9r2pcnd0naxrvqqwypcg1z2sdd";
+      type = "gem";
+    };
+    version = "0.10.0";
+  };
+  loofah = {
+    dependencies = ["crass" "nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yjs6wbcj3n06d3xjqpy3qbpx0bfa12h3x2rbpc2k33ldjlkx6zy";
+      type = "gem";
+    };
+    version = "2.2.2";
+  };
+  mail = {
+    dependencies = ["mini_mime"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10dyifazss9mgdzdv08p47p344wmphp5pkh5i73s7c04ra8y6ahz";
+      type = "gem";
+    };
+    version = "2.7.0";
+  };
+  mail_room = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "16b8yjd1if665mwaindwys06nkkcs0jw3dcsqvn6qbp6alfigqaa";
+      type = "gem";
+    };
+    version = "0.9.1";
+  };
+  memoist = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pq8fhqh8w25qcw9v3vzfb0i6jp0k3949ahxc3wrwz2791dpbgbh";
+      type = "gem";
+    };
+    version = "0.16.0";
+  };
+  memoizable = {
+    dependencies = ["thread_safe"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
+  method_source = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xqj21j3vfq4ldia6i2akhn2qd84m0iqcnsl49kfpq3xk6x0dzgn";
+      type = "gem";
+    };
+    version = "0.9.0";
+  };
+  mime-types = {
+    dependencies = ["mime-types-data"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
+      type = "gem";
+    };
+    version = "3.1";
+  };
+  mime-types-data = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
+      type = "gem";
+    };
+    version = "3.2016.0521";
+  };
+  mimemagic = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "101lq4bnjs7ywdcicpw3vbz9amg5gbb4va1626fybd2hawgdx8d9";
+      type = "gem";
+    };
+    version = "0.3.0";
+  };
+  mini_magick = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1djxfs9rxw6q6vr6wb4ndxhp1vj1zbwb55s1kf6mz9bzgmswqg0n";
+      type = "gem";
+    };
+    version = "4.8.0";
+  };
+  mini_mime = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q4pshq387lzv9m39jv32vwb8wrq3wc4jwgl4jk209r4l33v09d3";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  mini_portile2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  minitest = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rxqfakp629mp3vwda7zpgb57lcns5znkskikbfd0kriwv8i1vq8";
+      type = "gem";
+    };
+    version = "5.7.0";
+  };
+  mousetrap-rails = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00n13r5pwrk4vq018128vcfh021dw0fa2bk4pzsv0fslfm8ayp2m";
+      type = "gem";
+    };
+    version = "1.4.6";
+  };
+  msgpack = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09xy1wc4wfbd1jdrzgxwmqjzfdfxbz0cqdszq2gv6rmc3gv1c864";
+      type = "gem";
+    };
+    version = "1.2.4";
+  };
+  multi_json = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
+      type = "gem";
+    };
+    version = "1.13.1";
+  };
+  multi_xml = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lmd4f401mvravi1i1yq7b2qjjli0yq7dfc4p1nj5nwajp7r6hyj";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  multipart-post = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  mustermann = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lycgkmnyy0bf29nnd2zql5a6pcf8sp69g9v4xw0gcfcxgpwp7i1";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  mustermann-grape = {
+    dependencies = ["mustermann"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10xdggddjl8nraq7pbli31lwgrzxzz8gp558i811lsv71fqbmhzr";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  mysql2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qjd97w6a0w9aldsrhb2y6jrc4wnnlbj5j8kcl7pp7vviwa0r5iq";
+      type = "gem";
+    };
+    version = "0.4.10";
+  };
+  net-ldap = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fh4l8zfsrvghanpnjxk944k7yl093qpw4759xs6f1v9kb73ihfq";
+      type = "gem";
+    };
+    version = "0.16.0";
+  };
+  net-ntp = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0z96m7nnb9f634cz4i6p0x89z7g9i9h97cnk5f3x3q5x090kzisv";
+      type = "gem";
+    };
+    version = "2.1.3";
+  };
+  net-ssh = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hj2i8rk5wb6235r5n19in1hkrp1fbz2bf40xmagavb5ahv7205w";
+      type = "gem";
+    };
+    version = "5.0.1";
+  };
+  netrc = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
+      type = "gem";
+    };
+    version = "0.11.0";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
+      type = "gem";
+    };
+    version = "1.8.4";
+  };
+  nokogumbo = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09qc1c7acv9qm48vk2kzvnrq4ij8jrql1cv33nmv2nwmlggy0jyj";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  numerizer = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vrk9jbv4p4dcz0wzr72wrf5kajblhc5l9qf7adbcwi4qvz9xv0h";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  oauth = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zszdg8q1b135z7l7crjj234k4j0m347hywp5kj6zsq7q78pw09y";
+      type = "gem";
+    };
+    version = "0.5.4";
+  };
+  oauth2 = {
+    dependencies = ["faraday" "jwt" "multi_json" "multi_xml" "rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "094hmmfms8vpm6nwglpl7jmlv85nlfzl0kik4fizgx1rg70a6mr5";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  octokit = {
+    dependencies = ["sawyer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ssn5iyax07a22mvmj0y45bfy8ali129bl1qmasp6bcg03bvk298";
+      type = "gem";
+    };
+    version = "4.9.0";
+  };
+  omniauth = {
+    dependencies = ["hashie" "rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1msqr4qq7mfdvl3rg89529isrv595hvjpj2gi0say4b8nwqfggmg";
+      type = "gem";
+    };
+    version = "1.8.1";
+  };
+  omniauth-auth0 = {
+    dependencies = ["omniauth-oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0id5gn14av81kh41cq4q6c9knyvzl7vc4rs3m4pmpd43g2z6jdw2";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  omniauth-authentiq = {
+    dependencies = ["jwt" "omniauth-oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0k7vajxwplsp188xfj4mi9iqbc7f7djqh02by4mphc51hl87kcqi";
+      type = "gem";
+    };
+    version = "0.3.3";
+  };
+  omniauth-azure-oauth2 = {
+    dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ck5616fjik0dw89xvak1mi8ijcv10lsh6n9h4107l5dys2g3jfx";
+      type = "gem";
+    };
+    version = "0.0.9";
+  };
+  omniauth-cas3 = {
+    dependencies = ["addressable" "nokogiri" "omniauth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "191b4jm4djmmy54yxfxj3c889r2wn3g6sfsdj6l1rjy0kw1m2qgx";
+      type = "gem";
+    };
+    version = "1.1.4";
+  };
+  omniauth-facebook = {
+    dependencies = ["omniauth-oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03zjla9i446fk1jkw7arh67c39jfhp5bhkmhvbw8vczxr1jkbbh5";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  omniauth-github = {
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yg7k4p95ybcsii17spqarl8rpfzkq0kb19ab6wl4lc922zgfbqc";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  omniauth-gitlab = {
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19ydk2zd2mz8zi80z3l03pajpm9357sg3lrankrcb3pirkkdb9fp";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  omniauth-google-oauth2 = {
+    dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rvdac08vgrxcblq8w2hqj080v2cwv3cigxdzs11gz4d538zjnym";
+      type = "gem";
+    };
+    version = "0.5.3";
+  };
+  omniauth-kerberos = {
+    dependencies = ["omniauth-multipassword" "timfel-krb5-auth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05xsv76qjxcxzrvabaar2bchv7435y8l2j0wk4zgchh3yv85kiq7";
+      type = "gem";
+    };
+    version = "0.3.0";
+  };
+  omniauth-multipassword = {
+    dependencies = ["omniauth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qykp76hw80lkgb39hyzrv68hkbivc8cv0vbvrnycjh9fwfp1lv8";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
+  omniauth-oauth = {
+    dependencies = ["oauth" "omniauth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1n5vk4by7hkyc09d9blrw2argry5awpw4gbw1l4n2s9b3j4qz037";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  omniauth-oauth2 = {
+    dependencies = ["oauth2" "omniauth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kscjf1y0lnggsl4z3w5bwllqshqjlsl5kmcya5haydajdnzvdjr";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  omniauth-oauth2-generic = {
+    dependencies = ["omniauth-oauth2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1m6vpip3rm1spx1x9y1kjczzailsph1xqgaakqylzq3jqkv18273";
+      type = "gem";
+    };
+    version = "0.2.2";
+  };
+  omniauth-saml = {
+    dependencies = ["omniauth" "ruby-saml"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17lji8i4q9k3yi8lmjwlw8rfpp2sc74jv8d6flgq85lg5brfqq1p";
+      type = "gem";
+    };
+    version = "1.10.0";
+  };
+  omniauth-shibboleth = {
+    dependencies = ["omniauth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04yin7j8xpr8llvank3ivzahqkc6ss5bppc7q6znzdswxmf75fxh";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  omniauth-twitter = {
+    dependencies = ["omniauth-oauth" "rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r5j65hkpgzhvvbs90id3nfsjgsad6ymzggbm7zlaxvnrmvnrk65";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  omniauth_crowd = {
+    dependencies = ["activesupport" "nokogiri" "omniauth"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12g5ck05h6kr9mnp870x8pkxsadg81ca70hg8n3k8xx007lfw2q7";
+      type = "gem";
+    };
+    version = "2.2.3";
+  };
+  org-ruby = {
+    dependencies = ["rubypants"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x69s7aysfiwlcpd9hkvksfyld34d8kxr62adb59vjvh8hxfrjwk";
+      type = "gem";
+    };
+    version = "0.9.12";
+  };
+  orm_adapter = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fg9jpjlzf5y49qs9mlpdrgs5rpcyihq1s4k79nv9js0spjhnpda";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  os = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1llv8w3g2jwggdxr5a5cjkrnbbfnvai3vxacxxc0fy84xmz3hymz";
+      type = "gem";
+    };
+    version = "0.9.6";
+  };
+  parallel = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01hj8v1qnyl5ndrs33g8ld8ibk0rbcqdpkpznr04gkbxd11pqn67";
+      type = "gem";
+    };
+    version = "1.12.1";
+  };
+  parser = {
+    dependencies = ["ast"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1af7aa1c2npi8dkshgm3f8qyacabm94ckrdz7b8vd3f8zzswqzp9";
+      type = "gem";
+    };
+    version = "2.5.1.0";
+  };
+  parslet = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12nrzfwjphjlakb9pmpj70hgjwgzvnr8i1zfzddifgyd44vspl88";
+      type = "gem";
+    };
+    version = "1.8.2";
+  };
+  peek = {
+    dependencies = ["concurrent-ruby" "concurrent-ruby-ext" "railties"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1998vcsli215d6qrn9821gr2qip60xki2p7n2dpn8i1n68hyshcn";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  peek-gc = {
+    dependencies = ["peek"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "094h3mr9q8wzbqsj0girpyjvj4bcxax8m438igp42n75xv0bhwi9";
+      type = "gem";
+    };
+    version = "0.0.2";
+  };
+  peek-mysql2 = {
+    dependencies = ["atomic" "mysql2" "peek"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bb2fzx3dwj7k6sc87jwhjk8vzp8dskv49j141xx15vvkg603j8k";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  peek-pg = {
+    dependencies = ["concurrent-ruby" "concurrent-ruby-ext" "peek" "pg"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17yk8xrh7yh57wg6vi3s8km9qd9f910n94r511mdyqd7aizlfb7c";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  peek-rblineprof = {
+    dependencies = ["peek" "rblineprof"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ywk1gvsnhrkhqq2ibwsg7099kg5m2vs4nmzy0wf65kb0ywl0m9c";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  peek-redis = {
+    dependencies = ["atomic" "peek" "redis"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0v91cni591d9wdrmvgam20gr3504x84mh1l95da4rz5a9436jm33";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  pg = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07dv4ma9xd75xpsnnwwg1yrpwpji7ydy0q1d9dl0yfqbzpidrw32";
+      type = "gem";
+    };
+    version = "0.18.4";
+  };
+  po_to_json = {
+    dependencies = ["json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xvanl437305mry1gd57yvcg7xrfhri91czr32bjr8j2djm8hwba";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  posix-spawn = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pmxmpins57qrbr31bs3bm7gidhaacmrp4md6i962gvpq4gyfcjw";
+      type = "gem";
+    };
+    version = "0.3.13";
+  };
+  powerpack = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fnn3fli5wkzyjl4ryh0k90316shqjfnhydmc7f8lqpi0q21va43";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  premailer = {
+    dependencies = ["addressable" "css_parser" "htmlentities"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10w6f7r6snpkcnv3byxma9b08lyqzcfxkm083scb2dr2ly4xkzyf";
+      type = "gem";
+    };
+    version = "1.10.4";
+  };
+  premailer-rails = {
+    dependencies = ["actionmailer" "premailer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05czxmx6hnykg6g23hy2ww2bf86a69njbi02sv7lrds4w776jhim";
+      type = "gem";
+    };
+    version = "1.9.7";
+  };
+  proc_to_ast = {
+    dependencies = ["coderay" "parser" "unparser"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14c65w48bbzp5lh1cngqd1y25kqvfnq1iy49hlzshl12dsk3z9wj";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  procto = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13imvg1x50rz3r0yyfbhxwv72lbf7q28qx9l9nfbb91h2n9ch58c";
+      type = "gem";
+    };
+    version = "0.0.3";
+  };
+  prometheus-client-mmap = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14ww8c2qy43jw3fzmq54hsljmqmlx9a7zg9sv6ddw48qy118ls10";
+      type = "gem";
+    };
+    version = "0.9.4";
+  };
+  pry = {
+    dependencies = ["coderay" "method_source"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mh312k3y94sj0pi160wpia0ps8f4kmzvm505i6bvwynfdh7v30g";
+      type = "gem";
+    };
+    version = "0.11.3";
+  };
+  pry-byebug = {
+    dependencies = ["byebug" "pry"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0g820bqmlq8vvh78895zgrzgmj3g6n63px7cba11s02lpz56630n";
+      type = "gem";
+    };
+    version = "3.4.3";
+  };
+  pry-rails = {
+    dependencies = ["pry"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0k2d43bwmqbswfra4fkadjjbszwb11pr7qdkma91qrcrk62wqxvy";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  public_suffix = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
+      type = "gem";
+    };
+    version = "3.0.3";
+  };
+  pyu-ruby-sasl = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rcpjiz9lrvyb3rd8k8qni0v4ps08psympffyldmmnrqayyad0sn";
+      type = "gem";
+    };
+    version = "0.0.3.3";
+  };
+  rack = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0in0amn0kwvzmi8h5zg6ijrx5wpsf8h96zrfmnk1kwh2ql4sxs2q";
+      type = "gem";
+    };
+    version = "1.6.10";
+  };
+  rack-accept = {
+    dependencies = ["rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18jdipx17b4ki33cfqvliapd31sbfvs4mv727awynr6v95a7n936";
+      type = "gem";
+    };
+    version = "0.4.5";
+  };
+  rack-attack = {
+    dependencies = ["rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1czx68p70x98y21dkdndsb64lrxf9qrv09wl1dbcxrypcjnpsdl1";
+      type = "gem";
+    };
+    version = "4.4.1";
+  };
+  rack-cors = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1j27vy1bmhbqcyzhxg8d07qassmax769xjalfwcwz6qfiq8cf013";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  rack-oauth2 = {
+    dependencies = ["activesupport" "attr_required" "httpclient" "multi_json" "rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j7fh3fyajpfwg47gyfd8spavn7lmd6dcm468w7lhnhcviy5vmyf";
+      type = "gem";
+    };
+    version = "1.2.3";
+  };
+  rack-protection = {
+    dependencies = ["rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1z5598qipilmnf45428jnxi63ykrgvnyywa5ckpr52zv2vpd8jdp";
+      type = "gem";
+    };
+    version = "2.0.3";
+  };
+  rack-proxy = {
+    dependencies = ["rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bpbcb9ch94ha2q7gdri88ry7ch0z6ian289kah9ayxyqg19j6f4";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  rack-test = {
+    dependencies = ["rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z";
+      type = "gem";
+    };
+    version = "0.6.3";
+  };
+  rails = {
+    dependencies = ["actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15vbdlkmlh470g7msqhmcmhxhi4finv3cjg595x9viafvphnf40l";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  rails-deprecated_sanitizer = {
+    dependencies = ["activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qxymchzdxww8bjsxj05kbf86hsmrjx40r41ksj0xsixr2gmhbbj";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  rails-dom-testing = {
+    dependencies = ["activesupport" "nokogiri" "rails-deprecated_sanitizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wssfqpn00byhvp2372p99mphkcj8qx6pf6646avwr9ifvq0q1x6";
+      type = "gem";
+    };
+    version = "1.0.9";
+  };
+  rails-html-sanitizer = {
+    dependencies = ["loofah"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gv7vr5d9g2xmgpjfq4nxsqr70r9pr042r9ycqqnfvw5cz9c7jwr";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  rails-i18n = {
+    dependencies = ["i18n" "railties"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17a02f2671pw5r2hl2n3isiz6w9wy2dxq8g52srciyl1xcmvsw01";
+      type = "gem";
+    };
+    version = "4.0.9";
+  };
+  railties = {
+    dependencies = ["actionpack" "activesupport" "rake" "thor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0snymfqj2cql0gp51i6a44avcirdridc15yggnxjj9raa9f3229p";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  rainbow = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  raindrops = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0854mial50yhvdv0d2r41xxl47v7z2f4nx49js42hygv7rf1mscz";
+      type = "gem";
+    };
+    version = "0.18.0";
+  };
+  rake = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1idi53jay34ba9j68c3mfr9wwkg3cd9qh0fn9cg42hv72c6q8dyg";
+      type = "gem";
+    };
+    version = "12.3.1";
+  };
+  rb-fsevent = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf";
+      type = "gem";
+    };
+    version = "0.10.2";
+  };
+  rb-inotify = {
+    dependencies = ["ffi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yfsgw5n7pkpyky6a9wkf1g9jafxb0ja7gz0qw0y14fd2jnzfh71";
+      type = "gem";
+    };
+    version = "0.9.10";
+  };
+  rblineprof = {
+    dependencies = ["debugger-ruby_core_source"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m58kdjgncwf0h1qry3qk5h4bg8sj0idykqqijqcrr09mxfd9yc6";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  rbtrace = {
+    dependencies = ["ffi" "msgpack" "trollop"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zj9xwazjp0g0fmhvc918irzcp2wyciwqzr0y199vc7r5qdr4sqv";
+      type = "gem";
+    };
+    version = "0.4.10";
+  };
+  rdoc = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0anv42cqcdc6g4n386mrva7mgav5i0c2ry3yzvzzc6z6hymkmcr7";
+      type = "gem";
+    };
+    version = "6.0.4";
+  };
+  re2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00wf9k1hkv3z3nfkrnfyyfq9ah0l7k14awqys3h2hqz4c21pqd2i";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
+  recaptcha = {
+    dependencies = ["json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pppfgica4629i8gbji6pnh681wjf03m6m1ix2ficpnqg2z7gl9n";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  recursive-open-struct = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wfcyigmf5mwrxy76p0bi4sdb4h9afs8jc73pjav5cnqszljjl3c";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  redcarpet = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h9qz2hik4s9knpmbwrzb3jcp3vc5vygp9ya8lcpl7f1l9khmcd7";
+      type = "gem";
+    };
+    version = "3.4.0";
+  };
+  RedCloth = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m9dv7ya9q93r8x1pg2gi15rxlbck8m178j1fz7r5v6wr1avrrqy";
+      type = "gem";
+    };
+    version = "4.3.2";
+  };
+  redis = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0i415x8gi0c5vsiy6ikvx5js6fhc4x80a5lqv8iidy2iymd20irv";
+      type = "gem";
+    };
+    version = "3.3.5";
+  };
+  redis-actionpack = {
+    dependencies = ["actionpack" "redis-rack" "redis-store"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15k41gz7nygd4yydk2yd25gghya1j7q6zifk4mdrra6bwnwjbm63";
+      type = "gem";
+    };
+    version = "5.0.2";
+  };
+  redis-activesupport = {
+    dependencies = ["activesupport" "redis-store"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rq5dhrzc1l8c7f5gx9r7mvnsk5206dfwih3yv5si5rf42nx2ay5";
+      type = "gem";
+    };
+    version = "5.0.4";
+  };
+  redis-namespace = {
+    dependencies = ["redis"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r7daagrjjribn098dxwbv9zivrbq2rsffbkj2ccxyn9lmjjbgah";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  redis-rack = {
+    dependencies = ["rack" "redis-store"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0px0wv8zripc6lrn3k0k61j6nlxda145q8sz50yvnig17wlk36gb";
+      type = "gem";
+    };
+    version = "2.0.4";
+  };
+  redis-rails = {
+    dependencies = ["redis-actionpack" "redis-activesupport" "redis-store"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hjvkyaw5hgz7v6fgwdk8pb966z44h1gv8jarmb0gwhkqmjnsh40";
+      type = "gem";
+    };
+    version = "5.0.2";
+  };
+  redis-store = {
+    dependencies = ["redis"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00yh8rhv91vxjlqs4ylic99m9npjxmgib2vjj8hgzk1174y6vcmq";
+      type = "gem";
+    };
+    version = "1.4.1";
+  };
+  regexp_parser = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1375q2v74cccjh290d9x28fdircvy18v6h0ww7a8i66qhh1jf2pb";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  representable = {
+    dependencies = ["declarative" "declarative-option" "uber"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qm9rgi1j5a6nv726ka4mmixivlxfsg91h8rpp72wwd4vqbkkm07";
+      type = "gem";
+    };
+    version = "3.0.4";
+  };
+  request_store = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1va9x0b3ww4chcfqlmi8b14db39di1mwa7qrjbh7ma0lhndvs2zv";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  responders = {
+    dependencies = ["actionpack" "railties"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rhdyyvvm26f2l3fgwdp6xasfl2y0whwgy766bhdwz697mf78zfn";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  rest-client = {
+    dependencies = ["http-cookie" "mime-types" "netrc"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hzcs2r7b5bjkf2x2z3n8z6082maz0j8vqjiciwgg3hzb63f958j";
+      type = "gem";
+    };
+    version = "2.0.2";
+  };
+  retriable = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q48hqws2dy1vws9schc0kmina40gy7sn5qsndpsfqdslh65snha";
+      type = "gem";
+    };
+    version = "3.1.2";
+  };
+  rinku = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11cakxzp7qi04d41hbqkh92n52mm4z2ba8sqyhxbmfi4kypmls9y";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  rotp = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1w8d6svhq3y9y952r8cqirxvdx12zlkb7zxjb44bcbidb2sisy4d";
+      type = "gem";
+    };
+    version = "2.1.2";
+  };
+  rouge = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1digsi2s8wyzx8vsqcxasw205lg6s7izx8jypl8rrpjwshmv83ql";
+      type = "gem";
+    };
+    version = "3.3.0";
+  };
+  rqrcode = {
+    dependencies = ["chunky_png"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "188n1mvc7klrlw30bai16sdg4yannmy7cz0sg0nvm6f1kjx5qflb";
+      type = "gem";
+    };
+    version = "0.7.0";
+  };
+  rqrcode-rails3 = {
+    dependencies = ["rqrcode"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1i28rwmj24ssk91chn0g7qsnvn003y3s5a7jsrg3w4l5ckr841bg";
+      type = "gem";
+    };
+    version = "0.1.7";
+  };
+  rspec = {
+    dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0134g96wzxjlig2gxzd240gm2dxfw8izcyi2h6hjmr40syzcyx01";
+      type = "gem";
+    };
+    version = "3.7.0";
+  };
+  rspec-core = {
+    dependencies = ["rspec-support"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zvjbymx3avxm3lf8v4gka3a862vnaxldmwvp6767bpy48nhnvjj";
+      type = "gem";
+    };
+    version = "3.7.1";
+  };
+  rspec-expectations = {
+    dependencies = ["diff-lcs" "rspec-support"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fw06wm8jdj8k7wrb8xmzj0fr1wjyb0ya13x31hidnyblm41hmvy";
+      type = "gem";
+    };
+    version = "3.7.0";
+  };
+  rspec-mocks = {
+    dependencies = ["diff-lcs" "rspec-support"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0b02ya3qhqgmcywqv4570dlhav70r656f7dmvwg89whpkq1z1xr3";
+      type = "gem";
+    };
+    version = "3.7.0";
+  };
+  rspec-parameterized = {
+    dependencies = ["binding_of_caller" "parser" "proc_to_ast" "rspec" "unparser"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0arynbr6cfjhccwc8gy2xf87nybdnncsnmfwknnh8s7d4mj730p0";
+      type = "gem";
+    };
+    version = "0.4.0";
+  };
+  rspec-rails = {
+    dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0cdcnbv5dppwy3b4jdp5a0wd9m07a8wlqwb9yazn8i7k1k2mwgvx";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  rspec-retry = {
+    dependencies = ["rspec-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0izvxab7jvk25kaprk0i72asjyh1ip3cm70bgxlm8lpid35qjar6";
+      type = "gem";
+    };
+    version = "0.4.5";
+  };
+  rspec-set = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06vw8b5w1a58838cw9ssmy3r6f8vrjh54h7dp97rwv831gn5zlyk";
+      type = "gem";
+    };
+    version = "0.1.3";
+  };
+  rspec-support = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nl30xb6jmcl0awhqp6jycl01wdssblifwy921phfml70rd9flj1";
+      type = "gem";
+    };
+    version = "3.7.1";
+  };
+  rspec_junit_formatter = {
+    dependencies = ["builder" "rspec-core"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hphl8iggqh1mpbbv0avf8735x6jgry5wmkqyzgv1zwnimvja1ai";
+      type = "gem";
+    };
+    version = "0.2.3";
+  };
+  rspec_profiling = {
+    dependencies = ["activerecord" "pg" "rails" "sqlite3"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1g7q7gav26bpiprx4dhlvdh4zdrhwiky9jbmsp14gyfiabqdz4sz";
+      type = "gem";
+    };
+    version = "0.0.5";
+  };
+  rubocop = {
+    dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "106y99lq0fg62k3vk1w5wwb4vq16pnh4l61skc82xck627z0h8is";
+      type = "gem";
+    };
+    version = "0.54.0";
+  };
+  rubocop-gitlab-security = {
+    dependencies = ["rubocop"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0v0040kpx46fxz3p7dsdjgvsx89qjhwy17n8vxnqg9a7g1rfvxln";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  rubocop-rspec = {
+    dependencies = ["rubocop"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vk51h9swvgshan8vp8yjz03qv9vn5vs29i9iddhjwcwgzsganla";
+      type = "gem";
+    };
+    version = "1.22.2";
+  };
+  ruby-enum = {
+    dependencies = ["i18n"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h62avini866kxpjzqxlqnajma3yvj0y25l6hn9h2mv5pp6fcrhx";
+      type = "gem";
+    };
+    version = "0.7.2";
+  };
+  ruby-fogbugz = {
+    dependencies = ["crack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jj0gpkycbrivkh2q3429vj6mbgx6axxisg69slj3c4mgvzfgchm";
+      type = "gem";
+    };
+    version = "0.2.1";
+  };
+  ruby-prof = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02z4lh1iv1d8751a1l6r4hfc9mp61gf80g4qc4l6gbync3j3hf2c";
+      type = "gem";
+    };
+    version = "0.17.0";
+  };
+  ruby-progressbar = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1igh1xivf5h5g3y5m9b4i4j2mhz2r43kngh4ww3q1r80ch21nbfk";
+      type = "gem";
+    };
+    version = "1.9.0";
+  };
+  ruby-saml = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0k9d88fa8bp5szivbwq0qi960y3r2kp6jhnkmsp3n2rvwpn936i3";
+      type = "gem";
+    };
+    version = "1.7.2";
+  };
+  ruby_parser = {
+    dependencies = ["sexp_processor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18apbsmmivgc1schfxmkp429aijrwy8psm30dwx5cpmpjf48ir3n";
+      type = "gem";
+    };
+    version = "3.9.0";
+  };
+  rubyntlm = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p6bxsklkbcqni4bcq6jajc2n57g0w5rzn4r49c3lb04wz5xg0dy";
+      type = "gem";
+    };
+    version = "0.6.2";
+  };
+  rubypants = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vpdkrc4c8qhrxph41wqwswl28q5h5h994gy4c1mlrckqzm3hzph";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  rubyzip = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj";
+      type = "gem";
+    };
+    version = "1.2.2";
+  };
+  rufus-scheduler = {
+    dependencies = ["et-orbi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0343xrx4gbld5w2ydh9d2a7pw7lllvrsa691bgjq7p9g44ry1vq8";
+      type = "gem";
+    };
+    version = "3.4.0";
+  };
+  rugged = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1y6k5yrfmhc1v4albbpa3xzl28vk5lric3si8ada28sp9mmk2x72";
+      type = "gem";
+    };
+    version = "0.27.4";
+  };
+  safe_yaml = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  sanitize = {
+    dependencies = ["crass" "nokogiri" "nokogumbo"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j4j2a2mkk1a70vbx959pvx0gvr1zb9snjwvsppwj28bp0p0b2bv";
+      type = "gem";
+    };
+    version = "4.6.6";
+  };
+  sass = {
+    dependencies = ["sass-listen"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10401m2xlv6vaxfwzy4xxmk51ddcnkvwi918cw3jkki0qqdl7d8v";
+      type = "gem";
+    };
+    version = "3.5.5";
+  };
+  sass-listen = {
+    dependencies = ["rb-fsevent" "rb-inotify"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  sass-rails = {
+    dependencies = ["railties" "sass" "sprockets" "sprockets-rails" "tilt"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0iji20hb8crncz14piss1b29bfb6l89sz3ai5fny3iw39vnxkdcb";
+      type = "gem";
+    };
+    version = "5.0.6";
+  };
+  sawyer = {
+    dependencies = ["addressable" "faraday"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sv1463r7bqzvx4drqdmd36m7rrv6sf1v3c6vswpnq3k6vdw2dvd";
+      type = "gem";
+    };
+    version = "0.8.1";
+  };
+  scss_lint = {
+    dependencies = ["rake" "sass"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01bfkrjn1i0hfg1ifwn1rs7vqwdbdw158krwr5fm6iasd9zgl10g";
+      type = "gem";
+    };
+    version = "0.56.0";
+  };
+  seed-fu = {
+    dependencies = ["activerecord" "activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x6gclryl0hds3zms095d2iyafcvm2kfrm7362vrkxws7r2775pi";
+      type = "gem";
+    };
+    version = "2.3.7";
+  };
+  select2-rails = {
+    dependencies = ["thor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ni2k74n73y3gv56gs37gkjlh912szjf6k9j483wz41m3xvlz7fj";
+      type = "gem";
+    };
+    version = "3.5.9.3";
+  };
+  selenium-webdriver = {
+    dependencies = ["childprocess" "rubyzip"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07bl3wjkf254r3ljfl4qdazz5aw60s6nqjwrbbgq754j9b7226kz";
+      type = "gem";
+    };
+    version = "3.12.0";
+  };
+  sentry-raven = {
+    dependencies = ["faraday"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yf2gysjw6sy1xcp2jw35z9cp83pwx33lq0qyvaqbs969j4993r4";
+      type = "gem";
+    };
+    version = "2.7.2";
+  };
+  settingslogic = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ria5zcrk1nf0b9yia15mdpzw0dqr6wjpbj8dsdbbps81lfsj9ar";
+      type = "gem";
+    };
+    version = "2.0.9";
+  };
+  sexp_processor = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c6kp2qxq550hz7gsxqi37irxn3vynkz7ibgy9hfwqymf6y1jdik";
+      type = "gem";
+    };
+    version = "4.9.0";
+  };
+  sham_rack = {
+    dependencies = ["rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zs6hpgg87x5jrykjxgfp2i7m5aja53s5kamdhxam16wki1hid3i";
+      type = "gem";
+    };
+    version = "1.3.6";
+  };
+  shoulda-matchers = {
+    dependencies = ["activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zvv94pqk5b5my3w1shdz7h34xf2ldhg5k4qfdpbwi2iy0j9zw2a";
+      type = "gem";
+    };
+    version = "3.1.2";
+  };
+  sidekiq = {
+    dependencies = ["connection_pool" "rack-protection" "redis"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s57vl2hwfaga73yiscak2rs7byg1q0z44wa9si9vl92qcmbik2j";
+      type = "gem";
+    };
+    version = "5.2.1";
+  };
+  sidekiq-cron = {
+    dependencies = ["rufus-scheduler" "sidekiq"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04mq83rzvq4wbc4h0rn00sawgv039j8s2p0wnlqb4sgf55gc0dzj";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  signet = {
+    dependencies = ["addressable" "faraday" "jwt" "multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0js81lxqirdza8gf2f6avh11fny49ygmxfi1qx7jp8l9wrhznbkv";
+      type = "gem";
+    };
+    version = "0.8.1";
+  };
+  simple_po_parser = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08wkp4gcrd89k5yari9j94if9ffkj3rka4llcwrhdgsi3l15p5f3";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  simplecov = {
+    dependencies = ["docile" "json" "simplecov-html"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r9fnsnsqj432cmrpafryn8nif3x0qg9mdnvrcf0wr01prkdlnww";
+      type = "gem";
+    };
+    version = "0.14.1";
+  };
+  simplecov-html = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qni8g0xxglkx25w54qcfbi4wjkpvmb28cb7rj5zk3iqynjcdrqf";
+      type = "gem";
+    };
+    version = "0.10.0";
+  };
+  slack-notifier = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xavibxh00gy62mm79l6id9l2fldjmdqifk8alqfqy5z38ffwah6";
+      type = "gem";
+    };
+    version = "1.5.1";
+  };
+  spring = {
+    dependencies = ["activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "168yz9c1fv21wc5i8q7n43b9nk33ivg3ws1fn6x0afgryz3ssx75";
+      type = "gem";
+    };
+    version = "2.0.2";
+  };
+  spring-commands-rspec = {
+    dependencies = ["spring"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0b0svpq3md1pjz5drpa5pxwg8nk48wrshq8lckim4x3nli7ya0k2";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  sprockets = {
+    dependencies = ["concurrent-ruby" "rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  sprockets-rails = {
+    dependencies = ["actionpack" "activesupport" "sprockets"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ab42pm8p5zxpv3sfraq45b9lj39cz9mrpdirm30vywzrwwkm5p1";
+      type = "gem";
+    };
+    version = "3.2.1";
+  };
+  sqlite3 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01ifzp8nwzqppda419c9wcvr8n82ysmisrs0hph9pdmv1lpa4f5i";
+      type = "gem";
+    };
+    version = "1.3.13";
+  };
+  sshkey = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0g02lh50jd5z4l9bp7xirnfn3n1dh9lr06dv3xh0kr3yhsny059h";
+      type = "gem";
+    };
+    version = "1.9.0";
+  };
+  stackprof = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c88j2d6ipjw5s3hgdgfww37gysgrkicawagj33hv3knijjc9ski";
+      type = "gem";
+    };
+    version = "0.2.10";
+  };
+  state_machines = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00mi16hg3rhkxz4y58s173cbnjlba41y9bfcim90p4ja6yfj9ri3";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  state_machines-activemodel = {
+    dependencies = ["activemodel" "state_machines"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0chhm5hs1y83dq8haff10m66r3yrm7jab35r9xg6adn6qd8ynv2l";
+      type = "gem";
+    };
+    version = "0.5.1";
+  };
+  state_machines-activerecord = {
+    dependencies = ["activerecord" "state_machines-activemodel"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00h07gd4kb22ahgv61r8zca9hqxaw44fnk2sc28j00c1nmwsw6r3";
+      type = "gem";
+    };
+    version = "0.5.1";
+  };
+  stringex = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c5dfrjzkskzfsdvwsviq4111rwwpbk9022nxwdidz014mky5vi1";
+      type = "gem";
+    };
+    version = "2.8.4";
+  };
+  sys-filesystem = {
+    dependencies = ["ffi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "092wj7936i5inzafi09wqh5c8dbak588q21k652dsrdjf5qi10zq";
+      type = "gem";
+    };
+    version = "1.1.6";
+  };
+  sysexits = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qjng6pllznmprzx8vb0zg0c86hdrkyjs615q41s9fjpmv2430jr";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  temple = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00nxf610nzi4n1i2lkby43nrnarvl89fcl6lg19406msr0k3ycmq";
+      type = "gem";
+    };
+    version = "0.8.0";
+  };
+  test-prof = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08nvn3c1mzgcjgk9lr3py0zjd8fjjrm3ncn9rpqkfbx429mgw2l3";
+      type = "gem";
+    };
+    version = "0.2.5";
+  };
+  test_after_commit = {
+    dependencies = ["activerecord"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s8pz00xq28lsa1rfczm83yqwk8wcb5dqw2imlj8gldnsdapcyc2";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  text = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x6kkmsr49y3rnrin91rv8mpc3dhrf3ql08kbccw8yffq61brfrg";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  thin = {
+    dependencies = ["daemons" "eventmachine" "rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nagbf9pwy1vg09k6j4xqhbjjzrg5dwzvkn4ffvlj76fsn6vv61f";
+      type = "gem";
+    };
+    version = "1.7.2";
+  };
+  thor = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01n5dv9kql60m6a00zc0r66jvaxx98qhdny3klyj0p3w34pad2ns";
+      type = "gem";
+    };
+    version = "0.19.4";
+  };
+  thread_safe = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  tilt = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0020mrgdf11q23hm1ddd6fv691l51vi10af00f137ilcdb2ycfra";
+      type = "gem";
+    };
+    version = "2.0.8";
+  };
+  timecop = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vwbkwqyxhavzvr1820hqwz43ylnfcf6w4x6sag0nghi44sr9kmx";
+      type = "gem";
+    };
+    version = "0.8.1";
+  };
+  timfel-krb5-auth = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "105vajc0jkqgcx1wbp0ad262sdry4l1irk7jpaawv8vzfjfqqf5b";
+      type = "gem";
+    };
+    version = "0.8.3";
+  };
+  toml = {
+    dependencies = ["parslet"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xj460rkyqvg74xc8kivmbvgc46c6mm7r8mbjs5m2gq8khf8sbki";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  toml-rb = {
+    dependencies = ["citrus"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pz6z1mc7rnv4chkbx3mdn4q1lpp0j596dq57kbq39jv0wn0wi4d";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  trollop = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rzx9rkacpq58dsvbbzs4cpybls1v1h36xskkfs5q2askpdr00wq";
+      type = "gem";
+    };
+    version = "2.1.3";
+  };
+  truncato = {
+    dependencies = ["htmlentities" "nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x4fhfi4p7ah9sshfhbk9j145s1ailbyj0dxnvqirs9kk10x2d1b";
+      type = "gem";
+    };
+    version = "0.7.10";
+  };
+  tzinfo = {
+    dependencies = ["thread_safe"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z";
+      type = "gem";
+    };
+    version = "1.2.5";
+  };
+  u2f = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lsm1hvwcaa9sq13ab1l1zjk0fgcy951ay11v2acx0h6q1iv21vr";
+      type = "gem";
+    };
+    version = "0.2.1";
+  };
+  uber = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p1mm7mngg40x05z52md3mbamkng0zpajbzqjjwmsyw0zw3v9vjv";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  uglifier = {
+    dependencies = ["execjs" "json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0mzs64z3m1b98rh6ssxpqfz9sc87f6ml6906b0m57vydzfgrh1cz";
+      type = "gem";
+    };
+    version = "2.7.2";
+  };
+  unf = {
+    dependencies = ["unf_ext"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9";
+      type = "gem";
+    };
+    version = "0.1.4";
+  };
+  unf_ext = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06p1i6qhy34bpb8q8ms88y6f2kz86azwm098yvcc0nyqk9y729j1";
+      type = "gem";
+    };
+    version = "0.0.7.5";
+  };
+  unicode-display_width = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x31fgv1acywbb50prp7y4fr677c2d9gsl6wxmfcrlxbwz7nxn5n";
+      type = "gem";
+    };
+    version = "1.3.2";
+  };
+  unicorn = {
+    dependencies = ["kgio" "raindrops"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rcvg9381yw3wrnpny5c01mvm35caycshvfbg96wagjhscw6l72v";
+      type = "gem";
+    };
+    version = "5.1.0";
+  };
+  unicorn-worker-killer = {
+    dependencies = ["get_process_mem" "unicorn"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rrdxpwdsapx47axjin8ymxb4f685qlpx8a26bql4ay1559c3gva";
+      type = "gem";
+    };
+    version = "0.4.4";
+  };
+  uniform_notifier = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jha0l7x602g5rvah960xl9r0f3q25gslj39i0x1vai8i5z6zr1l";
+      type = "gem";
+    };
+    version = "1.10.0";
+  };
+  unparser = {
+    dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0k2asbk9k5kzq8jidy3frqcmn58i9cvaizn8f6g5xlx1pn70bx1w";
+      type = "gem";
+    };
+    version = "0.2.7";
+  };
+  validates_hostname = {
+    dependencies = ["activerecord" "activesupport"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04p1l0v98j4ffvaks1ig9mygx5grpbpdgz7haq3mygva9iy8ykja";
+      type = "gem";
+    };
+    version = "1.0.6";
+  };
+  version_sorter = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1smi0bf8pgx23014nkpfg29qnmlpgvwmn30q0ca7qrfbha2mjwdr";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  virtus = {
+    dependencies = ["axiom-types" "coercible" "descendants_tracker" "equalizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06iphwi3c4f7y9i2rvhvaizfswqbaflilziz4dxqngrdysgkn1fk";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  vmstat = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vb5mwc71p8rlm30hnll3lb4z70ipl5rmilskpdrq2mxwfilcm5b";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  warden = {
+    dependencies = ["rack"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0va966lhpylcwbqb9n151kkihx30agh0a57mwjwdxyanll4s1q12";
+      type = "gem";
+    };
+    version = "1.2.7";
+  };
+  webmock = {
+    dependencies = ["addressable" "crack" "hashdiff"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04hkcqsmbfnp8g237pisnc834vpgildklicbjbyikqg0bg1rwcy5";
+      type = "gem";
+    };
+    version = "2.3.2";
+  };
+  webpack-rails = {
+    dependencies = ["railties"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fsjxw730bh4k1dfnbjm645fgjyqrh830l1z7brqbsm6306ig1rr";
+      type = "gem";
+    };
+    version = "0.9.11";
+  };
+  wikicloth = {
+    dependencies = ["builder" "expression_parser" "rinku"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jp6c2yzyqbap8jdiw8yz6l08sradky1llhyhmrg934l1b5akj3s";
+      type = "gem";
+    };
+    version = "0.8.1";
+  };
+  with_env = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r5ns064mbb99hf1dyxsk9183hznc5i7mn3bi86zka6dlvqf9csh";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  xml-simple = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xlqplda3fix5pcykzsyzwgnbamb3qrqkgbrhhfz2a2fxhrkvhw8";
+      type = "gem";
+    };
+    version = "1.1.5";
+  };
+  xpath = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ha626m6fh50fpilb9pdnmq9xl586w7c0zyidg895c3iq13rqgyw";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/version-management/gitolite/default.nix b/pkgs/applications/version-management/gitolite/default.nix
index 78b59f59e949..0150c6021da6 100644
--- a/pkgs/applications/version-management/gitolite/default.nix
+++ b/pkgs/applications/version-management/gitolite/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "gitolite-${version}";
-  version = "3.6.7";
+  version = "3.6.10";
 
   src = fetchFromGitHub {
     owner = "sitaramc";
     repo = "gitolite";
-    rev = "9123ae44b14b9df423a7bf1e693e05865ca320ac";
-    sha256 = "0rmyzr66lxh2ildf3h1nh3hh2ndwk21rjdin50r5vhwbdd7jg8vb";
+    rev = "v${version}";
+    sha256 = "0p2697mn6rwm03ndlv7q137zczai82n41aplq1g006ii7f12xy8h";
   };
 
   buildInputs = [ git nettools perl ];
diff --git a/pkgs/applications/version-management/gogs/default.nix b/pkgs/applications/version-management/gogs/default.nix
index 25f7be37e1ee..56e411368961 100644
--- a/pkgs/applications/version-management/gogs/default.nix
+++ b/pkgs/applications/version-management/gogs/default.nix
@@ -7,13 +7,13 @@ with stdenv.lib;
 
 buildGoPackage rec {
   name = "gogs-${version}";
-  version = "0.11.53";
+  version = "0.11.66";
 
   src = fetchFromGitHub {
     owner = "gogs";
     repo = "gogs";
     rev = "v${version}";
-    sha256 = "1icm4bawyic4ivzyspqc6qjv882gil8j923zrbylw3i4ifhlcdhd";
+    sha256 = "1b9ilk4xlsllsj5pzmxwsz4a1zvgd06a8mi9ni9hbvmfl3w8xf28";
   };
 
   patches = [ ./static-root-path.patch ];
diff --git a/pkgs/applications/version-management/guitone/default.nix b/pkgs/applications/version-management/guitone/default.nix
index 88074a0862c1..33d2eb89ad08 100644
--- a/pkgs/applications/version-management/guitone/default.nix
+++ b/pkgs/applications/version-management/guitone/default.nix
@@ -25,8 +25,9 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Qt4 based GUI for monotone";
-    homepage = http://guitone.thomaskeller.biz;
+    homepage = https://guitone.thomaskeller.biz;
     downloadPage = https://code.monotone.ca/p/guitone/;
+    license = stdenv.lib.licenses.gpl3;
     inherit (qt4.meta) platforms;
   };
 }
diff --git a/pkgs/applications/version-management/meld/default.nix b/pkgs/applications/version-management/meld/default.nix
index 3f05bd08f3f4..a37b4b7b05c0 100644
--- a/pkgs/applications/version-management/meld/default.nix
+++ b/pkgs/applications/version-management/meld/default.nix
@@ -11,7 +11,7 @@ in buildPythonApplication rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
+    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
     sha256 = "109px6phfizi2jqrc7d7k7j6nvmanbfp5lykqfrk2sky77sand0r";
   };
 
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index 73cf4d74e182..5464f605cbdb 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -4,7 +4,7 @@
 
 let
   # if you bump version, update pkgs.tortoisehg too or ping maintainer
-  version = "4.7";
+  version = "4.7.2";
   name = "mercurial-${version}";
   inherit (python2Packages) docutils hg-git dulwich python;
 in python2Packages.buildPythonApplication {
@@ -13,7 +13,7 @@ in python2Packages.buildPythonApplication {
 
   src = fetchurl {
     url = "https://mercurial-scm.org/release/${name}.tar.gz";
-    sha256 = "17rl1lyvr3qa5x73xyiwnv09wwiwjd18f01gvispzyvpgx1v3309";
+    sha256 = "1yq9r8s9jzj8hk2yizjk25s4w16yx9b8mbdj6wp8ld7j2r15kw4p";
   };
 
   inherit python; # pass it so that the same version can be used in hg2git
diff --git a/pkgs/applications/version-management/monotone/default.nix b/pkgs/applications/version-management/monotone/default.nix
index 4282f48654e6..0606c58c09d5 100644
--- a/pkgs/applications/version-management/monotone/default.nix
+++ b/pkgs/applications/version-management/monotone/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   patches = [ ./monotone-1.1-Adapt-to-changes-in-pcre-8.42.patch ];
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ boost zlib botan libidn lua pcre sqlite expect 
+  buildInputs = [ boost zlib botan libidn lua pcre sqlite expect
     openssl gmp bzip2 ];
 
   postInstall = ''
@@ -33,9 +33,10 @@ stdenv.mkDerivation rec {
 
   #doCheck = true; # some tests fail (and they take VERY long)
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A free distributed version control system";
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.unix;
+    license = licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/version-management/mr/default.nix b/pkgs/applications/version-management/mr/default.nix
index 16948003a7a1..94979056b933 100644
--- a/pkgs/applications/version-management/mr/default.nix
+++ b/pkgs/applications/version-management/mr/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchgit, perl }:
 
 stdenv.mkDerivation rec {
-  version = "1.20170129";
+  version = "1.20180726";
   name = "mr-${version}";
 
   src = fetchgit {
diff --git a/pkgs/applications/version-management/pijul/default.nix b/pkgs/applications/version-management/pijul/default.nix
index 1a8fe6f5fe5c..7419c52c48b3 100644
--- a/pkgs/applications/version-management/pijul/default.nix
+++ b/pkgs/applications/version-management/pijul/default.nix
@@ -1,24 +1,35 @@
-{ stdenv, fetchurl, rustPlatform, darwin }:
+{ stdenv, fetchurl, rustPlatform, darwin, openssl, libsodium, pkgconfig }:
 
 with rustPlatform;
 
 buildRustPackage rec {
   name = "pijul-${version}";
-  version = "0.8.0";
+  version = "0.10.0";
 
   src = fetchurl {
     url = "https://pijul.org/releases/${name}.tar.gz";
-    sha256 = "00pi03yp2bgnjpsz2hgaapxfw2i4idbjqc88cagpvn4yr1612wqx";
+    sha256 = "1lkipcp83rfsj9yqddvb46dmqdf2ch9njwvjv8f3g91rmfjcngys";
   };
 
-  sourceRoot = "${name}/pijul";
+  cargoPatches = [
+    ./libpijul.patch
+  ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin
+  nativeBuildInputs = [ pkgconfig ];
+
+  postInstall = ''
+    mkdir -p $out/share/{bash-completion/completions,zsh/site-functions,fish/vendor_completions.d}
+    $out/bin/pijul generate-completions --bash > $out/share/bash-completion/completions/pijul
+    $out/bin/pijul generate-completions --zsh > $out/share/zsh/site-functions/_pijul
+    $out/bin/pijul generate-completions --fish > $out/share/fish/vendor_completions.d/pijul.fish
+  '';
+
+  buildInputs = [ openssl libsodium ] ++ stdenv.lib.optionals stdenv.isDarwin
     (with darwin.apple_sdk.frameworks; [ Security ]);
 
   doCheck = false;
 
-  cargoSha256 = "1cnr08qbpia3336l37k1jli20d7kwnrw2gys8s9mg271cb4vdx03";
+  cargoSha256 = "1419mlxa4p53hm5qzfd1yi2k0n1bcv8kaslls1nyx661vknhfamw";
 
   meta = with stdenv.lib; {
     description = "A distributed version control system";
diff --git a/pkgs/applications/version-management/pijul/libpijul.patch b/pkgs/applications/version-management/pijul/libpijul.patch
new file mode 100644
index 000000000000..9e4aa3cdd4b7
--- /dev/null
+++ b/pkgs/applications/version-management/pijul/libpijul.patch
@@ -0,0 +1,61 @@
+--- 2/pijul-0.10.0/Cargo.lock	1970-01-01 01:00:00.000000000 +0100
++++ pijul-0.10.0/Cargo.lock	2018-10-28 10:09:48.557639255 +0000
+@@ -552,7 +552,7 @@
+ 
+ [[package]]
+ name = "libpijul"
+-version = "0.10.0"
++version = "0.10.1"
+ dependencies = [
+  "base64 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
+  "bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -577,9 +577,29 @@
+ 
+ [[package]]
+ name = "libpijul"
+-version = "0.10.0"
++version = "0.10.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-replace = "libpijul 0.10.0"
++dependencies = [
++ "base64 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bincode 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "bs58 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "byteorder 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "chrono 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "flate2 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "ignore 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
++ "openssl 0.10.6 (registry+https://github.com/rust-lang/crates.io-index)",
++ "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
++ "sanakirja 0.8.16 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_derive 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
++ "serde_json 1.0.15 (registry+https://github.com/rust-lang/crates.io-index)",
++ "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
++ "thrussh-keys 0.9.5 (registry+https://github.com/rust-lang/crates.io-index)",
++]
+ 
+ [[package]]
+ name = "line"
+@@ -917,7 +937,7 @@
+  "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+  "ignore 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "isatty 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
+- "libpijul 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "libpijul 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)",
+  "line 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
+  "pager 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
+@@ -1796,7 +1816,7 @@
+ "checksum lazycell 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a6f08839bc70ef4a3fe1d566d5350f519c5912ea86be0df1740a7d247c7fc0ef"
+ "checksum libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)" = "6fd41f331ac7c5b8ac259b8bf82c75c0fb2e469bbf37d2becbba9a6a2221965b"
+ "checksum libflate 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "1a429b86418868c7ea91ee50e9170683f47fd9d94f5375438ec86ec3adb74e8e"
+-"checksum libpijul 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "80fd579ba6762eac3f12c9624d5496edaba5a2f2e8785bcf8310372328e06ebe"
++"checksum libpijul 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "cf6fc1aa0e9402f8283bdeb2507cfb6798d2f2f973da34c3f4b0c96a456b74cd"
+ "checksum line 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ecdd22a3856203276b7854e16213139428e82922530438f36356e5b361ea4a42"
+ "checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
+ "checksum log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "89f010e843f2b1a31dbd316b3b8d443758bc634bed37aabade59c686d644e0a2"
diff --git a/pkgs/applications/version-management/redmine/Gemfile b/pkgs/applications/version-management/redmine/Gemfile
index 744d6bfdd74e..a5c509f81a9a 100644
--- a/pkgs/applications/version-management/redmine/Gemfile
+++ b/pkgs/applications/version-management/redmine/Gemfile
@@ -54,60 +54,26 @@ platforms :mri, :mingw, :x64_mingw do
   end
 end
 
-# Include database gems for the adapters found in the database
-# configuration file
-require 'erb'
-require 'yaml'
-
-# NixOS - manually added to ensure mysql and postgres will always be include
+# Include database gems for the database adapters NixOS supports
 gem "mysql2", "~> 0.4.6", :platforms => [:mri, :mingw, :x64_mingw]
 gem "pg", "~> 0.18.1", :platforms => [:mri, :mingw, :x64_mingw]
 
-database_file = File.join(File.dirname(__FILE__), "config/database.yml")
-if File.exist?(database_file)
-  database_config = YAML::load(ERB.new(IO.read(database_file)).result)
-  adapters = database_config.values.map {|c| c['adapter']}.compact.uniq
-  if adapters.any?
-    adapters.each do |adapter|
-      case adapter
-      when 'mysql2'
-        gem "mysql2", "~> 0.4.6", :platforms => [:mri, :mingw, :x64_mingw]
-      when /postgresql/
-        gem "pg", "~> 0.18.1", :platforms => [:mri, :mingw, :x64_mingw]
-      when /sqlite3/
-        gem "sqlite3", (RUBY_VERSION < "2.0" && RUBY_PLATFORM =~ /mingw/ ? "1.3.12" : "~>1.3.12"),
-                       :platforms => [:mri, :mingw, :x64_mingw]
-      when /sqlserver/
-        gem "tiny_tds", (RUBY_VERSION >= "2.0" ? "~> 1.0.5" : "~> 0.7.0"), :platforms => [:mri, :mingw, :x64_mingw]
-        gem "activerecord-sqlserver-adapter", :platforms => [:mri, :mingw, :x64_mingw]
-      else
-        warn("Unknown database adapter `#{adapter}` found in config/database.yml, use Gemfile.local to load your own database gems")
-      end
-    end
-  else
-    warn("No adapter found in config/database.yml, please configure it first")
-  end
-else
-  warn("Please configure your config/database.yml first")
+group :development do
+  gem "rdoc", "~> 4.3"
+  gem "yard"
 end
 
-# NixOS - manually removed because I couldn't figure out how to get "bundle exec rails server webrick -e production" to ignore these groups
-#group :development do
-#  gem "rdoc", "~> 4.3"
-#  gem "yard"
-#end
-
-#group :test do
-#  gem "minitest"
-#  gem "rails-dom-testing"
-#  gem "mocha"
-#  gem "simplecov", "~> 0.9.1", :require => false
-#  # TODO: remove this after upgrading to Rails 5
-#  gem "test_after_commit", "~> 0.4.2"
-#  # For running UI tests
-#  gem "capybara"
-#  gem "selenium-webdriver", "~> 2.53.4"
-#end
+group :test do
+  gem "minitest"
+  gem "rails-dom-testing"
+  gem "mocha"
+  gem "simplecov", "~> 0.9.1", :require => false
+  # TODO: remove this after upgrading to Rails 5
+  gem "test_after_commit", "~> 0.4.2"
+  # For running UI tests
+  gem "capybara"
+  gem "selenium-webdriver", "~> 2.53.4"
+end
 
 local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local")
 if File.exists?(local_gemfile)
diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock
index 589537c2af75..54eed51cd868 100644
--- a/pkgs/applications/version-management/redmine/Gemfile.lock
+++ b/pkgs/applications/version-management/redmine/Gemfile.lock
@@ -41,12 +41,23 @@ GEM
       public_suffix (>= 2.0.2, < 4.0)
     arel (6.0.4)
     builder (3.2.3)
+    capybara (3.9.0)
+      addressable
+      mini_mime (>= 0.1.3)
+      nokogiri (~> 1.8)
+      rack (>= 1.6.0)
+      rack-test (>= 0.6.3)
+      xpath (~> 3.1)
+    childprocess (0.9.0)
+      ffi (~> 1.0, >= 1.0.11)
     coderay (1.1.2)
     concurrent-ruby (1.0.5)
     crass (1.0.4)
     css_parser (1.6.0)
       addressable
+    docile (1.1.5)
     erubis (2.7.0)
+    ffi (1.9.25)
     globalid (0.4.1)
       activesupport (>= 4.2.0)
     htmlentities (4.3.4)
@@ -59,15 +70,20 @@ GEM
       nokogiri (>= 1.5.9)
     mail (2.6.6)
       mime-types (>= 1.16, < 4)
+    metaclass (0.0.4)
     mime-types (3.2.2)
       mime-types-data (~> 3.2015)
     mime-types-data (3.2018.0812)
     mimemagic (0.3.2)
+    mini_mime (1.0.1)
     mini_portile2 (2.3.0)
     minitest (5.11.3)
+    mocha (1.7.0)
+      metaclass (~> 0.0.1)
+    multi_json (1.13.1)
     mysql2 (0.4.10)
     net-ldap (0.12.1)
-    nokogiri (1.8.4)
+    nokogiri (1.8.5)
       mini_portile2 (~> 2.3.0)
     pg (0.18.4)
     protected_attributes (1.1.4)
@@ -104,10 +120,11 @@ GEM
       rake (>= 0.8.7)
       thor (>= 0.18.1, < 2.0)
     rake (12.3.1)
-    rbpdf (1.19.5)
+    rbpdf (1.19.6)
       htmlentities
       rbpdf-font (~> 1.19.0)
     rbpdf-font (1.19.1)
+    rdoc (4.3.0)
     redcarpet (3.4.0)
     request_store (1.0.5)
     rmagick (2.16.0)
@@ -118,6 +135,16 @@ GEM
       railties (>= 3.0, < 5.1)
       roadie (~> 3.1)
     ruby-openid (2.3.0)
+    rubyzip (1.2.2)
+    selenium-webdriver (2.53.4)
+      childprocess (~> 0.5)
+      rubyzip (~> 1.0)
+      websocket (~> 1.0)
+    simplecov (0.9.2)
+      docile (~> 1.1.0)
+      multi_json (~> 1.0)
+      simplecov-html (~> 0.9.0)
+    simplecov-html (0.9.0)
     sprockets (3.7.2)
       concurrent-ruby (~> 1.0)
       rack (> 1, < 3)
@@ -125,22 +152,31 @@ GEM
       actionpack (>= 4.0)
       activesupport (>= 4.0)
       sprockets (>= 3.0.0)
+    test_after_commit (0.4.2)
+      activerecord (>= 3.2)
     thor (0.20.0)
     thread_safe (0.3.6)
     tzinfo (1.2.5)
       thread_safe (~> 0.1)
+    websocket (1.2.8)
+    xpath (3.1.0)
+      nokogiri (~> 1.8)
+    yard (0.9.16)
 
 PLATFORMS
   ruby
 
 DEPENDENCIES
   actionpack-xml_parser
+  capybara
   coderay (~> 1.1.1)
   i18n (~> 0.7.0)
   jquery-rails (~> 3.1.4)
   mail (~> 2.6.4)
   mime-types (~> 3.0)
   mimemagic
+  minitest
+  mocha
   mysql2 (~> 0.4.6)
   net-ldap (~> 0.12.0)
   nokogiri (~> 1.8.1)
@@ -148,15 +184,21 @@ DEPENDENCIES
   protected_attributes
   rack-openid
   rails (= 4.2.8)
+  rails-dom-testing
   rails-html-sanitizer (>= 1.0.3)
   rbpdf (~> 1.19.3)
+  rdoc (~> 4.3)
   redcarpet (~> 3.4.0)
   request_store (= 1.0.5)
   rmagick (>= 2.14.0)
   roadie (~> 3.2.1)
   roadie-rails (~> 1.1.1)
   ruby-openid (~> 2.3.0)
+  selenium-webdriver (~> 2.53.4)
+  simplecov (~> 0.9.1)
+  test_after_commit (~> 0.4.2)
   tzinfo-data
+  yard
 
 BUNDLED WITH
-   1.16.1
+   1.16.3
diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix
index 3c3fd4da33d4..d07e0f3e4544 100644
--- a/pkgs/applications/version-management/redmine/default.nix
+++ b/pkgs/applications/version-management/redmine/default.nix
@@ -7,6 +7,7 @@ let
 
     inherit ruby;
     gemdir = ./.;
+    groups = [ "ldap" "openid" ];
   };
 in
   stdenv.mkDerivation rec {
@@ -21,15 +22,15 @@ in
 
     buildPhase = ''
       mv config config.dist
+      mv public/themes public/themes.dist
     '';
 
     installPhase = ''
       mkdir -p $out/share
       cp -r . $out/share/redmine
-
-      for i in config files log plugins tmp; do
+      for i in config files log plugins public/plugin_assets public/themes tmp; do
         rm -rf $out/share/redmine/$i
-        ln -fs /run/redmine/$i $out/share/redmine/
+        ln -fs /run/redmine/$i $out/share/redmine/$i
       done
     '';
 
@@ -39,4 +40,4 @@ in
       maintainers = [ maintainers.garbas ];
       license = licenses.gpl2;
     };
-  }
+  }
\ No newline at end of file
diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/applications/version-management/redmine/gemset.nix
index 7423fcdb9fb9..fe56298056b1 100644
--- a/pkgs/applications/version-management/redmine/gemset.nix
+++ b/pkgs/applications/version-management/redmine/gemset.nix
@@ -96,6 +96,24 @@
     };
     version = "3.2.3";
   };
+  capybara = {
+    dependencies = ["addressable" "mini_mime" "nokogiri" "rack" "rack-test" "xpath"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1sz6ick0pn7886jh9fd4571wyplshnpb95pr22ds4hd51zcrnfi4";
+      type = "gem";
+    };
+    version = "3.9.0";
+  };
+  childprocess = {
+    dependencies = ["ffi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a61922kmvcxyj5l70fycapr87gz1dzzlkfpq85rfqk5vdh3d28p";
+      type = "gem";
+    };
+    version = "0.9.0";
+  };
   coderay = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -129,6 +147,14 @@
     };
     version = "1.6.0";
   };
+  docile = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
+      type = "gem";
+    };
+    version = "1.1.5";
+  };
   erubis = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -137,6 +163,14 @@
     };
     version = "2.7.0";
   };
+  ffi = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q";
+      type = "gem";
+    };
+    version = "1.9.25";
+  };
   globalid = {
     dependencies = ["activesupport"];
     source = {
@@ -189,6 +223,14 @@
     };
     version = "2.6.6";
   };
+  metaclass = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hp99y2b1nh0nr8pc398n3f8lakgci6pkrg4bf2b2211j1f6hsc5";
+      type = "gem";
+    };
+    version = "0.0.4";
+  };
   mime-types = {
     dependencies = ["mime-types-data"];
     source = {
@@ -214,6 +256,14 @@
     };
     version = "0.3.2";
   };
+  mini_mime = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q4pshq387lzv9m39jv32vwb8wrq3wc4jwgl4jk209r4l33v09d3";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
   mini_portile2 = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -230,6 +280,23 @@
     };
     version = "5.11.3";
   };
+  mocha = {
+    dependencies = ["metaclass"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13whjmrm4n48rwx7h7a2jwa5grar3m0fxspbm2pm4lyp7hi119c1";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  multi_json = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
+      type = "gem";
+    };
+    version = "1.13.1";
+  };
   mysql2 = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -250,10 +317,10 @@
     dependencies = ["mini_portile2"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
+      sha256 = "0byyxrazkfm29ypcx5q4syrv126nvjnf7z6bqi01sqkv4llsi4qz";
       type = "gem";
     };
-    version = "1.8.4";
+    version = "1.8.5";
   };
   pg = {
     source = {
@@ -363,10 +430,10 @@
     dependencies = ["htmlentities" "rbpdf-font"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "021fda3gcz9pyydxnn40vs1nrkycwslb9ip4q0yg3hlip41k1b49";
+      sha256 = "159vg56bzy09f6zrh9h3rxm2r0vkvsfn9qczqmv1vi5xkd918s0d";
       type = "gem";
     };
-    version = "1.19.5";
+    version = "1.19.6";
   };
   rbpdf-font = {
     source = {
@@ -376,6 +443,14 @@
     };
     version = "1.19.1";
   };
+  rdoc = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13ba2mhqqcsp3k97x3iz9x29xk26rv4561lfzzzibcy41vvj1n4c";
+      type = "gem";
+    };
+    version = "4.3.0";
+  };
   redcarpet = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -426,6 +501,40 @@
     };
     version = "2.3.0";
   };
+  rubyzip = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj";
+      type = "gem";
+    };
+    version = "1.2.2";
+  };
+  selenium-webdriver = {
+    dependencies = ["childprocess" "rubyzip" "websocket"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15qyf7b9fa2nxhhwp551b9fjj82kb3wmy65559yrrcwpdadqvcs4";
+      type = "gem";
+    };
+    version = "2.53.4";
+  };
+  simplecov = {
+    dependencies = ["docile" "multi_json" "simplecov-html"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1a3wy9zlmfwl3f47cibnxyxrgfz16y6fmy0dj1vyidzyys4mvy12";
+      type = "gem";
+    };
+    version = "0.9.2";
+  };
+  simplecov-html = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jv9pmpaxihrcsgcf6mgl3qg7rhf9scl5l2k67d768w9cz63xgvc";
+      type = "gem";
+    };
+    version = "0.9.0";
+  };
   sprockets = {
     dependencies = ["concurrent-ruby" "rack"];
     source = {
@@ -444,6 +553,15 @@
     };
     version = "3.2.1";
   };
+  test_after_commit = {
+    dependencies = ["activerecord"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fzg8qan6f0n0ynr594bld2k0rwwxj99yzhiga2f3pkj9ina1abb";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
   thor = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -469,4 +587,29 @@
     };
     version = "1.2.5";
   };
+  websocket = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0f11rcn4qgffb1rq4kjfwi7di79w8840x9l74pkyif5arp0mb08x";
+      type = "gem";
+    };
+    version = "1.2.8";
+  };
+  xpath = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1y61ijvv04bwga802s8py5xd7fcxci6478wgr9wkd35p45x20jzi";
+      type = "gem";
+    };
+    version = "3.1.0";
+  };
+  yard = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lmmr1839qgbb3zxfa7jf5mzy17yjl1yirwlgzdhws4452gqhn67";
+      type = "gem";
+    };
+    version = "0.9.16";
+  };
 }
\ No newline at end of file
diff --git a/pkgs/applications/version-management/smartgithg/default.nix b/pkgs/applications/version-management/smartgithg/default.nix
index 106b66bcfecb..d6ae37c3f7fa 100644
--- a/pkgs/applications/version-management/smartgithg/default.nix
+++ b/pkgs/applications/version-management/smartgithg/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   name = "smartgithg-${version}";
-  version = "18_1_4";
+  version = "18_1_5";
 
   src = fetchurl {
     url = "https://www.syntevo.com/downloads/smartgit/smartgit-linux-${version}.tar.gz";
-    sha256 = "18gyfcs5g7xq8fqnn1zjzx350jaynrniain0giay8sxych12p4cm";
+    sha256 = "0f2aj3259jvn7n0x6m8sbwliikln9lqffd00jg75dblhxwl8adg3";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix
index 0a61dc38c64a..2a77e1395b46 100644
--- a/pkgs/applications/version-management/subversion/default.nix
+++ b/pkgs/applications/version-management/subversion/default.nix
@@ -121,8 +121,8 @@ in {
   };
 
   subversion_1_10 = common {
-    version = "1.10.2";
-    sha256 = "127dysfc31q4dhbbxaznh9kqixy9jd44kgwji2gdwj6rb2lf6dav";
+    version = "1.10.3";
+    sha256 = "1z6r3n91a4znsh68rl3jisfr7k4faymhbpalmmvsmvsap34al3cz";
     extraBuildInputs = [ lz4 utf8proc ];
   };
 }
diff --git a/pkgs/applications/version-management/tortoisehg/default.nix b/pkgs/applications/version-management/tortoisehg/default.nix
index 5a37857fa479..68ecabe3b9df 100644
--- a/pkgs/applications/version-management/tortoisehg/default.nix
+++ b/pkgs/applications/version-management/tortoisehg/default.nix
@@ -2,11 +2,11 @@
 
 python2Packages.buildPythonApplication rec {
     name = "tortoisehg-${version}";
-    version = "4.6.1";
+    version = "4.7.2";
 
     src = fetchurl {
       url = "https://bitbucket.org/tortoisehg/targz/downloads/${name}.tar.gz";
-      sha256 = "1argpi5h0fv4ilahi52c98xgvsvz27lvqi41hzw1f81mhjgyhqik";
+      sha256 = "0y2q50380gnjzmyvmzh729ljgvq3wkcv6ham3w62mf4fjcvlpnag";
     };
 
     pythonPath = with python2Packages; [ pyqt4 mercurial qscintilla iniparse ];
diff --git a/pkgs/applications/version-management/vcprompt/default.nix b/pkgs/applications/version-management/vcprompt/default.nix
index 4afb1b20e32c..c2bf0a4183c1 100644
--- a/pkgs/applications/version-management/vcprompt/default.nix
+++ b/pkgs/applications/version-management/vcprompt/default.nix
@@ -25,5 +25,6 @@ stdenv.mkDerivation rec {
     homepage    = http://hg.gerg.ca/vcprompt;
     maintainers = with maintainers; [ cstrahan ];
     platforms   = with platforms; linux ++ darwin;
+    license = licenses.gpl2Plus;
   };
 }