Skip to content
Snippets Groups Projects
Commit 906c65b6 authored by Crom (Thibaut CHARLES)'s avatar Crom (Thibaut CHARLES)
Browse files

Merge branch 'master' of https://github.com/gitlabhq/gitlabhq

Conflicts:
	config/application.rb
	config/gitlab.yml.example
	config/unicorn.rb.example
parents 87fc3507 dbf8ae73
No related branches found
No related tags found
1 merge request!5548Fixed comments for running gitlab in a non-root path
Showing
with 292 additions and 128 deletions
Loading
Loading
@@ -9,7 +9,6 @@ env:
- TASK=jasmine:ci
before_install:
- sudo apt-get install libicu-dev -y
- gem install charlock_holmes -v="0.6.9"
branches:
only:
- 'master'
Loading
Loading
@@ -17,9 +16,12 @@ rvm:
- 2.0.0
services:
- mysql
- redis-server
before_script:
- "cp config/database.yml.$DB config/database.yml"
- "cp config/gitlab.yml.example config/gitlab.yml"
- "bundle exec rake db:setup"
- "bundle exec rake db:seed_fu"
script: "bundle exec rake $TASK --trace"
notifications:
email: false
v 6.4.0
- Added sorting to project issues page (Jason Blanchard)
- Assembla integration (Carlos Paramio)
- Fixed another 500 error with submodules
- UI: More compact issues page
- Minimal password length increased to 8 symbols
- Side-by-side diff view (Steven Thonus)
- Internal projects (Jason Hollingsworth)
- Allow removal of avatar (Drew Blessing)
- Project web hooks now support issues and merge request events
- Visiting project page while not logged in will redirect to sign-in instead of 404 (Jason Hollingsworth)
v 6.3.0
- API for adding gitlab-ci service
- Init script now waits for pids to appear after (re)starting before reporting status (Rovanion Luckey)
Loading
Loading
@@ -9,6 +21,34 @@ v 6.3.0
- Fixed issue with 500 error when group did not exist
- Ability to leave project
- You can create file in repo using UI
- You can remove file from repo using UI
- API: dropped default_branch attribute from project during creation
- Project default_branch is not stored in db any more. It takes from repo now.
- Admin broadcast messages
- UI improvements
- Dont show last push widget if user removed this branch
- Fix 500 error for repos with newline in file name
- Extended html titles
- API: create/update/delete repo files
- Admin can transfer project to any namespace
- API: projects/all for admin users
- Fix recent branches order
v 6.2.4
- Security: Cast API private_token to string (CVE-2013-4580)
- Security: Require gitlab-shell 1.7.8 (CVE-2013-4581, CVE-2013-4582, CVE-2013-4583)
- Fix for Git SSH access for LDAP users
v 6.2.3
- Security: More protection against CVE-2013-4489
- Security: Require gitlab-shell 1.7.4 (CVE-2013-4490, CVE-2013-4546)
- Fix sidekiq rake tasks
v 6.2.2
- Security: Update gitlab_git (CVE-2013-4489)
v 6.2.1
- Security: Fix issue with generated passwords for new users
 
v 6.2.0
- Public project pages are now visible to everyone (files, issues, wik, etc.)
Loading
Loading
@@ -30,7 +70,7 @@ v 6.2.0
- Avatar upload on profile page with a maximum of 100KB (Steven Thonus)
- Store the sessions in Redis instead of the cookie store
- Fixed relative links in markdown
- User must confirm his email if signup enabled
- User must confirm their email if signup enabled
- User must confirm changed email
 
v 6.1.0
Loading
Loading
@@ -52,7 +92,7 @@ v 6.1.0
- Add links to create branch/tag from project home page
- Add public-project? checkbox to new-project view
- Improved compare page. Added link to proceed into Merge Request
- Send email to user when he was added to group
- Send an email to a user when they are added to group
- New landing page when you have 0 projects
 
v 6.0.0
Loading
Loading
@@ -95,6 +135,14 @@ v 6.0.0
- Improved MR comments logic
- Render readme file for projects in public area
 
v 5.4.2
- Security: Cast API private_token to string (CVE-2013-4580)
- Security: Require gitlab-shell 1.7.8 (CVE-2013-4581, CVE-2013-4582, CVE-2013-4583)
v 5.4.1
- Security: Fixes for CVE-2013-4489
- Security: Require gitlab-shell 1.7.4 (CVE-2013-4490, CVE-2013-4546)
v 5.4.0
- Ability to edit own comments
- Documentation improvements
Loading
Loading
Loading
Loading
@@ -9,6 +9,14 @@ This guide details how to use issues and pull requests to improve GitLab.
 
