Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve repeated require for same path #7

Closed
mfikes opened this issue Feb 4, 2015 · 2 comments
Closed

Improve repeated require for same path #7

mfikes opened this issue Feb 4, 2015 · 2 comments

Comments

@mfikes
Copy link
Owner

mfikes commented Feb 4, 2015

Logging the set of require calls when firing up the REPL shows that some JavaScript files are being required multiple times (see cljs/core.js and goog/string/string.js repeated for example):

2015-02-04 11:45:02.463 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/base.js
2015-02-04 11:45:02.466 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/deps.js
2015-02-04 11:45:02.493 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/ambly_repl_deps.js
2015-02-04 11:45:02.509 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/../cljs/core.js
2015-02-04 11:45:02.545 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/string/stringbuffer.js
2015-02-04 11:45:02.545 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/array/array.js
2015-02-04 11:45:02.546 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/asserts/asserts.js
2015-02-04 11:45:02.547 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/debug/error.js
2015-02-04 11:45:02.547 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/dom/nodetype.js
2015-02-04 11:45:02.547 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/string/string.js
2015-02-04 11:45:02.549 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/object/object.js
2015-02-04 11:45:02.550 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/string/string.js
2015-02-04 11:45:02.652 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/../cljs/core.js
2015-02-04 11:45:02.657 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/string/stringbuffer.js
2015-02-04 11:45:02.657 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/array/array.js
2015-02-04 11:45:02.658 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/asserts/asserts.js
2015-02-04 11:45:02.658 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/debug/error.js
2015-02-04 11:45:02.658 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/dom/nodetype.js
2015-02-04 11:45:02.659 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/string/string.js
2015-02-04 11:45:02.659 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/object/object.js
2015-02-04 11:45:02.668 Ambly Demo[2688:69160] require: /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/../cljs/repl.js
@mfikes
Copy link
Owner Author

mfikes commented Feb 4, 2015

I think for now, maintaining a set of path names already required and skipping if already processed would take care of this. Quick reading of Node.js require semantics appears to involve similar logic (along with a require.cache that can be manipulated by user code to invalidate cached entries.)

@mfikes
Copy link
Owner Author

mfikes commented Feb 4, 2015

Guarding against reload results in:

2015-02-04 12:23:12.091 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/base.js
2015-02-04 12:23:12.101 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/deps.js
2015-02-04 12:23:12.130 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/ambly_repl_deps.js
2015-02-04 12:23:12.145 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/../cljs/core.js
2015-02-04 12:23:12.180 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/string/stringbuffer.js
2015-02-04 12:23:12.180 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/array/array.js
2015-02-04 12:23:12.181 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/asserts/asserts.js
2015-02-04 12:23:12.182 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/debug/error.js
2015-02-04 12:23:12.182 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/dom/nodetype.js
2015-02-04 12:23:12.182 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/string/string.js
2015-02-04 12:23:12.184 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/object/object.js
2015-02-04 12:23:12.285 Ambly Demo[3422:89726] Loading /Users/mfikes/Documents/Projects/ambly/Clojure/out/goog/../cljs/repl.js

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant