August 2018 Monthly Update
By Daniel Compton
Clojurists Together news
August was the first month of funding for the quarter, so today we present the initial round of updates on new projects, cljdoc and Shadow CLJS.
This month we have hired Rachel Magruder part-time to help out with the day-to-day running of Clojurists Together. If you send us an email you may get a response from her. She is also helping out with the backend processing of contracts, grant reports, payments, e.t.c.
Thanks to all of our members who support Clojurists Together. It’s thanks to your generous support that we can do this.
I switched the storage layer. SQLite is now used instead of lib-grimoire. More details in the respective architecture decision record: ADR-0013
This was a lot of work but it sets the project up for more interesting extensions besides API documentation and articles (think specs & examples).
Also I looked more into integrating specs but without changes to spec it is impossible to determine if a spec originates from the artefact that is being analysed or from one of its dependencies. To fix this specs will need to support metadata (CLJ-2194) but the timeline for this is unclear.
In the light of this I’m considering focusing on examples first. More details to come.
Some more minor things that happened:
- I printed stickers which I’m planning to send to contributors.
- Bozhidar likes favicons so I added one :)
- Work is underway to integrate cljdoc into Dash
- Various fixes to the analyser code, mostly to eliminate slight differences between Clojure and ClojureScript as well as some dependency related improvements.
- I shipped a quick switcher (demo) that allows you to switch between projects that you opened recently. I hope to expand this to quickly finding vars, namespaces and articles in the current project.
I’ll also be at ClojuTRE next week. Say hi if you’re around! 👋
Oh and after ClojuTRE I’ll be on a sailboat for two weeks so there will be less activity than usual.
Shadow CLJS updates
August 1 - 15
I released shadow-cljs versions 2.4.31 up to 2.5.1.
Noteworthy changes include:
- Started reworking the shadow-cljs standalone launcher which is responsible for downloading dependencies and launching the actual tool. Intent here is to gain access to git-deps and dynamically loading dependencies without requiring a hard restart.
- Started publishing AOT compiled shadow-cljs versions which can significantly improve start-up times. Used by default when using the standalone launcher.
- Fixed a few minor bugs and cleaned up some rogue log output.
I released shadow-cljs versions 2.6.0 up to 2.6.6
The UI is still a Work-in-Progress but it is now possible to control builds via the Web UI. Builds can be started/stopped and inspected (although the UI doesn’t visualize this well yet).
I reverted the launcher changes I did recently due to some compatibility issues where
tools.deps was handling dependencies differently than
pomegranate and thus breaking builds that were working previously. Need to investigate this a bit more before making the switch again. There were also a few classloader issues that need to be sorted out.
- Fixed an issue with npm link
- Fixed an issue with CSS reloading in Electron
- Fixed an
nsparsing issue where an invalid
nsform would pass without warnings
- Added support for private
s3maven repos via s3-wagon-private