Changes for version 0.100_002 - 2015-10-31
- New features
- [GH #57] `yattup` - `plackup` alike command for `*.yatt` files.
 - [GH #54] - !yatt:base "file_or_dir" to inherit templates.
 
 - Enhancement (Potentially breaking)
- [GH #51] Add experimental `per_role_docroot` feature.
 - [GH #56] Install psgi_fallback by default (to make `yattup` useful).
 - Add new option `always_refresh_deps` to fix [GH #1] partially.
 - [GH #60] Set HTTP Status for "Not found" and "Bad request" errors. To revert old behavior, set `overwrite_status_code_for_errors_as` to 200.
 - YATT::Lite::Error now exports type alias 'Error' by default.
 - New method: `($yatt|$con)->error_with_status($code, $msg, @args)`
 
 - Misc changes:
- [GH #59] yatt, yattup should resolve symlink once and only once.
 - [GH #58] c3 mro support in `use YATT::Lite::Factory -as_base`.
 
 - BUG fixes:
- [GH #61] no warnings 'redundant' for sprintf. (partially)
 - [GH #55] *base* templates accidentally inherit their *user* directory bug
 - [GH #53] - Allow setting dont_map_args in SiteApp.
 
 
Changes for version 0.100_001 - 2015-09-03
- Enhanement (API Change) for unicode handling:
- [GH #48] decode input params by default. Add new option `no_unicode` for backward compatibility.
 - [GH #45] YATT::Lite::Factory->render now returns decoded string by default.
 
 - Enhanement to help testing:
- [GH #47] $site->mount_action($location => $action_sub)) and $dir->set_action_handler($filename => sub ($this, $con))
 - [GH #16] $site->mount_psgi($location => $psgi_app)
 
 - Fixes
- [GH #50] [RT #106776] Test failure (caused by SQLite).
 - [GH #49] use safer fatalized warnings.
 - [GH #46] convert_array_param(parse_nested_query) conflicts with Plack::Request->upload.
 
 
Documentation
Loose but Recursive XML (LRXML) format.    
  
Extended Header Fields (XHF) フォーマットの構文定義    
  
Extended Header Fields (XHF) format.    
  
perl プログラマー向け yatt 内部構造解説(日本語版)    
  
programmer's guide for YATT    
  
初めにお読み下さい (日本語版)    
  
Introduction to YATT::Lite    
  
課題の一覧    
  
or Modern use of fields.pm and %FIELDS.    
  
なんでやっとやんの?    
  
Perl Monger のための yatt (YATT::Lite) ガイド    
  
yatt 構文マニュアル (日本語版)    
  
yatt syntax manual    
  
plackup alike for yatt_lite    
  Modules
Template with "use strict"    
  
Loader for YATT::Lite    
  
fields for multiple inheritance.    
  
fields based, Tcl/Tk like object    
  
define inner types at compile time.    
  
output buffer with request properties    
  
PSGI Handler for yatt    
  
Loader for XHF format    
  
Serializer for XHF format    
  Provides
      in Lite/Breakpoint.pm
    
  
      in Lite/CGen.pm
    
  
      in Lite/CGen/Perl.pm
    
  
      in Lite/Connection.pm
    
  
      in Lite/Constants.pm
    
  
      in Lite/Core.pm
    
  
      in Lite/Entities.pm
    
  
      in Lite/Error.pm
    
  
      in Lite/Inc.pm
    
  
      in Lite/LRXML.pm
    
  
      in Lite/LRXML/ParseBody.pm
    
  
      in Lite/LRXML/ParseEntpath.pm
    
  
      in Lite/LRXML/ParseBody.pm
    
  
      in Lite/LRXML/ParseEntpath.pm
    
  
      in Lite/MFields.pm
    
  
      in Lite/Macro.pm
    
  
      in Lite/NSBuilder.pm
    
  
      in Lite/PSGIEnv.pm
    
  
      in Lite/Partial.pm
    
  
      in Lite/Partial/AppPath.pm
    
  
      in Lite/Partial/ErrorReporter.pm
    
  
      in Lite/Partial/Gettext.pm
    
  
      in Lite/RegexpNames.pm
    
  
      in Lite/Test/TestFCGI.pm
    
  
      in Lite/Test/TestUtil.pm
    
  
      in Lite/Test/XHFTest.pm
    
  
      in Lite/Test/XHFTest2.pm
    
  
      in Lite/Test/XHFTest.pm
    
  
      in Lite/Types.pm
    
  
      in Lite/Util.pm
    
  
      in Lite/Util/AsBase.pm
    
  
      in Lite/Util/CGICompat.pm
    
  
      in Lite/Util/CmdLine.pm
    
  
      in Lite/Util/CycleDetector.pm
    
  
      in Lite/Util/Enum.pm
    
  
      in Lite/Util/File.pm
    
  
      in Lite/Util/FindMethods.pm
    
  
      in Lite/VFS.pm
    
  
      in Lite/VarMaker.pm
    
  
      in Lite/VarTypes.pm
    
  
      in Lite/VarTypes.pm
    
  
      in Lite/WebMVC0/DBSchema.pm
    
  
      in Lite/WebMVC0/DBSchema/DBIC.pm
    
  
      in Lite/WebMVC0/DBSchema/DBIC.pm
    
  
      in Lite/WebMVC0/DirApp.pm
    
  
      in Lite/WebMVC0/Partial/LangSwitch.pm
    
  
      in Lite/WebMVC0/Partial/Session.pm
    
  
      in Lite/WebMVC0/SiteApp/CGI.pm
    
  
      in Lite/WebMVC0/SiteApp/FCGI.pm
    
  
      in Lite/WebMVC0/SiteApp/CGI.pm
    
  
      in Lite/WebMVC0/SiteApp/FCGI.pm
    
  
      in Lite/WebMVC0/SubRoutes.pm
    
  
      in Lite/XHF/StoreDir.pm
    
  Examples
- samples/app.psgi
 - samples/basic/1/.symlinks
 - samples/basic/1/app.psgi
 - samples/basic/1/html/envelope.ytmpl
 - samples/basic/1/html/foo.ydo
 - samples/basic/1/html/foobar.yatt
 - samples/basic/1/html/noncode.ydo
 - samples/basic/1/html/perlerr.yatt
 - samples/basic/1/html/varerr.yatt
 - samples/basic/1/t/http_localhost.t
 - samples/basic/1/t/lntests.zsh
 - samples/basic/1/t/psgi_offline.t
 - samples/basic/10/app.psgi
 - samples/basic/10/app.xhf
 - samples/basic/10/t/.htaccess
 - samples/basic/10/t/1-basic.xhf
 - samples/basic/10/t/fcgi_offline.t
 - samples/basic/10/t/http_localhost.t
 - samples/basic/11/html/base2/bar.ytmpl
 - samples/basic/11/html/t1.yatt
 - samples/basic/11/t/.htaccess
 - samples/basic/11/t/fcgi_offline.t
 - samples/basic/12/app.psgi
 - samples/basic/12/html/index.yatt
 - samples/basic/12/t/.htaccess
 - samples/basic/12/t/1-basic.xhf
 - samples/basic/12/t/http_localhost.t
 - samples/basic/12/t/offline.t
 - samples/basic/12/ytmpl/.htyattrc.pl
 - samples/basic/2/.symlinks
 - samples/basic/2/html/index.yatt
 - samples/basic/2/t/.htaccess
 - samples/basic/2/t/.symlinks
 - samples/basic/2/t/1-basic.xhf
 - samples/basic/2/t/fcgi_offline.t
 - samples/basic/2/t/offline.t
 - samples/basic/2/ytmpl/error.ytmpl
 - samples/basic/2/ytmpl/std.ytmpl/envelope.ytmpl
 - samples/basic/3/.symlinks
 - samples/basic/3/t/1-basic.xhf
 - samples/basic/3/t/fcgi_offline.t
 - samples/basic/3/t/http_localhost.t
 - samples/basic/3/t/offline.t
 - samples/basic/3/t/psgi_offline.t
 - samples/basic/4/app.psgi
 - samples/basic/4/html/index.yatt
 - samples/basic/4/t/.htaccess
 - samples/basic/4/t/fcgi_offline.t
 - samples/basic/4/t/http_localhost.t
 - samples/basic/4/t/offline.t
 - samples/basic/5/.symlinks
 - samples/basic/5/html/error.ytmpl
 - samples/basic/5/html/varerr.yatt
 - samples/basic/5/t/.htaccess
 - samples/basic/5/t/.symlinks
 - samples/basic/5/t/1-basic.xhf
 - samples/basic/5/t/http_localhost.t
 - samples/basic/5/t/offline.t
 - samples/basic/5/t/psgi_offline.t
 - samples/basic/5/ytmpl/.htaccess
 - samples/basic/5/ytmpl/std.ytmpl/envelope.ytmpl
 - samples/basic/6/app.psgi
 - samples/basic/6/html/.htyattconfig.xhf
 - samples/basic/6/t/.symlinks
 - samples/basic/6/t/1-basic.xhf
 - samples/basic/6/t/http_localhost.t
 - samples/basic/6/t/psgi_offline.t
 - samples/basic/7/t/.htaccess
 - samples/basic/7/t/1-basic.xhf
 - samples/basic/7/t/psgi_offline.t
 - samples/basic/8/app.psgi
 - samples/basic/8/extlib/t_undef_error.pm
 - samples/basic/8/html/index.yatt
 - samples/basic/8/t/.symlinks
 - samples/basic/8/t/1-basic.xhf
 - samples/basic/8/t/fcgi_offline.t
 - samples/basic/8/t/http_localhost.t
 - samples/basic/8/t/offline.t
 - samples/basic/8/t/psgi_offline.t
 - samples/basic/9/html/subapp1/.htyattconfig.yml
 - samples/basic/9/html/subapp1/index.yatt
 - samples/basic/9/t/fcgi_offline.t
 - samples/basic/9/t/psgi_offline.t
 - samples/basic/addtest.zsh
 - samples/benchmarks/results/author.txt
 - samples/benchmarks/runall.zsh
 - samples/benchmarks/template/base.tx
 - samples/benchmarks/template/child.mt
 - samples/benchmarks/template/child.yatt
 - samples/benchmarks/template/include.cs
 - samples/benchmarks/template/include.mt
 - samples/benchmarks/template/include.yatt
 - samples/benchmarks/template/list.mt
 - samples/benchmarks/template/list.tj
 - samples/benchmarks/template/list.tt
 - samples/benchmarks/template/list.yatt
 - samples/benchmarks/yt-for.pl
 - samples/benchmarks/yt-x-poor-env.pl
 - samples/db_backed/1/.symlinks
 - samples/db_backed/1/app.psgi
 - samples/db_backed/1/html/envelope.ytmpl
 - samples/db_backed/1/html/main.css
 - samples/db_backed/1/html/printenv.yatt
 - samples/db_backed/1/html/register.yatt
 - samples/db_backed/1/t/.htaccess
 - samples/db_backed/1/t/.symlinks
 - samples/db_backed/1/t/1-basic.xhf
 - samples/db_backed/1/t/basic.inc.xhf
 - samples/db_backed/1/t/t_lib.pl
 - samples/db_backed/1/t/z_cleanup.t
 - samples/db_backed/1/var/.htaccess
 - samples/db_backed/1/ytmpl/.htaccess
 - samples/db_backed/1/ytmpl/error.ytmpl
 - samples/db_backed/1/ytmpl/std.ytmpl/envelope.ytmpl
 - samples/db_backed/2/html/.symlinks
 - samples/db_backed/2/html/login.ydo
 - samples/db_backed/2/html/register.yatt
 - samples/db_backed/2/t/0register.t
 - samples/db_backed/2/t/1-basic.xhf
 - samples/db_backed/2/t/basic.inc.xhf
 - samples/db_backed/2/t/http_localhost.t
 - samples/db_backed/2/t/psgi_offline.t
 - samples/db_backed/2/t/z_cleanup.t
 - samples/mysql-use-htdbpass.zsh
 - samples/runyatt.cgi
 - samples/sess_backed/1/app.psgi
 - samples/sess_backed/1/html/.htyattconfig.xhf
 - samples/sess_backed/1/html/.htyattrc.pl
 - samples/sess_backed/1/html/00readme.html
 - samples/sess_backed/1/html/envelope.ytmpl
 - samples/sess_backed/1/html/error.ytmpl
 - samples/sess_backed/1/html/index.yatt
 - samples/sess_backed/1/html/main.css
 - samples/sess_backed/1/t/.htaccess
 - samples/sess_backed/1/t/.symlinks
 - samples/sess_backed/1/t/1-basic.xhf
 - samples/sess_backed/1/t/http_localhost.t
 - samples/sess_backed/1/t/offline.t
 - samples/sess_backed/1/t/psgi_offline.t
 - samples/sess_backed/1/var/.htaccess
 - samples/toy/toyedit1/html/edit.yatt
 - samples/toy/toyedit1/t/.htaccess
 - samples/toy/toyedit1/ytmpl/std.ytmpl/envelope.ytmpl
 - samples/ylpodview/approot/app.psgi
 - samples/ylpodview/approot/html/vendor/bootstrap/css/bootstrap.css
 - samples/ylpodview/approot/html/vendor/bootstrap/css/bootstrap.min.css
 - samples/ylpodview/approot/html/vendor/bootstrap/css/bootstrap.min.css.gz
 - samples/ylpodview/approot/html/vendor/bootstrap/img/glyphicons-halflings.png
 - samples/ylpodview/approot/html/vendor/bootstrap/js/bootstrap.min.js
 - samples/ylpodview/approot/html/vendor/jquery/jquery-1.8.2.min.js
 - samples/ylpodview/approot/html/vendor/jquery/jquery-1.8.2.min.js.gz
 - samples/ylpodview/approot/html/vendor/jquery/jquery.min.js
 - samples/ylpodview/approot/html/vendor/jquery/jquery.min.js.gz
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_berries-dark.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_berries-light.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_berries-light.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_bright.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_darkblue.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_darkblue.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_darkness.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_darkness.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_desert.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_dull.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_easter.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_easter.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_emacs.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_emacs.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_golden.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_greenlcd.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_greenlcd.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_ide-anjuta.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_ide-anjuta.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_ide-codewarrior.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_ide-codewarrior.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_ide-devcpp.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_ide-eclipse.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_ide-msvcpp.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_kwrite.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_matlab.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_matlab.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_navy.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_nedit.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_neon.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_neon.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_night.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_pablo.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_peachpuff.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_peachpuff.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_rand01.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_the.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_the.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_vampire.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_vampire.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_vim-dark.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_vim.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_whatis.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_whitengrey.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_whitengrey.min.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_zellner.css
 - samples/ylpodview/approot/html/vendor/shjs/css/sh_zellner.min.css
 - samples/ylpodview/approot/html/vendor/shjs/doc/documentation.html
 - samples/ylpodview/approot/html/vendor/shjs/doc/gplv3-88x31.png
 - samples/ylpodview/approot/html/vendor/shjs/doc/gplv3.html
 - samples/ylpodview/approot/html/vendor/shjs/doc/license.html
 - samples/ylpodview/approot/html/vendor/shjs/doc/links.html
 - samples/ylpodview/approot/html/vendor/shjs/doc/news.html
 - samples/ylpodview/approot/html/vendor/shjs/index.html
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_c.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_changelog.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_cpp.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_csharp.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_csharp.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_css.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_css.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_diff.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_glsl.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_glsl.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_haxe.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_html.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_html.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_java.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_javascript.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_javascript_dom.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_javascript_dom.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_latex.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_ldap.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_log.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_m4.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_oracle.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_pascal.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_perl.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_prolog.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_prolog.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_scala.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_scala.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_slang.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_sml.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_sql.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_tcl.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_xml.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_xml.min.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_xorg.js
 - samples/ylpodview/approot/html/vendor/shjs/lang/sh_yatt.js
 - samples/ylpodview/approot/html/vendor/shjs/sh_style.css
 - samples/ylpodview/approot/html/vendor/shjs/sh_style.min.css
 - samples/ylpodview/approot/ytmpl/error.ytmpl