Skip to content

frenchy64/clj-reload

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

clj-reload

A smarter way to reload code. It tracks namespace dependencies, unloads and then loads them in the correct topological order.

Differences from tools.namespace

Progress:

  • Parse namespases
  • Support in-ns
  • Support standalone require/use
  • Do not reload everything on first reload
  • Support :no-unload
  • Support :no-load
  • Only reload active namespaces
  • Handle errors during ns unload
  • Handle errors during ns load
  • Handle errors during ns parse
  • Handle cyclic dependencies
  • Handle file deletion
  • Handle dependency graph changed
  • hooks for unload
  • keep defonce
  • keep protocols?
  • keep multimethods
  • ^:clj-reload/keep
  • shorter meta keys
  • reload on file change
  • return list of nses reloaded
  • ? Try to keep aliases working
  • ? Get dependencies from live ns objects
  • ? Use load to load files, not nses
  • Use LispReader instead of tools.reader

License

Copyright © 2024 Nikita Prokopov

Licensed under MIT.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Clojure 98.9%
  • Shell 1.1%