<?xml version='1.0' encoding='UTF-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-7550054840203373805</id><updated>2008-10-01T20:10:52.239-07:00</updated><title type='text'>Foorum</title><subtitle type='html'></subtitle><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.foorumbbs.com/atom.xml'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>8</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7550054840203373805.post-3405958089334342694</id><published>2008-10-01T20:10:00.001-07:00</published><updated>2008-10-01T20:10:52.248-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Foorum'/><title type='text'>Foorum 0.2.7 release</title><content type='html'>Please download from &lt;a href="http://foorum.googlecode.com/files/Foorum-0.2.7.tar.gz"&gt;http://foorum.googlecode.com/files/Foorum-0.2.7.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;it's a good code source to learn Catalyst+DBIx::Class+Template and others.&lt;br /&gt;&lt;br /&gt;try &lt;a href="http://www.foorumbbs.com/"&gt;http://www.foorumbbs.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Patches or suggestion is really appreciated.&lt;br /&gt;&lt;br /&gt;Thanks.</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/3405958089334342694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7550054840203373805&amp;postID=3405958089334342694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/3405958089334342694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/3405958089334342694'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/2008/10/foorum-027-release.html' title='Foorum 0.2.7 release'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author></entry><entry><id>tag:blogger.com,1999:blog-7550054840203373805.post-3539501244671709957</id><published>2008-09-14T22:31:00.000-07:00</published><updated>2008-09-14T22:32:04.689-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Foorum'/><title type='text'>a new version of Foorum: 0.2.2</title><content type='html'>&lt;a href="http://code.google.com/p/foorum/downloads/list"&gt;http://code.google.com/p/foorum/downloads/list&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;0.2.2 Mon Sep 15 12:03:00&lt;br /&gt;        - use Catalyst::Plugin::PageCache '0.19' and key_maker&lt;br /&gt;        - split Model/Validation.pm into ResultSet and remove it&lt;br /&gt;        - use 'MooseX::TheSchwartz' and 'TheSchwartz::Simple' to replace 'TheSchwartz'</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/3539501244671709957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7550054840203373805&amp;postID=3539501244671709957' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/3539501244671709957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/3539501244671709957'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/2008/09/new-version-of-foorum-022.html' title='a new version of Foorum: 0.2.2'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author></entry><entry><id>tag:blogger.com,1999:blog-7550054840203373805.post-1175439396945110713</id><published>2008-06-16T18:55:00.000-07:00</published><updated>2008-06-16T19:02:16.955-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Foorum'/><title type='text'>3 day 3 release</title><content type='html'>CPAN generally means responsibility. I released 3 Foorum distribution in the last 3 days.&lt;br /&gt;&lt;br /&gt;CPAN means better document. so I tried to use &lt;a href="http://search.cpan.org/perldoc?DBICx::Autodoc"&gt;DBICx::AutoDoc&lt;/a&gt; to create docs for Foorum::Schema. it's a bit different from the original method in DBICx::AutoDoc. I changed a bit to write pod into Schema files directly.&lt;br /&gt;&lt;br /&gt;code are:(briefly)&lt;pre&gt;my $ad = DBICx::AutoDoc-&gt;new(&lt;br /&gt;    schema =&gt; 'Foorum::Schema',&lt;br /&gt;    output =&gt; File::Spec-&gt;catdir($Bin, '..', '..', 'docs'),&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;# rewrite the Schema pm POD&lt;br /&gt;use Template;&lt;br /&gt;&lt;br /&gt;my $tt2 = Template-&gt;new( { INCLUDE_PATH =&gt; $ad-&gt;include_path, POST_CHOMP =&gt; 0, PRE_CHOMP =&gt; 0 } );&lt;br /&gt;my $vars = $ad-&gt;get_vars;&lt;br /&gt;&lt;br /&gt;# first get the lists of all Foorum::Schema pm files&lt;br /&gt;my @sources = @{ $vars-&gt;{sources} };&lt;br /&gt;foreach my $source (@sources) {&lt;br /&gt;    my $class = $source-&gt;{class}; # Foorum::Schema::User&lt;br /&gt;    &lt;br /&gt;    # make file dir&lt;br /&gt;    my @parts_of_modules = split('::', $class);&lt;br /&gt;    $parts_of_modules[-1] .= '.pm';&lt;br /&gt;    my $file_dir = File::Spec-&gt;catfile( $Bin, '..', '..', 'lib', @parts_of_modules );&lt;br /&gt;    &lt;br /&gt;    my $output;&lt;br /&gt;    $tt2-&gt;process('pod.html', { source =&gt; $source }, \$output)&lt;br /&gt;        || die $tt2-&gt;error(), "\n";&lt;br /&gt;    &lt;br /&gt;    # replace POD in real module&lt;br /&gt;    open(my $fh, '&lt;', $file_dir);&lt;br /&gt;    local $/ = undef;&lt;br /&gt;    my $in = &lt;$fh&gt;;&lt;br /&gt;    close($fh);&lt;br /&gt;    &lt;br /&gt;    my ($code, $pod) = split(/\n1;\n/, $in);&lt;br /&gt;    open(my $fh2, '&gt;', $file_dir);&lt;br /&gt;    print $fh2 "$code\n1;\n__END__\n\n$output\n";&lt;br /&gt;    close($fh2);&lt;br /&gt;    &lt;br /&gt;    print "working on $class\n";&lt;br /&gt;}&lt;/pre&gt; Full code can be found in &lt;a href="http://foorum.googlecode.com/svn/trunk/bin/misc/dbicx_autodoc.pl"&gt;http://foorum.googlecode.com/svn/trunk/bin/misc/dbicx_autodoc.pl&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Thanks.</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/1175439396945110713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7550054840203373805&amp;postID=1175439396945110713' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/1175439396945110713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/1175439396945110713'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/2008/06/3-day-3-release.html' title='3 day 3 release'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author></entry><entry><id>tag:blogger.com,1999:blog-7550054840203373805.post-2474110309033276355</id><published>2008-06-15T00:55:00.000-07:00</published><updated>2008-06-15T00:59:02.228-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Foorum'/><title type='text'>Foorum 0.1.5 release</title><content type='html'>Finally I release the Foorum 0.1.5 after 2 months later. &lt;br /&gt;&lt;br /&gt;CHANGES:&lt;br /&gt;1, Foorum::Search with backend Foorum::Search::Database and Foorum::Search::Sphinx&lt;br /&gt;2, change DATETIME to INT(11) for tables.&lt;br /&gt;&lt;br /&gt;it's a release for my little boy diudiu. :)&lt;br /&gt;&lt;br /&gt;u can get it from &lt;a href="http://foorum.googlecode.com/files/Foorum-0.1.5.tar.gz"&gt;http://foorum.googlecode.com/files/Foorum-0.1.5.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;and I uploaded to CPAN too. &lt;br /&gt;&lt;br /&gt;Thanks.</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/2474110309033276355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7550054840203373805&amp;postID=2474110309033276355' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/2474110309033276355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/2474110309033276355'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/2008/06/foorum-015-release.html' title='Foorum 0.1.5 release'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author></entry><entry><id>tag:blogger.com,1999:blog-7550054840203373805.post-5198093806918150530</id><published>2008-01-19T02:00:00.001-08:00</published><updated>2008-01-19T02:06:06.971-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Foorum'/><title type='text'>Tutorial 5: How to write test cases For Foorum</title><content type='html'>I just wrote another tutorial to say something about test. mainly I'm talking about DBIx::Class Schema test.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/foorum/wiki/Tutorial5"&gt;http://code.google.com/p/foorum/wiki/Tutorial5&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Have fun!</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/5198093806918150530/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7550054840203373805&amp;postID=5198093806918150530' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/5198093806918150530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/5198093806918150530'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/2008/01/tutorial-5-how-to-write-test-cases-for.html' title='Tutorial 5: How to write test cases For Foorum'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author></entry><entry><id>tag:blogger.com,1999:blog-7550054840203373805.post-8118495542817120681</id><published>2008-01-13T01:40:00.000-08:00</published><updated>2008-01-13T01:42:36.644-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Foorum'/><category scheme='http://www.blogger.com/atom/ns#' term='TheSchwartz'/><title type='text'>Tutorial 2: Dive into Foorum: TheSchwartz</title><content type='html'>I wrote my second tutorial for Foorum: &lt;a href="http://code.google.com/p/foorum/wiki/Tutorial2"&gt;Tutorial 2: Dive into Foorum: TheSchwartz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;mainly it's a simple document for introduce TheSchwartz and how Foorum uses it.&lt;br /&gt;&lt;br /&gt;Enjoy!</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/8118495542817120681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7550054840203373805&amp;postID=8118495542817120681' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/8118495542817120681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/8118495542817120681'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/2008/01/tutorial-2-dive-into-foorum-theschwartz.html' title='Tutorial 2: Dive into Foorum: TheSchwartz'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author></entry><entry><id>tag:blogger.com,1999:blog-7550054840203373805.post-3131741037467310895</id><published>2008-01-11T19:42:00.000-08:00</published><updated>2008-01-11T19:45:36.322-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Catalyst'/><category scheme='http://www.blogger.com/atom/ns#' term='Foorum'/><title type='text'>Tutorial 1: Catalyst Plugins used in Foorum</title><content type='html'>I wrote my first tutorial for Foorum: &lt;br /&gt;&lt;a href="http://code.google.com/p/foorum/wiki/Tutorial1"&gt;Catalyst Plugins used in Foorum&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;maily it has:&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::Config::YAML" rel="nofollow"&gt;Catalyst::Plugin::Config::YAML&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::Static::Simple" rel="nofollow"&gt;Catalyst::Plugin::Static::Simple&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::Authentication" rel="nofollow"&gt;Catalyst::Plugin::Authentication&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::Cache" rel="nofollow"&gt;Catalyst::Plugin::Cache&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::Session::DynamicExpiry" rel="nofollow"&gt;Catalyst::Plugin::Session::DynamicExpiry&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::Session" rel="nofollow"&gt;Catalyst::Plugin::Session&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::I18N" rel="nofollow"&gt;Catalyst::Plugin::I18N&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::FormValidator::Simple" rel="nofollow"&gt;Catalyst::Plugin::FormValidator::Simple&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::Captcha" rel="nofollow"&gt;Catalyst::Plugin::Captcha&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://search.cpan.org/perldoc?Catalyst::Plugin::PageCache" rel="nofollow"&gt;Catalyst::Plugin::PageCache&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;with simple words.</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/3131741037467310895/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7550054840203373805&amp;postID=3131741037467310895' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/3131741037467310895'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/3131741037467310895'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/2008/01/tutorial-1-catalyst-plugins-used-in.html' title='Tutorial 1: Catalyst Plugins used in Foorum'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author></entry><entry><id>tag:blogger.com,1999:blog-7550054840203373805.post-6587067848980912887</id><published>2008-01-11T18:49:00.001-08:00</published><updated>2008-01-11T18:49:49.816-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Foorum'/><title type='text'>Foorum 0.1.2 Release</title><content type='html'>0.1.2 Sat Jan 12 9:39:21 2008&lt;br /&gt;    - preview function&lt;br /&gt;    - use jquery.lightbox for comments photos&lt;br /&gt;    - options for create threads or replies&lt;br /&gt;    - send request email for private forum&lt;br /&gt;    - add require Authentication verion (thanks for viacheslav.t)&lt;br /&gt;    - Scraper::MailMan, hmm, just a scrapper test&lt;br /&gt;    - thread mode for Topic/Comments&lt;br /&gt;    - configurable PageCache&lt;br /&gt;    - add CSS::Minifier&lt;br /&gt;&lt;br /&gt;enjoy!</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/6587067848980912887/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7550054840203373805&amp;postID=6587067848980912887' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/6587067848980912887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7550054840203373805/posts/default/6587067848980912887'/><link rel='alternate' type='text/html' href='http://blog.foorumbbs.com/2008/01/foorum-012-release.html' title='Foorum 0.1.2 Release'/><author><name>Fayland</name><uri>http://www.blogger.com/profile/07225127136123374560</uri><email>noreply@blogger.com</email></author></entry></feed>