emacs/var/elfeed/db/data/d0/d07d16e0a0b121ba2ddab0decdfab8f5bfdf4150
2022-01-03 12:49:32 -06:00

30 lines
2.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<blockquote>
<p>Package cl is deprecated</p>
</blockquote>
<p>Ive been ignoring this startup message for maybe a year now (since the release of Emacs 27).
After recently updating all my packages (and completely breaking my emacs setup) I decided to go through all the startup messages and start fixing things.</p>
<h2 id="the-fix">The Fix</h2>
<p>Searching around the fix is straight forward.
Instead of requiring <code class="language-plaintext highlighter-rouge">cl</code> the correct name is now <code class="language-plaintext highlighter-rouge">cl-lib</code>.</p>
<figure class="highlight"><pre><code class="language-elisp"><span class="p">(</span><span class="nb">require</span> <span class="ss">'cl-lib</span><span class="p">)</span></code></pre></figure>
<p>I knew of one place where I had used <code class="language-plaintext highlighter-rouge">cl</code> (I used the <code class="language-plaintext highlighter-rouge">return-from</code> function to do an early exit from a <code class="language-plaintext highlighter-rouge">while</code> loop), but after making the change, I was still getting the startup message.
Unfortunately that meant the startup message was coming from one of the many packages I had installed, how would I ever find it?</p>
<h2 id="finding-cl-requirements">Finding <code class="language-plaintext highlighter-rouge">cl</code> requirements</h2>
<p>Luckily, we have the <a href="https://emacs.stackexchange.com/questions/58489/how-do-i-debug-package-cl-is-deprecated">emacs stackexchange</a>, with this handy snippet:</p>
<figure class="highlight"><pre><code class="language-elisp"><span class="p">(</span><span class="nb">require</span> <span class="ss">'loadhist</span><span class="p">)</span>
<span class="p">(</span><span class="nv">file-dependents</span> <span class="p">(</span><span class="nv">feature-file</span> <span class="ss">'cl</span><span class="p">))</span></code></pre></figure>
<p>Showing the one place with a <code class="language-plaintext highlighter-rouge">cl</code> requirement:</p>
<p><code class="language-plaintext highlighter-rouge">Users/gonsie/.config/emacs/elisp/color-theme-6.6.0/color-theme.el</code></p>
<p>Unfortunately this is in one of the packages Ive been hand carrying around for over 10 years (longer than my dotfiles repo has existed).
Its finally time to update the implementation of my preferred color theme, but that is a post for another day.</p>