Fast Workaround for Conflicting Project Dependency Loading In Emacs

This error message is new to the bleeding edge of emacs, but the error itself, the loading of dependencies of the same name, is not:

condition-case: Eager macro-expansion failure: (error "Feature ‘project’ loaded from \"/usr/share/emacs/31.0.50/lisp/progmodes/project.elc\" is now provided by \"~/.emacs.d/straight/build/project/project.elc\"")

I had this error in dealing with eglot and dape loading in certain packages, one from straight, and one that's built in.

tl;dr

Each time I have a conflicted load, I've done this before loading in any other package in my init.el:

(use-package project
  :straight (:type built-in))
(use-package xref
  :straight (:type built-in))
(use-package jsonrpc
  :straight (:type built-in))

Working ok so far. Of course, I'm on bleeding edge emacs, which has jsonrpc 1.0.25, so dape can use it. If you're on emacs 29.4, the built in is still 1.0.24. In which case, you might want to specify to use your most up to date version of jsonrpc:

(use-package jsonrpc
  :straight 't)