Juan Broullon
1707980a48
Fix stack level too deep error
2017-05-09 11:54:20 -04:00
Mike Angell
c9bac9befe
Merge branch 'master' into contains-strict-fix
2017-03-24 11:09:09 +10:00
chenxianyu
4318240ae0
test: modify Strainer.add_filter duplicate inclusion test case
2017-02-22 10:33:22 +08:00
chenxianyu
aa79c33dda
fix: Strainer.add_filter method
2017-02-13 15:50:19 +08:00
Dylan Thacker-Smith
0c58328a40
test: Equality comparison of two hashes ( #850 )
2017-01-16 15:56:38 -05:00
Dylan Thacker-Smith
2bb3552033
Fix internal liquid error when comparing hash with incompatible type ( #849 )
2017-01-16 13:13:17 -05:00
Dylan Thacker-Smith
b146b49f46
fix: Clear the strainer cache when a global filter is added ( #826 )
2016-11-24 10:32:11 -05:00
Michael Angell
6ed6e7e12f
Allow :id to start with the word contains
2016-08-20 20:32:46 +10:00
Gaurav Chande
5bb211d933
Ensure no tag leakage since registry is global
2016-04-25 11:50:46 -04:00
Gaurav Chande
6adc431a19
Make tag registry enumerable
2016-04-25 11:38:42 -04:00
Florian Weingarten
d2f16d92d6
Fix a bunch of Ruby warnings
2016-03-30 20:42:30 +00:00
Gaurav Chande
8e6b9d503d
Make Strainer also raise when registered method is overriden as protected
2016-02-24 20:23:49 +00:00
Gaurav Chande
8be38d1795
Strainer#add_filter should raise when registered method is overriden as private
2016-02-24 20:03:17 +00:00
Ivan Kuznetsov
dadd9b4dd2
Add strict_variables/strict_filters render options to check for undefined variables and filters
2016-02-03 10:49:33 +07:00
Nick Pearson
c582023321
Keep original stack trace in Liquid::ArgumentError
2015-10-29 08:15:37 -05:00
Dylan Thacker-Smith
704937bc00
Fix offenses from the new version of rubocop.
2015-09-25 19:34:44 -04:00
Loren Hale
0b11b573d9
add global_filter
...
add a global filter using a proc
only add one proc and not an array
add tests to make sure the global_filter is applied after native filters
2015-07-12 16:46:43 +08:00
Dylan Thacker-Smith
cebf75b8d7
Implement line numbers without the Liquid::Token class.
2015-07-08 19:21:59 -04:00
Gaurav Chande
3c23cfc167
Add Liquid::Tag#tag_name
2015-07-02 20:18:09 +00:00
Florian Weingarten
5919626da4
Rename 'has_key?' and 'has_interrupt?'
2015-06-04 13:14:46 -04:00
Florian Weingarten
82269e2509
fix a few more rubocop offenses
2015-06-04 13:09:58 -04:00
Florian Weingarten
e761a6864e
clean up some rubocop stuff
2015-06-04 12:56:29 -04:00
Gaurav Chande
6b0f6401d0
Merge pull request #590 from Shopify/allow-template-tags
...
Local Tags
2015-06-04 11:19:24 -04:00
Gaurav Chande
fc8e6c8d3a
Change Tokenizer test to fetch tokens instead of exposing ivar
2015-06-04 15:10:01 +00:00
Gaurav Chande
8b98f92c7f
Extract tokenize logic from Template to a RubyTokenizer
2015-06-04 04:39:30 +00:00
Dylan Thacker-Smith
8a2947865b
Avoid an exception from checking if a string contains a non-string.
2015-06-03 02:21:51 -04:00
Florian Weingarten
f4724f0db3
Remove support for liquid_methods Module extension
2015-05-14 14:44:19 +00:00
Florian Weingarten
3372ca8136
Rubocop
2015-05-14 14:37:18 +00:00
James Reid-Smith
4592afcc8b
Updated History.md and removed a couple remaining methods using the old signature
2015-04-27 15:45:44 +00:00
Justin Li
f1f3f57647
Remove command_lookups reader
2015-04-21 00:25:51 -04:00
Justin Li
e5dd63e1fc
Expose name, lookups, and command flags from VariableLookup
2015-04-20 17:36:04 -04:00
Dylan Thacker-Smith
950f062041
Allow filters to redefine Object methods to make them invokable.
2015-02-03 13:51:33 -05:00
Dylan Thacker-Smith
73fcd42403
Create a BlockBody class to decouple block body parsing from tags.
2014-11-03 17:07:42 -05:00
Justin Li
dd5ee81089
Disallow number and dash identifier prefixes
2014-10-29 12:08:00 -04:00
Justin Li
a07e382617
Use a single token for identifiers
2014-10-29 11:28:41 -04:00
Dylan Thacker-Smith
f5faa4858c
Remove parsed expression cache.
2014-10-18 15:03:40 -04:00
Dylan Thacker-Smith
a1a128db19
Refactor Condition so that it takes a parsed expression.
2014-10-18 15:03:40 -04:00
Florian Weingarten
7196a2d58e
Avoid parallel assignments
2014-10-18 13:58:32 +00:00
Justin Li
b4ea483c4e
Separate ? and - into special tokens
2014-10-17 13:30:54 -04:00
Dylan Thacker-Smith
f387508666
Parse expressions in Liquid::Variable#parse.
2014-10-08 21:06:59 -04:00
Bogdan Gusiev
4e9d414fde
Fixed condition constains operator with wrong data type
...
"contains" operator on wrong data type should not cause NoMethodError.
2014-08-18 17:32:29 +03:00
Jason Roelofs
173a58d36a
Profile liquid rendering
...
Add a simple profiling system to liquid rendering. Each
liquid tag ({{ }} and {% %}) is processed through this profiling,
keeping track of the partial name (in the case of {% include %}), line
number, and the time it took to render the tag. In the case of {%
include %}, the profiler keeps track of the name of the partial and
properly links back tag rendering to the partial and line number for
easy lookup and dive down. With this, it's now possible to track down
exactly how long each tag takes to render.
These hooks get installed and uninstalled on an as-need basis so by
default there is no impact on the overall liquid execution speed.
2014-08-12 15:37:21 -04:00
Ken Dreyer
ee4295c889
tests: switch to minitest
...
Ruby 1.9+ uses Minitest as the backend for Test::Unit. As of Minitest 5,
the shim has broken some compatibility with Test::Unit::TestCase in some
scenarios.
Adjusts the test suite to support Minitest 5's syntax.
Minitest versions 4 and below do not support the newer Minitest::Test
class that arrived in version 5. For that case, use the
MiniTest::Unit::TestCase class as a fallback
Conflicts:
test/integration/tags/for_tag_test.rb
test/test_helper.rb
2014-07-28 16:36:38 +00:00
Jason Hiltz-Laforge
052ef9fcb8
Reorder constructor to avoid referencing uninitialized variable when environment contains a self-referencing proc
2014-07-24 18:58:23 +00:00
Arthur Nogueira Neves
c864a75903
Merge pull request #341 from curebit/comparation_argument_error
...
Raise Liquid::ArugmentError when condition has wrong usage
2014-07-23 17:03:31 -04:00
Jason Hiltz-Laforge
0df3f1c372
Cache parsed markup parts to avoid repeated calls during template render
2014-07-21 15:55:06 +00:00
Jason Hiltz-Laforge
fd8c30070a
Adding tests, spy dependency
2014-07-16 15:05:45 +00:00
Florian Weingarten
0ac3ec7834
Revert "Merge pull request #352 from gaiottino/master"
...
This reverts commit 553b0926ae , reversing
changes made to 628ab3dc6a .
2014-07-08 14:48:19 +00:00
David Cornu
f57383af37
Allow tag classes to be reloaded when using Liquid.cache_classes is false
...
Because Liquid keeps a reference to tag classes, Rails class reloading may
cause problems with custom tags. This commit introduces a setting that
allows these classes to be resolved when required.
2014-07-02 20:03:18 +00:00
Daniel Gaiottino
2bac6267f9
Add error messages for missing variables when :strict
2014-05-06 16:12:46 +02:00