mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-09 12:46:07 +10:00
Merge branch 'fix-todos' into 'master'
Fix error 500 in Todos Closes #14095 Closes #14075 Closes #14109 Closes #14151 See merge request !3141
This commit is contained in:
committed by
Rémy Coutable
parent
62fc5b6ab5
commit
fe4d3abead
@@ -14,7 +14,8 @@ v 8.6.0 (unreleased)
|
||||
- Increase the notes polling timeout over time (Roberto Dip)
|
||||
|
||||
v 8.5.5
|
||||
- No changes
|
||||
- Ensure removing a project removes associated Todo entries.
|
||||
- Prevent a 500 error in Todos when author was removed.
|
||||
|
||||
v 8.5.4
|
||||
- Do not cache requests for badges (including builds badge)
|
||||
|
||||
@@ -72,7 +72,7 @@ module ApplicationHelper
|
||||
if user_or_email.is_a?(User)
|
||||
user = user_or_email
|
||||
else
|
||||
user = User.find_by(email: user_or_email.downcase)
|
||||
user = User.find_by(email: user_or_email.try(:downcase))
|
||||
end
|
||||
|
||||
if user
|
||||
|
||||
@@ -151,6 +151,7 @@ class Project < ActiveRecord::Base
|
||||
has_many :releases, dependent: :destroy
|
||||
has_many :lfs_objects_projects, dependent: :destroy
|
||||
has_many :lfs_objects, through: :lfs_objects_projects
|
||||
has_many :todos, dependent: :destroy
|
||||
|
||||
has_one :import_data, dependent: :destroy, class_name: "ProjectImportData"
|
||||
|
||||
|
||||
@@ -3,9 +3,12 @@
|
||||
= image_tag avatar_icon(todo.author_email, 40), class: 'avatar s40', alt:''
|
||||
|
||||
.todo-title
|
||||
%span.author_name
|
||||
= link_to_author todo
|
||||
%span.todo_label
|
||||
%span.author-name
|
||||
- if todo.author
|
||||
= link_to_author(todo)
|
||||
- else
|
||||
(removed)
|
||||
%span.todo-label
|
||||
= todo_action_name(todo)
|
||||
= todo_target_link(todo)
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
class FixTodos < ActiveRecord::Migration
|
||||
def up
|
||||
execute <<-SQL
|
||||
DELETE FROM todos
|
||||
WHERE todos.target_type IN ('Commit', 'ProjectSnippet')
|
||||
OR NOT EXISTS (
|
||||
SELECT *
|
||||
FROM projects
|
||||
WHERE projects.id = todos.project_id
|
||||
)
|
||||
SQL
|
||||
end
|
||||
|
||||
def down
|
||||
end
|
||||
end
|
||||
+1
-1
@@ -11,7 +11,7 @@
|
||||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(version: 20160222153918) do
|
||||
ActiveRecord::Schema.define(version: 20160309140734) do
|
||||
|
||||
# These are extensions that must be enabled in order to support this database
|
||||
enable_extension "plpgsql"
|
||||
|
||||
@@ -68,6 +68,7 @@ describe Project, models: true do
|
||||
it { is_expected.to have_many(:runners) }
|
||||
it { is_expected.to have_many(:variables) }
|
||||
it { is_expected.to have_many(:triggers) }
|
||||
it { is_expected.to have_many(:todos).dependent(:destroy) }
|
||||
end
|
||||
|
||||
describe 'modules' do
|
||||
|
||||
Reference in New Issue
Block a user