Friday, November 30, 2007

Add code formatter to your blog

see: http://code.google.com/p/syntaxhighlighter/

You could format ruby like this.


describe RSpec do
  before(:each) do
    @rspec = RSpec.new
  end

  describe "at release 1.0.8" do
    before(:each) do
      @rspec.version = "1.0.8" 
    end

    it "should not support nested example groups" do
      @rspec.should_not support_nested_example_groups
    end
  end

  describe "at release 1.1.0" do
    before(:each) do
      @rspec.version = "1.1.0" 
    end

    it "should support nested example groups" do
      @rspec.should support_nested_example_groups
    end
  end
end

Thursday, November 29, 2007

Integrate your website with joblet seamlessly

For most of website that integrated joblet like asoboo. right now just link to http://asoboo.joblet.jp

But you may not want your user go out of your own domain. If you want to do so, You need to create a subdomain for you website, because things like http://asoboo.com/jobs simple not very easy to work. (all inside url of joblet is begain with / )

So For Apache, create a virtual host

ServerName jobs.asoboo.com

<Directory proxy:http://asoboo.joblet.jp>
    Order Allow,Deny
    Allow from all
</Directory>

ProxyPass / http://asoboo.joblet.jp/
ProxyPassReverse  / http://asoboo.joblet.jp/

And Then you can point your browser to http://jobs.asoboo.com, :)

Saturday, October 27, 2007

Different ps command in Solaris

What I am interresting is:

why /usr/ucb/ps command is having out put differnet than

/usr/bin/ps

I CAN'T run /usr/bin/ps axuwwww

but I can under /usr/ucb/ps

Or /usr/ucb/ps -ef does not work, but

/usr/bin/ps -ef does work.

Wednesday, October 24, 2007

Put 503 page for your rails application

Put

ErrorDocument 503 /503.html

in apache configuration for you rails application, because when you
deploy , mongrels may take some time to restart.

Monday, October 22, 2007

Fwd: warning: already initialized constant OPTIONS

Something required can not be loaded in your environment file, or in plugins

