sqlakit 0.22.4__tar.gz → 0.22.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. {sqlakit-0.22.4 → sqlakit-0.22.5}/PKG-INFO +1 -1
  2. {sqlakit-0.22.4 → sqlakit-0.22.5}/pyproject.toml +1 -1
  3. {sqlakit-0.22.4 → sqlakit-0.22.5}/pyproject.toml.orig +1 -1
  4. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_render.py +8 -11
  5. {sqlakit-0.22.4 → sqlakit-0.22.5}/LICENSE +0 -0
  6. {sqlakit-0.22.4 → sqlakit-0.22.5}/README.md +0 -0
  7. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/__init__.py +0 -0
  8. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_base.py +0 -0
  9. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_cli.py +0 -0
  10. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_db.py +0 -0
  11. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_discovery.py +0 -0
  12. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_linters.py +0 -0
  13. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_model.py +0 -0
  14. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_project.py +0 -0
  15. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_pycharm.py +0 -0
  16. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_query.py +0 -0
  17. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_recording.py +0 -0
  18. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_registry.py +0 -0
  19. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_routing.py +0 -0
  20. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_sql.py +0 -0
  21. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_sql_formatter.py +0 -0
  22. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/_static.py +0 -0
  23. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/asyncio/__init__.py +0 -0
  24. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/asyncio/_db.py +0 -0
  25. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/asyncio/_registry.py +0 -0
  26. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/asyncio/orm.py +0 -0
  27. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/asyncio/sql.py +0 -0
  28. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/exceptions.py +0 -0
  29. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/orm.py +0 -0
  30. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/py.typed +0 -0
  31. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/pytest_plugin.py +0 -0
  32. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/sql.py +0 -0
  33. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/testing.py +0 -0
  34. {sqlakit-0.22.4 → sqlakit-0.22.5}/sqlakit/types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlakit
3
- Version: 0.22.4
3
+ Version: 0.22.5
4
4
  Summary: A toolkit for SQLAlchemy applications.
5
5
  Keywords: sqlalchemy,database,orm,sql,asyncio
6
6
  Author: Anton Ruhlov
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sqlakit"
3
- version = "0.22.4"
3
+ version = "0.22.5"
4
4
  description = "A toolkit for SQLAlchemy applications."
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sqlakit"
3
- version = "0.22.4"
3
+ version = "0.22.5"
4
4
  description = "A toolkit for SQLAlchemy applications."
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -278,23 +278,20 @@ def _place(
278
278
  starts = [0, *(index + 1 for index, char in enumerate(one.sql) if char == "\n")]
279
279
  for line, column in places:
280
280
  offset = starts[min(line, len(starts)) - 1] + column - 1
281
- text = one.sql[starts[line - 1] :].split("\n", 1)[0].strip()
281
+ written = one.sql[starts[line - 1] :].split("\n", 1)[0]
282
+ text = written.strip()
283
+ # The line the linter stopped on, and a caret under where it stopped.
284
+ indent = len(written) - len(written.lstrip())
285
+ shown = f"\n {text}\n {' ' * max(column - 1 - indent, 0)}^"
282
286
  piece = one.written_by(offset)
283
287
  if piece is not None:
284
- what = " ".join(one.sql[piece.start : piece.end].split())
285
- message = (
286
- f"{piece.call} writes SQL {linter.name} cannot parse, {{}}: {what}"
287
- )
288
+ message = f"{piece.call} writes SQL {linter.name} cannot parse, {{}}{shown}"
288
289
  key = (path, *piece.span, message)
289
290
  else:
290
291
  at = source.find(text) if text else -1
291
292
  start = max(at, 0)
292
- key = (
293
- path,
294
- start,
295
- start + len(text),
296
- f"{linter.name} cannot parse the rendered SQL, {{}}: {text}",
297
- )
293
+ message = f"{linter.name} cannot parse the rendered SQL, {{}}{shown}"
294
+ key = (path, start, start + len(text), message)
298
295
  ways = found.setdefault(key, [])
299
296
  if _WAYS[one.variant] not in ways:
300
297
  ways.append(_WAYS[one.variant])
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes