· 10 years ago · Jan 13, 2016, 11:59 AM
1
2<br/>New patches:<br/><br/>[fix small typo in why_wiki<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="284549465e4d5a5d685f4d4d520541465c064b4745">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
3/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20061031094457] {<br/>hunk ./examples/why_wiki/run_pr.rb 43<br/>- r.form(:method => 'post') { <br/>+ r.form(:method => 'POST') { <br/>}<br/><br/>['prevent overwriting an existing cache via Global.setup<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="9af7fbf4ecffe8efdaedffffe0b7f3f4eeb4f9f5f7">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
4/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20061031094720] {<br/>hunk ./nitro/lib/nitro/global.rb 35<br/>+ return if Global.cache<br/>+<br/>}<br/><br/>Context:<br/><br/>[Reverted to facets 1.4.3<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="d6b1b3b9a4b1b3f8bbb9a5b5beb9a0bfa2bfa596b1bbb7bfbaf8b5b9bb">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
5/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061030071924] <br/>[move private statement in sqlite below query()<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="711b1e191f311e09081d18000418055f1514">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
6/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061027130302<br/> fixes at least one testcase<br/>] <br/>[Fix rescues<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f2989d9a9cb29d8a8b9e9b83879b86dc9697">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
7/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061027122853<br/> These `rescue => ex` blocks only catch certain errors, they didn't<br/> catch errors from PGError when the -pr postgres extension is used.<br/> Rewrote all those rescues to `rescue Object => ex`.<br/>] <br/>[Fix table_info(), return only first row<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="650f0a0d0b250a1d1c090c14100c114b0100">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
8/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061026083933] <br/>[Add table_exists? and table_info for psql/mysql/sqlite<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="553f3a3d3b153a2d2c393c24203c217b3130">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
9/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024190843] <br/>[Use a local version of annotation, in an attempt to upgrade to the latest version of facets.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="1b7c7e74697c7e357674687873746d726f72685b7c767a727735787476">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
10/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061028083612] <br/>[Minor cleanup.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="fb9c9e94899c9ed59694889893948d928f9288bb9c969a9297d5989496">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
11/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061028083517] <br/>[more checks in get/put_store<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="a0cacfc8cee0cfd8d9ccc9d1d5c9d48ec4c5">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
12/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024184343<br/> The original can lead to weird errors when Og.start gets called many times<br/> and many stores are used concurrently.<br/>] <br/>[Change manage_classes, use less .managed_classes calls, add check for manageable?<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="7812171016381700011411090d110c561c1d">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
13/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024181904] <br/>[Add compatibility layer for postgres-pr and early postgres lib versions<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="7b111413153b14030217120a0e120f551f1e">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
14/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024175727] <br/>[Rework Og.start() a little, add m.manage_classes(options[:classes])<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0c666364624c63747560657d796578226869">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
15/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024174637] <br/>[Fix an exploitable bug in CGI multipart parsing which affects Ruby <= 1.8.5<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f29f939c84978087b285979788df9b9c86dc919d9f">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
16/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20061025083802<br/> when the input stream returns "" (empty string) instead of nil on EOF.<br/> Certain malformed multipart requests leave the parser in a non-terminating<br/> state, leaving the program vulnerable to denial of service attack. The fix<br/> more carefully checks for input stream EOF.<br/> affected: standalone CGI, Mongrel<br/> unaffected: FastCGI, mod_ruby, WEBrick<br/> <br/> found and fixed by zedas<br/>] <br/>[Updated why_wiki.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="6205070d1005074c0f0d11010a0d140b160b1122050f030b0e4c010d0f">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
17/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024154145] <br/>[Updated CHANGELOG.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="bbdcded4c9dcde95d6d4c8d8d3d4cdd2cfd2c8fbdcd6dad2d795d8d4d6">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
18/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024124642] <br/>[You guessed it, more changes to examples ;-)<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="6e090b011c090b4003011d0d060118071a071d2e09030f0702400d0103">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
19/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024082500] <br/>[More changes to examples, even more to come.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="93f4f6fce1f4f6bdfefce0f0fbfce5fae7fae0d3f4fef2faffbdf0fcfe">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
20/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024082419] <br/>[Many changes to examples, flare, spark to convert to latest code, more to come.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="76111319041113581b1905151e19001f021f0536111b171f1a5815191b">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
21/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024082333] <br/>[Moved system view dirs to template dirs.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="a4c3c1cbd6c3c18ac9cbd7c7cccbd2cdd0cdd7e4c3c9c5cdc88ac7cbc9">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
22/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061024062032] <br/>[Adde set_attributes, instace_attribute_set methods in entity, for easy (and fast) update+save of attributes. Custom Mysql quote.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="6a0d0f05180d0f440705190902051c031e03192a0d070b030644090507">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
23/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061023115253] <br/>[Some work on dispatcher for tc_params.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f592909a879290db989a86969d9a839c819c86b59298949c99db969a98">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
24/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061023115213] <br/>[Updates in TODO.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="93f4f6fce1f4f6bdfefce0f0fbfce5fae7fae0d3f4fef2faffbdf0fcfe">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
25/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061023115147] <br/>[Multiple fixes to make Nitro tests pass. All pass except tc_session with Og cachse and tc_controller_params. Can anyone help with these two?<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="096e6c667b6e6c2764667a6a61667f607d607a496e64686065276a6664">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
26/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061019152957] <br/>[More flexible controller_map setting. Allows presetting of controller maps in parts. Have a look at the system part for an example.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="67000208150002490a0814040f08110e130e1427000a060e0b4904080a">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
27/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061019092453] <br/>[Minor.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f196949e839694df9c9e8292999e8798859882b1969c90989ddf929e9c">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
28/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061018074820] <br/>[More effective $cache.cleanup<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="5f383a302d383a7132302c3c373029362b362c1f38323e3633713c3032">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
29/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061018074708] <br/>[Many changes to make all Og tests pass with MySQL, yeah! Anyone can try prostgres/sqlite?<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="81e6e4eef3e6e4afeceef2e2e9eef7e8f5e8f2c1e6ece0e8edafe2eeec">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
30/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061017191259] <br/>[All Glue tests pass cleanly.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="cdaaa8a2bfaaa8e3a0a2beaea5a2bba4b9a4be8daaa0aca4a1e3aea2a0">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
31/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061016082957] <br/>[Added doc/TODO to offer a glimpse to the future of Nitro.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="97f0f2f8e5f0f2b9faf8e4f4fff8e1fee3fee4d7f0faf6fefbb9f4f8fa">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
32/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061016071926] <br/>[Skip redirects on ajax/rpc requests. Allows to write more reusable code.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="8deae8e2ffeae8a3e0e2feeee5e2fbe4f9e4fecdeae0ece4e1a3eee2e0">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
33/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061016071453] <br/>[Removed all Admin/Scaffolding stuff. Lets clear the directory structure a bit ;-)<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f6919399849193d89b9985959e99809f829f85b6919b979f9ad895999b">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
34/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061014170714] <br/>[Added new System part that will replace old Admin part. The implementation is much simpler, it supports plugins and more. In general it is a better place for improvment. Ooh, and should startup faster too ;-)<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="3255575d4055571c5f5d41515a5d445b465b4172555f535b5e1c515d5f">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
35/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061014165130] <br/>[Mark instances started by the bin/nitro command with the application name for easy identification when running ps.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="6304060c1104064d0e0c10000b0c150a170a1023040e020a0f4d000c0e">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
36/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061013132756] <br/>[Improved handling of index params in dispatcher, fixes bug when only template exists and no action (tiny example runs now ;-))<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="67000208150002490a0814040f08110e130e1427000a060e0b4904080a">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
37/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061013074907] <br/>[Fix in Global.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="2443414b5643410a494b57474c4b524d504d57644349454d480a474b49">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
38/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061013064758] <br/>[Converted blog example.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="c9aeaca6bbaeace7a4a6baaaa1a6bfa0bda0ba89aea4a8a0a5e7aaa6a4">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
39/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061013063711] <br/>[Fix: Made sweeper compatible with new cache scheme.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="bcdbd9d3cedbd992d1d3cfdfd4d3cad5c8d5cffcdbd1ddd5d092dfd3d1">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
40/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061013060625] <br/>[Fix in feed link calculation (no '//')<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="3f585a504d585a1152504c5c575049564b564c7f58525e5653115c5052">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
41/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061011081124] <br/>[Fix in mailer outgoing.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="c4a3a1abb6a3a1eaa9abb7a7acabb2adb0adb784a3a9a5ada8eaa7aba9">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
42/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061011081100] <br/>[Fix Glue testcases, many failing though<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="5c363334321c33242530352d293528723839">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
43/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060930150921] <br/>[Revamp tc params to also allow POST requests, add POST multipart test<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="b7ddd8dfd9f7d8cfcedbdec6c2dec399d3d2">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
44/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060929134324] <br/>[Add test to tc params for action_methods / module including<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="3f555057517f50474653564e4a564b115b5a">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
45/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060928142918] <br/>[repair Controller.action_methods<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="6802070006280710110401191d011c460c0d">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
46/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060928142621] <br/>[Insert testcase for params, bugreport ray<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="aac0c5c2c4eac5d2d3c6c3dbdfc3de84cecf">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
47/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060928133450] <br/>[Change the way /index with parameters handled<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="a2c8cdcacce2cddadbcecbd3d7cbd68cc6c7">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
48/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927223815<br/> This behaviour is documented in tc_controller_params.rb in the two tcs<br/> test_index_handling and test_index_handling_bad.<br/>] <br/>[Replace refs to the old 9999 port with the new 9000 port.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="2344464c5144460d4e4c50404b4c554a574a5063444e424a4f0d404c4e">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
49/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061010111635] <br/>[Removed some obsolete files.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="187f7d776a7f7d3675776b7b70776e716c716b587f75797174367b7775">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
50/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061010111154] <br/>[More flexible elements namespace selection, you can easier have multiple skins in your web app, per controller, per controller group etc. Read the source for more details. A low level example: ann :self, :elements => CustomSkin. I will add some DSL macro for this though.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="3552505a4752501b585a46565d5a435c415c46755258545c591b565a58">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
51/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061010084527] <br/>[this allows you to use the sqlite-memory-store (sqlite3) by setting the :name to ':memory:'<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="99f4f8f7effcebecd9eefcfce3b4f0f7edb7faf6f4">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
52/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060929075743] <br/>[Fix sti bug, used subclass name for foreign_key<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="bcd6d3d4d2fcd3c4c5d0d5cdc9d5c892d8d9">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
53/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061003103231<br/> Foo has_many Bar; User has_many Foo; Admin < User; Admin.foos #=> SQL<br/> ERROR: DB error no such column: admin_oid, [SELECT * FROM ogcustomer WHERE admin_oid = 1]<br/> <br/> Thx to Rayman for catching that bug, added testcase as well<br/>] <br/>[Small tc reverse fix, also works on psql now!<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="9ff5f0f7f1dff0e7e6f3f6eeeaf6ebb1fbfa">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
54/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060929174147] <br/>[Fixed emit labels in relation controls.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="8ee9ebe1fce9eba0e3e1fdede6e1f8e7fae7fdcee9e3efe7e2a0ede1e3">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
55/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061009193439] <br/>[Another cool flash helper, concat. Useful for error handling in cooperation with the new form builder features.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="4f282a203d282a6122203c2c272039263b263c0f28222e2623612c2022">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
56/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061009192031] <br/>[Nitro unescapes request params (even for nice urls), more cases handled.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="a8cfcdc7dacfcd86c5c7dbcbc0c7dec1dcc1dbe8cfc5c9c1c486cbc7c5">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
57/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061009161125] <br/>[Improved form builder error handling, more intuitive implementation of flash.push.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f592909a879290db989a86969d9a839c819c86b59298949c99db969a98">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
58/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061009160120] <br/>[Fix in text_key/key annotation, it is handles correctly now.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="4027252f3227256e2d2f3323282f362934293300272d21292c6e232f2d">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
59/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061009072919] <br/>[Form helper should ignore polymorphic_marker relations.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="07606268756062296a6874646f68716e736e7447606a666e6b2964686a">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
60/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061008085628] <br/>[When deleting an Og entity load the object, so og_delete aspects can access instance variables. Useful for sophisticated cache sweepers.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="77101218051012591a1804141f18011e031e0437101a161e1b5914181a">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
61/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061008080957] <br/>[Updated scaffold model to use the new OgSystem stuff.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0e696b617c696b2063617d6d666178677a677d4e69636f6762206d6163">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
62/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061008080926] <br/>[WebFile.override_files = true by default.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="9ff8faf0edf8fab1f2f0ecfcf7f0e9f6ebf6ecdff8f2fef6f3b1fcf0f2">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
63/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061008072452] <br/>[Made strange router urls more compatible with Apache.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0463616b7663612a696b77676c6b726d706d77446369656d682a676b69">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
64/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061008072113] <br/>[At last, output caching generates files, not directories. Improved apache/webrick/mongrel rewrite rules.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0463616b7663612a696b77676c6b726d706d77446369656d682a676b69">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
65/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061008071447] <br/>[Added a nasty hack that fixes a truly nasty bug. For details read in the webrick/mongrel adapters. We must find a better solution though.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="d1b6b4bea3b6b4ffbcbea2b2b9bea7b8a5b8a291b6bcb0b8bdffb2bebc">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
66/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061007173056] <br/>[Reverted some changes in compiler/dispatcher, cleaned up the mess. Sorry Fabian, your changes where invalid, but I will make your updated testcases pass. Gimme some more time ;-)<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="680f0d071a0f0d4605071b0b00071e011c011b280f05090104460b0705">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
67/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061007153307] <br/>[More correct calculation of managed_classes.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="6b0c0e04190c0e450604180803041d021f02182b0c060a020745080406">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
68/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061007070202] <br/>[Added some comments.<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f592909a879290db989a86969d9a839c819c86b59298949c99db969a98">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
69/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061005182903] <br/>[Added useful handle_static_files setting in Server. When running in production mode set to false (the frontend webserver should handle static files). Allows an ingenious rewrite rule to handle admin servers ;-)<br/>George Moschovitis <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="3156545e4356541f5c5e4252595e475845584271565c50585d1f525e5c">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
70/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20061005182522] <br/>[added nitro/tc_template for coming move of Glue::Template -> Nitro::Template<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="274a464951425552675042425d0a4e49530944484a">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
71/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060925203752] <br/>[added nitro/tc_markup (this will become important after the Glue::Markup -> Nitro::Markup move<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="3558545b43504740754250504f185c5b411b565a58">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
72/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060925203051] <br/>[Make OgCache faster by adding primary_key index<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f59f9a9d9bb59a8d8c999c84809c81db9190">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
73/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060929164816] <br/>[ The huge Template|Markup move from Glue to Nitro<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="83eee2edf5e6f1f6c3f4e6e6f9aeeaedf7ade0ecee">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
74/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060928092324] <br/>[Fix tc_validation_loop<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="ec86838482ac83949580859d998598c28889">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
75/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060928112058] <br/>[Fix tc_reverse<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="345e5b5c5a745b4c4d585d45415d401a5051">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
76/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060928111438] <br/>[Add psql rollback/savepoints for transactions<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="eb81848385ab84939287829a9e829fc58f8e">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
77/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060928111226] <br/>[Try fix sti, ogtype resolution for mysql < 5, -pr psql<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="96fcf9fef8d6f9eeeffaffe7e3ffe2b8f2f3">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
78/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060928105756] <br/>[add fatal failed testcases to the failed testcases :)<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="d6bbb7b8a0b3a4a396a1b3b3acfbbfb8a2f8b5b9bb">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
79/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060927223059] <br/>[Fix bug, used String for primary_key for psql auto generated values.<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0e646166604e61767762677f7b677a206a6b">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
80/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927224042] <br/>[Fix tc has_many<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="aec4c1c6c0eec1d6d7c2c7dfdbc7da80cacb">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
81/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927212206] <br/>[Fix param handling and param testcases<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0b616463654b64737267627a7e627f256f6e">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
82/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927212044] <br/>[Fix tc controller, remove unnessessary action_methods<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="a8c2c7c0c6e8c7d0d1c4c1d9ddc1dc86cccd">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
83/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927210246] <br/>[Fix tc multi_validation and tc kirby.<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="6a000502042a05121306031b1f031e440e0f">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
84/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927160905] <br/>[Fix tc primary key for psql, change sequence handling<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="aac0c5c2c4eac5d2d3c6c3dbdfc3de84cecf">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
85/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927160518<br/> Moves sequence description to a annotation for the primary key instead of<br/> using a constant in the class. Only uses sequences if the sql for the<br/> pk includes the keyword SERIAL. This does not account for manually<br/> created sequences, TODO.<br/>] <br/>[Fix reverse tc, makes it pass for mysql<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="365c595e5876594e4f5a5f47435f42185253">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
86/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927133118] <br/>[Fix inheritance tc<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="bad0d5d2d4fad5c2c3d6d3cbcfd3ce94dedf">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
87/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927132223] <br/>[Fix sti for psql<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="52383d3a3c123d2a2b3e3b23273b267c3637">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
88/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927132149] <br/>[retry when sqlite database locked<br/>Alex Pooley <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="2c4d4049546c415f4b5c4d48024f4341">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
89/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060908140800] <br/>[Make inline C in tc_cgi more robust<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="fa90959294ba95828396938b8f938ed49e9f">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
90/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060927122119] <br/>[Add more tests to tc param<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="5a303532341a35222336332b2f332e743e3f">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
91/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060926205950] <br/>[More and better testcases for params<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="a3c9cccbcde3ccdbdacfcad2d6cad78dc7c6">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
92/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060926124647] <br/>[More testcases for tc_controller_params, refactor<br/>Jonathan Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0862676066486770716461797d617c266c6d">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
93/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060926114453] <br/>[support for request.local_net? to check if a request comes from a local network [3]<br/>Fabian Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="f99f989b909897b99f989b909897d49b8c9a91d79d9c">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
94/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060925210146<br/> (RFC1918 + localhost) including testcase<br/> idea by Manveru, algorithm by Jonathan and implementation by Fabian<br/>] <br/>[update to nitro/tc_dispatcher<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="a7cac6c9d1c2d5d2e7d0c2c2dd8acec9d389c4c8ca">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
95/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060925210647] <br/>[just a typo in nitro/tc_session<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0c616d627a697e794c7b69697621656278226f6361">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
96/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060925203734] <br/>[updated to nitro/tc_render to reflect lots of changes in nitro-source<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="caa7aba4bcafb8bf8abdafafb0e7a3a4bee4a9a5a7">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
97/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060925203647] <br/>[updated nitro/tc_controller - will reflect the current ways of nitro a lot better<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="0f626e61796a7d7a4f786a6a752266617b216c6062">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
98/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060925202935] <br/>[updated nitro/tc_cgi (kashia added ruby-inline to make it faster) and some other fixes for it<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="771a161901120502370012120d5a1e19035914181a">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
99/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060925202725] <br/>[updated nitro/helper/tc_table<br/><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="bfd2ded1c9dacdcaffc8dadac592d6d1cb91dcd0d2">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
100/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>**20060925202300] <br/>[add testcase for nitros parameter-handling (finally) [2]<br/>Fabian Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="4026212229212e0026212229212e6d223523286e2425">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
101/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060925195011<br/> original by Manveru<br/>] <br/>[gen part uses lib/ directory now<br/>Fabian Buch <<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="9ef8fffcf7fff0def8fffcf7fff0b3fcebfdf6b0fafb">[email protected]</a><script data-cfhash='f9e31' type="text/javascript">
102/* <![CDATA[ */!function(){try{var t="currentScript"in document?document.currentScript:function(){for(var t=document.getElementsByTagName("script"),e=t.length;e--;)if(t[e].getAttribute("data-cfhash"))return t[e]}();if(t&&t.previousSibling){var e,r,n,i,c=t.previousSibling,a=c.getAttribute("data-cfemail");if(a){for(e="",r=parseInt(a.substr(0,2),16),n=2;a.length-n;n+=2)i=parseInt(a.substr(n,2),16)^r,e+=String.fromCharCode(i);e=document.createTextNode(e),c.parentNode.replaceChild(e,c)}t.parentNode.removeChild(t);}}catch(u){}}()/* ]]> */</script>>**20060913094740<br/> so parts reside in lib/part/partname<br/> public stuff of parts are still in public/part/partname/<br/>] <br/>[Removed scgi adapter. This is not maintained anymore by the original author. You are advised to use the mongrel adapter instead.<br/>George Moschovitis <george.moschovitis@gmail.com>**20061003203706] <br/>[Added nitro restart command.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060925135127] <br/>[Nitro cluster command spawns correct number of app servders and implies daemon mode.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060925131813] <br/>[Fixed response cookies problem od the Mongrel adapter.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060924202240] <br/>[Added part callbacks for more structures and flexible part initialization.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060923024859] <br/>[Improved Global initialization, more flexible, in sync with session.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060923024711] <br/>[Improved handling of Session.cache_type for flexible initialization.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060923022541] <br/>[Updated configuration system to make more flexible, imporved drb sessions and Nitro initialization in general. Still some related work to do though (especially update the examples). Warning this patch will break your apps. Some text that will explain the small changes needed is forthcoming.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060922184512] <br/>[Improved nitro command to handle state server, added kill option.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060921204412] <br/>[Added some initial cache management (from the console) features.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060921185724] <br/>[Make YAML-properties with postgresql work again<br/>manveru@weez-int.com**20060914091150] <br/>[notice about new script/test :)<br/>manveru@weez-int.com**20060912105803] <br/>[Huge refactoring of script/test.rb, to use the new capability just 'gem install popen4'<br/>manveru@weez-int.com**20060912070838] <br/>[added tc_primary_key (which fails right now, like every good tc should ;)<br/>manveru@weez-int.com**20060908022410] <br/>[fix little bug with parse_timestamp (utils.rb)<br/>manveru@weez-int.com**20060906093558] <br/>[Og close_store fix<br/>nusgnaf@gmail.com**20060826205335<br/> We use @store to maintain database connection when Og.thread_safe is false and @pool when Og.thread_safe is <br/> true. Right now in close_store, we fall back to @store.close when @pool.empty? is true, that not correct, the <br/> following patch fixes this.<br/>] <br/>[fixed bug in tc_store.rb<br/>Fabian Buch <fabian@fabian-buch.de>**20060828075201] <br/>[making some other testcases pass again (issue with result of psql)<br/>manveru@weez-int.com**20060825172828] <br/>[making tc_build.rb pass again<br/>manveru@weez-int.com**20060825142113] <br/>[make aggregations work again (tc_aggregations_calculations)<br/>manveru@weez-int.com**20060824235925] <br/>[fixing STI<br/>manveru@weez-int.com**20060824142441] <br/>[adding some raise "Not implemented" in og/store.rb for empty methods<br/>manveru@weez-int.com**20060824114541] <br/>[minor change in tc_scope, still doesn't pass though<br/>manveru@weez-int.com**20060822122540] <br/>[changed script/test.rb so it runs the tests seperate (useful for og, if one test fails, not all others blow up)<br/>manveru@weez-int.com**20060822090716] <br/>[Fix scope bug in collection.rb, use count for finding number of joins_many relations<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060912124344] <br/>[Fix for deleting has_many belongs/refers_to relations<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060911144233] <br/>[fix for deleting belongs_to relationships<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060911122205] <br/>[add testcase for deleting relations<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060911112315] <br/>[More small og test fixes<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060906214008] <br/>[Fix more og testcases<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060906211602] <br/>[.save returns affected rows again, fix subclass creation in relation.rb<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060906210953] <br/>[Enable object annotating for custom styles in form attributes.<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060903154923<br/> <br/> Can be used like following:<br/> <br/> <?r<br/> flash[:VERROR].errors.each do |sym,msg|<br/> @obj.annotation sym => {:control_style => 'border:1px solid red;'}<br/> end if flash[:VERROR]<br/> ?><br/> <br/> This traverses over validation errors and sets a red border around those<br/> attributes with errors.<br/> <br/>] <br/>[Replace pk.inspects by quote(pk)<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060903112405<br/> <br/> Fixes problems with text/integer keys.<br/>] <br/>[One line fix for 'Various Changes' patch<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060903111201] <br/>[Various changes<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060902224949<br/> <br/> * Revise resolve_polymorphic_relations, remove FIXME, change the<br/> eval to const_set.<br/> * Change symbol_to_class to return nil when no matching class was <br/> found.<br/> * Fix aggregation code, only use order_by when group_by is given.<br/>] <br/>[minor fix for manage_classes<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060902164458] <br/>[remove ObjectSpace search in manage_classes when classes are specified<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060902163817] <br/>[OgKlass.create_with is now able to accept arrays for collections<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060830180923] <br/>[Fix bug with Pager and aggregations<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060828221005<br/> <br/> The option array got changed by the new aggregation code and in `paginate` the array got reused. Testcase also attached.<br/> <br/> This patch also makes an alias named :limit for :per_page. Makes paginate more compatible to other sql based functions.<br/>] <br/>[minor testcase bugfixes<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060827232013] <br/>[only use transactions in og_delete when cascading is activated<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060827231901] <br/>[Automatic deletion of many2many relationships when one side gets removed<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060827231733] <br/>[add testcase for many to many relationships and deleting one side of the relationship<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060827231057] <br/>[prop_accessor -> attr_accessor<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060827230931] <br/>[fix taggable, reload needed when deleting tag<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060827223558] <br/>[change all prop_accessor to attr_accessor<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060825230930] <br/>[patch for many postgresql store errors, makes more tests pass<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060825224327<br/> <br/> Most importantly this changes the lookup rule for symbol_to_class in relation.rb, changes annotating of primary keys when invoked by `set_primary_key :name, String`.<br/> <br/> Minor enhanced test files, updated to new syntax etc.<br/>] <br/>[Add transaction, commit, rollback to psql adapter<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060825172522] <br/>[Let `def aggregation` use `resolve_options`<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060825155121<br/> <br/> It duplicated functionality already available in `resolve_options` and didn't know about join tables etc.<br/>] <br/>[Add Fabian Buch as contributor, rename nick Kashia to Jonathan<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060831181201] <br/>[Minor fixes.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060912152127] <br/>[removed unmatched require in server.rb<br/>Fabian Buch <fabian@fabian-buch.de>**20060911155626] <br/>[fixed call/answer (render.rb) to work correctly [2]<br/>Fabian Buch <fabian@fabian-buch.de>**20060911155557] <br/>[FeedHelper fix that lets its unit test pass again [2]<br/>Fabian Buch <fabian@fabian-buch.de>**20060911155026] <br/>[removing "nil"-Strings from has_many and refers_to controls [2]<br/>Fabian Buch <fabian@fabian-buch.de>**20060911154851<br/> since you don't want "nil" for NULL in your database<br/>] <br/>[webfile bugfix and to-be-improved tc_webfile.rb added [2]<br/>Fabian Buch <fabian@fabian-buch.de>**20060911154544<br/> also: don't override files by default<br/> and more logical file permissions<br/>] <br/>[adding generator for parts (gen part) [2]<br/>Fabian Buch <fabian@fabian-buch.de>**20060911153811<br/> <br/> gen part partname<br/> copies the given part to the current folder (so you should be<br/> in your applications main folder) and moves the part's <br/> public files to public/part/partname<br/>] <br/>[let mongrels request_uri and query_string behave like the ones of webrick and fcgi<br/>Fabian Buch <fabian@fabian-buch.de>**20060911205524] <br/>[Cleaned up many files.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060910192003] <br/>[Test for :serializable_attributes in Manager#manageable?<br/>Pangloss <darrick@innatesoftware.com>**20060909212814] <br/>[Update Og::Cacheable to use facets 1.4.5<br/>Pangloss <darrick@innatesoftware.com>**20060909212038] <br/>[Small fix in exclude patch to get rid fo the warning.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060910084803] <br/>[adding option[:exclude] to all_attributes in form helper<br/>Fabian Buch <fabian@fabian-buch.de>**20060908182429<br/> now you can exclude single attribute<br/> for example:<br/> f.attributes(:exclude => :password) or<br/> f.attributes(:exclude => [:password, :name])<br/>] <br/>[Allow label override in form helper.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060909070515] <br/>[Minor stuff.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060909065751] <br/>[Some improvements in caching and scaffolding.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060907195840] <br/>[Access server from context (req/res)<br/>George Moschovitis <george.moschovitis@gmail.com>**20060905200321] <br/>[New cluster friendly nitro script.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060905200208] <br/>[fix latest Runner bugs<br/>Fabian Buch <fabian@fabian-buch.de>**20060831134122<br/> ruby run.rb -m for example didn't work, it always used webrick unless Nitro.adapter was set<br/>] <br/>[Some more fixes in the the new param parser, it works better with the router now.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060831173030] <br/>[FileControl and PasswordControl added<br/>Fabian Buch <fabian@fabian-buch.de>**20060830191849] <br/>[Added support for mongrel, execution modes and more in the nitro startup script (bin/nitro).<br/>George Moschovitis <george.moschovitis@gmail.com>**20060828212153] <br/>[Minor stuff.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060828171549] <br/>[Alexander Lazic's Mongrel Adapter changes + mine<br/>Fabian Buch <fabian@fabian-buch.de>**20060826102734<br/> it uses Mongrel::Configurator to setup mongrel<br/> Logger for a more unified look<br/> fixes trap to use stop()<br/>] <br/>[Fixed 'true' bug in sub-elements.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060826074839] <br/>[Small improvements in taggable.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060826074740] <br/>[Improved sub-element functionality, add some comments to explain the usage.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060825195559] <br/>[Removed src dir, moved path into lib. Cleaner layout and trnsparently supports my new webapp deployment script. nice ;-)<br/>George Moschovitis <george.moschovitis@gmail.com>**20060824175446] <br/>[tell evolution to accept the properties of its relatives<br/>manveru@weez-int.com**20060824143623] <br/>[Added more FIXMEs for rescue Object and removed a few<br/>Jonathan Buch <jonathan.buch@gmail.com>**20060822123730] <br/>[removing spurious "p"<br/>rff.rff@gmail.com**20060819140258] <br/>[better error handling for helper.rb<br/>ùrff.rff@gmail.com**20060819134639] <br/>[Some improvements in the new scaffolding code, auto detection of per model controllers.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060822150735] <br/>[Misc small changes for improved robustness.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060820093250] <br/>[Various validation related fixes and small improvements.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060817071240] <br/>[Default error page sets 501 status<br/>George Moschovitis <george.moschovitis@gmail.com>**20060817060455] <br/>[This patch contains the following changes:<br/>rff.rff@gmail.com**20060729141757<br/> <br/> M ./nitro/lib/nitro/helper/form.rb +8<br/>] <br/>[This patch refactors the code used in the scaffolded view to be usable as a single helper. <br/>rff.rff@gmail.com**20060729141306<br/> It basically creates a div containing a list of li tags, each of one contains a message for each error in flash[:ERRORS]<br/> <br/> This patch contains the following changes:<br/> <br/> M ./nitro/lib/nitro/helper/form.rb +12<br/>] <br/>[Intuitive handling of text keys, allows code like u = User['gmosx'] and u = User[1] at the same time.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060801203732] <br/>[encode_url better handles index actions.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060801203714] <br/>[Some small fixes.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060730132126] <br/>[bugfix-glue-validate_value<br/>bryan.a.soto@gmail.com**20060717205050<br/> Ticket #44: http://devlab.oree.ch/trac/glycerin/ticket/44<br/> Credit to matt DOT moriarity AT gmail DOT com.<br/>] <br/>[fix conflict mongrel adapter<br/>rff.rff@gmail.com**20060729105408] <br/>[bugfix-nitro-mongrel-adapter<br/>bryan.a.soto@gmail.com**20060717060648<br/> Fixes multi-part form processing, which was broken by my previous patch. Basically, image uploads work now for mongrel.<br/>] <br/>[fix conflict on "undescore" typo<br/>rff.rff@gmail.com**20060729104933] <br/>[bugfix-nitro-ticket-43<br/>bryan.a.soto@gmail.com**20060711010702<br/> Fixed a bug/type as suggested by rff_rff AT yahoo DOT it<br/> http://devlab.oree.ch/trac/glycerin/ticket/43<br/>] <br/>[bugfix-nitro-ticket-34<br/>bryan.a.soto@gmail.com**20060711010350<br/> Fixed as per billk AT cts DOT com suggestion on Ticket #34.<br/> http://devlab.oree.ch/trac/glycerin/ticket/34<br/>] <br/>[navigation menu helper<br/>rff_rff@yahoo.it**20060705193224<br/> This helper allows easy creation of xhtml/css based navigation menus, producing an xhtml that is suitable to be used with examples found at listamatic, and with automatic handling of "current page" highliting, setting proper xhtml for it.<br/> <br/> The helper adds two methods, one allows to create a menu like <br/> menu_for(HomeController, Pages, Feed)<br/> and the other gives more fine grained control through:<br/> menu_from_hash('/home'=>'Home Page', '/pages'=>'Wiki', '/feed/rss'=>'RSS2.0')<br/> <br/>] <br/>[hack-enh-fcgi-rewind<br/>bryan.a.soto@gmail.com**20060609220620<br/> A small hack to ensure that you can access the raw_body of a request, by converting the incoming stream to a StringIO if it doesn't respond to :rewind.<br/>] <br/>[test-fix-og-tc_ez<br/>bryan.a.soto@gmail.com**20060518001436<br/> Fixes up the ez testcase Manveru submitted to make it run and pass.<br/>] <br/>[ez-fix for trueclass and testcase for it<br/>m.fellinger@gmail.com**20060513111040] <br/>[error-page-fix for source-preview<br/>m.fellinger@gmail.com**20060513110945] <br/>[test-fix-nitro-tc_render<br/>bryan.a.soto@gmail.com**20060517223259<br/> Makes the TestController subclass Nitro::Controller so it get's the #encode_url method.<br/>] <br/>[adds-some-blank-lines-to-og-tc_setup<br/>bryan.a.soto@gmail.com**20060517222452] <br/>[gabrielle-renzis-linefeeds<br/>bryan.a.soto@gmail.com**20060517221725<br/> Switches line endings from Dos to Unix.<br/>] <br/>[solves the conflict between repo and devlab (Og.setup now handles arguments in <br/>rff.rff@gmail.com**20060729102534<br/> a saner way and crashes ASAP when there is no chance to recover<br/> <br/>] <br/>[crash-early Og.setup<br/>surrender_it@yahoo.it**20060505123051<br/> This patch removed the Exception handling routine from Og.setup.<br/> With the current code if an exception is raised during the execution of <br/> the method there is no crash, but the crash will happen every time someone references Og.manager, cause that variable won't be initialized .<br/> This patch makes Og.setup crash as soon as possible, thus allowing faster diagnostics.<br/> <br/> The patch also adds a simple test case for Og.setup, which seem not tested anywhere, but the test case may need some love for proper setup (it relies on glycerin as of now, cause loading CONFIG.rb seem to raise a strange exception related to mixed use of facets 1.3 and 1.0 on my box)<br/> <br/>] <br/>[better test logging<br/>surrender_it@yahoo.it**20060505010206<br/> As of now tests for Og swallow every error ingormation while not in $DBG mode,<br/> this one-line patch allows visualization of logged informations at WARN level and more, which has little impact on the visualization of the tests and still allows quick diagnostics while staying out of $DBG<br/>] <br/>[add-ostruct-require<br/>bryan.a.soto@gmail.com**20060512060511<br/> Adds missing ostruct require to testcase.rb.<br/>] <br/>[nitro-proto-page<br/>bryan.a.soto@gmail.com**20060510060546<br/> Updates the intro page with a link to the rubyforge page for examples to be downloaded as suggested by James Britt.<br/>] <br/>[Made redirect_on_empty (buffer) true by default.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060729083954] <br/>[More fault tolerant populate_attributes.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060727192802] <br/>[Added objects_to_options helper.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060726115346] <br/>[Hack fixed fcgi/console Og polymorphic bug, will investigate later.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060726115238] <br/>[Minor fixes and cleanup.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060723141916] <br/>[fragments_fix<br/>nusgnaf@gmail.com**20060720211817<br/> kill the usage of @@cache in nitro/lib/nitro/caching/framents.rb,<br/> use self.cache instead.<br/>] <br/>[Minor.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060720182002] <br/>[Improved postgreslq adapter.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060720180657] <br/>[form.fix<br/>nusgnaf@gmail.com**20060721015451<br/> ensure we render all_attributes before we yield to block.<br/>] <br/>[MysqlAdapter database creation<br/>Jonas Pfenniger <zimba.tm@gmail.com>**20060720133458] <br/>[More cleanup in Og files.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060719214222] <br/>[Small updates in source files, removed some obsolete files.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060719203755] <br/>[Better refactoring of last_insert_id/insert_sql.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060719170347] <br/>[Further Og adapter refactoring.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060719163823] <br/>[Mongrel large file fix. [fang sun]<br/>George Moschovitis <george.moschovitis@gmail.com>**20060719153444] <br/>[Updated source.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060718202542] <br/>[Added postgresql.rb main adapter file.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060718174745] <br/>[Updated RELEASES.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060718174725] <br/>[More source/doc updates.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060718155406] <br/>[Misc doc/source updates.<br/>George Moschovitis <george.moschovitis@gmail.com>**20060718154516] <br/>[Reimplemented postgresql adapter (not fully working yet).<br/>George Moschovitis <gm@navel.gr>**20060717220903] <br/>[Further refactoring/cleanup of the Og adapter code.<br/>George Moschovitis <gm@navel.gr>**20060717220831] <br/>[Small fixes in examples to make work with latest code.<br/>George Moschovitis <gm@navel.gr>**20060717220750] <br/>[Added special resolve_polymorphic behaviour to many_to_many/joins_many relations.<br/>George Moschovitis <gm@navel.gr>**20060716164436] <br/>[Even more intelligent dispatches, handles some more useful nice url cases. It rocks!<br/>George Moschovitis <gm@navel.gr>**20060716160628] <br/>[More flexible resolve_polymorphic_relations.<br/>George Moschovitis <gm@navel.gr>**20060716154721] <br/>[Check for join tables even if main table exists to be make Og more self-healing (and adaptive to changin schemas).<br/>George Moschovitis <gm@navel.gr>**20060716145000] <br/>[Polymorphic relations use again Owner::Class subclasses, but they are more flexible, there is no more the need for foreign_name declarations, plus cleaned up some Og code.<br/>George Moschovitis <gm@navel.gr>**20060716130632] <br/>[Virtualized table_already_exists? for mysql and sqlite3 to allow a single create table method for both adapters (!!!).<br/>George Moschovitis <gm@navel.gr>**20060713172658] <br/>[Reimplemented the sqlite adapter under the new model.<br/>George Moschovitis <gm@navel.gr>**20060713171143] <br/>[Remarkable refactoring/simplification of the Og adapter model. Cleaned up Mysql Adapter, more robust code.<br/>George Moschovitis <gm@navel.gr>**20060713171040] <br/>[Options control now takes reverse dictonary as a parameter, more useful.<br/>George Moschovitis <gm@navel.gr>**20060712164255] <br/>[MAJOR, BACKWARDS UNCOMPATIBLE CHANGE: Polymorphic classes are not nested. Ie now ArticleComment is created instead of Article::Comment.<br/>George Moschovitis <gm@navel.gr>**20060710210736] <br/>[Added rename_schema method in Og evolution.<br/>George Moschovitis <gm@navel.gr>**20060710190814] <br/>[Removed og evolution from og main dir to avoid confusion with store/evolution (renamed to dump.rb)<br/>George Moschovitis <gm@navel.gr>**20060710155539] <br/>[Misc form helper and controls improvements.<br/>George Moschovitis <gm@navel.gr>**20060709164509] <br/>[Improved StaticInclude compiler to handle recursive static includes (extremely useful).<br/>George Moschovitis <gm@navel.gr>**20060709164423] <br/>[Minor<br/>George Moschovitis <gm@navel.gr>**20060709083138] <br/>[Some fixes in the admin templates.<br/>George Moschovitis <gm@navel.gr>**20060709082357] <br/>[Removed old form helper code, added float control, some cleanup.<br/>George Moschovitis <gm@navel.gr>**20060709080905] <br/>[Added OptionsControl for attributes that take discreet options.<br/>George Moschovitis <gm@navel.gr>**20060708082406] <br/>[Updated contributors.<br/>George Moschovitis <gm@navel.gr>**20060708082323] <br/>[Extacted publishable.rb from controller.rb, added mount_path helper to publishable. [renzi]<br/>George Moschovitis <gm@navel.gr>**20060708073814] <br/>[Minor.<br/>George Moschovitis <gm@navel.gr>**20060706204217] <br/>[Small render fix.<br/>George Moschovitis <gm@navel.gr>**20060706204140] <br/>[Added support for nested controllers, cleaned up render (no base), updated admin part to work with changes.<br/>George Moschovitis <gm@navel.gr>**20060706203550] <br/>[Added initial versions of scaffold/controller, scaffold/model.<br/>George Moschovitis <gm@navel.gr>**20060706155447] <br/>[Changed render_template (for the moment uses a 'hack' implementation, but it works!) [james_b]<br/>George Moschovitis <gm@navel.gr>**20060705193130] <br/>[Og load/reload handle nil primary keys (by returning nil).<br/>George Moschovitis <gm@navel.gr>**20060705181328] <br/>[Simplified hidden method in xhtml helper.<br/>George Moschovitis <gm@navel.gr>**20060701072425] <br/>[Applied james britt's mongrel patch.<br/>George Moschovitis <gm@navel.gr>**20060630190711] <br/>[author backwards compatibility (atom)<br/>Kashia Buch <john@oxyliquit.de>**20060622175214<br/> <br/> Request by Fabian<br/>] <br/>[Added handle_sql_exception for MysqlAdapter#create_table<br/>Jonas Pfenniger <jonas@stvs.ch>**20060627135225] <br/>[Added String to Car's property in tc_inheritance.rb<br/>Jonas Pfenniger <jonas@stvs.ch>**20060627132219] <br/>[Removed Glue::Flexob testcase since it does't exist anymore<br/>Jonas Pfenniger <jonas@stvs.ch>**20060627132017] <br/>[Fixed add_rule in dispatcher [james_b]<br/>George Moschovitis <gm@navel.gr>**20060629151558] <br/>[Removed paramix-fix, not needed in facets 1.4.3<br/>George Moschovitis <gm@navel.gr>**20060629151520] <br/>[Argh and again argh, extend OpenStruct instead of OpenObject in FileTemplate to fix weird and NASTY eval bug.<br/>George Moschovitis <gm@navel.gr>**20060626191414] <br/>[consoleapp -> command.<br/>George Moschovitis <gm@navel.gr>**20060626172152] <br/>[Changes to make compatible with 1.4.2<br/>George Moschovitis <gm@navel.gr>**20060626163705] <br/>[Added some new files.<br/>George Moschovitis <gm@navel.gr>**20060620065144] <br/>[Applied patches by neokolor@gmx.de, plus some minor stuff. [neokolor@gmx.de]<br/>George Moschovitis <gm@navel.gr>**20060620064746] <br/>[Deprecated RSS helper (use the new feed helper instead).<br/>George Moschovitis <gm@navel.gr>**20060618102546] <br/>[Updated spark and flare examples to use the feed helper.<br/>George Moschovitis <gm@navel.gr>**20060618102431] <br/>[Updated blog example to work with latest, slightly improved feed parser in the process.<br/>George Moschovitis <gm@navel.gr>**20060618101830] <br/>[Allow override of style in controls (+ minor fixes).<br/>George Moschovitis <gm@navel.gr>**20060618090054] <br/>[bugfix-mongrel-adapter-request-uri<br/>bryan.a.soto@gmail.com**20060605211152<br/> Removes REQUEST_URI header manipulation and accomodates an upcoming change in Mongrel 0.3.13. An ugly class check... Lovely.<br/>] <br/>[more-mongrel-adapter-fixes<br/>bryan.a.soto@gmail.com**20060510222051<br/> Fixes up static file serving.<br/>] <br/>[mongrel-fixes<br/>bryan.a.soto@gmail.com**20060510060439<br/> Gives the Mongrel adapter some need updating.<br/>] <br/>[Fixed Orderable to work with latest Og.<br/>George Moschovitis <gm@navel.gr>**20060616082740] <br/>[Allow for relative/absolute expiration of affected cached pages for extra flexibity.<br/>George Moschovitis <gm@navel.gr>**20060614071336] <br/>[Fixes in output caching (root setting).<br/>George Moschovitis <gm@navel.gr>**20060614070409] <br/>[Renamed evolution.rb to dump.rb to avoid confusion with the dynamic schema evolution feature.<br/>George Moschovitis <gm@navel.gr>**20060614061620] <br/>[Refactored og cloning to a separate file to keep entity.rb cleaner.<br/>George Moschovitis <gm@navel.gr>**20060614061451] <br/>[Added sendfile support to render. [jlambert]<br/>George Moschovitis <gm@navel.gr>**20060613175624] <br/>[Taggable tagstring_linked.<br/>George Moschovitis <gm@navel.gr>**20060613175606] <br/>[Small changes in FeedHelper.<br/>George Moschovitis <gm@navel.gr>**20060613060649] <br/>[Removed deprecated and buggy static include code from Template, the StaticInclude compiler is used instead.<br/>George Moschovitis <gm@navel.gr>**20060612083733] <br/>[Added {{..}} and #<..> aliases to #{R ..}.<br/>George Moschovitis <gm@navel.gr>**20060609083834] <br/>[Refactored webrick vcr functionality to a separate file.<br/>George Moschovitis <gm@navel.gr>**20060609081950] <br/>[Added again examples, flare, spark<br/>George Moschovitis <gm@navel.gr>**20060607152438] <br/>[Using the new building code, fixed the admin hasmany/joinsmany control.<br/>George Moschovitis <gm@navel.gr>**20060607011350] <br/>[Implemented collection build mode for efficient object relation initialization w/o excessive saves.<br/>George Moschovitis <gm@navel.gr>**20060607005902] <br/>[Small fix in template_for_action to avoid unhelpful error message on missing action (and symbol passed).<br/>George Moschovitis <gm@navel.gr>**20060606075731] <br/>[Added many new files.<br/>George Moschovitis <gm@navel.gr>**20060605182624] <br/>[Many many changes (New control system, Emit labels in the controls, Relation controls (hack fix), Show form errors in admin screens, Removed credit lines, Updated docs, Og.destroy_schema, and more...) under heavy construction.<br/>George Moschovitis <gm@navel.gr>**20060605182411] <br/>[Honour port in Mysql create/destroy [james_b]<br/>George Moschovitis <gm@navel.gr>**20060528072603] <br/>[Updated docs.<br/>George Moschovitis <gm@navel.gr>**20060526094620] <br/>[Minor.<br/>George Moschovitis <gm@navel.gr>**20060522103204] <br/>[Refactored and rationalized evolution support for sql stores.<br/>George Moschovitis <gm@navel.gr>**20060522102946] <br/>[Introduced new control system. Still under construction.<br/>George Moschovitis <gm@navel.gr>**20060522064146] <br/>[Fixes in validation and scaffolding.<br/>George Moschovitis <gm@navel.gr>**20060521090718] <br/>[After some more fixes tc_store.rb passes ;-)<br/>George Moschovitis <gm@navel.gr>**20060520093243] <br/>[Fixes in mysql insert.<br/>George Moschovitis <gm@navel.gr>**20060520092051] <br/>[Fixed finders.<br/>George Moschovitis <gm@navel.gr>**20060520085837] <br/>[Fixed some more problems.<br/>George Moschovitis <gm@navel.gr>**20060520084729] <br/>[Added join support, rationalized primary key setup.<br/>George Moschovitis <gm@navel.gr>**20060520081153] <br/>[Better support for non integer primary keys.<br/>George Moschovitis <gm@navel.gr>**20060519074722] <br/>[More fixes to support update.<br/>George Moschovitis <gm@navel.gr>**20060519074304] <br/>[Rationalized og_delete.<br/>George Moschovitis <gm@navel.gr>**20060519072950] <br/>[More fixes to support reading.<br/>George Moschovitis <gm@navel.gr>**20060519072248] <br/>[After some more changes, a small example works ;-)<br/>George Moschovitis <gm@navel.gr>**20060519063007] <br/>[Rationalized sql index definition: attr_accessor :age, Fixnum, :index => true, :pre_index => ..., :post_index => ...<br/>George Moschovitis <gm@navel.gr>**20060519061721] <br/>[Major Og rewrite, updating to the new attribute system, cleaning the code and migrating to the new adapter model. Many many more changes. In progress.<br/>George Moschovitis <gm@navel.gr>**20060519060701] <br/>[Removed alpha og stores.<br/>George Moschovitis <gm@navel.gr>**20060518070101] <br/>[Many changes to support the switch to attributes instead of properties.<br/>George Moschovitis <gm@navel.gr>**20060518065907] <br/>[Minor.<br/>George Moschovitis <gm@navel.gr>**20060516150705] <br/>[Moved examples, spark, flare to a separate repository.<br/>George Moschovitis <gm@navel.gr>**20060516073246] <br/>[Removed wee helper and example. Not really useful in Nitro, better use wee standalone + Og if you like Wee components (or wait for a Nitro solution).<br/>George Moschovitis <gm@navel.gr>**20060516072823] <br/>[Removed controller_name from Render, user controller.mount_path instead.<br/>George Moschovitis <gm@navel.gr>**20060516072350] <br/>[Fixed: dont overwrite already defined methods in the new scaffold code.<br/>George Moschovitis <gm@navel.gr>**20060516071615] <br/>[Improved R (encode_url) handles strings and entities. Redirect implicitly uses R. Form builder implicitly uses R for form actions.<br/>George Moschovitis <gm@navel.gr>**20060516071508] <br/>[Fixed name_to_jsfile (absolute url).<br/>George Moschovitis <gm@navel.gr>**20060515065439] <br/>[Reenabled format in Logger.<br/>George Moschovitis <gm@navel.gr>**20060513042251] <br/>[Added some :nodoc: all to cleanup generated RDocs.<br/>George Moschovitis <gm@navel.gr>**20060513034929] <br/>[Bumbed version number in many files.<br/>George Moschovitis <gm@navel.gr>**20060512154849] <br/>[Wrote a detailed parts howto in RDoc form in parts.rb as requested by Jonas. To be improved after community feedback.<br/>George Moschovitis <gm@navel.gr>**20060512153754] <br/>[Initial code for the new scaffolding system, *very* under construction, ignore for the moment.<br/>George Moschovitis <gm@navel.gr>**20060511101456] <br/>[Added a model macro to controllers that links related classes. At the moment it is used in the sweeper do delete cached pages from the linked controller base directory.<br/>George Moschovitis <gm@navel.gr>**20060510102836] <br/>[Fixed Session.current and Controller.current<br/>George Moschovitis <gm@navel.gr>**20060508075645] <br/>[Store current context in a thread local variable, accesible through Context.current<br/>George Moschovitis <gm@navel.gr>**20060507160715] <br/>[Removed glue/attribute, use Facet's cattr instead. Updated nitro/og source to make compatible.<br/>George Moschovitis <gm@navel.gr>**20060507085703] <br/>[Added script adapter file.<br/>George Moschovitis <gm@navel.gr>**20060507062034] <br/>[Removed flexob and references to it, use Facet's OpenObject instead.<br/>George Moschovitis <gm@navel.gr>**20060507061555] <br/>[Renamed to ScriptAdapter, keep ConsoleAdapter alias.<br/>George Moschovitis <gm@navel.gr>**20060506103921] <br/>[Yeah, the ConsoleAdapter kinda works now ;-)<br/>George Moschovitis <gm@navel.gr>**20060506102010] <br/>[Introduced new nitro command/runner that will replace the current spaghetti code. Based on facetes Console::Command. Also introduced the ConsoleAdapter.<br/>George Moschovitis <gm@navel.gr>**20060506095503] <br/>[Removed accumulate (in facets).<br/>George Moschovitis <gm@navel.gr>**20060506080052] <br/>[Some small updates.<br/>George Moschovitis <gm@navel.gr>**20060506075526] <br/>[TAG 0.30.0<br/>George Moschovitis <gm@navel.gr>**20060506075053] <br/>Patch bundle hash:<br/>ffb9d9c50fd9ccea0c2316a3309b02ee0b372baf
103