Justin Hileman
a4ab23471c
Merge branch 'release/2.4.1' into dev
2013-08-12 21:49:31 -07:00
Justin Hileman
e3cbc253c3
Bump version for 2.4.1
2013-08-12 21:49:14 -07:00
Justin Hileman
f968f5fdcb
Add PHPUnit dev dependency.
2013-08-07 17:44:51 -07:00
Justin Hileman
75b56da0c5
markdown -> md
2013-08-05 16:04:50 -07:00
Justin Hileman
a8bd6a6cf6
Move realpath call into constructor
...
Add an is_dir check, because realpath fails with things like stream wrappers
2013-08-04 12:16:18 -07:00
Justin Hileman
35ad7f961e
Merge remote-tracking branch 'mirkolofio/master' into dev
2013-08-04 12:07:25 -07:00
Justin Hileman
07e96b2a19
Only run partials + lambda indent test on 5.3+
2013-07-21 13:32:56 -07:00
Justin Hileman
1c945926bd
Fix indents in lambda sections inside indented partials.
...
Fixes #128
2013-07-21 00:49:10 -07:00
Justin Hileman
408ff8d345
Add a failing test for #128
2013-07-21 00:48:18 -07:00
Justin Hileman
65de52c7db
Merge branch 'release/2.4.0' into dev
2013-07-17 22:27:30 -07:00
Justin Hileman
48cf4c178c
Bump version for 2.4.0
2013-07-17 22:23:40 -07:00
Justin Hileman
1d21de63d6
Trailing slash test fix.
...
I suppose it would help if I didn't realpath the thing I was testing for realpathness
2013-07-15 18:11:36 -04:00
Justin Hileman
911151ad78
Looks like we don’t need that rtrim() after all.
...
(+ a test, confirming)
2013-07-15 18:08:24 -04:00
Justin Hileman
287d2f74a8
Merge branch 'feature/whitespace-tokenizing' into dev
2013-06-25 08:43:00 -07:00
Justin Hileman
87a734e60c
Update Compiler for new Parser output.
2013-05-15 13:37:05 -07:00
Justin Hileman
8f5be9e470
Add standalone line whitespace handling to Parser.
2013-05-15 13:37:05 -07:00
Justin Hileman
de9941d271
Ensure that delimiter changes appear in token list.
2013-05-15 13:37:05 -07:00
Justin Hileman
4588e04365
No need to loop through pragma tokens twice.
...
Add them directly to the token list as soon as they are tokenized.
2013-05-15 13:37:05 -07:00
Justin Hileman
32461bfb48
Track line number in Tokenizer
...
(needed for standalone line filtering via Parser)
2013-05-15 13:37:05 -07:00
Justin Hileman
b77d2f308e
Remove "standalone tag" filtering from Tokenizer.
2013-05-15 13:37:05 -07:00
Justin Hileman
4112bcc3f7
Fix doc comment on inline loader.
2013-05-15 13:36:46 -07:00
Justin Hileman
0564df9651
Add missing comments for pragma tokenizing.
2013-05-12 21:49:36 -07:00
Justin Hileman
697f4ac26b
Use a raw array for Parser::buildTree
...
Improve memory usage by ~15% for very large templates.
2013-05-11 22:32:42 -07:00
Justin Hileman
ade0b98761
Remove unnecessary leading slashes.
2013-05-10 17:24:53 -07:00
Justin Hileman
c5c36ddd2b
Change entity_flags variable names to match PSR-2.
2013-04-27 16:04:05 -07:00
Justin Hileman
c6c480013a
Merge branch 'release/2.3.1' into dev
2013-04-25 08:25:08 -07:00
Justin Hileman
3ef28e14e3
Merge branch 'release/2.3.1'
2013-04-25 08:23:30 -07:00
Justin Hileman
afc20ae1e2
Bump to v2.3.1
2013-04-25 08:23:21 -07:00
Justin Hileman
2327f3839f
Fix tokenizing when mbstring.func_overload enabled.
...
Fixes #144
2013-04-24 09:24:27 -07:00
Justin Hileman
5d186b134b
Fix this mention too :)
2013-04-23 21:14:37 -07:00
Justin Hileman
3fb7fdc2ac
Update docs, variable name for render passthrough.
2013-04-23 21:13:39 -07:00
Justin Hileman
9e5ef08fbf
Reformat LICENSE file.
2013-04-15 19:51:41 -07:00
Justin Hileman
e5da080ef4
Merge branch 'release/2.3.0' into dev
2013-04-01 20:56:37 -07:00
Justin Hileman
fb5e4ecb30
Merge branch 'release/2.3.0'
2013-04-01 20:56:30 -07:00
Justin Hileman
0f1fc69e5c
Bump to v2.3.0
2013-04-01 20:50:30 -07:00
Justin Hileman
723ac37053
s/an/a/
2013-03-28 16:48:00 -04:00
Justin Hileman
01d413de0d
Merge branch 'hotfix/2.2.0' into dev
...
Conflicts:
src/Mustache/Compiler.php
src/Mustache/Engine.php
2013-03-25 09:12:36 -07:00
Justin Hileman
f0eb5091e2
Merge branch 'hotfix/2.2.0'
2013-03-25 09:03:00 -07:00
Justin Hileman
934a5495bb
Bump Genghis version.
2013-03-25 09:02:46 -07:00
Justin Hileman
c160134b6d
Add a 'strict_callables' option to Mustache_Engine
...
Prevents treating array('ClassName', 'methodName') or array($instance, 'methodName') as section or interpolation callables. This helps protect against arbitrary code evaluation when user input is passed directly into the template.
This setting is recommended for PHP 5.3+, and all PHP 5.2 projects not using section or interpolation lambdas.
The default value is false to preserve backwards compatibility.
See #138
2013-03-23 10:54:13 -07:00
Justin Hileman
7fb7758178
Include header in generated bootstrap files.
2013-03-12 16:40:36 -07:00
Justin Hileman
32a397f93d
Remove unused submodule.
2013-03-12 16:20:02 -07:00
Justin Hileman
ca44ef68f8
Move loader cascading into the loadPartial method.
...
This means the `partialsLoader` property is never set to the default loader, fixing things like `setPartials`, but template loading cascades as per the spec.
Add test coverage for partial cascading.
2013-03-12 16:03:58 -07:00
Justin Hileman
72007e65b4
Simplify setPartials nested ifs.
2013-03-12 15:29:18 -07:00
Justin Hileman
12d6884b4b
Improve test coverage for custom escapers and charsets.
2013-01-26 16:48:35 -08:00
Justin Hileman
c75b4c2e0b
Fix compiled templates' PSR-2 compliance.
2013-01-26 16:34:16 -08:00
Justin Hileman
d5e199b3b9
Update build_bootstrap with all the new classes!
2013-01-26 16:25:57 -08:00
Justin Hileman
a777c587f2
Add resolveValue method to base Template.
...
DRYs up compiled class output a bit and makes things FASTER!
Speeds up value resolution by 33% for primitives, 25% for methods and properties, and 10% for lambdas.
2013-01-26 16:19:06 -08:00
Justin Hileman
cf76a4b8f9
Remove unused escape param from renderInternal
2013-01-26 14:49:14 -08:00
Justin Hileman
05e527fe21
Don't instantiate a LambdaHelper for classes with no Lambdas :)
2013-01-26 14:36:24 -08:00
Justin Hileman
38453d0eac
Merge remote-tracking branch 'rothshahar/patch-1' into dev
2013-01-24 16:45:04 -08:00
Justin Hileman
b1ca6f3cae
Update Lambda Helper docblock. It was a lie.
2013-01-23 06:24:15 -08:00
Justin Hileman
e5bc8d5edf
Add a CascadingLoader implementation.
2013-01-21 10:26:12 -08:00
Justin Hileman
b22d15a759
Add an inline template loader.
...
This loader is awesome for micro-frameworks such as Silex :)
2013-01-21 10:03:57 -08:00
Justin Hileman
59020c2e4f
Remove unnecessary @implements annotations.
2013-01-21 10:02:58 -08:00
Justin Hileman
5fcd9f6d25
mention UnknownTemplateException in loader interface
2013-01-20 15:52:21 -08:00
Justin Hileman
a20068657e
Link to main docs more prominently
2013-01-20 11:24:59 -08:00
Justin Hileman
1f07edd1ad
Bail early on log formatting if message has no placeholders.
2013-01-20 10:59:36 -08:00
Justin Hileman
d0023b5baa
Merge branch 'feature/catchable-exceptions' into dev
2013-01-20 10:51:06 -08:00
Justin Hileman
8b02366a3f
Add test coverage for new exception types.
2013-01-20 10:50:00 -08:00
Justin Hileman
0436c59477
Improve Mustache exception types, catchability.
...
* Subclass common exception types (runtime, logic, invalid argument).
* Add new "unknown x" exceptions for filters, helpers and templates.
* Make all Mustache exceptions implement Mustache_Exception interface… Gotta catch 'em all!
2013-01-20 10:35:55 -08:00
Justin Hileman
5e69e63ffb
Merge branch 'feature/bootstrap' into dev
2013-01-12 09:22:59 -08:00
Justin Hileman
d766076b5a
Add LambdaHelper and Logger to build_bootstrap.
2013-01-12 09:17:33 -08:00
Justin Hileman
01bcf6a51a
Add a build_bootstrap script.
...
Generates `mustache.php`, a single-file bootstrap library which is a lot easier to include in your project.
2013-01-12 09:10:33 -08:00
Justin Hileman
ff66639719
Add Symfony ClassLoader (needed for bootstrap)
2013-01-12 09:10:10 -08:00
Justin Hileman
64dbf3fcb0
Merge branch 'release/2.1.0' into dev
2013-01-11 23:22:53 -08:00
Justin Hileman
6ac9cf03e4
Merge branch 'release/2.1.0'
2013-01-11 23:18:03 -08:00
Justin Hileman
638ed9abc1
Bump version to 2.1.0
2013-01-11 23:17:53 -08:00
Justin Hileman
d252fddf4a
Add plug for PSR-3
2013-01-11 22:53:27 -08:00
Justin Hileman
1515f5126b
Update logger to implement accepted PSR log spec
...
Add tests!
2013-01-11 22:48:43 -08:00
Justin Hileman
7522e2206d
Update loging to match (proposed) logging PSR.
2012-11-30 19:01:47 -08:00
Justin Hileman
d1fb1d86c5
Handle prematurely closed streams in StreamLogger.
2012-11-28 22:45:15 -08:00
Justin Hileman
8c059f566b
MonologLogger should not extend AbstractLogger.
2012-11-28 22:45:15 -08:00
Justin Hileman
782017e461
Add get/setLevel to AbstractLogger.
2012-11-28 22:45:15 -08:00
Justin Hileman
cd4e6b3b26
Initial logging proposal.
...
C.f. #112
Add logging to the Mustache Engine.
* Add a Logger interface.
* If a Logger instance is passed to the Engine constructor
(or added later via setLogger) template compiling,
caching, errors and missing partials will be logged.
* Add a Stream Logger and Monolog Logger implementation. You
should use the Monolog Logger.
2012-11-28 22:45:15 -08:00
Justin Hileman
2e97db3fc0
Clean up options documentation, order.
2012-11-28 20:28:03 -08:00
Justin Hileman
1792140afa
Default cache permissions to the current umask.
...
Use system-defined umask by default, and strongly recommend going that route, but allow overrides.
2012-11-28 20:24:14 -08:00
Justin Hileman
042d537992
Allow "empty" filesystem loader extension.
...
Fixes #123
2012-11-28 12:59:06 -08:00
Justin Hileman
1560863c49
Failing test for empty-string filesystem loader extension.
...
See #123
2012-11-28 12:58:20 -08:00
Justin Hileman
a6e09fd457
Learn to English
2012-10-01 15:46:14 -07:00
Justin Hileman
5b8e2215e2
Adding CONTRIBUTING file
2012-10-01 15:44:49 -07:00
Justin Hileman
242e94c91b
Avoid indentomatic with long filter chains.
2012-10-01 14:51:15 -07:00
Justin Hileman
2872dd5048
Another non-callable test case for good measure
2012-10-01 14:51:15 -07:00
Justin Hileman
fc453b5d01
Better filters implementation:
...
* Throw UnexpectedValueException when unknown
filter is found.
* More optimized compiler code.
* Falsey initial values will still be fed through
the pipe.
2012-10-01 14:51:15 -07:00
Justin Hileman
1cf44d5de9
First value in the pipe should be interpolated first.
2012-10-01 14:51:15 -07:00
Justin Hileman
a64a6f82ee
Handle broken pipes
2012-10-01 14:51:15 -07:00
Justin Hileman
d209d1aea9
Implement {{% FILTERS }} pragma.
2012-10-01 14:51:14 -07:00
Justin Hileman
f73df2af68
Add pragmas to compiler, tokenizer.
2012-10-01 14:37:39 -07:00
Justin Hileman
6a462c6792
Merge branch 'hotfix/2.0.2' into dev
2012-09-12 09:13:16 -07:00
Justin Hileman
d99be3444e
Merge branch 'hotfix/2.0.2'
2012-09-12 09:13:06 -07:00
Justin Hileman
cf3c86f415
Bump patch version
2012-09-12 09:13:01 -07:00
Justin Hileman
5504f59cba
Merge branch 'hotfix/2.0.1' into dev
2012-09-12 09:08:04 -07:00
Justin Hileman
d98153e1e3
Merge branch 'hotfix/2.0.1'
2012-09-12 09:07:44 -07:00
Justin Hileman
43fbd5060c
Bump patch version
2012-09-12 09:07:38 -07:00
Justin Hileman
d1b5601bd2
Fix class names in documentation
2012-08-21 12:59:15 -07:00
Justin Hileman
277288137b
Coding standards fixes.
2012-08-02 10:36:07 -07:00
Justin Hileman
cc7d164a42
Coding standards fix.
2012-08-02 10:32:35 -07:00
Justin Hileman
510f6cafd1
Merge branch 'dev' into feature/lambda-helper
2012-08-02 10:03:30 -07:00
Justin Hileman
5f29e8305b
Fix Context::find
...
Don't ask closures about their methods or properties
2012-08-01 23:08:50 -07:00
Justin Hileman
83cf3158ae
Context::find Failing test
...
Closures don't like it when you touch their properties.
2012-08-01 23:08:17 -07:00