Michael Go
04bd9dbe90
refactor Lexer to only take StringScanner
2025-01-07 14:32:46 -04:00
Michael Go
253ec81b56
don't add a breaking change to Parser constructor
2025-01-07 14:32:46 -04:00
Michael Go
e05719fb82
use Kernel Integer parsing for simple Integer expression
2025-01-07 14:32:46 -04:00
Michael Go
ac374a208f
freeze Expression2 parse results
2025-01-07 14:32:46 -04:00
Michael Go
91be3dd75e
keep the expression parse caching per document parsing
2025-01-07 14:32:46 -04:00
Michael Go
40191022e8
initialize StringScanner with input for default
2025-01-07 14:32:46 -04:00
Michael Go
71506ad54e
avoid setting up StringScanner for parsing simple numbers
2025-01-07 14:32:46 -04:00
Michael Go
cef64e277e
early match number expressions with Regex
2025-01-07 14:32:46 -04:00
Michael Go
7c592c1c00
store StringScanner in ParseContext and reuse it through parsing
2025-01-07 14:32:45 -04:00
Michael Go
002e4caea7
refactor Lexer to be static class function
2025-01-07 14:32:07 -04:00
Michael Go
3c16c27ee1
add StringScannerPool for thread safety
2025-01-07 14:32:07 -04:00
Michael Go
eff5c5de8e
code clean up
2025-01-07 14:32:07 -04:00
Michael Go
a672f3836c
don't cache literals for Expression parser
2025-01-07 14:32:07 -04:00
Michael Go
92fa334192
don't cache string expressions to be more perfomant
2025-01-07 14:32:07 -04:00
Michael Go
7c8a269b4d
fix cycle tag not resetting
2025-01-07 14:32:07 -04:00
Michael Go
0b1dc295ff
fix quirky negative sign expression markup parsing
2025-01-07 14:32:07 -04:00
Michael Go
1de6025362
decrease the size of Expression2 LRU cache to store 5 themes
2025-01-07 14:32:07 -04:00
Michael Go
8ecb703d4d
use StringScanner to improve Expression Parsing and Tokenizer
2025-01-07 14:32:06 -04:00
Ian Ker-Seymer and GitHub
b4667adadf
Bump to v5.6.0 ( #1876 )
2024-12-19 15:01:16 -05:00
Bahar Pourazar
60701f865d
Bump version patch
2024-12-17 17:37:00 +00:00
Bahar Pourazar
0c49dd592f
bring back to_s.to_str
2024-12-17 17:37:00 +00:00
Bahar Pourazar
a0a4307e7d
Fix bug in tokenizer with nil value
2024-12-17 15:34:13 +00:00
Ian Ker-Seymer and GitHub
fdd8c714b2
Stop testing against liquid-c ( #1868 )
...
* Stop testing against `liquid-c`
* Bump to `v5.6.0.rc2`
2024-12-11 12:23:50 -05:00
Ian Ker-Seymer and GitHub
63583ffe5b
Write one value at a time for array variables ( #1863 )
...
* Write one value at a time for array variables
* Handle recursive array
2024-12-11 10:16:58 -05:00
Ian Ker-Seymer
42b6763546
Bump to v5.6.0.rc1
2024-11-04 15:26:56 -05:00
Michael Go
c77ff68573
clean up all warnings by using new Environment
2024-11-04 16:15:05 -04:00
Ian Ker-Seymer and GitHub
b0cba0bfd2
Remove Liquid.cache_classes option ( #1847 )
2024-11-04 14:41:56 -05:00
Michael Go
1f3ea7322b
avoid allocating new empty array
2024-11-04 15:35:45 -04:00
Michael Go and GitHub
06f44226c0
Merge pull request #1846 from Shopify/env-propgating
...
propagate Environment on new Context creation
2024-11-04 15:33:50 -04:00
Michael Go
3ed54bfdf9
propagate Environment on new Context creation
2024-11-04 15:32:07 -04:00
Michael Go
29986d3704
remove TagRegistry
2024-11-04 15:22:56 -04:00
Michael Go
ffce6de8bb
avoid using StringScanner eos
2024-10-30 13:45:10 -03:00
Michael Go
f6a3e25e2e
fix parsing quirky incomplete expressions
2024-10-30 13:44:35 -03:00
Michael Go
1375a9e4dc
fix lexer parsing ID 'contains' as comparison
2024-10-30 13:39:55 -03:00
Michael Go
8a9f33a060
raise syntax error from lexer parser with utf8 character
2024-10-29 22:04:37 -03:00
Michael Go and GitHub
1943441361
Merge pull request #1835 from Shopify/fix-multibyte-variable-parsing
...
fix parsing Variable blockbody with multibyte character
2024-10-28 19:31:21 -03:00
Michael Go
d94293a464
fix lexer parsing comparison without whitespaces
2024-10-28 19:30:12 -03:00
Michael Go
6c13805a60
fix parsing Variable blockbody with multibyte character
2024-10-28 17:33:55 -03:00
Michael Go and GitHub
b4196489c2
Merge pull request #1833 from Shopify/fast-variable-parse
...
Faster Variable BlockBody Matching
2024-10-28 15:28:04 -03:00
Michael Go
fb6ac72520
use byteslice to create Variable BlockBody
2024-10-25 15:41:35 -03:00
Michael Go
cb16219552
faster BlockBody variable matching
2024-10-25 15:22:56 -03:00
Gray Gilmore
8d7ed706f4
Update liquid docs for named parameters
...
The YARD liquid gem now supports specifying named parameters. For the
core liquid tags and filters this is the only object I could find that
needed to be updated.
2024-10-24 09:56:50 -07:00
Ian Ker-Seymer and GitHub
b3553787c8
Speed up the lexer for Ruby 3.4+ ( #1832 )
...
* Speed up lexing
* Bump msrv to 3.0 (from 2.7)
* Normalize test for ruby-head compat
* Fix bug when parsing negative numbers
2024-10-23 14:15:33 -04:00
Ian Ker-Seymer and GitHub
b233b3d081
Bump to v5.6.0.alpha ( #1819 )
2024-08-15 16:12:16 -04:00
Alex Coco
9067e5167a
Handle interrupts in table row
2024-08-15 11:56:29 -04:00
Ian Ker-Seymer and GitHub
fb6634f454
Add concept of Liquid::Environment ( #1815 )
...
* Add concept of `Liquid::World`
* Rename `World` to `Environment`
2024-08-07 15:00:44 -04:00
Ian Ker-Seymer and Ian Ker-Seymer
a0411e0927
Bump to v5.5.1
2024-07-22 23:25:56 -04:00
Marco Concetto Rudilosso and Ian Ker-Seymer
d36937d17f
Add named? method to Cycle class for checking if the cycle is named
2024-07-16 15:52:25 -04:00
Jenny Shen
fc4f19471e
Update rubocop to 1.61.0
2024-04-05 10:23:37 -04:00
Ian Ker-Seymer
56a0b7c42b
Bump to v5.5.0
2024-03-21 15:48:54 -04:00