| At line 1 changed one line | 
| All have a start and end, and use curly brackets.  Some take additional parameters separated by colons. : | 
| All have a start and end and use curly brackets.  Some take additional parameters separated by colons. : | 
| At line 17 added 8 lines | 
| VRL encodes the inner data....@ becomes {at}, % becomes {percent} etc. | 
| {{{ | 
| vrlencode_start | 
| }}} | 
| VRL decodes the inner data.  {at} becomes @ etc | 
| {{{ | 
| vrldecode_start | 
| }}} | 
| At line 49 changed one line | 
| Safeguards the text for raw SQL preventing ' and ; and %, etc risks in input text. | 
| Safeguards the text for raw SQL preventing ' and; and %, etc risks in the input text. | 
| At line 83 changed one line | 
| Parsing a date to a millisecond value.  Example: {parse_start:MMddyy HH~..~mm~..~ss}042578 22:43:12{parse_end}   Note how the sideways colon is used to represent the colon since colon is our separator character.  ~..~~ means : in functions where that scenario occurs. For strict parsing use character '=' in the beginning of the date format like {parse_start:MMddyyyy}. | 
| Parsing a date to a millisecond value.  Example: {parse_start:MMddyy HH~..~mm~..~ss}042578 22:43:12{parse_end}   Note how the sideways colon is used to represent the colon since colon is our separator character.  ~..~~ means: in functions where that scenario occurs. For strict parsing use character '__=__' at the beginning of the date format like {parse_start:__=__MM/dd/yyyy}. It will parse only valid dates and fails for example for __13__/02/2022 (Month maximum number is __12__). | 
| At line 92 changed one line | 
| protocol,user,pass,host,port,path,file,query, in this order. | 
| protocol, user, pass, host, port, path, file, and query in this order. | 
| At line 100 changed one line | 
| Do very basic math operation on text formatted math.  Example:  {math_start:l}5+5{math_end}  would result in 10.  The l is for LONG.  f is for FLOAT.  i is for INTEGER, which is the default.  So {math_start:f}5+5{math_end}  would result in 10.0 | 
| Do very basic math operations on text formatted math.  Example:  {math_start:l}5+5{math_end}  would result in 10.  The l is for LONG.  f is for FLOAT.  i is for INTEGER.  d is for big numbers (double of the integer) which is the default. So {math_start:f}5+5{math_end}  would result in 10.0 | 
| At line 104 changed one line | 
| Reference a list of user attributes, separated by a delimitator character, of a group of users. Example: {group_start:email:MainUsers:,}Mygroup{group_end} comma separated list of user e-mail addresses members of Mygroup from MainUsers connection group | 
| Reference a list of user attributes, separated by a delimitator character, of a group of users. Example: {group_start:email:MainUsers:,}Mygroup{group_end} comma-separated list of user e-mail addresses members of Mygroup from MainUsers connection group | 
| At line 112 changed one line | 
| Turn off function replacement. If the text start with the variable {ignore_functions} function replacement will be turned off. | 
| Turn off function replacement. If the text starts with the variable {ignore_functions} function replacement will be turned off. | 
| At line 121 changed one line | 
| !Save, Load, and Add to named lists of items in a job flow.  (UserVariable task only)  (CrushFTP 10.3.0_43+ supports this)\\ | 
| !Save, Load, and Add to named list items in a job flow.  (UserVariable task only)  (CrushFTP 10.3.0_43+ supports this)\\ |