=> Booting Mongrel (use 'script/server webrick' to force WEBrick)
=> Rails application starting on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
** Starting Mongrel listening at 0.0.0.0:3000
** Starting Rails with development environment...
Exiting
/usr/lib/ruby/gems/1.8/gems/rails-1.2.4/lib/commands/servers/mongrel.rb:15:
warning: already initialized constant OPTIONS
/usr/lib/ruby/gems/1.8/gems/rails-1.2.4/lib/commands/servers/mongrel.rb:18:
undefined method `options' for []:Array (NoMethodError)
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:32:in
`gem_original_require'
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:32:in
`require'
from /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.3/lib/active_support/dependencies.rb:495:in
`require'
from /usr/lib/ruby/gems/1.8/gems/activesupport-
1.4.3/lib/active_support/dependencies.rb:342:in `new_constants_in'
from /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.3/lib/active_support/dependencies.rb:495:in
`require'
from /usr/lib/ruby/gems/1.8/gems/rails- 1.2.4/lib/commands/server.rb:39
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in
`gem_original_require'
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require'
from ./script/server:3

Merge a branch r123:569 to trunk subversion

svn log --stop-on-copy http://svnserver/code/some_project/branches/release_12

to find out when the branch created, you know that at 942 revision, you created the branch

svn merge http://svnserver/code/some_project/branches/release_12 -r942:HEAD .

Sunday, October 21, 2007

Run single test passed, but run all tests as a whole will fail that test

In my situation

I didn't load required fixture on that failed test when run all tests as a whole
when I run that special single test, because you already run all tests before,
and in some tests It loaded the fixture that you special test needed, and didn't clear
test database when you only run that special test. So It pass.

Thursday, October 11, 2007

Read Gmane mailing list with Emacs

C-u M-x gnus # Start gnus and prompt for server

news.gmane.org # The Gmane nntp server

A A # List all groups

C-s scheme.chicken <RET> <RET> # Find the chicken Scheme list

from: http://dharmatech.onigirihouse.com/emacs-gnus-gmane

Saturday, October 06, 2007

Using copy to combine binary file

copy /B somefile.zip.aa+somefile.zip.ab somefile.zip

Friday, September 28, 2007

Outbound Port25 Blocking

sudo postconf -e relayhost=mail.qb3.so-net.ne.jp

Thursday, September 20, 2007

FInd slow actions in a Rails app

# Show a list of actions sorted by time taken. Useful for finding slow actions.
cat log/development.log | awk '/Completed/ { print "[" $3 "] - " $0 }'
| sort -nr

from: http://snippets.dzone.com/posts/show/4440

Thursday, September 13, 2007

Don't override to_json like this

I don't know why our project override this method
class String
def to_json
"'#{self}'"
end
end

Because of this , The RJS totally don't work
and You get "unterminated string literal" because of not escaped javascript.

Wednesday, September 12, 2007

Show all files in the Finder

Show all files in the Finder

Open Terminal, type this command, and press Enter:

defaults write com.apple.Finder AppleShowAllFiles YES

Sunday, September 09, 2007

Ways to run ruby tests

1. rake
2. rake -T test
3. ruby test/unit/product_test.rb
4. ruby test/unit/product_test.rb -v
5. ruby test/unit/product_test.rb -n /create/ -v
6. rake test:units TESTOPTS="-v -n/create/"

Possibility with scoped_proxy

class User < ActiveRecord::Base
scoped_proxy :admins, :find => { :conditions => ['role = ?', 'super_user'] }
scoped_proxy :has_login do |login|
{ :find => { :conditions => ['login = ?', login] } }
end
scoped_proxy :no_op do
nil
end
end

# This gives you the first administrator of the system
User.admins.find(:first)
# This counts the administrators
User.admins.count

# All users with a given login
User.has_login('foo').count
User.has_login('foo').find(:all, :order => 'created_at desc')

# And finally, I give you the no op
User.no_op.find(:all) # => User.find(:all)

Thursday, September 06, 2007

psql: FATAL: IDENT authentication failed for user

Everytime I log in using normal user, I got this message:

$ psql -U gateadmin template1
psql: FATAL: IDENT authentication failed for user "gateadmin"

Why?

It looks like you would rather use password authentication than the
default IDENT-based auth (it's default in Debian distro of postgres
anyway). IDENT will only let you in when you do *not* use -U, ie,
your postgres user name is the same as your Unix user name. Change
this in pg_hba.conf, and don't forget to SIGHUP or restart the
postmaster afterwards.

regards, tom lane

Solution:

Just modify pg_hba.conf like this (change to trust)

local all trust
host all 127.0.0.1 255.255.255.255 trust

Tuesday, July 31, 2007

Unit test with transaction in rails

  uses_transaction :test_something_with_transaction
  def test_something_with_transaction
    ...
  end

Tuesday, July 24, 2007

missing key: categories: Cannot read the portsdb!

[asoboo@turbine-02 /usr/local/sites/asoboo.com/current]$ sudo
portupgrade -a
[Updating the portsdb <format:bdb_btree> in /usr/ports ... - 17433
port entries found
.........1000.........2000.........3000.........4000.........5000.........6000.........7000.........8000.........9000.........10000.........11000.........12000.........13000.........14000.........15000.........16000.........17000....
..... done]
[missing key: categories] [Updating the portsdb <format:bdb_btree> in
/usr/ports ... - 17433 port entries found
.........1000.........2000.........3000.........4000.........5000.........6000.........7000.........8000.........9000.........10000.........11000.........12000.........13000.........14000.........15000.........16000.........17000....
..... done]
missing key: categories: Cannot read the portsdb!
/usr/local/lib/ruby/site_ruby/1.8/portsdb.rb:567:in `open_db':
database file error (PortsDB::DBError)
from /usr/local/lib/ruby/site_ruby/1.8/portsdb.rb:736:in `port'
from /usr/local/lib/ruby/site_ruby/1.8/portsdb.rb:924:in
`all_depends_list'
from /usr/local/lib/ruby/site_ruby/1.8/pkgdb.rb:915:in `tsort_build'
from /usr/local/lib/ruby/site_ruby/1.8/pkgdb.rb:907:in `each'
from /usr/local/lib/ruby/site_ruby/1.8/pkgdb.rb:907:in `tsort_build'
from /usr/local/lib/ruby/site_ruby/1.8/pkgdb.rb:929:in `sort_build'
from /usr/local/lib/ruby/site_ruby/1.8/pkgdb.rb:933:in `sort_build!'
from /usr/local/sbin/portupgrade:694:in `main'
from /usr/local/lib/ruby/1.8/optparse.rb:755:in `initialize'
from /usr/local/sbin/portupgrade:210:in `new'
from /usr/local/sbin/portupgrade:210:in `main'
from /usr/local/sbin/portupgrade:1981


portupgrade moved from /usr/ports/sysutils/portupgrade to
/usr/ports/ports-mgmt/portupgrade, one way to fix this is:

cd /usr/ports/ports-mgmt/portupgrade
make clean all install

Or I think portupgrade -f portupgrade might do.

Monday, July 23, 2007

spawn-fcgi.c.211: child exited with: 127, Unknown error: 127

# ./script/process/spawner fcgi -e staging -p 7000 -i 5
=> Starting FCGI dispatchers
Checking if something is already running on 0.0.0.0:7000...NO
Starting dispatcher on port: 0.0.0.0:7000
exec: /usr/local/sites/somesite/releases/20070723060143/public/dispatch.fcgi:
not found
spawn-fcgi.c.211: child exited with: 127, Unknown error: 127


fixed by changing dispatch.fcgi

#!/opt/local/bin/ruby

to

#!/usr/local/bin/ruby

/tmp/502/nl.uu.phil.SSHAgent.socket (Errno::ENOENT)

ssh login when Capistrano deployment failed with that message. Running
(on Mac OS):

$ ssh-agent bash
$ ssh-add
and then running cap tasks fixed the problem for now.