Skip to content

CMR-11429 warnings about libs overwriting built in clojure functions - #2494

Merged
jceaser merged 24 commits into
masterfrom
cmr-11429-libs-over-clojure
Sep 11, 2026
Merged

jceaser merged 24 commits into
masterfrom
cmr-11429-libs-over-clojure

Conversation

@jceaser

@jceaser jceaser commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Overview

While working on https://bugs.earthdata.nasa.gov/browse/CMR-11368 an attempt was made to clean up some long standing warnings in the compile logs related to libraries trying to overwrite built in clojure functions. These log entries were getting in the way and making it hard to read other errors of interest. So, some time was taken to resolve those issues.

These changes are all the changes which were not directly related to CMR-11368, since there were two tickets this one is used for the overflow changes allowing each set of changes to have their own life cycle.

Example of removed warnings

WARNING: update-vals already refers to: #'clojure.core/update-vals in namespace: clojure.tools.analyzer.utils, being replaced by: #'clojure.tools.analyzer.utils/update-vals
WARNING: update-keys already refers to: #'clojure.core/update-keys in namespace: clojure.tools.analyzer.utils, being replaced by: #'clojure.tools.analyzer.utils/update-keys
WARNING: update-vals already refers to: #'clojure.core/update-vals in namespace: clojure.tools.analyzer, being replaced by: #'clojure.tools.analyzer.utils/update-vals
WARNING: update-keys already refers to: #'clojure.core/update-keys in namespace: clojure.tools.analyzer, being replaced by: #'clojure.tools.analyzer.utils/update-keys
WARNING: update-vals already refers to: #'clojure.core/update-vals in namespace: clojure.tools.analyzer.passes, being replaced by: #'clojure.tools.analyzer.utils/update-vals
WARNING: update-vals already refers to: #'clojure.core/update-vals in namespace: clojure.tools.analyzer.passes.uniquify, being replaced by: #'clojure.tools.analyzer.utils/update-vals
WARNING: abs already refers to: #'clojure.core/abs in namespace: medley.core, being replaced by: #'medley.core/abs

What are the changes?

  • [compojure "1.6.3"]
  • [nrepl/nrepl "1.1.0"]
  • [org.clojure/core.cache "1.0.225"]
  • [org.clojure/test.check "1.1.1"]
  • [org.clojure/tools.reader "1.4.0"]

Required Checklist

  • New and existing unit and int tests pass locally and remotely
  • clj-kondo has been run locally and all errors in changed files are corrected
  • I have commented my code, particularly in hard-to-understand areas
  • I have made changes to the documentation (if necessary)
  • My changes generate no new warnings in fact less!!!!!!!!

@jceaser
jceaser requested review from DuJuan, daniel-zamora, eereiter, jaortega527, jmaeng72 and zimzoom and removed request for DuJuan September 4, 2026 19:03
@codecov-commenter

codecov-commenter commented Sep 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 57.92%. Comparing base (5f10bb7) to head (afb805b).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2494      +/-   ##
==========================================
- Coverage   57.92%   57.92%   -0.01%     
==========================================
  Files        1075     1075              
  Lines       74666    74666              
  Branches     2178     2176       -2     
==========================================
- Hits        43252    43251       -1     
  Misses      29380    29380              
- Partials     2034     2035       +1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@jceaser
jceaser marked this pull request as ready for review September 8, 2026 10:32
"Common nREPL component for CMR apps."
(:require
[clojure.tools.nrepl.server :as nrepl]
[nrepl.server :as nrepl]

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the old package was replaced with this project and we need to update our code

:dev {:dependencies [[org.clojars.gjahad/debug-repl "0.3.3"]
[org.clojure/tools.namespace "0.2.11"]
[org.clojure/tools.nrepl "0.2.13"]
[nrepl/nrepl "1.1.0"]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why not have it inherent from parent project.clj?

Comment thread common-app-lib/project.clj Outdated
:dev {:dependencies [[org.bouncycastle/bcpkix-jdk18on "1.85"]
[org.clojure/tools.namespace "0.2.11"]
[org.clojure/tools.nrepl "0.2.13"]
[nrepl/nrepl "1.1.0"]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you added nrepl and tools.nrepl to the parent project.clj, so why not use it here? Instead of explictly adding the versions? This note is for all your changes across all the projects here

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I only used parent if the project was was already using it. I could be more aggressive and add it, but I have had trouble in the past doing to much at once.

Comment thread bootstrap-app/project.clj
@jceaser
jceaser requested a review from jmaeng72 September 11, 2026 14:18
@jceaser
jceaser merged commit c9f6b1c into master Sep 11, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants