Commit Graph

109 Commits

Author SHA1 Message Date
Tobias Lutke
cd040dabd8 Implement naive recusrive descent
Ragel doesn't allow us to recurse so we simply
reinvoke the parser for each step.
2012-10-28 21:55:20 -04:00
Tobias Lütke
18b83a58bd Replace regexpes with Ragel grammer
context parsing was handrolled and pretty ad-hoc
this branch exists to explore parsing the context
through a defined fsm as produced by Ragel
2012-10-28 21:50:18 -04:00
Jon Daniel
9c183bea83 added interrupt class for continue/break statements
When a continue or break statement is executed it pushes an interrupt to a
stack in context. If any non-handled interrupts are present blocks will cease
to execute. The for loop can handle the most recent interrupt in the stack.
2012-08-21 13:14:27 -04:00
Jon Daniel
484fd18612 added break and continue tags 2012-08-21 00:00:02 -04:00
Paul Barry
d2827c561b Class name does not match file name 2012-08-19 07:44:35 -04:00
Dylan Smith
f5a20ff8e8 Fix a regression in tablerow limit parameter.
I had accidentally read slice_collection_using_each as using to as an
inclusive limit rather than exclusive, and no tests covered the offset or
limit parameters.
2012-06-21 14:56:05 -04:00
Dylan Smith
d0184555d9 Allow tablerow to work with any Enumerable. Closes #132 2012-06-20 11:07:11 -04:00
Jason Normore
515b31158e strip_html to ignore comments with html tags. fixes #1650 2012-06-11 10:32:12 -04:00
Dennis Theisen
0e3b522fe2 Fix conditions using negative number comparisons 2012-03-12 16:38:34 -04:00
Dennis Theisen
3d7c1c80a0 Ruby 1.8 compatibility fix: Ensure for-loop on an empty string does not enter for-body. 2012-02-29 14:41:21 -05:00
Dennis Theisen
1b2d0198ea Added backwards compatibility test for tablerow tag update
* Follow up to 043d816
2012-02-22 14:30:19 -05:00
Dennis Theisen
043d816460 Fix tablerow block to work with collection names in quoted syntax.
* Allows e.g. {% tablerow product in collections['frontpage'] %} instead of only collections.frontpage
2012-02-22 12:45:38 -05:00
Kristian PD
58ad90677b Clarified compatibility comments, removed unused var from tag test. 2012-01-20 17:22:23 -05:00
Kristian PD
2b04590d4b Revert "Revert "Added backwards compatibility for 1.8.7 String.each returning itself (and 1.9.3 not supporting .each).""
This reverts commit bce0033c65.
2012-01-20 16:54:26 -05:00
Kristian PD
bce0033c65 Revert "Added backwards compatibility for 1.8.7 String.each returning itself (and 1.9.3 not supporting .each)."
This reverts commit 01dea94671.
2012-01-20 16:47:34 -05:00
Kristian PD
01dea94671 Added backwards compatibility for 1.8.7 String.each returning itself (and 1.9.3 not supporting .each).
Moved for tag tests to their own test model from StandardTagTest.
2012-01-20 16:45:41 -05:00
Tobias Lütke
1a1b4702d7 Merge pull request #80 from ROFISH/master
Add Filters to Assign
2011-12-20 13:58:05 -08:00
Jonathan Rudenberg
c4d713b6bb Add modulo filter 2011-11-17 14:08:57 -05:00
Ryan Alyea
975b17b529 Allow filters in assign.
A simple attempt, but basically it shifts the parsing of the right hand side of the assign from a simple context lookup to using the Variable parser (that includes filters). Fixes #79.
2011-11-01 01:46:26 -07:00
Jonathan Rudenberg
05a20c627d Clean up test suite 2011-10-15 20:04:27 -04:00
Jonathan Rudenberg
487b240404 Fix another drop call regression 2011-10-14 11:21:22 -04:00
Jonathan Rudenberg
cdf7f5b6a7 Fix UTC time for Travis 2011-10-13 12:00:42 -04:00
Jonathan Rudenberg
8b5cf73ccc Fix regression with calling a drop with a empty string 2011-10-13 11:47:23 -04:00
7rans
4971b9e9bc Remove comment about stripping split results. 2011-09-01 12:03:27 -04:00
7rans
da34d27258 Add test for split filter. 2011-08-31 22:20:45 -04:00
Tobias Lütke
352f83a9d2 Merge pull request #28 from mcr/mcr_inc_tag
increment tag
2011-07-01 11:48:13 -07:00
Tobias Lütke
410cce9740 Merge pull request #56 from oozou/for-else
For-else !!!
2011-07-01 11:42:17 -07:00
Jonathan Rudenberg
f85bea2902 Remove literal tag (raw is more performant)
This reverts commit c00a650492.
2011-06-13 09:34:15 -04:00
Jonathan Rudenberg
17922273e1 Merge old Shopify/liquid 2011-06-13 09:31:31 -04:00
Jonathan Rudenberg
4087a94d88 Add raw tag. Fixes #37.
Thanks to phaer: https://gist.github.com/1020852

