Ah, I missed that one. I'm completely new to git and github, so how do I perform a pull request?
I just forked the communityengine with "git clone --depth 1 git://github.com/bborn/communityengine.git vendor/plugins/ community_engine". Where do I go from here? On 18 Jan., 20:39, "Carl Fyffe" <[email protected]> wrote: > You are right, no one has used CE in Postgres. The docs even say as > much. This list of changes is great, but if you sent a pull request > with passing tests that would be even better. Awesome work. > > On 1/18/09, jak4 <[email protected]> wrote: > > > > > Hi, > > > I'm a little bit confused. Did no one ever run CE with a PostgreSQL > > database? It really seems so unlikely. > > > Well, I made the following modifications to let it Start-Up and pass > > almost all tests. Two tests are failing, but I couldn't figure out > > what goes wrong. The same code in irb produces the expected results. > > > a) as stated in my first post: the values "0" and "1" (within the > > fixtures) are not correctly > > translated to their boolean Postgresql values. I assume that > > ActiveRecord by convention doesn't touch Integer values. Therefore > > those values have to be replaced with true/false and ActiveRecord will > > take care of substituting the correct values for the underlying > > database. > > > b) the second error from my first post: the following modification to > > User.rb / find_by_activity took care of that. What I did was just > > returning the user_id for activity. ActiveRecord builds a model from > > the data, albeit a non-functional one. > > activities = Activity.since(options[:since]).find(:all, > > :select => 'activities.user_id, count(*) as count', > > :group => 'activities.user_id', > > :conditions => "#{options[:require_avatar] ? ' users.avatar_id > > IS NOT NULL' : nil}", > > :order => 'count DESC', > > :joins => "LEFT JOIN users ON users.id = activities.user_id", > > :limit => options[:limit] > > ) > > activities.map{|a| find(a.user_id) } > > > c) in post.rb row 33. A named scope with '1' as a condition became > > named_scope :by_featured_writers, :conditions => > > ["users.featured_writer = ?", true], :include => :user > > > d) Migration 022_create_contests: the two columns 'begin' and 'end' > > should/can not be used. According to this: > >http://www.postgresql.org/docs/7.3/static/sql-keywords-appendix.html > > are both keywords reserved in SQL99 and SQL92, but only 'end' is > > used within PostgreSQL. This means select statements involving a > > column named 'begin' will work in PostgreSQL but those statements > > containing 'end' will fail. > > Changed the migration to: 'begin_date' and 'end_date' > > > d1) in Class Contests, replacing of begin/end accordingly > > > e) Migration 060_still_more_indexes creates an index over two columns, > > but drops the index 'taggable_id' defined in migration > > 045_adding_indexes. Modified remove_index in 060_still_more_indexes to > > drop the defined index. > > remove_index :taggings, :column => [:taggable_id, :taggable_type] > > > f) base_controller.rb / popular_tags: changed group by clause > > sql += " GROUP BY tags.id, tags.name" > > > g) user.rb / named_scopse: 0/1 instead of true/false > > named_scope :featured, :conditions => ["users.featured_writer = ?", > > true] > > named_scope :featured, :conditions => ["users.featured_writer = ?", > > true] > > > h) in comment.rb / previous_commenters_to_notify: the ":group => > > "users.id" seems to be not necessary. Furthermore it generates a > > PostgreSQL error. > > > i) posts_controller.rb / popular: changed group by clause > > WHERE tags.id = taggings.tag_id GROUP BY tags.id, tags.name"); > > > j) tag.rb / related_tags: changed group by clause (twice) > > GROUP BY tags.id, tags.name > > sql += " GROUP BY tags.id, tags.name" > > > k) contest / validates_presence_of: modified to reflect table changes > > > validates_presence_of :begin_date, :end_date, :title, :banner_title, > > :banner_subtitle > > > k1) contests_controller_test.rb / test_should_create_contest: begin/ > > end changed accordingly > > post :create, :contest => {:title => 'created from > > tests', :banner_title => 'created from tests', :banner_subtitle => > > 'created from tests', :begin_date => 500.days.ago.to_s, :end_date => > > 0.days.ago.to_s } > > > k2) contests_controller_test.rb / test_should_require_title: begin/end > > changed accordingly > > post :create, :contest => {:banner_title => 'created from > > tests', :banner_subtitle => 'created from tests', :begin_date => > > 500.days.ago.to_s, :end_date => 0.days.ago.to_s } > > > k3) contest_test.rb / test_transform_post: begin/end changed > > accordingly > > cat = Contest.new(:begin_date => Time.now, :end_date => Time.now + > > 30.days, :title => 'test contest', :banner_title => 'test > > contest', :banner_subtitle => 'test contest', :raw_post => "<script></ > > script>") > > > k4) contests.yml: begin/end changed accordingly > > begin_date: <%= 500.days.ago.to_s :db %> > > end_date: <%= 1.days.ago.to_s :db %> > > > bggin_date: <%= 500.days.ago.to_s :db %> > > end_date: <%= (0.days.ago + 4.days).to_s :db %> > > > k5) views/contests/new.html.erb: begin/end changed accordingly > > <p><%= f.date_select :begin_date %></p> > > <p><%= f.date_select :end_date %></p> > > > k6) views/contests/edit.html.erb: begin/end changed accordingly > > <p><%= f.date_select :begin_date %></p> > > <p><%= f.date_select :end_date %></p> > > > k7) contest.rb / start_time && end_time: begin/end changed accordingly > > self.begin_date > > self.end_date > > > k8) views/contests/show.html.erb: begin/end changed accordingly > > <h3>From <%= @contest.begin_date.strftime("%B %d, %Y") %> To <%= > > @contest.end_date.strftime("%B %d, %Y") %></h3> > > > k9) contest.rb / active?: begin/end changed accordingly > > (self.begin_date < Time.now ) and (self.end_date > Time.now ) > > > l) Migration 010_create_invitations.rb: fk referencing user_id is > > defined as string, changed to integer > > t.column "user_id", :integer > > > m) clippings_controller_test.rb / test_should_create_clipping: tags > > returned for clipping are not in the same order as they where > > specified at creation. Current test fails since it expects the same > > order. Added sort to sort the tags after retrieval > > assert_equal ['tag1', 'tag2'], clipping.tag_list.sort > > > m1) clippings_controller_test.rb / test_should_update_clipping: same > > as m, added sort > > assert_equal ['tagX', 'tagY'], clipping.tag_list.sort > > > n) post.rb / find_most_commented: group by > > :group => self.columns.map{|column| self.table_name + "." + > > column.name}.join(","), > > > o) Migration 047_add_polls.rb: fk user_id defined as string, changed > > to integer > > t.column :user_id, :integer > > > p) topics.controller_test.rb / > > test_sticky_and_locked_protected_from_non_admin: I'm not sure about > > this, but it seems, that the object was not correctly referenced to be > > found/instantiated during the test. Added forums(..) around the > > object. > > assert ! users(:joe).moderator_of?(forums(:rails)) > > > q) users_controller_test.rb / test_should_activate_user: I think > > setting the activation code to nil is not the way to go. Instead it > > should be a fairly unique string. > > users(:quentin).activation_code = ':quentin_activation_code' > > > r) post_test.rb / test_update_poll: The test tried to update a poll > > created by fixture. I guess, this poll already had some answers (not > > empty) since it would get updated. The new poll is now created for a > > post which doesn't already have a poll. > > assert posts(:not_funny_post).create_poll({:question => 'Who can > > have a great time?'}, ['I can', 'You can', 'No one can']) > > > assert posts(:not_funny_post).update_poll({:question => 'Who can > > have a terrible time?'}, ['Foo', 'Bar']) > > > assert_equal 'Who can have a terrible time?', posts > > (:not_funny_post).poll.question > > assert_equal 'Foo', posts > > (:not_funny_post).poll.choices.first.description > > assert_equal 'Bar', posts > > (:not_funny_post).poll.choices.last.description > > > s) clipping_test.rb / test_should_get_clipping_image: wrong assertion > > data? One clipping is created but the assert_difference expects 4 > > additional? > > assert_difference Asset, :count, 1 do > > > On 17 Jan., 12:47, jak4 <[email protected]> wrote: > >> Hi, > > >> I just started playing around with CE. Unfortunately there seems to be > >> some problems with Postgresql. > > >> First, the values "0" and "1" (within the fixtures) are not correctly > >> translated to their boolean Postgresql values. Whatever went wrong > >> there, changing those values to "false" and "true" took care of that. > > >> Second and more severe is the error thrown by Postgresql for the > >> following statement: > >> SELECT *, count(*) as count FROM "activities" LEFT JOIN users ON > >> users.id = activities.user_id WHERE (activities.created_at > > >> '2009-01-10 11:21:33.504753') GROUP BY activities.user_id ORDER BY > >> count DESC LIMIT 5 > > >> Postgresql states that: ERROR: column "activities.id" must appear in > >> the GROUP BY clause or be used in an aggregate function. > > >> And of course this makes sense, since Postgresql could only guess the > >> other values need for the "Select *" part of the query. > > >> Any ideas on how this could be fixed? > > >> Best regards > >> Johannes > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "CommunityEngine" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/communityengine?hl=en -~----------~----~----~----~------~----~------~--~---