If you want to know how the GitLab team handles contributions have a look at [the GitLab contributing process](PROCESS.md).
 
## Contributor license agreement
By submitting code as an individual you agree to the [individual contributor license agreement](doc/legal/individual_contributor_license_agreement.md). By submitting code as an entity you agree to the [corporate contributor license agreement](doc/legal/corporate_contributor_license_agreement.md).
## Security vulnerability disclosure
Please report suspected security vulnerabilities in private to support@gitlab.com, also see the [disclosure section on the GitLab.com website](http://www.gitlab.com/disclosure/). Please do NOT create publicly viewable issues for suspected security vulnerabilities.
## Closing policy for issues and pull requests
 
GitLab is a popular open source project and the capacity to deal with issues and pull requests is limited. Out of respect for our volunteers, issues and pull requests not in line with the guidelines listed in this document may be closed without notice.
Loading
Loading
@@ -74,6 +82,3 @@ We will accept pull requests if:
* It is a single commit (please use `git rebase -i` to squash commits)
 
For examples of feedback on pull requests please look at already [closed pull requests](https://github.com/gitlabhq/gitlabhq/pulls?direction=desc&page=1&sort=created&state=closed).
## Security vulnerabilities
Please report security vulnerabilities in private to support@gitlab.com; also see http://www.gitlab.com/disclosure/. Do NOT create GitHub issues for security vulnerabilities.
Loading
Loading
@@ -8,7 +8,7 @@ def linux_only(require_as)
RUBY_PLATFORM.include?('linux') && require_as
end
 
gem "rails", "3.2.15"
gem "rails", "3.2.16"
 
# Supported DBs
gem "mysql2", group: :mysql
Loading
Loading
@@ -24,26 +24,27 @@ gem 'omniauth-github'
 
# Extracting information from a git repository
# Provide access to Gitlab::Git library
gem "gitlab_git", "~> 3.0.0.rc2"
gem "gitlab_git", "~> 3.1.0"
 
# Ruby/Rack Git Smart-HTTP Server Handler
gem 'gitlab-grack', '~> 1.0.1', require: 'grack'
gem 'gitlab-grack', '~> 1.1.0', require: 'grack'
 
# LDAP Auth
gem 'gitlab_omniauth-ldap', '1.0.3', require: "omniauth-ldap"
 
# Syntax highlighter
gem "gitlab-pygments.rb", '~> 0.3.2', require: 'pygments.rb'
gem "gitlab-pygments.rb", '~> 0.5.4', require: 'pygments.rb'
 
# Git Wiki
gem "gitlab-gollum-lib", "~> 1.0.1", require: 'gollum-lib'
gem "gitlab-gollum-lib", "~> 1.0.2", require: 'gollum-lib'
 
# Language detection
gem "github-linguist", require: "linguist"
gem "gitlab-linguist", "~> 2.9.6", require: "linguist"
 
# API
gem "grape", "~> 0.4.1"
gem "grape-entity", "~> 0.3.0"
gem 'rack-cors', require: 'rack/cors'
 
# Format dates and times
# based on human-friendly examples
Loading
Loading
@@ -135,7 +136,7 @@ group :assets do
gem 'turbolinks'
gem 'jquery-turbolinks'
 
gem 'chosen-rails', "1.0.0"
gem 'chosen-rails', "1.0.1"
gem 'select2-rails'
gem 'jquery-atwho-rails', "0.3.0"
gem "jquery-rails", "2.1.3"
Loading
Loading
GEM
remote: https://rubygems.org/
specs:
actionmailer (3.2.15)
actionpack (= 3.2.15)
actionmailer (3.2.16)
actionpack (= 3.2.16)
mail (~> 2.5.4)
actionpack (3.2.15)
activemodel (= 3.2.15)
activesupport (= 3.2.15)
actionpack (3.2.16)
activemodel (= 3.2.16)
activesupport (= 3.2.16)
builder (~> 3.0.0)
erubis (~> 2.7.0)
journey (~> 1.0.4)
Loading
Loading
@@ -14,18 +14,18 @@ GEM
rack-cache (~> 1.2)
rack-test (~> 0.6.1)
sprockets (~> 2.2.1)
activemodel (3.2.15)
activesupport (= 3.2.15)
activemodel (3.2.16)
activesupport (= 3.2.16)
builder (~> 3.0.0)
activerecord (3.2.15)
activemodel (= 3.2.15)
activesupport (= 3.2.15)
activerecord (3.2.16)
activemodel (= 3.2.16)
activesupport (= 3.2.16)
arel (~> 3.0.2)
tzinfo (~> 0.3.29)
activeresource (3.2.15)
activemodel (= 3.2.15)
activesupport (= 3.2.15)
activesupport (3.2.15)
activeresource (3.2.16)
activemodel (= 3.2.16)
activesupport (= 3.2.16)
activesupport (3.2.16)
i18n (~> 0.6, >= 0.6.4)
multi_json (~> 1.0)
acts-as-taggable-on (2.4.1)
Loading
Loading
@@ -34,11 +34,11 @@ GEM
annotate (2.6.0.beta2)
activerecord (>= 2.3.0)
rake (>= 0.8.7)
arel (3.0.2)
arel (3.0.3)
asciidoctor (0.1.3)
awesome_print (1.2.0)
backports (3.3.2)
bcrypt-ruby (3.1.1)
bcrypt-ruby (3.1.2)
better_errors (1.0.1)
coderay (>= 1.0.0)
erubis (>= 2.6.6)
Loading
Loading
@@ -61,12 +61,12 @@ GEM
charlock_holmes (0.6.9.4)
childprocess (0.3.9)
ffi (~> 1.0, >= 1.0.11)
chosen-rails (1.0.0)
chosen-rails (1.0.1)
coffee-rails (>= 3.2)
compass-rails (>= 1.0)
railties (>= 3.0)
sass-rails (>= 3.2)
chunky_png (1.2.8)
chunky_png (1.2.9)
cliver (0.2.1)
code_analyzer (0.4.3)
sexp_processor
Loading
Loading
@@ -77,7 +77,7 @@ GEM
coffee-script (2.2.0)
coffee-script-source
execjs
coffee-script-source (1.6.2)
coffee-script-source (1.6.3)
colored (1.2)
colorize (0.5.8)
compass (0.12.2)
Loading
Loading
@@ -101,14 +101,14 @@ GEM
database_cleaner (1.1.1)
debug_inspector (0.0.2)
descendants_tracker (0.0.1)
devise (2.2.5)
devise (2.2.8)
bcrypt-ruby (~> 3.0)
orm_adapter (~> 0.1)
railties (~> 3.1)
warden (~> 1.2.1)
devise-async (0.8.0)
devise (>= 2.2, < 3.2)
diff-lcs (1.2.4)
diff-lcs (1.2.5)
dotenv (0.8.0)
email_spec (1.4.0)
launchy (~> 2.1)
Loading
Loading
@@ -119,8 +119,7 @@ GEM
escape_utils (0.2.4)
eventmachine (1.0.3)
excon (0.13.4)
execjs (1.4.0)
multi_json (~> 1.0)
execjs (2.0.2)
factory_girl (4.2.0)
activesupport (>= 3.0.0)
factory_girl_rails (4.2.1)
Loading
Loading
@@ -151,38 +150,39 @@ GEM
fssm (0.2.10)
gemoji (1.2.1)
gherkin-ruby (0.3.0)
github-linguist (2.3.4)
charlock_holmes (~> 0.6.6)
escape_utils (~> 0.2.3)
mime-types (~> 1.19)
pygments.rb (>= 0.2.13)
github-markdown (0.5.3)
github-markdown (0.5.5)
github-markup (0.7.5)
gitlab-flowdock-git-hook (0.4.2.2)
gitlab-grit (>= 2.4.1)
multi_json
gitlab-gollum-lib (1.0.1)
gitlab-gollum-lib (1.0.2)
github-markdown (~> 0.5.3)
github-markup (>= 0.7.5, < 1.0.0)
gitlab-grit (>= 2.5.1)
gitlab-grit (~> 2.6.1)
gitlab-pygments.rb (~> 0.5.4)
nokogiri (~> 1.5.9)
pygments.rb (~> 0.4.2)
sanitize (~> 2.0.3)
stringex (~> 1.5.1)
gitlab-grack (1.0.1)
gitlab-grack (1.1.0)
rack (~> 1.4.1)
gitlab-grit (2.6.1)
gitlab-grit (2.6.3)
charlock_holmes (~> 0.6.9)
diff-lcs (~> 1.1)
mime-types (~> 1.15)
posix-spawn (~> 0.3.6)
gitlab-pygments.rb (0.3.2)
gitlab-linguist (2.9.6)
charlock_holmes (~> 0.6.6)
escape_utils (~> 0.2.4)
gitlab-pygments.rb (~> 0.5.4)
mime-types (~> 1.19)
gitlab-pygments.rb (0.5.4)
posix-spawn (~> 0.3.6)
yajl-ruby (~> 1.1.0)
gitlab_git (3.0.0.rc2)
gitlab_git (3.1.0)
activesupport (~> 3.2.13)
github-linguist (~> 2.3.4)
gitlab-grit (~> 2.6.1)
gitlab-linguist (~> 2.9.5)
gitlab-pygments.rb (~> 0.5.4)
gitlab_meta (6.0)
gitlab_omniauth-ldap (1.0.3)
net-ldap (~> 0.3.1)
Loading
Loading
@@ -235,7 +235,7 @@ GEM
multi_json (~> 1.0)
multi_xml (>= 0.5.2)
httpauth (0.2.0)
i18n (0.6.5)
i18n (0.6.9)
jasmine (1.3.2)
jasmine-core (~> 1.3.1)
rack (~> 1.0)
Loading
Loading
@@ -274,7 +274,7 @@ GEM
mime-types (~> 1.16)
treetop (~> 1.4.8)
method_source (0.8.1)
mime-types (1.25)
mime-types (1.25.1)
minitest (4.7.4)
modernizr (2.6.2)
sprockets (~> 2.0)
Loading
Loading
@@ -312,7 +312,7 @@ GEM
omniauth-twitter (0.0.17)
multi_json (~> 1.3)
omniauth-oauth (~> 1.0)
orm_adapter (0.4.0)
orm_adapter (0.5.0)
pg (0.15.1)
poltergeist (1.4.1)
capybara (~> 2.1.0)
Loading
Loading
@@ -325,9 +325,6 @@ GEM
coderay (~> 1.0.5)
method_source (~> 0.8)
slop (~> 3.4)
pygments.rb (0.4.2)
posix-spawn (~> 0.3.6)
yajl-ruby (~> 1.1.0)
pyu-ruby-sasl (0.0.3.3)
quiet_assets (1.0.2)
railties (>= 3.1, < 5.0)
Loading
Loading
@@ -338,6 +335,7 @@ GEM
rack
rack-cache (1.2)
rack (>= 0.4)
rack-cors (0.2.9)
rack-mini-profiler (0.1.31)
rack (>= 1.1.3)
rack-mount (0.8.3)
Loading
Loading
@@ -348,14 +346,14 @@ GEM
rack
rack-test (0.6.2)
rack (>= 1.0)
rails (3.2.15)
actionmailer (= 3.2.15)
actionpack (= 3.2.15)
activerecord (= 3.2.15)
activeresource (= 3.2.15)
activesupport (= 3.2.15)
rails (3.2.16)
actionmailer (= 3.2.16)
actionpack (= 3.2.16)
activerecord (= 3.2.16)
activeresource (= 3.2.16)
activesupport (= 3.2.16)
bundler (~> 1.0)
railties (= 3.2.15)
railties (= 3.2.16)
rails-dev-tweaks (0.6.1)
actionpack (~> 3.1)
railties (~> 3.1)
Loading
Loading
@@ -368,9 +366,9 @@ GEM
i18n
require_all
ruby-progressbar
railties (3.2.15)
actionpack (= 3.2.15)
activesupport (= 3.2.15)
railties (3.2.16)
actionpack (= 3.2.16)
activesupport (= 3.2.16)
rack-ssl (~> 1.3.2)
rake (>= 0.8.7)
rdoc (~> 3.4)
Loading
Loading
@@ -431,7 +429,7 @@ GEM
safe_yaml (0.9.3)
sanitize (2.0.3)
nokogiri (>= 1.4.4, < 1.6)
sass (3.2.11)
sass (3.2.12)
sass-rails (3.2.6)
railties (~> 3.2.0)
sass (>= 3.1.10)
Loading
Loading
@@ -559,7 +557,7 @@ DEPENDENCIES
bootstrap-sass
capybara
carrierwave
chosen-rails (= 1.0.0)
chosen-rails (= 1.0.1)
coffee-rails
colored
coveralls
Loading
Loading
@@ -575,13 +573,13 @@ DEPENDENCIES
font-awesome-rails
foreman
gemoji (~> 1.2.1)
github-linguist
github-markup (~> 0.7.4)
gitlab-flowdock-git-hook (~> 0.4.2)
gitlab-gollum-lib (~> 1.0.1)
gitlab-grack (~> 1.0.1)
gitlab-pygments.rb (~> 0.3.2)
gitlab_git (~> 3.0.0.rc2)
gitlab-gollum-lib (~> 1.0.2)
gitlab-grack (~> 1.1.0)
gitlab-linguist (~> 2.9.6)
gitlab-pygments.rb (~> 0.5.4)
gitlab_git (~> 3.1.0)
gitlab_meta (= 6.0)
gitlab_omniauth-ldap (= 1.0.3)
gon
Loading
Loading
@@ -613,8 +611,9 @@ DEPENDENCIES
pry
quiet_assets (~> 1.0.1)
rack-attack
rack-cors
rack-mini-profiler
rails (= 3.2.15)
rails (= 3.2.16)
rails-dev-tweaks
rails_best_practices
raphael-rails (~> 2.1.2)
Loading
Loading
Loading
Loading
@@ -32,7 +32,9 @@
 
* GitLab.com commercial services: [Homepage](http://www.gitlab.com/) | [Subscription](http://www.gitlab.com/subscription/) | [Consultancy](http://www.gitlab.com/consultancy/) | [GitLab Cloud](http://www.gitlab.com/cloud/) | [Blog](http://blog.gitlab.com/)
 
* GitLab CI: [Readme](https://github.com/gitlabhq/gitlab-ci/blob/master/README.md) of the GitLab open-source continuous integration server
* [GitLab Enterprise Edition](https://www.gitlab.com/features/) offers additional features that are useful for larger organizations (100+ users).
* [GitLab CI](https://github.com/gitlabhq/gitlab-ci/blob/master/README.md) is a continuous integration (CI) server that is easy to integrate with GitLab.
 
### Requirements
 
Loading
Loading
@@ -44,31 +46,24 @@
 
** More details are in the [requirements doc](doc/install/requirements.md)
 
### Installation
#### Official production installation
* [Installation guide for a production server](doc/install/installation.md)
### Official installation methods
 
* [Manual installation guide for a production server](doc/install/installation.md)
 
#### Official development installation
* [GitLab Chef Cookbook](https://gitlab.com/gitlab-org/cookbook-gitlab/blob/master/README.md) This cookbook can be used both for development installations and production installations. If you want to [contribute](CONTRIBUTE.md) to GitLab we suggest you follow the [development installation on a virtual machine with Vagrant](https://gitlab.com/gitlab-org/cookbook-gitlab/blob/master/doc/development.md) instructions to install all testing dependencies.
 
If you want to contribute, please first read our [Contributing Guidelines](https://github.com/gitlabhq/gitlabhq/blob/master/CONTRIBUTING.md) and then we suggest you to use the Vagrant virtual machine project to get an environment working with all dependencies.
### Third party one-click installers
 
* [Vagrant virtual machine for development](https://github.com/gitlabhq/gitlab-vagrant-vm)
* [Digital Ocean 1-Click Application Install](https://www.digitalocean.com/blog_posts/host-your-git-repositories-in-55-seconds-with-gitlab) Have a new server up in 55 seconds. Digital Ocean uses SSD disks which is great for an IO intensive app such as GitLab.
 
* [BitNami one-click installers](http://bitnami.com/stack/gitlab) This package contains both GitLab and GitLab CI. It is available as installer, virtual machine or for cloud hosting providers (Amazon Web Services/Azure/etc.).
 
#### Unofficial production installations
#### Unofficial installation methods
 
* [GitLab recipes](https://github.com/gitlabhq/gitlab-recipes) repository with unofficial guides for using GitLab with different software (operating systems, webservers, etc.) than the official version.
 
* [Installation guides](https://github.com/gitlabhq/gitlab-public-wiki/wiki/Unofficial-Installation-Guides) public wiki with unofficial guides to install GitLab on different operating systems.
 
* [BitNami one-click installers](http://bitnami.com/stack/gitlab)
* [TurnKey Linux virtual appliance](http://www.turnkeylinux.org/gitlab)
### New versions and upgrading
 
Since 2011 GitLab is released on the 22nd of every month. Every new release includes an upgrade guide.
Loading
Loading
@@ -79,7 +74,6 @@ Since 2011 GitLab is released on the 22nd of every month. Every new release incl
 
* Features that will be in the next releases are listed on [the feedback and suggestions forum](http://feedback.gitlab.com/forums/176466-general) with the status [started](http://feedback.gitlab.com/forums/176466-general/status/796456) and [completed](http://feedback.gitlab.com/forums/176466-general/status/796457).
 
### Run in production mode
 
The Installation guide contains instructions on how to download an init script and run it automatically on boot. You can also start the init script manually:
Loading
Loading
@@ -110,7 +104,7 @@ or start each component separately
 
* Run all tests
 
bundle exec rake gitlab:test
bundle exec rake gitlab:test RAILS_ENV=test
 
* [RSpec](http://rspec.info/) unit and functional tests
 
Loading
Loading
@@ -147,15 +141,17 @@ or start each component separately
 
* [Mailing list](https://groups.google.com/forum/#!forum/gitlabhq) and [Stack Overflow](http://stackoverflow.com/questions/tagged/gitlab) are the best places to ask questions. For example you can use it if you have questions about: permission denied errors, invisible repos, can't clone/pull/push or with web hooks that don't fire. Please search for similar issues before posting your own, there's a good chance somebody else had the same issue you have now and has resolved it. There are a lot of helpful GitLab users there who may be able to help you quickly. If your particular issue turns out to be a bug, it will find its way from there to a fix.
 
* [Unofficial #gitlab IRC on Freenode](http://www.freenode.net/) is another way to get in touch with other GitLab users who may be able to help you.
* [Feedback and suggestions forum](http://feedback.gitlab.com) is the place to propose and discuss new features for GitLab.
 
* [Contributing guide](https://github.com/gitlabhq/gitlabhq/blob/master/CONTRIBUTING.md) describes how to submit pull requests and issues. Pull requests and issues not in line with the guidelines in this document will be closed.
 
* [Support subscription](http://www.gitlab.com/subscription/) connects you to the knowledge of GitLab experts that will resolve your issues and answer your questions.
 
* [Consultancy](http://www.gitlab.com/consultancy/) allows you hire GitLab experts for installations, upgrades and customizations.
* [Consultancy](http://www.gitlab.com/consultancy/) from the GitLab experts for installations, upgrades and customizations.
* [#gitlab IRC channel](http://www.freenode.net/) on Freenode is unofficial but offers a way to get in touch with other GitLab users who may be able to help you.
* [Book](http://www.packtpub.com/gitlab-repository-management/book) written by GitLab enthusiast Jonathan M. Hethey is unofficial but it offers a good overview.
 
 
### Getting in touch
Loading
Loading
6.3.0.pre
6.4.0.pre
app/assets/images/favicon.ico

1.12 KiB | W: 16px | H: 16px

app/assets/images/favicon.ico

32.2 KiB | W: 64px | H: 64px

app/assets/images/favicon.ico
app/assets/images/favicon.ico
app/assets/images/favicon.ico
app/assets/images/favicon.ico
  • 2-up
  • Swipe
  • Onion skin
app/assets/images/logo-black.png

3.01 KiB | W: 80px | H: 75px

app/assets/images/logo-black.png

2.95 KiB | W: 72px | H: 65px

app/assets/images/logo-black.png
app/assets/images/logo-black.png
app/assets/images/logo-black.png
app/assets/images/logo-black.png
  • 2-up
  • Swipe
  • Onion skin
app/assets/images/logo-white.png

5.59 KiB | W: 80px | H: 75px

app/assets/images/logo-white.png

8.14 KiB | W: 84px | H: 79px

app/assets/images/logo-white.png
app/assets/images/logo-white.png
app/assets/images/logo-white.png
app/assets/images/logo-white.png
  • 2-up
  • Swipe
  • Onion skin
Loading
Loading
@@ -2,6 +2,7 @@
users_path: "/api/:version/users.json"
user_path: "/api/:version/users/:id.json"
notes_path: "/api/:version/projects/:id/notes.json"
namespaces_path: "/api/:version/namespaces.json"
 
# Get 20 (depends on api) recent notes
# and sort the ascending from oldest to newest
Loading
Loading
@@ -49,6 +50,20 @@
).done (users) ->
callback(users)
 
# Return namespaces list. Filtered by query
namespaces: (query, callback) ->
url = Api.buildUrl(Api.namespaces_path)
$.ajax(
url: url
data:
private_token: gon.api_token
search: query
per_page: 20
dataType: "json"
).done (namespaces) ->
callback(namespaces)
buildUrl: (url) ->
url = gon.relative_url_root + url if gon.relative_url_root?
return url.replace(':version', gon.api_version)
class BlobView
constructor: ->
# handle multi-line select
handleMultiSelect = (e) ->
[ first_line, last_line ] = parseSelectedLines()
[ line_number ] = parseSelectedLines($(this).attr("id"))
hash = "L#{line_number}"
if e.shiftKey and not isNaN(first_line) and not isNaN(line_number)
if line_number < first_line
last_line = first_line
first_line = line_number
else
last_line = line_number
hash = if first_line == last_line then "L#{first_line}" else "L#{first_line}-#{last_line}"
setHash(hash)
e.preventDefault()
# See if there are lines selected
# "#L12" and "#L34-56" supported
highlightBlobLines = ->
if window.location.hash isnt ""
matches = window.location.hash.match(/\#L(\d+)(\-(\d+))?/)
highlightBlobLines = (e) ->
[ first_line, last_line ] = parseSelectedLines()
unless isNaN first_line
$("#tree-content-holder .highlight .line").removeClass("hll")
$("#LC#{line}").addClass("hll") for line in [first_line..last_line]
$("#L#{first_line}").ScrollTo() unless e?
# parse selected lines from hash
# always return first and last line (initialized to NaN)
parseSelectedLines = (str) ->
first_line = NaN
last_line = NaN
hash = str || window.location.hash
if hash isnt ""
matches = hash.match(/\#?L(\d+)(\-(\d+))?/)
first_line = parseInt(matches?[1])
last_line = parseInt(matches?[3])
last_line = first_line if isNaN(last_line)
[ first_line, last_line ]
setHash = (hash) ->
hash = hash.replace(/^\#/, "")
nodes = $("#" + hash)
# if any nodes are using this id, they must be temporarily changed
# also, add a temporary div at the top of the screen to prevent scrolling
if nodes.length > 0
scroll_top = $(document).scrollTop()
nodes.attr("id", "")
tmp = $("<div></div>")
.css({ position: "absolute", visibility: "hidden", top: scroll_top + "px" })
.attr("id", hash)
.appendTo(document.body)
window.location.hash = hash
# restore the nodes
if nodes.length > 0
tmp.remove()
nodes.attr("id", hash)
 
unless isNaN first_line
last_line = first_line if isNaN(last_line)
$("#tree-content-holder .highlight .line").removeClass("hll")
$("#LC#{line}").addClass("hll") for line in [first_line..last_line]
$("#L#{first_line}").ScrollTo()
# initialize multi-line select
$("#tree-content-holder .line_numbers a[id^=L]").on("click", handleMultiSelect)
 
# Highlight the correct lines on load
highlightBlobLines()
 
# Highlight the correct lines when the hash part of the URL changes
$(window).on 'hashchange', highlightBlobLines
$(window).on("hashchange", highlightBlobLines)
 
 
@BlobView = BlobView
Loading
Loading
@@ -4,13 +4,13 @@ class CommitsList
limit: 0
offset: 0
@disable = false
@showProgress: ->
$('.loading').show()
@hideProgress: ->
$('.loading').hide()
@init: (ref, limit) ->
$(".day-commits-table li.commit").live 'click', (event) ->
if event.target.nodeName != "A"
Loading
Loading
@@ -21,7 +21,7 @@ class CommitsList
@data.ref = ref
@data.limit = limit
@data.offset = limit
this.initLoadMore()
this.showProgress()
 
Loading
Loading
@@ -32,7 +32,9 @@ class CommitsList
url: location.href
data: @data
complete: this.hideProgress
dataType: "script"
success: (data) ->
CommitsList.append(data.count, data.html)
dataType: "json"
 
@append: (count, html) ->
$("#commits-list").append(html)
Loading
Loading
@@ -40,7 +42,7 @@ class CommitsList
@data.offset += count
else
@disable = true
@initLoadMore: ->
$(document).unbind('scroll')
$(document).endlessScroll
Loading
Loading
Loading
Loading
@@ -22,7 +22,7 @@
backgroundColor: '#DDD'
opacity: .4
)
reload: ->
Issues.initSelects()
Issues.initChecks()
Loading
Loading
@@ -54,7 +54,16 @@
unless terms is last_terms
last_terms = terms
if terms.length >= 2 or terms.length is 0
form.submit()
$.ajax
type: "GET"
url: location.href
data: "issue_search=" + terms
complete: ->
$(".loading").hide()
success: (data) ->
$('.issues-holder').html(data.html)
Issues.reload()
dataType: "json"
 
checkChanged: ->
checked_issues = $(".selected_issue:checked")
Loading
Loading
window.updatePage = (data) ->
$.ajax({type: "GET", url: location.href, data: data, dataType: "script"})
window.slugify = (text) ->
text.replace(/[^-a-zA-Z0-9]+/g, '_').toLowerCase()
 
Loading
Loading
Loading
Loading
@@ -21,7 +21,7 @@ class MergeRequest
this.initMergeWidget()
this.$('.show-all-commits').on 'click', =>
this.showAllCommits()
modal = $('#modal_merge_info').modal(show: false)
 
# Local jQuery finder
Loading
Loading
@@ -83,12 +83,12 @@ class MergeRequest
url: this.$('.nav-tabs .diffs-tab a').attr('href')
beforeSend: =>
this.$('.status').addClass 'loading'
complete: =>
@diffs_loaded = true
this.$('.status').removeClass 'loading'
dataType: 'script'
success: (data) =>
this.$(".diffs").html(data.html)
dataType: 'json'
 
showAllCommits: ->
this.$('.first-commits').remove()
Loading
Loading
$ ->
namespaceFormatResult = (namespace) ->
markup = "<div class='namespace-result'>"
markup += "<span class='namespace-kind'>" + namespace.kind + "</span>"
markup += "<span class='namespace-path'>" + namespace.path + "</span>"
markup += "</div>"
markup
formatSelection = (namespace) ->
namespace.kind + ": " + namespace.path
$('.ajax-namespace-select').each (i, select) ->
$(select).select2
placeholder: "Search for namespace"
multiple: $(select).hasClass('multiselect')
minimumInputLength: 0
query: (query) ->
Api.namespaces query.term, (namespaces) ->
data = { results: namespaces }
query.callback(data)
dropdownCssClass: "ajax-namespace-dropdown"
formatResult: namespaceFormatResult
formatSelection: formatSelection
Loading
Loading
@@ -6,7 +6,7 @@ var NoteList = {
target_type: null,
 
init: function(tid, tt, path) {
NoteList.notes_path = path + ".js";
NoteList.notes_path = path + ".json";
NoteList.target_id = tid;
NoteList.target_type = tt;
NoteList.target_params = "target_type=" + NoteList.target_type + "&target_id=" + NoteList.target_id;
Loading
Loading
@@ -233,10 +233,12 @@ var NoteList = {
form.show();
 
var textarea = form.find("textarea");
var p = $("<p></p>").text(textarea.val());
var hidden_div = $('<div class="note-original-content"></div>').append(p);
form.append(hidden_div);
hidden_div.hide();
if (form.find(".note-original-content").length === 0) {
var p = $("<p></p>").text(textarea.val());
var hidden_div = $('<div class="note-original-content"></div>').append(p);
form.append(hidden_div);
hidden_div.hide();
}
textarea.focus();
},
 
Loading
Loading
@@ -409,7 +411,10 @@ var NoteList = {
data: NoteList.target_params,
complete: function(){ $('.js-notes-busy').removeClass("loading")},
beforeSend: function() { $('.js-notes-busy').addClass("loading") },
dataType: "script"
success: function(data) {
NoteList.setContent(data.html);
},
dataType: "json"
});
},
 
Loading
Loading
@@ -417,7 +422,7 @@ var NoteList = {
* Called in response to getContent().
* Replaces the content of #notes-list with the given html.
*/
setContent: function(newNoteIds, html) {
setContent: function(html) {
$("#notes-list").html(html);
},
 
Loading
Loading
@@ -532,6 +537,8 @@ var NoteList = {
note_text.html(response.note).show();
 
var note_form = note_li.find(".note-edit-form");
var original_content = note_form.find(".note-original-content");
original_content.remove();
note_form.hide();
note_form.find(".btn-save").enableButton();
 
Loading
Loading
Loading
Loading
@@ -19,8 +19,9 @@
data: "limit=" + @limit + "&offset=" + @offset
complete: ->
$(".loading").hide()
dataType: "script"
success: (data) ->
Pager.append(data.count, data.html)
dataType: "json"
 
append: (count, html) ->
$(".content_list").append html
Loading
Loading
Loading
Loading
@@ -40,3 +40,9 @@ $ ->
# Ref switcher
$('.project-refs-select').on 'change', ->
$(@).parents('form').submit()
$('.hide-no-ssh-message').on 'click', (e) ->
path = '/'
$.cookie('hide_no_ssh_message', 'false', { path: path })
$(@).parents('.no-ssh-key-message').hide()
e.preventDefault()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment