gitlab: 8.0.5 -> 8.5.0, service improvements

Updates gitlab to the current stable version and fixes a lot of features that
were broken, at least with the current version and our configuration.

Quite a lot of sweat and tears has gone into testing nearly all features and
reading/patching the Gitlab source as we're about to deploy gitlab for our
whole company.

Things to note:

* The gitlab config is now written as a nix attribute set and will be
converted to JSON. Gitlab uses YAML but JSON is a subset of YAML.
The `extraConfig` opition is also an attribute set that will be merged
with the default config. This way *all* Gitlab options are supported.

* Some paths like uploads and configs are hardcoded in rails (at least
after my study of the Gitlab source). This is why they are linked from
the Gitlab root to /run/gitlab and then linked to the configurable
`statePath`.

* Backup & restore should work out of the box from another Gitlab instance.

* gitlab-git-http-server has been replaced by gitlab-workhorse upstream.
Push & pull over HTTPS works perfectly. Communication to gitlab is done
over unix sockets. An HTTP server is required to proxy requests to
gitlab-workhorse over another unix socket at
`/run/gitlab/gitlab-workhorse.socket`.

* The user & group running gitlab are now configurable. These can even be
changed for live instances.

* The initial email address & password of the root user can be configured.

Fixes #8598.

+2641 -2478
+3
nixos/modules/rename.nix
··· 28 28 (mkRenamedOptionModule [ "services" "subsonic" "host" ] [ "services" "subsonic" "listenAddress" ]) 29 29 (mkRenamedOptionModule [ "jobs" ] [ "systemd" "services" ]) 30 30 31 + (mkRenamedOptionModule [ "services" "gitlab" "stateDir" ] [ "services" "gitlab" "statePath" ]) 32 + (mkRemovedOptionModule [ "services" "gitlab" "satelliteDir" ]) 33 + 31 34 # Old Grub-related options. 32 35 (mkRenamedOptionModule [ "boot" "initrd" "extraKernelModules" ] [ "boot" "initrd" "kernelModules" ]) 33 36 (mkRenamedOptionModule [ "boot" "extraKernelParams" ] [ "boot" "kernelParams" ])
+238 -121
nixos/modules/services/misc/gitlab.nix
··· 21 21 username: ${cfg.databaseUsername} 22 22 encoding: utf8 23 23 ''; 24 + 24 25 gitlabShellYml = '' 25 - user: gitlab 26 - gitlab_url: "http://${cfg.host}:${toString cfg.port}/" 26 + user: ${cfg.user} 27 + gitlab_url: "http://localhost:8080/" 27 28 http_settings: 28 29 self_signed_cert: false 29 - repos_path: "${cfg.stateDir}/repositories" 30 - secret_file: "${cfg.stateDir}/config/gitlab_shell_secret" 31 - log_file: "${cfg.stateDir}/log/gitlab-shell.log" 30 + repos_path: "${cfg.statePath}/repositories" 31 + secret_file: "${cfg.statePath}/config/gitlab_shell_secret" 32 + log_file: "${cfg.statePath}/log/gitlab-shell.log" 32 33 redis: 33 34 bin: ${pkgs.redis}/bin/redis-cli 34 35 host: 127.0.0.1 ··· 37 38 namespace: resque:gitlab 38 39 ''; 39 40 41 + gitlabConfig = { 42 + production = flip recursiveUpdate cfg.extraConfig { 43 + gitlab = { 44 + host = cfg.host; 45 + port = cfg.port; 46 + https = cfg.https; 47 + user = cfg.user; 48 + email_enabled = true; 49 + email_display_name = "GitLab"; 50 + email_reply_to = "noreply@localhost"; 51 + default_theme = 2; 52 + default_projects_features = { 53 + issues = true; 54 + merge_requests = true; 55 + wiki = false; 56 + snippets = false; 57 + builds = true; 58 + }; 59 + }; 60 + artifacts = { 61 + enabled = true; 62 + }; 63 + lfs = { 64 + enabled = true; 65 + }; 66 + gravatar = { 67 + enabled = true; 68 + }; 69 + cron_jobs = { 70 + stuck_ci_builds_worker = { 71 + cron = "0 0 * * *"; 72 + }; 73 + }; 74 + gitlab_ci = { 75 + builds_path = "${cfg.statePath}/builds"; 76 + }; 77 + ldap = { 78 + enabled = false; 79 + }; 80 + omniauth = { 81 + enabled = false; 82 + }; 83 + shared = { 84 + path = "${cfg.statePath}/shared"; 85 + }; 86 + backup = { 87 + path = "${cfg.backupPath}"; 88 + }; 89 + gitlab_shell = { 90 + path = "${pkgs.gitlab-shell}"; 91 + repos_path = "${cfg.statePath}/repositories"; 92 + hooks_path = "${cfg.statePath}/shell/hooks"; 93 + secret_file = "${cfg.statePath}/config/gitlab_shell_secret"; 94 + upload_pack = true; 95 + receive_pack = true; 96 + }; 97 + git = { 98 + bin_path = "git"; 99 + max_size = 20971520; # 20MB 100 + timeout = 10; 101 + }; 102 + extra = {}; 103 + }; 104 + }; 105 + 106 + gitlabEnv = { 107 + HOME = "${cfg.statePath}/home"; 108 + GEM_HOME = gemHome; 109 + BUNDLE_GEMFILE = "${pkgs.gitlab}/share/gitlab/Gemfile"; 110 + UNICORN_PATH = "${cfg.statePath}/"; 111 + GITLAB_PATH = "${pkgs.gitlab}/share/gitlab/"; 112 + GITLAB_STATE_PATH = "${cfg.statePath}"; 113 + GITLAB_UPLOADS_PATH = "${cfg.statePath}/uploads"; 114 + GITLAB_LOG_PATH = "${cfg.statePath}/log"; 115 + GITLAB_SHELL_PATH = "${pkgs.gitlab-shell}"; 116 + GITLAB_SHELL_CONFIG_PATH = "${cfg.statePath}/shell/config.yml"; 117 + GITLAB_SHELL_SECRET_PATH = "${cfg.statePath}/config/gitlab_shell_secret"; 118 + GITLAB_SHELL_HOOKS_PATH = "${cfg.statePath}/shell/hooks"; 119 + RAILS_ENV = "production"; 120 + }; 121 + 40 122 unicornConfig = builtins.readFile ./defaultUnicornConfig.rb; 41 123 42 124 gitlab-runner = pkgs.stdenv.mkDerivation rec { 43 125 name = "gitlab-runner"; 44 - buildInputs = [ pkgs.gitlab pkgs.bundler pkgs.makeWrapper ]; 126 + buildInputs = with pkgs; [ gitlab bundler makeWrapper ]; 45 127 phases = "installPhase fixupPhase"; 46 128 buildPhase = ""; 47 129 installPhase = '' 48 130 mkdir -p $out/bin 49 - makeWrapper ${bundler}/bin/bundle $out/bin/gitlab-runner\ 50 - --set RAKEOPT '"-f ${pkgs.gitlab}/share/gitlab/Rakefile"'\ 51 - --set GEM_HOME '${gemHome}'\ 52 - --set UNICORN_PATH "${cfg.stateDir}/"\ 53 - --set GITLAB_PATH "${pkgs.gitlab}/share/gitlab/"\ 54 - --set GITLAB_APPLICATION_LOG_PATH "${cfg.stateDir}/log/application.log"\ 55 - --set GITLAB_SATELLITES_PATH "${cfg.stateDir}/satellites"\ 56 - --set GITLAB_SHELL_PATH "${pkgs.gitlab-shell}"\ 57 - --set GITLAB_REPOSITORIES_PATH "${cfg.stateDir}/repositories"\ 58 - --set GITLAB_SHELL_HOOKS_PATH "${cfg.stateDir}/shell/hooks"\ 59 - --set BUNDLE_GEMFILE "${pkgs.gitlab}/share/gitlab/Gemfile"\ 60 - --set GITLAB_EMAIL_FROM "${cfg.emailFrom}"\ 61 - --set GITLAB_SHELL_CONFIG_PATH "${cfg.stateDir}/shell/config.yml"\ 62 - --set GITLAB_SHELL_SECRET_PATH "${cfg.stateDir}/config/gitlab_shell_secret"\ 63 - --set GITLAB_HOST "${cfg.host}"\ 64 - --set GITLAB_PORT "${toString cfg.port}"\ 65 - --set GITLAB_BACKUP_PATH "${cfg.backupPath}"\ 66 - --set RAILS_ENV "production" 131 + makeWrapper ${bundler}/bin/bundle $out/bin/gitlab-runner \ 132 + ${concatStrings (mapAttrsToList (name: value: "--set ${name} '\"${value}\"' ") gitlabEnv)} \ 133 + --set GITLAB_CONFIG_PATH '"${cfg.statePath}/config"' \ 134 + --set PATH '"${pkgs.nodejs}/bin:${pkgs.gzip}/bin:${config.services.postgresql.package}/bin:$PATH"' \ 135 + --set RAKEOPT '"-f ${pkgs.gitlab}/share/gitlab/Rakefile"' 67 136 ''; 68 137 }; 69 138 ··· 79 148 ''; 80 149 }; 81 150 82 - satelliteDir = mkOption { 83 - type = types.str; 84 - default = "/var/gitlab/git-satellites"; 85 - description = "Gitlab directory to store checked out git trees requires for operation."; 86 - }; 87 - 88 - stateDir = mkOption { 151 + statePath = mkOption { 89 152 type = types.str; 90 153 default = "/var/gitlab/state"; 91 154 description = "Gitlab state directory, logs are stored here."; ··· 93 156 94 157 backupPath = mkOption { 95 158 type = types.str; 96 - default = cfg.stateDir + "/backup"; 159 + default = cfg.statePath + "/backup"; 97 160 description = "Gitlab path for backups."; 98 161 }; 99 162 ··· 136 199 port = mkOption { 137 200 type = types.int; 138 201 default = 8080; 139 - description = "Gitlab server listening port."; 202 + description = '' 203 + Gitlab server port for copy-paste URLs, e.g. 80 or 443 if you're 204 + service over https. 205 + ''; 206 + }; 207 + 208 + https = mkOption { 209 + type = types.bool; 210 + default = false; 211 + description = "Whether gitlab prints URLs with https as scheme."; 212 + }; 213 + 214 + user = mkOption { 215 + type = types.str; 216 + default = "gitlab"; 217 + description = "User to run gitlab and all related services."; 218 + }; 219 + 220 + group = mkOption { 221 + type = types.str; 222 + default = "gitlab"; 223 + description = "Group to run gitlab and all related services."; 224 + }; 225 + 226 + initialRootEmail = mkOption { 227 + type = types.str; 228 + default = "admin@local.host"; 229 + description = '' 230 + Initial email address of the root account if this is a new install. 231 + ''; 232 + }; 233 + 234 + initialRootPassword = mkOption { 235 + type = types.str; 236 + default = "UseNixOS!"; 237 + description = '' 238 + Initial password of the root account if this is a new install. 239 + ''; 240 + }; 241 + 242 + extraConfig = mkOption { 243 + type = types.attrs; 244 + default = ""; 245 + example = { 246 + gitlab = { 247 + default_projects_features = { 248 + builds = false; 249 + }; 250 + }; 251 + }; 252 + description = '' 253 + Extra options to be merged into config/gitlab.yml as nix 254 + attribute set. 255 + ''; 140 256 }; 141 257 }; 142 258 }; ··· 159 275 services.postfix.enable = mkDefault true; 160 276 161 277 users.extraUsers = [ 162 - { name = "gitlab"; 163 - group = "gitlab"; 164 - home = "${cfg.stateDir}/home"; 278 + { name = cfg.user; 279 + group = cfg.group; 280 + home = "${cfg.statePath}/home"; 165 281 shell = "${pkgs.bash}/bin/bash"; 166 282 uid = config.ids.uids.gitlab; 167 - } ]; 283 + } 284 + ]; 168 285 169 286 users.extraGroups = [ 170 - { name = "gitlab"; 287 + { name = cfg.group; 171 288 gid = config.ids.gids.gitlab; 172 - } ]; 289 + } 290 + ]; 173 291 174 292 systemd.services.gitlab-sidekiq = { 175 293 after = [ "network.target" "redis.service" ]; 176 294 wantedBy = [ "multi-user.target" ]; 177 - environment.HOME = "${cfg.stateDir}/home"; 178 - environment.GEM_HOME = gemHome; 179 - environment.UNICORN_PATH = "${cfg.stateDir}/"; 180 - environment.GITLAB_PATH = "${pkgs.gitlab}/share/gitlab/"; 181 - environment.GITLAB_APPLICATION_LOG_PATH = "${cfg.stateDir}/log/application.log"; 182 - environment.GITLAB_SATELLITES_PATH = "${cfg.stateDir}/satellites"; 183 - environment.GITLAB_SHELL_PATH = "${pkgs.gitlab-shell}"; 184 - environment.GITLAB_REPOSITORIES_PATH = "${cfg.stateDir}/repositories"; 185 - environment.GITLAB_SHELL_HOOKS_PATH = "${cfg.stateDir}/shell/hooks"; 186 - environment.BUNDLE_GEMFILE = "${pkgs.gitlab}/share/gitlab/Gemfile"; 187 - environment.GITLAB_EMAIL_FROM = "${cfg.emailFrom}"; 188 - environment.GITLAB_SHELL_CONFIG_PATH = "${cfg.stateDir}/shell/config.yml"; 189 - environment.GITLAB_SHELL_SECRET_PATH = "${cfg.stateDir}/config/gitlab_shell_secret"; 190 - environment.GITLAB_HOST = "${cfg.host}"; 191 - environment.GITLAB_PORT = "${toString cfg.port}"; 192 - environment.GITLAB_DATABASE_HOST = "${cfg.databaseHost}"; 193 - environment.GITLAB_DATABASE_PASSWORD = "${cfg.databasePassword}"; 194 - environment.RAILS_ENV = "production"; 295 + environment = gitlabEnv; 195 296 path = with pkgs; [ 196 297 config.services.postgresql.package 197 298 gitAndTools.git ··· 201 302 ]; 202 303 serviceConfig = { 203 304 Type = "simple"; 204 - User = "gitlab"; 205 - Group = "gitlab"; 305 + User = cfg.user; 306 + Group = cfg.group; 206 307 TimeoutSec = "300"; 207 308 WorkingDirectory = "${pkgs.gitlab}/share/gitlab"; 208 - ExecStart="${bundler}/bin/bundle exec \"sidekiq -q post_receive -q mailer -q system_hook -q project_web_hook -q gitlab_shell -q common -q default -e production -P ${cfg.stateDir}/tmp/sidekiq.pid\""; 309 + ExecStart="${bundler}/bin/bundle exec \"sidekiq -q post_receive -q mailer -q system_hook -q project_web_hook -q gitlab_shell -q common -q default -e production -P ${cfg.statePath}/tmp/sidekiq.pid\""; 209 310 }; 210 311 }; 211 312 212 - systemd.services.gitlab-git-http-server = { 313 + systemd.services.gitlab-workhorse = { 213 314 after = [ "network.target" "gitlab.service" ]; 214 315 wantedBy = [ "multi-user.target" ]; 215 - environment.HOME = "${cfg.stateDir}/home"; 316 + environment.HOME = gitlabEnv.HOME; 317 + environment.GITLAB_SHELL_CONFIG_PATH = gitlabEnv.GITLAB_SHELL_CONFIG_PATH; 216 318 path = with pkgs; [ 217 319 gitAndTools.git 218 320 openssh 219 321 ]; 322 + preStart = '' 323 + mkdir -p /run/gitlab 324 + chown ${cfg.user}:${cfg.group} /run/gitlab 325 + ''; 220 326 serviceConfig = { 327 + PermissionsStartOnly = true; # preStart must be run as root 221 328 Type = "simple"; 222 - User = "gitlab"; 223 - Group = "gitlab"; 329 + User = cfg.user; 330 + Group = cfg.group; 224 331 TimeoutSec = "300"; 225 - ExecStart = "${pkgs.gitlab-git-http-server}/bin/gitlab-git-http-server -listenUmask 0 -listenNetwork unix -listenAddr ${cfg.stateDir}/tmp/sockets/gitlab-git-http-server.socket -authBackend http://localhost:8080 ${cfg.stateDir}/repositories"; 332 + ExecStart = 333 + "${pkgs.gitlab-workhorse}/bin/gitlab-workhorse " 334 + + "-listenUmask 0 " 335 + + "-listenNetwork unix " 336 + + "-listenAddr /run/gitlab/gitlab-workhorse.socket " 337 + + "-authSocket ${cfg.statePath}/tmp/sockets/gitlab.socket " 338 + + "-documentRoot ${pkgs.gitlab}/share/gitlab/public"; 226 339 }; 227 340 }; 228 341 229 342 systemd.services.gitlab = { 230 343 after = [ "network.target" "postgresql.service" "redis.service" ]; 231 344 wantedBy = [ "multi-user.target" ]; 232 - environment.HOME = "${cfg.stateDir}/home"; 233 - environment.GEM_HOME = gemHome; 234 - environment.UNICORN_PATH = "${cfg.stateDir}/"; 235 - environment.GITLAB_PATH = "${pkgs.gitlab}/share/gitlab/"; 236 - environment.GITLAB_APPLICATION_LOG_PATH = "${cfg.stateDir}/log/application.log"; 237 - environment.GITLAB_SATELLITES_PATH = "${cfg.stateDir}/satellites"; 238 - environment.GITLAB_SHELL_PATH = "${pkgs.gitlab-shell}"; 239 - environment.GITLAB_SHELL_CONFIG_PATH = "${cfg.stateDir}/shell/config.yml"; 240 - environment.GITLAB_SHELL_SECRET_PATH = "${cfg.stateDir}/config/gitlab_shell_secret"; 241 - environment.GITLAB_REPOSITORIES_PATH = "${cfg.stateDir}/repositories"; 242 - environment.GITLAB_SHELL_HOOKS_PATH = "${cfg.stateDir}/shell/hooks"; 243 - environment.BUNDLE_GEMFILE = "${pkgs.gitlab}/share/gitlab/Gemfile"; 244 - environment.GITLAB_EMAIL_FROM = "${cfg.emailFrom}"; 245 - environment.GITLAB_HOST = "${cfg.host}"; 246 - environment.GITLAB_PORT = "${toString cfg.port}"; 247 - environment.GITLAB_DATABASE_HOST = "${cfg.databaseHost}"; 248 - environment.GITLAB_DATABASE_PASSWORD = "${cfg.databasePassword}"; 249 - environment.RAILS_ENV = "production"; 345 + environment = gitlabEnv; 250 346 path = with pkgs; [ 251 347 config.services.postgresql.package 252 348 gitAndTools.git 253 - ruby 254 349 openssh 255 350 nodejs 351 + sudo 256 352 ]; 257 353 preStart = '' 258 - # TODO: use env vars 259 - mkdir -p ${cfg.stateDir} 260 - mkdir -p ${cfg.stateDir}/log 261 - mkdir -p ${cfg.stateDir}/satellites 262 - mkdir -p ${cfg.stateDir}/repositories 263 - mkdir -p ${cfg.stateDir}/shell/hooks 264 - mkdir -p ${cfg.stateDir}/tmp/pids 265 - mkdir -p ${cfg.stateDir}/tmp/sockets 266 - rm -rf ${cfg.stateDir}/config 267 - mkdir -p ${cfg.stateDir}/config 354 + mkdir -p ${cfg.backupPath} 355 + mkdir -p ${cfg.statePath}/builds 356 + mkdir -p ${cfg.statePath}/repositories 357 + mkdir -p ${gitlabConfig.production.shared.path}/artifacts 358 + mkdir -p ${gitlabConfig.production.shared.path}/lfs-objects 359 + mkdir -p ${cfg.statePath}/log 360 + mkdir -p ${cfg.statePath}/shell 361 + mkdir -p ${cfg.statePath}/tmp/pids 362 + mkdir -p ${cfg.statePath}/tmp/sockets 363 + 364 + rm -rf ${cfg.statePath}/config ${cfg.statePath}/shell/hooks 365 + mkdir -p ${cfg.statePath}/config ${cfg.statePath}/shell 366 + 268 367 # TODO: What exactly is gitlab-shell doing with the secret? 269 - tr -dc _A-Z-a-z-0-9 < /dev/urandom | head -c 20 > ${cfg.stateDir}/config/gitlab_shell_secret 270 - mkdir -p ${cfg.stateDir}/home/.ssh 271 - touch ${cfg.stateDir}/home/.ssh/authorized_keys 368 + tr -dc _A-Z-a-z-0-9 < /dev/urandom | head -c 20 > ${cfg.statePath}/config/gitlab_shell_secret 369 + 370 + # The uploads directory is hardcoded somewhere deep in rails. It is 371 + # symlinked in the gitlab package to /run/gitlab/uploads to make it 372 + # configurable 373 + mkdir -p /run/gitlab 374 + mkdir -p ${cfg.statePath}/uploads 375 + ln -sf ${cfg.statePath}/uploads /run/gitlab/uploads 376 + chown -R ${cfg.user}:${cfg.group} /run/gitlab 272 377 273 - cp -rf ${pkgs.gitlab}/share/gitlab/config ${cfg.stateDir}/ 274 - cp ${pkgs.gitlab}/share/gitlab/VERSION ${cfg.stateDir}/VERSION 378 + # Prepare home directory 379 + mkdir -p ${gitlabEnv.HOME}/.ssh 380 + touch ${gitlabEnv.HOME}/.ssh/authorized_keys 381 + chown -R ${cfg.user}:${cfg.group} ${gitlabEnv.HOME}/ 382 + chmod -R u+rwX,go-rwx+X ${gitlabEnv.HOME}/ 383 + 384 + cp -rf ${pkgs.gitlab}/share/gitlab/config.dist/* ${cfg.statePath}/config 385 + ln -sf ${cfg.statePath}/config /run/gitlab/config 386 + cp ${pkgs.gitlab}/share/gitlab/VERSION ${cfg.statePath}/VERSION 387 + 388 + # JSON is a subset of YAML 389 + ln -fs ${pkgs.writeText "gitlab.yml" (builtins.toJSON gitlabConfig)} ${cfg.statePath}/config/gitlab.yml 390 + ln -fs ${pkgs.writeText "database.yml" databaseYml} ${cfg.statePath}/config/database.yml 391 + ln -fs ${pkgs.writeText "unicorn.rb" unicornConfig} ${cfg.statePath}/config/unicorn.rb 275 392 276 - ln -fs ${pkgs.writeText "database.yml" databaseYml} ${cfg.stateDir}/config/database.yml 277 - ln -fs ${pkgs.writeText "unicorn.rb" unicornConfig} ${cfg.stateDir}/config/unicorn.rb 393 + chown -R ${cfg.user}:${cfg.group} ${cfg.statePath}/ 394 + chmod -R ug+rwX,o-rwx+X ${cfg.statePath}/ 278 395 279 - chown -R gitlab:gitlab ${cfg.stateDir}/ 280 - chmod -R 755 ${cfg.stateDir}/ 396 + # Install the shell required to push repositories 397 + ln -fs ${pkgs.writeText "config.yml" gitlabShellYml} "$GITLAB_SHELL_CONFIG_PATH" 398 + ln -fs ${pkgs.gitlab-shell}/hooks "$GITLAB_SHELL_HOOKS_PATH" 399 + ${pkgs.gitlab-shell}/bin/install 281 400 282 401 if [ "${cfg.databaseHost}" = "127.0.0.1" ]; then 283 - if ! test -e "${cfg.stateDir}/db-created"; then 284 - psql postgres -c "CREATE ROLE gitlab WITH LOGIN NOCREATEDB NOCREATEROLE NOCREATEUSER ENCRYPTED PASSWORD '${cfg.databasePassword}'" 402 + if ! test -e "${cfg.statePath}/db-created"; then 403 + psql postgres -c "CREATE ROLE gitlab WITH LOGIN CREATEDB NOCREATEROLE NOCREATEUSER ENCRYPTED PASSWORD '${cfg.databasePassword}'" 285 404 ${config.services.postgresql.package}/bin/createdb --owner gitlab gitlab || true 286 - touch "${cfg.stateDir}/db-created" 405 + touch "${cfg.statePath}/db-created" 287 406 288 - # force=yes disables the manual-interaction yes/no prompt 289 - # which breaks without an stdin. 290 - force=yes ${bundler}/bin/bundle exec rake -f ${pkgs.gitlab}/share/gitlab/Rakefile gitlab:setup RAILS_ENV=production 407 + # The gitlab:setup task is horribly broken somehow, these two tasks will do the same for setting up the initial database 408 + ${gitlab-runner}/bin/gitlab-runner exec rake db:migrate RAILS_ENV=production 409 + ${gitlab-runner}/bin/gitlab-runner exec rake db:seed_fu RAILS_ENV=production \ 410 + GITLAB_ROOT_PASSWORD="${cfg.initialRootPassword}" GITLAB_ROOT_EMAIL="${cfg.initialRootEmail}"; 291 411 fi 292 412 fi 293 413 294 - ${bundler}/bin/bundle exec rake -f ${pkgs.gitlab}/share/gitlab/Rakefile db:migrate RAILS_ENV=production 295 - # Install the shell required to push repositories 296 - ln -fs ${pkgs.writeText "config.yml" gitlabShellYml} ${cfg.stateDir}/shell/config.yml 297 - export GITLAB_SHELL_CONFIG_PATH=""${cfg.stateDir}/shell/config.yml 298 - ${pkgs.gitlab-shell}/bin/install 414 + # Always do the db migrations just to be sure the database is up-to-date 415 + ${gitlab-runner}/bin/gitlab-runner exec rake db:migrate RAILS_ENV=production 299 416 300 - # Change permissions in the last step because some of the 301 - # intermediary scripts like to create directories as root. 302 - chown -R gitlab:gitlab ${cfg.stateDir}/ 303 - chmod -R 755 ${cfg.stateDir}/ 417 + # Change permissions in the last step because some of the 418 + # intermediary scripts like to create directories as root. 419 + chown -R ${cfg.user}:${cfg.group} ${cfg.statePath} 420 + chmod -R u+rwX,go-rwx+X ${cfg.statePath} 304 421 ''; 305 422 306 423 serviceConfig = { 307 424 PermissionsStartOnly = true; # preStart must be run as root 308 425 Type = "simple"; 309 - User = "gitlab"; 310 - Group = "gitlab"; 426 + User = cfg.user; 427 + Group = cfg.group; 311 428 TimeoutSec = "300"; 312 429 WorkingDirectory = "${pkgs.gitlab}/share/gitlab"; 313 - ExecStart="${bundler}/bin/bundle exec \"unicorn -c ${cfg.stateDir}/config/unicorn.rb -E production\""; 430 + ExecStart="${bundler}/bin/bundle exec \"unicorn -c ${cfg.statePath}/config/unicorn.rb -E production\""; 314 431 }; 315 432 316 433 };
-23
pkgs/applications/version-management/gitlab-git-http-server/default.nix
··· 1 - { stdenv, fetchgit, git, go }: 2 - 3 - stdenv.mkDerivation rec { 4 - version = "0.2.14"; 5 - name = "gitlab-git-http-server-${version}"; 6 - 7 - srcs = fetchgit { 8 - url = "https://gitlab.com/gitlab-org/gitlab-git-http-server.git"; 9 - rev = "7c63f08f7051348e56b903fc0bbefcfed398fc1c"; 10 - sha256 = "557d63a90c61371598b971a06bc056993610b58c2ef5762d9ef145ec2fdada78"; 11 - }; 12 - 13 - buildInputs = [ git go ]; 14 - 15 - buildPhase = '' 16 - make PREFIX=$out 17 - ''; 18 - 19 - installPhase = '' 20 - mkdir -p $out/bin 21 - make install PREFIX=$out 22 - ''; 23 - }
+9 -6
pkgs/applications/version-management/gitlab-shell/default.nix
··· 1 - { stdenv, ruby, bundler, fetchgit }: 1 + { stdenv, ruby, bundler, fetchFromGitLab }: 2 2 3 3 stdenv.mkDerivation rec { 4 - version = "2.1.0"; 4 + version = "2.6.10"; 5 5 name = "gitlab-shell-${version}"; 6 6 7 - srcs = fetchgit { 8 - url = "https://gitlab.com/gitlab-org/gitlab-shell.git"; 9 - rev = "ebbb9d80811c23d49a7d1b75d7a7d2b8ffe7437b"; 10 - sha256 = "fe69ab85d75a3871b4afa11ebc17f43008d135bbdbd6c581f6bebee2a4a3c75d"; 7 + srcs = fetchFromGitLab { 8 + owner = "gitlab-org"; 9 + repo = "gitlab-shell"; 10 + rev = "v${version}"; 11 + sha256 = "1f1ma49xpkan2iksnw9amzjdw6i0bxnzdbsk0329m7if4987vcqd"; 11 12 }; 12 13 13 14 buildInputs = [ 14 15 ruby bundler 15 16 ]; 17 + 18 + patches = [ ./remove-hardcoded-locations.patch ]; 16 19 17 20 installPhase = '' 18 21 mkdir -p $out/
+13
pkgs/applications/version-management/gitlab-shell/remove-hardcoded-locations.patch
··· 1 + diff --git a/lib/gitlab_projects.rb b/lib/gitlab_projects.rb 2 + index c1d175a..7f7fd2f 100644 3 + --- a/lib/gitlab_projects.rb 4 + +++ b/lib/gitlab_projects.rb 5 + @@ -5,7 +5,7 @@ require_relative 'gitlab_config' 6 + require_relative 'gitlab_logger' 7 + 8 + class GitlabProjects 9 + - GLOBAL_HOOKS_DIRECTORY = File.join(ROOT_PATH, 'hooks') 10 + + GLOBAL_HOOKS_DIRECTORY = ENV['GITLAB_SHELL_HOOKS_PATH'] || File.join(ROOT_PATH, 'hooks') 11 + 12 + # Project name is a directory name for repository with .git at the end 13 + # It may be namespaced or not. Like repo.git or gitlab/repo.git
+26
pkgs/applications/version-management/gitlab-workhorse/default.nix
··· 1 + { stdenv, fetchFromGitLab, git, go }: 2 + 3 + stdenv.mkDerivation rec { 4 + version = "0.6.4"; 5 + name = "gitlab-workhorse-${version}"; 6 + 7 + srcs = fetchFromGitLab { 8 + owner = "gitlab-org"; 9 + repo = "gitlab-workhorse"; 10 + rev = version; 11 + sha256 = "09bs3kdmqi6avdak2nqma141y4fhfv050zwqqx7qh9a9hgkgwjxw"; 12 + }; 13 + 14 + buildInputs = [ git go ]; 15 + 16 + patches = [ ./remove-hardcoded-paths.patch ]; 17 + 18 + buildPhase = '' 19 + make PREFIX=$out 20 + ''; 21 + 22 + installPhase = '' 23 + mkdir -p $out/bin 24 + make install PREFIX=$out 25 + ''; 26 + }
+12
pkgs/applications/version-management/gitlab-workhorse/remove-hardcoded-paths.patch
··· 1 + diff --git a/internal/git/command.go b/internal/git/command.go 2 + index 0e5496c..5778294 100644 3 + --- a/internal/git/command.go 4 + +++ b/internal/git/command.go 5 + @@ -16,6 +16,7 @@ func gitCommand(gl_id string, name string, args ...string) *exec.Cmd { 6 + cmd.Env = []string{ 7 + fmt.Sprintf("HOME=%s", os.Getenv("HOME")), 8 + fmt.Sprintf("PATH=%s", os.Getenv("PATH")), 9 + + fmt.Sprintf("GITLAB_SHELL_CONFIG_PATH=%s", os.Getenv("GITLAB_SHELL_CONFIG_PATH")), 10 + fmt.Sprintf("LD_LIBRARY_PATH=%s", os.Getenv("LD_LIBRARY_PATH")), 11 + fmt.Sprintf("GL_ID=%s", gl_id), 12 + }
+97 -90
pkgs/applications/version-management/gitlab/Gemfile
··· 1 1 source "https://rubygems.org" 2 2 3 - def darwin_only(require_as) 4 - RUBY_PLATFORM.include?('darwin') && require_as 5 - end 6 - 7 - def linux_only(require_as) 8 - RUBY_PLATFORM.include?('linux') && require_as 9 - end 3 + gem 'rails', '4.2.5.1' 4 + gem 'rails-deprecated_sanitizer', '~> 1.0.3' 10 5 11 - gem 'rails', '4.1.12' 6 + # Responders respond_to and respond_with 7 + gem 'responders', '~> 2.0' 12 8 13 9 # Specify a sprockets version due to security issue 14 10 # See https://groups.google.com/forum/#!topic/rubyonrails-security/doAVp0YaTqY ··· 22 18 gem "pg", '~> 0.18.2', group: :postgres 23 19 24 20 # Authentication libraries 25 - gem "devise", '~> 3.5.2' 26 - gem "devise-async", '~> 0.9.0' 27 - gem 'omniauth', "~> 1.2.2" 28 - gem 'omniauth-google-oauth2', '~> 0.2.5' 29 - gem 'omniauth-twitter', '~> 1.0.1' 30 - gem 'omniauth-github', '~> 1.1.1' 31 - gem 'omniauth-shibboleth', '~> 1.1.1' 32 - gem 'omniauth-kerberos', '~> 0.2.0', group: :kerberos 33 - gem 'omniauth-gitlab', '~> 1.0.0' 34 - gem 'omniauth-bitbucket', '~> 0.0.2' 35 - gem 'omniauth-saml', '~> 1.4.0' 36 - gem 'doorkeeper', '~> 2.1.3' 37 - gem 'omniauth_crowd' 38 - gem "rack-oauth2", "~> 1.0.5" 21 + gem 'devise', '~> 3.5.4' 22 + gem 'devise-async', '~> 0.9.0' 23 + gem 'doorkeeper', '~> 2.2.0' 24 + gem 'omniauth', '~> 1.3.1' 25 + gem 'omniauth-azure-oauth2', '~> 0.0.6' 26 + gem 'omniauth-bitbucket', '~> 0.0.2' 27 + gem 'omniauth-cas3', '~> 1.1.2' 28 + gem 'omniauth-facebook', '~> 3.0.0' 29 + gem 'omniauth-github', '~> 1.1.1' 30 + gem 'omniauth-gitlab', '~> 1.0.0' 31 + gem 'omniauth-google-oauth2', '~> 0.2.0' 32 + gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos 33 + gem 'omniauth-saml', '~> 1.4.2' 34 + gem 'omniauth-shibboleth', '~> 1.2.0' 35 + gem 'omniauth-twitter', '~> 1.2.0' 36 + gem 'omniauth_crowd', '~> 2.2.0' 37 + gem 'rack-oauth2', '~> 1.2.1' 38 + 39 + # Spam and anti-bot protection 40 + gem 'recaptcha', require: 'recaptcha/rails' 41 + gem 'akismet', '~> 2.0' 39 42 40 43 # Two-factor authentication 41 44 gem 'devise-two-factor', '~> 2.0.0' ··· 47 50 48 51 # Extracting information from a git repository 49 52 # Provide access to Gitlab::Git library 50 - gem "gitlab_git", '~> 7.2.15' 53 + gem "gitlab_git", '~> 8.2' 51 54 52 55 # LDAP Auth 53 56 # GitLab fork with several improvements to original library. For full list of changes ··· 55 58 gem 'gitlab_omniauth-ldap', '~> 1.2.1', require: "omniauth-ldap" 56 59 57 60 # Git Wiki 58 - gem 'gollum-lib', '~> 4.0.2' 61 + gem 'gollum-lib', '~> 4.1.0' 59 62 60 63 # Language detection 61 - # GitLab fork of linguist does not require pygments/python dependency. 62 - # New version of original gem also dropped pygments support but it has strict 63 - # dependency to unstable rugged version. We have internal issue for replacing 64 - # fork with original gem when we meet on same rugged version - https://dev.gitlab.org/gitlab/gitlabhq/issues/2052. 65 - gem "gitlab-linguist", "~> 3.0.1", require: "linguist" 64 + gem "github-linguist", "~> 4.7.0", require: "linguist" 66 65 67 66 # API 68 - gem "grape", "~> 0.6.1" 69 - gem "grape-entity", "~> 0.4.2" 70 - gem 'rack-cors', '~> 0.2.9', require: 'rack/cors' 71 - 72 - # Format dates and times 73 - # based on human-friendly examples 74 - gem "stamp", '~> 0.5.0' 75 - 76 - # Enumeration fields 77 - gem 'enumerize', '~> 0.7.0' 67 + gem 'grape', '~> 0.13.0' 68 + gem 'grape-entity', '~> 0.4.2' 69 + gem 'rack-cors', '~> 0.4.0', require: 'rack/cors' 78 70 79 71 # Pagination 80 - gem "kaminari", "~> 0.15.1" 72 + gem "kaminari", "~> 0.16.3" 81 73 82 74 # HAML 83 - gem "haml-rails", '~> 0.5.3' 75 + gem "haml-rails", '~> 0.9.0' 84 76 85 77 # Files attachments 86 78 gem "carrierwave", '~> 0.9.0' ··· 89 81 gem 'dropzonejs-rails', '~> 0.7.1' 90 82 91 83 # for aws storage 92 - gem "fog", "~> 1.25.0" 84 + gem "fog", "~> 1.36.0" 93 85 gem "unf", '~> 0.1.4' 94 86 95 87 # Authorization ··· 102 94 gem 'html-pipeline', '~> 1.11.0' 103 95 gem 'task_list', '~> 1.0.2', require: 'task_list/railtie' 104 96 gem 'github-markup', '~> 1.3.1' 105 - gem 'redcarpet', '~> 3.3.2' 97 + gem 'redcarpet', '~> 3.3.3' 106 98 gem 'RedCloth', '~> 4.2.9' 107 99 gem 'rdoc', '~>3.6' 108 100 gem 'org-ruby', '~> 0.9.12' 109 - gem 'creole', '~>0.3.6' 101 + gem 'creole', '~> 0.5.0' 110 102 gem 'wikicloth', '0.8.1' 111 103 gem 'asciidoctor', '~> 1.5.2' 104 + gem 'rouge', '~> 1.10.1' 105 + 106 + # See https://groups.google.com/forum/#!topic/ruby-security-ann/aSbgDiwb24s 107 + # and https://groups.google.com/forum/#!topic/ruby-security-ann/Dy7YiKb_pMM 108 + gem 'nokogiri', '~> 1.6.7', '>= 1.6.7.2' 112 109 113 110 # Diffs 114 111 gem 'diffy', '~> 3.0.3' ··· 120 117 end 121 118 122 119 # State machine 123 - gem "state_machine", '~> 1.2.0' 120 + gem "state_machines-activerecord", '~> 0.3.0' 124 121 # Run events after state machine commits 125 122 gem 'after_commit_queue' 126 123 ··· 128 125 gem 'acts-as-taggable-on', '~> 3.4' 129 126 130 127 # Background jobs 131 - gem 'slim', '~> 2.0.2' 132 128 gem 'sinatra', '~> 1.4.4', require: nil 133 - gem 'sidekiq', '3.3.0' 134 - gem 'sidetiq', '~> 0.6.3' 129 + gem 'sidekiq', '~> 4.0' 130 + gem 'sidekiq-cron', '~> 0.4.0' 131 + gem 'redis-namespace' 135 132 136 133 # HTTP requests 137 134 gem "httparty", '~> 0.13.3' 138 135 139 136 # Colored output to console 140 - gem "colored", '~> 1.2' 141 - gem "colorize", '~> 0.5.8' 137 + gem "colorize", '~> 0.7.0' 142 138 143 139 # GitLab settings 144 140 gem 'settingslogic', '~> 2.0.9' ··· 151 147 gem "redis-rails", '~> 4.0.0' 152 148 153 149 # Campfire integration 154 - gem 'tinder', '~> 1.9.2' 150 + gem 'tinder', '~> 1.10.0' 155 151 156 152 # HipChat integration 157 153 gem 'hipchat', '~> 1.5.0' ··· 163 159 gem "gemnasium-gitlab-service", "~> 0.2" 164 160 165 161 # Slack integration 166 - gem "slack-notifier", "~> 1.0.0" 162 + gem "slack-notifier", "~> 1.2.0" 167 163 168 164 # Asana integration 169 - gem 'asana', '~> 0.0.6' 165 + gem 'asana', '~> 0.4.0' 170 166 171 167 # FogBugz integration 172 168 gem 'ruby-fogbugz', '~> 0.2.1' 173 169 174 170 # d3 175 - gem 'd3_rails', '~> 3.5.5' 171 + gem 'd3_rails', '~> 3.5.0' 176 172 177 173 #cal-heatmap 178 - gem "cal-heatmap-rails", "~> 0.0.1" 174 + gem 'cal-heatmap-rails', '~> 3.5.0' 179 175 180 176 # underscore-rails 181 - gem "underscore-rails", "~> 1.4.4" 177 + gem "underscore-rails", "~> 1.8.0" 182 178 183 179 # Sanitize user input 184 180 gem "sanitize", '~> 2.0' 181 + gem 'babosa', '~> 1.0.2' 182 + 183 + # Sanitizes SVG input 184 + gem "loofah", "~> 2.0.3" 185 185 186 186 # Protect against bruteforcing 187 - gem "rack-attack", '~> 4.3.0' 187 + gem "rack-attack", '~> 4.3.1' 188 188 189 189 # Ace editor 190 190 gem 'ace-rails-ap', '~> 2.0.1' ··· 193 193 gem 'mousetrap-rails', '~> 1.4.6' 194 194 195 195 # Detect and convert string character encoding 196 - gem 'charlock_holmes', '~> 0.6.9.4' 196 + gem 'charlock_holmes', '~> 0.7.3' 197 197 198 - gem "sass-rails", '~> 4.0.5' 198 + gem "sass-rails", '~> 5.0.0' 199 199 gem "coffee-rails", '~> 4.1.0' 200 - gem "uglifier", '~> 2.3.2' 200 + gem "uglifier", '~> 2.7.2' 201 201 gem 'turbolinks', '~> 2.5.0' 202 - gem 'jquery-turbolinks', '~> 2.0.1' 202 + gem 'jquery-turbolinks', '~> 2.1.0' 203 203 204 204 gem 'addressable', '~> 2.3.8' 205 - gem 'bootstrap-sass', '~> 3.0' 205 + gem 'bootstrap-sass', '~> 3.3.0' 206 206 gem 'font-awesome-rails', '~> 4.2' 207 - gem 'gitlab_emoji', '~> 0.1' 208 - gem 'gon', '~> 5.0.0' 209 - gem 'jquery-atwho-rails', '~> 1.0.0' 210 - gem 'jquery-rails', '~> 3.1.3' 207 + gem 'gitlab_emoji', '~> 0.3.0' 208 + gem 'gon', '~> 6.0.1' 209 + gem 'jquery-atwho-rails', '~> 1.3.2' 210 + gem 'jquery-rails', '~> 4.0.0' 211 211 gem 'jquery-scrollto-rails', '~> 1.4.3' 212 - gem 'jquery-ui-rails', '~> 4.2.1' 213 - gem 'nprogress-rails', '~> 0.1.2.3' 212 + gem 'jquery-ui-rails', '~> 5.0.0' 213 + gem 'nprogress-rails', '~> 0.1.6.7' 214 214 gem 'raphael-rails', '~> 2.1.2' 215 215 gem 'request_store', '~> 1.2.0' 216 216 gem 'select2-rails', '~> 3.5.9' 217 217 gem 'virtus', '~> 1.0.1' 218 + gem 'net-ssh', '~> 3.0.1' 219 + 220 + # Sentry integration 221 + gem 'sentry-raven' 222 + 223 + # Metrics 224 + group :metrics do 225 + gem 'allocations', '~> 1.0', require: false, platform: :mri 226 + gem 'method_source', '~> 0.8', require: false 227 + gem 'influxdb', '~> 0.2', require: false 228 + gem 'connection_pool', '~> 2.0', require: false 229 + end 218 230 219 231 group :development do 220 232 gem "foreman" 221 - gem 'brakeman', '3.0.1', require: false 233 + gem 'brakeman', '~> 3.1.0', require: false 222 234 223 235 gem "annotate", "~> 2.6.0" 224 236 gem "letter_opener", '~> 1.1.2' 225 237 gem 'quiet_assets', '~> 1.0.2' 226 - gem 'rack-mini-profiler', '~> 0.9.0', require: false 227 - gem 'rerun', '~> 0.10.0' 238 + gem 'rerun', '~> 0.11.0' 239 + gem 'bullet', require: false 240 + gem 'rblineprof', platform: :mri, require: false 241 + gem 'web-console', '~> 2.0' 228 242 229 243 # Better errors handler 230 244 gem 'better_errors', '~> 1.0.1' ··· 241 255 gem 'byebug', platform: :mri 242 256 gem 'pry-rails' 243 257 244 - gem 'awesome_print', '~> 1.2.0' 258 + gem 'awesome_print', '~> 1.2.0', require: false 245 259 gem 'fuubar', '~> 2.0.0' 246 260 247 261 gem 'database_cleaner', '~> 1.4.0' ··· 257 271 258 272 gem 'capybara', '~> 2.4.0' 259 273 gem 'capybara-screenshot', '~> 1.0.0' 260 - gem 'poltergeist', '~> 1.6.0' 274 + gem 'poltergeist', '~> 1.8.1' 261 275 262 276 gem 'teaspoon', '~> 1.0.0' 263 277 gem 'teaspoon-jasmine', '~> 2.2.0' ··· 267 281 gem 'spring-commands-spinach', '~> 1.0.0' 268 282 gem 'spring-commands-teaspoon', '~> 0.0.2' 269 283 270 - gem 'rubocop', '~> 0.28.0', require: false 284 + gem 'rubocop', '~> 0.35.0', require: false 271 285 gem 'coveralls', '~> 0.8.2', require: false 272 286 gem 'simplecov', '~> 0.10.0', require: false 287 + gem 'flog', require: false 288 + gem 'flay', require: false 289 + gem 'bundler-audit', require: false 290 + 291 + gem 'benchmark-ips', require: false 273 292 end 274 293 275 294 group :test do 276 295 gem 'shoulda-matchers', '~> 2.8.0', require: false 277 296 gem 'email_spec', '~> 1.6.0' 278 297 gem 'webmock', '~> 1.21.0' 279 - gem 'test_after_commit', '~> 0.2.2' 298 + gem 'test_after_commit', '~> 0.4.2' 280 299 gem 'sham_rack' 281 300 end 282 301 ··· 284 303 gem "gitlab_meta", '7.0' 285 304 end 286 305 287 - gem "newrelic_rpm", '~> 3.9.4.245' 288 - gem 'newrelic-grape' 289 - 290 - gem 'octokit', '~> 3.7.0' 306 + gem 'octokit', '~> 3.8.0' 291 307 292 - gem "mail_room", "~> 0.5.2" 308 + gem "mail_room", "~> 0.6.1" 293 309 294 310 gem 'email_reply_parser', '~> 0.5.8' 295 311 ··· 298 314 gem 'activerecord-session_store', '~> 0.1.0' 299 315 gem "nested_form", '~> 0.3.2' 300 316 301 - # Scheduled 302 - gem 'whenever', '~> 0.8.4', require: false 303 - 304 317 # OAuth 305 318 gem 'oauth2', '~> 1.0.0' 306 319 307 320 # Soft deletion 308 321 gem "paranoia", "~> 2.0" 309 322 310 - group :development, :test do 311 - gem 'guard-rspec', '~> 4.2.0' 312 - 313 - gem 'rb-fsevent', require: darwin_only('rb-fsevent') 314 - gem 'growl', require: darwin_only('growl') 315 - gem 'rb-inotify', require: linux_only('rb-inotify') 316 - end 323 + gem "activerecord-nulldb-adapter"
+428 -318
pkgs/applications/version-management/gitlab/Gemfile.lock
··· 1 1 GEM 2 2 remote: https://rubygems.org/ 3 3 specs: 4 - CFPropertyList (2.3.1) 4 + CFPropertyList (2.3.2) 5 5 RedCloth (4.2.9) 6 6 ace-rails-ap (2.0.1) 7 - actionmailer (4.1.12) 8 - actionpack (= 4.1.12) 9 - actionview (= 4.1.12) 7 + actionmailer (4.2.5.1) 8 + actionpack (= 4.2.5.1) 9 + actionview (= 4.2.5.1) 10 + activejob (= 4.2.5.1) 10 11 mail (~> 2.5, >= 2.5.4) 11 - actionpack (4.1.12) 12 - actionview (= 4.1.12) 13 - activesupport (= 4.1.12) 14 - rack (~> 1.5.2) 12 + rails-dom-testing (~> 1.0, >= 1.0.5) 13 + actionpack (4.2.5.1) 14 + actionview (= 4.2.5.1) 15 + activesupport (= 4.2.5.1) 16 + rack (~> 1.6) 15 17 rack-test (~> 0.6.2) 16 - actionview (4.1.12) 17 - activesupport (= 4.1.12) 18 + rails-dom-testing (~> 1.0, >= 1.0.5) 19 + rails-html-sanitizer (~> 1.0, >= 1.0.2) 20 + actionview (4.2.5.1) 21 + activesupport (= 4.2.5.1) 18 22 builder (~> 3.1) 19 23 erubis (~> 2.7.0) 20 - activemodel (4.1.12) 21 - activesupport (= 4.1.12) 24 + rails-dom-testing (~> 1.0, >= 1.0.5) 25 + rails-html-sanitizer (~> 1.0, >= 1.0.2) 26 + activejob (4.2.5.1) 27 + activesupport (= 4.2.5.1) 28 + globalid (>= 0.3.0) 29 + activemodel (4.2.5.1) 30 + activesupport (= 4.2.5.1) 22 31 builder (~> 3.1) 23 - activerecord (4.1.12) 24 - activemodel (= 4.1.12) 25 - activesupport (= 4.1.12) 26 - arel (~> 5.0.0) 32 + activerecord (4.2.5.1) 33 + activemodel (= 4.2.5.1) 34 + activesupport (= 4.2.5.1) 35 + arel (~> 6.0) 27 36 activerecord-deprecated_finders (1.0.4) 28 - activerecord-session_store (0.1.1) 37 + activerecord-nulldb-adapter (0.3.2) 38 + activerecord (>= 2.0.0) 39 + activerecord-session_store (0.1.2) 29 40 actionpack (>= 4.0.0, < 5) 30 41 activerecord (>= 4.0.0, < 5) 31 42 railties (>= 4.0.0, < 5) 32 - activeresource (4.0.0) 33 - activemodel (~> 4.0) 34 - activesupport (~> 4.0) 35 - rails-observers (~> 0.1.1) 36 - activesupport (4.1.12) 37 - i18n (~> 0.6, >= 0.6.9) 43 + activesupport (4.2.5.1) 44 + i18n (~> 0.7) 38 45 json (~> 1.7, >= 1.7.7) 39 46 minitest (~> 5.1) 40 - thread_safe (~> 0.1) 47 + thread_safe (~> 0.3, >= 0.3.4) 41 48 tzinfo (~> 1.1) 42 49 acts-as-taggable-on (3.5.0) 43 50 activerecord (>= 3.2, < 5) 44 51 addressable (2.3.8) 45 - after_commit_queue (1.1.0) 46 - rails (>= 3.0) 52 + after_commit_queue (1.3.0) 53 + activerecord (>= 3.0) 54 + akismet (2.0.0) 55 + allocations (1.0.4) 47 56 annotate (2.6.10) 48 57 activerecord (>= 3.2, <= 4.3) 49 58 rake (~> 10.4) 50 - arel (5.0.1.20140414130214) 51 - asana (0.0.6) 52 - activeresource (>= 3.2.3) 53 - asciidoctor (1.5.2) 59 + arel (6.0.3) 60 + asana (0.4.0) 61 + faraday (~> 0.9) 62 + faraday_middleware (~> 0.9) 63 + faraday_middleware-multi_json (~> 0.0) 64 + oauth2 (~> 1.0) 65 + asciidoctor (1.5.3) 54 66 ast (2.1.0) 55 67 astrolabe (1.3.1) 56 68 parser (~> 2.2) 57 69 attr_encrypted (1.3.4) 58 70 encryptor (>= 1.3.0) 59 71 attr_required (1.0.0) 60 - autoprefixer-rails (5.2.1.2) 72 + autoprefixer-rails (6.2.3) 61 73 execjs 62 74 json 63 75 awesome_print (1.2.0) ··· 65 77 descendants_tracker (~> 0.0.4) 66 78 ice_nine (~> 0.11.0) 67 79 thread_safe (~> 0.3, >= 0.3.1) 80 + babosa (1.0.2) 68 81 bcrypt (3.1.10) 82 + benchmark-ips (2.3.0) 69 83 better_errors (1.0.1) 70 84 coderay (>= 1.0.0) 71 85 erubis (>= 2.6.6) 72 86 binding_of_caller (0.7.2) 73 87 debug_inspector (>= 0.0.1) 74 - bootstrap-sass (3.3.5) 75 - autoprefixer-rails (>= 5.0.0.1) 76 - sass (>= 3.2.19) 77 - brakeman (3.0.1) 88 + bootstrap-sass (3.3.6) 89 + autoprefixer-rails (>= 5.2.1) 90 + sass (>= 3.3.4) 91 + brakeman (3.1.4) 78 92 erubis (~> 2.6) 79 93 fastercsv (~> 1.5) 80 94 haml (>= 3.0, < 5.0) 81 - highline (~> 1.6.20) 95 + highline (>= 1.6.20, < 2.0) 82 96 multi_json (~> 1.2) 83 - ruby2ruby (~> 2.1.1) 84 - ruby_parser (~> 3.5.0) 97 + ruby2ruby (>= 2.1.1, < 2.3.0) 98 + ruby_parser (~> 3.7.0) 99 + safe_yaml (>= 1.0) 85 100 sass (~> 3.0) 101 + slim (>= 1.3.6, < 4.0) 86 102 terminal-table (~> 1.4) 87 - browser (1.0.0) 103 + browser (1.0.1) 88 104 builder (3.2.2) 89 - byebug (6.0.2) 90 - cal-heatmap-rails (0.0.1) 105 + bullet (4.14.10) 106 + activesupport (>= 3.0.0) 107 + uniform_notifier (~> 1.9.0) 108 + bundler-audit (0.4.0) 109 + bundler (~> 1.2) 110 + thor (~> 0.18) 111 + byebug (8.2.1) 112 + cal-heatmap-rails (3.5.1) 91 113 capybara (2.4.4) 92 114 mime-types (>= 1.16) 93 115 nokogiri (>= 1.3.3) ··· 101 123 activemodel (>= 3.2.0) 102 124 activesupport (>= 3.2.0) 103 125 json (>= 1.7) 104 - celluloid (0.16.0) 105 - timers (~> 4.0.0) 106 - charlock_holmes (0.6.9.4) 107 - chronic (0.10.2) 108 - chunky_png (1.3.4) 126 + cause (0.1) 127 + charlock_holmes (0.7.3) 128 + chunky_png (1.3.5) 109 129 cliver (0.3.2) 110 130 coderay (1.1.0) 111 131 coercible (1.0.0) ··· 116 136 coffee-script (2.4.1) 117 137 coffee-script-source 118 138 execjs 119 - coffee-script-source (1.9.1.1) 120 - colored (1.2) 121 - colorize (0.5.8) 139 + coffee-script-source (1.10.0) 140 + colorize (0.7.7) 141 + concurrent-ruby (1.0.0) 122 142 connection_pool (2.2.0) 123 - coveralls (0.8.2) 143 + coveralls (0.8.9) 124 144 json (~> 1.8) 125 145 rest-client (>= 1.6.8, < 2) 126 146 simplecov (~> 0.10.0) 127 147 term-ansicolor (~> 1.3) 128 148 thor (~> 0.19.1) 129 - crack (0.4.2) 149 + tins (~> 1.6.0) 150 + crack (0.4.3) 130 151 safe_yaml (~> 1.0.0) 131 - creole (0.3.8) 132 - d3_rails (3.5.6) 152 + creole (0.5.0) 153 + d3_rails (3.5.11) 133 154 railties (>= 3.1.0) 134 155 daemons (1.2.3) 135 156 database_cleaner (1.4.1) 136 157 debug_inspector (0.0.2) 158 + debugger-ruby_core_source (1.3.8) 137 159 default_value_for (3.0.1) 138 160 activerecord (>= 3.2.0, < 5.0) 139 161 descendants_tracker (0.0.4) 140 162 thread_safe (~> 0.3, >= 0.3.1) 141 - devise (3.5.2) 163 + devise (3.5.4) 142 164 bcrypt (~> 3.0) 143 165 orm_adapter (~> 0.1) 144 166 railties (>= 3.2.6, < 5) ··· 147 169 warden (~> 1.2.3) 148 170 devise-async (0.9.0) 149 171 devise (~> 3.2) 150 - devise-two-factor (2.0.0) 172 + devise-two-factor (2.0.1) 151 173 activesupport 152 174 attr_encrypted (~> 1.3.2) 153 175 devise (~> 3.5.0) ··· 156 178 diff-lcs (1.2.5) 157 179 diffy (3.0.7) 158 180 docile (1.1.5) 159 - domain_name (0.5.24) 181 + domain_name (0.5.25) 160 182 unf (>= 0.0.5, < 1.0.0) 161 - doorkeeper (2.1.4) 183 + doorkeeper (2.2.2) 162 184 railties (>= 3.2) 163 - dropzonejs-rails (0.7.1) 185 + dropzonejs-rails (0.7.2) 164 186 rails (> 3.1) 165 187 email_reply_parser (0.5.8) 166 188 email_spec (1.6.0) 167 189 launchy (~> 2.1) 168 190 mail (~> 2.2) 169 191 encryptor (1.3.0) 170 - enumerize (0.7.0) 171 - activesupport (>= 3.2) 172 192 equalizer (0.0.11) 173 193 erubis (2.7.0) 174 - escape_utils (0.2.4) 194 + escape_utils (1.1.0) 175 195 eventmachine (1.0.8) 176 196 excon (0.45.4) 177 197 execjs (2.6.0) ··· 181 201 factory_girl_rails (4.3.0) 182 202 factory_girl (~> 4.3.0) 183 203 railties (>= 3.0.0) 184 - faraday (0.8.10) 185 - multipart-post (~> 1.2.0) 204 + faraday (0.9.2) 205 + multipart-post (>= 1.2, < 3) 186 206 faraday_middleware (0.10.0) 187 207 faraday (>= 0.7.4, < 0.10) 208 + faraday_middleware-multi_json (0.0.6) 209 + faraday_middleware 210 + multi_json 188 211 fastercsv (1.5.5) 189 212 ffaker (2.0.0) 190 213 ffi (1.9.10) 191 214 fission (0.5.0) 192 215 CFPropertyList (~> 2.2) 193 - flowdock (0.7.0) 216 + flay (2.6.1) 217 + ruby_parser (~> 3.0) 218 + sexp_processor (~> 4.0) 219 + flog (4.3.2) 220 + ruby_parser (~> 3.1, > 3.1.0) 221 + sexp_processor (~> 4.4) 222 + flowdock (0.7.1) 194 223 httparty (~> 0.7) 195 224 multi_json 196 - fog (1.25.0) 225 + fog (1.36.0) 226 + fog-aliyun (>= 0.1.0) 227 + fog-atmos 228 + fog-aws (>= 0.6.0) 197 229 fog-brightbox (~> 0.4) 198 - fog-core (~> 1.25) 230 + fog-core (~> 1.32) 231 + fog-dynect (~> 0.0.2) 232 + fog-ecloud (~> 0.1) 233 + fog-google (<= 0.1.0) 199 234 fog-json 235 + fog-local 236 + fog-powerdns (>= 0.1.1) 200 237 fog-profitbricks 201 238 fog-radosgw (>= 0.0.2) 239 + fog-riakcs 202 240 fog-sakuracloud (>= 0.0.4) 241 + fog-serverlove 203 242 fog-softlayer 243 + fog-storm_on_demand 204 244 fog-terremark 205 245 fog-vmfusion 206 246 fog-voxel 247 + fog-xenserver 207 248 fog-xml (~> 0.1.1) 208 249 ipaddress (~> 0.5) 209 250 nokogiri (~> 1.5, >= 1.5.11) 210 - opennebula 211 - fog-brightbox (0.9.0) 251 + fog-aliyun (0.1.0) 252 + fog-core (~> 1.27) 253 + fog-json (~> 1.0) 254 + ipaddress (~> 0.8) 255 + xml-simple (~> 1.1) 256 + fog-atmos (0.1.0) 257 + fog-core 258 + fog-xml 259 + fog-aws (0.8.1) 260 + fog-core (~> 1.27) 261 + fog-json (~> 1.0) 262 + fog-xml (~> 0.1) 263 + ipaddress (~> 0.8) 264 + fog-brightbox (0.10.1) 212 265 fog-core (~> 1.22) 213 266 fog-json 214 267 inflecto (~> 0.0.2) 215 - fog-core (1.32.1) 268 + fog-core (1.35.0) 216 269 builder 217 270 excon (~> 0.45) 218 271 formatador (~> 0.2) 219 - mime-types 220 - net-scp (~> 1.1) 221 - net-ssh (>= 2.1.3) 272 + fog-dynect (0.0.2) 273 + fog-core 274 + fog-json 275 + fog-xml 276 + fog-ecloud (0.3.0) 277 + fog-core 278 + fog-xml 279 + fog-google (0.1.0) 280 + fog-core 281 + fog-json 282 + fog-xml 222 283 fog-json (1.0.2) 223 284 fog-core (~> 1.0) 224 285 multi_json (~> 1.10) 286 + fog-local (0.2.1) 287 + fog-core (~> 1.27) 288 + fog-powerdns (0.1.1) 289 + fog-core (~> 1.27) 290 + fog-json (~> 1.0) 291 + fog-xml (~> 0.1) 225 292 fog-profitbricks (0.0.5) 226 293 fog-core 227 294 fog-xml 228 295 nokogiri 229 - fog-radosgw (0.0.4) 296 + fog-radosgw (0.0.5) 230 297 fog-core (>= 1.21.0) 231 298 fog-json 232 299 fog-xml (>= 0.0.1) 233 - fog-sakuracloud (1.0.1) 300 + fog-riakcs (0.1.0) 301 + fog-core 302 + fog-json 303 + fog-xml 304 + fog-sakuracloud (1.7.5) 305 + fog-core 306 + fog-json 307 + fog-serverlove (0.1.2) 308 + fog-core 309 + fog-json 310 + fog-softlayer (1.0.3) 234 311 fog-core 235 312 fog-json 236 - fog-softlayer (0.4.7) 313 + fog-storm_on_demand (0.1.1) 237 314 fog-core 238 315 fog-json 239 316 fog-terremark (0.1.0) ··· 245 322 fog-voxel (0.1.0) 246 323 fog-core 247 324 fog-xml 325 + fog-xenserver (0.2.2) 326 + fog-core 327 + fog-xml 248 328 fog-xml (0.1.2) 249 329 fog-core 250 330 nokogiri (~> 1.5, >= 1.5.11) 251 - font-awesome-rails (4.4.0.0) 331 + font-awesome-rails (4.5.0.0) 252 332 railties (>= 3.2, < 5.0) 253 333 foreman (0.78.0) 254 334 thor (~> 0.19.1) ··· 258 338 ruby-progressbar (~> 1.4) 259 339 gemnasium-gitlab-service (0.2.6) 260 340 rugged (~> 0.21) 261 - gemojione (2.0.1) 341 + gemojione (2.2.1) 262 342 json 263 343 get_process_mem (0.2.0) 264 344 gherkin-ruby (0.3.2) 345 + github-linguist (4.7.5) 346 + charlock_holmes (~> 0.7.3) 347 + escape_utils (~> 1.1.0) 348 + mime-types (>= 1.19) 349 + rugged (>= 0.23.0b) 265 350 github-markup (1.3.3) 266 351 gitlab-flowdock-git-hook (1.0.1) 267 352 flowdock (~> 0.7) ··· 272 357 diff-lcs (~> 1.1) 273 358 mime-types (~> 1.15) 274 359 posix-spawn (~> 0.3) 275 - gitlab-linguist (3.0.1) 276 - charlock_holmes (~> 0.6.6) 277 - escape_utils (~> 0.2.4) 278 - mime-types (~> 1.19) 279 - gitlab_emoji (0.1.1) 280 - gemojione (~> 2.0) 281 - gitlab_git (7.2.15) 360 + gitlab_emoji (0.3.1) 361 + gemojione (~> 2.2, >= 2.2.1) 362 + gitlab_git (8.2.0) 282 363 activesupport (~> 4.0) 283 - charlock_holmes (~> 0.6) 284 - gitlab-linguist (~> 3.0) 285 - rugged (~> 0.22.2) 364 + charlock_holmes (~> 0.7.3) 365 + github-linguist (~> 4.7.0) 366 + rugged (~> 0.24.0b13) 286 367 gitlab_meta (7.0) 287 368 gitlab_omniauth-ldap (1.2.1) 288 369 net-ldap (~> 0.9) 289 370 omniauth (~> 1.0) 290 371 pyu-ruby-sasl (~> 0.0.3.1) 291 372 rubyntlm (~> 0.3) 373 + globalid (0.3.6) 374 + activesupport (>= 4.1.0) 292 375 gollum-grit_adapter (1.0.0) 293 376 gitlab-grit (~> 2.7, >= 2.7.1) 294 - gollum-lib (4.0.3) 377 + gollum-lib (4.1.0) 295 378 github-markup (~> 1.3.3) 296 379 gollum-grit_adapter (~> 1.0) 297 380 nokogiri (~> 1.6.4) 298 - rouge (~> 1.10.1) 381 + rouge (~> 1.9) 299 382 sanitize (~> 2.1.0) 300 383 stringex (~> 2.5.1) 301 - gon (5.0.4) 302 - actionpack (>= 2.3.0) 384 + gon (6.0.1) 385 + actionpack (>= 3.0) 303 386 json 304 - grape (0.6.1) 387 + multi_json 388 + request_store (>= 1.0) 389 + grape (0.13.0) 305 390 activesupport 306 391 builder 307 - hashie (>= 1.2.0) 392 + hashie (>= 2.1.0) 308 393 multi_json (>= 1.3.2) 309 394 multi_xml (>= 0.5.2) 310 395 rack (>= 1.3.0) ··· 314 399 grape-entity (0.4.8) 315 400 activesupport 316 401 multi_json (>= 1.3.2) 317 - growl (1.0.3) 318 - guard (2.13.0) 319 - formatador (>= 0.2.4) 320 - listen (>= 2.7, <= 4.0) 321 - lumberjack (~> 1.0) 322 - nenv (~> 0.1) 323 - notiffany (~> 0.0) 324 - pry (>= 0.9.12) 325 - shellany (~> 0.0) 326 - thor (>= 0.18.1) 327 - guard-rspec (4.2.10) 328 - guard (~> 2.1) 329 - rspec (>= 2.14, < 4.0) 330 402 haml (4.0.7) 331 403 tilt 332 - haml-rails (0.5.3) 404 + haml-rails (0.9.0) 333 405 actionpack (>= 4.0.1) 334 406 activesupport (>= 4.0.1) 335 - haml (>= 3.1, < 5.0) 407 + haml (>= 4.0.6, < 5.0) 408 + html2haml (>= 1.0.1) 336 409 railties (>= 4.0.1) 337 - hashie (2.1.2) 338 - highline (1.6.21) 410 + hashie (3.4.3) 411 + highline (1.7.8) 339 412 hike (1.2.3) 340 413 hipchat (1.5.2) 341 414 httparty 342 415 mimemagic 343 - hitimes (1.2.3) 344 416 html-pipeline (1.11.0) 345 417 activesupport (>= 2) 346 418 nokogiri (~> 1.4) 419 + html2haml (2.0.0) 420 + erubis (~> 2.7.0) 421 + haml (~> 4.0.0) 422 + nokogiri (~> 1.6.0) 423 + ruby_parser (~> 3.5) 347 424 http-cookie (1.0.2) 348 425 domain_name (~> 0.5) 349 426 http_parser.rb (0.5.3) 350 - httparty (0.13.5) 427 + httparty (0.13.7) 351 428 json (~> 1.8) 352 429 multi_xml (>= 0.5.2) 353 - httpclient (2.6.0.1) 430 + httpclient (2.7.0.1) 354 431 i18n (0.7.0) 355 - ice_cube (0.11.1) 356 432 ice_nine (0.11.1) 357 433 inflecto (0.0.2) 358 - ipaddress (0.8.0) 359 - jquery-atwho-rails (1.0.1) 360 - jquery-rails (3.1.3) 361 - railties (>= 3.0, < 5.0) 434 + influxdb (0.2.3) 435 + cause 436 + json 437 + ipaddress (0.8.2) 438 + jquery-atwho-rails (1.3.2) 439 + jquery-rails (4.0.5) 440 + rails-dom-testing (~> 1.0) 441 + railties (>= 4.2.0) 362 442 thor (>= 0.14, < 2.0) 363 443 jquery-scrollto-rails (1.4.3) 364 444 railties (> 3.1, < 5.0) 365 - jquery-turbolinks (2.0.2) 445 + jquery-turbolinks (2.1.0) 366 446 railties (>= 3.1.0) 367 447 turbolinks 368 - jquery-ui-rails (4.2.1) 448 + jquery-ui-rails (5.0.5) 369 449 railties (>= 3.2.16) 370 450 json (1.8.3) 371 - jwt (1.5.1) 372 - kaminari (0.15.1) 451 + jwt (1.5.2) 452 + kaminari (0.16.3) 373 453 actionpack (>= 3.0.0) 374 454 activesupport (>= 3.0.0) 375 - kgio (2.9.3) 455 + kgio (2.10.0) 376 456 launchy (2.4.3) 377 457 addressable (~> 2.3) 378 458 letter_opener (1.1.2) 379 459 launchy (~> 2.2) 380 - listen (2.10.1) 381 - celluloid (~> 0.16.0) 460 + listen (3.0.5) 382 461 rb-fsevent (>= 0.9.3) 383 462 rb-inotify (>= 0.9) 384 - lumberjack (1.0.9) 463 + loofah (2.0.3) 464 + nokogiri (>= 1.5.9) 385 465 macaddr (1.7.1) 386 466 systemu (~> 2.6.2) 387 467 mail (2.6.3) 388 468 mime-types (>= 1.16, < 3) 389 - mail_room (0.5.2) 469 + mail_room (0.6.1) 390 470 method_source (0.8.2) 391 471 mime-types (1.25.1) 392 472 mimemagic (0.3.0) 393 - mini_portile (0.6.2) 473 + mini_portile2 (2.0.0) 394 474 minitest (5.7.0) 395 475 mousetrap-rails (1.4.6) 396 476 multi_json (1.11.2) 397 477 multi_xml (0.5.5) 398 - multipart-post (1.2.0) 478 + multipart-post (2.0.0) 399 479 mysql2 (0.3.20) 400 - nenv (0.2.0) 401 480 nested_form (0.3.2) 402 - net-ldap (0.11) 403 - net-scp (1.2.1) 404 - net-ssh (>= 2.6.5) 405 - net-ssh (2.9.2) 406 - netrc (0.10.3) 407 - newrelic-grape (2.0.0) 408 - grape 409 - newrelic_rpm 410 - newrelic_rpm (3.9.4.245) 411 - nokogiri (1.6.6.2) 412 - mini_portile (~> 0.6.0) 413 - notiffany (0.0.7) 414 - nenv (~> 0.1) 415 - shellany (~> 0.0) 416 - nprogress-rails (0.1.2.3) 481 + net-ldap (0.12.1) 482 + net-ssh (3.0.1) 483 + netrc (0.11.0) 484 + nokogiri (1.6.7.2) 485 + mini_portile2 (~> 2.0.0.rc2) 486 + nprogress-rails (0.1.6.7) 417 487 oauth (0.4.7) 418 488 oauth2 (1.0.0) 419 489 faraday (>= 0.8, < 0.10) ··· 421 491 multi_json (~> 1.3) 422 492 multi_xml (~> 0.5) 423 493 rack (~> 1.2) 424 - octokit (3.7.1) 494 + octokit (3.8.0) 425 495 sawyer (~> 0.6.0, >= 0.5.3) 426 - omniauth (1.2.2) 496 + omniauth (1.3.1) 427 497 hashie (>= 1.2, < 4) 428 - rack (~> 1.0) 498 + rack (>= 1.0, < 3) 499 + omniauth-azure-oauth2 (0.0.6) 500 + jwt (~> 1.0) 501 + omniauth (~> 1.0) 502 + omniauth-oauth2 (~> 1.1) 429 503 omniauth-bitbucket (0.0.2) 430 504 multi_json (~> 1.7) 431 505 omniauth (~> 1.1) 432 506 omniauth-oauth (~> 1.0) 507 + omniauth-cas3 (1.1.3) 508 + addressable (~> 2.3) 509 + nokogiri (~> 1.6.6) 510 + omniauth (~> 1.2) 511 + omniauth-facebook (3.0.0) 512 + omniauth-oauth2 (~> 1.2) 433 513 omniauth-github (1.1.2) 434 514 omniauth (~> 1.0) 435 515 omniauth-oauth2 (~> 1.1) 436 - omniauth-gitlab (1.0.0) 516 + omniauth-gitlab (1.0.1) 437 517 omniauth (~> 1.0) 438 518 omniauth-oauth2 (~> 1.0) 439 - omniauth-google-oauth2 (0.2.6) 440 - omniauth (> 1.0) 441 - omniauth-oauth2 (~> 1.1) 442 - omniauth-kerberos (0.2.0) 519 + omniauth-google-oauth2 (0.2.10) 520 + addressable (~> 2.3) 521 + jwt (~> 1.0) 522 + multi_json (~> 1.3) 523 + omniauth (>= 1.1.1) 524 + omniauth-oauth2 (~> 1.3.1) 525 + omniauth-kerberos (0.3.0) 443 526 omniauth-multipassword 444 527 timfel-krb5-auth (~> 0.8) 445 528 omniauth-multipassword (0.4.2) ··· 450 533 omniauth-oauth2 (1.3.1) 451 534 oauth2 (~> 1.0) 452 535 omniauth (~> 1.2) 453 - omniauth-saml (1.4.1) 536 + omniauth-saml (1.4.2) 454 537 omniauth (~> 1.1) 455 - ruby-saml (~> 1.0.0) 456 - omniauth-shibboleth (1.1.2) 538 + ruby-saml (~> 1.1, >= 1.1.1) 539 + omniauth-shibboleth (1.2.1) 457 540 omniauth (>= 1.0.0) 458 - omniauth-twitter (1.0.1) 459 - multi_json (~> 1.3) 460 - omniauth-oauth (~> 1.0) 541 + omniauth-twitter (1.2.1) 542 + json (~> 1.3) 543 + omniauth-oauth (~> 1.1) 461 544 omniauth_crowd (2.2.3) 462 545 activesupport 463 546 nokogiri (>= 1.4.4) 464 547 omniauth (~> 1.0) 465 - opennebula (4.12.1) 466 - json 467 - nokogiri 468 - rbvmomi 469 548 org-ruby (0.9.12) 470 549 rubypants (~> 0.2) 471 550 orm_adapter (0.5.0) 472 - paranoia (2.1.3) 551 + paranoia (2.1.4) 473 552 activerecord (~> 4.0) 474 - parser (2.2.2.6) 553 + parser (2.2.3.0) 475 554 ast (>= 1.1, < 3.0) 476 - pg (0.18.2) 477 - poltergeist (1.6.0) 555 + pg (0.18.4) 556 + poltergeist (1.8.1) 478 557 capybara (~> 2.1) 479 558 cliver (~> 0.3.1) 480 559 multi_json (~> 1.0) 481 560 websocket-driver (>= 0.2.0) 482 561 posix-spawn (0.3.11) 483 - powerpack (0.0.9) 484 - pry (0.10.1) 562 + powerpack (0.1.1) 563 + pry (0.10.3) 485 564 coderay (~> 1.1.0) 486 565 method_source (~> 0.8.1) 487 566 slop (~> 3.4) ··· 490 569 pyu-ruby-sasl (0.0.3.3) 491 570 quiet_assets (1.0.3) 492 571 railties (>= 3.1, < 5.0) 493 - rack (1.5.5) 572 + rack (1.6.4) 494 573 rack-accept (0.4.5) 495 574 rack (>= 0.4) 496 - rack-attack (4.3.0) 575 + rack-attack (4.3.1) 497 576 rack 498 - rack-cors (0.2.9) 499 - rack-mini-profiler (0.9.7) 500 - rack (>= 1.1.3) 577 + rack-cors (0.4.0) 501 578 rack-mount (0.8.3) 502 579 rack (>= 1.0.0) 503 - rack-oauth2 (1.0.10) 580 + rack-oauth2 (1.2.1) 504 581 activesupport (>= 2.3) 505 582 attr_required (>= 0.0.5) 506 583 httpclient (>= 2.4) ··· 510 587 rack 511 588 rack-test (0.6.3) 512 589 rack (>= 1.0) 513 - rails (4.1.12) 514 - actionmailer (= 4.1.12) 515 - actionpack (= 4.1.12) 516 - actionview (= 4.1.12) 517 - activemodel (= 4.1.12) 518 - activerecord (= 4.1.12) 519 - activesupport (= 4.1.12) 590 + rails (4.2.5.1) 591 + actionmailer (= 4.2.5.1) 592 + actionpack (= 4.2.5.1) 593 + actionview (= 4.2.5.1) 594 + activejob (= 4.2.5.1) 595 + activemodel (= 4.2.5.1) 596 + activerecord (= 4.2.5.1) 597 + activesupport (= 4.2.5.1) 520 598 bundler (>= 1.3.0, < 2.0) 521 - railties (= 4.1.12) 522 - sprockets-rails (~> 2.0) 523 - rails-observers (0.1.2) 524 - activemodel (~> 4.0) 525 - railties (4.1.12) 526 - actionpack (= 4.1.12) 527 - activesupport (= 4.1.12) 599 + railties (= 4.2.5.1) 600 + sprockets-rails 601 + rails-deprecated_sanitizer (1.0.3) 602 + activesupport (>= 4.2.0.alpha) 603 + rails-dom-testing (1.0.7) 604 + activesupport (>= 4.2.0.beta, < 5.0) 605 + nokogiri (~> 1.6.0) 606 + rails-deprecated_sanitizer (>= 1.0.1) 607 + rails-html-sanitizer (1.0.3) 608 + loofah (~> 2.0) 609 + railties (4.2.5.1) 610 + actionpack (= 4.2.5.1) 611 + activesupport (= 4.2.5.1) 528 612 rake (>= 0.8.7) 529 613 thor (>= 0.18.1, < 2.0) 530 614 rainbow (2.0.0) 531 615 raindrops (0.15.0) 532 - rake (10.4.2) 616 + rake (10.5.0) 533 617 raphael-rails (2.1.2) 534 - rb-fsevent (0.9.5) 618 + rb-fsevent (0.9.6) 535 619 rb-inotify (0.9.5) 536 620 ffi (>= 0.5.0) 537 - rbvmomi (1.8.2) 538 - builder 539 - nokogiri (>= 1.4.1) 540 - trollop 621 + rblineprof (0.3.6) 622 + debugger-ruby_core_source (~> 1.3) 541 623 rdoc (3.12.2) 542 624 json (~> 1.4) 543 - redcarpet (3.3.2) 544 - redis (3.2.1) 545 - redis-actionpack (4.0.0) 625 + recaptcha (1.0.2) 626 + json 627 + redcarpet (3.3.3) 628 + redis (3.2.2) 629 + redis-actionpack (4.0.1) 546 630 actionpack (~> 4) 547 631 redis-rack (~> 1.5.0) 548 632 redis-store (~> 1.1.0) 549 - redis-activesupport (4.1.1) 550 - activesupport (~> 4) 633 + redis-activesupport (4.1.5) 634 + activesupport (>= 3, < 5) 551 635 redis-store (~> 1.1.0) 552 636 redis-namespace (1.5.2) 553 637 redis (~> 3.0, >= 3.0.4) ··· 558 642 redis-actionpack (~> 4) 559 643 redis-activesupport (~> 4) 560 644 redis-store (~> 1.1.0) 561 - redis-store (1.1.6) 645 + redis-store (1.1.7) 562 646 redis (>= 2.2) 563 - request_store (1.2.0) 564 - rerun (0.10.0) 565 - listen (~> 2.7, >= 2.7.3) 566 - responders (1.1.2) 567 - railties (>= 3.2, < 4.2) 647 + request_store (1.2.1) 648 + rerun (0.11.0) 649 + listen (~> 3.0) 650 + responders (2.1.1) 651 + railties (>= 4.2.0, < 5.1) 568 652 rest-client (1.8.0) 569 653 http-cookie (>= 1.0.2, < 2.0) 570 654 mime-types (>= 1.16, < 3.0) ··· 597 681 rspec-mocks (~> 3.3.0) 598 682 rspec-support (~> 3.3.0) 599 683 rspec-support (3.3.0) 600 - rubocop (0.28.0) 684 + rubocop (0.35.1) 601 685 astrolabe (~> 1.3) 602 - parser (>= 2.2.0.pre.7, < 3.0) 603 - powerpack (~> 0.0.6) 686 + parser (>= 2.2.3.0, < 3.0) 687 + powerpack (~> 0.1) 604 688 rainbow (>= 1.99.1, < 3.0) 605 - ruby-progressbar (~> 1.4) 689 + ruby-progressbar (~> 1.7) 690 + tins (<= 1.6.0) 606 691 ruby-fogbugz (0.2.1) 607 692 crack (~> 0.4) 608 693 ruby-progressbar (1.7.5) 609 - ruby-saml (1.0.0) 694 + ruby-saml (1.1.1) 610 695 nokogiri (>= 1.5.10) 611 696 uuid (~> 2.3) 612 - ruby2ruby (2.1.4) 697 + ruby2ruby (2.2.0) 613 698 ruby_parser (~> 3.1) 614 699 sexp_processor (~> 4.0) 615 - ruby_parser (3.5.0) 700 + ruby_parser (3.7.2) 616 701 sexp_processor (~> 4.1) 617 702 rubyntlm (0.5.2) 618 703 rubypants (0.2.0) 619 - rugged (0.22.2) 704 + rufus-scheduler (3.1.10) 705 + rugged (0.24.0b13) 620 706 safe_yaml (1.0.4) 621 707 sanitize (2.1.0) 622 708 nokogiri (>= 1.4.4) 623 - sass (3.2.19) 624 - sass-rails (4.0.5) 709 + sass (3.4.20) 710 + sass-rails (5.0.4) 625 711 railties (>= 4.0.0, < 5.0) 626 - sass (~> 3.2.2) 627 - sprockets (~> 2.8, < 3.0) 628 - sprockets-rails (~> 2.0) 712 + sass (~> 3.1) 713 + sprockets (>= 2.8, < 4.0) 714 + sprockets-rails (>= 2.0, < 4.0) 715 + tilt (>= 1.1, < 3) 629 716 sawyer (0.6.0) 630 717 addressable (~> 2.3.5) 631 718 faraday (~> 0.8, < 0.10) ··· 637 724 activesupport (>= 3.1, < 4.3) 638 725 select2-rails (3.5.9.3) 639 726 thor (~> 0.14) 727 + sentry-raven (0.15.4) 728 + faraday (>= 0.7.6) 640 729 settingslogic (2.0.9) 641 730 sexp_processor (4.6.0) 642 731 sham_rack (1.3.6) 643 732 rack 644 - shellany (0.0.1) 645 733 shoulda-matchers (2.8.0) 646 734 activesupport (>= 3.0.0) 647 - sidekiq (3.3.0) 648 - celluloid (>= 0.16.0) 649 - connection_pool (>= 2.0.0) 650 - json 651 - redis (>= 3.0.6) 652 - redis-namespace (>= 1.3.1) 653 - sidetiq (0.6.3) 654 - celluloid (>= 0.14.1) 655 - ice_cube (= 0.11.1) 656 - sidekiq (>= 3.0.0) 735 + sidekiq (4.0.1) 736 + concurrent-ruby (~> 1.0) 737 + connection_pool (~> 2.2, >= 2.2.0) 738 + json (~> 1.0) 739 + redis (~> 3.2, >= 3.2.1) 740 + sidekiq-cron (0.4.0) 741 + redis-namespace (>= 1.5.2) 742 + rufus-scheduler (>= 2.0.24) 743 + sidekiq (>= 4.0.0) 657 744 simple_oauth (0.1.9) 658 745 simplecov (0.10.0) 659 746 docile (~> 1.1.0) ··· 665 752 rack-protection (~> 1.4) 666 753 tilt (>= 1.3, < 3) 667 754 six (0.2.0) 668 - slack-notifier (1.0.0) 669 - slim (2.0.3) 670 - temple (~> 0.6.6) 755 + slack-notifier (1.2.1) 756 + slim (3.0.6) 757 + temple (~> 0.7.3) 671 758 tilt (>= 1.3.3, < 2.1) 672 759 slop (3.6.0) 673 760 spinach (0.8.10) ··· 690 777 multi_json (~> 1.0) 691 778 rack (~> 1.0) 692 779 tilt (~> 1.1, != 1.3.0) 693 - sprockets-rails (2.3.2) 780 + sprockets-rails (2.3.3) 694 781 actionpack (>= 3.0) 695 782 activesupport (>= 3.0) 696 783 sprockets (>= 2.8, < 4.0) 697 - stamp (0.5.0) 698 - state_machine (1.2.0) 784 + state_machines (0.4.0) 785 + state_machines-activemodel (0.3.0) 786 + activemodel (~> 4.1) 787 + state_machines (>= 0.4.0) 788 + state_machines-activerecord (0.3.0) 789 + activerecord (~> 4.1) 790 + state_machines-activemodel (>= 0.3.0) 699 791 stringex (2.5.2) 700 792 systemu (2.6.5) 701 793 task_list (1.0.2) ··· 704 796 railties (>= 3.2.5, < 5) 705 797 teaspoon-jasmine (2.2.0) 706 798 teaspoon (>= 1.0.0) 707 - temple (0.6.10) 799 + temple (0.7.6) 708 800 term-ansicolor (1.3.2) 709 801 tins (~> 1.0) 710 802 terminal-table (1.5.2) 711 - test_after_commit (0.2.7) 803 + test_after_commit (0.4.2) 712 804 activerecord (>= 3.2) 713 - thin (1.6.3) 805 + thin (1.6.4) 714 806 daemons (~> 1.0, >= 1.0.9) 715 - eventmachine (~> 1.0) 807 + eventmachine (~> 1.0, >= 1.0.4) 716 808 rack (~> 1.0) 717 809 thor (0.19.1) 718 810 thread_safe (0.3.5) 719 811 tilt (1.4.1) 720 - timers (4.0.4) 721 - hitimes 722 812 timfel-krb5-auth (0.8.3) 723 - tinder (1.9.4) 813 + tinder (1.10.1) 724 814 eventmachine (~> 1.0) 725 - faraday (~> 0.8.9) 815 + faraday (~> 0.9.0) 726 816 faraday_middleware (~> 0.9) 727 - hashie (>= 1.0, < 3) 817 + hashie (>= 1.0) 728 818 json (~> 1.8.0) 729 - mime-types (~> 1.19) 819 + mime-types 730 820 multi_json (~> 1.7) 731 821 twitter-stream (~> 0.1) 732 822 tins (1.6.0) 733 - trollop (2.1.2) 734 823 turbolinks (2.5.3) 735 824 coffee-rails 736 825 twitter-stream (0.1.16) ··· 739 828 simple_oauth (~> 0.1.4) 740 829 tzinfo (1.2.2) 741 830 thread_safe (~> 0.1) 742 - uglifier (2.3.3) 831 + uglifier (2.7.2) 743 832 execjs (>= 0.3.0) 744 833 json (>= 1.8.0) 745 - underscore-rails (1.4.4) 834 + underscore-rails (1.8.3) 746 835 unf (0.1.4) 747 836 unf_ext 748 837 unf_ext (0.0.7.1) ··· 750 839 kgio (~> 2.6) 751 840 rack 752 841 raindrops (~> 0.7) 753 - unicorn-worker-killer (0.4.3) 842 + unicorn-worker-killer (0.4.4) 754 843 get_process_mem (~> 0) 755 - unicorn (~> 4) 844 + unicorn (>= 4, < 6) 845 + uniform_notifier (1.9.0) 756 846 uuid (2.3.8) 757 847 macaddr (~> 1.0) 758 848 version_sorter (2.0.0) ··· 761 851 coercible (~> 1.0) 762 852 descendants_tracker (~> 0.0, >= 0.0.3) 763 853 equalizer (~> 0.0, >= 0.0.9) 764 - warden (1.2.3) 854 + warden (1.2.4) 765 855 rack (>= 1.0) 856 + web-console (2.2.1) 857 + activemodel (>= 4.0) 858 + binding_of_caller (>= 0.7.2) 859 + railties (>= 4.0) 860 + sprockets-rails (>= 2.0, < 4.0) 766 861 webmock (1.21.0) 767 862 addressable (>= 2.3.6) 768 863 crack (>= 0.3.2) 769 - websocket-driver (0.6.2) 864 + websocket-driver (0.6.3) 770 865 websocket-extensions (>= 0.1.0) 771 866 websocket-extensions (0.1.2) 772 - whenever (0.8.4) 773 - activesupport (>= 2.3.4) 774 - chronic (>= 0.6.3) 775 867 wikicloth (0.8.1) 776 868 builder 777 869 expression_parser 778 870 rinku 871 + xml-simple (1.1.5) 779 872 xpath (2.0.0) 780 873 nokogiri (~> 1.3) 781 874 ··· 786 879 RedCloth (~> 4.2.9) 787 880 ace-rails-ap (~> 2.0.1) 788 881 activerecord-deprecated_finders (~> 1.0.3) 882 + activerecord-nulldb-adapter 789 883 activerecord-session_store (~> 0.1.0) 790 884 acts-as-taggable-on (~> 3.4) 791 885 addressable (~> 2.3.8) 792 886 after_commit_queue 887 + akismet (~> 2.0) 888 + allocations (~> 1.0) 793 889 annotate (~> 2.6.0) 794 - asana (~> 0.0.6) 890 + asana (~> 0.4.0) 795 891 asciidoctor (~> 1.5.2) 796 892 attr_encrypted (~> 1.3.4) 797 893 awesome_print (~> 1.2.0) 894 + babosa (~> 1.0.2) 895 + benchmark-ips 798 896 better_errors (~> 1.0.1) 799 897 binding_of_caller (~> 0.7.2) 800 - bootstrap-sass (~> 3.0) 801 - brakeman (= 3.0.1) 898 + bootstrap-sass (~> 3.3.0) 899 + brakeman (~> 3.1.0) 802 900 browser (~> 1.0.0) 901 + bullet 902 + bundler-audit 803 903 byebug 804 - cal-heatmap-rails (~> 0.0.1) 904 + cal-heatmap-rails (~> 3.5.0) 805 905 capybara (~> 2.4.0) 806 906 capybara-screenshot (~> 1.0.0) 807 907 carrierwave (~> 0.9.0) 808 - charlock_holmes (~> 0.6.9.4) 908 + charlock_holmes (~> 0.7.3) 809 909 coffee-rails (~> 4.1.0) 810 - colored (~> 1.2) 811 - colorize (~> 0.5.8) 910 + colorize (~> 0.7.0) 911 + connection_pool (~> 2.0) 812 912 coveralls (~> 0.8.2) 813 - creole (~> 0.3.6) 814 - d3_rails (~> 3.5.5) 913 + creole (~> 0.5.0) 914 + d3_rails (~> 3.5.0) 815 915 database_cleaner (~> 1.4.0) 816 916 default_value_for (~> 3.0.0) 817 - devise (~> 3.5.2) 917 + devise (~> 3.5.4) 818 918 devise-async (~> 0.9.0) 819 919 devise-two-factor (~> 2.0.0) 820 920 diffy (~> 3.0.3) 821 - doorkeeper (~> 2.1.3) 921 + doorkeeper (~> 2.2.0) 822 922 dropzonejs-rails (~> 0.7.1) 823 923 email_reply_parser (~> 0.5.8) 824 924 email_spec (~> 1.6.0) 825 - enumerize (~> 0.7.0) 826 925 factory_girl_rails (~> 4.3.0) 827 926 ffaker (~> 2.0.0) 828 - fog (~> 1.25.0) 927 + flay 928 + flog 929 + fog (~> 1.36.0) 829 930 font-awesome-rails (~> 4.2) 830 931 foreman 831 932 fuubar (~> 2.0.0) 832 933 gemnasium-gitlab-service (~> 0.2) 934 + github-linguist (~> 4.7.0) 833 935 github-markup (~> 1.3.1) 834 936 gitlab-flowdock-git-hook (~> 1.0.1) 835 - gitlab-linguist (~> 3.0.1) 836 - gitlab_emoji (~> 0.1) 837 - gitlab_git (~> 7.2.15) 937 + gitlab_emoji (~> 0.3.0) 938 + gitlab_git (~> 8.2) 838 939 gitlab_meta (= 7.0) 839 940 gitlab_omniauth-ldap (~> 1.2.1) 840 - gollum-lib (~> 4.0.2) 841 - gon (~> 5.0.0) 842 - grape (~> 0.6.1) 941 + gollum-lib (~> 4.1.0) 942 + gon (~> 6.0.1) 943 + grape (~> 0.13.0) 843 944 grape-entity (~> 0.4.2) 844 - growl 845 - guard-rspec (~> 4.2.0) 846 - haml-rails (~> 0.5.3) 945 + haml-rails (~> 0.9.0) 847 946 hipchat (~> 1.5.0) 848 947 html-pipeline (~> 1.11.0) 849 948 httparty (~> 0.13.3) 850 - jquery-atwho-rails (~> 1.0.0) 851 - jquery-rails (~> 3.1.3) 949 + influxdb (~> 0.2) 950 + jquery-atwho-rails (~> 1.3.2) 951 + jquery-rails (~> 4.0.0) 852 952 jquery-scrollto-rails (~> 1.4.3) 853 - jquery-turbolinks (~> 2.0.1) 854 - jquery-ui-rails (~> 4.2.1) 855 - kaminari (~> 0.15.1) 953 + jquery-turbolinks (~> 2.1.0) 954 + jquery-ui-rails (~> 5.0.0) 955 + kaminari (~> 0.16.3) 856 956 letter_opener (~> 1.1.2) 857 - mail_room (~> 0.5.2) 957 + loofah (~> 2.0.3) 958 + mail_room (~> 0.6.1) 959 + method_source (~> 0.8) 858 960 minitest (~> 5.7.0) 859 961 mousetrap-rails (~> 1.4.6) 860 962 mysql2 (~> 0.3.16) 861 963 nested_form (~> 0.3.2) 862 - newrelic-grape 863 - newrelic_rpm (~> 3.9.4.245) 864 - nprogress-rails (~> 0.1.2.3) 964 + net-ssh (~> 3.0.1) 965 + nokogiri (~> 1.6.7, >= 1.6.7.2) 966 + nprogress-rails (~> 0.1.6.7) 865 967 oauth2 (~> 1.0.0) 866 - octokit (~> 3.7.0) 867 - omniauth (~> 1.2.2) 968 + octokit (~> 3.8.0) 969 + omniauth (~> 1.3.1) 970 + omniauth-azure-oauth2 (~> 0.0.6) 868 971 omniauth-bitbucket (~> 0.0.2) 972 + omniauth-cas3 (~> 1.1.2) 973 + omniauth-facebook (~> 3.0.0) 869 974 omniauth-github (~> 1.1.1) 870 975 omniauth-gitlab (~> 1.0.0) 871 - omniauth-google-oauth2 (~> 0.2.5) 872 - omniauth-kerberos (~> 0.2.0) 873 - omniauth-saml (~> 1.4.0) 874 - omniauth-shibboleth (~> 1.1.1) 875 - omniauth-twitter (~> 1.0.1) 876 - omniauth_crowd 976 + omniauth-google-oauth2 (~> 0.2.0) 977 + omniauth-kerberos (~> 0.3.0) 978 + omniauth-saml (~> 1.4.2) 979 + omniauth-shibboleth (~> 1.2.0) 980 + omniauth-twitter (~> 1.2.0) 981 + omniauth_crowd (~> 2.2.0) 877 982 org-ruby (~> 0.9.12) 878 983 paranoia (~> 2.0) 879 984 pg (~> 0.18.2) 880 - poltergeist (~> 1.6.0) 985 + poltergeist (~> 1.8.1) 881 986 pry-rails 882 987 quiet_assets (~> 1.0.2) 883 - rack-attack (~> 4.3.0) 884 - rack-cors (~> 0.2.9) 885 - rack-mini-profiler (~> 0.9.0) 886 - rack-oauth2 (~> 1.0.5) 887 - rails (= 4.1.12) 988 + rack-attack (~> 4.3.1) 989 + rack-cors (~> 0.4.0) 990 + rack-oauth2 (~> 1.2.1) 991 + rails (= 4.2.5.1) 992 + rails-deprecated_sanitizer (~> 1.0.3) 888 993 raphael-rails (~> 2.1.2) 889 - rb-fsevent 890 - rb-inotify 994 + rblineprof 891 995 rdoc (~> 3.6) 892 - redcarpet (~> 3.3.2) 996 + recaptcha 997 + redcarpet (~> 3.3.3) 998 + redis-namespace 893 999 redis-rails (~> 4.0.0) 894 1000 request_store (~> 1.2.0) 895 - rerun (~> 0.10.0) 1001 + rerun (~> 0.11.0) 1002 + responders (~> 2.0) 1003 + rouge (~> 1.10.1) 896 1004 rqrcode-rails3 (~> 0.1.7) 897 1005 rspec-rails (~> 3.3.0) 898 - rubocop (~> 0.28.0) 1006 + rubocop (~> 0.35.0) 899 1007 ruby-fogbugz (~> 0.2.1) 900 1008 sanitize (~> 2.0) 901 - sass-rails (~> 4.0.5) 1009 + sass-rails (~> 5.0.0) 902 1010 sdoc (~> 0.3.20) 903 1011 seed-fu (~> 2.3.5) 904 1012 select2-rails (~> 3.5.9) 1013 + sentry-raven 905 1014 settingslogic (~> 2.0.9) 906 1015 sham_rack 907 1016 shoulda-matchers (~> 2.8.0) 908 - sidekiq (= 3.3.0) 909 - sidetiq (~> 0.6.3) 1017 + sidekiq (~> 4.0) 1018 + sidekiq-cron (~> 0.4.0) 910 1019 simplecov (~> 0.10.0) 911 1020 sinatra (~> 1.4.4) 912 1021 six (~> 0.2.0) 913 - slack-notifier (~> 1.0.0) 914 - slim (~> 2.0.2) 1022 + slack-notifier (~> 1.2.0) 915 1023 spinach-rails (~> 0.2.1) 916 1024 spring (~> 1.3.6) 917 1025 spring-commands-rspec (~> 1.0.4) 918 1026 spring-commands-spinach (~> 1.0.0) 919 1027 spring-commands-teaspoon (~> 0.0.2) 920 1028 sprockets (~> 2.12.3) 921 - stamp (~> 0.5.0) 922 - state_machine (~> 1.2.0) 1029 + state_machines-activerecord (~> 0.3.0) 923 1030 task_list (~> 1.0.2) 924 1031 teaspoon (~> 1.0.0) 925 1032 teaspoon-jasmine (~> 2.2.0) 926 - test_after_commit (~> 0.2.2) 1033 + test_after_commit (~> 0.4.2) 927 1034 thin (~> 1.6.1) 928 - tinder (~> 1.9.2) 1035 + tinder (~> 1.10.0) 929 1036 turbolinks (~> 2.5.0) 930 - uglifier (~> 2.3.2) 931 - underscore-rails (~> 1.4.4) 1037 + uglifier (~> 2.7.2) 1038 + underscore-rails (~> 1.8.0) 932 1039 unf (~> 0.1.4) 933 1040 unicorn (~> 4.8.2) 934 1041 unicorn-worker-killer (~> 0.4.2) 935 1042 version_sorter (~> 2.0.0) 936 1043 virtus (~> 1.0.1) 1044 + web-console (~> 2.0) 937 1045 webmock (~> 1.21.0) 938 - whenever (~> 0.8.4) 939 1046 wikicloth (= 0.8.1) 1047 + 1048 + BUNDLED WITH 1049 + 1.11.2
+24 -10
pkgs/applications/version-management/gitlab/default.nix
··· 1 - { stdenv, lib, bundler, fetchgit, bundlerEnv, defaultGemConfig, libiconv, ruby 1 + { stdenv, lib, bundler, fetchFromGitHub, bundlerEnv, defaultGemConfig, libiconv, ruby 2 2 , tzdata, git, nodejs, procps 3 3 }: 4 + 5 + /* When updating the Gemfile add `gem "activerecord-nulldb-adapter"` 6 + to allow building the assets without a database */ 4 7 5 8 let 6 9 env = bundlerEnv { ··· 21 24 22 25 stdenv.mkDerivation rec { 23 26 name = "gitlab-${version}"; 24 - version = "8.0.5"; 27 + version = "8.5.0"; 28 + 25 29 buildInputs = [ ruby bundler tzdata git nodejs procps ]; 26 - src = fetchgit { 27 - url = "https://github.com/gitlabhq/gitlabhq.git"; 28 - rev = "2866c501b5a5abb69d101cc07261a1d684b4bd4c"; 29 - fetchSubmodules = false; 30 - sha256 = "edc6bedd5e79940189355d8cb343d20b0781b69fcef56ccae5906fa5e81ed521"; 30 + 31 + src = fetchFromGitHub { 32 + owner = "gitlabhq"; 33 + repo = "gitlabhq"; 34 + rev = "v${version}"; 35 + sha256 = "1rhl906xnvpxkw3ngwfzi80cl3daihx5vizy04b9b39adyd3i5hl"; 31 36 }; 32 37 33 38 patches = [ 34 39 ./remove-hardcoded-locations.patch 35 40 ./disable-dump-schema-after-migration.patch 41 + ./nulladapter.patch 36 42 ]; 43 + 37 44 postPatch = '' 38 45 # For reasons I don't understand "bundle exec" ignores the 39 46 # RAILS_ENV causing tests to be executed that fail because we're ··· 41 48 # tests works though.: 42 49 rm lib/tasks/test.rake 43 50 44 - mv config/gitlab.yml.example config/gitlab.yml 45 51 rm config/initializers/gitlab_shell_secret_token.rb 46 52 47 53 substituteInPlace app/controllers/admin/background_jobs_controller.rb \ ··· 50 56 # required for some gems: 51 57 cat > config/database.yml <<EOF 52 58 production: 53 - adapter: postgresql 59 + adapter: <%= ENV["GITLAB_DATABASE_ADAPTER"] || sqlite %> 54 60 database: gitlab 55 61 host: <%= ENV["GITLAB_DATABASE_HOST"] || "127.0.0.1" %> 56 62 password: <%= ENV["GITLAB_DATABASE_PASSWORD"] || "blerg" %> ··· 58 64 encoding: utf8 59 65 EOF 60 66 ''; 67 + 61 68 buildPhase = '' 62 69 export GEM_HOME=${env}/${ruby.gemPath} 63 - bundle exec rake assets:precompile RAILS_ENV=production 70 + mv config/gitlab.yml.example config/gitlab.yml 71 + GITLAB_DATABASE_ADAPTER=nulldb bundle exec rake assets:precompile RAILS_ENV=production 72 + mv config/gitlab.yml config/gitlab.yml.example 73 + mv config config.dist 64 74 ''; 75 + 65 76 installPhase = '' 66 77 mkdir -p $out/share 67 78 cp -r . $out/share/gitlab 79 + ln -sf /run/gitlab/uploads $out/share/gitlab/public/uploads 80 + ln -sf /run/gitlab/config $out/share/gitlab/config 68 81 ''; 82 + 69 83 passthru = { 70 84 inherit env; 71 85 inherit ruby;
+1679 -1820
pkgs/applications/version-management/gitlab/gemset.nix
··· 1 1 { 2 - "CFPropertyList" = { 3 - version = "2.3.1"; 2 + xpath = { 3 + dependencies = ["nokogiri"]; 4 4 source = { 5 + remotes = ["https://rubygems.org"]; 6 + sha256 = "04kcr127l34p7221z13blyl0dvh0bmxwx326j72idayri36a394w"; 5 7 type = "gem"; 6 - sha256 = "1wnk3gxnhfafbhgp0ic7qhzlx3lhv04v8nws2s31ii5s8135hs6k"; 7 8 }; 9 + version = "2.0.0"; 8 10 }; 9 - "RedCloth" = { 10 - version = "4.2.9"; 11 + xml-simple = { 11 12 source = { 13 + remotes = ["https://rubygems.org"]; 14 + sha256 = "0xlqplda3fix5pcykzsyzwgnbamb3qrqkgbrhhfz2a2fxhrkvhw8"; 12 15 type = "gem"; 13 - sha256 = "06pahxyrckhgb7alsxwhhlx1ib2xsx33793finj01jk8i054bkxl"; 14 16 }; 17 + version = "1.1.5"; 15 18 }; 16 - "ace-rails-ap" = { 17 - version = "2.0.1"; 19 + wikicloth = { 20 + dependencies = ["builder" "expression_parser" "rinku"]; 18 21 source = { 22 + remotes = ["https://rubygems.org"]; 23 + sha256 = "1jp6c2yzyqbap8jdiw8yz6l08sradky1llhyhmrg934l1b5akj3s"; 19 24 type = "gem"; 20 - sha256 = "082n12rkd9j7d89030nhmi4fx1gqaf13knps6cknsyvwix7fryvv"; 21 25 }; 26 + version = "0.8.1"; 22 27 }; 23 - "actionmailer" = { 24 - version = "4.1.12"; 28 + websocket-extensions = { 25 29 source = { 30 + remotes = ["https://rubygems.org"]; 31 + sha256 = "07qnsafl6203a2zclxl20hy4jq11c471cgvd0bj5r9fx1qqw06br"; 26 32 type = "gem"; 27 - sha256 = "0p1hydjf5vb4na4fs29v7cdknfq3d6qvmld2vbafbh78kkclxi2m"; 28 33 }; 29 - dependencies = [ 30 - "actionpack" 31 - "actionview" 32 - "mail" 33 - ]; 34 + version = "0.1.2"; 34 35 }; 35 - "actionpack" = { 36 - version = "4.1.12"; 36 + websocket-driver = { 37 + dependencies = ["websocket-extensions"]; 37 38 source = { 39 + remotes = ["https://rubygems.org"]; 40 + sha256 = "1v39w1ig6ps8g55xhz6x1w53apl17ii6kpy0jg9249akgpdvb0k9"; 38 41 type = "gem"; 39 - sha256 = "19bryymqlapsvn9df6q2ba4hvw9dwpp4fjc7i6lwffkadc4snkjy"; 40 42 }; 41 - dependencies = [ 42 - "actionview" 43 - "activesupport" 44 - "rack" 45 - "rack-test" 46 - ]; 43 + version = "0.6.3"; 47 44 }; 48 - "actionview" = { 49 - version = "4.1.12"; 45 + webmock = { 46 + dependencies = ["addressable" "crack"]; 50 47 source = { 48 + remotes = ["https://rubygems.org"]; 49 + sha256 = "1p7hqdxk5359xwp59pcx841fhbnqx01ra98rnwhdyz61nrc6piv3"; 51 50 type = "gem"; 52 - sha256 = "1bv8qifaqa514z64zgfw3r4i120h2swwgpfk79xlrac21q6ps70n"; 53 51 }; 54 - dependencies = [ 55 - "activesupport" 56 - "builder" 57 - "erubis" 58 - ]; 52 + version = "1.21.0"; 59 53 }; 60 - "activemodel" = { 61 - version = "4.1.12"; 54 + web-console = { 55 + dependencies = ["activemodel" "binding_of_caller" "railties" "sprockets-rails"]; 62 56 source = { 57 + remotes = ["https://rubygems.org"]; 58 + sha256 = "13rwps8m76j45iqhggm810j78i8bg4nqzgi8k7amxplik2zm5blf"; 63 59 type = "gem"; 64 - sha256 = "16429dg04s64g834svi7ghq486adr32gxr5p9kac2z6mjp8ggjr3"; 65 60 }; 66 - dependencies = [ 67 - "activesupport" 68 - "builder" 69 - ]; 61 + version = "2.2.1"; 70 62 }; 71 - "activerecord" = { 72 - version = "4.1.12"; 63 + warden = { 64 + dependencies = ["rack"]; 73 65 source = { 66 + remotes = ["https://rubygems.org"]; 67 + sha256 = "1iyxw1ms3930dh7vcrfyi4ifpdbkfsr8k7fzjryva0r7k3c71gb7"; 74 68 type = "gem"; 75 - sha256 = "1w3dbmbdk4whm5p1l6d2ky3xpl59lfcr9p3hwd41dz77ynpi5dr5"; 76 69 }; 77 - dependencies = [ 78 - "activemodel" 79 - "activesupport" 80 - "arel" 81 - ]; 70 + version = "1.2.4"; 82 71 }; 83 - "activerecord-deprecated_finders" = { 84 - version = "1.0.4"; 72 + virtus = { 73 + dependencies = ["axiom-types" "coercible" "descendants_tracker" "equalizer"]; 85 74 source = { 75 + remotes = ["https://rubygems.org"]; 76 + sha256 = "06iphwi3c4f7y9i2rvhvaizfswqbaflilziz4dxqngrdysgkn1fk"; 86 77 type = "gem"; 87 - sha256 = "03xplckz7v3nm6inqkwdd44h6gpbpql0v02jc1rz46a38rd6cj6m"; 88 78 }; 79 + version = "1.0.5"; 89 80 }; 90 - "activerecord-session_store" = { 91 - version = "0.1.1"; 81 + version_sorter = { 92 82 source = { 83 + remotes = ["https://rubygems.org"]; 84 + sha256 = "1lad9c43w2xfzmva57ia6glpmhyivyk1m79jli42canshvan5v6y"; 93 85 type = "gem"; 94 - sha256 = "15dgx7jjp8iqqzjq2q3a6fsmnhvjwspbsz1s1gd6zp744k6xbrjh"; 95 86 }; 96 - dependencies = [ 97 - "actionpack" 98 - "activerecord" 99 - "railties" 100 - ]; 87 + version = "2.0.0"; 101 88 }; 102 - "activeresource" = { 103 - version = "4.0.0"; 89 + uuid = { 90 + dependencies = ["macaddr"]; 104 91 source = { 92 + remotes = ["https://rubygems.org"]; 93 + sha256 = "0gr2mxg27l380wpiy66mgv9wq02myj6m4gmp6c4g1vsbzkh0213v"; 105 94 type = "gem"; 106 - sha256 = "0fc5igjijyjzsl9q5kybkdzhc92zv8wsv0ifb0y90i632jx6d4jq"; 107 95 }; 108 - dependencies = [ 109 - "activemodel" 110 - "activesupport" 111 - "rails-observers" 112 - ]; 96 + version = "2.3.8"; 113 97 }; 114 - "activesupport" = { 115 - version = "4.1.12"; 98 + uniform_notifier = { 116 99 source = { 100 + remotes = ["https://rubygems.org"]; 101 + sha256 = "009z60qx01am7klmrca8pcladrynljra3a9smifn9f81r4dc7q63"; 117 102 type = "gem"; 118 - sha256 = "166jvrmdwayacnrd4z3rs2d6y0av3xnc18k6120ah13c2ipw69hn"; 119 103 }; 120 - dependencies = [ 121 - "i18n" 122 - "json" 123 - "minitest" 124 - "thread_safe" 125 - "tzinfo" 126 - ]; 104 + version = "1.9.0"; 127 105 }; 128 - "acts-as-taggable-on" = { 129 - version = "3.5.0"; 106 + unicorn-worker-killer = { 107 + dependencies = ["get_process_mem" "unicorn"]; 130 108 source = { 109 + remotes = ["https://rubygems.org"]; 110 + sha256 = "0rrdxpwdsapx47axjin8ymxb4f685qlpx8a26bql4ay1559c3gva"; 131 111 type = "gem"; 132 - sha256 = "0bz0z8dlp3fjzah9y9b6rr9mkidsav9l4hdm51fnq1gd05yv3pr7"; 133 112 }; 134 - dependencies = [ 135 - "activerecord" 136 - ]; 113 + version = "0.4.4"; 137 114 }; 138 - "addressable" = { 139 - version = "2.3.8"; 115 + unicorn = { 116 + dependencies = ["kgio" "rack" "raindrops"]; 140 117 source = { 118 + remotes = ["https://rubygems.org"]; 119 + sha256 = "1kpg2vikx2hxdyrl45bqcr89a0w59hfw7yn7xh87bmlczi34xds4"; 141 120 type = "gem"; 142 - sha256 = "1533axm85gpz267km9gnfarf9c78g2scrysd6b8yw33vmhkz2km6"; 143 121 }; 122 + version = "4.8.3"; 144 123 }; 145 - "after_commit_queue" = { 146 - version = "1.1.0"; 124 + unf_ext = { 147 125 source = { 126 + remotes = ["https://rubygems.org"]; 127 + sha256 = "0ly2ms6c3irmbr1575ldyh52bz2v0lzzr2gagf0p526k12ld2n5b"; 148 128 type = "gem"; 149 - sha256 = "0m7qwbzvxb2xqramf38pzg8ld91s4cy2v0fs26dnmnqr1jf11z4y"; 150 129 }; 151 - dependencies = [ 152 - "rails" 153 - ]; 130 + version = "0.0.7.1"; 154 131 }; 155 - "annotate" = { 156 - version = "2.6.10"; 132 + unf = { 133 + dependencies = ["unf_ext"]; 157 134 source = { 135 + remotes = ["https://rubygems.org"]; 136 + sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9"; 158 137 type = "gem"; 159 - sha256 = "1wdw9phsv2dndgid3pd8h0hl4zycwy11jc9iz6prwza0xax0i7hg"; 160 138 }; 161 - dependencies = [ 162 - "activerecord" 163 - "rake" 164 - ]; 139 + version = "0.1.4"; 165 140 }; 166 - "arel" = { 167 - version = "5.0.1.20140414130214"; 141 + underscore-rails = { 168 142 source = { 143 + remotes = ["https://rubygems.org"]; 144 + sha256 = "0iyspb7s49wpi9cc314gvlkyn45iyfivzxhdw0kql1zrgllhlzfk"; 169 145 type = "gem"; 170 - sha256 = "0dhnc20h1v8ml3nmkxq92rr7qxxpk6ixhwvwhgl2dbw9mmxz0hf9"; 171 146 }; 147 + version = "1.8.3"; 172 148 }; 173 - "asana" = { 174 - version = "0.0.6"; 149 + uglifier = { 150 + dependencies = ["execjs" "json"]; 175 151 source = { 152 + remotes = ["https://rubygems.org"]; 153 + sha256 = "0mzs64z3m1b98rh6ssxpqfz9sc87f6ml6906b0m57vydzfgrh1cz"; 176 154 type = "gem"; 177 - sha256 = "1x325pywh3d91qrg916gh8i5g13h4qzgi03zc93x6v4m4rj79dcp"; 178 155 }; 179 - dependencies = [ 180 - "activeresource" 181 - ]; 156 + version = "2.7.2"; 182 157 }; 183 - "asciidoctor" = { 184 - version = "1.5.2"; 158 + tzinfo = { 159 + dependencies = ["thread_safe"]; 185 160 source = { 161 + remotes = ["https://rubygems.org"]; 162 + sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx"; 186 163 type = "gem"; 187 - sha256 = "0hs99bjvnf1nw49nwq62mi5x65x2jlvwqa0xllsi3zfikafsm1y9"; 188 164 }; 165 + version = "1.2.2"; 189 166 }; 190 - "ast" = { 191 - version = "2.1.0"; 167 + twitter-stream = { 168 + dependencies = ["eventmachine" "http_parser.rb" "simple_oauth"]; 192 169 source = { 170 + remotes = ["https://rubygems.org"]; 171 + sha256 = "0is81g3xvnjk64sqiaqlh2ziwfryzwvk1yvaniryg0zhppgsyriq"; 193 172 type = "gem"; 194 - sha256 = "102bywfxrv0w3n4s6lg25d7xxshd344sc7ijslqmganj5bany1pk"; 195 173 }; 174 + version = "0.1.16"; 196 175 }; 197 - "astrolabe" = { 198 - version = "1.3.1"; 176 + turbolinks = { 177 + dependencies = ["coffee-rails"]; 199 178 source = { 179 + remotes = ["https://rubygems.org"]; 180 + sha256 = "1ddrx25vvvqxlz4h59lrmjhc2bfwxf4bpicvyhgbpjd48ckj81jn"; 200 181 type = "gem"; 201 - sha256 = "0ybbmjxaf529vvhrj4y8d4jpf87f3hgczydzywyg1d04gggjx7l7"; 202 182 }; 203 - dependencies = [ 204 - "parser" 205 - ]; 183 + version = "2.5.3"; 206 184 }; 207 - "attr_encrypted" = { 208 - version = "1.3.4"; 185 + tins = { 209 186 source = { 187 + remotes = ["https://rubygems.org"]; 188 + sha256 = "02qarvy17nbwvslfgqam8y6y7479cwmb1a6di9z18hzka4cf90hz"; 210 189 type = "gem"; 211 - sha256 = "1hm2844qm37kflqq5v0x2irwasbhcblhp40qk10m3wlkj4m9wp8p"; 212 190 }; 213 - dependencies = [ 214 - "encryptor" 215 - ]; 191 + version = "1.6.0"; 216 192 }; 217 - "attr_required" = { 218 - version = "1.0.0"; 193 + tinder = { 194 + dependencies = ["eventmachine" "faraday" "faraday_middleware" "hashie" "json" "mime-types" "multi_json" "twitter-stream"]; 219 195 source = { 196 + remotes = ["https://rubygems.org"]; 197 + sha256 = "1kwj0wd540wb2ws86d3jdva175dx00w2j8lyrvbb6qli3g27byd7"; 220 198 type = "gem"; 221 - sha256 = "0pawa2i7gw9ppj6fq6y288da1ncjpzsmc6kx7z63mjjvypa5q3dc"; 222 199 }; 200 + version = "1.10.1"; 223 201 }; 224 - "autoprefixer-rails" = { 225 - version = "5.2.1.2"; 202 + timfel-krb5-auth = { 226 203 source = { 204 + remotes = ["https://rubygems.org"]; 205 + sha256 = "105vajc0jkqgcx1wbp0ad262sdry4l1irk7jpaawv8vzfjfqqf5b"; 227 206 type = "gem"; 228 - sha256 = "129kr8hiyzcnj4x3n14nnp7f7scps9v3d690i7fjzpq8i4n9gz8g"; 229 207 }; 230 - dependencies = [ 231 - "execjs" 232 - "json" 233 - ]; 208 + version = "0.8.3"; 234 209 }; 235 - "awesome_print" = { 236 - version = "1.2.0"; 210 + tilt = { 237 211 source = { 212 + remotes = ["https://rubygems.org"]; 213 + sha256 = "00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir"; 238 214 type = "gem"; 239 - sha256 = "1k85hckprq0s9pakgadf42k1d5s07q23m3y6cs977i6xmwdivyzr"; 240 215 }; 216 + version = "1.4.1"; 241 217 }; 242 - "axiom-types" = { 243 - version = "0.1.1"; 218 + thread_safe = { 244 219 source = { 220 + remotes = ["https://rubygems.org"]; 221 + sha256 = "1hq46wqsyylx5afkp6jmcihdpv4ynzzq9ygb6z2pb1cbz5js0gcr"; 245 222 type = "gem"; 246 - sha256 = "10q3k04pll041mkgy0m5fn2b1lazm6ly1drdbcczl5p57lzi3zy1"; 247 223 }; 248 - dependencies = [ 249 - "descendants_tracker" 250 - "ice_nine" 251 - "thread_safe" 252 - ]; 224 + version = "0.3.5"; 253 225 }; 254 - "bcrypt" = { 255 - version = "3.1.10"; 226 + thor = { 256 227 source = { 228 + remotes = ["https://rubygems.org"]; 229 + sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z"; 257 230 type = "gem"; 258 - sha256 = "15cf7zzlj9b0xcx12jf8fmnpc8g1b0yhxal1yr5p7ny3mrz5pll6"; 259 231 }; 232 + version = "0.19.1"; 260 233 }; 261 - "better_errors" = { 262 - version = "1.0.1"; 234 + thin = { 235 + dependencies = ["daemons" "eventmachine" "rack"]; 263 236 source = { 237 + remotes = ["https://rubygems.org"]; 238 + sha256 = "1pyc602sa8fqwjyssn9yvf3fqrr14jk7hj9hsjlan1mq4zvim1lf"; 264 239 type = "gem"; 265 - sha256 = "0v0q8bdkqqlcsfqbk4wvc3qnz8an44mgz720v5f11a4nr413mjgf"; 266 240 }; 267 - dependencies = [ 268 - "coderay" 269 - "erubis" 270 - ]; 241 + version = "1.6.4"; 271 242 }; 272 - "binding_of_caller" = { 273 - version = "0.7.2"; 243 + test_after_commit = { 244 + dependencies = ["activerecord"]; 274 245 source = { 246 + remotes = ["https://rubygems.org"]; 247 + sha256 = "1fzg8qan6f0n0ynr594bld2k0rwwxj99yzhiga2f3pkj9ina1abb"; 275 248 type = "gem"; 276 - sha256 = "15jg6dkaq2nzcd602d7ppqbdxw3aji961942w93crs6qw4n6h9yk"; 277 249 }; 278 - dependencies = [ 279 - "debug_inspector" 280 - ]; 250 + version = "0.4.2"; 281 251 }; 282 - "bootstrap-sass" = { 283 - version = "3.3.5"; 252 + terminal-table = { 284 253 source = { 254 + remotes = ["https://rubygems.org"]; 255 + sha256 = "1s6qyj9ir1agbbi32li9c0c34dcl0klyxqif6mxy0dbvq7kqfp8f"; 285 256 type = "gem"; 286 - sha256 = "0gnbl3jfi7x491kb5b2brhqr981wzg6r9sc907anhq9y727d96iv"; 287 257 }; 288 - dependencies = [ 289 - "autoprefixer-rails" 290 - "sass" 291 - ]; 258 + version = "1.5.2"; 292 259 }; 293 - "brakeman" = { 294 - version = "3.0.1"; 260 + term-ansicolor = { 261 + dependencies = ["tins"]; 295 262 source = { 263 + remotes = ["https://rubygems.org"]; 264 + sha256 = "0ydbbyjmk5p7fsi55ffnkq79jnfqx65c3nj8d9rpgl6sw85ahyys"; 296 265 type = "gem"; 297 - sha256 = "0c3pwqhan5qpkmymmp4zpr6j1v3xrvvla9adsd0z9nx1dbc7llry"; 298 266 }; 299 - dependencies = [ 300 - "erubis" 301 - "fastercsv" 302 - "haml" 303 - "highline" 304 - "multi_json" 305 - "ruby2ruby" 306 - "ruby_parser" 307 - "sass" 308 - "terminal-table" 309 - ]; 267 + version = "1.3.2"; 310 268 }; 311 - "browser" = { 312 - version = "1.0.0"; 269 + temple = { 313 270 source = { 271 + remotes = ["https://rubygems.org"]; 272 + sha256 = "0ysraljv7lkb04z5vdyrkijab7j1jzj1mgz4bj82744dp7d0rhb0"; 314 273 type = "gem"; 315 - sha256 = "03pmj759wngl03lacn8mdhjn6mc5f8zn08mz6k5hq8czgwcwhjxi"; 316 274 }; 275 + version = "0.7.6"; 317 276 }; 318 - "builder" = { 319 - version = "3.2.2"; 277 + teaspoon-jasmine = { 278 + dependencies = ["teaspoon"]; 320 279 source = { 280 + remotes = ["https://rubygems.org"]; 281 + sha256 = "00wygrv1jm4aj15p1ab9d5fdrj6y83kv26xgp52mx4lp78h2ms9q"; 321 282 type = "gem"; 322 - sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2"; 323 283 }; 284 + version = "2.2.0"; 324 285 }; 325 - "byebug" = { 326 - version = "6.0.2"; 286 + teaspoon = { 287 + dependencies = ["railties"]; 327 288 source = { 289 + remotes = ["https://rubygems.org"]; 290 + sha256 = "0cprz18vgf0jgcggcxf4pwx8jcwbiyj1p0dnck5aavlvaxaic58s"; 328 291 type = "gem"; 329 - sha256 = "0537h9qbhr6csahmzyn4lk1g5b2lcligbzd21gfy93nx9lbfdnzc"; 330 292 }; 293 + version = "1.0.2"; 331 294 }; 332 - "cal-heatmap-rails" = { 333 - version = "0.0.1"; 295 + task_list = { 296 + dependencies = ["html-pipeline"]; 334 297 source = { 298 + remotes = ["https://rubygems.org"]; 299 + sha256 = "1iv1fizb04463c4mp4gxd8v0414fhvmiwvwvjby5b9qq79d8zwab"; 335 300 type = "gem"; 336 - sha256 = "07qp74hi1612xgmkfvk1dmc4n79lc7dfkcgqjprnlwb6nkqa940m"; 337 301 }; 302 + version = "1.0.2"; 338 303 }; 339 - "capybara" = { 340 - version = "2.4.4"; 304 + systemu = { 341 305 source = { 306 + remotes = ["https://rubygems.org"]; 307 + sha256 = "0gmkbakhfci5wnmbfx5i54f25j9zsvbw858yg3jjhfs5n4ad1xq1"; 342 308 type = "gem"; 343 - sha256 = "114k4xi4nfbp3jfbxgwa3fksbwsyibx74gbdqpcgg3dxpmzkaa4f"; 344 309 }; 345 - dependencies = [ 346 - "mime-types" 347 - "nokogiri" 348 - "rack" 349 - "rack-test" 350 - "xpath" 351 - ]; 310 + version = "2.6.5"; 352 311 }; 353 - "capybara-screenshot" = { 354 - version = "1.0.11"; 312 + stringex = { 355 313 source = { 314 + remotes = ["https://rubygems.org"]; 315 + sha256 = "150adm7rfh6r9b5ra6vk75mswf9m3wwyslcf8f235a08m29fxa17"; 356 316 type = "gem"; 357 - sha256 = "17v1wihr3aqrxhrwswkdpdklj1xsfcaksblh1y8hixvm9bqfyz3y"; 358 317 }; 359 - dependencies = [ 360 - "capybara" 361 - "launchy" 362 - ]; 318 + version = "2.5.2"; 363 319 }; 364 - "carrierwave" = { 365 - version = "0.9.0"; 320 + state_machines-activerecord = { 321 + dependencies = ["activerecord" "state_machines-activemodel"]; 366 322 source = { 323 + remotes = ["https://rubygems.org"]; 324 + sha256 = "10dplkn4cm49xby8s0sn7wxww4hnxi4dgikfsmhp1rbsa24d76vx"; 367 325 type = "gem"; 368 - sha256 = "1b1av1ancby6brhmypl5k8xwrasd8bd3kqp9ri8kbq7z8nj6k445"; 369 326 }; 370 - dependencies = [ 371 - "activemodel" 372 - "activesupport" 373 - "json" 374 - ]; 327 + version = "0.3.0"; 375 328 }; 376 - "celluloid" = { 377 - version = "0.16.0"; 329 + state_machines-activemodel = { 330 + dependencies = ["activemodel" "state_machines"]; 378 331 source = { 332 + remotes = ["https://rubygems.org"]; 333 + sha256 = "1bshcm53v2vfpapvhws1h0dq1h4f3p6bvpdkjpydb52a3m0w2z0y"; 379 334 type = "gem"; 380 - sha256 = "044xk0y7i1xjafzv7blzj5r56s7zr8nzb619arkrl390mf19jxv3"; 381 335 }; 382 - dependencies = [ 383 - "timers" 384 - ]; 336 + version = "0.3.0"; 385 337 }; 386 - "charlock_holmes" = { 387 - version = "0.6.9.4"; 338 + state_machines = { 388 339 source = { 340 + remotes = ["https://rubygems.org"]; 341 + sha256 = "1xg84kdglz0k1pshf2q604zybjpribzcz2b651sc1j27kd86w787"; 389 342 type = "gem"; 390 - sha256 = "1vyzsr3r2bwig9knyhay1m7i828w9x5zhma44iajyrbs1ypvfbg5"; 391 343 }; 344 + version = "0.4.0"; 392 345 }; 393 - "chronic" = { 394 - version = "0.10.2"; 346 + sprockets-rails = { 347 + dependencies = ["actionpack" "activesupport" "sprockets"]; 395 348 source = { 349 + remotes = ["https://rubygems.org"]; 350 + sha256 = "1vsl6ryxdjpp97nl4ghhk1v6p50zh3sx9qv81bhmlffc234r91wn"; 396 351 type = "gem"; 397 - sha256 = "1hrdkn4g8x7dlzxwb1rfgr8kw3bp4ywg5l4y4i9c2g5cwv62yvvn"; 398 352 }; 353 + version = "2.3.3"; 399 354 }; 400 - "chunky_png" = { 401 - version = "1.3.4"; 355 + sprockets = { 356 + dependencies = ["hike" "multi_json" "rack" "tilt"]; 402 357 source = { 358 + remotes = ["https://rubygems.org"]; 359 + sha256 = "15818683yz27w4hgywccf27n91azy9a4nmb5qkklzb08k8jw9gp3"; 403 360 type = "gem"; 404 - sha256 = "0n5xhkj3vffihl3h9s8yjzazqaqcm4p1nyxa1w2dk3fkpzvb0wfw"; 405 361 }; 362 + version = "2.12.4"; 406 363 }; 407 - "cliver" = { 408 - version = "0.3.2"; 364 + spring-commands-teaspoon = { 365 + dependencies = ["spring"]; 409 366 source = { 367 + remotes = ["https://rubygems.org"]; 368 + sha256 = "1g7n4m2s9d0frh7y1xibzpphqajfnx4fvgfc66nh545dd91w2nqz"; 410 369 type = "gem"; 411 - sha256 = "096f4rj7virwvqxhkavy0v55rax10r4jqf8cymbvn4n631948xc7"; 412 370 }; 371 + version = "0.0.2"; 413 372 }; 414 - "coderay" = { 415 - version = "1.1.0"; 373 + spring-commands-spinach = { 374 + dependencies = ["spring"]; 416 375 source = { 376 + remotes = ["https://rubygems.org"]; 377 + sha256 = "138jardqyj96wz68njdgy55qjbpl2d0g8bxbkz97ndaz3c2bykv9"; 417 378 type = "gem"; 418 - sha256 = "059wkzlap2jlkhg460pkwc1ay4v4clsmg1bp4vfzjzkgwdckr52s"; 419 379 }; 380 + version = "1.0.0"; 420 381 }; 421 - "coercible" = { 422 - version = "1.0.0"; 382 + spring-commands-rspec = { 383 + dependencies = ["spring"]; 423 384 source = { 385 + remotes = ["https://rubygems.org"]; 386 + sha256 = "0b0svpq3md1pjz5drpa5pxwg8nk48wrshq8lckim4x3nli7ya0k2"; 424 387 type = "gem"; 425 - sha256 = "1p5azydlsz0nkxmcq0i1gzmcfq02lgxc4as7wmf47j1c6ljav0ah"; 426 388 }; 427 - dependencies = [ 428 - "descendants_tracker" 429 - ]; 389 + version = "1.0.4"; 430 390 }; 431 - "coffee-rails" = { 432 - version = "4.1.0"; 391 + spring = { 433 392 source = { 393 + remotes = ["https://rubygems.org"]; 394 + sha256 = "0xvz2x6nvza5i53p7mddnf11j2wshqmbaphi6ngd6nar8v35y0k1"; 434 395 type = "gem"; 435 - sha256 = "0p3zhs44gsy1p90nmghihzfyl7bsk8kv6j3q7rj3bn74wg8w7nqs"; 436 396 }; 437 - dependencies = [ 438 - "coffee-script" 439 - "railties" 440 - ]; 397 + version = "1.3.6"; 441 398 }; 442 - "coffee-script" = { 443 - version = "2.4.1"; 399 + spinach-rails = { 400 + dependencies = ["capybara" "railties" "spinach"]; 444 401 source = { 402 + remotes = ["https://rubygems.org"]; 403 + sha256 = "1nfacfylkncfgi59g2wga6m4nzdcjqb8s50cax4nbx362ap4bl70"; 445 404 type = "gem"; 446 - sha256 = "0rc7scyk7mnpfxqv5yy4y5q1hx3i7q3ahplcp4bq2g5r24g2izl2"; 447 405 }; 448 - dependencies = [ 449 - "coffee-script-source" 450 - "execjs" 451 - ]; 406 + version = "0.2.1"; 452 407 }; 453 - "coffee-script-source" = { 454 - version = "1.9.1.1"; 408 + spinach = { 409 + dependencies = ["colorize" "gherkin-ruby" "json"]; 455 410 source = { 411 + remotes = ["https://rubygems.org"]; 412 + sha256 = "0phfjs4iw2iqxdaljzwk6qxmi2x86pl3hirmpgw2pgfx76wfx688"; 456 413 type = "gem"; 457 - sha256 = "1arfrwyzw4sn7nnaq8jji5sv855rp4c5pvmzkabbdgca0w1cxfq5"; 458 414 }; 415 + version = "0.8.10"; 459 416 }; 460 - "colored" = { 461 - version = "1.2"; 417 + slop = { 462 418 source = { 419 + remotes = ["https://rubygems.org"]; 420 + sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n"; 463 421 type = "gem"; 464 - sha256 = "0b0x5jmsyi0z69bm6sij1k89z7h0laag3cb4mdn7zkl9qmxb90lx"; 465 422 }; 423 + version = "3.6.0"; 466 424 }; 467 - "colorize" = { 468 - version = "0.5.8"; 425 + slim = { 426 + dependencies = ["temple" "tilt"]; 469 427 source = { 428 + remotes = ["https://rubygems.org"]; 429 + sha256 = "1szs71hh0msm5gj6qbcxw44m3hqnwybx4yh02scwixnwg576058k"; 470 430 type = "gem"; 471 - sha256 = "1rfzvscnk2js87zzwjgg2lk6h6mrv9448z5vx3b8vnm9yrb2qg8g"; 472 431 }; 432 + version = "3.0.6"; 473 433 }; 474 - "connection_pool" = { 475 - version = "2.2.0"; 434 + slack-notifier = { 476 435 source = { 436 + remotes = ["https://rubygems.org"]; 437 + sha256 = "08z6fv186yw1nrpl6zwp3lwqksin145aa1jv6jf00bnv3sicliiz"; 477 438 type = "gem"; 478 - sha256 = "1b2bb3k39ni5mzcnqlv9y4yjkbin20s7dkwzp0jw2jf1rmzcgrmy"; 479 439 }; 440 + version = "1.2.1"; 480 441 }; 481 - "coveralls" = { 482 - version = "0.8.2"; 442 + six = { 483 443 source = { 444 + remotes = ["https://rubygems.org"]; 445 + sha256 = "1bhapiyjh5r5qjpclfw8i65plvy6k2q4azr5xir63xqglr53viw3"; 484 446 type = "gem"; 485 - sha256 = "0ds63q3g8zp23813hsvjjqpjglwr76ld4zqbbdhc9ads9l988axz"; 486 447 }; 487 - dependencies = [ 488 - "json" 489 - "rest-client" 490 - "simplecov" 491 - "term-ansicolor" 492 - "thor" 493 - ]; 448 + version = "0.2.0"; 494 449 }; 495 - "crack" = { 496 - version = "0.4.2"; 450 + sinatra = { 451 + dependencies = ["rack" "rack-protection" "tilt"]; 497 452 source = { 453 + remotes = ["https://rubygems.org"]; 454 + sha256 = "1hhmwqc81ram7lfwwziv0z70jh92sj1m7h7s9fr0cn2xq8mmn8l7"; 498 455 type = "gem"; 499 - sha256 = "1il94m92sz32nw5i6hdq14f1a2c3s9hza9zn6l95fvqhabq38k7a"; 500 456 }; 501 - dependencies = [ 502 - "safe_yaml" 503 - ]; 457 + version = "1.4.6"; 504 458 }; 505 - "creole" = { 506 - version = "0.3.8"; 459 + simplecov-html = { 507 460 source = { 461 + remotes = ["https://rubygems.org"]; 462 + sha256 = "1qni8g0xxglkx25w54qcfbi4wjkpvmb28cb7rj5zk3iqynjcdrqf"; 508 463 type = "gem"; 509 - sha256 = "1wwqk5ij4r5rhzbzhnpqwbn9ck56qgyjs02pjmi2wh46gs8dmkl8"; 510 464 }; 465 + version = "0.10.0"; 511 466 }; 512 - "d3_rails" = { 513 - version = "3.5.6"; 467 + simplecov = { 468 + dependencies = ["docile" "json" "simplecov-html"]; 514 469 source = { 470 + remotes = ["https://rubygems.org"]; 471 + sha256 = "1q2iq2vgrdvvla5y907gkmqx6ry2qvnvc7a90hlcbwgp1w0sv6z4"; 515 472 type = "gem"; 516 - sha256 = "0faz49chi08zxqwwdzzcb468gmcfmpv1s58y4c431kpa6kyh8qsm"; 517 473 }; 518 - dependencies = [ 519 - "railties" 520 - ]; 474 + version = "0.10.0"; 521 475 }; 522 - "daemons" = { 523 - version = "1.2.3"; 476 + simple_oauth = { 524 477 source = { 478 + remotes = ["https://rubygems.org"]; 479 + sha256 = "0bb06p88xsdw4fxll1ikv5i5k58sl6y323ss0wp1hqjm3xw1jgvj"; 525 480 type = "gem"; 526 - sha256 = "0b839hryy9sg7x3knsa1d6vfiyvn0mlsnhsb6an8zsalyrz1zgqg"; 527 481 }; 482 + version = "0.1.9"; 528 483 }; 529 - "database_cleaner" = { 530 - version = "1.4.1"; 484 + sidekiq-cron = { 485 + dependencies = ["redis-namespace" "rufus-scheduler" "sidekiq"]; 531 486 source = { 487 + remotes = ["https://rubygems.org"]; 488 + sha256 = "0xnbvh8kjv6954vsiwfcpp7bn8sgpwvnyapnq7b94w8h7kj3ykqy"; 532 489 type = "gem"; 533 - sha256 = "0n5r7kvsmknk876v3scdphfnvllr9157fa5q7j5fczg8j5qm6kf0"; 534 490 }; 491 + version = "0.4.0"; 535 492 }; 536 - "debug_inspector" = { 537 - version = "0.0.2"; 493 + sidekiq = { 494 + dependencies = ["concurrent-ruby" "connection_pool" "json" "redis"]; 538 495 source = { 496 + remotes = ["https://rubygems.org"]; 497 + sha256 = "1x7jfc2va0x6fcfffdf0wdiyk4krjw8053jzwffa63wkqr5jvg3y"; 539 498 type = "gem"; 540 - sha256 = "109761g00dbrw5q0dfnbqg8blfm699z4jj70l4zrgf9mzn7ii50m"; 541 499 }; 500 + version = "4.0.1"; 542 501 }; 543 - "default_value_for" = { 544 - version = "3.0.1"; 502 + shoulda-matchers = { 503 + dependencies = ["activesupport"]; 545 504 source = { 505 + remotes = ["https://rubygems.org"]; 506 + sha256 = "0d3ryqcsk1n9y35bx5wxnqbgw4m8b3c79isazdjnnbg8crdp72d0"; 546 507 type = "gem"; 547 - sha256 = "1z4lrba4y1c3y0rxw8321qbwsb3nr6c2igrpksfvz93yhc9m6xm0"; 548 508 }; 549 - dependencies = [ 550 - "activerecord" 551 - ]; 509 + version = "2.8.0"; 552 510 }; 553 - "descendants_tracker" = { 554 - version = "0.0.4"; 511 + sham_rack = { 512 + dependencies = ["rack"]; 555 513 source = { 514 + remotes = ["https://rubygems.org"]; 515 + sha256 = "0zs6hpgg87x5jrykjxgfp2i7m5aja53s5kamdhxam16wki1hid3i"; 556 516 type = "gem"; 557 - sha256 = "15q8g3fcqyb41qixn6cky0k3p86291y7xsh1jfd851dvrza1vi79"; 558 517 }; 559 - dependencies = [ 560 - "thread_safe" 561 - ]; 518 + version = "1.3.6"; 562 519 }; 563 - "devise" = { 564 - version = "3.5.2"; 520 + sexp_processor = { 565 521 source = { 522 + remotes = ["https://rubygems.org"]; 523 + sha256 = "0gxlcpg81wfjf5gpggf8h6l2dbq3ikgavbrr2yfw3m2vqy88yjg2"; 566 524 type = "gem"; 567 - sha256 = "1wj88i2hyhcnifj606vzgf2q68yhcpyrsx7bc11h93cma51z59c3"; 568 525 }; 569 - dependencies = [ 570 - "bcrypt" 571 - "orm_adapter" 572 - "railties" 573 - "responders" 574 - "thread_safe" 575 - "warden" 576 - ]; 526 + version = "4.6.0"; 577 527 }; 578 - "devise-async" = { 579 - version = "0.9.0"; 528 + settingslogic = { 580 529 source = { 530 + remotes = ["https://rubygems.org"]; 531 + sha256 = "1ria5zcrk1nf0b9yia15mdpzw0dqr6wjpbj8dsdbbps81lfsj9ar"; 581 532 type = "gem"; 582 - sha256 = "11llg7ggzpmg4lb9gh4sx55spvp98sal5r803gjzamps9crfq6mm"; 583 533 }; 584 - dependencies = [ 585 - "devise" 586 - ]; 534 + version = "2.0.9"; 587 535 }; 588 - "devise-two-factor" = { 589 - version = "2.0.0"; 536 + sentry-raven = { 590 537 source = { 538 + remotes = ["https://rubygems.org"]; 539 + sha256 = "1h0w2ip02zcd3krpddn54vssd7asnbj823r4mlzzqpp28q3r3mcm"; 591 540 type = "gem"; 592 - sha256 = "1xzaagz6fr9cbq7cj8g7sahx6sxxsc1jyja462caa0gjang9yrhr"; 593 541 }; 594 - dependencies = [ 595 - "activesupport" 596 - "attr_encrypted" 597 - "devise" 598 - "railties" 599 - "rotp" 600 - ]; 542 + version = "0.15.4"; 601 543 }; 602 - "diff-lcs" = { 603 - version = "1.2.5"; 544 + select2-rails = { 545 + dependencies = ["thor"]; 604 546 source = { 547 + remotes = ["https://rubygems.org"]; 548 + sha256 = "0ni2k74n73y3gv56gs37gkjlh912szjf6k9j483wz41m3xvlz7fj"; 605 549 type = "gem"; 606 - sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1"; 607 550 }; 551 + version = "3.5.9.3"; 608 552 }; 609 - "diffy" = { 610 - version = "3.0.7"; 553 + seed-fu = { 554 + dependencies = ["activerecord" "activesupport"]; 611 555 source = { 556 + remotes = ["https://rubygems.org"]; 557 + sha256 = "11xja82yxir1kwccrzng29h7w911i9j0xj2y7y949yqnw91v12vw"; 612 558 type = "gem"; 613 - sha256 = "0il0ri511g9rm88qbvncbzgwc6wk6265hmnf7grcczmrs1z49vl0"; 614 559 }; 560 + version = "2.3.5"; 615 561 }; 616 - "docile" = { 617 - version = "1.1.5"; 562 + sdoc = { 563 + dependencies = ["json" "rdoc"]; 618 564 source = { 565 + remotes = ["https://rubygems.org"]; 566 + sha256 = "17l8qk0ld47z4h5avcnylvds8nc6dp25zc64w23z8li2hs341xf2"; 619 567 type = "gem"; 620 - sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx"; 621 568 }; 569 + version = "0.3.20"; 622 570 }; 623 - "domain_name" = { 624 - version = "0.5.24"; 571 + sawyer = { 572 + dependencies = ["addressable" "faraday"]; 625 573 source = { 574 + remotes = ["https://rubygems.org"]; 575 + sha256 = "0fk43bzwn816qj1ksiicm2i1kmzv5675cmnvk57kmfmi4rfsyjpy"; 626 576 type = "gem"; 627 - sha256 = "1xjm5arwc35wryn0hbfldx2pfhwx5qilkv7yms4kz0jri3m6mgcc"; 628 577 }; 629 - dependencies = [ 630 - "unf" 631 - ]; 578 + version = "0.6.0"; 632 579 }; 633 - "doorkeeper" = { 634 - version = "2.1.4"; 580 + sass-rails = { 581 + dependencies = ["railties" "sass" "sprockets" "sprockets-rails" "tilt"]; 635 582 source = { 583 + remotes = ["https://rubygems.org"]; 584 + sha256 = "1f6357vw944w2ayayqmz8ai9myl6xbnry06sx5b5ms4r9lny8hj8"; 636 585 type = "gem"; 637 - sha256 = "00akgshmz85kxvf35qsag80qbxzjvmkmksjy96zx44ckianxwahl"; 638 586 }; 639 - dependencies = [ 640 - "railties" 641 - ]; 587 + version = "5.0.4"; 642 588 }; 643 - "dropzonejs-rails" = { 644 - version = "0.7.1"; 589 + sass = { 645 590 source = { 591 + remotes = ["https://rubygems.org"]; 592 + sha256 = "04rpdcp258arh2wgdk9shbqnzd6cbbbpi3wpi9a0wby8awgpxmyf"; 646 593 type = "gem"; 647 - sha256 = "0spfjkji6v98996bc320sx3ar3sflkpbjpzwg6cvbycwfn29fjfy"; 648 594 }; 649 - dependencies = [ 650 - "rails" 651 - ]; 595 + version = "3.4.20"; 652 596 }; 653 - "email_reply_parser" = { 654 - version = "0.5.8"; 597 + sanitize = { 598 + dependencies = ["nokogiri"]; 655 599 source = { 600 + remotes = ["https://rubygems.org"]; 601 + sha256 = "0xsv6xqrlz91rd8wifjknadbl3z5h6qphmxy0hjb189qbdghggn3"; 656 602 type = "gem"; 657 - sha256 = "0k2p229mv7xn7q627zwmvhrcvba4b9m70pw2jfjm6iimg2vmf22r"; 658 603 }; 604 + version = "2.1.0"; 659 605 }; 660 - "email_spec" = { 661 - version = "1.6.0"; 606 + safe_yaml = { 662 607 source = { 608 + remotes = ["https://rubygems.org"]; 609 + sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094"; 663 610 type = "gem"; 664 - sha256 = "00p1cc69ncrgg7m45va43pszip8anx5735w1lsb7p5ygkyw8nnpv"; 665 611 }; 666 - dependencies = [ 667 - "launchy" 668 - "mail" 669 - ]; 612 + version = "1.0.4"; 670 613 }; 671 - "encryptor" = { 672 - version = "1.3.0"; 614 + rugged = { 615 + version = "0.24.0b13"; 673 616 source = { 674 617 type = "gem"; 675 - sha256 = "04wqqda081h7hmhwjjx1yqxprxjk8s5jgv837xqv1bpxiv7f4v1y"; 618 + remotes = ["https://rubygems.org"]; 619 + sha256 = "0v0cvdw8cgy1hf5h3cx796zpxhbad8d5cm50nykyhwjc00q80zrr"; 676 620 }; 677 621 }; 678 - "enumerize" = { 679 - version = "0.7.0"; 622 + rufus-scheduler = { 680 623 source = { 624 + remotes = ["https://rubygems.org"]; 625 + sha256 = "04bmvvvri7ni7dvlq3gi1y553f6rp6bw2kmdfp9ny5bh3l7qayrh"; 681 626 type = "gem"; 682 - sha256 = "0rg6bm3xv7p4i5gs4796v8gc49mzakphwv4kdbhn0wjm690h6226"; 683 627 }; 684 - dependencies = [ 685 - "activesupport" 686 - ]; 628 + version = "3.1.10"; 687 629 }; 688 - "equalizer" = { 689 - version = "0.0.11"; 630 + rubypants = { 690 631 source = { 632 + remotes = ["https://rubygems.org"]; 633 + sha256 = "1vpdkrc4c8qhrxph41wqwswl28q5h5h994gy4c1mlrckqzm3hzph"; 691 634 type = "gem"; 692 - sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4"; 693 635 }; 636 + version = "0.2.0"; 694 637 }; 695 - "erubis" = { 696 - version = "2.7.0"; 638 + rubyntlm = { 697 639 source = { 640 + remotes = ["https://rubygems.org"]; 641 + sha256 = "04l8686hl0829x4acsnbz0licf8n6794p7shz8iyahin1jnqg3d7"; 698 642 type = "gem"; 699 - sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3"; 700 643 }; 644 + version = "0.5.2"; 701 645 }; 702 - "escape_utils" = { 703 - version = "0.2.4"; 646 + ruby_parser = { 647 + dependencies = ["sexp_processor"]; 704 648 source = { 649 + remotes = ["https://rubygems.org"]; 650 + sha256 = "1rip6075b4k5a7s8w2klwc3jaqx31h69k004ac5nhl8y0ja92qvz"; 705 651 type = "gem"; 706 - sha256 = "0mg5pgaa02w1bxh0166d367f2ll6fizyrs5dsirrcnw4g17ba54g"; 707 652 }; 653 + version = "3.7.2"; 708 654 }; 709 - "eventmachine" = { 710 - version = "1.0.8"; 655 + ruby2ruby = { 656 + dependencies = ["ruby_parser" "sexp_processor"]; 711 657 source = { 658 + remotes = ["https://rubygems.org"]; 659 + sha256 = "1kmc0503s9mqnjyypx51wsi6zz9zj550ch43rag23wpj4qd6i6pm"; 712 660 type = "gem"; 713 - sha256 = "1frvpk3p73xc64qkn0ymll3flvn4xcycq5yx8a43zd3gyzc1ifjp"; 714 661 }; 662 + version = "2.2.0"; 715 663 }; 716 - "excon" = { 717 - version = "0.45.4"; 664 + ruby-saml = { 718 665 source = { 666 + remotes = ["https://rubygems.org"]; 667 + sha256 = "151jbak16y87dbj3ma2nc03rh37z7lixcwgaqahncq80rgnv45a8"; 719 668 type = "gem"; 720 - sha256 = "1shb4g3dhsfkywgjv6123yrvp2c8bvi8hqmq47iqa5lp72sn4b4w"; 721 669 }; 670 + version = "1.1.1"; 722 671 }; 723 - "execjs" = { 724 - version = "2.6.0"; 672 + ruby-progressbar = { 725 673 source = { 674 + remotes = ["https://rubygems.org"]; 675 + sha256 = "0hynaavnqzld17qdx9r7hfw00y16ybldwq730zrqfszjwgi59ivi"; 726 676 type = "gem"; 727 - sha256 = "0grlxwiccbnflxs30r3h7g23xnps5knav1jyqkk3anvm8363ifjw"; 728 677 }; 678 + version = "1.7.5"; 729 679 }; 730 - "expression_parser" = { 731 - version = "0.9.0"; 680 + ruby-fogbugz = { 681 + dependencies = ["crack"]; 732 682 source = { 683 + remotes = ["https://rubygems.org"]; 684 + sha256 = "1jj0gpkycbrivkh2q3429vj6mbgx6axxisg69slj3c4mgvzfgchm"; 733 685 type = "gem"; 734 - sha256 = "1938z3wmmdabqxlh5d5c56xfg1jc6z15p7zjyhvk7364zwydnmib"; 735 686 }; 687 + version = "0.2.1"; 736 688 }; 737 - "factory_girl" = { 738 - version = "4.3.0"; 689 + rubocop = { 690 + dependencies = ["astrolabe" "parser" "powerpack" "rainbow" "ruby-progressbar" "tins"]; 739 691 source = { 692 + remotes = ["https://rubygems.org"]; 693 + sha256 = "1grqda2fdknm43zyagh8gcmnhjkypyfw98q92hmvprprwghkq2sg"; 740 694 type = "gem"; 741 - sha256 = "13z20a4b7z1c8vbz0qz5ranssdprldwvwlgjmn38x311sfjmp9dz"; 742 695 }; 743 - dependencies = [ 744 - "activesupport" 745 - ]; 696 + version = "0.35.1"; 746 697 }; 747 - "factory_girl_rails" = { 748 - version = "4.3.0"; 698 + rspec-support = { 749 699 source = { 700 + remotes = ["https://rubygems.org"]; 701 + sha256 = "1cyagig8slxjas8mbg5f8bl240b8zgr8mnjsvrznag1fwpkh4h27"; 750 702 type = "gem"; 751 - sha256 = "1jj0yl6mfildb4g79dwgc1q5pv2pa65k9b1ml43mi8mg62j8mrhz"; 752 703 }; 753 - dependencies = [ 754 - "factory_girl" 755 - "railties" 756 - ]; 704 + version = "3.3.0"; 757 705 }; 758 - "faraday" = { 759 - version = "0.8.10"; 706 + rspec-rails = { 707 + dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"]; 760 708 source = { 709 + remotes = ["https://rubygems.org"]; 710 + sha256 = "0m66n9p3a7d3fmrzkbh8312prb6dhrgmp53g1amck308ranasv2a"; 761 711 type = "gem"; 762 - sha256 = "093hrmrx3jn9969q6c9cjms2k73aqwhs03kij378kg1d5izr4r6f"; 763 712 }; 764 - dependencies = [ 765 - "multipart-post" 766 - ]; 713 + version = "3.3.3"; 767 714 }; 768 - "faraday_middleware" = { 769 - version = "0.10.0"; 715 + rspec-mocks = { 716 + dependencies = ["diff-lcs" "rspec-support"]; 770 717 source = { 718 + remotes = ["https://rubygems.org"]; 719 + sha256 = "1lfbzscmpyixlbapxmhy2s69596vs1z00lv590l51hgdw70z92vg"; 771 720 type = "gem"; 772 - sha256 = "0nxia26xzy8i56qfyz1bg8dg9yb26swpgci8n5jry8mh4bnx5r5h"; 773 721 }; 774 - dependencies = [ 775 - "faraday" 776 - ]; 722 + version = "3.3.2"; 777 723 }; 778 - "fastercsv" = { 779 - version = "1.5.5"; 724 + rspec-expectations = { 725 + dependencies = ["diff-lcs" "rspec-support"]; 780 726 source = { 727 + remotes = ["https://rubygems.org"]; 728 + sha256 = "1d0b5hpkxlr9f3xpsbhvl3irnk4smmycx2xnmc8qv3pqaa7mb7ah"; 781 729 type = "gem"; 782 - sha256 = "1df3vfgw5wg0s405z0pj0rfcvnl9q6wak7ka8gn0xqg4cag1k66h"; 783 730 }; 731 + version = "3.3.1"; 784 732 }; 785 - "ffaker" = { 786 - version = "2.0.0"; 733 + rspec-core = { 734 + dependencies = ["rspec-support"]; 787 735 source = { 736 + remotes = ["https://rubygems.org"]; 737 + sha256 = "0xw5qi936j6nz9fixi2mwy03f406761cd72bzyvd61pr854d7hy1"; 788 738 type = "gem"; 789 - sha256 = "19fnbbsw87asyb1hvkr870l2yldah2jcjb8074pgyrma5lynwmn0"; 790 739 }; 740 + version = "3.3.2"; 791 741 }; 792 - "ffi" = { 793 - version = "1.9.10"; 742 + rspec = { 743 + dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"]; 794 744 source = { 745 + remotes = ["https://rubygems.org"]; 746 + sha256 = "1bn5zs71agc0zyns2r3c8myi5bxw3q7xnzp7f3v5b7hbil1qym4r"; 795 747 type = "gem"; 796 - sha256 = "1m5mprppw0xcrv2mkim5zsk70v089ajzqiq5hpyb0xg96fcyzyxj"; 797 748 }; 749 + version = "3.3.0"; 798 750 }; 799 - "fission" = { 800 - version = "0.5.0"; 751 + rqrcode-rails3 = { 752 + dependencies = ["rqrcode"]; 801 753 source = { 754 + remotes = ["https://rubygems.org"]; 755 + sha256 = "1i28rwmj24ssk91chn0g7qsnvn003y3s5a7jsrg3w4l5ckr841bg"; 802 756 type = "gem"; 803 - sha256 = "09pmp1j1rr8r3pcmbn2na2ls7s1j9ijbxj99xi3a8r6v5xhjdjzh"; 804 757 }; 805 - dependencies = [ 806 - "CFPropertyList" 807 - ]; 758 + version = "0.1.7"; 808 759 }; 809 - "flowdock" = { 760 + rqrcode = { 761 + dependencies = ["chunky_png"]; 762 + source = { 763 + remotes = ["https://rubygems.org"]; 764 + sha256 = "188n1mvc7klrlw30bai16sdg4yannmy7cz0sg0nvm6f1kjx5qflb"; 765 + type = "gem"; 766 + }; 810 767 version = "0.7.0"; 768 + }; 769 + rouge = { 811 770 source = { 771 + remotes = ["https://rubygems.org"]; 772 + sha256 = "0wp8as9ypdy18kdj9h70kny1rdfq71mr8cj2bpahr9vxjjvjasqz"; 812 773 type = "gem"; 813 - sha256 = "0wzqj35mn2x2gcy88y00h3jz57ldkkidkwy63jxvmqdlz759pds5"; 814 774 }; 815 - dependencies = [ 816 - "httparty" 817 - "multi_json" 818 - ]; 775 + version = "1.10.1"; 819 776 }; 820 - "fog" = { 821 - version = "1.25.0"; 777 + rotp = { 822 778 source = { 779 + remotes = ["https://rubygems.org"]; 780 + sha256 = "1nzsc9hfxijnyzjbv728ln9dm80bc608chaihjdk63i2wi4m529g"; 823 781 type = "gem"; 824 - sha256 = "0zncds3qj5n3i780y6y6sy5h1gg0kwiyiirxyisbd8p0ywwr8bc3"; 825 782 }; 826 - dependencies = [ 827 - "fog-brightbox" 828 - "fog-core" 829 - "fog-json" 830 - "fog-profitbricks" 831 - "fog-radosgw" 832 - "fog-sakuracloud" 833 - "fog-softlayer" 834 - "fog-terremark" 835 - "fog-vmfusion" 836 - "fog-voxel" 837 - "fog-xml" 838 - "ipaddress" 839 - "nokogiri" 840 - "opennebula" 841 - ]; 783 + version = "2.1.1"; 842 784 }; 843 - "fog-brightbox" = { 844 - version = "0.9.0"; 785 + rinku = { 845 786 source = { 787 + remotes = ["https://rubygems.org"]; 788 + sha256 = "1jh6nys332brph55i6x6cil6swm086kxjw34wq131nl6mwryqp7b"; 846 789 type = "gem"; 847 - sha256 = "01a6ydv7y02zbid8s9mqcxpc0k0hig39ap7mrwj9vp6z7mm9dydv"; 848 790 }; 849 - dependencies = [ 850 - "fog-core" 851 - "fog-json" 852 - "inflecto" 853 - ]; 791 + version = "1.7.3"; 854 792 }; 855 - "fog-core" = { 856 - version = "1.32.1"; 793 + rest-client = { 794 + dependencies = ["http-cookie" "mime-types" "netrc"]; 857 795 source = { 796 + remotes = ["https://rubygems.org"]; 797 + sha256 = "1m8z0c4yf6w47iqz6j2p7x1ip4qnnzvhdph9d5fgx081cvjly3p7"; 858 798 type = "gem"; 859 - sha256 = "0pnm3glgha2hxmhjvgp7f088vzdgv08q8c6w8y9c2cys3b4fx83m"; 860 799 }; 861 - dependencies = [ 862 - "builder" 863 - "excon" 864 - "formatador" 865 - "mime-types" 866 - "net-scp" 867 - "net-ssh" 868 - ]; 800 + version = "1.8.0"; 869 801 }; 870 - "fog-json" = { 871 - version = "1.0.2"; 802 + responders = { 803 + dependencies = ["railties"]; 872 804 source = { 805 + remotes = ["https://rubygems.org"]; 806 + sha256 = "1i00bxp8fa67rzl50wfiaw16w21j5d5gwjjkdiwr0sw9q6ixmpz1"; 873 807 type = "gem"; 874 - sha256 = "0advkkdjajkym77r3c0bg2rlahl2akj0vl4p5r273k2qmi16n00r"; 875 808 }; 876 - dependencies = [ 877 - "fog-core" 878 - "multi_json" 879 - ]; 809 + version = "2.1.1"; 880 810 }; 881 - "fog-profitbricks" = { 882 - version = "0.0.5"; 811 + rerun = { 812 + dependencies = ["listen"]; 883 813 source = { 814 + remotes = ["https://rubygems.org"]; 815 + sha256 = "0av239bpmy55fdx4qaw9n71aapjy2myr51h5plzjxsyr0fdwn1xq"; 884 816 type = "gem"; 885 - sha256 = "154sqs2dcmvg21v4m3fj8f09z5i70sq8a485v6rdygsffs8xrycn"; 886 817 }; 887 - dependencies = [ 888 - "fog-core" 889 - "fog-xml" 890 - "nokogiri" 891 - ]; 818 + version = "0.11.0"; 892 819 }; 893 - "fog-radosgw" = { 894 - version = "0.0.4"; 820 + request_store = { 895 821 source = { 822 + remotes = ["https://rubygems.org"]; 823 + sha256 = "01rxi2hw84y133z0r91jns4aaywd8d83wjq0xgb42iaicf0a90p9"; 896 824 type = "gem"; 897 - sha256 = "1pxbvmr4dsqx4x2klwnciyhki4r5ryr9y0hi6xmm3n6fdv4ii7k3"; 898 825 }; 899 - dependencies = [ 900 - "fog-core" 901 - "fog-json" 902 - "fog-xml" 903 - ]; 826 + version = "1.2.1"; 904 827 }; 905 - "fog-sakuracloud" = { 906 - version = "1.0.1"; 828 + redis-store = { 829 + dependencies = ["redis"]; 907 830 source = { 831 + remotes = ["https://rubygems.org"]; 832 + sha256 = "0gf462p0wx4hn7m1m8ghs701n6xx0ijzm5cff9xfagd2s6va145m"; 908 833 type = "gem"; 909 - sha256 = "1s16b48kh7y03hjv74ccmlfwhqqq7j7m4k6cywrgbyip8n3258n8"; 910 834 }; 911 - dependencies = [ 912 - "fog-core" 913 - "fog-json" 914 - ]; 835 + version = "1.1.7"; 915 836 }; 916 - "fog-softlayer" = { 917 - version = "0.4.7"; 837 + redis-rails = { 838 + dependencies = ["redis-actionpack" "redis-activesupport" "redis-store"]; 918 839 source = { 840 + remotes = ["https://rubygems.org"]; 841 + sha256 = "0igww7hb58aq74mh50dli3zjg78b54y8nhd0h1h9vz4vgjd4q8m7"; 919 842 type = "gem"; 920 - sha256 = "0fgfbhqnyp8ywymvflflhvbns54d1432x57pgpnfy8k1cxvhv9b8"; 921 843 }; 922 - dependencies = [ 923 - "fog-core" 924 - "fog-json" 925 - ]; 844 + version = "4.0.0"; 926 845 }; 927 - "fog-terremark" = { 928 - version = "0.1.0"; 846 + redis-rack = { 847 + dependencies = ["rack" "redis-store"]; 929 848 source = { 849 + remotes = ["https://rubygems.org"]; 850 + sha256 = "1y1mxx8gn0krdrpwllv7fqsbvki1qjnb2dz8b4q9gwc326829gk8"; 930 851 type = "gem"; 931 - sha256 = "01lfkh9jppj0iknlklmwyb7ym3bfhkq58m3absb6rf5a5mcwi3lf"; 932 852 }; 933 - dependencies = [ 934 - "fog-core" 935 - "fog-xml" 936 - ]; 853 + version = "1.5.0"; 937 854 }; 938 - "fog-vmfusion" = { 939 - version = "0.1.0"; 855 + redis-namespace = { 856 + dependencies = ["redis"]; 940 857 source = { 858 + remotes = ["https://rubygems.org"]; 859 + sha256 = "0rp8gfkznfxqzxk9s976k71jnljkh0clkrhnp6vgx46s5yhj9g25"; 941 860 type = "gem"; 942 - sha256 = "0g0l0k9ylxk1h9pzqr6h2ba98fl47lpp3j19lqv4jxw0iw1rqxn4"; 943 861 }; 944 - dependencies = [ 945 - "fission" 946 - "fog-core" 947 - ]; 862 + version = "1.5.2"; 948 863 }; 949 - "fog-voxel" = { 950 - version = "0.1.0"; 864 + redis-activesupport = { 865 + dependencies = ["activesupport" "redis-store"]; 951 866 source = { 867 + remotes = ["https://rubygems.org"]; 868 + sha256 = "10y3kybz21n2z11478sf0cp4xzclvxf0b428787brmgpc6i7p7zg"; 952 869 type = "gem"; 953 - sha256 = "10skdnj59yf4jpvq769njjrvh2l0wzaa7liva8n78qq003mvmfgx"; 954 870 }; 955 - dependencies = [ 956 - "fog-core" 957 - "fog-xml" 958 - ]; 871 + version = "4.1.5"; 959 872 }; 960 - "fog-xml" = { 961 - version = "0.1.2"; 873 + redis-actionpack = { 874 + dependencies = ["actionpack" "redis-rack" "redis-store"]; 962 875 source = { 876 + remotes = ["https://rubygems.org"]; 877 + sha256 = "1jjl6dhhpdapdaywq5iqz7z36mwbw0cn0m30wcc5wcbv7xmiiygw"; 963 878 type = "gem"; 964 - sha256 = "1576sbzza47z48p0k9h1wg3rhgcvcvdd1dfz3xx1cgahwr564fqa"; 965 879 }; 966 - dependencies = [ 967 - "fog-core" 968 - "nokogiri" 969 - ]; 880 + version = "4.0.1"; 970 881 }; 971 - "font-awesome-rails" = { 972 - version = "4.4.0.0"; 882 + redis = { 973 883 source = { 884 + remotes = ["https://rubygems.org"]; 885 + sha256 = "0255w9izzs04hw9wivn05yqiwi34w28ylxs0xvpmwc1vrh18fwcl"; 974 886 type = "gem"; 975 - sha256 = "0igrwlkgpggpfdy3f4kzsz22m14rxx5xnvz3if16czqjlkq4kbbx"; 976 887 }; 977 - dependencies = [ 978 - "railties" 979 - ]; 888 + version = "3.2.2"; 980 889 }; 981 - "foreman" = { 982 - version = "0.78.0"; 890 + redcarpet = { 983 891 source = { 892 + remotes = ["https://rubygems.org"]; 893 + sha256 = "14i3wypp97bpk20679d1csy88q4hsgfqbnqw6mryl77m2g0d09pk"; 984 894 type = "gem"; 985 - sha256 = "1caz8mi7gq1hs4l1flcyyw1iw1bdvdbhppsvy12akr01k3s17xaq"; 986 895 }; 987 - dependencies = [ 988 - "thor" 989 - ]; 896 + version = "3.3.3"; 990 897 }; 991 - "formatador" = { 992 - version = "0.2.5"; 898 + recaptcha = { 899 + dependencies = ["json"]; 993 900 source = { 901 + remotes = ["https://rubygems.org"]; 902 + sha256 = "190qqklirmi31s6ih7png4h9xmx1p5h2n5fi45z90y8hsp5w1sh1"; 994 903 type = "gem"; 995 - sha256 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0"; 996 904 }; 905 + version = "1.0.2"; 997 906 }; 998 - "fuubar" = { 999 - version = "2.0.0"; 907 + rdoc = { 908 + dependencies = ["json"]; 1000 909 source = { 910 + remotes = ["https://rubygems.org"]; 911 + sha256 = "1v9k4sp5yzj2bshngckdvivj6bszciskk1nd2r3wri2ygs7vgqm8"; 1001 912 type = "gem"; 1002 - sha256 = "0xwqs24y8s73aayh39si17kccsmr0bjgmi6jrjyfp7gkjb6iyhpv"; 1003 913 }; 1004 - dependencies = [ 1005 - "rspec" 1006 - "ruby-progressbar" 1007 - ]; 914 + version = "3.12.2"; 1008 915 }; 1009 - "gemnasium-gitlab-service" = { 1010 - version = "0.2.6"; 916 + rblineprof = { 917 + dependencies = ["debugger-ruby_core_source"]; 1011 918 source = { 919 + remotes = ["https://rubygems.org"]; 920 + sha256 = "0m58kdjgncwf0h1qry3qk5h4bg8sj0idykqqijqcrr09mxfd9yc6"; 1012 921 type = "gem"; 1013 - sha256 = "1qv7fkahmqkah3770ycrxd0x2ais4z41hb43a0r8q8wcdklns3m3"; 1014 922 }; 1015 - dependencies = [ 1016 - "rugged" 1017 - ]; 923 + version = "0.3.6"; 1018 924 }; 1019 - "gemojione" = { 1020 - version = "2.0.1"; 925 + rb-inotify = { 926 + dependencies = ["ffi"]; 1021 927 source = { 928 + remotes = ["https://rubygems.org"]; 929 + sha256 = "0kddx2ia0qylw3r52nhg83irkaclvrncgy2m1ywpbhlhsz1rymb9"; 1022 930 type = "gem"; 1023 - sha256 = "0655l0vgs0hbz11s2nlpwwj7df66cxlvv94iz7mhf04qrr5mi26q"; 1024 931 }; 1025 - dependencies = [ 1026 - "json" 1027 - ]; 932 + version = "0.9.5"; 1028 933 }; 1029 - "get_process_mem" = { 1030 - version = "0.2.0"; 934 + rb-fsevent = { 1031 935 source = { 936 + remotes = ["https://rubygems.org"]; 937 + sha256 = "1hq57by28iv0ijz8pk9ynih0xdg7vnl1010xjcijfklrcv89a1j2"; 1032 938 type = "gem"; 1033 - sha256 = "025f7v6bpbgsa2nr0hzv2riggj8qmzbwcyxfgjidpmwh5grh7j29"; 1034 939 }; 940 + version = "0.9.6"; 1035 941 }; 1036 - "gherkin-ruby" = { 1037 - version = "0.3.2"; 942 + raphael-rails = { 1038 943 source = { 944 + remotes = ["https://rubygems.org"]; 945 + sha256 = "0sjiaymvfn4al5dr1pza5i142byan0fxnj4rymziyql2bzvdm2bc"; 1039 946 type = "gem"; 1040 - sha256 = "18ay7yiibf4sl9n94k7mbi4k5zj2igl4j71qcmkswv69znyx0sn1"; 1041 947 }; 948 + version = "2.1.2"; 1042 949 }; 1043 - "github-markup" = { 1044 - version = "1.3.3"; 950 + rake = { 1045 951 source = { 952 + remotes = ["https://rubygems.org"]; 953 + sha256 = "0jcabbgnjc788chx31sihc5pgbqnlc1c75wakmqlbjdm8jns2m9b"; 1046 954 type = "gem"; 1047 - sha256 = "01r901wcgn0gs0n9h684gs5n90y1vaj9lxnx4z5ig611jwa43ivq"; 1048 955 }; 956 + version = "10.5.0"; 1049 957 }; 1050 - "gitlab-flowdock-git-hook" = { 1051 - version = "1.0.1"; 958 + raindrops = { 1052 959 source = { 960 + remotes = ["https://rubygems.org"]; 961 + sha256 = "1hv0xhr762axywr937czi92fs0x3zk7k22vg6f4i7rr8d05sp560"; 1053 962 type = "gem"; 1054 - sha256 = "1s3a10cdbh4xy732b92zcsm5zyc1lhi5v29d76j8mwbqmj11a2p8"; 1055 963 }; 1056 - dependencies = [ 1057 - "flowdock" 1058 - "gitlab-grit" 1059 - "multi_json" 1060 - ]; 964 + version = "0.15.0"; 1061 965 }; 1062 - "gitlab-grit" = { 1063 - version = "2.7.3"; 966 + rainbow = { 1064 967 source = { 968 + remotes = ["https://rubygems.org"]; 969 + sha256 = "0dsnzfjiih2w8npsjab3yx1ssmmvmgjkbxny0i9yzrdy7whfw7b4"; 1065 970 type = "gem"; 1066 - sha256 = "0nv8shx7w7fww8lf5a2rbvf7bq173rllm381m6x7g1i0qqc68q1b"; 1067 971 }; 1068 - dependencies = [ 1069 - "charlock_holmes" 1070 - "diff-lcs" 1071 - "mime-types" 1072 - "posix-spawn" 1073 - ]; 972 + version = "2.0.0"; 1074 973 }; 1075 - "gitlab-linguist" = { 1076 - version = "3.0.1"; 974 + railties = { 975 + dependencies = ["actionpack" "activesupport" "rake" "thor"]; 1077 976 source = { 977 + remotes = ["https://rubygems.org"]; 978 + sha256 = "07vmyrppa1x80whdjxhjij93qh9wvnmnxpsgn6fr9x2lqmzdyq5l"; 1078 979 type = "gem"; 1079 - sha256 = "14ydmxmdm7j56nwlcf4ai08mpc7d3mbfhida52p1zljshbvda5ib"; 980 + }; 981 + version = "4.2.5.1"; 982 + }; 983 + rails-html-sanitizer = { 984 + dependencies = ["loofah"]; 985 + source = { 986 + remotes = ["https://rubygems.org"]; 987 + sha256 = "138fd86kv073zqfx0xifm646w6bgw2lr8snk16lknrrfrss8xnm7"; 988 + type = "gem"; 989 + }; 990 + version = "1.0.3"; 991 + }; 992 + rails-dom-testing = { 993 + dependencies = ["activesupport" "nokogiri" "rails-deprecated_sanitizer"]; 994 + source = { 995 + remotes = ["https://rubygems.org"]; 996 + sha256 = "1v8jl6803mbqpxh4hn0szj081q1a3ap0nb8ni0qswi7z4la844v8"; 997 + type = "gem"; 998 + }; 999 + version = "1.0.7"; 1000 + }; 1001 + rails-deprecated_sanitizer = { 1002 + dependencies = ["activesupport"]; 1003 + source = { 1004 + remotes = ["https://rubygems.org"]; 1005 + sha256 = "0qxymchzdxww8bjsxj05kbf86hsmrjx40r41ksj0xsixr2gmhbbj"; 1006 + type = "gem"; 1080 1007 }; 1081 - dependencies = [ 1082 - "charlock_holmes" 1083 - "escape_utils" 1084 - "mime-types" 1085 - ]; 1008 + version = "1.0.3"; 1086 1009 }; 1087 - "gitlab_emoji" = { 1088 - version = "0.1.1"; 1010 + rails = { 1011 + dependencies = ["actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"]; 1089 1012 source = { 1013 + remotes = ["https://rubygems.org"]; 1014 + sha256 = "03j6hfsqdl0bay59m4qjj2081s4vnhqagpl14qpm4wfrqrgpkcqb"; 1090 1015 type = "gem"; 1091 - sha256 = "13jj6ah88x8y6cr5c82j78a4mi5g88a7vpqf617zpcdiabmr0gl6"; 1092 1016 }; 1093 - dependencies = [ 1094 - "gemojione" 1095 - ]; 1017 + version = "4.2.5.1"; 1096 1018 }; 1097 - "gitlab_git" = { 1098 - version = "7.2.15"; 1019 + rack-test = { 1020 + dependencies = ["rack"]; 1099 1021 source = { 1022 + remotes = ["https://rubygems.org"]; 1023 + sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z"; 1100 1024 type = "gem"; 1101 - sha256 = "1afa645sj322sfy4h6hksi78m87qgvslmf8rgzlqsa4b6zf4w4x2"; 1102 1025 }; 1103 - dependencies = [ 1104 - "activesupport" 1105 - "charlock_holmes" 1106 - "gitlab-linguist" 1107 - "rugged" 1108 - ]; 1026 + version = "0.6.3"; 1109 1027 }; 1110 - "gitlab_meta" = { 1111 - version = "7.0"; 1028 + rack-protection = { 1029 + dependencies = ["rack"]; 1112 1030 source = { 1031 + remotes = ["https://rubygems.org"]; 1032 + sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r"; 1113 1033 type = "gem"; 1114 - sha256 = "14vahv7gblcypbvip845sg3lvawf3kij61mkxz5vyfcv23niqvp9"; 1115 1034 }; 1035 + version = "1.5.3"; 1116 1036 }; 1117 - "gitlab_omniauth-ldap" = { 1037 + rack-oauth2 = { 1038 + dependencies = ["activesupport" "attr_required" "httpclient" "multi_json" "rack"]; 1039 + source = { 1040 + remotes = ["https://rubygems.org"]; 1041 + sha256 = "1szfnb74p5s7k0glpmiv16rfl4wx9mnrr7riapgpbcx163zzkxad"; 1042 + type = "gem"; 1043 + }; 1118 1044 version = "1.2.1"; 1045 + }; 1046 + rack-mount = { 1047 + dependencies = ["rack"]; 1119 1048 source = { 1049 + remotes = ["https://rubygems.org"]; 1050 + sha256 = "09a1qfaxxsll1kbgz7z0q0nr48sfmfm7akzaviis5bjpa5r00ld2"; 1120 1051 type = "gem"; 1121 - sha256 = "1vbdyi57vvlrigyfhmqrnkw801x57fwa3gxvj1rj2bn9ig5186ri"; 1122 1052 }; 1123 - dependencies = [ 1124 - "net-ldap" 1125 - "omniauth" 1126 - "pyu-ruby-sasl" 1127 - "rubyntlm" 1128 - ]; 1053 + version = "0.8.3"; 1129 1054 }; 1130 - "gollum-grit_adapter" = { 1131 - version = "1.0.0"; 1055 + rack-cors = { 1132 1056 source = { 1057 + remotes = ["https://rubygems.org"]; 1058 + sha256 = "1sz9d9gjmv2vjl3hddzk269hb1k215k8sp37gicphx82h3chk1kw"; 1133 1059 type = "gem"; 1134 - sha256 = "02c5qfq0s0kx2ifnpbnbgz6258fl7rchzzzc7vpx72shi8gbpac7"; 1135 1060 }; 1136 - dependencies = [ 1137 - "gitlab-grit" 1138 - ]; 1061 + version = "0.4.0"; 1139 1062 }; 1140 - "gollum-lib" = { 1141 - version = "4.0.3"; 1063 + rack-attack = { 1064 + dependencies = ["rack"]; 1142 1065 source = { 1066 + remotes = ["https://rubygems.org"]; 1067 + sha256 = "0ihic8ar2ddfv15p5gia8nqzsl3y7iayg5v4rmg72jlvikgsabls"; 1143 1068 type = "gem"; 1144 - sha256 = "1f8jzxza1ckpyzyk137rqd212vfk2ac2mn1pp1wi880s4ynahyky"; 1145 1069 }; 1146 - dependencies = [ 1147 - "github-markup" 1148 - "gollum-grit_adapter" 1149 - "nokogiri" 1150 - "rouge" 1151 - "sanitize" 1152 - "stringex" 1153 - ]; 1070 + version = "4.3.1"; 1154 1071 }; 1155 - "gon" = { 1156 - version = "5.0.4"; 1072 + rack-accept = { 1073 + dependencies = ["rack"]; 1157 1074 source = { 1075 + remotes = ["https://rubygems.org"]; 1076 + sha256 = "18jdipx17b4ki33cfqvliapd31sbfvs4mv727awynr6v95a7n936"; 1158 1077 type = "gem"; 1159 - sha256 = "0gdl6zhj5k8ma3mwm00kjfa12w0l6br9kyyxvfj90cw9irfi049r"; 1160 1078 }; 1161 - dependencies = [ 1162 - "actionpack" 1163 - "json" 1164 - ]; 1079 + version = "0.4.5"; 1165 1080 }; 1166 - "grape" = { 1167 - version = "0.6.1"; 1081 + rack = { 1168 1082 source = { 1083 + remotes = ["https://rubygems.org"]; 1084 + sha256 = "09bs295yq6csjnkzj7ncj50i6chfxrhmzg1pk6p0vd2lb9ac8pj5"; 1169 1085 type = "gem"; 1170 - sha256 = "1sjlk0pmgqbb3piz8yb0xjcm7liimrr17y5xflm40amv36pg2gz8"; 1171 1086 }; 1172 - dependencies = [ 1173 - "activesupport" 1174 - "builder" 1175 - "hashie" 1176 - "multi_json" 1177 - "multi_xml" 1178 - "rack" 1179 - "rack-accept" 1180 - "rack-mount" 1181 - "virtus" 1182 - ]; 1087 + version = "1.6.4"; 1183 1088 }; 1184 - "grape-entity" = { 1185 - version = "0.4.8"; 1089 + quiet_assets = { 1090 + dependencies = ["railties"]; 1186 1091 source = { 1092 + remotes = ["https://rubygems.org"]; 1093 + sha256 = "1q4azw4j1xsgd7qwcig110mfdn1fm0y34y87zw9j9v187xr401b1"; 1187 1094 type = "gem"; 1188 - sha256 = "0hxghs2p9ncvdwhp6dwr1a74g552c49dd0jzy0szp4pg2xjbgjk8"; 1189 1095 }; 1190 - dependencies = [ 1191 - "activesupport" 1192 - "multi_json" 1193 - ]; 1096 + version = "1.0.3"; 1194 1097 }; 1195 - "growl" = { 1196 - version = "1.0.3"; 1098 + pyu-ruby-sasl = { 1197 1099 source = { 1100 + remotes = ["https://rubygems.org"]; 1101 + sha256 = "1rcpjiz9lrvyb3rd8k8qni0v4ps08psympffyldmmnrqayyad0sn"; 1198 1102 type = "gem"; 1199 - sha256 = "0s0y7maljnalpbv2q1j5j5hvb4wcc31y9af0n7x1q2l0fzxgc9n9"; 1200 1103 }; 1104 + version = "0.0.3.3"; 1201 1105 }; 1202 - "guard" = { 1203 - version = "2.13.0"; 1106 + pry-rails = { 1107 + dependencies = ["pry"]; 1204 1108 source = { 1109 + remotes = ["https://rubygems.org"]; 1110 + sha256 = "0a2iinvabis2xmv0z7z7jmh7bbkkngxj2qixfdg5m6qj9x8k1kx6"; 1205 1111 type = "gem"; 1206 - sha256 = "0p3ndfmi6sdw55c7j19pyb2ymlby1vyxlp0k47366im1vi70b7gf"; 1207 1112 }; 1208 - dependencies = [ 1209 - "formatador" 1210 - "listen" 1211 - "lumberjack" 1212 - "nenv" 1213 - "notiffany" 1214 - "pry" 1215 - "shellany" 1216 - "thor" 1217 - ]; 1113 + version = "0.3.4"; 1218 1114 }; 1219 - "guard-rspec" = { 1220 - version = "4.2.10"; 1115 + pry = { 1116 + dependencies = ["coderay" "method_source" "slop"]; 1221 1117 source = { 1118 + remotes = ["https://rubygems.org"]; 1119 + sha256 = "1x78rvp69ws37kwig18a8hr79qn36vh8g1fn75p485y3b3yiqszg"; 1222 1120 type = "gem"; 1223 - sha256 = "1mm03i1knmhmdqs4ni03nda7jy3s34c2nxf5sjq1cmywk9c0bn0r"; 1224 1121 }; 1225 - dependencies = [ 1226 - "guard" 1227 - "rspec" 1228 - ]; 1122 + version = "0.10.3"; 1229 1123 }; 1230 - "haml" = { 1231 - version = "4.0.7"; 1124 + powerpack = { 1232 1125 source = { 1126 + remotes = ["https://rubygems.org"]; 1127 + sha256 = "1fnn3fli5wkzyjl4ryh0k90316shqjfnhydmc7f8lqpi0q21va43"; 1233 1128 type = "gem"; 1234 - sha256 = "0mrzjgkygvfii66bbylj2j93na8i89998yi01fin3whwqbvx0m1p"; 1235 1129 }; 1236 - dependencies = [ 1237 - "tilt" 1238 - ]; 1130 + version = "0.1.1"; 1239 1131 }; 1240 - "haml-rails" = { 1241 - version = "0.5.3"; 1132 + posix-spawn = { 1242 1133 source = { 1134 + remotes = ["https://rubygems.org"]; 1135 + sha256 = "052lnxbkvlnwfjw4qd7vn2xrlaaqiav6f5x5bcjin97bsrfq6cmr"; 1243 1136 type = "gem"; 1244 - sha256 = "0fg4dh1gb7f4h2571wm5qxli02mgg3r8ikp5vwkww12a431vk625"; 1245 1137 }; 1246 - dependencies = [ 1247 - "actionpack" 1248 - "activesupport" 1249 - "haml" 1250 - "railties" 1251 - ]; 1138 + version = "0.3.11"; 1252 1139 }; 1253 - "hashie" = { 1254 - version = "2.1.2"; 1140 + poltergeist = { 1141 + dependencies = ["capybara" "cliver" "multi_json" "websocket-driver"]; 1255 1142 source = { 1143 + remotes = ["https://rubygems.org"]; 1144 + sha256 = "0ppm4isvbxm739508yjhvisq1iwp1q6h8dx4hkndj2krskavz4i9"; 1256 1145 type = "gem"; 1257 - sha256 = "08w9ask37zh5w989b6igair3zf8gwllyzix97rlabxglif9f9qd9"; 1258 1146 }; 1147 + version = "1.8.1"; 1259 1148 }; 1260 - "highline" = { 1261 - version = "1.6.21"; 1149 + pg = { 1262 1150 source = { 1151 + remotes = ["https://rubygems.org"]; 1152 + sha256 = "07dv4ma9xd75xpsnnwwg1yrpwpji7ydy0q1d9dl0yfqbzpidrw32"; 1263 1153 type = "gem"; 1264 - sha256 = "06bml1fjsnrhd956wqq5k3w8cyd09rv1vixdpa3zzkl6xs72jdn1"; 1265 1154 }; 1155 + version = "0.18.4"; 1266 1156 }; 1267 - "hike" = { 1268 - version = "1.2.3"; 1157 + parser = { 1158 + dependencies = ["ast"]; 1269 1159 source = { 1160 + remotes = ["https://rubygems.org"]; 1161 + sha256 = "14db0gam24j04iprqz4m3hxygkb8h0plnbm0yk4k3lzq6j5wzcac"; 1270 1162 type = "gem"; 1271 - sha256 = "0i6c9hrszzg3gn2j41v3ijnwcm8cc2931fnjiv6mnpl4jcjjykhm"; 1272 1163 }; 1164 + version = "2.2.3.0"; 1273 1165 }; 1274 - "hipchat" = { 1275 - version = "1.5.2"; 1166 + paranoia = { 1167 + dependencies = ["activerecord"]; 1276 1168 source = { 1169 + remotes = ["https://rubygems.org"]; 1170 + sha256 = "0z2smnnghjhcs4l5fkz9scs1kj0bvj2n8xmzcvw4rg9yprdnlxr0"; 1277 1171 type = "gem"; 1278 - sha256 = "0hgy5jav479vbzzk53lazhpjj094dcsqw6w1d6zjn52p72bwq60k"; 1279 1172 }; 1280 - dependencies = [ 1281 - "httparty" 1282 - "mimemagic" 1283 - ]; 1173 + version = "2.1.4"; 1284 1174 }; 1285 - "hitimes" = { 1286 - version = "1.2.3"; 1175 + orm_adapter = { 1287 1176 source = { 1177 + remotes = ["https://rubygems.org"]; 1178 + sha256 = "1fg9jpjlzf5y49qs9mlpdrgs5rpcyihq1s4k79nv9js0spjhnpda"; 1288 1179 type = "gem"; 1289 - sha256 = "1fr9raz7652bnnx09dllyjdlnwdxsnl0ig5hq9s4s8vackvmckv4"; 1290 1180 }; 1181 + version = "0.5.0"; 1291 1182 }; 1292 - "html-pipeline" = { 1293 - version = "1.11.0"; 1183 + org-ruby = { 1184 + dependencies = ["rubypants"]; 1294 1185 source = { 1186 + remotes = ["https://rubygems.org"]; 1187 + sha256 = "0x69s7aysfiwlcpd9hkvksfyld34d8kxr62adb59vjvh8hxfrjwk"; 1295 1188 type = "gem"; 1296 - sha256 = "1yckdlrn4v5d7bgl8mbffax16640pgg9ny693kqi4j7g17vx2q9l"; 1297 1189 }; 1298 - dependencies = [ 1299 - "activesupport" 1300 - "nokogiri" 1301 - ]; 1190 + version = "0.9.12"; 1302 1191 }; 1303 - "http-cookie" = { 1304 - version = "1.0.2"; 1192 + omniauth_crowd = { 1193 + dependencies = ["activesupport" "nokogiri" "omniauth"]; 1305 1194 source = { 1195 + remotes = ["https://rubygems.org"]; 1196 + sha256 = "12g5ck05h6kr9mnp870x8pkxsadg81ca70hg8n3k8xx007lfw2q7"; 1306 1197 type = "gem"; 1307 - sha256 = "0cz2fdkngs3jc5w32a6xcl511hy03a7zdiy988jk1sf3bf5v3hdw"; 1308 1198 }; 1309 - dependencies = [ 1310 - "domain_name" 1311 - ]; 1199 + version = "2.2.3"; 1312 1200 }; 1313 - "http_parser.rb" = { 1314 - version = "0.5.3"; 1201 + omniauth-twitter = { 1202 + dependencies = ["json" "omniauth-oauth"]; 1315 1203 source = { 1204 + remotes = ["https://rubygems.org"]; 1205 + sha256 = "1hqjpb1zx0pp3s12c83pkpk4kkx41f001jc5n8qz0h3wll0ld833"; 1316 1206 type = "gem"; 1317 - sha256 = "0fwf5d573j1sw52kz057dw0nx2wlivczmx6ybf6mk065n5g54kyn"; 1318 1207 }; 1208 + version = "1.2.1"; 1319 1209 }; 1320 - "httparty" = { 1321 - version = "0.13.5"; 1210 + omniauth-shibboleth = { 1211 + dependencies = ["omniauth"]; 1322 1212 source = { 1213 + remotes = ["https://rubygems.org"]; 1214 + sha256 = "0a8pwy23aybxhn545357zdjy0hnpfgldwqk5snmz9kxingpq12jl"; 1323 1215 type = "gem"; 1324 - sha256 = "1m93fbpwydzzwhc2zf2qkj6lrbcabpy7xhx7wb2mnbmgh0fs7ff9"; 1325 1216 }; 1326 - dependencies = [ 1327 - "json" 1328 - "multi_xml" 1329 - ]; 1217 + version = "1.2.1"; 1330 1218 }; 1331 - "httpclient" = { 1332 - version = "2.6.0.1"; 1219 + omniauth-saml = { 1333 1220 source = { 1221 + remotes = ["https://rubygems.org"]; 1222 + sha256 = "0c7pypskq9y6wbl7c8gnp48j256snph11br3csgwvy9whjfisx65"; 1334 1223 type = "gem"; 1335 - sha256 = "0haz4s9xnzr73mkfpgabspj43bhfm9znmpmgdk74n6gih1xlrx1l"; 1336 1224 }; 1225 + version = "1.4.2"; 1337 1226 }; 1338 - "i18n" = { 1339 - version = "0.7.0"; 1227 + omniauth-oauth2 = { 1228 + dependencies = ["oauth2" "omniauth"]; 1340 1229 source = { 1230 + remotes = ["https://rubygems.org"]; 1231 + sha256 = "0mskwlw5ibx9mz7ywqji6mm56ikf7mglbnfc02qhg6ry527jsxdm"; 1341 1232 type = "gem"; 1342 - sha256 = "1i5z1ykl8zhszsxcs8mzl8d0dxgs3ylz8qlzrw74jb0gplkx6758"; 1343 1233 }; 1234 + version = "1.3.1"; 1344 1235 }; 1345 - "ice_cube" = { 1346 - version = "0.11.1"; 1236 + omniauth-oauth = { 1237 + dependencies = ["oauth" "omniauth"]; 1347 1238 source = { 1239 + remotes = ["https://rubygems.org"]; 1240 + sha256 = "1n5vk4by7hkyc09d9blrw2argry5awpw4gbw1l4n2s9b3j4qz037"; 1348 1241 type = "gem"; 1349 - sha256 = "12y23nczfrgslpfqam90076x603xhlpv3fyh8mv49gks4qn2wk20"; 1350 1242 }; 1243 + version = "1.1.0"; 1351 1244 }; 1352 - "ice_nine" = { 1353 - version = "0.11.1"; 1245 + omniauth-multipassword = { 1246 + dependencies = ["omniauth"]; 1354 1247 source = { 1248 + remotes = ["https://rubygems.org"]; 1249 + sha256 = "0qykp76hw80lkgb39hyzrv68hkbivc8cv0vbvrnycjh9fwfp1lv8"; 1355 1250 type = "gem"; 1356 - sha256 = "0i674zq0hl6rd0wcd12ni38linfja4k0y3mk5barjb4a6f7rcmkd"; 1357 1251 }; 1252 + version = "0.4.2"; 1358 1253 }; 1359 - "inflecto" = { 1360 - version = "0.0.2"; 1254 + omniauth-kerberos = { 1255 + dependencies = ["omniauth-multipassword" "timfel-krb5-auth"]; 1361 1256 source = { 1257 + remotes = ["https://rubygems.org"]; 1258 + sha256 = "05xsv76qjxcxzrvabaar2bchv7435y8l2j0wk4zgchh3yv85kiq7"; 1362 1259 type = "gem"; 1363 - sha256 = "085l5axmvqw59mw5jg454a3m3gr67ckq9405a075isdsn7bm3sp4"; 1364 1260 }; 1261 + version = "0.3.0"; 1365 1262 }; 1366 - "ipaddress" = { 1367 - version = "0.8.0"; 1263 + omniauth-google-oauth2 = { 1264 + dependencies = ["addressable" "jwt" "multi_json" "omniauth" "omniauth-oauth2"]; 1368 1265 source = { 1266 + remotes = ["https://rubygems.org"]; 1267 + sha256 = "1lm4fk6ig9vwzv7398qd861325g678sfr1iv2mm60xswl69964fi"; 1369 1268 type = "gem"; 1370 - sha256 = "0cwy4pyd9nl2y2apazp3hvi12gccj5a3ify8mi8k3knvxi5wk2ir"; 1371 1269 }; 1270 + version = "0.2.10"; 1372 1271 }; 1373 - "jquery-atwho-rails" = { 1272 + omniauth-gitlab = { 1273 + dependencies = ["omniauth" "omniauth-oauth2"]; 1274 + source = { 1275 + remotes = ["https://rubygems.org"]; 1276 + sha256 = "083yyc8612kq8ygd8y7s8lxg2d51jcsakbs4pa19aww67gcm72iz"; 1277 + type = "gem"; 1278 + }; 1374 1279 version = "1.0.1"; 1280 + }; 1281 + omniauth-github = { 1282 + dependencies = ["omniauth" "omniauth-oauth2"]; 1375 1283 source = { 1284 + remotes = ["https://rubygems.org"]; 1285 + sha256 = "1mbx3c8m1llhdxrqdciq8jh428bxj1nvf4yhziv2xqmqpjcqz617"; 1376 1286 type = "gem"; 1377 - sha256 = "0fdy4dxfvnzrjbfm45yrnwfczszvnd7psqhnkby0j3qjg8k9xhzw"; 1378 1287 }; 1288 + version = "1.1.2"; 1379 1289 }; 1380 - "jquery-rails" = { 1381 - version = "3.1.3"; 1290 + omniauth-facebook = { 1291 + dependencies = ["omniauth-oauth2"]; 1382 1292 source = { 1293 + remotes = ["https://rubygems.org"]; 1294 + sha256 = "0plj56sna4b6c71k03jsng6gq3r5yxhj7h26ndahc9caasgk869c"; 1383 1295 type = "gem"; 1384 - sha256 = "1n07rj1x7l61wygbjdpknv5nxhbg2iybfgkpdgca2kj6c1nb1d87"; 1385 1296 }; 1386 - dependencies = [ 1387 - "railties" 1388 - "thor" 1389 - ]; 1297 + version = "3.0.0"; 1390 1298 }; 1391 - "jquery-scrollto-rails" = { 1392 - version = "1.4.3"; 1299 + omniauth-cas3 = { 1300 + dependencies = ["addressable" "nokogiri" "omniauth"]; 1393 1301 source = { 1302 + remotes = ["https://rubygems.org"]; 1303 + sha256 = "13swm2hi2z63nvb2bps6g41kki8kr9b5c7014rk8259bxlpflrk7"; 1394 1304 type = "gem"; 1395 - sha256 = "12ic0zxw60ryglm1qjq5ralqd6k4jawmjj7kqnp1nkqds2nvinvp"; 1396 1305 }; 1397 - dependencies = [ 1398 - "railties" 1399 - ]; 1306 + version = "1.1.3"; 1400 1307 }; 1401 - "jquery-turbolinks" = { 1402 - version = "2.0.2"; 1308 + omniauth-bitbucket = { 1309 + dependencies = ["multi_json" "omniauth" "omniauth-oauth"]; 1403 1310 source = { 1311 + remotes = ["https://rubygems.org"]; 1312 + sha256 = "1lals2z1yixffrc97zh7zn1jpz9l6vpb3alcp13im42dq9q0g845"; 1404 1313 type = "gem"; 1405 - sha256 = "1plip56znrkq3na5bjys5q2zvlbyj8p8i29kaayzfpi2c4ixxaq3"; 1406 1314 }; 1407 - dependencies = [ 1408 - "railties" 1409 - "turbolinks" 1410 - ]; 1315 + version = "0.0.2"; 1411 1316 }; 1412 - "jquery-ui-rails" = { 1413 - version = "4.2.1"; 1317 + omniauth-azure-oauth2 = { 1318 + dependencies = ["jwt" "omniauth" "omniauth-oauth2"]; 1414 1319 source = { 1320 + remotes = ["https://rubygems.org"]; 1321 + sha256 = "0qay454zvyas8xfnfkycqpjkafaq5pw4gaji176cdfw0blhviz0s"; 1415 1322 type = "gem"; 1416 - sha256 = "1garrnqwh35acj2pp4sp6fpm2g881h23y644lzbic2qmcrq9wd2v"; 1417 1323 }; 1418 - dependencies = [ 1419 - "railties" 1420 - ]; 1324 + version = "0.0.6"; 1421 1325 }; 1422 - "json" = { 1423 - version = "1.8.3"; 1326 + omniauth = { 1327 + version = "1.3.1"; 1424 1328 source = { 1425 1329 type = "gem"; 1426 - sha256 = "1nsby6ry8l9xg3yw4adlhk2pnc7i0h0rznvcss4vk3v74qg0k8lc"; 1330 + remotes = ["https://rubygems.org"]; 1331 + sha256 = "0vsqxgzkcfi10b7k6vpv3shmlphbs8grc29hznwl9s0i16n8962p"; 1427 1332 }; 1428 1333 }; 1429 - "jwt" = { 1430 - version = "1.5.1"; 1334 + octokit = { 1335 + version = "3.8.0"; 1431 1336 source = { 1432 1337 type = "gem"; 1433 - sha256 = "13b5ccknrmxnb6dk7vlmnb05za1xxyqd8dzb6lpqq503wpfrmlyk"; 1338 + remotes = ["https://rubygems.org"]; 1339 + sha256 = "0vmknh0vz1g734q32kgpxv0qwz9ifmnw2jfpd2w5rrk6xwq1k7a8"; 1434 1340 }; 1435 1341 }; 1436 - "kaminari" = { 1437 - version = "0.15.1"; 1342 + oauth2 = { 1343 + dependencies = ["faraday" "jwt" "multi_json" "multi_xml" "rack"]; 1438 1344 source = { 1345 + remotes = ["https://rubygems.org"]; 1346 + sha256 = "0zaa7qnvizv363apmxx9vxa8f6c6xy70z0jm0ydx38xvhxr8898r"; 1439 1347 type = "gem"; 1440 - sha256 = "1m67ghp55hr16k1njhd00f225qys67n60qa3jz69kzqvrp6qg33d"; 1441 1348 }; 1442 - dependencies = [ 1443 - "actionpack" 1444 - "activesupport" 1445 - ]; 1349 + version = "1.0.0"; 1446 1350 }; 1447 - "kgio" = { 1448 - version = "2.9.3"; 1351 + oauth = { 1449 1352 source = { 1353 + remotes = ["https://rubygems.org"]; 1354 + sha256 = "1k5j09p3al3clpjl6lax62qmhy43f3j3g7i6f9l4dbs6r5vpv95w"; 1450 1355 type = "gem"; 1451 - sha256 = "07gl0drxwckj7kbq5nla2lf81lrrrvirvvdcrykjgivysfg6yp5v"; 1452 1356 }; 1357 + version = "0.4.7"; 1453 1358 }; 1454 - "launchy" = { 1455 - version = "2.4.3"; 1359 + nprogress-rails = { 1456 1360 source = { 1361 + remotes = ["https://rubygems.org"]; 1362 + sha256 = "1ylq2208i95661ba0p1ng2i38z4978ddwiidvpb614amfdq5pqvn"; 1457 1363 type = "gem"; 1458 - sha256 = "190lfbiy1vwxhbgn4nl4dcbzxvm049jwc158r2x7kq3g5khjrxa2"; 1459 1364 }; 1460 - dependencies = [ 1461 - "addressable" 1462 - ]; 1365 + version = "0.1.6.7"; 1463 1366 }; 1464 - "letter_opener" = { 1465 - version = "1.1.2"; 1367 + nokogiri = { 1368 + dependencies = ["mini_portile2"]; 1466 1369 source = { 1370 + remotes = ["https://rubygems.org"]; 1371 + sha256 = "11sbmpy60ynak6s3794q32lc99hs448msjy8rkp84ay7mq7zqspv"; 1467 1372 type = "gem"; 1468 - sha256 = "1kzbmc686hfh4jznyckq6g40kn14nhb71znsjjm0rc13nb3n0c5l"; 1469 1373 }; 1470 - dependencies = [ 1471 - "launchy" 1472 - ]; 1374 + version = "1.6.7.2"; 1473 1375 }; 1474 - "listen" = { 1475 - version = "2.10.1"; 1376 + netrc = { 1476 1377 source = { 1378 + remotes = ["https://rubygems.org"]; 1379 + sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y"; 1477 1380 type = "gem"; 1478 - sha256 = "1ipainbx21ni7xakdbksxjim6nixvzfjkifb2d3v45a50dp3diqg"; 1479 1381 }; 1480 - dependencies = [ 1481 - "celluloid" 1482 - "rb-fsevent" 1483 - "rb-inotify" 1484 - ]; 1382 + version = "0.11.0"; 1485 1383 }; 1486 - "lumberjack" = { 1487 - version = "1.0.9"; 1384 + net-ssh = { 1488 1385 source = { 1386 + remotes = ["https://rubygems.org"]; 1387 + sha256 = "1dzqkgwi9xm6mbfk1rkk17rzmz8m5xakqi21w1b97ybng6kkw0hf"; 1489 1388 type = "gem"; 1490 - sha256 = "162frm2bwy58pj8ccsdqa4a6i0csrhb9h5l3inhkl1ivgfc8814l"; 1491 1389 }; 1390 + version = "3.0.1"; 1492 1391 }; 1493 - "macaddr" = { 1494 - version = "1.7.1"; 1392 + net-ldap = { 1495 1393 source = { 1394 + remotes = ["https://rubygems.org"]; 1395 + sha256 = "0z1j0zklbbx3vi91zcd2v0fnkfgkvq3plisa6hxaid8sqndyak46"; 1496 1396 type = "gem"; 1497 - sha256 = "1clii8mvhmh5lmnm95ljnjygyiyhdpja85c5vy487rhxn52scn0b"; 1498 1397 }; 1499 - dependencies = [ 1500 - "systemu" 1501 - ]; 1398 + version = "0.12.1"; 1502 1399 }; 1503 - "mail" = { 1504 - version = "2.6.3"; 1400 + nested_form = { 1505 1401 source = { 1402 + remotes = ["https://rubygems.org"]; 1403 + sha256 = "0f053j4zfagxyym28msxj56hrpvmyv4lzxy2c5c270f7xbbnii5i"; 1506 1404 type = "gem"; 1507 - sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp"; 1508 1405 }; 1509 - dependencies = [ 1510 - "mime-types" 1511 - ]; 1406 + version = "0.3.2"; 1512 1407 }; 1513 - "mail_room" = { 1514 - version = "0.5.2"; 1408 + mysql2 = { 1515 1409 source = { 1410 + remotes = ["https://rubygems.org"]; 1411 + sha256 = "0n075x14n9kziv0qdxqlzhf3j1abi1w6smpakfpsg4jbr8hnn5ip"; 1516 1412 type = "gem"; 1517 - sha256 = "1l8ncfwqiiv3nd7i0237xd5ymshgyfxfv4w2bj0lj67ys3l4qwh3"; 1518 1413 }; 1414 + version = "0.3.20"; 1519 1415 }; 1520 - "method_source" = { 1521 - version = "0.8.2"; 1416 + multipart-post = { 1522 1417 source = { 1418 + remotes = ["https://rubygems.org"]; 1419 + sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x"; 1523 1420 type = "gem"; 1524 - sha256 = "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2"; 1525 1421 }; 1422 + version = "2.0.0"; 1526 1423 }; 1527 - "mime-types" = { 1528 - version = "1.25.1"; 1424 + multi_xml = { 1529 1425 source = { 1426 + remotes = ["https://rubygems.org"]; 1427 + sha256 = "0i8r7dsz4z79z3j023l8swan7qpbgxbwwz11g38y2vjqjk16v4q8"; 1530 1428 type = "gem"; 1531 - sha256 = "0mhzsanmnzdshaba7gmsjwnv168r1yj8y0flzw88frw1cickrvw8"; 1532 1429 }; 1430 + version = "0.5.5"; 1533 1431 }; 1534 - "mimemagic" = { 1535 - version = "0.3.0"; 1432 + multi_json = { 1536 1433 source = { 1434 + remotes = ["https://rubygems.org"]; 1435 + sha256 = "1rf3l4j3i11lybqzgq2jhszq7fh7gpmafjzd14ymp9cjfxqg596r"; 1537 1436 type = "gem"; 1538 - sha256 = "101lq4bnjs7ywdcicpw3vbz9amg5gbb4va1626fybd2hawgdx8d9"; 1539 1437 }; 1438 + version = "1.11.2"; 1540 1439 }; 1541 - "mini_portile" = { 1542 - version = "0.6.2"; 1440 + mousetrap-rails = { 1543 1441 source = { 1442 + remotes = ["https://rubygems.org"]; 1443 + sha256 = "00n13r5pwrk4vq018128vcfh021dw0fa2bk4pzsv0fslfm8ayp2m"; 1544 1444 type = "gem"; 1545 - sha256 = "0h3xinmacscrnkczq44s6pnhrp4nqma7k056x5wv5xixvf2wsq2w"; 1546 1445 }; 1446 + version = "1.4.6"; 1547 1447 }; 1548 - "minitest" = { 1448 + minitest = { 1449 + source = { 1450 + remotes = ["https://rubygems.org"]; 1451 + sha256 = "0rxqfakp629mp3vwda7zpgb57lcns5znkskikbfd0kriwv8i1vq8"; 1452 + type = "gem"; 1453 + }; 1549 1454 version = "5.7.0"; 1455 + }; 1456 + mini_portile2 = { 1550 1457 source = { 1458 + remotes = ["https://rubygems.org"]; 1459 + sha256 = "056drbn5m4khdxly1asmiik14nyllswr6sh3wallvsywwdiryz8l"; 1551 1460 type = "gem"; 1552 - sha256 = "0rxqfakp629mp3vwda7zpgb57lcns5znkskikbfd0kriwv8i1vq8"; 1553 1461 }; 1462 + version = "2.0.0"; 1554 1463 }; 1555 - "mousetrap-rails" = { 1556 - version = "1.4.6"; 1464 + mimemagic = { 1557 1465 source = { 1466 + remotes = ["https://rubygems.org"]; 1467 + sha256 = "101lq4bnjs7ywdcicpw3vbz9amg5gbb4va1626fybd2hawgdx8d9"; 1558 1468 type = "gem"; 1559 - sha256 = "00n13r5pwrk4vq018128vcfh021dw0fa2bk4pzsv0fslfm8ayp2m"; 1560 1469 }; 1470 + version = "0.3.0"; 1561 1471 }; 1562 - "multi_json" = { 1563 - version = "1.11.2"; 1472 + mime-types = { 1564 1473 source = { 1474 + remotes = ["https://rubygems.org"]; 1475 + sha256 = "0mhzsanmnzdshaba7gmsjwnv168r1yj8y0flzw88frw1cickrvw8"; 1565 1476 type = "gem"; 1566 - sha256 = "1rf3l4j3i11lybqzgq2jhszq7fh7gpmafjzd14ymp9cjfxqg596r"; 1567 1477 }; 1478 + version = "1.25.1"; 1568 1479 }; 1569 - "multi_xml" = { 1570 - version = "0.5.5"; 1480 + method_source = { 1571 1481 source = { 1482 + remotes = ["https://rubygems.org"]; 1483 + sha256 = "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2"; 1572 1484 type = "gem"; 1573 - sha256 = "0i8r7dsz4z79z3j023l8swan7qpbgxbwwz11g38y2vjqjk16v4q8"; 1574 1485 }; 1486 + version = "0.8.2"; 1575 1487 }; 1576 - "multipart-post" = { 1577 - version = "1.2.0"; 1488 + mail_room = { 1578 1489 source = { 1490 + remotes = ["https://rubygems.org"]; 1491 + sha256 = "0jpybhgw9yi50g422qvnwadn5jnj563vh70qaml5cxzdqxbd7fj1"; 1579 1492 type = "gem"; 1580 - sha256 = "12p7lnmc52di1r4h73h6xrpppplzyyhani9p7wm8l4kgf1hnmwnc"; 1493 + }; 1494 + version = "0.6.1"; 1495 + }; 1496 + mail = { 1497 + dependencies = ["mime-types"]; 1498 + source = { 1499 + remotes = ["https://rubygems.org"]; 1500 + sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp"; 1501 + type = "gem"; 1581 1502 }; 1503 + version = "2.6.3"; 1582 1504 }; 1583 - "mysql2" = { 1584 - version = "0.3.20"; 1505 + macaddr = { 1506 + dependencies = ["systemu"]; 1585 1507 source = { 1508 + remotes = ["https://rubygems.org"]; 1509 + sha256 = "1clii8mvhmh5lmnm95ljnjygyiyhdpja85c5vy487rhxn52scn0b"; 1586 1510 type = "gem"; 1587 - sha256 = "0n075x14n9kziv0qdxqlzhf3j1abi1w6smpakfpsg4jbr8hnn5ip"; 1588 1511 }; 1512 + version = "1.7.1"; 1589 1513 }; 1590 - "nenv" = { 1591 - version = "0.2.0"; 1514 + loofah = { 1515 + dependencies = ["nokogiri"]; 1592 1516 source = { 1517 + remotes = ["https://rubygems.org"]; 1518 + sha256 = "109ps521p0sr3kgc460d58b4pr1z4mqggan2jbsf0aajy9s6xis8"; 1593 1519 type = "gem"; 1594 - sha256 = "152wxwri0afwgnxdf93gi6wjl9rr5z7vwp8ln0gpa3rddbfc27s6"; 1595 1520 }; 1521 + version = "2.0.3"; 1596 1522 }; 1597 - "nested_form" = { 1598 - version = "0.3.2"; 1523 + listen = { 1524 + dependencies = ["rb-fsevent" "rb-inotify"]; 1599 1525 source = { 1526 + remotes = ["https://rubygems.org"]; 1527 + sha256 = "182wd2pkf690ll19lx6zbk01a3rqkk5lwsyin6kwydl7lqxj5z3g"; 1600 1528 type = "gem"; 1601 - sha256 = "0f053j4zfagxyym28msxj56hrpvmyv4lzxy2c5c270f7xbbnii5i"; 1602 1529 }; 1530 + version = "3.0.5"; 1603 1531 }; 1604 - "net-ldap" = { 1605 - version = "0.11"; 1532 + letter_opener = { 1533 + dependencies = ["launchy"]; 1606 1534 source = { 1535 + remotes = ["https://rubygems.org"]; 1536 + sha256 = "1kzbmc686hfh4jznyckq6g40kn14nhb71znsjjm0rc13nb3n0c5l"; 1607 1537 type = "gem"; 1608 - sha256 = "1xfq94lmc5mcc5giipxn9bmrsm9ny1xc1rp0xpm2pgqwr2q8fm7w"; 1609 1538 }; 1539 + version = "1.1.2"; 1610 1540 }; 1611 - "net-scp" = { 1612 - version = "1.2.1"; 1541 + launchy = { 1542 + dependencies = ["addressable"]; 1613 1543 source = { 1544 + remotes = ["https://rubygems.org"]; 1545 + sha256 = "190lfbiy1vwxhbgn4nl4dcbzxvm049jwc158r2x7kq3g5khjrxa2"; 1614 1546 type = "gem"; 1615 - sha256 = "0b0jqrcsp4bbi4n4mzyf70cp2ysyp6x07j8k8cqgxnvb4i3a134j"; 1616 1547 }; 1617 - dependencies = [ 1618 - "net-ssh" 1619 - ]; 1548 + version = "2.4.3"; 1620 1549 }; 1621 - "net-ssh" = { 1622 - version = "2.9.2"; 1550 + kgio = { 1623 1551 source = { 1552 + remotes = ["https://rubygems.org"]; 1553 + sha256 = "1y6wl3vpp82rdv5g340zjgkmy6fny61wib7xylyg0d09k5f26118"; 1624 1554 type = "gem"; 1625 - sha256 = "1p0bj41zrmw5lhnxlm1pqb55zfz9y4p9fkrr9a79nrdmzrk1ph8r"; 1626 1555 }; 1556 + version = "2.10.0"; 1627 1557 }; 1628 - "netrc" = { 1629 - version = "0.10.3"; 1558 + kaminari = { 1559 + dependencies = ["actionpack" "activesupport"]; 1630 1560 source = { 1561 + remotes = ["https://rubygems.org"]; 1562 + sha256 = "14vx3kgssl4lv2kn6grr5v2whsynx5rbl1j9aqiq8nc3d7j74l67"; 1631 1563 type = "gem"; 1632 - sha256 = "1r6cmg1nvxspl24yrqn77vx7xjqigpypialblpcv5qj6xmc4b8lg"; 1633 1564 }; 1565 + version = "0.16.3"; 1634 1566 }; 1635 - "newrelic-grape" = { 1636 - version = "2.0.0"; 1567 + jwt = { 1637 1568 source = { 1569 + remotes = ["https://rubygems.org"]; 1570 + sha256 = "0is8973si98rsry5igqdag2jb1knj6jhmfkr9r4mc5n0yvgr5n2q"; 1638 1571 type = "gem"; 1639 - sha256 = "1j8cdlc8lvbh2c2drdq0kfrjbw9bkgqx3qiiizzaxv6yj70vq58a"; 1640 1572 }; 1641 - dependencies = [ 1642 - "grape" 1643 - "newrelic_rpm" 1644 - ]; 1573 + version = "1.5.2"; 1645 1574 }; 1646 - "newrelic_rpm" = { 1647 - version = "3.9.4.245"; 1575 + json = { 1648 1576 source = { 1577 + remotes = ["https://rubygems.org"]; 1578 + sha256 = "1nsby6ry8l9xg3yw4adlhk2pnc7i0h0rznvcss4vk3v74qg0k8lc"; 1649 1579 type = "gem"; 1650 - sha256 = "0r1x16wwmiqsf1gj2a1lgc0fq1v0x4yv40k5wgb00gs439vgzyin"; 1651 1580 }; 1581 + version = "1.8.3"; 1652 1582 }; 1653 - "nokogiri" = { 1654 - version = "1.6.6.2"; 1583 + jquery-ui-rails = { 1584 + dependencies = ["railties"]; 1655 1585 source = { 1586 + remotes = ["https://rubygems.org"]; 1587 + sha256 = "1gfygrv4bjpjd2c377lw7xzk1b77rxjyy3w6wl4bq1gkqvyrkx77"; 1656 1588 type = "gem"; 1657 - sha256 = "1j4qv32qjh67dcrc1yy1h8sqjnny8siyy4s44awla8d6jk361h30"; 1658 1589 }; 1659 - dependencies = [ 1660 - "mini_portile" 1661 - ]; 1590 + version = "5.0.5"; 1662 1591 }; 1663 - "notiffany" = { 1664 - version = "0.0.7"; 1592 + jquery-turbolinks = { 1593 + dependencies = ["railties" "turbolinks"]; 1665 1594 source = { 1595 + remotes = ["https://rubygems.org"]; 1596 + sha256 = "1d23mnl3lgamk9ziw4yyv2ixck6d8s8xp4f9pmwimk0by0jq7xhc"; 1666 1597 type = "gem"; 1667 - sha256 = "1v5x1w59qq85r6dpv3y9ga34dfd7hka1qxyiykaw7gm0i6kggbhi"; 1668 1598 }; 1669 - dependencies = [ 1670 - "nenv" 1671 - "shellany" 1672 - ]; 1599 + version = "2.1.0"; 1673 1600 }; 1674 - "nprogress-rails" = { 1675 - version = "0.1.2.3"; 1601 + jquery-scrollto-rails = { 1602 + dependencies = ["railties"]; 1676 1603 source = { 1604 + remotes = ["https://rubygems.org"]; 1605 + sha256 = "12ic0zxw60ryglm1qjq5ralqd6k4jawmjj7kqnp1nkqds2nvinvp"; 1677 1606 type = "gem"; 1678 - sha256 = "16gqajynqzfvzcyc8b9bjn8xf6j7y80li00ajicxwvb6my2ag304"; 1679 1607 }; 1608 + version = "1.4.3"; 1680 1609 }; 1681 - "oauth" = { 1682 - version = "0.4.7"; 1610 + jquery-rails = { 1611 + dependencies = ["rails-dom-testing" "railties" "thor"]; 1683 1612 source = { 1613 + remotes = ["https://rubygems.org"]; 1614 + sha256 = "028dv2n0r2r8qj1bqcbzmih0hwzh5km6cvscn2808v5gd44z48r1"; 1684 1615 type = "gem"; 1685 - sha256 = "1k5j09p3al3clpjl6lax62qmhy43f3j3g7i6f9l4dbs6r5vpv95w"; 1686 1616 }; 1617 + version = "4.0.5"; 1687 1618 }; 1688 - "oauth2" = { 1689 - version = "1.0.0"; 1619 + jquery-atwho-rails = { 1690 1620 source = { 1621 + remotes = ["https://rubygems.org"]; 1622 + sha256 = "0g8239cddyi48i5n0hq2acg9k7n7jilhby9g36zd19mwqyia16w9"; 1691 1623 type = "gem"; 1692 - sha256 = "0zaa7qnvizv363apmxx9vxa8f6c6xy70z0jm0ydx38xvhxr8898r"; 1693 1624 }; 1694 - dependencies = [ 1695 - "faraday" 1696 - "jwt" 1697 - "multi_json" 1698 - "multi_xml" 1699 - "rack" 1700 - ]; 1625 + version = "1.3.2"; 1701 1626 }; 1702 - "octokit" = { 1703 - version = "3.7.1"; 1627 + ipaddress = { 1704 1628 source = { 1629 + remotes = ["https://rubygems.org"]; 1630 + sha256 = "0sl0ldvhd6j0qbwhz18w24qy65mdj448b2vhgh2cwn7xrkksmv9l"; 1705 1631 type = "gem"; 1706 - sha256 = "1sd6cammv5m96640vdb8yp3kfpzn52s8y7d77dgsfb25bc1jg4xl"; 1707 1632 }; 1708 - dependencies = [ 1709 - "sawyer" 1710 - ]; 1633 + version = "0.8.2"; 1711 1634 }; 1712 - "omniauth" = { 1713 - version = "1.2.2"; 1635 + influxdb = { 1636 + dependencies = ["cause" "json"]; 1714 1637 source = { 1638 + remotes = ["https://rubygems.org"]; 1639 + sha256 = "1vhg5nd88nwvfa76lqcczld916nljswwq6clsixrzi3js8ym9y1w"; 1715 1640 type = "gem"; 1716 - sha256 = "1f0hd9ngfb6f8wz8h2r5n8lr99jqjaghn0h2mljdc6fw031ap7lk"; 1717 1641 }; 1718 - dependencies = [ 1719 - "hashie" 1720 - "rack" 1721 - ]; 1642 + version = "0.2.3"; 1722 1643 }; 1723 - "omniauth-bitbucket" = { 1644 + inflecto = { 1645 + source = { 1646 + remotes = ["https://rubygems.org"]; 1647 + sha256 = "085l5axmvqw59mw5jg454a3m3gr67ckq9405a075isdsn7bm3sp4"; 1648 + type = "gem"; 1649 + }; 1724 1650 version = "0.0.2"; 1651 + }; 1652 + ice_nine = { 1725 1653 source = { 1654 + remotes = ["https://rubygems.org"]; 1655 + sha256 = "0i674zq0hl6rd0wcd12ni38linfja4k0y3mk5barjb4a6f7rcmkd"; 1726 1656 type = "gem"; 1727 - sha256 = "1lals2z1yixffrc97zh7zn1jpz9l6vpb3alcp13im42dq9q0g845"; 1728 1657 }; 1729 - dependencies = [ 1730 - "multi_json" 1731 - "omniauth" 1732 - "omniauth-oauth" 1733 - ]; 1658 + version = "0.11.1"; 1734 1659 }; 1735 - "omniauth-github" = { 1736 - version = "1.1.2"; 1660 + i18n = { 1737 1661 source = { 1662 + remotes = ["https://rubygems.org"]; 1663 + sha256 = "1i5z1ykl8zhszsxcs8mzl8d0dxgs3ylz8qlzrw74jb0gplkx6758"; 1738 1664 type = "gem"; 1739 - sha256 = "1mbx3c8m1llhdxrqdciq8jh428bxj1nvf4yhziv2xqmqpjcqz617"; 1740 1665 }; 1741 - dependencies = [ 1742 - "omniauth" 1743 - "omniauth-oauth2" 1744 - ]; 1666 + version = "0.7.0"; 1745 1667 }; 1746 - "omniauth-gitlab" = { 1747 - version = "1.0.0"; 1668 + httpclient = { 1748 1669 source = { 1670 + remotes = ["https://rubygems.org"]; 1671 + sha256 = "0k6bqsaqq6c824vrbfb5pkz8bpk565zikd10w85rzj2dy809ik6c"; 1749 1672 type = "gem"; 1750 - sha256 = "1amg3y0ivfakamfwiljgla1vff59b116nd0i6khmaj4jsa4s81hw"; 1751 1673 }; 1752 - dependencies = [ 1753 - "omniauth" 1754 - "omniauth-oauth2" 1755 - ]; 1674 + version = "2.7.0.1"; 1756 1675 }; 1757 - "omniauth-google-oauth2" = { 1758 - version = "0.2.6"; 1676 + httparty = { 1677 + dependencies = ["json" "multi_xml"]; 1759 1678 source = { 1679 + remotes = ["https://rubygems.org"]; 1680 + sha256 = "0c9gvg6dqw2h3qyaxhrq1pzm6r69zfcmfh038wyhisqsd39g9hr2"; 1760 1681 type = "gem"; 1761 - sha256 = "1nba1iy6w2wj79pvnp9r5bw7jhks0287lw748vkxl9xmwccldnhj"; 1762 1682 }; 1763 - dependencies = [ 1764 - "omniauth" 1765 - "omniauth-oauth2" 1766 - ]; 1683 + version = "0.13.7"; 1767 1684 }; 1768 - "omniauth-kerberos" = { 1769 - version = "0.2.0"; 1685 + "http_parser.rb" = { 1770 1686 source = { 1687 + remotes = ["https://rubygems.org"]; 1688 + sha256 = "0fwf5d573j1sw52kz057dw0nx2wlivczmx6ybf6mk065n5g54kyn"; 1771 1689 type = "gem"; 1772 - sha256 = "1s626nxzq8i6gy67pkh04h8hlmmx4vwpc36sbdsgm1xwyj3hrn1b"; 1773 1690 }; 1774 - dependencies = [ 1775 - "omniauth-multipassword" 1776 - "timfel-krb5-auth" 1777 - ]; 1691 + version = "0.5.3"; 1778 1692 }; 1779 - "omniauth-multipassword" = { 1780 - version = "0.4.2"; 1693 + http-cookie = { 1694 + dependencies = ["domain_name"]; 1781 1695 source = { 1696 + remotes = ["https://rubygems.org"]; 1697 + sha256 = "0cz2fdkngs3jc5w32a6xcl511hy03a7zdiy988jk1sf3bf5v3hdw"; 1782 1698 type = "gem"; 1783 - sha256 = "0qykp76hw80lkgb39hyzrv68hkbivc8cv0vbvrnycjh9fwfp1lv8"; 1784 1699 }; 1785 - dependencies = [ 1786 - "omniauth" 1787 - ]; 1700 + version = "1.0.2"; 1788 1701 }; 1789 - "omniauth-oauth" = { 1790 - version = "1.1.0"; 1702 + html2haml = { 1703 + dependencies = ["erubis" "haml" "nokogiri" "ruby_parser"]; 1791 1704 source = { 1705 + remotes = ["https://rubygems.org"]; 1706 + sha256 = "069zcy8lr010hn4qmbi8g5srdf69brk8nbgx4zcqcgbgsl4m8d4i"; 1792 1707 type = "gem"; 1793 - sha256 = "1n5vk4by7hkyc09d9blrw2argry5awpw4gbw1l4n2s9b3j4qz037"; 1794 1708 }; 1795 - dependencies = [ 1796 - "oauth" 1797 - "omniauth" 1798 - ]; 1709 + version = "2.0.0"; 1799 1710 }; 1800 - "omniauth-oauth2" = { 1801 - version = "1.3.1"; 1711 + html-pipeline = { 1712 + dependencies = ["activesupport" "nokogiri"]; 1802 1713 source = { 1714 + remotes = ["https://rubygems.org"]; 1715 + sha256 = "1yckdlrn4v5d7bgl8mbffax16640pgg9ny693kqi4j7g17vx2q9l"; 1803 1716 type = "gem"; 1804 - sha256 = "0mskwlw5ibx9mz7ywqji6mm56ikf7mglbnfc02qhg6ry527jsxdm"; 1805 1717 }; 1806 - dependencies = [ 1807 - "oauth2" 1808 - "omniauth" 1809 - ]; 1718 + version = "1.11.0"; 1810 1719 }; 1811 - "omniauth-saml" = { 1812 - version = "1.4.1"; 1720 + hipchat = { 1721 + dependencies = ["httparty" "mimemagic"]; 1813 1722 source = { 1723 + remotes = ["https://rubygems.org"]; 1724 + sha256 = "0hgy5jav479vbzzk53lazhpjj094dcsqw6w1d6zjn52p72bwq60k"; 1814 1725 type = "gem"; 1815 - sha256 = "12jkjdrkc3k2k1y53vfxyicdq2j0djhln6apwzmc10h9jhq23nrq"; 1816 1726 }; 1817 - dependencies = [ 1818 - "omniauth" 1819 - "ruby-saml" 1820 - ]; 1727 + version = "1.5.2"; 1821 1728 }; 1822 - "omniauth-shibboleth" = { 1823 - version = "1.1.2"; 1729 + hike = { 1824 1730 source = { 1731 + remotes = ["https://rubygems.org"]; 1732 + sha256 = "0i6c9hrszzg3gn2j41v3ijnwcm8cc2931fnjiv6mnpl4jcjjykhm"; 1825 1733 type = "gem"; 1826 - sha256 = "0wy24hwsipjx8iswdbrncgv15qxv7ibg07rv2n6byi037mrnhnhw"; 1827 1734 }; 1828 - dependencies = [ 1829 - "omniauth" 1830 - ]; 1735 + version = "1.2.3"; 1831 1736 }; 1832 - "omniauth-twitter" = { 1833 - version = "1.0.1"; 1737 + highline = { 1834 1738 source = { 1739 + remotes = ["https://rubygems.org"]; 1740 + sha256 = "1nf5lgdn6ni2lpfdn4gk3gi47fmnca2bdirabbjbz1fk9w4p8lkr"; 1835 1741 type = "gem"; 1836 - sha256 = "060gnfc9im786llgi7vlrfhar1b7jlk19bjjc5d50lwrah0hh4fd"; 1837 1742 }; 1838 - dependencies = [ 1839 - "multi_json" 1840 - "omniauth-oauth" 1841 - ]; 1743 + version = "1.7.8"; 1842 1744 }; 1843 - "omniauth_crowd" = { 1844 - version = "2.2.3"; 1745 + hashie = { 1845 1746 source = { 1747 + remotes = ["https://rubygems.org"]; 1748 + sha256 = "1iv5hd0zcryprx9lbcm615r3afc0d6rhc27clywmhhgpx68k8899"; 1846 1749 type = "gem"; 1847 - sha256 = "12g5ck05h6kr9mnp870x8pkxsadg81ca70hg8n3k8xx007lfw2q7"; 1848 1750 }; 1849 - dependencies = [ 1850 - "activesupport" 1851 - "nokogiri" 1852 - "omniauth" 1853 - ]; 1751 + version = "3.4.3"; 1854 1752 }; 1855 - "opennebula" = { 1856 - version = "4.12.1"; 1753 + haml-rails = { 1754 + dependencies = ["actionpack" "activesupport" "haml" "html2haml" "railties"]; 1857 1755 source = { 1756 + remotes = ["https://rubygems.org"]; 1757 + sha256 = "1hbfznkxab663hxp1v6gpsa7sv6w1fnw9r8b3flixwylnwh3c5dz"; 1858 1758 type = "gem"; 1859 - sha256 = "1y2k706mcxf69cviy415icnhdz7ll5nld9iksqdg4asp60gybq3k"; 1860 1759 }; 1861 - dependencies = [ 1862 - "json" 1863 - "nokogiri" 1864 - "rbvmomi" 1865 - ]; 1760 + version = "0.9.0"; 1866 1761 }; 1867 - "org-ruby" = { 1868 - version = "0.9.12"; 1762 + haml = { 1763 + dependencies = ["tilt"]; 1869 1764 source = { 1765 + remotes = ["https://rubygems.org"]; 1766 + sha256 = "0mrzjgkygvfii66bbylj2j93na8i89998yi01fin3whwqbvx0m1p"; 1870 1767 type = "gem"; 1871 - sha256 = "0x69s7aysfiwlcpd9hkvksfyld34d8kxr62adb59vjvh8hxfrjwk"; 1872 1768 }; 1873 - dependencies = [ 1874 - "rubypants" 1875 - ]; 1769 + version = "4.0.7"; 1876 1770 }; 1877 - "orm_adapter" = { 1878 - version = "0.5.0"; 1771 + grape-entity = { 1772 + dependencies = ["activesupport" "multi_json"]; 1879 1773 source = { 1774 + remotes = ["https://rubygems.org"]; 1775 + sha256 = "0hxghs2p9ncvdwhp6dwr1a74g552c49dd0jzy0szp4pg2xjbgjk8"; 1880 1776 type = "gem"; 1881 - sha256 = "1fg9jpjlzf5y49qs9mlpdrgs5rpcyihq1s4k79nv9js0spjhnpda"; 1882 1777 }; 1778 + version = "0.4.8"; 1883 1779 }; 1884 - "paranoia" = { 1885 - version = "2.1.3"; 1780 + grape = { 1781 + dependencies = ["activesupport" "builder" "hashie" "multi_json" "multi_xml" "rack" "rack-accept" "rack-mount" "virtus"]; 1886 1782 source = { 1783 + remotes = ["https://rubygems.org"]; 1784 + sha256 = "1dxfal5jspxq612jjkqbd7xgp5dswdyllbbfq6fj2m7s21pismmh"; 1887 1785 type = "gem"; 1888 - sha256 = "1v6izkdf8npwcblzn9zl9ysagih75584d8hpjzhiv0ijz6cw3l92"; 1786 + }; 1787 + version = "0.13.0"; 1788 + }; 1789 + gon = { 1790 + dependencies = ["actionpack" "json" "multi_json" "request_store"]; 1791 + source = { 1792 + remotes = ["https://rubygems.org"]; 1793 + sha256 = "1f359cd9zsa4nrng35bij5skvjrj5ywn2dhmlg41b97vmza26bxr"; 1794 + type = "gem"; 1889 1795 }; 1890 - dependencies = [ 1891 - "activerecord" 1892 - ]; 1796 + version = "6.0.1"; 1893 1797 }; 1894 - "parser" = { 1895 - version = "2.2.2.6"; 1798 + gollum-lib = { 1799 + dependencies = ["github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"]; 1896 1800 source = { 1801 + remotes = ["https://rubygems.org"]; 1802 + sha256 = "01s8pgzhc3cgcmsy6hh79wrcbn5vbadniq2a7d4qw87kpq7mzfdm"; 1897 1803 type = "gem"; 1898 - sha256 = "0rmh4yr5qh87wqgwzbs6vy8wyf248k09m2vfjf9br6jdb5zgj5hh"; 1899 1804 }; 1900 - dependencies = [ 1901 - "ast" 1902 - ]; 1805 + version = "4.1.0"; 1903 1806 }; 1904 - "pg" = { 1905 - version = "0.18.2"; 1807 + gollum-grit_adapter = { 1808 + dependencies = ["gitlab-grit"]; 1906 1809 source = { 1810 + remotes = ["https://rubygems.org"]; 1811 + sha256 = "02c5qfq0s0kx2ifnpbnbgz6258fl7rchzzzc7vpx72shi8gbpac7"; 1907 1812 type = "gem"; 1908 - sha256 = "1axxbf6ij1iqi3i1r3asvjc80b0py5bz0m2wy5kdi5xkrpr82kpf"; 1909 1813 }; 1814 + version = "1.0.0"; 1910 1815 }; 1911 - "poltergeist" = { 1912 - version = "1.6.0"; 1816 + globalid = { 1817 + dependencies = ["activesupport"]; 1913 1818 source = { 1819 + remotes = ["https://rubygems.org"]; 1820 + sha256 = "145xrpsfx1qqjy33r6qa588wb16dvdhxzj2aysh755vhg6hgm291"; 1914 1821 type = "gem"; 1915 - sha256 = "0mpy2yhn0bhm2s78h8wy22j6378vvsdkj5pcvhr2zfhdjf46g41d"; 1916 1822 }; 1917 - dependencies = [ 1918 - "capybara" 1919 - "cliver" 1920 - "multi_json" 1921 - "websocket-driver" 1922 - ]; 1823 + version = "0.3.6"; 1923 1824 }; 1924 - "posix-spawn" = { 1925 - version = "0.3.11"; 1825 + gitlab_omniauth-ldap = { 1826 + dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"]; 1926 1827 source = { 1828 + remotes = ["https://rubygems.org"]; 1829 + sha256 = "1vbdyi57vvlrigyfhmqrnkw801x57fwa3gxvj1rj2bn9ig5186ri"; 1927 1830 type = "gem"; 1928 - sha256 = "052lnxbkvlnwfjw4qd7vn2xrlaaqiav6f5x5bcjin97bsrfq6cmr"; 1929 1831 }; 1832 + version = "1.2.1"; 1930 1833 }; 1931 - "powerpack" = { 1932 - version = "0.0.9"; 1834 + gitlab_meta = { 1933 1835 source = { 1836 + remotes = ["https://rubygems.org"]; 1837 + sha256 = "14vahv7gblcypbvip845sg3lvawf3kij61mkxz5vyfcv23niqvp9"; 1934 1838 type = "gem"; 1935 - sha256 = "0gflp6d2dc4jz3kgg8v4pdzm3qr2bbdygr83dbsi69pxm2gy5536"; 1936 1839 }; 1840 + version = "7.0"; 1937 1841 }; 1938 - "pry" = { 1939 - version = "0.10.1"; 1842 + gitlab_git = { 1843 + version = "8.2.0"; 1940 1844 source = { 1941 1845 type = "gem"; 1942 - sha256 = "1j0r5fm0wvdwzbh6d6apnp7c0n150hpm9zxpm5xvcgfqr36jaj8z"; 1846 + remotes = ["https://rubygems.org"]; 1847 + sha256 = "0311dl4vh6h7k8xarmpr61fndrhbmfskzjzkkj1rr8321gn8znfv"; 1943 1848 }; 1944 - dependencies = [ 1945 - "coderay" 1946 - "method_source" 1947 - "slop" 1948 - ]; 1949 1849 }; 1950 - "pry-rails" = { 1951 - version = "0.3.4"; 1850 + gitlab_emoji = { 1851 + version = "0.3.1"; 1952 1852 source = { 1953 1853 type = "gem"; 1954 - sha256 = "0a2iinvabis2xmv0z7z7jmh7bbkkngxj2qixfdg5m6qj9x8k1kx6"; 1854 + remotes = ["https://rubygems.org"]; 1855 + sha256 = "1dy746icdmyc548mb5xkavvkn37pk7vv3gznx0p6hff325pan8dj"; 1955 1856 }; 1956 - dependencies = [ 1957 - "pry" 1958 - ]; 1959 1857 }; 1960 - "pyu-ruby-sasl" = { 1961 - version = "0.0.3.3"; 1858 + gitlab-grit = { 1859 + dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"]; 1962 1860 source = { 1861 + remotes = ["https://rubygems.org"]; 1862 + sha256 = "0nv8shx7w7fww8lf5a2rbvf7bq173rllm381m6x7g1i0qqc68q1b"; 1963 1863 type = "gem"; 1964 - sha256 = "1rcpjiz9lrvyb3rd8k8qni0v4ps08psympffyldmmnrqayyad0sn"; 1965 1864 }; 1865 + version = "2.7.3"; 1966 1866 }; 1967 - "quiet_assets" = { 1968 - version = "1.0.3"; 1867 + gitlab-flowdock-git-hook = { 1868 + dependencies = ["flowdock" "gitlab-grit" "multi_json"]; 1969 1869 source = { 1870 + remotes = ["https://rubygems.org"]; 1871 + sha256 = "1s3a10cdbh4xy732b92zcsm5zyc1lhi5v29d76j8mwbqmj11a2p8"; 1970 1872 type = "gem"; 1971 - sha256 = "1q4azw4j1xsgd7qwcig110mfdn1fm0y34y87zw9j9v187xr401b1"; 1972 1873 }; 1973 - dependencies = [ 1974 - "railties" 1975 - ]; 1874 + version = "1.0.1"; 1976 1875 }; 1977 - "rack" = { 1978 - version = "1.5.5"; 1876 + github-markup = { 1979 1877 source = { 1878 + remotes = ["https://rubygems.org"]; 1879 + sha256 = "01r901wcgn0gs0n9h684gs5n90y1vaj9lxnx4z5ig611jwa43ivq"; 1980 1880 type = "gem"; 1981 - sha256 = "1ds3gh8m5gy0d2k4g12k67qid7magg1ia186872yq22ham7sgr2a"; 1982 1881 }; 1882 + version = "1.3.3"; 1983 1883 }; 1984 - "rack-accept" = { 1985 - version = "0.4.5"; 1884 + github-linguist = { 1885 + version = "4.7.5"; 1986 1886 source = { 1987 1887 type = "gem"; 1988 - sha256 = "18jdipx17b4ki33cfqvliapd31sbfvs4mv727awynr6v95a7n936"; 1888 + remotes = ["https://rubygems.org"]; 1889 + sha256 = "1xxm2lbabkc1xmx2myv56a4fkw3wwg9n8w2bzwrl4s33kf6x62ag"; 1989 1890 }; 1990 - dependencies = [ 1991 - "rack" 1992 - ]; 1993 1891 }; 1994 - "rack-attack" = { 1995 - version = "4.3.0"; 1892 + gherkin-ruby = { 1996 1893 source = { 1894 + remotes = ["https://rubygems.org"]; 1895 + sha256 = "18ay7yiibf4sl9n94k7mbi4k5zj2igl4j71qcmkswv69znyx0sn1"; 1997 1896 type = "gem"; 1998 - sha256 = "06v5xvp33aysf8hkl9lwl1yjkc82jdlvcm2361y7ckjgykf8ixfr"; 1999 1897 }; 2000 - dependencies = [ 2001 - "rack" 2002 - ]; 1898 + version = "0.3.2"; 2003 1899 }; 2004 - "rack-cors" = { 2005 - version = "0.2.9"; 1900 + get_process_mem = { 2006 1901 source = { 1902 + remotes = ["https://rubygems.org"]; 1903 + sha256 = "025f7v6bpbgsa2nr0hzv2riggj8qmzbwcyxfgjidpmwh5grh7j29"; 2007 1904 type = "gem"; 2008 - sha256 = "0z88pbbasr86z6h0965cny0gvrnj7zwv31s506xbpivk4vd6n9as"; 2009 1905 }; 1906 + version = "0.2.0"; 2010 1907 }; 2011 - "rack-mini-profiler" = { 2012 - version = "0.9.7"; 1908 + gemojione = { 1909 + version = "2.2.1"; 2013 1910 source = { 2014 1911 type = "gem"; 2015 - sha256 = "03lz6x1s8rbrccfsxl2rq677zqkmkvzv7whbmwzdp71zzyvvm14j"; 1912 + remotes = ["https://rubygems.org"]; 1913 + sha256 = "0av60lajn64z1csmkzfaf5wvpd3x48lcshiknkqr8m0zx3sg7w3h"; 2016 1914 }; 2017 - dependencies = [ 2018 - "rack" 2019 - ]; 2020 1915 }; 2021 - "rack-mount" = { 2022 - version = "0.8.3"; 1916 + gemnasium-gitlab-service = { 1917 + dependencies = ["rugged"]; 2023 1918 source = { 1919 + remotes = ["https://rubygems.org"]; 1920 + sha256 = "1qv7fkahmqkah3770ycrxd0x2ais4z41hb43a0r8q8wcdklns3m3"; 2024 1921 type = "gem"; 2025 - sha256 = "09a1qfaxxsll1kbgz7z0q0nr48sfmfm7akzaviis5bjpa5r00ld2"; 2026 1922 }; 2027 - dependencies = [ 2028 - "rack" 2029 - ]; 1923 + version = "0.2.6"; 2030 1924 }; 2031 - "rack-oauth2" = { 2032 - version = "1.0.10"; 1925 + fuubar = { 1926 + dependencies = ["rspec" "ruby-progressbar"]; 2033 1927 source = { 1928 + remotes = ["https://rubygems.org"]; 1929 + sha256 = "0xwqs24y8s73aayh39si17kccsmr0bjgmi6jrjyfp7gkjb6iyhpv"; 2034 1930 type = "gem"; 2035 - sha256 = "1srg4hdnyn6bwx225snyq7flb0cn96ppdvicwls6qvp6i4n91k36"; 2036 1931 }; 2037 - dependencies = [ 2038 - "activesupport" 2039 - "attr_required" 2040 - "httpclient" 2041 - "multi_json" 2042 - "rack" 2043 - ]; 1932 + version = "2.0.0"; 2044 1933 }; 2045 - "rack-protection" = { 2046 - version = "1.5.3"; 1934 + formatador = { 2047 1935 source = { 1936 + remotes = ["https://rubygems.org"]; 1937 + sha256 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0"; 2048 1938 type = "gem"; 2049 - sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r"; 2050 1939 }; 2051 - dependencies = [ 2052 - "rack" 2053 - ]; 1940 + version = "0.2.5"; 2054 1941 }; 2055 - "rack-test" = { 2056 - version = "0.6.3"; 1942 + foreman = { 1943 + dependencies = ["thor"]; 2057 1944 source = { 1945 + remotes = ["https://rubygems.org"]; 1946 + sha256 = "1caz8mi7gq1hs4l1flcyyw1iw1bdvdbhppsvy12akr01k3s17xaq"; 2058 1947 type = "gem"; 2059 - sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z"; 2060 1948 }; 2061 - dependencies = [ 2062 - "rack" 2063 - ]; 1949 + version = "0.78.0"; 2064 1950 }; 2065 - "rails" = { 2066 - version = "4.1.12"; 1951 + font-awesome-rails = { 1952 + dependencies = ["railties"]; 2067 1953 source = { 1954 + remotes = ["https://rubygems.org"]; 1955 + sha256 = "09x1bg98sp2v1lsg9h2bal915q811xq84h9d74p1f3378ga63c1x"; 2068 1956 type = "gem"; 2069 - sha256 = "0k2n6y92gmysk8y6j1hy6av53f07hhzkhw41qfqwr2hgqc6q8idv"; 2070 1957 }; 2071 - dependencies = [ 2072 - "actionmailer" 2073 - "actionpack" 2074 - "actionview" 2075 - "activemodel" 2076 - "activerecord" 2077 - "activesupport" 2078 - "railties" 2079 - "sprockets-rails" 2080 - ]; 1958 + version = "4.5.0.0"; 2081 1959 }; 2082 - "rails-observers" = { 1960 + fog-xml = { 1961 + dependencies = ["fog-core" "nokogiri"]; 1962 + source = { 1963 + remotes = ["https://rubygems.org"]; 1964 + sha256 = "1576sbzza47z48p0k9h1wg3rhgcvcvdd1dfz3xx1cgahwr564fqa"; 1965 + type = "gem"; 1966 + }; 2083 1967 version = "0.1.2"; 1968 + }; 1969 + fog-xenserver = { 1970 + dependencies = ["fog-core" "fog-xml"]; 2084 1971 source = { 1972 + remotes = ["https://rubygems.org"]; 1973 + sha256 = "1ngw8hh8ljk7wi0cp8n4b4jcy2acx0yqzjk7851m3mp0kji5dlgl"; 2085 1974 type = "gem"; 2086 - sha256 = "1lsw19jzmvipvrfy2z04hi7r29dvkfc43h43vs67x6lsj9rxwwcy"; 1975 + }; 1976 + version = "0.2.2"; 1977 + }; 1978 + fog-voxel = { 1979 + dependencies = ["fog-core" "fog-xml"]; 1980 + source = { 1981 + remotes = ["https://rubygems.org"]; 1982 + sha256 = "10skdnj59yf4jpvq769njjrvh2l0wzaa7liva8n78qq003mvmfgx"; 1983 + type = "gem"; 2087 1984 }; 2088 - dependencies = [ 2089 - "activemodel" 2090 - ]; 1985 + version = "0.1.0"; 1986 + }; 1987 + fog-vmfusion = { 1988 + dependencies = ["fission" "fog-core"]; 1989 + source = { 1990 + remotes = ["https://rubygems.org"]; 1991 + sha256 = "0g0l0k9ylxk1h9pzqr6h2ba98fl47lpp3j19lqv4jxw0iw1rqxn4"; 1992 + type = "gem"; 1993 + }; 1994 + version = "0.1.0"; 1995 + }; 1996 + fog-terremark = { 1997 + dependencies = ["fog-core" "fog-xml"]; 1998 + source = { 1999 + remotes = ["https://rubygems.org"]; 2000 + sha256 = "01lfkh9jppj0iknlklmwyb7ym3bfhkq58m3absb6rf5a5mcwi3lf"; 2001 + type = "gem"; 2002 + }; 2003 + version = "0.1.0"; 2091 2004 }; 2092 - "railties" = { 2093 - version = "4.1.12"; 2005 + fog-storm_on_demand = { 2006 + dependencies = ["fog-core" "fog-json"]; 2094 2007 source = { 2008 + remotes = ["https://rubygems.org"]; 2009 + sha256 = "0fif1x8ci095b2yyilf65n7x6iyvn448azrsnmwsdkriy8vxxv3y"; 2095 2010 type = "gem"; 2096 - sha256 = "0v16grd6ip3ijiz1v36myiirqx9fx004lfvnsmh28b2ddjxcci4q"; 2097 2011 }; 2098 - dependencies = [ 2099 - "actionpack" 2100 - "activesupport" 2101 - "rake" 2102 - "thor" 2103 - ]; 2012 + version = "0.1.1"; 2104 2013 }; 2105 - "rainbow" = { 2106 - version = "2.0.0"; 2014 + fog-softlayer = { 2015 + dependencies = ["fog-core" "fog-json"]; 2107 2016 source = { 2017 + remotes = ["https://rubygems.org"]; 2018 + sha256 = "1zax2wws0q8pm787jnlxd2xlj23f2acz0s6jl5nzczyxjgll571r"; 2108 2019 type = "gem"; 2109 - sha256 = "0dsnzfjiih2w8npsjab3yx1ssmmvmgjkbxny0i9yzrdy7whfw7b4"; 2110 2020 }; 2021 + version = "1.0.3"; 2111 2022 }; 2112 - "raindrops" = { 2113 - version = "0.15.0"; 2023 + fog-serverlove = { 2024 + dependencies = ["fog-core" "fog-json"]; 2114 2025 source = { 2026 + remotes = ["https://rubygems.org"]; 2027 + sha256 = "0hxgmwzygrw25rbsy05i6nzsyr0xl7xj5j2sjpkb9n9wli5sagci"; 2115 2028 type = "gem"; 2116 - sha256 = "1hv0xhr762axywr937czi92fs0x3zk7k22vg6f4i7rr8d05sp560"; 2117 2029 }; 2030 + version = "0.1.2"; 2118 2031 }; 2119 - "rake" = { 2120 - version = "10.4.2"; 2032 + fog-sakuracloud = { 2033 + dependencies = ["fog-core" "fog-json"]; 2121 2034 source = { 2035 + remotes = ["https://rubygems.org"]; 2036 + sha256 = "08krsn9sk5sx0aza812g31r169bd0zanb8pq5am3a64j6azarimd"; 2122 2037 type = "gem"; 2123 - sha256 = "1rn03rqlf1iv6n87a78hkda2yqparhhaivfjpizblmxvlw2hk5r8"; 2124 2038 }; 2039 + version = "1.7.5"; 2125 2040 }; 2126 - "raphael-rails" = { 2127 - version = "2.1.2"; 2041 + fog-riakcs = { 2042 + dependencies = ["fog-core" "fog-json" "fog-xml"]; 2128 2043 source = { 2044 + remotes = ["https://rubygems.org"]; 2045 + sha256 = "1nbxc4dky3agfwrmgm1aqmi59p6vnvfnfbhhg7xpg4c2cf41whxm"; 2129 2046 type = "gem"; 2130 - sha256 = "0sjiaymvfn4al5dr1pza5i142byan0fxnj4rymziyql2bzvdm2bc"; 2131 2047 }; 2048 + version = "0.1.0"; 2132 2049 }; 2133 - "rb-fsevent" = { 2134 - version = "0.9.5"; 2050 + fog-radosgw = { 2051 + dependencies = ["fog-core" "fog-json" "fog-xml"]; 2135 2052 source = { 2053 + remotes = ["https://rubygems.org"]; 2054 + sha256 = "0nslgv8yp5qkiryj3zsm91gs7s6i626igj61kwxjjwk2yv6swyr6"; 2136 2055 type = "gem"; 2137 - sha256 = "1p4rz4qqarl7xg2aldpra54h81yal93cbxdy02lmb9kf6f7y2fz4"; 2138 2056 }; 2057 + version = "0.0.5"; 2139 2058 }; 2140 - "rb-inotify" = { 2141 - version = "0.9.5"; 2059 + fog-profitbricks = { 2060 + dependencies = ["fog-core" "fog-xml" "nokogiri"]; 2142 2061 source = { 2062 + remotes = ["https://rubygems.org"]; 2063 + sha256 = "154sqs2dcmvg21v4m3fj8f09z5i70sq8a485v6rdygsffs8xrycn"; 2143 2064 type = "gem"; 2144 - sha256 = "0kddx2ia0qylw3r52nhg83irkaclvrncgy2m1ywpbhlhsz1rymb9"; 2145 2065 }; 2146 - dependencies = [ 2147 - "ffi" 2148 - ]; 2066 + version = "0.0.5"; 2149 2067 }; 2150 - "rbvmomi" = { 2151 - version = "1.8.2"; 2068 + fog-powerdns = { 2069 + dependencies = ["fog-core" "fog-json" "fog-xml"]; 2152 2070 source = { 2071 + remotes = ["https://rubygems.org"]; 2072 + sha256 = "08zavzwfkk344gz83phz4sy9nsjznsdjsmn1ifp6ja17bvydlhh7"; 2153 2073 type = "gem"; 2154 - sha256 = "0gjbfazl2q42m1m51nvv14q7y5lbya272flmvhpqvg5z10nbxanj"; 2155 2074 }; 2156 - dependencies = [ 2157 - "builder" 2158 - "nokogiri" 2159 - "trollop" 2160 - ]; 2075 + version = "0.1.1"; 2161 2076 }; 2162 - "rdoc" = { 2163 - version = "3.12.2"; 2077 + fog-local = { 2078 + dependencies = ["fog-core"]; 2164 2079 source = { 2080 + remotes = ["https://rubygems.org"]; 2081 + sha256 = "0i5hxwzmc2ag3z9nlligsaf679kp2pz39cd8n2s9cmxaamnlh2s3"; 2165 2082 type = "gem"; 2166 - sha256 = "1v9k4sp5yzj2bshngckdvivj6bszciskk1nd2r3wri2ygs7vgqm8"; 2167 2083 }; 2168 - dependencies = [ 2169 - "json" 2170 - ]; 2084 + version = "0.2.1"; 2171 2085 }; 2172 - "redcarpet" = { 2173 - version = "3.3.2"; 2086 + fog-json = { 2087 + dependencies = ["fog-core" "multi_json"]; 2174 2088 source = { 2089 + remotes = ["https://rubygems.org"]; 2090 + sha256 = "0advkkdjajkym77r3c0bg2rlahl2akj0vl4p5r273k2qmi16n00r"; 2175 2091 type = "gem"; 2176 - sha256 = "1xf95nrc8jgv9hjzjnbf3ljwmp29rqxdamyj9crza2czl4k63rnm"; 2177 2092 }; 2093 + version = "1.0.2"; 2178 2094 }; 2179 - "redis" = { 2180 - version = "3.2.1"; 2095 + fog-google = { 2096 + dependencies = ["fog-core" "fog-json" "fog-xml"]; 2181 2097 source = { 2098 + remotes = ["https://rubygems.org"]; 2099 + sha256 = "0z4vmswpqwph04c0wqzrscns1d1wdm8kbxx457bv156mawzrhfj3"; 2182 2100 type = "gem"; 2183 - sha256 = "16jzlqp80qiqg5cdc9l144n6k3c5qj9if4pgij87sscn8ahi993k"; 2184 2101 }; 2102 + version = "0.1.0"; 2185 2103 }; 2186 - "redis-actionpack" = { 2187 - version = "4.0.0"; 2104 + fog-ecloud = { 2105 + dependencies = ["fog-core" "fog-xml"]; 2188 2106 source = { 2107 + remotes = ["https://rubygems.org"]; 2108 + sha256 = "18rb4qjad9xwwqvvpj8r2h0hi9svy71pm4d3fc28cdcnfarmdi06"; 2189 2109 type = "gem"; 2190 - sha256 = "0mad0v3qanw3xi9zs03f4w8sn1qb3x501k3235ck8m5i8vgjk474"; 2191 2110 }; 2192 - dependencies = [ 2193 - "actionpack" 2194 - "redis-rack" 2195 - "redis-store" 2196 - ]; 2111 + version = "0.3.0"; 2197 2112 }; 2198 - "redis-activesupport" = { 2199 - version = "4.1.1"; 2113 + fog-dynect = { 2114 + dependencies = ["fog-core" "fog-json" "fog-xml"]; 2200 2115 source = { 2116 + remotes = ["https://rubygems.org"]; 2117 + sha256 = "18lqmdkm22254z86jh3aa9v9vqk8bgbd3d1m0w7az3ij47ak7kch"; 2201 2118 type = "gem"; 2202 - sha256 = "1xciffiqbhksy534sysdd8pgn2hlvyrs1qb4x1kbcx9f3f83y551"; 2203 2119 }; 2204 - dependencies = [ 2205 - "activesupport" 2206 - "redis-store" 2207 - ]; 2120 + version = "0.0.2"; 2208 2121 }; 2209 - "redis-namespace" = { 2210 - version = "1.5.2"; 2122 + fog-core = { 2123 + dependencies = ["builder" "excon" "formatador"]; 2211 2124 source = { 2125 + remotes = ["https://rubygems.org"]; 2126 + sha256 = "02z91r3f5a64hlalm6h39v0778yl2kk3qvva0zvplpp9hpwbwzhl"; 2212 2127 type = "gem"; 2213 - sha256 = "0rp8gfkznfxqzxk9s976k71jnljkh0clkrhnp6vgx46s5yhj9g25"; 2214 2128 }; 2215 - dependencies = [ 2216 - "redis" 2217 - ]; 2129 + version = "1.35.0"; 2218 2130 }; 2219 - "redis-rack" = { 2220 - version = "1.5.0"; 2131 + fog-brightbox = { 2132 + dependencies = ["fog-core" "fog-json" "inflecto"]; 2221 2133 source = { 2134 + remotes = ["https://rubygems.org"]; 2135 + sha256 = "0p7rbx587hb1d1am90dcr3zdp6y50c2zddh97yfgl62vji0pbkkd"; 2222 2136 type = "gem"; 2223 - sha256 = "1y1mxx8gn0krdrpwllv7fqsbvki1qjnb2dz8b4q9gwc326829gk8"; 2224 2137 }; 2225 - dependencies = [ 2226 - "rack" 2227 - "redis-store" 2228 - ]; 2138 + version = "0.10.1"; 2229 2139 }; 2230 - "redis-rails" = { 2231 - version = "4.0.0"; 2140 + fog-aws = { 2141 + dependencies = ["fog-core" "fog-json" "fog-xml" "ipaddress"]; 2232 2142 source = { 2143 + remotes = ["https://rubygems.org"]; 2144 + sha256 = "1pzfahq8h3alfflb5dr8lm02q27x81vm96qn5zyfdlx86yy7bq96"; 2233 2145 type = "gem"; 2234 - sha256 = "0igww7hb58aq74mh50dli3zjg78b54y8nhd0h1h9vz4vgjd4q8m7"; 2235 2146 }; 2236 - dependencies = [ 2237 - "redis-actionpack" 2238 - "redis-activesupport" 2239 - "redis-store" 2240 - ]; 2147 + version = "0.8.1"; 2241 2148 }; 2242 - "redis-store" = { 2243 - version = "1.1.6"; 2149 + fog-atmos = { 2150 + dependencies = ["fog-core" "fog-xml"]; 2244 2151 source = { 2152 + remotes = ["https://rubygems.org"]; 2153 + sha256 = "1aaxgnw9zy96gsh4h73kszypc32sx497s6bslvhfqh32q9d1y8c9"; 2245 2154 type = "gem"; 2246 - sha256 = "1x8pfpd6c3xxb3l9nyggi9qpgxcp9k9rkdwwl80m95lhynwaxcds"; 2247 2155 }; 2248 - dependencies = [ 2249 - "redis" 2250 - ]; 2156 + version = "0.1.0"; 2251 2157 }; 2252 - "request_store" = { 2253 - version = "1.2.0"; 2158 + fog-aliyun = { 2159 + dependencies = ["fog-core" "fog-json" "ipaddress" "xml-simple"]; 2254 2160 source = { 2161 + remotes = ["https://rubygems.org"]; 2162 + sha256 = "1i76g8sdskyfc0gcnd6n9i757s7dmwg3wf6spcr2xh8wzyxkm1pj"; 2255 2163 type = "gem"; 2256 - sha256 = "1s7lk5klbg2qfh8hgqymjrlwgpmjmfx03x1hniq16shd1cjwch45"; 2257 2164 }; 2165 + version = "0.1.0"; 2258 2166 }; 2259 - "rerun" = { 2260 - version = "0.10.0"; 2167 + fog = { 2168 + dependencies = ["fog-aliyun" "fog-atmos" "fog-aws" "fog-brightbox" "fog-core" "fog-dynect" "fog-ecloud" "fog-google" "fog-json" "fog-local" "fog-powerdns" "fog-profitbricks" "fog-radosgw" "fog-riakcs" "fog-sakuracloud" "fog-serverlove" "fog-softlayer" "fog-storm_on_demand" "fog-terremark" "fog-vmfusion" "fog-voxel" "fog-xenserver" "fog-xml" "ipaddress" "nokogiri"]; 2261 2169 source = { 2170 + remotes = ["https://rubygems.org"]; 2171 + sha256 = "1ml31jdycqdm8w7w3l9pbyrgbnmrrnhmkppa2x4bwi9as1n1jmwq"; 2262 2172 type = "gem"; 2263 - sha256 = "0hsw0q0wriz4h55hkm9yd313hqixgsgnp4wrl8v4k4zwz41j76xk"; 2264 2173 }; 2265 - dependencies = [ 2266 - "listen" 2267 - ]; 2174 + version = "1.36.0"; 2268 2175 }; 2269 - "responders" = { 2270 - version = "1.1.2"; 2176 + flowdock = { 2177 + dependencies = ["httparty" "multi_json"]; 2271 2178 source = { 2179 + remotes = ["https://rubygems.org"]; 2180 + sha256 = "04nrvg4gzgabf5mnnhccl8bwrkvn3y4pm7a1dqzqhpvfr4m5pafg"; 2272 2181 type = "gem"; 2273 - sha256 = "178279kf1kaah917r6zwzw5kk9swj28yxmg6aqffna7789kjhy3f"; 2274 2182 }; 2275 - dependencies = [ 2276 - "railties" 2277 - ]; 2183 + version = "0.7.1"; 2278 2184 }; 2279 - "rest-client" = { 2280 - version = "1.8.0"; 2185 + flog = { 2186 + dependencies = ["ruby_parser" "sexp_processor"]; 2281 2187 source = { 2188 + remotes = ["https://rubygems.org"]; 2189 + sha256 = "1asrcdj6gh5mxcimqak94jjyyi5cxnqn904lc8pmrljg1nv1bxpm"; 2282 2190 type = "gem"; 2283 - sha256 = "1m8z0c4yf6w47iqz6j2p7x1ip4qnnzvhdph9d5fgx081cvjly3p7"; 2284 2191 }; 2285 - dependencies = [ 2286 - "http-cookie" 2287 - "mime-types" 2288 - "netrc" 2289 - ]; 2192 + version = "4.3.2"; 2290 2193 }; 2291 - "rinku" = { 2292 - version = "1.7.3"; 2194 + flay = { 2195 + dependencies = ["ruby_parser" "sexp_processor"]; 2293 2196 source = { 2197 + remotes = ["https://rubygems.org"]; 2198 + sha256 = "0zcp9nmnfqixdcqa2dzwwjy5np4n2n16bj25gw7bbzbjp9hqzhn6"; 2294 2199 type = "gem"; 2295 - sha256 = "1jh6nys332brph55i6x6cil6swm086kxjw34wq131nl6mwryqp7b"; 2296 2200 }; 2201 + version = "2.6.1"; 2297 2202 }; 2298 - "rotp" = { 2299 - version = "2.1.1"; 2203 + fission = { 2204 + dependencies = ["CFPropertyList"]; 2300 2205 source = { 2206 + remotes = ["https://rubygems.org"]; 2207 + sha256 = "09pmp1j1rr8r3pcmbn2na2ls7s1j9ijbxj99xi3a8r6v5xhjdjzh"; 2301 2208 type = "gem"; 2302 - sha256 = "1nzsc9hfxijnyzjbv728ln9dm80bc608chaihjdk63i2wi4m529g"; 2303 2209 }; 2210 + version = "0.5.0"; 2304 2211 }; 2305 - "rouge" = { 2306 - version = "1.10.1"; 2212 + ffi = { 2307 2213 source = { 2214 + remotes = ["https://rubygems.org"]; 2215 + sha256 = "1m5mprppw0xcrv2mkim5zsk70v089ajzqiq5hpyb0xg96fcyzyxj"; 2308 2216 type = "gem"; 2309 - sha256 = "0wp8as9ypdy18kdj9h70kny1rdfq71mr8cj2bpahr9vxjjvjasqz"; 2310 2217 }; 2218 + version = "1.9.10"; 2311 2219 }; 2312 - "rqrcode" = { 2313 - version = "0.7.0"; 2220 + ffaker = { 2314 2221 source = { 2222 + remotes = ["https://rubygems.org"]; 2223 + sha256 = "19fnbbsw87asyb1hvkr870l2yldah2jcjb8074pgyrma5lynwmn0"; 2315 2224 type = "gem"; 2316 - sha256 = "188n1mvc7klrlw30bai16sdg4yannmy7cz0sg0nvm6f1kjx5qflb"; 2317 2225 }; 2318 - dependencies = [ 2319 - "chunky_png" 2320 - ]; 2226 + version = "2.0.0"; 2321 2227 }; 2322 - "rqrcode-rails3" = { 2323 - version = "0.1.7"; 2228 + fastercsv = { 2324 2229 source = { 2230 + remotes = ["https://rubygems.org"]; 2231 + sha256 = "1df3vfgw5wg0s405z0pj0rfcvnl9q6wak7ka8gn0xqg4cag1k66h"; 2325 2232 type = "gem"; 2326 - sha256 = "1i28rwmj24ssk91chn0g7qsnvn003y3s5a7jsrg3w4l5ckr841bg"; 2327 2233 }; 2328 - dependencies = [ 2329 - "rqrcode" 2330 - ]; 2234 + version = "1.5.5"; 2331 2235 }; 2332 - "rspec" = { 2333 - version = "3.3.0"; 2236 + faraday_middleware-multi_json = { 2237 + dependencies = ["faraday_middleware" "multi_json"]; 2334 2238 source = { 2239 + remotes = ["https://rubygems.org"]; 2240 + sha256 = "0651sxhzbq9xfq3hbpmrp0nbybxnm9ja3m97k386m4bqgamlvz1q"; 2335 2241 type = "gem"; 2336 - sha256 = "1bn5zs71agc0zyns2r3c8myi5bxw3q7xnzp7f3v5b7hbil1qym4r"; 2337 2242 }; 2338 - dependencies = [ 2339 - "rspec-core" 2340 - "rspec-expectations" 2341 - "rspec-mocks" 2342 - ]; 2243 + version = "0.0.6"; 2343 2244 }; 2344 - "rspec-core" = { 2345 - version = "3.3.2"; 2245 + faraday_middleware = { 2246 + dependencies = ["faraday"]; 2346 2247 source = { 2248 + remotes = ["https://rubygems.org"]; 2249 + sha256 = "0nxia26xzy8i56qfyz1bg8dg9yb26swpgci8n5jry8mh4bnx5r5h"; 2347 2250 type = "gem"; 2348 - sha256 = "0xw5qi936j6nz9fixi2mwy03f406761cd72bzyvd61pr854d7hy1"; 2349 2251 }; 2350 - dependencies = [ 2351 - "rspec-support" 2352 - ]; 2252 + version = "0.10.0"; 2353 2253 }; 2354 - "rspec-expectations" = { 2355 - version = "3.3.1"; 2254 + faraday = { 2255 + dependencies = ["multipart-post"]; 2356 2256 source = { 2257 + remotes = ["https://rubygems.org"]; 2258 + sha256 = "1kplqkpn2s2yl3lxdf6h7sfldqvkbkpxwwxhyk7mdhjplb5faqh6"; 2357 2259 type = "gem"; 2358 - sha256 = "1d0b5hpkxlr9f3xpsbhvl3irnk4smmycx2xnmc8qv3pqaa7mb7ah"; 2359 2260 }; 2360 - dependencies = [ 2361 - "diff-lcs" 2362 - "rspec-support" 2363 - ]; 2261 + version = "0.9.2"; 2364 2262 }; 2365 - "rspec-mocks" = { 2366 - version = "3.3.2"; 2263 + factory_girl_rails = { 2264 + dependencies = ["factory_girl" "railties"]; 2367 2265 source = { 2266 + remotes = ["https://rubygems.org"]; 2267 + sha256 = "1jj0yl6mfildb4g79dwgc1q5pv2pa65k9b1ml43mi8mg62j8mrhz"; 2368 2268 type = "gem"; 2369 - sha256 = "1lfbzscmpyixlbapxmhy2s69596vs1z00lv590l51hgdw70z92vg"; 2370 2269 }; 2371 - dependencies = [ 2372 - "diff-lcs" 2373 - "rspec-support" 2374 - ]; 2270 + version = "4.3.0"; 2375 2271 }; 2376 - "rspec-rails" = { 2377 - version = "3.3.3"; 2272 + factory_girl = { 2273 + dependencies = ["activesupport"]; 2378 2274 source = { 2275 + remotes = ["https://rubygems.org"]; 2276 + sha256 = "13z20a4b7z1c8vbz0qz5ranssdprldwvwlgjmn38x311sfjmp9dz"; 2379 2277 type = "gem"; 2380 - sha256 = "0m66n9p3a7d3fmrzkbh8312prb6dhrgmp53g1amck308ranasv2a"; 2381 2278 }; 2382 - dependencies = [ 2383 - "actionpack" 2384 - "activesupport" 2385 - "railties" 2386 - "rspec-core" 2387 - "rspec-expectations" 2388 - "rspec-mocks" 2389 - "rspec-support" 2390 - ]; 2279 + version = "4.3.0"; 2391 2280 }; 2392 - "rspec-support" = { 2393 - version = "3.3.0"; 2281 + expression_parser = { 2394 2282 source = { 2283 + remotes = ["https://rubygems.org"]; 2284 + sha256 = "1938z3wmmdabqxlh5d5c56xfg1jc6z15p7zjyhvk7364zwydnmib"; 2395 2285 type = "gem"; 2396 - sha256 = "1cyagig8slxjas8mbg5f8bl240b8zgr8mnjsvrznag1fwpkh4h27"; 2397 2286 }; 2287 + version = "0.9.0"; 2398 2288 }; 2399 - "rubocop" = { 2400 - version = "0.28.0"; 2289 + execjs = { 2401 2290 source = { 2291 + remotes = ["https://rubygems.org"]; 2292 + sha256 = "0grlxwiccbnflxs30r3h7g23xnps5knav1jyqkk3anvm8363ifjw"; 2402 2293 type = "gem"; 2403 - sha256 = "07n4gha1dp1n15np5v8p58980lsiys3wa9h39lrvnzxgq18m3c4d"; 2404 2294 }; 2405 - dependencies = [ 2406 - "astrolabe" 2407 - "parser" 2408 - "powerpack" 2409 - "rainbow" 2410 - "ruby-progressbar" 2411 - ]; 2295 + version = "2.6.0"; 2412 2296 }; 2413 - "ruby-fogbugz" = { 2414 - version = "0.2.1"; 2297 + excon = { 2415 2298 source = { 2299 + remotes = ["https://rubygems.org"]; 2300 + sha256 = "1shb4g3dhsfkywgjv6123yrvp2c8bvi8hqmq47iqa5lp72sn4b4w"; 2416 2301 type = "gem"; 2417 - sha256 = "1jj0gpkycbrivkh2q3429vj6mbgx6axxisg69slj3c4mgvzfgchm"; 2418 2302 }; 2419 - dependencies = [ 2420 - "crack" 2421 - ]; 2303 + version = "0.45.4"; 2422 2304 }; 2423 - "ruby-progressbar" = { 2424 - version = "1.7.5"; 2305 + eventmachine = { 2425 2306 source = { 2307 + remotes = ["https://rubygems.org"]; 2308 + sha256 = "1frvpk3p73xc64qkn0ymll3flvn4xcycq5yx8a43zd3gyzc1ifjp"; 2426 2309 type = "gem"; 2427 - sha256 = "0hynaavnqzld17qdx9r7hfw00y16ybldwq730zrqfszjwgi59ivi"; 2428 2310 }; 2311 + version = "1.0.8"; 2429 2312 }; 2430 - "ruby-saml" = { 2431 - version = "1.0.0"; 2313 + escape_utils = { 2432 2314 source = { 2315 + remotes = ["https://rubygems.org"]; 2316 + sha256 = "0hb8nmrgmd9n5dhih86fp91sf26mmw14sdn5vswg5g20svrqxc7x"; 2433 2317 type = "gem"; 2434 - sha256 = "0hqn49ca2ln5ybc77vpm1vs0szk3pyrz3hnbkbqrkp864mniisi4"; 2435 2318 }; 2436 - dependencies = [ 2437 - "nokogiri" 2438 - "uuid" 2439 - ]; 2319 + version = "1.1.0"; 2440 2320 }; 2441 - "ruby2ruby" = { 2442 - version = "2.1.4"; 2321 + erubis = { 2443 2322 source = { 2323 + remotes = ["https://rubygems.org"]; 2324 + sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3"; 2444 2325 type = "gem"; 2445 - sha256 = "1h0bwjivcsazfd9j9phs640xxqwgvggj9kmafin88ahf7j77spim"; 2446 2326 }; 2447 - dependencies = [ 2448 - "ruby_parser" 2449 - "sexp_processor" 2450 - ]; 2327 + version = "2.7.0"; 2451 2328 }; 2452 - "ruby_parser" = { 2453 - version = "3.5.0"; 2329 + equalizer = { 2454 2330 source = { 2331 + remotes = ["https://rubygems.org"]; 2332 + sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4"; 2455 2333 type = "gem"; 2456 - sha256 = "1l1lzbn5ywfsg8m8cvxwb415p1816ikvjqnsh5as9h4g1vcknw3y"; 2457 2334 }; 2458 - dependencies = [ 2459 - "sexp_processor" 2460 - ]; 2335 + version = "0.0.11"; 2461 2336 }; 2462 - "rubyntlm" = { 2463 - version = "0.5.2"; 2337 + encryptor = { 2464 2338 source = { 2339 + remotes = ["https://rubygems.org"]; 2340 + sha256 = "04wqqda081h7hmhwjjx1yqxprxjk8s5jgv837xqv1bpxiv7f4v1y"; 2465 2341 type = "gem"; 2466 - sha256 = "04l8686hl0829x4acsnbz0licf8n6794p7shz8iyahin1jnqg3d7"; 2467 2342 }; 2343 + version = "1.3.0"; 2468 2344 }; 2469 - "rubypants" = { 2470 - version = "0.2.0"; 2345 + email_spec = { 2346 + dependencies = ["launchy" "mail"]; 2471 2347 source = { 2348 + remotes = ["https://rubygems.org"]; 2349 + sha256 = "00p1cc69ncrgg7m45va43pszip8anx5735w1lsb7p5ygkyw8nnpv"; 2472 2350 type = "gem"; 2473 - sha256 = "1vpdkrc4c8qhrxph41wqwswl28q5h5h994gy4c1mlrckqzm3hzph"; 2474 2351 }; 2352 + version = "1.6.0"; 2475 2353 }; 2476 - "rugged" = { 2477 - version = "0.22.2"; 2354 + email_reply_parser = { 2478 2355 source = { 2356 + remotes = ["https://rubygems.org"]; 2357 + sha256 = "0k2p229mv7xn7q627zwmvhrcvba4b9m70pw2jfjm6iimg2vmf22r"; 2479 2358 type = "gem"; 2480 - sha256 = "179pnnvlsrwd96csmhwhy45y4f5p7qh3xcbg6v3hdv5m9qqcirpp"; 2481 2359 }; 2360 + version = "0.5.8"; 2482 2361 }; 2483 - "safe_yaml" = { 2484 - version = "1.0.4"; 2362 + dropzonejs-rails = { 2363 + dependencies = ["rails"]; 2485 2364 source = { 2365 + remotes = ["https://rubygems.org"]; 2366 + sha256 = "1vqqxzv6qdqy47m2q28adnmccfvc17p2bmkkaqjvrczrhvkkha64"; 2486 2367 type = "gem"; 2487 - sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094"; 2488 2368 }; 2369 + version = "0.7.2"; 2489 2370 }; 2490 - "sanitize" = { 2491 - version = "2.1.0"; 2371 + doorkeeper = { 2372 + dependencies = ["railties"]; 2492 2373 source = { 2374 + remotes = ["https://rubygems.org"]; 2375 + sha256 = "0wim84wkvx758cfb8q92w3hhvnfbwr990x1mmfv1ss1ivjz8fmm0"; 2493 2376 type = "gem"; 2494 - sha256 = "0xsv6xqrlz91rd8wifjknadbl3z5h6qphmxy0hjb189qbdghggn3"; 2495 2377 }; 2496 - dependencies = [ 2497 - "nokogiri" 2498 - ]; 2378 + version = "2.2.2"; 2499 2379 }; 2500 - "sass" = { 2501 - version = "3.2.19"; 2380 + domain_name = { 2381 + dependencies = ["unf"]; 2502 2382 source = { 2383 + remotes = ["https://rubygems.org"]; 2384 + sha256 = "16qvfrmcwlzz073aas55mpw2nhyhjcn96s524w0g1wlml242hjav"; 2503 2385 type = "gem"; 2504 - sha256 = "1b5z55pmban9ry7k572ghmpcz9h04nbrdhdfpcz8zaldv5v7vkfx"; 2505 2386 }; 2387 + version = "0.5.25"; 2506 2388 }; 2507 - "sass-rails" = { 2508 - version = "4.0.5"; 2389 + docile = { 2509 2390 source = { 2391 + remotes = ["https://rubygems.org"]; 2392 + sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx"; 2510 2393 type = "gem"; 2511 - sha256 = "1nw78ijbxpaf0pdr6c0jx63nna1l9m8s1mmb4m3g2clx0i0xm4wb"; 2512 2394 }; 2513 - dependencies = [ 2514 - "railties" 2515 - "sass" 2516 - "sprockets" 2517 - "sprockets-rails" 2518 - ]; 2395 + version = "1.1.5"; 2519 2396 }; 2520 - "sawyer" = { 2521 - version = "0.6.0"; 2397 + diffy = { 2522 2398 source = { 2399 + remotes = ["https://rubygems.org"]; 2400 + sha256 = "0il0ri511g9rm88qbvncbzgwc6wk6265hmnf7grcczmrs1z49vl0"; 2523 2401 type = "gem"; 2524 - sha256 = "0fk43bzwn816qj1ksiicm2i1kmzv5675cmnvk57kmfmi4rfsyjpy"; 2525 2402 }; 2526 - dependencies = [ 2527 - "addressable" 2528 - "faraday" 2529 - ]; 2403 + version = "3.0.7"; 2530 2404 }; 2531 - "sdoc" = { 2532 - version = "0.3.20"; 2405 + diff-lcs = { 2533 2406 source = { 2407 + remotes = ["https://rubygems.org"]; 2408 + sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1"; 2534 2409 type = "gem"; 2535 - sha256 = "17l8qk0ld47z4h5avcnylvds8nc6dp25zc64w23z8li2hs341xf2"; 2536 2410 }; 2537 - dependencies = [ 2538 - "json" 2539 - "rdoc" 2540 - ]; 2411 + version = "1.2.5"; 2541 2412 }; 2542 - "seed-fu" = { 2543 - version = "2.3.5"; 2413 + devise-two-factor = { 2414 + dependencies = ["activesupport" "attr_encrypted" "devise" "railties" "rotp"]; 2544 2415 source = { 2416 + remotes = ["https://rubygems.org"]; 2417 + sha256 = "1v2wva971ds48af47rj4ywavlmz7qzbmf1jpf1l3xn3mscz52hln"; 2545 2418 type = "gem"; 2546 - sha256 = "11xja82yxir1kwccrzng29h7w911i9j0xj2y7y949yqnw91v12vw"; 2547 2419 }; 2548 - dependencies = [ 2549 - "activerecord" 2550 - "activesupport" 2551 - ]; 2420 + version = "2.0.1"; 2552 2421 }; 2553 - "select2-rails" = { 2554 - version = "3.5.9.3"; 2422 + devise-async = { 2423 + dependencies = ["devise"]; 2555 2424 source = { 2425 + remotes = ["https://rubygems.org"]; 2426 + sha256 = "11llg7ggzpmg4lb9gh4sx55spvp98sal5r803gjzamps9crfq6mm"; 2556 2427 type = "gem"; 2557 - sha256 = "0ni2k74n73y3gv56gs37gkjlh912szjf6k9j483wz41m3xvlz7fj"; 2558 2428 }; 2559 - dependencies = [ 2560 - "thor" 2561 - ]; 2429 + version = "0.9.0"; 2562 2430 }; 2563 - "settingslogic" = { 2564 - version = "2.0.9"; 2431 + devise = { 2432 + dependencies = ["bcrypt" "orm_adapter" "railties" "responders" "thread_safe" "warden"]; 2565 2433 source = { 2434 + remotes = ["https://rubygems.org"]; 2435 + sha256 = "00h0xdl4a8pjpb0gbgy4w6q9j2mpczkmj23195zmjrg2b1gl8f2q"; 2566 2436 type = "gem"; 2567 - sha256 = "1ria5zcrk1nf0b9yia15mdpzw0dqr6wjpbj8dsdbbps81lfsj9ar"; 2568 2437 }; 2438 + version = "3.5.4"; 2569 2439 }; 2570 - "sexp_processor" = { 2571 - version = "4.6.0"; 2440 + descendants_tracker = { 2441 + dependencies = ["thread_safe"]; 2572 2442 source = { 2443 + remotes = ["https://rubygems.org"]; 2444 + sha256 = "15q8g3fcqyb41qixn6cky0k3p86291y7xsh1jfd851dvrza1vi79"; 2573 2445 type = "gem"; 2574 - sha256 = "0gxlcpg81wfjf5gpggf8h6l2dbq3ikgavbrr2yfw3m2vqy88yjg2"; 2575 2446 }; 2447 + version = "0.0.4"; 2576 2448 }; 2577 - "sham_rack" = { 2578 - version = "1.3.6"; 2449 + default_value_for = { 2450 + dependencies = ["activerecord"]; 2579 2451 source = { 2452 + remotes = ["https://rubygems.org"]; 2453 + sha256 = "1z4lrba4y1c3y0rxw8321qbwsb3nr6c2igrpksfvz93yhc9m6xm0"; 2580 2454 type = "gem"; 2581 - sha256 = "0zs6hpgg87x5jrykjxgfp2i7m5aja53s5kamdhxam16wki1hid3i"; 2582 2455 }; 2583 - dependencies = [ 2584 - "rack" 2585 - ]; 2456 + version = "3.0.1"; 2586 2457 }; 2587 - "shellany" = { 2588 - version = "0.0.1"; 2458 + debugger-ruby_core_source = { 2589 2459 source = { 2460 + remotes = ["https://rubygems.org"]; 2461 + sha256 = "1lp5dmm8a8dpwymv6r1y6yr24wxsj0gvgb2b8i7qq9rcv414snwd"; 2590 2462 type = "gem"; 2591 - sha256 = "1ryyzrj1kxmnpdzhlv4ys3dnl2r5r3d2rs2jwzbnd1v96a8pl4hf"; 2592 2463 }; 2464 + version = "1.3.8"; 2593 2465 }; 2594 - "shoulda-matchers" = { 2595 - version = "2.8.0"; 2466 + debug_inspector = { 2596 2467 source = { 2468 + remotes = ["https://rubygems.org"]; 2469 + sha256 = "109761g00dbrw5q0dfnbqg8blfm699z4jj70l4zrgf9mzn7ii50m"; 2597 2470 type = "gem"; 2598 - sha256 = "0d3ryqcsk1n9y35bx5wxnqbgw4m8b3c79isazdjnnbg8crdp72d0"; 2599 2471 }; 2600 - dependencies = [ 2601 - "activesupport" 2602 - ]; 2472 + version = "0.0.2"; 2603 2473 }; 2604 - "sidekiq" = { 2605 - version = "3.3.0"; 2474 + database_cleaner = { 2606 2475 source = { 2476 + remotes = ["https://rubygems.org"]; 2477 + sha256 = "0n5r7kvsmknk876v3scdphfnvllr9157fa5q7j5fczg8j5qm6kf0"; 2607 2478 type = "gem"; 2608 - sha256 = "0xwy2n4jaja82gw11q1qsqc2jp7hp2asxhfr0gkfb58wj7k5y32l"; 2609 2479 }; 2610 - dependencies = [ 2611 - "celluloid" 2612 - "connection_pool" 2613 - "json" 2614 - "redis" 2615 - "redis-namespace" 2616 - ]; 2480 + version = "1.4.1"; 2617 2481 }; 2618 - "sidetiq" = { 2619 - version = "0.6.3"; 2482 + daemons = { 2620 2483 source = { 2484 + remotes = ["https://rubygems.org"]; 2485 + sha256 = "0b839hryy9sg7x3knsa1d6vfiyvn0mlsnhsb6an8zsalyrz1zgqg"; 2621 2486 type = "gem"; 2622 - sha256 = "1sylv1nyrn7w3782fh0f5svjqricr53vacf4kkvx3l2azzymc2am"; 2623 2487 }; 2624 - dependencies = [ 2625 - "celluloid" 2626 - "ice_cube" 2627 - "sidekiq" 2628 - ]; 2488 + version = "1.2.3"; 2629 2489 }; 2630 - "simple_oauth" = { 2631 - version = "0.1.9"; 2490 + d3_rails = { 2491 + dependencies = ["railties"]; 2632 2492 source = { 2493 + remotes = ["https://rubygems.org"]; 2494 + sha256 = "12vxiiflnnkcxak2wmbajyf5wzmcv9wkl4drsp0am72azl8a6g9x"; 2633 2495 type = "gem"; 2634 - sha256 = "0bb06p88xsdw4fxll1ikv5i5k58sl6y323ss0wp1hqjm3xw1jgvj"; 2635 2496 }; 2497 + version = "3.5.11"; 2636 2498 }; 2637 - "simplecov" = { 2638 - version = "0.10.0"; 2499 + creole = { 2639 2500 source = { 2501 + remotes = ["https://rubygems.org"]; 2502 + sha256 = "00rcscz16idp6dx0dk5yi5i0fz593i3r6anbn5bg2q07v3i025wm"; 2640 2503 type = "gem"; 2641 - sha256 = "1q2iq2vgrdvvla5y907gkmqx6ry2qvnvc7a90hlcbwgp1w0sv6z4"; 2642 2504 }; 2643 - dependencies = [ 2644 - "docile" 2645 - "json" 2646 - "simplecov-html" 2647 - ]; 2505 + version = "0.5.0"; 2648 2506 }; 2649 - "simplecov-html" = { 2650 - version = "0.10.0"; 2507 + crack = { 2508 + dependencies = ["safe_yaml"]; 2651 2509 source = { 2510 + remotes = ["https://rubygems.org"]; 2511 + sha256 = "0abb0fvgw00akyik1zxnq7yv391va148151qxdghnzngv66bl62k"; 2652 2512 type = "gem"; 2653 - sha256 = "1qni8g0xxglkx25w54qcfbi4wjkpvmb28cb7rj5zk3iqynjcdrqf"; 2654 2513 }; 2514 + version = "0.4.3"; 2655 2515 }; 2656 - "sinatra" = { 2657 - version = "1.4.6"; 2516 + coveralls = { 2517 + dependencies = ["json" "rest-client" "simplecov" "term-ansicolor" "thor" "tins"]; 2658 2518 source = { 2519 + remotes = ["https://rubygems.org"]; 2520 + sha256 = "03vnvcw1fdmkp3405blcxpsjf89jxd2061474a32fchsmv2das9y"; 2659 2521 type = "gem"; 2660 - sha256 = "1hhmwqc81ram7lfwwziv0z70jh92sj1m7h7s9fr0cn2xq8mmn8l7"; 2661 2522 }; 2662 - dependencies = [ 2663 - "rack" 2664 - "rack-protection" 2665 - "tilt" 2666 - ]; 2523 + version = "0.8.9"; 2667 2524 }; 2668 - "six" = { 2669 - version = "0.2.0"; 2525 + connection_pool = { 2670 2526 source = { 2527 + remotes = ["https://rubygems.org"]; 2528 + sha256 = "1b2bb3k39ni5mzcnqlv9y4yjkbin20s7dkwzp0jw2jf1rmzcgrmy"; 2671 2529 type = "gem"; 2672 - sha256 = "1bhapiyjh5r5qjpclfw8i65plvy6k2q4azr5xir63xqglr53viw3"; 2673 2530 }; 2531 + version = "2.2.0"; 2674 2532 }; 2675 - "slack-notifier" = { 2533 + concurrent-ruby = { 2534 + source = { 2535 + remotes = ["https://rubygems.org"]; 2536 + sha256 = "0qqdgcfkzv90nznrpsvg3cgg5xiqz4c8hnv7va5gm4fp4lf4k85v"; 2537 + type = "gem"; 2538 + }; 2676 2539 version = "1.0.0"; 2540 + }; 2541 + colorize = { 2677 2542 source = { 2543 + remotes = ["https://rubygems.org"]; 2544 + sha256 = "16bsjcqb6pg3k94dh1l5g3hhx5g2g4g8rlr76dnc78yyzjjrbayn"; 2678 2545 type = "gem"; 2679 - sha256 = "0v4kd0l83shmk17qb35lighxjq9j7g3slnkrsyiy36kaqcfrjm97"; 2680 2546 }; 2547 + version = "0.7.7"; 2681 2548 }; 2682 - "slim" = { 2683 - version = "2.0.3"; 2549 + coffee-script-source = { 2684 2550 source = { 2551 + remotes = ["https://rubygems.org"]; 2552 + sha256 = "1k4fg39rrkl3bpgchfj94fbl9s4ysaz16w8dkqncf2vyf79l3qz0"; 2685 2553 type = "gem"; 2686 - sha256 = "1z279vis4z2xsjzf568pxcl2gd1az760ij13d6qzx400mgn7nqxs"; 2687 2554 }; 2688 - dependencies = [ 2689 - "temple" 2690 - "tilt" 2691 - ]; 2555 + version = "1.10.0"; 2692 2556 }; 2693 - "slop" = { 2694 - version = "3.6.0"; 2557 + coffee-script = { 2558 + dependencies = ["coffee-script-source" "execjs"]; 2695 2559 source = { 2560 + remotes = ["https://rubygems.org"]; 2561 + sha256 = "0rc7scyk7mnpfxqv5yy4y5q1hx3i7q3ahplcp4bq2g5r24g2izl2"; 2696 2562 type = "gem"; 2697 - sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n"; 2698 2563 }; 2564 + version = "2.4.1"; 2699 2565 }; 2700 - "spinach" = { 2701 - version = "0.8.10"; 2566 + coffee-rails = { 2567 + dependencies = ["coffee-script" "railties"]; 2702 2568 source = { 2569 + remotes = ["https://rubygems.org"]; 2570 + sha256 = "0p3zhs44gsy1p90nmghihzfyl7bsk8kv6j3q7rj3bn74wg8w7nqs"; 2703 2571 type = "gem"; 2704 - sha256 = "0phfjs4iw2iqxdaljzwk6qxmi2x86pl3hirmpgw2pgfx76wfx688"; 2705 2572 }; 2706 - dependencies = [ 2707 - "colorize" 2708 - "gherkin-ruby" 2709 - "json" 2710 - ]; 2573 + version = "4.1.0"; 2711 2574 }; 2712 - "spinach-rails" = { 2713 - version = "0.2.1"; 2575 + coercible = { 2576 + dependencies = ["descendants_tracker"]; 2714 2577 source = { 2578 + remotes = ["https://rubygems.org"]; 2579 + sha256 = "1p5azydlsz0nkxmcq0i1gzmcfq02lgxc4as7wmf47j1c6ljav0ah"; 2715 2580 type = "gem"; 2716 - sha256 = "1nfacfylkncfgi59g2wga6m4nzdcjqb8s50cax4nbx362ap4bl70"; 2717 2581 }; 2718 - dependencies = [ 2719 - "capybara" 2720 - "railties" 2721 - "spinach" 2722 - ]; 2582 + version = "1.0.0"; 2723 2583 }; 2724 - "spring" = { 2725 - version = "1.3.6"; 2584 + coderay = { 2726 2585 source = { 2586 + remotes = ["https://rubygems.org"]; 2587 + sha256 = "059wkzlap2jlkhg460pkwc1ay4v4clsmg1bp4vfzjzkgwdckr52s"; 2727 2588 type = "gem"; 2728 - sha256 = "0xvz2x6nvza5i53p7mddnf11j2wshqmbaphi6ngd6nar8v35y0k1"; 2729 2589 }; 2590 + version = "1.1.0"; 2730 2591 }; 2731 - "spring-commands-rspec" = { 2732 - version = "1.0.4"; 2592 + cliver = { 2733 2593 source = { 2594 + remotes = ["https://rubygems.org"]; 2595 + sha256 = "096f4rj7virwvqxhkavy0v55rax10r4jqf8cymbvn4n631948xc7"; 2734 2596 type = "gem"; 2735 - sha256 = "0b0svpq3md1pjz5drpa5pxwg8nk48wrshq8lckim4x3nli7ya0k2"; 2736 2597 }; 2737 - dependencies = [ 2738 - "spring" 2739 - ]; 2598 + version = "0.3.2"; 2740 2599 }; 2741 - "spring-commands-spinach" = { 2742 - version = "1.0.0"; 2600 + chunky_png = { 2743 2601 source = { 2602 + remotes = ["https://rubygems.org"]; 2603 + sha256 = "0vf0axgrm95bs3y0x5gdb76xawfh210yxplj7jbwr6z7n88i1axn"; 2744 2604 type = "gem"; 2745 - sha256 = "138jardqyj96wz68njdgy55qjbpl2d0g8bxbkz97ndaz3c2bykv9"; 2746 2605 }; 2747 - dependencies = [ 2748 - "spring" 2749 - ]; 2606 + version = "1.3.5"; 2750 2607 }; 2751 - "spring-commands-teaspoon" = { 2752 - version = "0.0.2"; 2608 + charlock_holmes = { 2753 2609 source = { 2610 + remotes = ["https://rubygems.org"]; 2611 + sha256 = "0jsl6k27wjmssxbwv9wpf7hgp9r0nvizcf6qpjnr7qs2nia53lf7"; 2754 2612 type = "gem"; 2755 - sha256 = "1g7n4m2s9d0frh7y1xibzpphqajfnx4fvgfc66nh545dd91w2nqz"; 2756 2613 }; 2757 - dependencies = [ 2758 - "spring" 2759 - ]; 2614 + version = "0.7.3"; 2760 2615 }; 2761 - "sprockets" = { 2762 - version = "2.12.4"; 2616 + cause = { 2763 2617 source = { 2618 + remotes = ["https://rubygems.org"]; 2619 + sha256 = "0digirxqlwdg79mkbn70yc7i9i1qnclm2wjbrc47kqv6236bpj00"; 2764 2620 type = "gem"; 2765 - sha256 = "15818683yz27w4hgywccf27n91azy9a4nmb5qkklzb08k8jw9gp3"; 2766 2621 }; 2767 - dependencies = [ 2768 - "hike" 2769 - "multi_json" 2770 - "rack" 2771 - "tilt" 2772 - ]; 2622 + version = "0.1"; 2773 2623 }; 2774 - "sprockets-rails" = { 2775 - version = "2.3.2"; 2624 + carrierwave = { 2625 + dependencies = ["activemodel" "activesupport" "json"]; 2776 2626 source = { 2627 + remotes = ["https://rubygems.org"]; 2628 + sha256 = "1b1av1ancby6brhmypl5k8xwrasd8bd3kqp9ri8kbq7z8nj6k445"; 2777 2629 type = "gem"; 2778 - sha256 = "1pk2a69cxirg2dkkpl5cr3fvrj1qgifw1fmpz1ggkcziwxajyg6d"; 2779 2630 }; 2780 - dependencies = [ 2781 - "actionpack" 2782 - "activesupport" 2783 - "sprockets" 2784 - ]; 2631 + version = "0.9.0"; 2785 2632 }; 2786 - "stamp" = { 2787 - version = "0.5.0"; 2633 + capybara-screenshot = { 2634 + dependencies = ["capybara" "launchy"]; 2788 2635 source = { 2636 + remotes = ["https://rubygems.org"]; 2637 + sha256 = "17v1wihr3aqrxhrwswkdpdklj1xsfcaksblh1y8hixvm9bqfyz3y"; 2789 2638 type = "gem"; 2790 - sha256 = "1w54kxm4sd4za9rhrkl5lqjbsalhziq95sr3nnwr1lqc00nn5mhs"; 2791 2639 }; 2640 + version = "1.0.11"; 2792 2641 }; 2793 - "state_machine" = { 2794 - version = "1.2.0"; 2642 + capybara = { 2643 + dependencies = ["mime-types" "nokogiri" "rack" "rack-test" "xpath"]; 2795 2644 source = { 2645 + remotes = ["https://rubygems.org"]; 2646 + sha256 = "114k4xi4nfbp3jfbxgwa3fksbwsyibx74gbdqpcgg3dxpmzkaa4f"; 2796 2647 type = "gem"; 2797 - sha256 = "1vf25h443b1s98d2lhd1w3rgam86pjsjhz632f3yrfkn374xvz40"; 2798 2648 }; 2649 + version = "2.4.4"; 2799 2650 }; 2800 - "stringex" = { 2801 - version = "2.5.2"; 2651 + cal-heatmap-rails = { 2802 2652 source = { 2653 + remotes = ["https://rubygems.org"]; 2654 + sha256 = "0lrmcyj3iixkprqi9fb9vcn97wpp779sl5hxxgx57r3rb7l4d20w"; 2803 2655 type = "gem"; 2804 - sha256 = "150adm7rfh6r9b5ra6vk75mswf9m3wwyslcf8f235a08m29fxa17"; 2805 2656 }; 2657 + version = "3.5.1"; 2806 2658 }; 2807 - "systemu" = { 2808 - version = "2.6.5"; 2659 + byebug = { 2809 2660 source = { 2661 + remotes = ["https://rubygems.org"]; 2662 + sha256 = "1yx89b7vh5mbvxyi8n7zl25ia1bqdj71995m4daj6d41rnkmrpnc"; 2810 2663 type = "gem"; 2811 - sha256 = "0gmkbakhfci5wnmbfx5i54f25j9zsvbw858yg3jjhfs5n4ad1xq1"; 2812 2664 }; 2665 + version = "8.2.1"; 2813 2666 }; 2814 - "task_list" = { 2815 - version = "1.0.2"; 2667 + bundler-audit = { 2668 + dependencies = ["thor"]; 2816 2669 source = { 2670 + remotes = ["https://rubygems.org"]; 2671 + sha256 = "0msv3k2277y7al5lbnw7q9lmb5fnrscpkmsb36wpn189pdq0akfv"; 2817 2672 type = "gem"; 2818 - sha256 = "1iv1fizb04463c4mp4gxd8v0414fhvmiwvwvjby5b9qq79d8zwab"; 2819 2673 }; 2820 - dependencies = [ 2821 - "html-pipeline" 2822 - ]; 2674 + version = "0.4.0"; 2823 2675 }; 2824 - "teaspoon" = { 2825 - version = "1.0.2"; 2676 + bullet = { 2677 + dependencies = ["activesupport" "uniform_notifier"]; 2826 2678 source = { 2679 + remotes = ["https://rubygems.org"]; 2680 + sha256 = "1h3iaflcz5a1xr32bdb8sk4nx06yhh5d8y7w294w49xigfv4hzj3"; 2827 2681 type = "gem"; 2828 - sha256 = "0cprz18vgf0jgcggcxf4pwx8jcwbiyj1p0dnck5aavlvaxaic58s"; 2829 2682 }; 2830 - dependencies = [ 2831 - "railties" 2832 - ]; 2683 + version = "4.14.10"; 2833 2684 }; 2834 - "teaspoon-jasmine" = { 2835 - version = "2.2.0"; 2685 + builder = { 2836 2686 source = { 2687 + remotes = ["https://rubygems.org"]; 2688 + sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2"; 2837 2689 type = "gem"; 2838 - sha256 = "00wygrv1jm4aj15p1ab9d5fdrj6y83kv26xgp52mx4lp78h2ms9q"; 2839 2690 }; 2840 - dependencies = [ 2841 - "teaspoon" 2842 - ]; 2691 + version = "3.2.2"; 2843 2692 }; 2844 - "temple" = { 2845 - version = "0.6.10"; 2693 + browser = { 2846 2694 source = { 2695 + remotes = ["https://rubygems.org"]; 2696 + sha256 = "01bkb64w2ld2q5r3chc4f6spbjrmginyg8wlzg130zmx2z4jia2h"; 2847 2697 type = "gem"; 2848 - sha256 = "1lzz4bisg97725m1q62jhmcxklfhky7g326d0b7p2q0kjx262q81"; 2849 2698 }; 2699 + version = "1.0.1"; 2850 2700 }; 2851 - "term-ansicolor" = { 2852 - version = "1.3.2"; 2701 + brakeman = { 2702 + dependencies = ["erubis" "fastercsv" "haml" "highline" "multi_json" "ruby2ruby" "ruby_parser" "safe_yaml" "sass" "slim" "terminal-table"]; 2853 2703 source = { 2704 + remotes = ["https://rubygems.org"]; 2705 + sha256 = "15v13yizpvp1rm86raqggmsmm51v6p8fqw3pfgi6xpvx1ba06cfm"; 2854 2706 type = "gem"; 2855 - sha256 = "0ydbbyjmk5p7fsi55ffnkq79jnfqx65c3nj8d9rpgl6sw85ahyys"; 2856 2707 }; 2857 - dependencies = [ 2858 - "tins" 2859 - ]; 2708 + version = "3.1.4"; 2860 2709 }; 2861 - "terminal-table" = { 2862 - version = "1.5.2"; 2710 + bootstrap-sass = { 2711 + dependencies = ["autoprefixer-rails" "sass"]; 2863 2712 source = { 2713 + remotes = ["https://rubygems.org"]; 2714 + sha256 = "12hhw42hk9clwfj6yz5v0c5p35wrn5yjnji7bnzsfs99vi2q00ld"; 2864 2715 type = "gem"; 2865 - sha256 = "1s6qyj9ir1agbbi32li9c0c34dcl0klyxqif6mxy0dbvq7kqfp8f"; 2866 2716 }; 2717 + version = "3.3.6"; 2867 2718 }; 2868 - "test_after_commit" = { 2869 - version = "0.2.7"; 2719 + binding_of_caller = { 2720 + dependencies = ["debug_inspector"]; 2870 2721 source = { 2722 + remotes = ["https://rubygems.org"]; 2723 + sha256 = "15jg6dkaq2nzcd602d7ppqbdxw3aji961942w93crs6qw4n6h9yk"; 2871 2724 type = "gem"; 2872 - sha256 = "179dgdpsmn9lcxxkyrxxvmyj4x3xi9sdq80l3zfqcgprnbxavbp7"; 2873 2725 }; 2874 - dependencies = [ 2875 - "activerecord" 2876 - ]; 2726 + version = "0.7.2"; 2877 2727 }; 2878 - "thin" = { 2879 - version = "1.6.3"; 2728 + better_errors = { 2729 + dependencies = ["coderay" "erubis"]; 2880 2730 source = { 2731 + remotes = ["https://rubygems.org"]; 2732 + sha256 = "0v0q8bdkqqlcsfqbk4wvc3qnz8an44mgz720v5f11a4nr413mjgf"; 2881 2733 type = "gem"; 2882 - sha256 = "1m56aygh5rh8ncp3s2gnn8ghn5ibkk0bg6s3clmh1vzaasw2lj4i"; 2883 2734 }; 2884 - dependencies = [ 2885 - "daemons" 2886 - "eventmachine" 2887 - "rack" 2888 - ]; 2735 + version = "1.0.1"; 2889 2736 }; 2890 - "thor" = { 2891 - version = "0.19.1"; 2737 + benchmark-ips = { 2892 2738 source = { 2739 + remotes = ["https://rubygems.org"]; 2740 + sha256 = "0bh681m54qdsdyvpvflj1wpnj3ybspbpjkr4cnlrl4nk4yikli0j"; 2893 2741 type = "gem"; 2894 - sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z"; 2895 2742 }; 2743 + version = "2.3.0"; 2896 2744 }; 2897 - "thread_safe" = { 2898 - version = "0.3.5"; 2745 + bcrypt = { 2899 2746 source = { 2747 + remotes = ["https://rubygems.org"]; 2748 + sha256 = "15cf7zzlj9b0xcx12jf8fmnpc8g1b0yhxal1yr5p7ny3mrz5pll6"; 2900 2749 type = "gem"; 2901 - sha256 = "1hq46wqsyylx5afkp6jmcihdpv4ynzzq9ygb6z2pb1cbz5js0gcr"; 2902 2750 }; 2751 + version = "3.1.10"; 2903 2752 }; 2904 - "tilt" = { 2905 - version = "1.4.1"; 2753 + babosa = { 2906 2754 source = { 2755 + remotes = ["https://rubygems.org"]; 2756 + sha256 = "05rgxg4pz4bc4xk34w5grv0yp1j94wf571w84lf3xgqcbs42ip2f"; 2907 2757 type = "gem"; 2908 - sha256 = "00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir"; 2909 2758 }; 2759 + version = "1.0.2"; 2910 2760 }; 2911 - "timers" = { 2912 - version = "4.0.4"; 2761 + axiom-types = { 2762 + dependencies = ["descendants_tracker" "ice_nine" "thread_safe"]; 2913 2763 source = { 2764 + remotes = ["https://rubygems.org"]; 2765 + sha256 = "10q3k04pll041mkgy0m5fn2b1lazm6ly1drdbcczl5p57lzi3zy1"; 2914 2766 type = "gem"; 2915 - sha256 = "1jx4wb0x182gmbcs90vz0wzfyp8afi1mpl9w5ippfncyk4kffvrz"; 2916 2767 }; 2917 - dependencies = [ 2918 - "hitimes" 2919 - ]; 2768 + version = "0.1.1"; 2920 2769 }; 2921 - "timfel-krb5-auth" = { 2922 - version = "0.8.3"; 2770 + awesome_print = { 2923 2771 source = { 2772 + remotes = ["https://rubygems.org"]; 2773 + sha256 = "1k85hckprq0s9pakgadf42k1d5s07q23m3y6cs977i6xmwdivyzr"; 2924 2774 type = "gem"; 2925 - sha256 = "105vajc0jkqgcx1wbp0ad262sdry4l1irk7jpaawv8vzfjfqqf5b"; 2926 2775 }; 2776 + version = "1.2.0"; 2927 2777 }; 2928 - "tinder" = { 2929 - version = "1.9.4"; 2778 + autoprefixer-rails = { 2779 + dependencies = ["execjs" "json"]; 2930 2780 source = { 2781 + remotes = ["https://rubygems.org"]; 2782 + sha256 = "0m1w42ncz0p48r5hbyglayxkzrnplw18r99dc1ia2cb3nizkwllx"; 2931 2783 type = "gem"; 2932 - sha256 = "0gl5kln3dgybgarksk2ly4y0wy2lljsh59idfllwzynap8hx9jar"; 2933 2784 }; 2934 - dependencies = [ 2935 - "eventmachine" 2936 - "faraday" 2937 - "faraday_middleware" 2938 - "hashie" 2939 - "json" 2940 - "mime-types" 2941 - "multi_json" 2942 - "twitter-stream" 2943 - ]; 2785 + version = "6.2.3"; 2944 2786 }; 2945 - "tins" = { 2946 - version = "1.6.0"; 2787 + attr_required = { 2947 2788 source = { 2789 + remotes = ["https://rubygems.org"]; 2790 + sha256 = "0pawa2i7gw9ppj6fq6y288da1ncjpzsmc6kx7z63mjjvypa5q3dc"; 2948 2791 type = "gem"; 2949 - sha256 = "02qarvy17nbwvslfgqam8y6y7479cwmb1a6di9z18hzka4cf90hz"; 2950 2792 }; 2793 + version = "1.0.0"; 2951 2794 }; 2952 - "trollop" = { 2953 - version = "2.1.2"; 2795 + attr_encrypted = { 2796 + dependencies = ["encryptor"]; 2954 2797 source = { 2798 + remotes = ["https://rubygems.org"]; 2799 + sha256 = "1hm2844qm37kflqq5v0x2irwasbhcblhp40qk10m3wlkj4m9wp8p"; 2955 2800 type = "gem"; 2956 - sha256 = "0415y63df86sqj43c0l82and65ia5h64if7n0znkbrmi6y0jwhl8"; 2957 2801 }; 2802 + version = "1.3.4"; 2958 2803 }; 2959 - "turbolinks" = { 2960 - version = "2.5.3"; 2804 + astrolabe = { 2805 + dependencies = ["parser"]; 2961 2806 source = { 2807 + remotes = ["https://rubygems.org"]; 2808 + sha256 = "0ybbmjxaf529vvhrj4y8d4jpf87f3hgczydzywyg1d04gggjx7l7"; 2962 2809 type = "gem"; 2963 - sha256 = "1ddrx25vvvqxlz4h59lrmjhc2bfwxf4bpicvyhgbpjd48ckj81jn"; 2964 2810 }; 2965 - dependencies = [ 2966 - "coffee-rails" 2967 - ]; 2811 + version = "1.3.1"; 2968 2812 }; 2969 - "twitter-stream" = { 2970 - version = "0.1.16"; 2813 + ast = { 2971 2814 source = { 2815 + remotes = ["https://rubygems.org"]; 2816 + sha256 = "102bywfxrv0w3n4s6lg25d7xxshd344sc7ijslqmganj5bany1pk"; 2972 2817 type = "gem"; 2973 - sha256 = "0is81g3xvnjk64sqiaqlh2ziwfryzwvk1yvaniryg0zhppgsyriq"; 2974 2818 }; 2975 - dependencies = [ 2976 - "eventmachine" 2977 - "http_parser.rb" 2978 - "simple_oauth" 2979 - ]; 2819 + version = "2.1.0"; 2980 2820 }; 2981 - "tzinfo" = { 2982 - version = "1.2.2"; 2821 + asciidoctor = { 2983 2822 source = { 2823 + remotes = ["https://rubygems.org"]; 2824 + sha256 = "0q9yhan2mkk1lh15zcfd9g2fn6faix9yrf5skg23dp1y77jv7vm0"; 2984 2825 type = "gem"; 2985 - sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx"; 2986 2826 }; 2987 - dependencies = [ 2988 - "thread_safe" 2989 - ]; 2827 + version = "1.5.3"; 2990 2828 }; 2991 - "uglifier" = { 2992 - version = "2.3.3"; 2829 + asana = { 2830 + dependencies = ["faraday" "faraday_middleware" "faraday_middleware-multi_json" "oauth2"]; 2993 2831 source = { 2832 + remotes = ["https://rubygems.org"]; 2833 + sha256 = "1560p13g57pl4xqkmhwn1vpqhm7mw9fwmmswk38k3i2r7g0b5y9z"; 2994 2834 type = "gem"; 2995 - sha256 = "0v45v2hccmadxpqrlk8gj9sgyak4d6838014wizdvzkh8sy23nvr"; 2996 2835 }; 2997 - dependencies = [ 2998 - "execjs" 2999 - "json" 3000 - ]; 2836 + version = "0.4.0"; 3001 2837 }; 3002 - "underscore-rails" = { 3003 - version = "1.4.4"; 2838 + arel = { 3004 2839 source = { 2840 + remotes = ["https://rubygems.org"]; 2841 + sha256 = "1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"; 3005 2842 type = "gem"; 3006 - sha256 = "1xg3dfym38gj5zsjxpf1v5cz4j6gysirv9bgc5ls37krixkajag2"; 3007 2843 }; 2844 + version = "6.0.3"; 3008 2845 }; 3009 - "unf" = { 3010 - version = "0.1.4"; 2846 + annotate = { 2847 + dependencies = ["activerecord" "rake"]; 3011 2848 source = { 2849 + remotes = ["https://rubygems.org"]; 2850 + sha256 = "1wdw9phsv2dndgid3pd8h0hl4zycwy11jc9iz6prwza0xax0i7hg"; 3012 2851 type = "gem"; 3013 - sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9"; 3014 2852 }; 3015 - dependencies = [ 3016 - "unf_ext" 3017 - ]; 2853 + version = "2.6.10"; 3018 2854 }; 3019 - "unf_ext" = { 3020 - version = "0.0.7.1"; 2855 + allocations = { 2856 + version = "1.0.4"; 3021 2857 source = { 3022 2858 type = "gem"; 3023 - sha256 = "0ly2ms6c3irmbr1575ldyh52bz2v0lzzr2gagf0p526k12ld2n5b"; 2859 + remotes = ["https://rubygems.org"]; 2860 + sha256 = "0iynf7gkbnbr5mgl2wgbgvxmjdiawh7ywwbnyjm94bj3pkybzgkc"; 3024 2861 }; 3025 2862 }; 3026 - "unicorn" = { 3027 - version = "4.8.3"; 2863 + akismet = { 2864 + version = "2.0.0"; 3028 2865 source = { 3029 2866 type = "gem"; 3030 - sha256 = "1kpg2vikx2hxdyrl45bqcr89a0w59hfw7yn7xh87bmlczi34xds4"; 2867 + remotes = ["https://rubygems.org"]; 2868 + sha256 = "0hqpn25iyypkwkrqaibjm5nss5jmlkrddhia7frmz94prvyjr02w"; 3031 2869 }; 3032 - dependencies = [ 3033 - "kgio" 3034 - "rack" 3035 - "raindrops" 3036 - ]; 3037 2870 }; 3038 - "unicorn-worker-killer" = { 3039 - version = "0.4.3"; 2871 + after_commit_queue = { 2872 + dependencies = ["activerecord"]; 3040 2873 source = { 2874 + remotes = ["https://rubygems.org"]; 2875 + sha256 = "1jrhvj4335dsrj0xndbf7a7m2inbwbx1knc0bwgvmkk1w47l43s0"; 3041 2876 type = "gem"; 3042 - sha256 = "0hhss1bwammh7nhplcj90455h79yq10c30npz4lpcsgw7vcpls00"; 3043 2877 }; 3044 - dependencies = [ 3045 - "get_process_mem" 3046 - "unicorn" 3047 - ]; 2878 + version = "1.3.0"; 3048 2879 }; 3049 - "uuid" = { 2880 + addressable = { 2881 + source = { 2882 + remotes = ["https://rubygems.org"]; 2883 + sha256 = "1533axm85gpz267km9gnfarf9c78g2scrysd6b8yw33vmhkz2km6"; 2884 + type = "gem"; 2885 + }; 3050 2886 version = "2.3.8"; 2887 + }; 2888 + acts-as-taggable-on = { 2889 + dependencies = ["activerecord"]; 3051 2890 source = { 2891 + remotes = ["https://rubygems.org"]; 2892 + sha256 = "0bz0z8dlp3fjzah9y9b6rr9mkidsav9l4hdm51fnq1gd05yv3pr7"; 3052 2893 type = "gem"; 3053 - sha256 = "0gr2mxg27l380wpiy66mgv9wq02myj6m4gmp6c4g1vsbzkh0213v"; 3054 2894 }; 3055 - dependencies = [ 3056 - "macaddr" 3057 - ]; 2895 + version = "3.5.0"; 3058 2896 }; 3059 - "version_sorter" = { 3060 - version = "2.0.0"; 2897 + activesupport = { 2898 + dependencies = ["i18n" "json" "minitest" "thread_safe" "tzinfo"]; 3061 2899 source = { 2900 + remotes = ["https://rubygems.org"]; 2901 + sha256 = "16zgsvzwwf4hx3ywi2lz0dcm6d1ljsy6zr5k2q41amd7g62d886d"; 3062 2902 type = "gem"; 3063 - sha256 = "1lad9c43w2xfzmva57ia6glpmhyivyk1m79jli42canshvan5v6y"; 3064 2903 }; 2904 + version = "4.2.5.1"; 3065 2905 }; 3066 - "virtus" = { 3067 - version = "1.0.5"; 2906 + activerecord-session_store = { 2907 + dependencies = ["actionpack" "activerecord" "railties"]; 3068 2908 source = { 2909 + remotes = ["https://rubygems.org"]; 2910 + sha256 = "1rp5q0q5i5syfgw7qpiq3a42x13p7myyv1c5hmnczpdlh57axs3p"; 3069 2911 type = "gem"; 3070 - sha256 = "06iphwi3c4f7y9i2rvhvaizfswqbaflilziz4dxqngrdysgkn1fk"; 3071 2912 }; 3072 - dependencies = [ 3073 - "axiom-types" 3074 - "coercible" 3075 - "descendants_tracker" 3076 - "equalizer" 3077 - ]; 2913 + version = "0.1.2"; 3078 2914 }; 3079 - "warden" = { 3080 - version = "1.2.3"; 2915 + activerecord-nulldb-adapter = { 2916 + source = { 2917 + remotes = ["https://rubygems.org"]; 2918 + sha256 = "1ym3paxp5lqr2kr4hkqj6xxqvgl57fv8jqhvgjfxb9lk7k5jlfmp"; 2919 + type = "gem"; 2920 + }; 2921 + version = "0.3.2"; 2922 + }; 2923 + activerecord-deprecated_finders = { 2924 + source = { 2925 + remotes = ["https://rubygems.org"]; 2926 + sha256 = "03xplckz7v3nm6inqkwdd44h6gpbpql0v02jc1rz46a38rd6cj6m"; 2927 + type = "gem"; 2928 + }; 2929 + version = "1.0.4"; 2930 + }; 2931 + activerecord = { 2932 + dependencies = ["activemodel" "activesupport" "arel"]; 2933 + source = { 2934 + remotes = ["https://rubygems.org"]; 2935 + sha256 = "1qj5ii36yn9kb0ljnl05xgpgvs7j9l20yg2phsssy0j31g1ymmc5"; 2936 + type = "gem"; 2937 + }; 2938 + version = "4.2.5.1"; 2939 + }; 2940 + activemodel = { 2941 + dependencies = ["activesupport" "builder"]; 2942 + source = { 2943 + remotes = ["https://rubygems.org"]; 2944 + sha256 = "1zr83avw82infmzdzpilk6xpv5r9fr8pxgf5ql16b3vysp6va57p"; 2945 + type = "gem"; 2946 + }; 2947 + version = "4.2.5.1"; 2948 + }; 2949 + activejob = { 2950 + dependencies = ["activesupport" "globalid"]; 3081 2951 source = { 2952 + remotes = ["https://rubygems.org"]; 2953 + sha256 = "1xfj7lwp1v3k9zscavzq87wbbn6y825angz4zpx4xsvlwf3dn7jc"; 3082 2954 type = "gem"; 3083 - sha256 = "0ykzsgwml0pdqn6vdjjaix12gpcgn8b126z9fx7yq3r3bmdrwxlp"; 3084 2955 }; 3085 - dependencies = [ 3086 - "rack" 3087 - ]; 2956 + version = "4.2.5.1"; 3088 2957 }; 3089 - "webmock" = { 3090 - version = "1.21.0"; 2958 + actionview = { 2959 + dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"]; 3091 2960 source = { 2961 + remotes = ["https://rubygems.org"]; 2962 + sha256 = "1dp1gqh0yxpyydza1ada0jjbpww97qhnkj9c9pm9rg5jbmpzg12m"; 3092 2963 type = "gem"; 3093 - sha256 = "1p7hqdxk5359xwp59pcx841fhbnqx01ra98rnwhdyz61nrc6piv3"; 3094 2964 }; 3095 - dependencies = [ 3096 - "addressable" 3097 - "crack" 3098 - ]; 2965 + version = "4.2.5.1"; 3099 2966 }; 3100 - "websocket-driver" = { 3101 - version = "0.6.2"; 2967 + actionpack = { 2968 + dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; 3102 2969 source = { 2970 + remotes = ["https://rubygems.org"]; 2971 + sha256 = "13shdiwjfyqvfb11k0wqhcd7p7ix168fxd5l8m2pnn0bzskpswxv"; 3103 2972 type = "gem"; 3104 - sha256 = "0y4kc2q2g69i4xdcn85bn7v7g6ia3znr687aivakmlzcanyiz7in"; 3105 2973 }; 3106 - dependencies = [ 3107 - "websocket-extensions" 3108 - ]; 2974 + version = "4.2.5.1"; 3109 2975 }; 3110 - "websocket-extensions" = { 3111 - version = "0.1.2"; 2976 + actionmailer = { 2977 + dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"]; 3112 2978 source = { 2979 + remotes = ["https://rubygems.org"]; 2980 + sha256 = "1fxn8f53nnpgan5xl9i5lszl1m8yk4q6ayc33d9xfzsnvhavpl4n"; 3113 2981 type = "gem"; 3114 - sha256 = "07qnsafl6203a2zclxl20hy4jq11c471cgvd0bj5r9fx1qqw06br"; 3115 2982 }; 2983 + version = "4.2.5.1"; 3116 2984 }; 3117 - "whenever" = { 3118 - version = "0.8.4"; 2985 + ace-rails-ap = { 3119 2986 source = { 2987 + remotes = ["https://rubygems.org"]; 2988 + sha256 = "082n12rkd9j7d89030nhmi4fx1gqaf13knps6cknsyvwix7fryvv"; 3120 2989 type = "gem"; 3121 - sha256 = "1bs602cf5rmmj03chn8vwidx0z1psyfyabq6gs3mqna524pnj9h2"; 3122 2990 }; 3123 - dependencies = [ 3124 - "activesupport" 3125 - "chronic" 3126 - ]; 2991 + version = "2.0.1"; 3127 2992 }; 3128 - "wikicloth" = { 3129 - version = "0.8.1"; 2993 + RedCloth = { 3130 2994 source = { 2995 + remotes = ["https://rubygems.org"]; 2996 + sha256 = "06pahxyrckhgb7alsxwhhlx1ib2xsx33793finj01jk8i054bkxl"; 3131 2997 type = "gem"; 3132 - sha256 = "1jp6c2yzyqbap8jdiw8yz6l08sradky1llhyhmrg934l1b5akj3s"; 3133 2998 }; 3134 - dependencies = [ 3135 - "builder" 3136 - "expression_parser" 3137 - "rinku" 3138 - ]; 2999 + version = "4.2.9"; 3139 3000 }; 3140 - "xpath" = { 3141 - version = "2.0.0"; 3001 + CFPropertyList = { 3142 3002 source = { 3003 + remotes = ["https://rubygems.org"]; 3004 + sha256 = "0mjb46368z4hiax3fcsgxk14fxrhwnvcmakc2f5sx8nz0wvvkwg2"; 3143 3005 type = "gem"; 3144 - sha256 = "04kcr127l34p7221z13blyl0dvh0bmxwx326j72idayri36a394w"; 3145 3006 }; 3146 - dependencies = [ 3147 - "nokogiri" 3148 - ]; 3007 + version = "2.3.2"; 3149 3008 }; 3150 3009 }
+29
pkgs/applications/version-management/gitlab/nulladapter.patch
··· 1 + index acd1874..f493451 100644 2 + --- a/Gemfile 3 + +++ b/Gemfile 4 + @@ -318,3 +318,5 @@ gem 'oauth2', '~> 1.0.0' 5 + 6 + # Soft deletion 7 + gem "paranoia", "~> 2.0" 8 + + 9 + +gem "activerecord-nulldb-adapter" 10 + index 14d2c76..7a010f0 100644 11 + --- a/Gemfile.lock 12 + +++ b/Gemfile.lock 13 + @@ -34,6 +34,8 @@ GEM 14 + activesupport (= 4.2.5.1) 15 + arel (~> 6.0) 16 + activerecord-deprecated_finders (1.0.4) 17 + + activerecord-nulldb-adapter (0.3.2) 18 + + activerecord (>= 2.0.0) 19 + activerecord-session_store (0.1.2) 20 + actionpack (>= 4.0.0, < 5) 21 + activerecord (>= 4.0.0, < 5) 22 + @@ -880,6 +882,7 @@ DEPENDENCIES 23 + RedCloth (~> 4.2.9) 24 + ace-rails-ap (~> 2.0.1) 25 + activerecord-deprecated_finders (~> 1.0.3) 26 + + activerecord-nulldb-adapter 27 + activerecord-session_store (~> 0.1.0) 28 + acts-as-taggable-on (~> 3.4) 29 + addressable (~> 2.3.8)
+80 -87
pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch
··· 1 1 diff --git a/config/environments/production.rb b/config/environments/production.rb 2 - index 3316ece..c34dec0 100644 2 + index 9095266..694a4c5 100644 3 3 --- a/config/environments/production.rb 4 4 +++ b/config/environments/production.rb 5 - @@ -67,10 +67,10 @@ Gitlab::Application.configure do 5 + @@ -67,10 +67,10 @@ Rails.application.configure do 6 6 7 7 config.action_mailer.delivery_method = :sendmail 8 8 # Defaults to: ··· 18 18 config.action_mailer.raise_delivery_errors = true 19 19 20 20 diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example 21 - index 15930fc..bdb423c 100644 21 + index 05f127d..1daef74 100644 22 22 --- a/config/gitlab.yml.example 23 23 +++ b/config/gitlab.yml.example 24 - @@ -29,8 +29,8 @@ production: &base 25 - ## GitLab settings 26 - gitlab: 27 - ## Web server settings (note: host is the FQDN, do not include http://) 28 - - host: localhost 29 - - port: 80 # Set to 443 if using HTTPS, see installation.md#using-https for additional HTTPS configuration details 30 - + host: <%= ENV['GITLAB_HOST'] || 'localhost' %> 31 - + port: <%= ENV['GITLAB_PORT'] || 80 %> 32 - https: false # Set to true if using HTTPS, see installation.md#using-https for additional HTTPS configuration details 33 - 34 - # Uncommment this line below if your ssh host is different from HTTP/HTTPS one 35 - @@ -43,7 +43,7 @@ production: &base 36 - # relative_url_root: /gitlab 37 - 38 - # Uncomment and customize if you can't use the default user to run GitLab (default: 'git') 39 - - # user: git 40 - + user: gitlab 41 - 42 - ## Date & Time settings 43 - # Uncomment and customize if you want to change the default time zone of GitLab application. 44 - @@ -54,7 +54,7 @@ production: &base 45 - # Uncomment and set to false if you need to disable email sending from GitLab (default: true) 46 - # email_enabled: true 47 - # Email address used in the "From" field in mails sent by GitLab 48 - - email_from: example@example.com 49 - + email_from: <%= ENV['GITLAB_EMAIL_FROM'] %> 50 - email_display_name: GitLab 51 - email_reply_to: noreply@example.com 52 - 53 - @@ -298,12 +298,12 @@ production: &base 54 - # GitLab Satellites 55 - satellites: 56 - # Relative paths are relative to Rails.root (default: tmp/repo_satellites/) 57 - - path: /home/git/gitlab-satellites/ 58 - + path: <%= ENV['GITLAB_SATELLITES_PATH'] %> 59 - timeout: 30 60 - 61 - ## Backup settings 62 - backup: 63 - - path: "tmp/backups" # Relative paths are relative to Rails.root (default: tmp/backups/) 64 - + path: <%= ENV['GITLAB_BACKUP_PATH'] %> 65 - # archive_permissions: 0640 # Permissions for the resulting backup.tar file (default: 0600) 66 - # keep_time: 604800 # default: 0 (forever) (in seconds) 67 - # pg_schema: public # default: nil, it means that all schemas will be backed up 68 - @@ -322,15 +322,15 @@ production: &base 69 - 70 - ## GitLab Shell settings 71 - gitlab_shell: 72 - - path: /home/git/gitlab-shell/ 73 - + path: <%= ENV['GITLAB_SHELL_PATH'] %> 74 - 75 - # REPOS_PATH MUST NOT BE A SYMLINK!!! 76 - - repos_path: /home/git/repositories/ 77 - - hooks_path: /home/git/gitlab-shell/hooks/ 78 - + repos_path: <%= ENV['GITLAB_REPOSITORIES_PATH'] %> 79 - + hooks_path: <%= ENV['GITLAB_SHELL_HOOKS_PATH'] %> 80 - 81 - # File that contains the secret key for verifying access for gitlab-shell. 82 - # Default is '.gitlab_shell_secret' relative to Rails.root (i.e. root of the GitLab app). 83 - - # secret_file: /home/git/gitlab/.gitlab_shell_secret 84 - + secret_file: <%= ENV['GITLAB_SHELL_SECRET_PATH'] %> 85 - 86 - # Git over HTTP 87 - upload_pack: true 88 - @@ -343,7 +343,7 @@ production: &base 24 + @@ -423,7 +422,7 @@ production: &base 89 25 # CAUTION! 90 26 # Use the default values unless you really know what you are doing 91 27 git: ··· 94 30 # The next value is the maximum memory size grit can use 95 31 # Given in number of bytes per git object (e.g. a commit) 96 32 # This value can be increased if you have very large commits 97 - @@ -388,7 +388,7 @@ test: 98 - gravatar: 99 - enabled: true 100 - gitlab: 101 - - host: localhost 102 - + host: <%= ENV['GITLAB_HOST'] %> 103 - port: 80 33 + 34 + diff --git a/lib/gitlab/logger.rb b/lib/gitlab/logger.rb 35 + index 59b2114..4f4a39a 100644 36 + --- a/lib/gitlab/logger.rb 37 + +++ b/lib/gitlab/logger.rb 38 + @@ -13,20 +13,20 @@ module Gitlab 39 + end 40 + 41 + def self.read_latest 42 + - path = Rails.root.join("log", file_name) 43 + + path = File.join(ENV["GITLAB_LOG_PATH"], file_name) 44 + self.build unless File.exist?(path) 45 + tail_output, _ = Gitlab::Popen.popen(%W(tail -n 2000 #{path})) 46 + tail_output.split("\n") 47 + end 104 48 105 - # When you run tests we clone and setup gitlab-shell 106 - diff --git a/lib/gitlab/app_logger.rb b/lib/gitlab/app_logger.rb 107 - index dddcb25..d61f10a 100644 108 - --- a/lib/gitlab/app_logger.rb 109 - +++ b/lib/gitlab/app_logger.rb 110 - @@ -1,7 +1,7 @@ 111 - module Gitlab 112 - class AppLogger < Gitlab::Logger 113 - def self.file_name_noext 114 - - 'application' 115 - + ENV["GITLAB_APPLICATION_LOG_PATH"] 49 + def self.read_latest_for(filename) 50 + - path = Rails.root.join("log", filename) 51 + + path = File.join(ENV["GITLAB_LOG_PATH"], filename) 52 + tail_output, _ = Gitlab::Popen.popen(%W(tail -n 2000 #{path})) 53 + tail_output.split("\n") 54 + end 55 + 56 + def self.build 57 + - new(Rails.root.join("log", file_name)) 58 + + new(File.join(ENV["GITLAB_LOG_PATH"], file_name)) 59 + end 60 + end 61 + end 62 + diff --git a/lib/gitlab/uploads_transfer.rb b/lib/gitlab/uploads_transfer.rb 63 + index be8fcc7..7642d74 100644 64 + --- a/lib/gitlab/uploads_transfer.rb 65 + +++ b/lib/gitlab/uploads_transfer.rb 66 + @@ -29,7 +29,7 @@ module Gitlab 67 + end 68 + 69 + def root_dir 70 + - File.join(Rails.root, "public", "uploads") 71 + + ENV['GITLAB_UPLOADS_PATH'] || File.join(Rails.root, "public", "uploads") 116 72 end 73 + end 74 + end 75 + diff --git a/lib/tasks/gitlab/check.rake b/lib/tasks/gitlab/check.rake 76 + index 81099cb..a40b1ad 100644 77 + --- a/lib/tasks/gitlab/check.rake 78 + +++ b/lib/tasks/gitlab/check.rake 79 + @@ -223,7 +223,7 @@ namespace :gitlab do 80 + def check_log_writable 81 + print "Log directory writable? ... " 117 82 118 - def format_message(severity, timestamp, progname, msg) 83 + - log_path = Rails.root.join("log") 84 + + log_path = ENV["GITLAB_LOG_PATH"] 85 + 86 + if File.writable?(log_path) 87 + puts "yes".green 88 + @@ -263,10 +263,12 @@ namespace :gitlab do 89 + def check_uploads 90 + print "Uploads directory setup correctly? ... " 91 + 92 + - unless File.directory?(Rails.root.join('public/uploads')) 93 + + uploads_dir = ENV['GITLAB_UPLOADS_PATH'] || Rails.root.join('public/uploads') 94 + + 95 + + unless File.directory?(uploads_dir) 96 + puts "no".red 97 + try_fixing_it( 98 + - "sudo -u #{gitlab_user} mkdir -m 750 #{Rails.root}/public/uploads" 99 + + "sudo -u #{gitlab_user} mkdir -m 750 #{uploads_dir}" 100 + ) 101 + for_more_information( 102 + see_installation_guide_section "GitLab" 103 + @@ -275,7 +277,7 @@ namespace :gitlab do 104 + return 105 + end 106 + 107 + - upload_path = File.realpath(Rails.root.join('public/uploads')) 108 + + upload_path = File.realpath(Rails.root.join(uploads_dir)) 109 + upload_path_tmp = File.join(upload_path, 'tmp') 110 + 111 + if File.stat(upload_path).mode == 040750
+3 -3
pkgs/top-level/all-packages.nix
··· 1719 1719 gitinspector = callPackage ../applications/version-management/gitinspector { }; 1720 1720 1721 1721 gitlab = callPackage ../applications/version-management/gitlab { 1722 - ruby = ruby_2_2_2; 1722 + ruby = ruby_2_2; 1723 1723 }; 1724 1724 1725 1725 gitlab-shell = callPackage ../applications/version-management/gitlab-shell { 1726 - ruby = ruby_2_2_2; 1726 + ruby = ruby_2_2; 1727 1727 }; 1728 1728 1729 - gitlab-git-http-server = callPackage ../applications/version-management/gitlab-git-http-server { }; 1729 + gitlab-workhorse = callPackage ../applications/version-management/gitlab-workhorse { }; 1730 1730 1731 1731 git-latexdiff = callPackage ../tools/typesetting/git-latexdiff { }; 1732 1732