The pipeline impl had a bug which caused a parse error; this happened
because we directly wrote the length as an integer (with the tsymbol)
when we were supposed to only write the integer in its string form
to the stream. This was fixed.
Also, some preliminary tests were added for pipelines.
If we do permit this to happen, it can lead to several errors. For
example, if we ran this:
get rust'ferris'
the tokenizer would have inferred this as ["get", "rust", "ferris"]
which will lead to an action error. This commit prevents that from
happening.
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
If the matched group has a starting 0x22, only then remove the trailing
quotes. Similarly, if the matched group has a starting 0x27, only then
remove the trailing quote.
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
The `ParsedConfig` struct was renamed to `ConfigurationSet` because it
is more clear in contexts as parsing can be an ambiguous term in several
places.
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
43bef62a incorrectly dismissed the check for host/port config in the
case of a non-TLS setup. This commit fixes that.
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
The previous configuration handling was rather messed up,
which however is something that this commit attempts to
simplify.
The check for configuration conflict was resolved with a far
more feasible approach and the handling of CLI/config file
configuration was also simplified greatly.
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
The CLI simply replaced all the quotes in the origin string which can
result in unexpected behavior. For example, consider the input string:
SET "all the cars' tyres" 'have holes'
In our last impl, we'd end up replacing all single and double quotes
resulting in the origin string being entirely changed! This commit
fixes this.