Skip to content

Commit 15f906c

Browse files
committed
closql-get: No longer resolve slots by default
Proactively resolving slots is never actually unnecessary but often extremely expensive.
1 parent cd7c239 commit 15f906c

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

CHANGELOG

+5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
# -*- mode: org -*-
2+
* v1.2.0 2021/09/28
3+
4+
- By default ~closql-get~ no longer proactively resolves all slots,
5+
which is never actually unnecessary but often extremely expensive.
6+
27
* v1.1.0 2021/09/27
38

49
- Added support for alternative database connectors.

closql.el

+2-2
Original file line numberDiff line numberDiff line change
@@ -350,15 +350,15 @@
350350
(eieio-object-class obj))
351351
(error "Cannot reload object")))
352352

353-
(cl-defmethod closql-get ((db closql-database) ident &optional class)
353+
(cl-defmethod closql-get ((db closql-database) ident &optional class resolve)
354354
(unless class
355355
(setq class (oref-default db object-class)))
356356
(when-let ((row (car (emacsql db [:select * :from $i1
357357
:where (= $i2 $s3)]
358358
(oref-default class closql-table)
359359
(oref-default class closql-primary-key)
360360
ident))))
361-
(closql--remake-instance class db row t)))
361+
(closql--remake-instance class db row resolve)))
362362

363363
(cl-defmethod closql-query ((db closql-database) &optional select pred class)
364364
(if select

0 commit comments

Comments
 (0)