YO DAWG, WE HEARD YOU LIKE LIQUID

SO WE PUT A RAW TAG IN YOUR LIQUID
SO YOU CAN HAVE LIQUID IN YOUR LIQUID
2011-06-12 11:15:16 -04:00
Steven Soroka
888cbe8f09 fix next if /^__.+__$/ to /^(__.+__|object_id)$/, since object_id will complain if it is removed 2011-04-28 15:24:50 -05:00
Steven Soroka
2f11364417 make ruby-debug optional 2011-04-28 15:18:59 -05:00
Steven Soroka
74cdfc6718 Fix commit 7bbb4ff84f so it's backwards-compatible 2011-04-28 15:18:51 -05:00
Prathan Thananart
8319d78c2e Added a failing test case for for-else 2011-04-28 12:00:21 +07:00
Tobias Lütke
bc55c4d348 Merged pull request #34 from claco/date-epoch.
Epoch support
2011-04-25 09:03:30 -07:00
Tobias Lütke
ab556cbdd9 Merged pull request #54 from mhw/fix-drop-numeric-parameter.
Fix passing numeric parameter to drops
2011-04-25 08:59:10 -07:00
Steven Soroka
59a63e0fe5 fix failing test "recursively_included_template_does_not_produce_endless_loop", push needs to come before exception raise since pop is in ensure block and always happens. 2011-04-24 01:09:56 -05:00
Mark H. Wilkinson
662b2983fe Failing test for integer drop lookup. 2011-04-12 14:09:43 +01:00
Mark H. Wilkinson
37a0fe213b Fix text method name clash. 2011-04-12 13:47:27 +01:00
David Turnbull
7bbb4ff84f Context is no longer lost when moving into a Liquid FileSystem. 2011-01-28 21:19:44 -05:00
Austin Mills
4fec29f288 OPS-250 Modifying liquid error handling so that it no longer captures Exceptions that are not subclasses of StandardError (previously, it was rescuing things like Interrupt and NoMemoryError). 2011-01-10 14:55:05 -06:00
Christopher H. Laco
33ecb29d49 Update date to accept epoch 2010-11-07 20:41:41 -05:00
Michael Richardson
3919ff6bc3 renamed inc -> increment
added decrement as well (pre-decremented)
2010-09-02 09:41:43 -04:00
Michael Richardson
381b4f5268 adjusted test case to have third argument 2010-08-31 19:42:13 -04:00
Michael Richardson
ca2fa587cf added tag to increment a variable each time it is referenced 2010-08-31 16:17:12 -04:00
DBA
3d43efe2bc Ruby compatibility issues
- regexp engines are different from 1.8 to 1.9, fixed the literal shorthand regexp accordingly
  - changed the shorthand regexp text from a match to a string scan
  - test_helper now loads rubygems unless RUBY_VERSION is > 1.9
2010-08-24 08:17:42 +08:00
DBA
c00a650492 Literal
- added support for literals [closes #6]

Code beautifier
  - indented some files
2010-08-24 08:17:42 +08:00
DBA
4819eb1a92 IF tag
- now properly allows operands to have conditions (eg and, or) [closes #13]
2010-08-24 08:17:41 +08:00
DBA
8579807d29 Conditions
- added test to assert that conditions can contain conditions within its value (eg 'a-and-b')

Tags
  - indented the if tag

Tests
  - added ruby-debug to the test_helper
  - indented some tests
2010-08-24 08:17:41 +08:00
DBA
daf786fd28 Test Helper
- added assert_template_result_matches
  - fixed indentation / white spacing
2010-08-24 08:17:41 +08:00