Upload without recompiling

Every time I want to upload to a board, the IDE chooses to recompile.

It shouldn't. Changes were made "quite some time ago" not to completely recompile the same sketch, and somewhat more recently to avoid recompiling the core, even if the sketch has changed.
Mine windows install does this, unless you change board type or exit the IDE. Recently. I've been more worried about not having a "clean" function that would for-sure recompile everything.

Here's a log (somewhat edited so that it fits.) (See the highlighted RED parts.)
I guess there are parts that still don't need to be done, but it's certainly inaccurate to say that the situation has not improved in a decade....

...\arduino-builder ...
...\arduino-builder ...
Using board 'uno' from platform in folder: ...\hardware\arduino\avr
Using core 'arduino' from platform in folder: ...\hardware\arduino\avr
Detecting libraries used...
".../avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10807 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "C:\\Users\\billw\\AppData\\Local\\Temp\\arduino_build_117157\\sketch\\BarometricPressureWebServer.ino.cpp" -o nul
".../avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10807 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files (x86)\\Arduino\\libraries\\Ethernet\\src" "C:\\Users\\billw\\AppData\\Local\\Temp\\arduino_build_117157\\sketch\\BarometricPressureWebServer.ino.cpp" -o nul
".../avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10807 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files (x86)\\Arduino\\libraries\\Ethernet\\src" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\SPI\\src" "C:\\Users\\billw\\AppData\\Local\\Temp\\arduino_build_117157\\sketch\\BarometricPressureWebServer.ino.cpp" -o nul
[color=red]
Using cached library dependencies for file: ...\libraries\Ethernet\src\Dhcp.cpp
Using cached library dependencies for file: ...\libraries\Ethernet\src\Dns.cpp
Using cached library dependencies for file: ...\libraries\Ethernet\src\Ethernet.cpp
Using cached library dependencies for file: ...\libraries\Ethernet\src\EthernetClient.cpp
Using cached library dependencies for file: ...\libraries\Ethernet\src\EthernetServer.cpp
Using cached library dependencies for file: ...\libraries\Ethernet\src\EthernetUdp.cpp
Using cached library dependencies for file: ...\libraries\Ethernet\src\socket.cpp
Using cached library dependencies for file: ...\libraries\Ethernet\src\utility\w5100.cpp
Using cached library dependencies for file: ...\hardware\arduino\avr\libraries\SPI\src\SPI.cpp
[/color]
Generating function prototypes...
".../avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10807 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files (x86)\\Arduino\\libraries\\Ethernet\\src" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\SPI\\src" "C:\\Users\\billw\\AppData\\Local\\Temp\\arduino_build_117157\\sketch\\BarometricPressureWebServer.ino.cpp" -o "C:\\Users\\billw\\AppData\\Local\\Temp\\arduino_build_117157\\preproc\\ctags_target_for_gcc_minus_e.cpp"
"C:\\Program Files (x86)\\Arduino\\tools-builder\\ctags\\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\\Users\\billw\\AppData\\Local\\Temp\\arduino_build_117157\\preproc\\ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
".../avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10807 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\standard" "-IC:\\Program Files (x86)\\Arduino\\libraries\\Ethernet\\src" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\SPI\\src" "C:\\Users\\billw\\AppData\\Local\\Temp\\arduino_build_117157\\sketch\\BarometricPressureWebServer.ino.cpp" -o "C:\\Users\\billw\\AppData\\Local\\Temp\\arduino_build_117157\\sketch\\BarometricPressureWebServer.ino.cpp.o"
Compiling libraries...
Compiling library "Ethernet"
[color=red]Using previously compiled file: C:...7\libraries\Ethernet\Dhcp.cpp.o
Using previously compiled file: C:...7\libraries\Ethernet\EthernetServer.cpp.o
Using previously compiled file: C:...7\libraries\Ethernet\EthernetUdp.cpp.o
Using previously compiled file: C:...7\libraries\Ethernet\Ethernet.cpp.o
Using previously compiled file: C:...7\libraries\Ethernet\socket.cpp.o
Using previously compiled file: C:...7\libraries\Ethernet\Dns.cpp.o
Using previously compiled file: C:...7\libraries\Ethernet\EthernetClient.cpp.o
Using previously compiled file: C:...7\libraries\Ethernet\utility\w5100.cpp.o
[/color]
Compiling library "SPI"
[color=red]Using previously compiled file: C:...7\libraries\SPI\SPI.cpp.o
[/color]
Compiling core...
[color=red]Using precompiled core: ...\Temp\arduino_cache_36981\core\core_arduino_avr_uno_0c812875ac70eb4a9b385d8fb077f54c.a
[/color]