diff --git a/ChangeLog b/ChangeLog
index d25498d..99262b9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,70 @@
+2023-10-19  Akib Azmain Turja  <akib@disroot.org>
+
+	* eat.ti (eat-mono): Remove unused capability 'Ed'
+
+2023-10-17  Akib Azmain Turja  <akib@disroot.org>
+
+	Fix input processing & auto line mode
+
+	* eat.el (eat--process-input-queue): Set
+	'eat--process-input-queue-timer' to 'nil'.
+	* eat.el (eat--auto-line-mode-pending-toggles): New variable.
+	* eat.el (eat--line-mode-enter-auto-1): Don't take any
+	argument.
+	* eat.el (eat--line-mode-exit-auto-1): Don't take any argument.
+	Don't call 'eat-line-mode'.
+	* eat.el (eat--line-mode-enter-auto, eat--line-mode-exit-auto):
+	Queue the toggle in 'eat--auto-line-mode-pending-toggles'
+	instead of starting a timer.
+	* eat.el (eat--line-mode-do-toggles): New function.
+	* eat.el (eat--process-output-queue): Let-bind
+	'eat--auto-line-mode-pending-toggles' to nil.  Call
+	'eat--line-mode-do-toggles'.
+
+2023-10-17  Akib Azmain Turja  <akib@disroot.org>
+
+	Fix compiler warnings
+
+	* eat.el: Wrap all 'emacs-major-version' checks with
+	'eval-when-compile'.
+	* eat.el (eat--process-input-queue): Don't use obsolete
+	generalized variable 'buffer-local-value'.
+
+2023-10-17  Akib Azmain Turja  <akib@disroot.org>
+
+	Don't let 'eat--process-input-queue' to recurse
+
+	* eat.el (eat--defer-input-processing): New variable.
+	* eat.el (eat-mode, eat--eshell-local-mode): Make
+	'eat--defer-input-processing' buffer-local.
+	* eat.el (eat--process-input-queue): If
+	'eat--defer-input-processing' is non-nil, do nothing, otherwise
+	bind it to non-nil while sending input.
+
+2023-10-17  Akib Azmain Turja  <akib@disroot.org>
+
+	Don't mess up terminal when switching to line mode
+
+	* eat.el (eat--line-mode-enter-auto-1)
+	(eat--line-mode-exit-auto-1): New function.
+	* eat.el (eat--line-mode-enter-auto, eat--line-mode-exit-auto):
+	Do everything after the output is processed.
+
+2023-10-10  Akib Azmain Turja  <akib@disroot.org>
+
+	Don't flicker due to screen line breaking
+
+	* eat.el (eat--eshell-synchronize-scroll)
+	(eat--synchronize-scroll): Use 'recenter' instead of
+	'set-window-start' to synchronize scrolling.
+
+2023-10-10  Akib Azmain Turja  <akib@disroot.org>
+
+	Fix side-effect in 'eat--set-term-sixel-params'
+
+	* eat.el (eat--set-term-sixel-params): Fix unintended
+	side-effect.
+
 2023-10-10  Akib Azmain Turja  <akib@disroot.org>
 
 	Fix 'eat--set-term-sixel-params' on text display
diff --git a/eat.el b/eat.el
index bd0ac27..89558f8 100644
--- a/eat.el
+++ b/eat.el
@@ -4,7 +4,7 @@
 
 ;; Author: Akib Azmain Turja <akib@disroot.org>
 ;; Created: 2022-08-15
-;; Version: 0.9.2
+;; Version: 0.9.3
 ;; Package-Requires: ((emacs "26.1") (compat "29.1"))
 ;; Keywords: terminals processes
 ;; Homepage: https://codeberg.org/akib/emacs-eat
diff --git a/eat.texi b/eat.texi
index 6c815a4..aff3d9a 100644
--- a/eat.texi
+++ b/eat.texi
@@ -2,8 +2,8 @@
 
 @comment %**start of header
 @setfilename eat.info
-@set UPDATED 10 October 2023
-@set VERSION 0.9.2
+@set UPDATED 19 October 2023
+@set VERSION 0.9.3
 @documentencoding UTF-8
 @codequotebacktick on
 @codequoteundirected on