diff options
42 files changed, 852 insertions, 634 deletions
@@ -419,7 +419,7 @@ group :ed25519 do end # Gitaly GRPC client -gem 'gitaly-proto', '~> 0.100.0', require: 'gitaly' +gem 'gitaly-proto', '~> 0.101.0', require: 'gitaly' gem 'grpc', '~> 1.11.0' # Locked until https://github.com/google/protobuf/issues/4210 is closed diff --git a/Gemfile.lock b/Gemfile.lock index 5f8d1a8fa68..0ce0312e743 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -283,7 +283,7 @@ GEM gettext_i18n_rails (>= 0.7.1) po_to_json (>= 1.0.0) rails (>= 3.2.0) - gitaly-proto (0.100.0) + gitaly-proto (0.101.0) google-protobuf (~> 3.1) grpc (~> 1.10) github-linguist (5.3.3) @@ -452,7 +452,6 @@ GEM kgio (2.10.0) knapsack (1.16.0) rake - timecop (>= 0.1.0) kubeclient (3.1.0) http (~> 2.2.2) recursive-open-struct (~> 1.0, >= 1.0.4) @@ -1040,7 +1039,7 @@ DEPENDENCIES gettext (~> 3.2.2) gettext_i18n_rails (~> 1.8.0) gettext_i18n_rails_js (~> 1.3) - gitaly-proto (~> 0.100.0) + gitaly-proto (~> 0.101.0) github-linguist (~> 5.3.3) gitlab-flowdock-git-hook (~> 1.0.1) gitlab-gollum-lib (~> 4.2) diff --git a/Gemfile.rails5.lock b/Gemfile.rails5.lock index bee13dd1d53..d9a89de32cb 100644 --- a/Gemfile.rails5.lock +++ b/Gemfile.rails5.lock @@ -3,7 +3,7 @@ GEM specs: RedCloth (4.3.2) abstract_type (0.0.7) - ace-rails-ap (4.1.4) + ace-rails-ap (4.1.2) actioncable (5.0.7) actionpack (= 5.0.7) nio4r (>= 1.2, < 3.0) @@ -54,12 +54,12 @@ GEM akismet (2.0.0) allocations (1.0.5) arel (7.1.4) - asana (0.6.3) + asana (0.6.0) faraday (~> 0.9) faraday_middleware (~> 0.9) faraday_middleware-multi_json (~> 0.0) oauth2 (~> 1.0) - asciidoctor (1.5.6.1) + asciidoctor (1.5.6.2) asciidoctor-plantuml (0.0.8) asciidoctor (~> 1.5) asset_sync (2.4.0) @@ -71,8 +71,8 @@ GEM atomic (1.1.99) attr_encrypted (3.1.0) encryptor (~> 3.0.0) - attr_required (1.0.1) - awesome_print (1.2.0) + attr_required (1.0.0) + awesome_print (1.8.0) axiom-types (0.1.1) descendants_tracker (~> 0.0.4) ice_nine (~> 0.11.0) @@ -88,12 +88,12 @@ GEM erubis (>= 2.6.6) rack (>= 0.9.0) bindata (2.4.3) - binding_of_caller (0.7.3) + binding_of_caller (0.7.2) debug_inspector (>= 0.0.1) blankslate (2.1.2.4) bootstrap_form (2.7.0) brakeman (4.2.1) - browser (2.5.3) + browser (2.2.0) builder (3.2.3) bullet (5.5.1) activesupport (>= 3.0.0) @@ -102,32 +102,33 @@ GEM bundler (~> 1.2) thor (~> 0.18) byebug (9.0.6) - capybara (2.18.0) + capybara (2.15.1) addressable mini_mime (>= 0.1.3) nokogiri (>= 1.3.3) rack (>= 1.0.0) rack-test (>= 0.5.4) - xpath (>= 2.0, < 4.0) - capybara-screenshot (1.0.18) + xpath (~> 2.0) + capybara-screenshot (1.0.14) capybara (>= 1.0, < 3) launchy - carrierwave (1.2.2) + carrierwave (1.2.1) activemodel (>= 4.0.0) activesupport (>= 4.0.0) mime-types (>= 1.16) - charlock_holmes (0.7.5) + cause (0.1) + charlock_holmes (0.7.6) childprocess (0.9.0) ffi (~> 1.0, >= 1.0.11) chronic (0.10.2) chronic_duration (0.10.6) numerizer (~> 0.1.1) - chunky_png (1.3.10) + chunky_png (1.3.5) citrus (3.0.2) - coderay (1.1.2) + coderay (1.1.1) coercible (1.0.0) descendants_tracker (~> 0.0.1) - commonmarker (0.17.9) + commonmarker (0.17.8) ruby-enum (~> 0.5) concord (0.1.5) adamantium (~> 0.2.0) @@ -140,11 +141,11 @@ GEM safe_yaml (~> 1.0.0) crass (1.0.4) creole (0.5.0) - css_parser (1.6.0) + css_parser (1.5.0) addressable - daemons (1.2.6) + daemons (1.2.3) database_cleaner (1.5.3) - debug_inspector (0.0.3) + debug_inspector (0.0.2) debugger-ruby_core_source (1.3.8) deckar01-task_list (2.0.0) html-pipeline @@ -154,33 +155,33 @@ GEM activerecord (>= 3.2.0, < 5.2) descendants_tracker (0.0.4) thread_safe (~> 0.3, >= 0.3.1) - device_detector (1.0.1) - devise (4.4.1) + device_detector (1.0.0) + devise (4.4.3) bcrypt (~> 3.0) orm_adapter (~> 0.1) - railties (>= 4.1.0, < 5.2) + railties (>= 4.1.0, < 6.0) responders warden (~> 1.2.3) - devise-two-factor (3.0.2) - activesupport (< 5.2) + devise-two-factor (3.0.0) + activesupport attr_encrypted (>= 1.3, < 4, != 2) devise (~> 4.0) - railties (< 5.2) + railties rotp (~> 2.0) diff-lcs (1.3) diffy (3.1.0) docile (1.1.5) domain_name (0.5.20180417) unf (>= 0.0.5, < 1.0.0) - doorkeeper (4.3.1) + doorkeeper (4.3.2) railties (>= 4.2) - doorkeeper-openid_connect (1.3.0) + doorkeeper-openid_connect (1.4.0) doorkeeper (~> 4.3) json-jwt (~> 1.6) - dropzonejs-rails (0.7.4) + dropzonejs-rails (0.7.2) rails (> 3.1) ed25519 (1.2.4) - email_reply_trimmer (0.1.10) + email_reply_trimmer (0.1.6) email_spec (2.2.0) htmlentities (~> 4.3.3) launchy (~> 2.1) @@ -189,11 +190,11 @@ GEM equalizer (0.0.11) erubis (2.7.0) escape_utils (1.1.1) - et-orbi (1.0.9) + et-orbi (1.0.3) tzinfo - eventmachine (1.2.5) - excon (0.60.0) - execjs (2.7.0) + eventmachine (1.0.8) + excon (0.62.0) + execjs (2.6.0) expression_parser (0.9.0) factory_bot (4.8.2) activesupport (>= 3.0.0) @@ -209,8 +210,8 @@ GEM multi_json fast_blank (1.0.0) fast_gettext (1.6.0) - ffaker (2.8.1) - ffi (1.9.23) + ffaker (2.4.0) + ffi (1.9.18) flay (2.10.0) erubis (~> 2.7.0) path_expander (~> 1.0) @@ -248,13 +249,13 @@ GEM fog-json (1.0.2) fog-core (~> 1.0) multi_json (~> 1.10) - fog-local (0.5.0) - fog-core (>= 1.27, < 3.0) - fog-openstack (0.1.24) - fog-core (~> 1.40) + fog-local (0.3.1) + fog-core (~> 1.27) + fog-openstack (0.1.21) + fog-core (>= 1.40) fog-json (>= 1.0) ipaddress (>= 0.8) - fog-rackspace (0.1.5) + fog-rackspace (0.1.1) fog-core (>= 1.35) fog-json (>= 1.0) fog-xml (>= 0.1) @@ -262,8 +263,8 @@ GEM fog-xml (0.1.3) fog-core nokogiri (>= 1.5.11, < 2.0.0) - font-awesome-rails (4.7.0.3) - railties (>= 3.2, < 5.2) + font-awesome-rails (4.7.0.1) + railties (>= 3.2, < 5.1) foreman (0.84.0) thor (~> 0.19.1) formatador (0.2.5) @@ -274,7 +275,7 @@ GEM rugged (~> 0.21) gemojione (3.3.0) json - get_process_mem (0.2.1) + get_process_mem (0.2.0) gettext (3.2.9) locale (>= 2.0.5) text (>= 1.3.0) @@ -350,9 +351,9 @@ GEM multi_json (~> 1.11) os (~> 0.9) signet (~> 0.7) - gpgme (2.0.16) - mini_portile2 (~> 2.3) - grape (1.0.2) + gpgme (2.0.13) + mini_portile2 (~> 2.1) + grape (1.0.3) activesupport builder mustermann-grape (~> 1.0.0) @@ -368,6 +369,10 @@ GEM rake grape_logging (1.7.0) grape + graphiql-rails (1.4.10) + railties + sprockets-rails + graphql (1.8.1) grpc (1.11.0) google-protobuf (~> 3.1) googleapis-common-protos-types (~> 1.0.0) @@ -380,23 +385,23 @@ GEM rake (>= 10, < 13) rubocop (>= 0.49.0) sysexits (~> 1.1) - hamlit (2.6.2) + hamlit (2.6.1) temple (~> 0.7.6) thor tilt - hashdiff (0.3.7) + hashdiff (0.3.4) hashie (3.5.7) hashie-forbidden_attributes (0.1.1) hashie (>= 3.0) health_check (2.6.0) rails (>= 4.0) - hipchat (1.5.4) + hipchat (1.5.2) httparty mimemagic html-pipeline (2.7.1) activesupport (>= 2) nokogiri (>= 1.4) - html2text (0.2.1) + html2text (0.2.0) nokogiri (~> 1.6) htmlentities (4.3.4) http (2.2.2) @@ -416,9 +421,11 @@ GEM concurrent-ruby (~> 1.0) icalendar (2.4.1) ice_nine (0.11.2) - influxdb (0.5.3) + influxdb (0.2.3) + cause + json ipaddress (0.8.3) - jira-ruby (1.5.0) + jira-ruby (1.4.1) activesupport multipart-post oauth (~> 0.5, >= 0.5.0) @@ -433,30 +440,30 @@ GEM json-schema (2.8.0) addressable (>= 2.4) jwt (1.5.6) - kaminari (1.1.1) + kaminari (1.0.1) activesupport (>= 4.1.0) - kaminari-actionview (= 1.1.1) - kaminari-activerecord (= 1.1.1) - kaminari-core (= 1.1.1) - kaminari-actionview (1.1.1) + kaminari-actionview (= 1.0.1) + kaminari-activerecord (= 1.0.1) + kaminari-core (= 1.0.1) + kaminari-actionview (1.0.1) actionview - kaminari-core (= 1.1.1) - kaminari-activerecord (1.1.1) + kaminari-core (= 1.0.1) + kaminari-activerecord (1.0.1) activerecord - kaminari-core (= 1.1.1) - kaminari-core (1.1.1) - kgio (2.11.2) + kaminari-core (= 1.0.1) + kaminari-core (1.0.1) + kgio (2.10.0) knapsack (1.16.0) rake - kubeclient (3.1.1) + kubeclient (3.1.0) http (~> 2.2.2) recursive-open-struct (~> 1.0, >= 1.0.4) rest-client (~> 2.0) launchy (2.4.3) addressable (~> 2.3) - letter_opener (1.6.0) + letter_opener (1.4.1) launchy (~> 2.2) - letter_opener_web (1.3.3) + letter_opener_web (1.3.0) actionmailer (>= 3.2) letter_opener (~> 1.0) railties (>= 3.2) @@ -475,7 +482,7 @@ GEM logging (2.2.2) little-plugger (~> 1.1) multi_json (~> 1.10) - lograge (0.9.0) + lograge (0.10.0) actionpack (>= 4) activesupport (>= 4) railties (>= 4) @@ -489,11 +496,11 @@ GEM memoist (0.16.0) memoizable (0.4.2) thread_safe (~> 0.3, >= 0.3.1) - method_source (0.9.0) + method_source (0.8.2) mime-types (3.1) mime-types-data (~> 3.2015) mime-types-data (3.2016.0521) - mimemagic (0.3.2) + mimemagic (0.3.0) mini_mime (1.0.0) mini_portile2 (2.3.0) minitest (5.7.0) @@ -505,7 +512,7 @@ GEM mustermann-grape (1.0.0) mustermann (~> 1.0.0) mysql2 (0.4.10) - net-ldap (0.16.1) + net-ldap (0.16.0) net-ssh (5.0.1) netrc (0.11.0) nio4r (2.3.1) @@ -560,7 +567,7 @@ GEM omniauth-oauth2 (1.5.0) oauth2 (~> 1.1) omniauth (~> 1.2) - omniauth-oauth2-generic (0.2.4) + omniauth-oauth2-generic (0.2.2) omniauth-oauth2 (~> 1.0) omniauth-saml (1.10.0) omniauth (~> 1.3, >= 1.3.2) @@ -579,7 +586,7 @@ GEM orm_adapter (0.5.0) os (0.9.6) parallel (1.12.1) - parser (2.5.0.5) + parser (2.5.1.0) ast (~> 2.4.0) parslet (1.5.0) blankslate (~> 2.0) @@ -615,9 +622,9 @@ GEM json (>= 1.6.0) posix-spawn (0.3.13) powerpack (0.1.1) - premailer (1.11.1) + premailer (1.10.4) addressable - css_parser (>= 1.6.0) + css_parser (>= 1.4.10) htmlentities (>= 4.0.0) premailer-rails (1.9.7) actionmailer (>= 3, < 6) @@ -628,14 +635,15 @@ GEM unparser procto (0.0.3) prometheus-client-mmap (0.9.3) - pry (0.11.3) + pry (0.10.4) coderay (~> 1.1.0) - method_source (~> 0.9.0) - pry-byebug (3.4.3) - byebug (>= 9.0, < 9.1) + method_source (~> 0.8.1) + slop (~> 3.4) + pry-byebug (3.4.2) + byebug (~> 9.0) pry (~> 0.10) - pry-rails (0.3.6) - pry (>= 0.10.4) + pry-rails (0.3.5) + pry (>= 0.9.10) public_suffix (3.0.2) pyu-ruby-sasl (0.0.3.3) rack (2.0.5) @@ -652,7 +660,7 @@ GEM rack (>= 1.1) rack-protection (2.0.1) rack - rack-proxy (0.6.4) + rack-proxy (0.6.0) rack rack-test (0.6.3) rack (>= 1.0) @@ -690,16 +698,16 @@ GEM thor (>= 0.18.1, < 2.0) rainbow (2.2.2) rake - raindrops (0.19.0) + raindrops (0.18.0) rake (12.3.1) - rb-fsevent (0.10.3) + rb-fsevent (0.10.2) rb-inotify (0.9.10) ffi (>= 0.5.0, < 2) - rblineprof (0.3.7) + rblineprof (0.3.6) debugger-ruby_core_source (~> 1.3) rdoc (6.0.4) re2 (1.1.1) - recaptcha (3.4.0) + recaptcha (3.0.0) json recursive-open-struct (1.1.0) redcarpet (3.4.0) @@ -726,8 +734,7 @@ GEM declarative (< 0.1.0) declarative-option (< 0.2.0) uber (< 0.2.0) - request_store (1.4.0) - rack (>= 1.4) + request_store (1.3.1) responders (2.4.0) actionpack (>= 4.2.0, < 5.3) railties (>= 4.2.0, < 5.3) @@ -736,11 +743,11 @@ GEM mime-types (>= 1.16, < 4.0) netrc (~> 0.8) retriable (3.1.1) - rinku (2.0.4) + rinku (2.0.0) rotp (2.1.2) rouge (3.1.1) - rqrcode (0.10.1) - chunky_png (~> 1.0) + rqrcode (0.7.0) + chunky_png rqrcode-rails3 (0.1.7) rqrcode (>= 0.4.2) rspec (3.6.0) @@ -761,7 +768,7 @@ GEM proc_to_ast rspec (>= 2.13, < 4) unparser - rspec-rails (3.6.1) + rspec-rails (3.6.0) actionpack (>= 3.0) activesupport (>= 3.0) railties (>= 3.0) @@ -769,7 +776,7 @@ GEM rspec-expectations (~> 3.6.0) rspec-mocks (~> 3.6.0) rspec-support (~> 3.6.0) - rspec-retry (0.4.6) + rspec-retry (0.4.5) rspec-core rspec-set (0.1.3) rspec-support (3.6.0) @@ -787,7 +794,7 @@ GEM unicode-display_width (~> 1.0, >= 1.0.1) rubocop-gitlab-security (0.1.1) rubocop (>= 0.51) - rubocop-rspec (1.22.2) + rubocop-rspec (1.22.1) rubocop (>= 0.52.1) ruby-enum (0.7.2) i18n @@ -797,14 +804,14 @@ GEM ruby-progressbar (1.9.0) ruby-saml (1.7.2) nokogiri (>= 1.5.10) - ruby_parser (3.11.0) - sexp_processor (~> 4.9) + ruby_parser (3.9.0) + sexp_processor (~> 4.1) rubyntlm (0.6.2) - rubypants (0.7.0) + rubypants (0.2.0) rubyzip (1.2.1) - rufus-scheduler (3.4.2) + rufus-scheduler (3.4.0) et-orbi (~> 1.0) - rugged (0.27.0) + rugged (0.27.1) safe_yaml (1.0.4) sanitize (2.1.0) nokogiri (>= 1.4.4) @@ -813,7 +820,7 @@ GEM sass-listen (4.0.0) rb-fsevent (~> 0.9, >= 0.9.4) rb-inotify (~> 0.9, >= 0.9.7) - sass-rails (5.0.7) + sass-rails (5.0.6) railties (>= 4.0.0, < 6) sass (~> 3.1) sprockets (>= 2.8, < 4.0) @@ -829,7 +836,7 @@ GEM seed-fu (2.3.7) activerecord (>= 3.1) activesupport (>= 3.1) - select2-rails (3.5.10) + select2-rails (3.5.9.3) thor (~> 0.14) selenium-webdriver (3.12.0) childprocess (~> 0.5) @@ -837,17 +844,17 @@ GEM sentry-raven (2.7.2) faraday (>= 0.7.6, < 1.0) settingslogic (2.0.9) - sexp_processor (4.10.1) + sexp_processor (4.9.0) sham_rack (1.3.6) rack shoulda-matchers (3.1.2) activesupport (>= 4.0.0) - sidekiq (5.1.1) + sidekiq (5.1.3) concurrent-ruby (~> 1.0) connection_pool (~> 2.2, >= 2.2.0) rack-protection (>= 1.5.0) redis (>= 3.3.5, < 5) - sidekiq-cron (0.6.3) + sidekiq-cron (0.6.0) rufus-scheduler (>= 3.3.0) sidekiq (>= 4.2.1) sidekiq-limit_fetch (3.4.0) @@ -857,14 +864,15 @@ GEM faraday (~> 0.9) jwt (>= 1.5, < 3.0) multi_json (~> 1.10) - simple_po_parser (1.1.3) + simple_po_parser (1.1.2) simplecov (0.14.1) docile (~> 1.1.0) json (>= 1.8, < 3) simplecov-html (~> 0.10.0) - simplecov-html (0.10.2) + simplecov-html (0.10.0) slack-notifier (1.5.1) - spring (2.0.2) + slop (3.6.0) + spring (2.0.1) activesupport (>= 4.2) spring-commands-rspec (1.0.4) spring (>= 0.9.1) @@ -877,7 +885,7 @@ GEM sprockets (>= 3.0.0) sqlite3 (1.3.13) sshkey (1.9.0) - stackprof (0.2.11) + stackprof (0.2.10) state_machines (0.5.0) state_machines-activemodel (0.5.1) activemodel (>= 4.1, < 6.0) @@ -886,19 +894,19 @@ GEM activerecord (>= 4.1, < 6.0) state_machines-activemodel (>= 0.5.0) stringex (2.8.4) - sys-filesystem (1.1.9) + sys-filesystem (1.1.6) ffi sysexits (1.2.0) temple (0.7.7) test-prof (0.2.5) text (1.3.1) - thin (1.7.2) + thin (1.7.0) daemons (~> 1.0, >= 1.0.9) eventmachine (~> 1.0, >= 1.0.4) rack (>= 1, < 3) thor (0.19.4) thread_safe (0.3.6) - tilt (2.0.8) + tilt (2.0.6) timecop (0.8.1) timfel-krb5-auth (0.8.3) toml (0.1.2) @@ -918,7 +926,7 @@ GEM unf (0.1.4) unf_ext unf_ext (0.0.7.5) - unicode-display_width (1.3.0) + unicode-display_width (1.3.2) unicorn (5.1.0) kgio (~> 2.6) raindrops (~> 0.7) @@ -935,7 +943,7 @@ GEM parser (>= 2.3.1.2, < 2.6) procto (~> 0.0.2) url_safe_base64 (0.2.2) - validates_hostname (1.0.8) + validates_hostname (1.0.6) activerecord (>= 3.0) activesupport (>= 3.0) version_sorter (2.1.0) @@ -951,7 +959,7 @@ GEM addressable (>= 2.3.6) crack (>= 0.3.2) hashdiff - webpack-rails (0.9.11) + webpack-rails (0.9.10) railties (>= 3.2.0) websocket-driver (0.6.5) websocket-extensions (>= 0.1.0) @@ -962,8 +970,8 @@ GEM rinku with_env (1.1.0) xml-simple (1.1.5) - xpath (3.0.0) - nokogiri (~> 1.8) + xpath (2.1.0) + nokogiri (~> 1.3) PLATFORMS ruby @@ -1056,6 +1064,8 @@ DEPENDENCIES grape-entity (~> 0.7.1) grape-path-helpers (~> 1.0) grape_logging (~> 1.7) + graphiql-rails (~> 1.4.10) + graphql (~> 1.8.0) grpc (~> 1.11.0) haml_lint (~> 0.26.0) hamlit (~> 2.6.1) diff --git a/app/assets/javascripts/ide/components/panes/right.vue b/app/assets/javascripts/ide/components/panes/right.vue index aafd6a15a78..dd7fc8f1e01 100644 --- a/app/assets/javascripts/ide/components/panes/right.vue +++ b/app/assets/javascripts/ide/components/panes/right.vue @@ -5,6 +5,7 @@ import Icon from '../../../vue_shared/components/icon.vue'; import { rightSidebarViews } from '../../constants'; import PipelinesList from '../pipelines/list.vue'; import JobsDetail from '../jobs/detail.vue'; +import ResizablePanel from '../resizable_panel.vue'; export default { directives: { @@ -14,6 +15,7 @@ export default { Icon, PipelinesList, JobsDetail, + ResizablePanel, }, computed: { ...mapState(['rightPane']), @@ -40,12 +42,16 @@ export default { <div class="multi-file-commit-panel ide-right-sidebar" > - <div - class="multi-file-commit-panel-inner" + <resizable-panel v-if="rightPane" + class="multi-file-commit-panel-inner" + :collapsible="false" + :initial-width="350" + :min-size="350" + side="right" > <component :is="rightPane" /> - </div> + </resizable-panel> <nav class="ide-activity-bar"> <ul class="list-unstyled"> <li> diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index 535a2c362f2..324065c1162 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -1125,8 +1125,11 @@ class MergeRequest < ActiveRecord::Base project.merge_requests.merged.where(author_id: author_id).empty? end + # TODO: remove once production database rename completes + alias_attribute :allow_collaboration, :allow_maintainer_to_push + def allow_collaboration - collaborative_push_possible? && super + collaborative_push_possible? && allow_maintainer_to_push end alias_method :allow_collaboration?, :allow_collaboration diff --git a/app/services/merge_requests/create_from_issue_service.rb b/app/services/merge_requests/create_from_issue_service.rb index cf687b71d16..3407b312700 100644 --- a/app/services/merge_requests/create_from_issue_service.rb +++ b/app/services/merge_requests/create_from_issue_service.rb @@ -41,7 +41,9 @@ module MergeRequests end def ref - @ref || project.default_branch || 'master' + return @ref if project.repository.branch_exists?(@ref) + + project.default_branch || 'master' end def merge_request diff --git a/app/views/admin/application_settings/show.html.haml b/app/views/admin/application_settings/show.html.haml index 3f440c76ee0..3ac1721f7cd 100644 --- a/app/views/admin/application_settings/show.html.haml +++ b/app/views/admin/application_settings/show.html.haml @@ -17,7 +17,7 @@ %section.settings.as-account-limit.no-animate#js-account-settings{ class: ('expanded' if expanded) } .settings-header %h4 - = _('Account and limit settings') + = _('Account and limit') %button.btn.js-settings-toggle{ type: 'button' } = expanded ? _('Collapse') : _('Expand') %p @@ -317,7 +317,7 @@ %section.settings.as-mirror.no-animate#js-mirror-settings{ class: ('expanded' if expanded) } .settings-header %h4 - = _('Repository mirror settings') + = _('Repository mirror') %button.btn.js-settings-toggle{ type: 'button' } = expanded ? 'Collapse' : 'Expand' %p diff --git a/app/views/groups/settings/ci_cd/show.html.haml b/app/views/groups/settings/ci_cd/show.html.haml index ff2b418e479..647948c7dff 100644 --- a/app/views/groups/settings/ci_cd/show.html.haml +++ b/app/views/groups/settings/ci_cd/show.html.haml @@ -18,7 +18,7 @@ %section.settings#runners-settings.no-animate{ class: ('expanded' if expanded) } .settings-header %h4 - = _('Runners settings') + = _('Runners') %button.btn.btn-default.js-settings-toggle{ type: "button" } = expanded ? _('Collapse') : _('Expand') %p diff --git a/app/views/projects/edit.html.haml b/app/views/projects/edit.html.haml index 77ba422e87e..77665a2ac23 100644 --- a/app/views/projects/edit.html.haml +++ b/app/views/projects/edit.html.haml @@ -7,7 +7,7 @@ %section.settings.general-settings.no-animate{ class: ('expanded' if expanded) } .settings-header %h4 - General project settings + General project %button.btn.js-settings-toggle{ type: 'button' } = expanded ? 'Collapse' : 'Expand' %p @@ -85,7 +85,7 @@ %section.settings.merge-requests-feature.no-animate{ class: [('expanded' if expanded), ('hidden' if @project.project_feature.send(:merge_requests_access_level) == 0)] } .settings-header %h4 - Merge request settings + Merge request %button.btn.js-settings-toggle{ type: 'button' } = expanded ? 'Collapse' : 'Expand' %p @@ -104,7 +104,7 @@ %section.settings.advanced-settings.no-animate{ class: ('expanded' if expanded) } .settings-header %h4 - Advanced settings + Advanced %button.btn.js-settings-toggle{ type: 'button' } = expanded ? 'Collapse' : 'Expand' %p diff --git a/app/views/projects/settings/ci_cd/show.html.haml b/app/views/projects/settings/ci_cd/show.html.haml index ed118d1bcef..3047207bca7 100644 --- a/app/views/projects/settings/ci_cd/show.html.haml +++ b/app/views/projects/settings/ci_cd/show.html.haml @@ -8,7 +8,7 @@ %section.settings#js-general-pipeline-settings.no-animate{ class: ('expanded' if general_expanded) } .settings-header %h4 - General pipelines settings + General pipelines %button.btn.js-settings-toggle{ type: 'button' } = expanded ? 'Collapse' : 'Expand' %p @@ -31,7 +31,7 @@ %section.settings.no-animate{ class: ('expanded' if expanded) } .settings-header %h4 - Runners settings + Runners %button.btn.js-settings-toggle{ type: 'button' } = expanded ? 'Collapse' : 'Expand' %p diff --git a/changelogs/unreleased/45400-automatically-created-mr-uses-wrong-target-branch-when-branching-from-tag.yml b/changelogs/unreleased/45400-automatically-created-mr-uses-wrong-target-branch-when-branching-from-tag.yml new file mode 100644 index 00000000000..5aba62435ed --- /dev/null +++ b/changelogs/unreleased/45400-automatically-created-mr-uses-wrong-target-branch-when-branching-from-tag.yml @@ -0,0 +1,5 @@ +--- +title: Set MR target branch to default branch if target branch is not valid +merge_request: 19067 +author: +type: fixed diff --git a/changelogs/unreleased/rails5-fix-47370.yml b/changelogs/unreleased/rails5-fix-47370.yml new file mode 100644 index 00000000000..90c19593b7d --- /dev/null +++ b/changelogs/unreleased/rails5-fix-47370.yml @@ -0,0 +1,5 @@ +--- +title: Use same gem versions for rails5 as for rails4 where possible +merge_request: 19498 +author: Jasper Maes +type: fixed diff --git a/config/initializers/rack_attack_global.rb b/config/initializers/rack_attack_global.rb index a90516eee7d..45963831c41 100644 --- a/config/initializers/rack_attack_global.rb +++ b/config/initializers/rack_attack_global.rb @@ -26,7 +26,7 @@ class Rack::Attack throttle('throttle_unauthenticated', Gitlab::Throttle.unauthenticated_options) do |req| Gitlab::Throttle.settings.throttle_unauthenticated_enabled && req.unauthenticated? && - !req.api_internal_request? && + !req.should_be_skipped? && req.ip end @@ -59,6 +59,10 @@ class Rack::Attack path =~ %r{^/api/v\d+/internal/} end + def should_be_skipped? + api_internal_request? + end + def web_request? !api_request? end diff --git a/db/migrate/20180523042841_rename_merge_requests_allow_maintainer_to_push.rb b/db/migrate/20180523042841_rename_merge_requests_allow_maintainer_to_push.rb index 975bdfe70f4..41bc7b71694 100644 --- a/db/migrate/20180523042841_rename_merge_requests_allow_maintainer_to_push.rb +++ b/db/migrate/20180523042841_rename_merge_requests_allow_maintainer_to_push.rb @@ -6,10 +6,12 @@ class RenameMergeRequestsAllowMaintainerToPush < ActiveRecord::Migration disable_ddl_transaction! def up - rename_column_concurrently :merge_requests, :allow_maintainer_to_push, :allow_collaboration + # NOOP end def down - cleanup_concurrent_column_rename :merge_requests, :allow_collaboration, :allow_maintainer_to_push + if column_exists?(:merge_requests, :allow_collaboration) + cleanup_concurrent_column_rename :merge_requests, :allow_collaboration, :allow_maintainer_to_push + end end end diff --git a/db/migrate/20180608110058_rename_merge_requests_allow_collaboration.rb b/db/migrate/20180608110058_rename_merge_requests_allow_collaboration.rb new file mode 100644 index 00000000000..dcbbef9bd4a --- /dev/null +++ b/db/migrate/20180608110058_rename_merge_requests_allow_collaboration.rb @@ -0,0 +1,21 @@ +# See http://doc.gitlab.com/ce/development/migration_style_guide.html +# for more information on how to write migrations for GitLab. + +class RenameMergeRequestsAllowCollaboration < ActiveRecord::Migration + include Gitlab::Database::MigrationHelpers + + # Set this constant to true if this migration requires downtime. + DOWNTIME = false + + disable_ddl_transaction! + + def up + if column_exists?(:merge_requests, :allow_collaboration) + rename_column_concurrently :merge_requests, :allow_collaboration, :allow_maintainer_to_push + end + end + + def down + # NOOP + end +end diff --git a/db/post_migrate/20180523125103_cleanup_merge_requests_allow_maintainer_to_push_rename.rb b/db/post_migrate/20180523125103_cleanup_merge_requests_allow_maintainer_to_push_rename.rb index b9ce4600675..7301bcf2c6c 100644 --- a/db/post_migrate/20180523125103_cleanup_merge_requests_allow_maintainer_to_push_rename.rb +++ b/db/post_migrate/20180523125103_cleanup_merge_requests_allow_maintainer_to_push_rename.rb @@ -6,10 +6,12 @@ class CleanupMergeRequestsAllowMaintainerToPushRename < ActiveRecord::Migration disable_ddl_transaction! def up - cleanup_concurrent_column_rename :merge_requests, :allow_maintainer_to_push, :allow_collaboration + # NOOP end def down - rename_column_concurrently :merge_requests, :allow_collaboration, :allow_maintainer_to_push + if column_exists?(:merge_requests, :allow_collaboration) + rename_column_concurrently :merge_requests, :allow_collaboration, :allow_maintainer_to_push + end end end diff --git a/db/post_migrate/20180608201435_cleanup_merge_requests_allow_collaboration_rename.rb b/db/post_migrate/20180608201435_cleanup_merge_requests_allow_collaboration_rename.rb new file mode 100644 index 00000000000..3f3edb8ea3d --- /dev/null +++ b/db/post_migrate/20180608201435_cleanup_merge_requests_allow_collaboration_rename.rb @@ -0,0 +1,20 @@ +# See http://doc.gitlab.com/ce/development/migration_style_guide.html +# for more information on how to write migrations for GitLab. + +class CleanupMergeRequestsAllowCollaborationRename < ActiveRecord::Migration + include Gitlab::Database::MigrationHelpers + + DOWNTIME = false + + disable_ddl_transaction! + + def up + if column_exists?(:merge_requests, :allow_collaboration) + cleanup_concurrent_column_rename :merge_requests, :allow_collaboration, :allow_maintainer_to_push + end + end + + def down + # NOOP + end +end diff --git a/db/schema.rb b/db/schema.rb index d1446af0a2e..d05c6afbb9f 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20180603190921) do +ActiveRecord::Schema.define(version: 20180608201435) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -1231,8 +1231,8 @@ ActiveRecord::Schema.define(version: 20180603190921) do t.boolean "discussion_locked" t.integer "latest_merge_request_diff_id" t.string "rebase_commit_sha" - t.boolean "allow_collaboration" t.boolean "squash", default: false, null: false + t.boolean "allow_maintainer_to_push" end add_index "merge_requests", ["assignee_id"], name: "index_merge_requests_on_assignee_id", using: :btree diff --git a/doc/user/index.md b/doc/user/index.md index 9be3c6f683c..edf50019c2f 100644 --- a/doc/user/index.md +++ b/doc/user/index.md @@ -161,13 +161,13 @@ such as Trello, JIRA, etc. ## Webhooks -Configure [webhooks](project/integrations/webhooks.html) to listen for +Configure [webhooks](project/integrations/webhooks.md) to listen for specific events like pushes, issues or merge requests. GitLab will send a POST request with data to the webhook URL. ## API -Automate GitLab via [API](../api/README.html). +Automate GitLab via [API](../api/README.md). ## Git and GitLab diff --git a/doc/user/markdown.md b/doc/user/markdown.md index 650d60f1585..5f976a8ad31 100644 --- a/doc/user/markdown.md +++ b/doc/user/markdown.md @@ -34,7 +34,7 @@ https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/user/markdown.md#newline GFM honors the markdown specification in how [paragraphs and line breaks are handled](https://daringfireball.net/projects/markdown/syntax#p). A paragraph is simply one or more consecutive lines of text, separated by one or more blank lines. -Line-breaks, or softreturns, are rendered if you end a line with two or more spaces: +Line-breaks, or soft returns, are rendered if you end a line with two or more spaces: [//]: # (Do *NOT* remove the two ending whitespaces in the following line.) [//]: # (They are needed for the Markdown text to render correctly.) @@ -197,7 +197,7 @@ https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/user/markdown.md#inline- With inline diffs tags you can display {+ additions +} or [- deletions -]. -The wrapping tags can be either curly braces or square brackets [+ additions +] or {- deletions -}. +The wrapping tags can be either curly braces or square brackets: [+ additions +] or {- deletions -}. Examples: @@ -228,7 +228,7 @@ https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/user/markdown.md#emoji You can use it to point out a :bug: or warn about :speak_no_evil: patches. And if someone improves your really :snail: code, send them some :birthday:. People will :heart: you for that. - If you are new to this, don't be :fearful:. You can easily join the emoji :family:. All you need to do is to look up on the supported codes. + If you are new to this, don't be :fearful:. You can easily join the emoji :family:. All you need to do is to look up one of the supported codes. Consult the [Emoji Cheat Sheet](https://www.emojicopy.com) for a list of all supported emoji codes. :thumbsup: @@ -238,7 +238,7 @@ Sometimes you want to :monkey: around a bit and add some :star2: to your :speech You can use it to point out a :bug: or warn about :speak_no_evil: patches. And if someone improves your really :snail: code, send them some :birthday:. People will :heart: you for that. -If you are new to this, don't be :fearful:. You can easily join the emoji :family:. All you need to do is to look up on the supported codes. +If you are new to this, don't be :fearful:. You can easily join the emoji :family:. All you need to do is to look up one of the supported codes. Consult the [Emoji Cheat Sheet](https://www.emojicopy.com) for a list of all supported emoji codes. :thumbsup: @@ -404,7 +404,7 @@ Examples: `HSL(540,70%,50%)` `HSLA(540,70%,50%,0.7)` -Becomes: +Become: `#F00` `#F00A` @@ -481,14 +481,14 @@ Alt-H2 All Markdown-rendered headers automatically get IDs, except in comments. -On hover a link to those IDs becomes visible to make it easier to copy the link to the header to give it to someone else. +On hover, a link to those IDs becomes visible to make it easier to copy the link to the header to give it to someone else. The IDs are generated from the content of the header according to the following rules: -1. All text is converted to lowercase -1. All non-word text (e.g., punctuation, HTML) is removed -1. All spaces are converted to hyphens -1. Two or more hyphens in a row are converted to one +1. All text is converted to lowercase. +1. All non-word text (e.g., punctuation, HTML) is removed. +1. All spaces are converted to hyphens. +1. Two or more hyphens in a row are converted to one. 1. If a header with the same ID has already been generated, a unique incrementing number is appended, starting at 1. @@ -514,6 +514,8 @@ Note that the Emoji processing happens before the header IDs are generated, so t ### Emphasis +Examples: + ```no-highlight Emphasis, aka italics, with *asterisks* or _underscores_. @@ -524,6 +526,8 @@ Combined emphasis with **asterisks and _underscores_**. Strikethrough uses two tildes. ~~Scratch this.~~ ``` +Become: + Emphasis, aka italics, with *asterisks* or _underscores_. Strong emphasis, aka bold, with **asterisks** or __underscores__. @@ -534,6 +538,8 @@ Strikethrough uses two tildes. ~~Scratch this.~~ ### Lists +Examples: + ```no-highlight 1. First ordered list item 2. Another item @@ -547,6 +553,8 @@ Strikethrough uses two tildes. ~~Scratch this.~~ + Or pluses ``` +Become: + 1. First ordered list item 2. Another item * Unordered sub-list. @@ -561,6 +569,8 @@ Strikethrough uses two tildes. ~~Scratch this.~~ If a list item contains multiple paragraphs, each subsequent paragraph should be indented with four spaces. +Example: + ```no-highlight 1. First ordered list item @@ -568,6 +578,8 @@ each subsequent paragraph should be indented with four spaces. 2. Another item ``` +Becomes: + 1. First ordered list item Second paragraph of first item. @@ -576,6 +588,8 @@ each subsequent paragraph should be indented with four spaces. If the second paragraph isn't indented with four spaces, the second list item will be incorrectly labeled as `1`. +Example: + ```no-highlight 1. First ordered list item @@ -583,6 +597,8 @@ the second list item will be incorrectly labeled as `1`. 2. Another item ``` +Becomes: + 1. First ordered list item Second paragraph of first item. @@ -620,6 +636,8 @@ will point the link to `wikis/style` when the link is inside of a wiki markdown ### Images +Examples: + Here's our logo (hover to see the title text): Inline-style: @@ -630,6 +648,8 @@ will point the link to `wikis/style` when the link is inside of a wiki markdown [logo]: img/markdown_logo.png +Become: + Here's our logo: Inline-style: @@ -644,6 +664,8 @@ Reference-style: ### Blockquotes +Examples: + ```no-highlight > Blockquotes are very handy in email to emulate reply text. > This line is part of the same quote. @@ -653,6 +675,8 @@ Quote break. > This is a very long line that will still be quoted properly when it wraps. Oh boy let's keep writing to make sure this is long enough to actually wrap for everyone. Oh, you can *put* **Markdown** into a blockquote. ``` +Become: + > Blockquotes are very handy in email to emulate reply text. > This line is part of the same quote. @@ -666,6 +690,8 @@ You can also use raw HTML in your Markdown, and it'll mostly work pretty well. See the documentation for HTML::Pipeline's [SanitizationFilter](http://www.rubydoc.info/gems/html-pipeline/1.11.0/HTML/Pipeline/SanitizationFilter#WHITELIST-constant) class for the list of allowed HTML tags and attributes. In addition to the default `SanitizationFilter` whitelist, GitLab allows `span`, `abbr`, `details` and `summary` elements. +Examples: + ```no-highlight <dl> <dt>Definition list</dt> @@ -676,6 +702,8 @@ See the documentation for HTML::Pipeline's [SanitizationFilter](http://www.rubyd </dl> ``` +Become: + <dl> <dt>Definition list</dt> <dd>Is something people use sometimes.</dd> @@ -710,6 +738,8 @@ These details will remain hidden until expanded. ### Horizontal Rule +Examples: + ``` Three or more... @@ -726,6 +756,8 @@ ___ Underscores ``` +Become: + Three or more... --- @@ -746,6 +778,8 @@ My basic recommendation for learning how line breaks work is to experiment and d Here are some things to try out: +Examples: + ``` Here's a line for us to start with. @@ -760,6 +794,8 @@ This line is *on its own line*, because the previous line ends with two spaces. spaces. ``` +Become: + Here's a line for us to start with. This line is separated from the one above by two newlines, so it will be a *separate paragraph*. @@ -776,6 +812,8 @@ spaces. Tables aren't part of the core Markdown spec, but they are part of GFM and Markdown Here supports them. +Example: + ``` | header 1 | header 2 | | -------- | -------- | @@ -783,7 +821,7 @@ Tables aren't part of the core Markdown spec, but they are part of GFM and Markd | cell 3 | cell 4 | ``` -Code above produces next output: +Becomes: | header 1 | header 2 | | -------- | -------- | @@ -794,7 +832,9 @@ Code above produces next output: The row of dashes between the table header and body must have at least three dashes in each column. -By including colons in the header row, you can align the text within that column: +By including colons in the header row, you can align the text within that column. + +Example: ``` | Left Aligned | Centered | Right Aligned | Left Aligned | Centered | Right Aligned | @@ -803,6 +843,8 @@ By including colons in the header row, you can align the text within that column | Cell 7 | Cell 8 | Cell 9 | Cell 10 | Cell 11 | Cell 12 | ``` +Becomes: + | Left Aligned | Centered | Right Aligned | Left Aligned | Centered | Right Aligned | | :----------- | :------: | ------------: | :----------- | :------: | ------------: | | Cell 1 | Cell 2 | Cell 3 | Cell 4 | Cell 5 | Cell 6 | @@ -810,11 +852,15 @@ By including colons in the header row, you can align the text within that column ### Footnotes +Example: + ``` You can add footnotes to your text as follows.[^2] [^2]: This is my awesome footnote. ``` +Becomes: + You can add footnotes to your text as follows.[^2] ## Wiki-specific Markdown diff --git a/lib/backup/repository.rb b/lib/backup/repository.rb index 1b1c83d9fb3..0119c5d6851 100644 --- a/lib/backup/repository.rb +++ b/lib/backup/repository.rb @@ -112,18 +112,31 @@ module Backup end end + def local_restore_custom_hooks(project, dir) + path_to_project_repo = Gitlab::GitalyClient::StorageSettings.allow_disk_access do + path_to_repo(project) + end + cmd = %W(tar -xf #{path_to_tars(project, dir)} -C #{path_to_project_repo} #{dir}) + output, status = Gitlab::Popen.popen(cmd) + unless status.zero? + progress_warn(project, cmd.join(' '), output) + end + end + + def gitaly_restore_custom_hooks(project, dir) + custom_hooks_path = path_to_tars(project, dir) + Gitlab::GitalyClient::RepositoryService.new(project.repository) + .restore_custom_hooks(custom_hooks_path) + end + def restore_custom_hooks(project) - # TODO: Need to find a way to do this for gitaly - # Gitaly migration issue: https://gitlab.com/gitlab-org/gitaly/issues/1195 in_path(path_to_tars(project)) do |dir| - path_to_project_repo = Gitlab::GitalyClient::StorageSettings.allow_disk_access do - path_to_repo(project) - end - cmd = %W(tar -xf #{path_to_tars(project, dir)} -C #{path_to_project_repo} #{dir}) - - output, status = Gitlab::Popen.popen(cmd) - unless status.zero? - progress_warn(project, cmd.join(' '), output) + gitaly_migrate(:restore_custom_hooks) do |is_enabled| + if is_enabled + local_restore_custom_hooks(project, dir) + else + gitaly_restore_custom_hooks(project, dir) + end end end end diff --git a/lib/gitlab/git.rb b/lib/gitlab/git.rb index e85e87a54af..55236a1122f 100644 --- a/lib/gitlab/git.rb +++ b/lib/gitlab/git.rb @@ -62,7 +62,7 @@ module Gitlab end def version - Gitlab::VersionInfo.parse(Gitlab::Popen.popen(%W(#{Gitlab.config.git.bin_path} --version)).first) + Gitlab::Git::Version.git_version end def check_namespace!(*objects) diff --git a/lib/gitlab/git/version.rb b/lib/gitlab/git/version.rb new file mode 100644 index 00000000000..11184ca3457 --- /dev/null +++ b/lib/gitlab/git/version.rb @@ -0,0 +1,11 @@ +module Gitlab + module Git + module Version + extend Gitlab::Git::Popen + + def self.git_version + Gitlab::VersionInfo.parse(popen(%W(#{Gitlab.config.git.bin_path} --version), nil).first) + end + end + end +end diff --git a/lib/gitlab/gitaly_client/repository_service.rb b/lib/gitlab/gitaly_client/repository_service.rb index ee01f5a5bd9..4340f779e53 100644 --- a/lib/gitlab/gitaly_client/repository_service.rb +++ b/lib/gitlab/gitaly_client/repository_service.rb @@ -213,25 +213,20 @@ module Gitlab end def create_from_bundle(bundle_path) - request = Gitaly::CreateRepositoryFromBundleRequest.new(repository: @gitaly_repo) - enum = Enumerator.new do |y| - File.open(bundle_path, 'rb') do |f| - while data = f.read(MAX_MSG_SIZE) - request.data = data - - y.yield request - - request = Gitaly::CreateRepositoryFromBundleRequest.new - end - end - end - - GitalyClient.call( - @storage, - :repository_service, + gitaly_repo_stream_request( + bundle_path, :create_repository_from_bundle, - enum, - timeout: GitalyClient.default_timeout + Gitaly::CreateRepositoryFromBundleRequest, + GitalyClient.default_timeout + ) + end + + def restore_custom_hooks(custom_hooks_path) + gitaly_repo_stream_request( + custom_hooks_path, + :restore_custom_hooks, + Gitaly::RestoreCustomHooksRequest, + GitalyClient.default_timeout ) end @@ -311,6 +306,30 @@ module Gitlab request = Gitaly::SearchFilesByContentRequest.new(repository: @gitaly_repo, ref: ref, query: query) GitalyClient.call(@storage, :repository_service, :search_files_by_content, request).flat_map(&:matches) end + + private + + def gitaly_repo_stream_request(file_path, rpc_name, request_class, timeout) + request = request_class.new(repository: @gitaly_repo) + enum = Enumerator.new do |y| + File.open(file_path, 'rb') do |f| + while data = f.read(MAX_MSG_SIZE) + request.data = data + + y.yield request + request = request_class.new + end + end + end + + GitalyClient.call( + @storage, + :repository_service, + rpc_name, + enum, + timeout: timeout + ) + end end end end diff --git a/locale/gitlab.pot b/locale/gitlab.pot index 43afb140051..fec990a6df6 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: gitlab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-05-29 09:43-0500\n" -"PO-Revision-Date: 2018-05-29 09:43-0500\n" +"POT-Creation-Date: 2018-06-07 19:35+0200\n" +"PO-Revision-Date: 2018-06-07 19:35+0200\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" "Language: \n" @@ -370,7 +370,7 @@ msgstr "" msgid "An error occurred while getting projects" msgstr "" -msgid "An error occurred while importing project" +msgid "An error occurred while importing project: ${details}" msgstr "" msgid "An error occurred while loading commits" @@ -463,6 +463,9 @@ msgstr "" msgid "Assigned to :name" msgstr "" +msgid "Assigned to me" +msgstr "" + msgid "Assignee" msgstr "" @@ -616,9 +619,6 @@ msgstr "" msgid "Begin with the selected commit" msgstr "" -msgid "Blame" -msgstr "" - msgid "Branch (%{branch_count})" msgid_plural "Branches (%{branch_count})" msgstr[0] "" @@ -1041,6 +1041,9 @@ msgstr "" msgid "ClusterIntegration|Copy Ingress IP Address to clipboard" msgstr "" +msgid "ClusterIntegration|Copy Jupyter Hostname to clipboard" +msgstr "" + msgid "ClusterIntegration|Copy Kubernetes cluster name" msgstr "" @@ -1119,6 +1122,12 @@ msgstr "" msgid "ClusterIntegration|Integration status" msgstr "" +msgid "ClusterIntegration|Jupyter Hostname" +msgstr "" + +msgid "ClusterIntegration|JupyterHub" +msgstr "" + msgid "ClusterIntegration|Kubernetes cluster" msgstr "" @@ -1519,6 +1528,9 @@ msgstr "" msgid "ContainerRegistry|You can also use a %{deploy_token} for read-only access to the registry images." msgstr "" +msgid "Continue" +msgstr "" + msgid "Continuous Integration and Deployment" msgstr "" @@ -1558,6 +1570,9 @@ msgstr "" msgid "Copy reference to clipboard" msgstr "" +msgid "Copy to clipboard" +msgstr "" + msgid "Create" msgstr "" @@ -1627,6 +1642,9 @@ msgstr "" msgid "Created" msgstr "" +msgid "Created by me" +msgstr "" + msgid "Cron Timezone" msgstr "" @@ -1818,6 +1836,9 @@ msgstr "" msgid "DeployTokens|Your new project deploy token has been created." msgstr "" +msgid "Deprioritize label" +msgstr "" + msgid "Description" msgstr "" @@ -2010,6 +2031,9 @@ msgstr "" msgid "Error fetching contributors data." msgstr "" +msgid "Error fetching job trace" +msgstr "" + msgid "Error fetching labels." msgstr "" @@ -2028,6 +2052,9 @@ msgstr "" msgid "Error loading last commit." msgstr "" +msgid "Error loading merge requests." +msgstr "" + msgid "Error loading project data. Please try again." msgstr "" @@ -2156,6 +2183,9 @@ msgstr "" msgid "Format" msgstr "" +msgid "Found errors in your .gitlab-ci.yml:" +msgstr "" + msgid "From %{provider_title}" msgstr "" @@ -2350,6 +2380,9 @@ msgstr "" msgid "IDE|Go back" msgstr "" +msgid "IDE|Open in file view" +msgstr "" + msgid "IDE|Review" msgstr "" @@ -2476,6 +2509,9 @@ msgstr "" msgid "Label" msgstr "" +msgid "Label actions dropdown" +msgstr "" + msgid "LabelSelect|%{firstLabelName} +%{remainingLabelCount} more" msgstr "" @@ -2491,6 +2527,9 @@ msgstr "" msgid "Labels can be applied to issues and merge requests to categorize them." msgstr "" +msgid "Labels can be applied to issues and merge requests." +msgstr "" + msgid "Labels|<span>Promote label</span> %{labelTitle} <span>to Group Label?</span>" msgstr "" @@ -2801,7 +2840,10 @@ msgstr "" msgid "No files found." msgstr "" -msgid "No labels created yet." +msgid "No merge requests found" +msgstr "" + +msgid "No messages were logged" msgstr "" msgid "No repository" @@ -2927,6 +2969,9 @@ msgstr "" msgid "Only project members can comment." msgstr "" +msgid "Open in Xcode" +msgstr "" + msgid "OpenedNDaysAgo|Opened" msgstr "" @@ -2939,6 +2984,9 @@ msgstr "" msgid "Options" msgstr "" +msgid "Other Labels" +msgstr "" + msgid "Otherwise it is recommended you start with one of the options below." msgstr "" @@ -2984,9 +3032,6 @@ msgstr "" msgid "Performance optimization" msgstr "" -msgid "Permalink" -msgstr "" - msgid "Permissions" msgstr "" @@ -3164,6 +3209,21 @@ msgstr "" msgid "Preferences" msgstr "" +msgid "Preferences|Navigation theme" +msgstr "" + +msgid "Prioritize" +msgstr "" + +msgid "Prioritize label" +msgstr "" + +msgid "Prioritized Labels" +msgstr "" + +msgid "Prioritized label" +msgstr "" + msgid "Private - Project access must be granted explicitly to each user." msgstr "" @@ -3389,10 +3449,10 @@ msgstr "" msgid "Promote these project milestones into a group milestone." msgstr "" -msgid "Promote to Group Label" +msgid "Promote to Group Milestone" msgstr "" -msgid "Promote to Group Milestone" +msgid "Promote to group label" msgstr "" msgid "Protip:" @@ -3416,9 +3476,6 @@ msgstr "" msgid "Quick actions can be used in the issues description and comment boxes." msgstr "" -msgid "Raw" -msgstr "" - msgid "Read more" msgstr "" @@ -3479,6 +3536,9 @@ msgstr "" msgid "Remove avatar" msgstr "" +msgid "Remove priority" +msgstr "" + msgid "Remove project" msgstr "" @@ -3586,6 +3646,12 @@ msgstr "" msgid "Scheduling Pipelines" msgstr "" +msgid "Scroll to bottom" +msgstr "" + +msgid "Scroll to top" +msgstr "" + msgid "Search" msgstr "" @@ -3601,6 +3667,9 @@ msgstr "" msgid "Search for projects, issues, etc." msgstr "" +msgid "Search merge requests" +msgstr "" + msgid "Search milestones" msgstr "" @@ -3709,6 +3778,9 @@ msgstr "" msgid "Show command" msgstr "" +msgid "Show complete raw log" +msgstr "" + msgid "Show parent pages" msgstr "" @@ -3744,9 +3816,6 @@ msgstr "" msgid "Something went wrong when toggling the button" msgstr "" -msgid "Something went wrong while fetching the latest pipeline status." -msgstr "" - msgid "Something went wrong while fetching the projects." msgstr "" @@ -3870,6 +3939,9 @@ msgstr "" msgid "Specify the following URL during the Runner setup:" msgstr "" +msgid "Squash commits" +msgstr "" + msgid "Stage all" msgstr "" @@ -3882,6 +3954,9 @@ msgstr "" msgid "Staged %{type}" msgstr "" +msgid "Star a label to make it a priority label. Order the prioritized labels to change their relative priority, by dragging." +msgstr "" + msgid "StarProject|Star" msgstr "" @@ -3921,6 +3996,15 @@ msgstr "" msgid "Subgroups" msgstr "" +msgid "Subscribe" +msgstr "" + +msgid "Subscribe at group level" +msgstr "" + +msgid "Subscribe at project level" +msgstr "" + msgid "Switch branch/tag" msgstr "" @@ -4464,6 +4548,15 @@ msgstr "" msgid "Unstar" msgstr "" +msgid "Unsubscribe" +msgstr "" + +msgid "Unsubscribe at group level" +msgstr "" + +msgid "Unsubscribe at project level" +msgstr "" + msgid "Unverified" msgstr "" @@ -4527,9 +4620,15 @@ msgstr "" msgid "View group labels" msgstr "" +msgid "View jobs" +msgstr "" + msgid "View labels" msgstr "" +msgid "View log" +msgstr "" + msgid "View open merge request" msgstr "" @@ -4740,6 +4839,9 @@ msgstr "" msgid "You can also star a label to make it a priority label." msgstr "" +msgid "You can also test your .gitlab-ci.yml in the %{linkStart}Lint%{linkEnd}" +msgstr "" + msgid "You can easily install a Runner on a Kubernetes cluster. %{link_to_help_page}" msgstr "" @@ -4758,9 +4860,15 @@ msgstr "" msgid "You cannot write to this read-only GitLab instance." msgstr "" +msgid "You do not have any assigned merge requests" +msgstr "" + msgid "You have no permissions" msgstr "" +msgid "You have not created any merge requests" +msgstr "" + msgid "You have reached your project limit" msgstr "" @@ -5093,3 +5201,8 @@ msgstr "" msgid "with %{additions} additions, %{deletions} deletions." msgstr "" + +msgid "within %d minute " +msgid_plural "within %d minutes " +msgstr[0] "" +msgstr[1] "" @@ -12,7 +12,11 @@ module QA autoload :Browser, 'qa/runtime/browser' autoload :Env, 'qa/runtime/env' autoload :Address, 'qa/runtime/address' - autoload :API, 'qa/runtime/api' + + module API + autoload :Client, 'qa/runtime/api/client' + autoload :Request, 'qa/runtime/api/request' + end module Key autoload :Base, 'qa/runtime/key/base' diff --git a/qa/qa/page/project/settings/ci_cd.rb b/qa/qa/page/project/settings/ci_cd.rb index dfb71e0a9f0..d5da9ea0099 100644 --- a/qa/qa/page/project/settings/ci_cd.rb +++ b/qa/qa/page/project/settings/ci_cd.rb @@ -6,7 +6,7 @@ module QA # rubocop:disable Naming/FileName include Common view 'app/views/projects/settings/ci_cd/show.html.haml' do - element :runners_settings, 'Runners settings' + element :runners_settings, 'Runners' element :secret_variables, 'Variables' element :auto_devops_section, 'Auto DevOps' end @@ -18,7 +18,7 @@ module QA # rubocop:disable Naming/FileName end def expand_runners_settings(&block) - expand_section('Runners settings') do + expand_section('Runners') do Settings::Runners.perform(&block) end end diff --git a/qa/qa/page/project/settings/main.rb b/qa/qa/page/project/settings/main.rb index 5d743f4c9c8..e3faa76b966 100644 --- a/qa/qa/page/project/settings/main.rb +++ b/qa/qa/page/project/settings/main.rb @@ -6,7 +6,7 @@ module QA include Common view 'app/views/projects/edit.html.haml' do - element :advanced_settings_section, 'Advanced settings' + element :advanced_settings_section, 'Advanced' end def expand_advanced_settings(&block) diff --git a/qa/qa/page/project/settings/merge_request.rb b/qa/qa/page/project/settings/merge_request.rb index a88cd661016..06d4937a4c8 100644 --- a/qa/qa/page/project/settings/merge_request.rb +++ b/qa/qa/page/project/settings/merge_request.rb @@ -10,12 +10,12 @@ module QA end view 'app/views/projects/edit.html.haml' do - element :merge_request_settings, 'Merge request settings' + element :merge_request_settings, 'Merge request' element :save_merge_request_changes end def enable_ff_only - expand_section('Merge request settings') do + expand_section('Merge request') do click_element :radio_button_merge_ff click_element :save_merge_request_changes end diff --git a/qa/qa/runtime/api.rb b/qa/qa/runtime/api.rb deleted file mode 100644 index e2a096b971d..00000000000 --- a/qa/qa/runtime/api.rb +++ /dev/null @@ -1,82 +0,0 @@ -require 'airborne' - -module QA - module Runtime - module API - class Client - attr_reader :address - - def initialize(address = :gitlab) - @address = address - end - - def personal_access_token - @personal_access_token ||= get_personal_access_token - end - - def get_personal_access_token - # you can set the environment variable PERSONAL_ACCESS_TOKEN - # to use a specific access token rather than create one from the UI - if Runtime::Env.personal_access_token - Runtime::Env.personal_access_token - else - create_personal_access_token - end - end - - private - - def create_personal_access_token - Runtime::Browser.visit(@address, Page::Main::Login) do - Page::Main::Login.act { sign_in_using_credentials } - Factory::Resource::PersonalAccessToken.fabricate!.access_token - end - end - end - - class Request - API_VERSION = 'v4'.freeze - - def initialize(api_client, path, personal_access_token: nil) - personal_access_token ||= api_client.personal_access_token - request_path = request_path(path, personal_access_token: personal_access_token) - @session_address = Runtime::Address.new(api_client.address, request_path) - end - - def url - @session_address.address - end - - # Prepend a request path with the path to the API - # - # path - Path to append - # - # Examples - # - # >> request_path('/issues') - # => "/api/v4/issues" - # - # >> request_path('/issues', personal_access_token: 'sometoken) - # => "/api/v4/issues?private_token=..." - # - # Returns the relative path to the requested API resource - def request_path(path, version: API_VERSION, personal_access_token: nil, oauth_access_token: nil) - full_path = File.join('/api', version, path) - - if oauth_access_token - query_string = "access_token=#{oauth_access_token}" - elsif personal_access_token - query_string = "private_token=#{personal_access_token}" - end - - if query_string - full_path << (path.include?('?') ? '&' : '?') - full_path << query_string - end - - full_path - end - end - end - end -end diff --git a/qa/qa/runtime/api/client.rb b/qa/qa/runtime/api/client.rb new file mode 100644 index 00000000000..02015e23ad8 --- /dev/null +++ b/qa/qa/runtime/api/client.rb @@ -0,0 +1,39 @@ +require 'airborne' + +module QA + module Runtime + module API + class Client + attr_reader :address + + def initialize(address = :gitlab, personal_access_token: nil) + @address = address + @personal_access_token = personal_access_token + end + + def personal_access_token + @personal_access_token ||= get_personal_access_token + end + + def get_personal_access_token + # you can set the environment variable PERSONAL_ACCESS_TOKEN + # to use a specific access token rather than create one from the UI + if Runtime::Env.personal_access_token + Runtime::Env.personal_access_token + else + create_personal_access_token + end + end + + private + + def create_personal_access_token + Runtime::Browser.visit(@address, Page::Main::Login) do + Page::Main::Login.act { sign_in_using_credentials } + Factory::Resource::PersonalAccessToken.fabricate!.access_token + end + end + end + end + end +end diff --git a/qa/qa/runtime/api/request.rb b/qa/qa/runtime/api/request.rb new file mode 100644 index 00000000000..c33ada0de7a --- /dev/null +++ b/qa/qa/runtime/api/request.rb @@ -0,0 +1,43 @@ +module QA + module Runtime + module API + class Request + API_VERSION = 'v4'.freeze + + def initialize(api_client, path, **query_string) + query_string[:private_token] ||= api_client.personal_access_token unless query_string[:oauth_access_token] + request_path = request_path(path, **query_string) + @session_address = Runtime::Address.new(api_client.address, request_path) + end + + def url + @session_address.address + end + + # Prepend a request path with the path to the API + # + # path - Path to append + # + # Examples + # + # >> request_path('/issues') + # => "/api/v4/issues" + # + # >> request_path('/issues', private_token: 'sometoken) + # => "/api/v4/issues?private_token=..." + # + # Returns the relative path to the requested API resource + def request_path(path, version: API_VERSION, **query_string) + full_path = File.join('/api', version, path) + + if query_string.any? + full_path << (path.include?('?') ? '&' : '?') + full_path << query_string.map { |k, v| "#{k}=#{CGI.escape(v)}" }.join('&') + end + + full_path + end + end + end + end +end diff --git a/qa/qa/specs/features/api/basics_spec.rb b/qa/qa/specs/features/api/basics_spec.rb new file mode 100644 index 00000000000..1d7f9d6a03c --- /dev/null +++ b/qa/qa/specs/features/api/basics_spec.rb @@ -0,0 +1,61 @@ +require 'securerandom' + +module QA + feature 'API basics', :core do + before(:context) do + @api_client = Runtime::API::Client.new(:gitlab) + end + + let(:project_name) { "api-basics-#{SecureRandom.hex(8)}" } + let(:sanitized_project_path) { CGI.escape("#{Runtime::User.name}/#{project_name}") } + + scenario 'user creates a project with a file and deletes them afterwards' do + create_project_request = Runtime::API::Request.new(@api_client, '/projects') + post create_project_request.url, path: project_name, name: project_name + + expect_status(201) + expect(json_body).to match( + a_hash_including(name: project_name, path: project_name) + ) + + create_file_request = Runtime::API::Request.new(@api_client, "/projects/#{sanitized_project_path}/repository/files/README.md") + post create_file_request.url, branch: 'master', content: 'Hello world', commit_message: 'Add README.md' + + expect_status(201) + expect(json_body).to match( + a_hash_including(branch: 'master', file_path: 'README.md') + ) + + get_file_request = Runtime::API::Request.new(@api_client, "/projects/#{sanitized_project_path}/repository/files/README.md", ref: 'master') + get get_file_request.url + + expect_status(200) + expect(json_body).to match( + a_hash_including( + ref: 'master', + file_path: 'README.md', file_name: 'README.md', + encoding: 'base64', content: 'SGVsbG8gd29ybGQ=' + ) + ) + + delete_file_request = Runtime::API::Request.new(@api_client, "/projects/#{sanitized_project_path}/repository/files/README.md", branch: 'master', commit_message: 'Remove README.md') + delete delete_file_request.url + + expect_status(204) + + get_tree_request = Runtime::API::Request.new(@api_client, "/projects/#{sanitized_project_path}/repository/tree") + get get_tree_request.url + + expect_status(200) + expect(json_body).to eq([]) + + delete_project_request = Runtime::API::Request.new(@api_client, "/projects/#{sanitized_project_path}") + delete delete_project_request.url + + expect_status(202) + expect(json_body).to match( + a_hash_including(message: '202 Accepted') + ) + end + end +end diff --git a/qa/qa/specs/features/api/users_spec.rb b/qa/qa/specs/features/api/users_spec.rb index 38f4c497183..0aecf89e1b7 100644 --- a/qa/qa/specs/features/api/users_spec.rb +++ b/qa/qa/specs/features/api/users_spec.rb @@ -31,7 +31,7 @@ module QA end scenario 'submit request with an invalid token' do - request = Runtime::API::Request.new(@api_client, '/users', personal_access_token: 'invalid') + request = Runtime::API::Request.new(@api_client, '/users', private_token: 'invalid') get request.url diff --git a/qa/spec/runtime/api_client_spec.rb b/qa/spec/runtime/api/client_spec.rb index d497d8839b8..d497d8839b8 100644 --- a/qa/spec/runtime/api_client_spec.rb +++ b/qa/spec/runtime/api/client_spec.rb diff --git a/qa/spec/runtime/api/request_spec.rb b/qa/spec/runtime/api/request_spec.rb new file mode 100644 index 00000000000..80e3149f32d --- /dev/null +++ b/qa/spec/runtime/api/request_spec.rb @@ -0,0 +1,44 @@ +describe QA::Runtime::API::Request do + include Support::StubENV + + before do + stub_env('PERSONAL_ACCESS_TOKEN', 'a_token') + end + + let(:client) { QA::Runtime::API::Client.new('http://example.com') } + let(:request) { described_class.new(client, '/users') } + + describe '#url' do + it 'returns the full api request url' do + expect(request.url).to eq 'http://example.com/api/v4/users?private_token=a_token' + end + end + + describe '#request_path' do + it 'prepends the api path' do + expect(request.request_path('/users')).to eq '/api/v4/users' + end + + it 'adds the personal access token' do + expect(request.request_path('/users', private_token: 'token')) + .to eq '/api/v4/users?private_token=token' + end + + it 'adds the oauth access token' do + expect(request.request_path('/users', access_token: 'otoken')) + .to eq '/api/v4/users?access_token=otoken' + end + + it 'respects query parameters' do + expect(request.request_path('/users?page=1')).to eq '/api/v4/users?page=1' + expect(request.request_path('/users', private_token: 'token', foo: 'bar/baz')) + .to eq '/api/v4/users?private_token=token&foo=bar%2Fbaz' + expect(request.request_path('/users?page=1', private_token: 'token', foo: 'bar/baz')) + .to eq '/api/v4/users?page=1&private_token=token&foo=bar%2Fbaz' + end + + it 'uses a different api version' do + expect(request.request_path('/users', version: 'other_version')).to eq '/api/other_version/users' + end + end +end diff --git a/qa/spec/runtime/api_request_spec.rb b/qa/spec/runtime/api_request_spec.rb index 8cf4b040c24..e69de29bb2d 100644 --- a/qa/spec/runtime/api_request_spec.rb +++ b/qa/spec/runtime/api_request_spec.rb @@ -1,42 +0,0 @@ -describe QA::Runtime::API::Request do - include Support::StubENV - - before do - stub_env('PERSONAL_ACCESS_TOKEN', 'a_token') - end - - let(:client) { QA::Runtime::API::Client.new('http://example.com') } - let(:request) { described_class.new(client, '/users') } - - describe '#url' do - it 'returns the full api request url' do - expect(request.url).to eq 'http://example.com/api/v4/users?private_token=a_token' - end - end - - describe '#request_path' do - it 'prepends the api path' do - expect(request.request_path('/users')).to eq '/api/v4/users' - end - - it 'adds the personal access token' do - expect(request.request_path('/users', personal_access_token: 'token')) - .to eq '/api/v4/users?private_token=token' - end - - it 'adds the oauth access token' do - expect(request.request_path('/users', oauth_access_token: 'otoken')) - .to eq '/api/v4/users?access_token=otoken' - end - - it 'respects query parameters' do - expect(request.request_path('/users?page=1')).to eq '/api/v4/users?page=1' - expect(request.request_path('/users?page=1', personal_access_token: 'token')) - .to eq '/api/v4/users?page=1&private_token=token' - end - - it 'uses a different api version' do - expect(request.request_path('/users', version: 'other_version')).to eq '/api/other_version/users' - end - end -end diff --git a/spec/lib/gitlab/import_export/safe_model_attributes.yml b/spec/lib/gitlab/import_export/safe_model_attributes.yml index 4354dca25ea..0a1e3eb83d3 100644 --- a/spec/lib/gitlab/import_export/safe_model_attributes.yml +++ b/spec/lib/gitlab/import_export/safe_model_attributes.yml @@ -170,7 +170,7 @@ MergeRequest: - last_edited_by_id - head_pipeline_id - discussion_locked -- allow_collaboration +- allow_maintainer_to_push MergeRequestDiff: - id - state diff --git a/spec/services/merge_requests/create_from_issue_service_spec.rb b/spec/services/merge_requests/create_from_issue_service_spec.rb index 38d84cf0ceb..b1882df732d 100644 --- a/spec/services/merge_requests/create_from_issue_service_spec.rb +++ b/spec/services/merge_requests/create_from_issue_service_spec.rb @@ -125,9 +125,14 @@ describe MergeRequests::CreateFromIssueService do end context 'when ref branch does not exist' do - it 'does not create a merge request' do - expect { described_class.new(project, user, issue_iid: issue.iid, ref: 'nobr').execute } - .not_to change { project.merge_requests.count } + subject { described_class.new(project, user, issue_iid: issue.iid, ref: 'no-such-branch').execute } + + it 'creates a merge request' do + expect { subject }.to change(project.merge_requests, :count).by(1) + end + + it 'sets the merge request target branch to the project default branch' do + expect(subject[:merge_request].target_branch).to eq(project.default_branch) end end end diff --git a/spec/services/notification_recipient_service_spec.rb b/spec/services/notification_recipient_service_spec.rb index 340d4585e0c..7f536ce4e68 100644 --- a/spec/services/notification_recipient_service_spec.rb +++ b/spec/services/notification_recipient_service_spec.rb @@ -19,8 +19,8 @@ describe NotificationRecipientService do end end - it 'avoids N+1 queries' do - create_watcher + it 'avoids N+1 queries', :request_store do + Gitlab::GitalyClient.allow_n_plus_1_calls { create_watcher } service.build_new_note_recipients(note) @@ -28,7 +28,7 @@ describe NotificationRecipientService do service.build_new_note_recipients(note) end - create_watcher + Gitlab::GitalyClient.allow_n_plus_1_calls { create_watcher } expect { service.build_new_note_recipients(note) }.not_to exceed_query_limit(control_count) end diff --git a/spec/services/projects/housekeeping_service_spec.rb b/spec/services/projects/housekeeping_service_spec.rb index b7b5de07380..1cf373d1d72 100644 --- a/spec/services/projects/housekeeping_service_spec.rb +++ b/spec/services/projects/housekeeping_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' describe Projects::HousekeepingService do subject { described_class.new(project) } - let(:project) { create(:project, :repository) } + set(:project) { create(:project, :repository) } before do project.reset_pushes_since_gc @@ -16,12 +16,12 @@ describe Projects::HousekeepingService do it 'enqueues a sidekiq job' do expect(subject).to receive(:try_obtain_lease).and_return(:the_uuid) expect(subject).to receive(:lease_key).and_return(:the_lease_key) - expect(subject).to receive(:task).and_return(:the_task) - expect(GitGarbageCollectWorker).to receive(:perform_async).with(project.id, :the_task, :the_lease_key, :the_uuid) + expect(subject).to receive(:task).and_return(:incremental_repack) + expect(GitGarbageCollectWorker).to receive(:perform_async).with(project.id, :incremental_repack, :the_lease_key, :the_uuid).and_call_original - subject.execute - - expect(project.reload.pushes_since_gc).to eq(0) + Sidekiq::Testing.fake! do + expect { subject.execute }.to change(GitGarbageCollectWorker.jobs, :size).by(1) + end end it 'yields the block if given' do @@ -30,6 +30,16 @@ describe Projects::HousekeepingService do end.to yield_with_no_args end + it 'resets counter after execution' do + expect(subject).to receive(:try_obtain_lease).and_return(:the_uuid) + allow(subject).to receive(:gc_period).and_return(1) + project.increment_pushes_since_gc + + Sidekiq::Testing.inline! do + expect { subject.execute }.to change { project.pushes_since_gc }.to(0) + end + end + context 'when no lease can be obtained' do before do expect(subject).to receive(:try_obtain_lease).and_return(false) @@ -54,6 +64,30 @@ describe Projects::HousekeepingService do end.not_to yield_with_no_args end end + + context 'task type' do + it 'goes through all three housekeeping tasks, executing only the highest task when there is overlap' do + allow(subject).to receive(:try_obtain_lease).and_return(:the_uuid) + allow(subject).to receive(:lease_key).and_return(:the_lease_key) + + # At push 200 + expect(GitGarbageCollectWorker).to receive(:perform_async).with(project.id, :gc, :the_lease_key, :the_uuid) + .exactly(1).times + # At push 50, 100, 150 + expect(GitGarbageCollectWorker).to receive(:perform_async).with(project.id, :full_repack, :the_lease_key, :the_uuid) + .exactly(3).times + # At push 10, 20, ... (except those above) + expect(GitGarbageCollectWorker).to receive(:perform_async).with(project.id, :incremental_repack, :the_lease_key, :the_uuid) + .exactly(16).times + + 201.times do + subject.increment! + subject.execute if subject.needed? + end + + expect(project.pushes_since_gc).to eq(1) + end + end end describe '#needed?' do @@ -69,31 +103,7 @@ describe Projects::HousekeepingService do describe '#increment!' do it 'increments the pushes_since_gc counter' do - expect do - subject.increment! - end.to change { project.pushes_since_gc }.from(0).to(1) + expect { subject.increment! }.to change { project.pushes_since_gc }.by(1) end end - - it 'goes through all three housekeeping tasks, executing only the highest task when there is overlap' do - allow(subject).to receive(:try_obtain_lease).and_return(:the_uuid) - allow(subject).to receive(:lease_key).and_return(:the_lease_key) - - # At push 200 - expect(GitGarbageCollectWorker).to receive(:perform_async).with(project.id, :gc, :the_lease_key, :the_uuid) - .exactly(1).times - # At push 50, 100, 150 - expect(GitGarbageCollectWorker).to receive(:perform_async).with(project.id, :full_repack, :the_lease_key, :the_uuid) - .exactly(3).times - # At push 10, 20, ... (except those above) - expect(GitGarbageCollectWorker).to receive(:perform_async).with(project.id, :incremental_repack, :the_lease_key, :the_uuid) - .exactly(16).times - - 201.times do - subject.increment! - subject.execute if subject.needed? - end - - expect(project.pushes_since_gc).to eq(1) - end end diff --git a/vendor/licenses.csv b/vendor/licenses.csv index 07861631a07..dada0da0b31 100644 --- a/vendor/licenses.csv +++ b/vendor/licenses.csv @@ -1,20 +1,41 @@ -@babel/code-frame,7.0.0-beta.32,MIT -@babel/helper-function-name,7.0.0-beta.32,MIT -@babel/helper-get-function-arity,7.0.0-beta.32,MIT -@babel/template,7.0.0-beta.32,MIT -@babel/traverse,7.0.0-beta.32,MIT -@babel/types,7.0.0-beta.32,MIT -@gitlab-org/gitlab-svgs,1.20.0,SEE LICENSE IN LICENSE -@mrmlnc/readdir-enhanced,2.2.1,MIT +@babel/code-frame,7.0.0-beta.44,MIT +@babel/generator,7.0.0-beta.44,MIT +@babel/helper-function-name,7.0.0-beta.44,MIT +@babel/helper-get-function-arity,7.0.0-beta.44,MIT +@babel/helper-split-export-declaration,7.0.0-beta.44,MIT +@babel/highlight,7.0.0-beta.44,MIT +@babel/template,7.0.0-beta.44,MIT +@babel/traverse,7.0.0-beta.44,MIT +@babel/types,7.0.0-beta.44,MIT +@gitlab-org/gitlab-svgs,1.23.0,SEE LICENSE IN LICENSE @sindresorhus/is,0.7.0,MIT @types/jquery,2.0.48,MIT +@vue/component-compiler-utils,1.2.1,MIT +@webassemblyjs/ast,1.5.10,MIT +@webassemblyjs/floating-point-hex-parser,1.5.10,MIT +@webassemblyjs/helper-api-error,1.5.10,MIT +@webassemblyjs/helper-buffer,1.5.10,MIT +@webassemblyjs/helper-code-frame,1.5.10,MIT +@webassemblyjs/helper-fsm,1.5.10,ISC +@webassemblyjs/helper-module-context,1.5.10,MIT +@webassemblyjs/helper-wasm-bytecode,1.5.10,MIT +@webassemblyjs/helper-wasm-section,1.5.10,MIT +@webassemblyjs/ieee754,1.5.10,Unknown +@webassemblyjs/leb128,1.5.10,Apache 2.0 +@webassemblyjs/utf8,1.5.10,MIT +@webassemblyjs/wasm-edit,1.5.10,MIT +@webassemblyjs/wasm-gen,1.5.10,MIT +@webassemblyjs/wasm-opt,1.5.10,MIT +@webassemblyjs/wasm-parser,1.5.10,MIT +@webassemblyjs/wast-parser,1.5.10,MIT +@webassemblyjs/wast-printer,1.5.10,MIT RedCloth,4.3.2,MIT abbrev,1.0.9,ISC abbrev,1.1.1,ISC accepts,1.3.4,MIT ace-rails-ap,4.1.2,MIT acorn,3.3.0,MIT -acorn,5.4.1,MIT +acorn,5.5.3,MIT acorn-dynamic-import,3.0.0,MIT acorn-jsx,3.0.1,MIT actionmailer,4.2.10,MIT @@ -33,7 +54,7 @@ agent-base,2.1.1,MIT ajv,4.11.8,MIT ajv,5.5.2,MIT ajv,6.1.1,MIT -ajv-keywords,1.5.1,MIT +ajv-keywords,2.1.1,MIT ajv-keywords,3.1.0,MIT akismet,2.0.0,MIT align-text,0.1.4,MIT @@ -42,15 +63,12 @@ alphanum-sort,1.0.2,MIT amdefine,1.0.1,BSD-3-Clause OR MIT amqplib,0.5.2,MIT ansi-align,2.0.0,ISC -ansi-escapes,1.4.0,MIT ansi-escapes,3.0.0,MIT ansi-html,0.0.7,Apache 2.0 ansi-regex,2.1.1,MIT ansi-regex,3.0.0,MIT -ansi-styles,1.0.0,MIT ansi-styles,2.2.1,MIT ansi-styles,3.2.1,MIT -any-observable,0.2.0,MIT anymatch,1.3.2,ISC anymatch,2.0.0,ISC append-transform,0.4.0,MIT @@ -62,7 +80,6 @@ arr-diff,2.0.0,MIT arr-diff,4.0.0,MIT arr-flatten,1.1.0,MIT arr-union,3.1.0,MIT -array-differ,1.0.0,MIT array-find,1.0.0,MIT array-find-index,1.0.2,MIT array-flatten,1.1.1,MIT @@ -85,12 +102,9 @@ assert-plus,0.2.0,MIT assert-plus,1.0.0,MIT asset_sync,2.4.0,MIT assign-symbols,1.0.0,MIT -ast-types,0.10.1,MIT -ast-types,0.11.1,MIT ast-types,0.11.3,MIT async,1.5.2,MIT async,2.1.5,MIT -async,2.4.1,MIT async,2.6.0,MIT async-each,1.0.1,MIT async-limiter,1.0.0,MIT @@ -100,7 +114,6 @@ atomic,1.1.99,Apache 2.0 attr_encrypted,3.1.0,MIT attr_required,1.0.0,MIT autoprefixer,6.7.7,MIT -autoprefixer-rails,6.2.3,MIT autosize,4.0.0,MIT aws-sign2,0.6.0,Apache 2.0 aws-sign2,0.7.0,Apache 2.0 @@ -108,10 +121,10 @@ aws4,1.6.0,MIT axiom-types,0.1.1,MIT axios,0.15.3,MIT axios,0.17.1,MIT -axios-mock-adapter,1.10.0,MIT +axios-mock-adapter,1.15.0,MIT babel-code-frame,6.26.0,MIT babel-core,6.26.3,MIT -babel-eslint,8.0.2,MIT +babel-eslint,8.2.3,MIT babel-generator,6.26.0,MIT babel-helper-bindify-decorators,6.24.1,MIT babel-helper-builder-binary-assignment-operator-visitor,6.24.1,MIT @@ -134,18 +147,14 @@ babel-plugin-istanbul,4.1.6,New BSD babel-plugin-rewire,1.1.0,ISC babel-plugin-syntax-async-functions,6.13.0,MIT babel-plugin-syntax-async-generators,6.13.0,MIT -babel-plugin-syntax-class-constructor-call,6.18.0,MIT babel-plugin-syntax-class-properties,6.13.0,MIT babel-plugin-syntax-decorators,6.13.0,MIT babel-plugin-syntax-dynamic-import,6.18.0,MIT babel-plugin-syntax-exponentiation-operator,6.13.0,MIT -babel-plugin-syntax-export-extensions,6.13.0,MIT -babel-plugin-syntax-flow,6.18.0,MIT babel-plugin-syntax-object-rest-spread,6.13.0,MIT babel-plugin-syntax-trailing-function-commas,6.22.0,MIT babel-plugin-transform-async-generator-functions,6.24.1,MIT babel-plugin-transform-async-to-generator,6.24.1,MIT -babel-plugin-transform-class-constructor-call,6.24.1,MIT babel-plugin-transform-class-properties,6.24.1,MIT babel-plugin-transform-decorators,6.24.1,MIT babel-plugin-transform-define,1.3.0,MIT @@ -172,8 +181,6 @@ babel-plugin-transform-es2015-template-literals,6.22.0,MIT babel-plugin-transform-es2015-typeof-symbol,6.23.0,MIT babel-plugin-transform-es2015-unicode-regex,6.24.1,MIT babel-plugin-transform-exponentiation-operator,6.24.1,MIT -babel-plugin-transform-export-extensions,6.22.0,MIT -babel-plugin-transform-flow-strip-types,6.22.0,MIT babel-plugin-transform-object-rest-spread,6.23.0,MIT babel-plugin-transform-regenerator,6.26.0,MIT babel-plugin-transform-strict-mode,6.24.1,MIT @@ -181,7 +188,6 @@ babel-preset-es2015,6.24.1,MIT babel-preset-es2016,6.24.1,MIT babel-preset-es2017,6.24.1,MIT babel-preset-latest,6.24.1,MIT -babel-preset-stage-1,6.24.1,MIT babel-preset-stage-2,6.24.1,MIT babel-preset-stage-3,6.24.1,MIT babel-register,6.26.0,MIT @@ -191,7 +197,6 @@ babel-traverse,6.26.0,MIT babel-types,6.26.0,MIT babosa,1.0.2,MIT babylon,6.18.0,MIT -babylon,7.0.0-beta.32,MIT babylon,7.0.0-beta.44,MIT backo2,1.0.2,MIT balanced-match,0.4.2,MIT @@ -210,9 +215,8 @@ better-assert,1.0.2,MIT bfj-node4,5.2.1,MIT big.js,3.1.3,MIT binary-extensions,1.11.0,MIT -binaryextensions,2.1.1,MIT bindata,2.4.3,ruby -bitsyntax,0.0.4,UNKNOWN +bitsyntax,0.0.4,Unknown bl,1.1.2,MIT blackst0ne-mermaid,7.1.0-fixed,MIT blob,0.0.4,MIT* @@ -224,7 +228,7 @@ bonjour,3.5.0,MIT boom,2.10.1,New BSD boom,4.3.1,New BSD boom,5.2.0,New BSD -bootstrap-sass,3.3.6,MIT +bootstrap,4.1.1,MIT bootstrap_form,2.7.0,MIT boxen,1.3.0,MIT brace-expansion,1.1.11,MIT @@ -238,9 +242,10 @@ browserify-cipher,1.0.0,MIT browserify-des,1.0.0,MIT browserify-rsa,4.0.1,MIT browserify-sign,4.0.4,ISC -browserify-zlib,0.1.4,MIT +browserify-zlib,0.2.0,MIT browserslist,1.7.7,MIT buffer,4.9.1,MIT +buffer-from,1.0.0,MIT buffer-indexof,1.1.0,MIT buffer-more-ints,0.0.2,MIT buffer-xor,1.0.3,MIT @@ -252,8 +257,8 @@ bytes,2.5.0,MIT bytes,3.0.0,MIT cacache,10.0.4,ISC cache-base,1.0.1,MIT +cache-loader,1.2.2,MIT cacheable-request,2.1.4,MIT -call-me-maybe,1.0.1,MIT caller-path,0.1.0,MIT callsite,1.0.0,MIT* callsites,0.2.0,MIT @@ -269,9 +274,7 @@ caseless,0.11.0,Apache 2.0 caseless,0.12.0,Apache 2.0 cause,0.1,MIT center-align,0.1.3,MIT -chalk,0.4.0,MIT chalk,1.1.3,MIT -chalk,2.4.0,MIT chalk,2.4.1,MIT chardet,0.4.2,MIT charenc,0.0.2,New BSD @@ -293,23 +296,13 @@ clap,1.1.3,MIT class-utils,0.3.6,MIT classlist-polyfill,1.2.0,Unlicense cli-boxes,1.0.0,MIT -cli-cursor,1.0.2,MIT cli-cursor,2.1.0,MIT -cli-spinners,0.1.2,MIT -cli-table,0.3.1,MIT -cli-truncate,0.2.1,MIT cli-width,2.1.0,ISC clipboard,1.7.1,MIT cliui,2.1.0,ISC cliui,4.0.0,ISC -clone,1.0.2,MIT clone,1.0.3,MIT -clone,2.1.1,MIT -clone-buffer,1.0.0,MIT clone-response,1.0.2,MIT -clone-stats,0.0.1,MIT -clone-stats,1.0.0,MIT -cloneable-readable,1.0.0,MIT co,3.0.6,MIT co,4.6.0,MIT coa,1.0.1,MIT @@ -321,7 +314,6 @@ color-convert,1.9.1,MIT color-name,1.1.2,MIT color-string,0.3.0,MIT colormin,1.1.2,MIT -colors,1.0.3,MIT colors,1.1.2,MIT combine-lists,1.0.1,MIT combined-stream,1.0.6,MIT @@ -336,7 +328,7 @@ compressible,2.0.11,MIT compression,1.7.0,MIT compression-webpack-plugin,1.1.11,MIT concat-map,0.0.1,MIT -concat-stream,1.6.0,MIT +concat-stream,1.6.2,MIT concurrent-ruby-ext,1.0.5,MIT configstore,3.1.1,Simplified BSD connect,3.6.6,MIT @@ -344,7 +336,7 @@ connect-history-api-fallback,1.3.0,MIT connection_pool,2.2.1,MIT console-browserify,1.1.0,MIT console-control-strings,1.1.0,ISC -consolidate,0.14.5,MIT +consolidate,0.15.1,MIT constants-browserify,1.0.0,MIT contains-path,0.1.0,MIT content-disposition,0.5.2,MIT @@ -354,11 +346,9 @@ cookie,0.3.1,MIT cookie-signature,1.0.6,MIT copy-concurrently,1.0.5,ISC copy-descriptor,0.1.1,MIT -copy-webpack-plugin,4.5.1,MIT core-js,2.3.0,MIT core-js,2.5.3,MIT core-util-is,1.0.2,MIT -cosmiconfig,2.2.2,MIT crack,0.4.3,MIT crass,1.0.4,MIT create-ecdh,4.0.0,MIT @@ -384,8 +374,6 @@ csso,2.3.2,MIT currently-unhandled,0.4.1,MIT custom-event,1.0.1,MIT cyclist,0.2.2,MIT* -d,0.1.1,MIT -d,1.0.0,MIT d3,3.5.17,New BSD d3-array,1.2.1,New BSD d3-axis,1.0.8,New BSD @@ -405,16 +393,12 @@ d3-time,1.0.8,New BSD d3-time-format,2.1.1,New BSD d3-timer,1.0.7,New BSD d3-transition,1.1.1,New BSD -d3_rails,3.5.11,MIT dagre-d3-renderer,0.4.24,MIT dagre-layout,0.8.0,MIT -dargs,5.1.0,MIT dashdash,1.14.1,MIT data-uri-to-buffer,1.2.0,MIT -date-fns,1.29.0,MIT date-format,1.2.0,MIT date-now,0.1.4,MIT -dateformat,3.0.3,MIT de-indent,1.0.2,MIT debug,2.2.0,MIT debug,2.6.8,MIT @@ -429,7 +413,6 @@ decode-uri-component,0.2.0,MIT decompress-response,3.3.0,MIT deep-equal,1.0.1,MIT deep-extend,0.4.2,MIT -deep-extend,0.5.1,MIT deep-is,0.1.3,MIT default-require-extensions,1.0.0,MIT default_value_for,3.0.2,MIT @@ -448,7 +431,6 @@ depd,1.1.1,MIT des.js,1.0.0,MIT descendants_tracker,0.0.4,MIT destroy,1.0.4,MIT -detect-conflict,1.0.1,MIT detect-indent,4.0.0,MIT detect-libc,1.0.3,Apache 2.0 detect-node,2.0.3,ISC @@ -456,28 +438,26 @@ device_detector,1.0.0,LGPL devise,4.4.3,MIT devise-two-factor,3.0.0,MIT di,0.0.1,MIT -diff,3.4.0,New BSD diff,3.5.0,New BSD diff-lcs,1.3,"MIT,Artistic-2.0,GPL-2.0+" diffie-hellman,5.0.2,MIT diffy,3.1.0,MIT -dir-glob,2.0.0,MIT dns-equal,1.0.0,MIT dns-packet,1.2.2,MIT dns-txt,2.0.2,MIT doctrine,1.5.0,Simplified BSD -doctrine,2.0.0,Apache 2.0 +doctrine,2.1.0,Apache 2.0 document-register-element,1.3.0,MIT dom-serialize,2.2.1,MIT dom-serializer,0.1.0,MIT domain-browser,1.1.7,MIT -domain_name,0.5.20170404,"Simplified BSD,New BSD,Mozilla Public License 2.0" +domain_name,0.5.20180417,"Simplified BSD,New BSD,Mozilla Public License 2.0" domelementtype,1.1.3,Simplified BSD domelementtype,1.3.0,Simplified BSD domhandler,2.4.1,Simplified BSD domutils,1.6.2,Simplified BSD doorkeeper,4.3.2,MIT -doorkeeper-openid_connect,1.3.0,MIT +doorkeeper-openid_connect,1.4.0,MIT dot-prop,4.2.0,MIT double-ended-queue,2.1.0-0,MIT dropzone,4.2.0,MIT @@ -486,12 +466,10 @@ duplexer,0.1.1,MIT duplexer3,0.1.4,New BSD duplexify,3.5.3,MIT ecc-jsbn,0.1.1,MIT -editions,1.3.4,MIT +ed25519,1.2.4,MIT ee-first,1.1.1,MIT -ejs,2.5.7,Apache 2.0 ejs,2.5.9,Apache 2.0 electron-to-chromium,1.3.3,ISC -elegant-spinner,1.0.1,MIT elliptic,6.4.0,MIT email_reply_trimmer,0.1.6,MIT emoji-unicode-version,0.2.1,MIT @@ -506,43 +484,34 @@ enhanced-resolve,0.9.1,MIT enhanced-resolve,4.0.0,MIT ent,2.2.0,MIT entities,1.1.1,Simplified BSD -envinfo,4.4.2,MIT equalizer,0.0.11,MIT errno,0.1.4,MIT errno,0.1.7,MIT -error,7.0.2,MIT error-ex,1.3.0,MIT -error-ex,1.3.1,MIT erubis,2.7.0,MIT es-abstract,1.10.0,MIT es-to-primitive,1.1.1,MIT -es5-ext,0.10.24,MIT -es6-iterator,2.0.1,MIT -es6-map,0.1.5,MIT es6-promise,3.0.2,MIT -es6-set,0.1.5,MIT -es6-symbol,3.1.1,MIT -es6-weak-map,2.0.1,MIT escape-html,1.0.3,MIT escape-string-regexp,1.0.5,MIT escape_utils,1.1.1,MIT escodegen,1.8.1,Simplified BSD escodegen,1.9.0,Simplified BSD -escope,3.6.0,Simplified BSD -eslint,3.19.0,MIT -eslint-config-airbnb-base,10.0.1,MIT -eslint-import-resolver-node,0.2.3,MIT -eslint-import-resolver-webpack,0.8.3,MIT -eslint-module-utils,2.0.0,MIT -eslint-plugin-filenames,1.1.0,MIT -eslint-plugin-html,2.0.1,ISC -eslint-plugin-import,2.2.0,MIT +eslint,4.12.1,MIT +eslint-config-airbnb-base,12.1.0,MIT +eslint-import-resolver-node,0.3.2,MIT +eslint-import-resolver-webpack,0.10.0,MIT +eslint-module-utils,2.2.0,MIT +eslint-plugin-filenames,1.2.0,MIT +eslint-plugin-html,4.0.3,ISC +eslint-plugin-import,2.12.0,MIT eslint-plugin-jasmine,2.2.0,MIT -eslint-plugin-promise,3.5.0,ISC +eslint-plugin-promise,3.8.0,ISC eslint-plugin-vue,4.0.1,MIT +eslint-restricted-globals,0.1.1,MIT eslint-scope,3.7.1,Simplified BSD eslint-visitor-keys,1.0.0,Apache 2.0 -espree,3.5.2,Simplified BSD +espree,3.5.4,Simplified BSD esprima,2.7.3,Simplified BSD esprima,3.1.3,Simplified BSD esprima,4.0.0,Simplified BSD @@ -555,7 +524,6 @@ esutils,2.0.2,Simplified BSD et-orbi,1.0.3,MIT etag,1.8.1,MIT eve-raphael,0.5.0,Apache 2.0 -event-emitter,0.3.5,MIT event-stream,3.3.4,MIT eventemitter3,1.2.0,MIT events,1.1.1,MIT @@ -564,20 +532,17 @@ evp_bytestokey,1.0.3,MIT excon,0.62.0,MIT execa,0.7.0,MIT execjs,2.6.0,MIT -exit-hook,1.1.1,MIT expand-braces,0.1.2,MIT expand-brackets,0.1.5,MIT expand-brackets,2.1.4,MIT expand-range,0.1.1,MIT expand-range,1.8.2,MIT -expand-tilde,2.0.2,MIT exports-loader,0.7.0,MIT express,4.16.2,MIT expression_parser,0.9.0,MIT extend,3.0.1,MIT extend-shallow,2.0.1,MIT extend-shallow,3.0.2,MIT -external-editor,2.1.0,MIT external-editor,2.2.0,MIT extglob,0.3.2,MIT extglob,2.0.4,MIT @@ -587,7 +552,6 @@ faraday,0.12.2,MIT faraday_middleware,0.12.2,MIT faraday_middleware-multi_json,0.0.6,MIT fast-deep-equal,1.0.0,MIT -fast-glob,2.2.1,MIT fast-json-stable-stringify,2.0.0,MIT fast-levenshtein,2.0.6,MIT fast_blank,1.0.0,MIT @@ -596,7 +560,6 @@ fastparse,1.1.1,MIT faye-websocket,0.10.0,MIT faye-websocket,0.11.1,MIT ffi,1.9.18,New BSD -figures,1.7.0,MIT figures,2.0.0,MIT file-entry-cache,2.0.0,MIT file-loader,1.1.11,MIT @@ -608,16 +571,14 @@ fill-range,2.2.3,MIT fill-range,4.0.0,MIT finalhandler,1.1.0,MIT find-cache-dir,1.0.0,MIT -find-root,0.1.2,MIT +find-root,1.1.0,MIT find-up,1.1.2,MIT find-up,2.1.0,MIT -first-chunk-stream,2.0.0,MIT flat-cache,1.2.2,MIT flatten,1.0.2,MIT flipper,0.13.0,MIT flipper-active_record,0.13.0,MIT flipper-active_support_cache_store,0.13.0,MIT -flow-parser,0.66.0,MIT flowdock,0.7.1,MIT flush-write-stream,1.0.2,MIT fog-aliyun,0.2.0,MIT @@ -653,6 +614,7 @@ fstream,1.0.11,ISC fstream-ignore,1.0.5,ISC ftp,0.3.10,MIT function-bind,1.1.1,MIT +functional-red-black-tree,1.0.1,MIT fuzzaldrin-plus,0.5.0,MIT gauge,2.7.4,ISC gemnasium-gitlab-service,0.2.6,MIT @@ -668,11 +630,9 @@ get_process_mem,0.2.0,MIT getpass,0.1.7,MIT gettext_i18n_rails,1.8.0,MIT gettext_i18n_rails_js,1.3.0,MIT -gh-got,6.0.0,MIT -gitaly-proto,0.99.0,MIT +gitaly-proto,0.100.0,MIT github-linguist,5.3.3,MIT github-markup,1.7.0,MIT -github-username,4.1.0,MIT gitlab-flowdock-git-hook,1.0.1,MIT gitlab-gollum-lib,4.2.7.2,MIT gitlab-gollum-rugged_adapter,0.4.4,MIT @@ -680,41 +640,35 @@ gitlab-grit,2.8.2,MIT gitlab-markup,1.6.3,MIT gitlab_omniauth-ldap,2.0.4,MIT glob,5.0.15,ISC -glob,7.1.1,ISC glob,7.1.2,ISC -glob-all,3.1.0,MIT glob-base,0.3.0,MIT glob-parent,2.0.0,ISC glob-parent,3.1.0,ISC -glob-to-regexp,0.3.0,BSD global-dirs,0.1.1,MIT -global-modules,1.0.0,MIT -global-prefix,1.0.2,MIT +global-modules-path,2.1.0,Apache 2.0 globalid,0.4.1,MIT -globals,10.4.0,MIT +globals,11.5.0,MIT globals,9.18.0,MIT globby,5.0.0,MIT globby,6.1.0,MIT -globby,7.1.1,MIT -globby,8.0.1,MIT gollum-grit_adapter,1.0.1,MIT -gon,6.1.0,MIT +gon,6.2.0,MIT good-listener,1.2.2,MIT google-api-client,0.19.8,Apache 2.0 google-protobuf,3.5.1,New BSD googleapis-common-protos-types,1.0.1,Apache 2.0 googleauth,0.6.2,Apache 2.0 got,6.7.1,MIT -got,7.1.0,MIT got,8.3.0,MIT gpgme,2.0.13,LGPL-2.1+ graceful-fs,4.1.11,ISC -grape,1.0.2,MIT +grape,1.0.3,MIT grape-entity,0.7.1,MIT -grape-route-helpers,2.1.0,MIT +grape-path-helpers,1.0.4,MIT grape_logging,1.7.0,MIT +graphiql-rails,1.4.10,MIT graphlib,2.1.1,MIT -grouped-queue,0.3.3,MIT +graphql,1.8.1,MIT grpc,1.11.0,Apache 2.0 gzip-size,4.1.0,MIT hamlit,2.6.1,MIT @@ -728,10 +682,8 @@ har-validator,5.0.3,ISC has,1.0.1,MIT has-ansi,2.0.0,MIT has-binary2,1.0.2,MIT -has-color,0.1.7,MIT has-cors,1.1.0,MIT has-flag,1.0.0,MIT -has-flag,2.0.0,MIT has-flag,3.0.0,MIT has-symbol-support-x,1.3.0,MIT has-to-string-tag-x,1.3.0,MIT @@ -756,7 +708,6 @@ hmac-drbg,1.0.1,MIT hoek,2.16.3,New BSD hoek,4.2.1,New BSD home-or-tmp,2.0.0,MIT -homedir-polyfill,1.0.1,MIT hosted-git-info,2.2.0,ISC hpack.js,2.1.6,MIT html-comment-regex,1.1.1,MIT @@ -781,17 +732,19 @@ httparty,0.13.7,MIT httpclient,2.8.3,ruby httpntlm,1.6.1,MIT httpreq,0.4.24,MIT -https-browserify,0.0.1,MIT +https-browserify,1.0.0,MIT https-proxy-agent,1.0.0,MIT i18n,0.9.5,MIT +icalendar,2.4.1,ruby ice_nine,0.11.2,MIT iconv-lite,0.4.15,MIT iconv-lite,0.4.19,MIT icss-replace-symbols,1.1.0,ISC icss-utils,2.1.0,ISC +ieee754,1.1.11,New BSD ieee754,1.1.8,New BSD iferr,0.1.5,MIT -ignore,3.3.7,MIT +ignore,3.3.8,MIT ignore-by-default,1.0.1,ISC immediate,3.0.6,MIT import-lazy,2.1.0,MIT @@ -799,7 +752,6 @@ import-local,1.0.0,MIT imports-loader,0.8.0,MIT imurmurhash,0.1.4,MIT indent-string,2.1.0,MIT -indent-string,3.2.0,MIT indexes-of,1.0.1,MIT indexof,0.0.1,MIT* inflection,1.10.0,MIT @@ -809,11 +761,9 @@ influxdb,0.2.3,MIT inherits,2.0.1,ISC inherits,2.0.3,ISC ini,1.3.5,ISC -inquirer,0.12.0,MIT inquirer,3.3.0,MIT inquirer,5.2.0,MIT internal-ip,1.2.0,MIT -interpret,1.0.1,MIT interpret,1.1.0,MIT into-stream,3.1.0,MIT invariant,2.2.2,New BSD @@ -822,7 +772,6 @@ ip,1.0.1,MIT ip,1.1.5,MIT ipaddr.js,1.6.0,MIT ipaddress,0.8.3,MIT -is-absolute,0.2.6,MIT is-absolute-url,2.1.0,MIT is-accessor-descriptor,0.1.6,MIT is-accessor-descriptor,1.0.0,MIT @@ -836,7 +785,6 @@ is-data-descriptor,1.0.0,MIT is-date-object,1.0.1,MIT is-descriptor,0.1.6,MIT is-descriptor,1.0.2,MIT -is-directory,0.3.1,MIT is-dotfile,1.0.3,MIT is-equal-shallow,0.1.3,MIT is-extendable,0.1.1,MIT @@ -859,7 +807,6 @@ is-number,3.0.0,MIT is-number,4.0.0,MIT is-obj,1.0.1,MIT is-object,1.0.1,MIT -is-observable,0.2.0,MIT is-odd,2.0.0,MIT is-path-cwd,1.0.0,MIT is-path-in-cwd,1.0.0,MIT @@ -872,17 +819,13 @@ is-promise,2.1.0,MIT is-property,1.0.2,MIT is-redirect,1.0.0,MIT is-regex,1.0.4,MIT -is-relative,0.2.1,MIT is-resolvable,1.0.0,MIT is-retry-allowed,1.1.0,MIT -is-scoped,1.0.0,MIT is-stream,1.1.0,MIT is-svg,2.1.0,MIT is-symbol,1.0.1,MIT is-typedarray,1.0.0,MIT -is-unc-path,0.1.2,MIT is-utf8,0.2.1,MIT -is-windows,0.2.0,MIT is-windows,1.0.2,MIT is-wsl,1.1.0,MIT isarray,0.0.1,MIT @@ -899,11 +842,9 @@ istanbul-lib-coverage,1.1.1,New BSD istanbul-lib-coverage,1.2.0,New BSD istanbul-lib-hook,1.1.0,New BSD istanbul-lib-instrument,1.10.1,New BSD -istanbul-lib-instrument,1.9.1,New BSD istanbul-lib-report,1.1.2,New BSD istanbul-lib-source-maps,1.2.2,New BSD istanbul-reports,1.1.3,New BSD -istextorbinary,2.2.1,MIT isurl,1.0.0,MIT jasmine-core,2.9.0,MIT jasmine-jquery,2.1.1,MIT @@ -918,12 +859,10 @@ js-cookie,2.1.3,MIT js-tokens,3.0.2,MIT js-yaml,3.11.0,MIT js-yaml,3.7.0,MIT -js-yaml,3.9.1,MIT jsbn,0.1.1,MIT -jscodeshift,0.4.1,New BSD -jscodeshift,0.5.0,New BSD jsesc,0.5.0,MIT jsesc,1.3.0,MIT +jsesc,2.5.1,MIT json,1.8.6,ruby json-buffer,3.0.0,MIT json-jwt,1.9.2,MIT @@ -931,6 +870,7 @@ json-parse-better-errors,1.0.2,MIT json-schema,0.2.3,BSD json-schema-traverse,0.3.1,MIT json-stable-stringify,1.0.1,MIT +json-stable-stringify-without-jsonify,1.0.1,MIT json-stringify-safe,5.0.1,ISC json3,3.3.2,MIT json5,0.5.1,MIT @@ -959,62 +899,44 @@ kind-of,3.2.2,MIT kind-of,4.0.0,MIT kind-of,5.1.0,MIT kind-of,6.0.2,MIT -kubeclient,3.0.0,MIT +kubeclient,3.1.0,MIT latest-version,3.1.0,MIT lazy-cache,1.0.4,MIT lazy-cache,2.0.2,MIT lcid,1.0.0,MIT +leb,0.3.0,Apache 2.0 levn,0.3.0,MIT libbase64,0.1.0,MIT libmime,3.0.0,MIT libqp,1.1.0,MIT licensee,8.9.2,MIT lie,3.1.1,MIT -listr,0.13.0,MIT -listr-silent-renderer,1.1.1,MIT -listr-update-renderer,0.4.0,MIT -listr-verbose-renderer,0.4.1,MIT little-plugger,1.1.4,MIT load-json-file,1.1.0,MIT -load-json-file,4.0.0,MIT +load-json-file,2.0.0,MIT loader-runner,2.3.0,MIT loader-utils,1.1.0,MIT locale,2.1.2,"ruby,LGPLv3+" locate-path,2.0.0,MIT lodash,4.17.10,MIT lodash,4.17.4,MIT -lodash,4.17.5,MIT -lodash._baseget,3.7.2,MIT -lodash._topath,3.8.1,MIT -lodash.camelcase,4.1.1,MIT lodash.camelcase,4.3.0,MIT -lodash.capitalize,4.2.1,MIT lodash.clonedeep,4.5.0,MIT -lodash.cond,4.5.2,MIT -lodash.deburr,4.1.0,MIT -lodash.endswith,4.2.1,MIT lodash.escaperegexp,4.1.2,MIT -lodash.get,3.7.0,MIT -lodash.isarray,3.0.4,MIT -lodash.isfunction,3.0.9,MIT -lodash.isstring,4.0.1,MIT -lodash.kebabcase,4.0.1,MIT +lodash.kebabcase,4.1.1,MIT lodash.memoize,4.1.2,MIT lodash.mergewith,4.6.0,MIT -lodash.snakecase,4.0.1,MIT -lodash.startswith,4.2.1,MIT +lodash.snakecase,4.1.1,MIT lodash.uniq,4.5.0,MIT -lodash.words,4.2.0,MIT -log-symbols,1.0.2,MIT -log-symbols,2.1.0,MIT +lodash.upperfirst,4.3.1,MIT log-symbols,2.2.0,MIT -log-update,1.0.2,MIT log4js,2.5.3,Apache 2.0 logging,2.2.2,MIT loggly,1.1.1,MIT loglevel,1.4.1,MIT loglevelnext,1.0.3,MIT lograge,0.10.0,MIT +long,3.2.0,Apache 2.0 longest,1.0.1,MIT loofah,2.2.2,MIT loose-envify,1.3.1,MIT @@ -1022,17 +944,17 @@ loud-rejection,1.6.0,MIT lowercase-keys,1.0.0,MIT lru-cache,2.2.4,MIT lru-cache,2.6.5,ISC -lru-cache,4.1.1,ISC +lru-cache,4.1.3,ISC macaddress,0.2.8,MIT mail,2.7.0,MIT mail_room,0.9.1,MIT mailcomposer,4.0.1,MIT mailgun-js,0.7.15,MIT -make-dir,1.0.0,MIT make-dir,1.2.0,MIT +mamacro,0.0.3,MIT map-cache,0.2.2,MIT map-obj,1.0.1,MIT -map-stream,0.1.0,UNKNOWN +map-stream,0.1.0,Unknown map-visit,1.0.0,MIT marked,0.3.12,MIT match-at,0.1.1,MIT @@ -1040,24 +962,19 @@ math-expression-evaluator,1.2.16,MIT md5.js,1.3.4,MIT media-typer,0.3.0,MIT mem,1.1.0,MIT -mem-fs,1.1.3,MIT -mem-fs-editor,4.0.1,MIT memoist,0.16.0,MIT memory-fs,0.2.0,MIT memory-fs,0.4.1,MIT meow,3.7.0,MIT merge-descriptors,1.0.1,MIT -merge2,1.2.2,MIT +merge-source-map,1.1.0,MIT method_source,0.8.2,MIT methods,1.1.2,MIT micromatch,2.3.11,MIT micromatch,3.1.10,MIT -micromatch,3.1.6,MIT -micromatch,3.1.9,MIT miller-rabin,4.0.1,MIT mime,1.4.1,MIT mime,1.6.0,MIT -mime,2.2.0,MIT mime,2.3.1,MIT mime-db,1.33.0,MIT mime-types,2.1.18,MIT @@ -1066,6 +983,7 @@ mime-types-data,3.2016.0521,MIT mimemagic,0.3.0,MIT mimic-fn,1.1.0,MIT mimic-response,1.0.0,MIT +mini_magick,4.8.0,MIT mini_mime,1.0.0,MIT mini_portile2,2.3.0,MIT minimalistic-assert,1.0.0,ISC @@ -1073,13 +991,13 @@ minimalistic-crypto-utils,1.0.1,MIT minimatch,3.0.4,ISC minimist,0.0.10,MIT minimist,0.0.8,MIT -minimist,0.1.0,MIT minimist,1.2.0,MIT mississippi,2.0.0,Simplified BSD mixin-deep,1.3.1,MIT mkdirp,0.5.1,MIT moment,2.19.2,MIT -monaco-editor,0.10.0,MIT +monaco-editor,0.13.1,MIT +monaco-editor-webpack-plugin,1.2.1,MIT mousetrap,1.4.6,Apache 2.0 mousetrap-rails,1.4.6,"MIT,Apache" move-concurrently,1.0.1,ISC @@ -1089,11 +1007,9 @@ multi_json,1.13.1,MIT multi_xml,0.6.0,MIT multicast-dns,6.1.1,MIT multicast-dns-service-types,1.1.0,MIT -multimatch,2.1.0,MIT multipart-post,2.0.0,MIT mustermann,1.0.2,MIT mustermann-grape,1.0.0,MIT -mute-stream,0.0.5,ISC mute-stream,0.0.7,ISC mysql2,0.4.10,MIT nan,2.8.0,MIT @@ -1102,14 +1018,12 @@ natural-compare,1.4.0,MIT negotiator,0.6.1,MIT neo-async,2.5.0,MIT net-ldap,0.16.0,MIT -net-ssh,4.2.0,MIT +net-ssh,5.0.1,MIT netmask,1.0.6,MIT netrc,0.11.0,MIT nice-try,1.0.4,MIT -node-dir,0.1.8,MIT node-forge,0.6.33,New BSD -node-libs-browser,1.1.1,MIT -node-libs-browser,2.0.0,MIT +node-libs-browser,2.1.0,MIT node-pre-gyp,0.6.39,New BSD node-uuid,1.4.8,MIT nodemailer,2.7.2,MIT @@ -1121,7 +1035,6 @@ nodemailer-smtp-transport,2.7.2,MIT nodemailer-wellknown,0.1.10,MIT nodemon,1.17.3,MIT nokogiri,1.8.2,MIT -nomnom,1.8.1,MIT nopt,1.0.10,MIT nopt,3.0.6,ISC nopt,4.0.1,ISC @@ -1147,15 +1060,15 @@ object-visit,1.0.1,MIT object.omit,2.0.1,MIT object.pick,1.3.0,MIT obuf,1.1.1,MIT -octokit,4.8.0,MIT +octokit,4.9.0,MIT omniauth,1.8.1,MIT omniauth-auth0,2.0.0,MIT -omniauth-authentiq,0.3.1,MIT +omniauth-authentiq,0.3.3,MIT omniauth-azure-oauth2,0.0.9,MIT omniauth-cas3,1.1.4,MIT omniauth-facebook,4.0.0,MIT omniauth-github,1.3.0,MIT -omniauth-gitlab,1.0.2,MIT +omniauth-gitlab,1.0.3,MIT omniauth-google-oauth2,0.5.3,MIT omniauth-kerberos,0.3.0,MIT omniauth-multipassword,0.4.2,MIT @@ -1169,46 +1082,36 @@ omniauth_crowd,2.2.3,MIT on-finished,2.3.0,MIT on-headers,1.0.1,MIT once,1.4.0,ISC -onetime,1.1.0,MIT onetime,2.0.1,MIT opener,1.4.3,(WTFPL OR MIT) opn,5.2.0,MIT optimist,0.6.1,MIT optionator,0.8.2,MIT -ora,0.2.3,MIT org-ruby,0.9.12,MIT original,1.0.0,MIT orm_adapter,0.5.0,MIT os,0.9.6,MIT -os-browserify,0.2.1,MIT +os-browserify,0.3.0,MIT os-homedir,1.0.2,MIT os-locale,2.1.0,MIT os-tmpdir,1.0.2,MIT osenv,0.1.5,ISC -p-cancelable,0.3.0,MIT p-cancelable,0.4.1,MIT -p-each-series,1.0.0,MIT p-finally,1.0.0,MIT p-is-promise,1.1.0,MIT -p-lazy,1.0.0,MIT p-limit,1.2.0,MIT p-locate,2.0.0,MIT p-map,1.1.1,MIT -p-reduce,1.0.0,MIT -p-timeout,1.2.1,MIT p-timeout,2.0.1,MIT p-try,1.0.0,MIT pac-proxy-agent,1.1.0,MIT pac-resolver,2.0.0,MIT package-json,4.0.1,MIT -pako,0.2.9,MIT pako,1.0.6,(MIT AND Zlib) parallel-transform,1.1.0,MIT parse-asn1,5.1.0,ISC parse-glob,3.0.4,MIT parse-json,2.2.0,MIT -parse-json,4.0.0,MIT -parse-passwd,1.0.0,MIT parseqs,0.0.5,MIT parseuri,0.0.5,MIT parseurl,1.3.2,MIT @@ -1224,7 +1127,7 @@ path-parse,1.0.5,MIT path-proxy,1.0.0,MIT path-to-regexp,0.1.7,MIT path-type,1.1.0,MIT -path-type,3.0.0,MIT +path-type,2.0.0,MIT pause-stream,0.0.11,Apache 2.0 pbkdf2,3.0.14,MIT peek,1.0.1,MIT @@ -1244,15 +1147,14 @@ pinkie,2.0.4,MIT pinkie-promise,2.0.1,MIT pkg-dir,1.0.0,MIT pkg-dir,2.0.0,MIT -pkg-up,1.0.0,MIT -pluralize,1.2.1,MIT +pluralize,7.0.0,MIT po_to_json,1.0.1,MIT +popper.js,1.14.3,MIT portfinder,1.0.13,MIT posix-character-classes,0.1.1,MIT posix-spawn,0.3.13,MIT postcss,5.2.16,MIT -postcss,6.0.19,MIT -postcss,6.0.21,MIT +postcss,6.0.22,MIT postcss-calc,5.3.1,MIT postcss-colormin,2.2.2,MIT postcss-convert-values,2.6.1,MIT @@ -1262,9 +1164,6 @@ postcss-discard-empty,2.1.0,MIT postcss-discard-overridden,0.1.1,MIT postcss-discard-unused,2.2.3,MIT postcss-filter-plugins,2.0.2,MIT -postcss-load-config,1.2.0,MIT -postcss-load-options,1.2.0,MIT -postcss-load-plugins,2.3.0,MIT postcss-merge-idents,2.1.7,MIT postcss-merge-longhand,2.0.2,MIT postcss-merge-rules,2.1.2,MIT @@ -1284,6 +1183,7 @@ postcss-reduce-idents,2.4.0,MIT postcss-reduce-initial,1.0.1,MIT postcss-reduce-transforms,1.0.4,MIT postcss-selector-parser,2.2.3,MIT +postcss-selector-parser,3.1.1,MIT postcss-svgo,2.1.6,MIT postcss-unique-selectors,2.0.2,MIT postcss-value-parser,3.3.0,MIT @@ -1294,17 +1194,15 @@ premailer-rails,1.9.7,MIT prepend-http,1.0.4,MIT prepend-http,2.0.0,MIT preserve,0.2.0,MIT -prettier,1.10.2,MIT prettier,1.11.1,MIT -prettier,1.8.2,MIT -pretty-bytes,4.0.2,MIT +prettier,1.12.1,MIT prismjs,1.6.0,MIT private,0.1.8,MIT process,0.11.10,MIT process-nextick-args,1.0.7,MIT process-nextick-args,2.0.0,MIT -progress,1.1.8,MIT -prometheus-client-mmap,0.9.1,Apache 2.0 +progress,2.0.0,MIT +prometheus-client-mmap,0.9.3,Apache 2.0 promise-inflight,1.0.1,ISC proxy-addr,2.0.3,MIT proxy-agent,2.0.0,MIT @@ -1359,26 +1257,20 @@ raw-body,2.3.2,MIT raw-loader,0.5.1,MIT rb-fsevent,0.10.2,MIT rb-inotify,0.9.10,MIT -rbnacl,4.0.2,MIT -rbnacl-libsodium,1.0.11,MIT rc,1.2.5,(BSD-2-Clause OR MIT OR Apache-2.0) -rdoc,4.2.2,ruby +rdoc,6.0.4,ruby re2,1.1.1,New BSD -read-chunk,2.1.0,MIT read-pkg,1.1.0,MIT -read-pkg,3.0.0,MIT +read-pkg,2.0.0,MIT read-pkg-up,1.0.1,MIT -read-pkg-up,3.0.0,MIT +read-pkg-up,2.0.0,MIT readable-stream,1.1.14,MIT readable-stream,2.0.6,MIT readable-stream,2.3.4,MIT +readable-stream,2.3.6,MIT readdirp,2.1.0,MIT -readline2,1.0.1,MIT recaptcha,3.0.0,MIT -recast,0.12.9,MIT -recast,0.14.7,MIT -rechoir,0.6.2,MIT -recursive-open-struct,1.0.5,MIT +recursive-open-struct,1.1.0,MIT redcarpet,3.4.0,MIT redent,1.0.0,MIT redis,2.8.0,MIT @@ -1386,7 +1278,7 @@ redis,3.3.5,MIT redis-actionpack,5.0.2,MIT redis-activesupport,5.0.4,MIT redis-commands,1.3.1,MIT -redis-namespace,1.5.2,MIT +redis-namespace,1.6.0,MIT redis-parser,2.6.0,MIT redis-rack,2.0.4,MIT redis-rails,5.0.2,MIT @@ -1409,8 +1301,6 @@ repeat-element,1.1.2,MIT repeat-string,0.2.2,MIT repeat-string,1.6.1,MIT repeating,2.0.1,MIT -replace-ext,0.0.1,MIT -replace-ext,1.0.0,MIT representable,3.0.4,MIT request,2.75.0,Apache 2.0 request,2.81.0,Apache 2.0 @@ -1419,28 +1309,22 @@ request_store,1.3.1,MIT requestretry,1.13.0,MIT require-all,2.2.0,MIT require-directory,2.1.1,MIT -require-from-string,1.2.1,MIT require-main-filename,1.0.1,ISC require-uncached,1.0.3,MIT requires-port,1.0.0,MIT resolve,1.1.7,MIT -resolve,1.5.0,MIT resolve,1.7.1,MIT resolve-cwd,2.0.0,MIT -resolve-dir,1.0.1,MIT resolve-from,1.0.1,MIT resolve-from,3.0.0,MIT resolve-url,0.2.1,MIT responders,2.4.0,MIT responselike,1.0.2,MIT rest-client,2.0.2,MIT -restore-cursor,1.0.1,MIT restore-cursor,2.0.0,MIT ret,0.1.15,MIT retriable,3.1.1,MIT right-align,0.1.3,MIT -rimraf,2.2.8,MIT -rimraf,2.6.1,ISC rimraf,2.6.2,ISC rinku,2.0.0,ISC ripemd160,2.0.1,MIT @@ -1451,16 +1335,15 @@ rqrcode-rails3,0.1.7,MIT ruby-enum,0.7.2,MIT ruby-fogbugz,0.2.1,MIT ruby-prof,0.17.0,Simplified BSD +ruby-progressbar,1.9.0,MIT ruby-saml,1.7.2,MIT ruby_parser,3.9.0,MIT rubyntlm,0.6.2,MIT rubypants,0.2.0,BSD rufus-scheduler,3.4.0,MIT -rugged,0.27.0,MIT -run-async,0.1.0,MIT +rugged,0.27.1,MIT run-async,2.3.0,MIT run-queue,1.0.3,ISC -rx-lite,3.1.2,Apache 2.0 rx-lite,4.0.8,Apache 2.0 rx-lite-aggregates,4.0.8,Apache 2.0 rxjs,5.5.10,Apache 2.0 @@ -1475,7 +1358,6 @@ sass-rails,5.0.6,MIT sawyer,0.8.1,MIT sax,1.2.2,ISC schema-utils,0.4.5,MIT -scoped-regex,1.0.0,MIT securecompare,1.0.0,MIT seed-fu,2.3.7,MIT select,1.1.2,MIT @@ -1484,7 +1366,6 @@ select2,3.5.2-browserify,Apache* select2-rails,3.5.9.3,MIT selfsigned,1.10.1,MIT semver,5.0.3,ISC -semver,5.3.0,ISC semver,5.5.0,ISC semver-diff,2.1.0,MIT send,0.16.1,MIT @@ -1506,9 +1387,7 @@ sha.js,2.4.10,MIT sha1,1.1.1,New BSD shebang-command,1.2.0,MIT shebang-regex,1.0.0,MIT -shelljs,0.7.8,New BSD -shelljs,0.8.1,New BSD -sidekiq,5.0.5,LGPL +sidekiq,5.1.3,LGPL sidekiq-cron,0.6.0,MIT sidekiq-limit_fetch,3.4.0,MIT signal-exit,3.0.2,ISC @@ -1516,8 +1395,7 @@ signet,0.8.1,Apache 2.0 slack-node,0.2.0,MIT slack-notifier,1.5.1,MIT slash,1.0.0,MIT -slice-ansi,0.0.4,MIT -slide,1.1.6,ISC +slice-ansi,1.0.0,MIT smart-buffer,1.1.15,MIT smtp-connection,2.12.0,MIT snapdragon,0.8.1,MIT @@ -1536,6 +1414,7 @@ socks,1.1.9,MIT socks-proxy-agent,2.1.1,MIT sort-keys,1.1.2,MIT sort-keys,2.0.0,MIT +sortablejs,1.7.0,MIT source-list-map,2.0.0,MIT source-map,0.2.0,New BSD source-map,0.4.4,New BSD @@ -1567,53 +1446,46 @@ state_machines-activerecord,0.5.1,MIT static-extend,0.1.2,MIT statuses,1.3.1,MIT statuses,1.4.0,MIT +stickyfilljs,2.0.5,MIT stream-browserify,2.0.1,MIT stream-combiner,0.0.4,MIT stream-each,1.2.2,MIT -stream-http,2.8.0,MIT +stream-http,2.8.2,MIT stream-shift,1.0.0,MIT -stream-to-observable,0.2.0,MIT streamroller,0.7.0,MIT strict-uri-encode,1.1.0,MIT -string-template,0.2.1,MIT string-width,1.0.2,MIT string-width,2.1.1,MIT string_decoder,0.10.31,MIT string_decoder,1.0.3,MIT +string_decoder,1.1.1,MIT stringex,2.8.4,MIT stringstream,0.0.5,MIT -strip-ansi,0.1.1,MIT strip-ansi,3.0.1,MIT strip-ansi,4.0.0,MIT strip-bom,2.0.0,MIT strip-bom,3.0.0,MIT -strip-bom-stream,2.0.0,MIT strip-eof,1.0.0,MIT strip-indent,1.0.1,MIT strip-json-comments,2.0.1,MIT style-loader,0.21.0,MIT supports-color,2.0.0,MIT supports-color,3.2.3,MIT -supports-color,5.1.0,MIT -supports-color,5.2.0,MIT supports-color,5.4.0,MIT svg4everybody,2.1.9,CC0-1.0 svgo,0.7.2,MIT -symbol-observable,0.2.4,MIT symbol-observable,1.0.1,MIT sys-filesystem,1.1.6,Artistic 2.0 -table,3.8.3,New BSD +table,4.0.2,New BSD tapable,0.1.10,MIT tapable,1.0.0,MIT tar,2.2.1,ISC tar-pack,3.4.1,Simplified BSD -temp,0.8.3,MIT temple,0.7.7,MIT term-size,1.2.0,MIT test-exclude,4.2.1,ISC text,1.3.1,MIT text-table,0.2.0,MIT -textextensions,2.2.0,MIT thor,0.19.4,MIT thread_safe,0.3.6,Apache 2.0 three,0.84.0,MIT @@ -1626,8 +1498,7 @@ thunky,0.1.0,MIT* tilt,2.0.6,MIT timeago.js,3.0.2,MIT timed-out,4.0.1,MIT -timers-browserify,1.4.2,MIT -timers-browserify,2.0.4,MIT +timers-browserify,2.0.10,MIT timespan,2.3.0,MIT timfel-krb5-auth,0.8.3,LGPL tiny-emitter,2.0.2,MIT @@ -1637,7 +1508,6 @@ to-arraybuffer,1.0.1,MIT to-fast-properties,1.0.3,MIT to-fast-properties,2.0.0,MIT to-object-path,0.3.0,MIT -to-regex,3.0.1,MIT to-regex,3.0.2,MIT to-regex-range,2.1.1,MIT toml-rb,1.0.0,MIT @@ -1667,9 +1537,7 @@ uglify-to-browserify,1.0.2,MIT uglifyjs-webpack-plugin,1.2.5,MIT uid-number,0.0.6,ISC ultron,1.1.1,MIT -unc-path-regex,0.1.2,MIT undefsafe,2.0.2,MIT -underscore,1.6.0,MIT underscore,1.7.0,MIT underscore,1.9.0,MIT unf,0.1.4,BSD @@ -1685,9 +1553,8 @@ unique-slug,2.0.0,ISC unique-string,1.0.0,MIT unpipe,1.0.0,MIT unset-value,1.0.0,MIT -untildify,3.0.2,MIT unzip-response,2.0.1,MIT -upath,1.0.2,MIT +upath,1.0.5,MIT update-notifier,2.3.0,Simplified BSD urix,0.1.0,MIT url,0.11.0,MIT @@ -1701,14 +1568,13 @@ url-parse-lax,3.0.0,MIT url-to-options,1.0.1,MIT url_safe_base64,0.2.2,MIT use,2.0.2,MIT -user-home,2.0.0,MIT useragent,2.2.1,MIT util,0.10.3,MIT util-deprecate,1.0.2,MIT utils-merge,1.0.1,MIT uuid,3.2.1,MIT uws,9.14.0,Zlib -v8-compile-cache,1.1.2,MIT +v8-compile-cache,2.0.0,MIT validate-npm-package-license,3.0.1,Apache 2.0 validates_hostname,1.0.6,MIT vary,1.1.1,MIT @@ -1716,18 +1582,15 @@ vary,1.1.2,MIT vendors,1.0.1,MIT verror,1.10.0,MIT version_sorter,2.1.0,MIT -vinyl,1.2.0,MIT -vinyl,2.1.0,MIT -vinyl-file,2.0.0,MIT virtus,1.0.5,MIT visibilityjs,1.2.4,MIT vm-browserify,0.0.4,MIT vmstat,2.3.0,MIT void-elements,2.0.1,MIT vue,2.5.16,MIT -vue-eslint-parser,2.0.1,MIT +vue-eslint-parser,2.0.3,MIT vue-hot-reload-api,2.3.0,MIT -vue-loader,14.2.2,MIT +vue-loader,15.2.0,MIT vue-resource,1.5.0,MIT vue-router,3.0.1,MIT vue-style-loader,4.1.0,MIT @@ -1738,17 +1601,14 @@ vuex,3.0.1,MIT warden,1.2.7,MIT watchpack,1.5.0,MIT wbuf,1.7.2,MIT -webpack,4.7.0,MIT -webpack-addons,1.1.5,MIT +webpack,4.11.1,MIT webpack-bundle-analyzer,2.11.1,MIT -webpack-cli,2.1.2,MIT +webpack-cli,3.0.2,MIT webpack-dev-middleware,2.0.6,MIT webpack-dev-middleware,3.1.3,MIT webpack-dev-server,3.1.4,MIT -webpack-log,1.1.2,MIT webpack-log,1.2.0,MIT webpack-rails,0.9.10,MIT -webpack-sources,1.0.1,MIT webpack-sources,1.1.0,MIT webpack-stats-plugin,0.2.1,MIT websocket-driver,0.6.5,MIT @@ -1765,11 +1625,10 @@ wordwrap,0.0.2,MIT wordwrap,0.0.3,MIT wordwrap,1.0.0,MIT worker-farm,1.5.2,MIT -worker-loader,1.1.1,MIT +worker-loader,2.0.0,MIT wrap-ansi,2.1.0,MIT wrappy,1.0.2,ISC write,0.2.1,MIT -write-file-atomic,1.3.4,ISC write-file-atomic,2.3.0,ISC ws,3.3.3,MIT ws,4.0.0,MIT @@ -1781,12 +1640,8 @@ xtend,4.0.1,MIT y18n,3.2.1,ISC y18n,4.0.0,ISC yallist,2.1.2,ISC -yargs,1.2.6,MIT yargs,11.0.0,MIT yargs,11.1.0,MIT yargs,3.10.0,MIT yargs-parser,9.0.2,ISC yeast,0.1.2,MIT -yeoman-environment,2.0.5,Simplified BSD -yeoman-environment,2.0.6,Simplified BSD -yeoman-generator,2.0.5,Simplified BSD |