mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-01 05:50:35 +03:00
e5f644c27f
fixes GRO-25 Updated @tryghost/nql to 0.12.0 and other packages that depend on it 1. SQLite: when a filter string contains /. When we use a NQL contain/starts/endsWith filter that contains a slash, underlyingly the whole filter will get converted to a MongoDB query, in which we just use a regexp to represent the filter. In here we will escape the slash: \/ as expected in a regexp. Later when we convert this MongoDB query back to knex/SQL, we use a SQL LIKE query. Currently we don't remove the escaping here for a normal slash. MySQL seems to ignore this (kinda incorrect). SQLite doesn't like it, and this breaks queries on SQLite that use slashes. The solution here is simple: remove the backslash escaping when converting the regexp to LIKE, just like we do with other special regexp characters. 2. We don't escape % and _, which have a special meaning in LIKE queries Usage of % and _ is now as expected and doesn't have the special SQL meaning anymore. |
||
---|---|---|
.. | ||
lib | ||
test | ||
.eslintrc.js | ||
index.js | ||
package.json |