aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/auth-config.el9
-rw-r--r--modules/calibredb-epub-config.el7
-rw-r--r--modules/chrono-tools.el5
-rw-r--r--modules/config-utilities.el19
-rw-r--r--modules/diff-config.el6
-rw-r--r--modules/tramp-config.el9
6 files changed, 53 insertions, 2 deletions
diff --git a/modules/auth-config.el b/modules/auth-config.el
index f18c0c1fd..62d773057 100644
--- a/modules/auth-config.el
+++ b/modules/auth-config.el
@@ -35,6 +35,15 @@
(require 'system-lib)
(require 'user-constants) ;; defines authinfo-file, read at load time below
+;; Lazily-loaded oauth2-auto / plstore internals used by the cache-fix advice
+;; below. oauth2-auto is required at runtime inside the advised function; these
+;; declarations satisfy the byte-compiler without forcing an eager load.
+(declare-function oauth2-auto--compute-id "oauth2-auto")
+(declare-function plstore-get "plstore")
+(declare-function plstore-close "plstore")
+(defvar oauth2-auto--plstore-cache)
+(defvar oauth2-auto-plstore)
+
(defcustom cj/auth-source-debug-enabled nil
"Non-nil means enable verbose auth-source debug logging.
diff --git a/modules/calibredb-epub-config.el b/modules/calibredb-epub-config.el
index 6d5963515..6c69ca0e8 100644
--- a/modules/calibredb-epub-config.el
+++ b/modules/calibredb-epub-config.el
@@ -77,6 +77,13 @@
(defvar calibredb-show-entry-switch) ; from calibredb-show.el
(defvar calibredb-sort-by) ; from calibredb-core.el
(defvar calibredb-search-filter) ; from calibredb-search.el
+;; calibredb filter-state vars (set by cj/calibredb-clear-filters and friends)
+(defvar calibredb-tag-filter-p) ; from calibredb-search.el
+(defvar calibredb-favorite-filter-p) ; from calibredb-search.el
+(defvar calibredb-author-filter-p) ; from calibredb-search.el
+(defvar calibredb-date-filter-p) ; from calibredb-search.el
+(defvar calibredb-format-filter-p) ; from calibredb-search.el
+(defvar calibredb-search-current-page) ; from calibredb-search.el
;; -------------------------- CalibreDB Ebook Manager --------------------------
diff --git a/modules/chrono-tools.el b/modules/chrono-tools.el
index 6f88b2018..744781268 100644
--- a/modules/chrono-tools.el
+++ b/modules/chrono-tools.el
@@ -22,6 +22,11 @@
(require 'user-constants)
+;; Declared by the lazily-loaded `tmr' package; quiet the byte-compiler
+;; without forcing the package to load.
+(defvar tmr-sound-file)
+(defvar tmr-descriptions-list)
+
;; -------------------------------- Time Zones ---------------------------------
(use-package time-zones
diff --git a/modules/config-utilities.el b/modules/config-utilities.el
index b3eec5d3d..f448327c1 100644
--- a/modules/config-utilities.el
+++ b/modules/config-utilities.el
@@ -21,6 +21,19 @@
(require 'find-lisp)
(require 'profiler)
+;; External variables referenced at runtime only (org and the native
+;; compiler are loaded lazily; declare to quiet the byte-compiler).
+(defvar comp-async-report-warnings-errors)
+(defvar org-ts-regexp)
+(defvar org-agenda-files)
+
+;; External functions referenced at runtime only.
+(declare-function org-element-parse-buffer "org-element")
+(declare-function org-element-map "org-element")
+(declare-function org-element-property "org-element-ast")
+(declare-function org-time-string-to-absolute "org")
+(declare-function org-alert-check "org-alert")
+
;;; -------------------------------- Debug Keymap -------------------------------
(defvar-keymap cj/debug-config-keymap
@@ -65,13 +78,15 @@
(with-eval-after-load 'emacsql-sqlite-builtin
(cl-defmethod emacsql-close :around
((connection emacsql-sqlite-builtin-connection))
- (when (oref connection handle)
+ ;; The class is loaded lazily, so the slot is unknown at compile time.
+ (when (with-no-warnings (oref connection handle))
(cl-call-next-method))))
(with-eval-after-load 'emacsql-sqlite-module
(cl-defmethod emacsql-close :around
((connection emacsql-sqlite-module-connection))
- (when (oref connection handle)
+ ;; The class is loaded lazily, so the slot is unknown at compile time.
+ (when (with-no-warnings (oref connection handle))
(cl-call-next-method))))
;;; -------------------------------- Benchmarking -------------------------------
diff --git a/modules/diff-config.el b/modules/diff-config.el
index 75869a73f..0c09b9516 100644
--- a/modules/diff-config.el
+++ b/modules/diff-config.el
@@ -28,6 +28,12 @@
;;; Code:
+(declare-function ediff-setup-keymap "ediff")
+(declare-function ediff-next-difference "ediff")
+(declare-function ediff-previous-difference "ediff")
+(declare-function cj/ediff-hook "diff-config")
+(declare-function winner-undo "winner")
+
(use-package ediff
:ensure nil ;; built-in
:defer t
diff --git a/modules/tramp-config.el b/modules/tramp-config.el
index 23010b3e4..e3b835f1f 100644
--- a/modules/tramp-config.el
+++ b/modules/tramp-config.el
@@ -23,6 +23,15 @@
;;; Code:
+;; Silence byte-compiler "assignment to free variable" warnings for vars
+;; defined by lazily-loaded packages (tramp, dirtrack, magit). These are
+;; only set inside the use-package :config block, after the package loads.
+(defvar tramp-copy-size-limit)
+(defvar tramp-use-ssh-controlmaster-options)
+(defvar tramp-cleanup-idle-time)
+(defvar dirtrack-list)
+(defvar magit-git-executable)
+
(use-package tramp
:defer .5
:ensure nil ;; built-in