Through extension modules Venice provides specific functionality that not all application require thus keeping load time and resource usage low if the modules are not used.
Extension Modules are plain, built-in Venice scripts and must be loaded
explicitly with (load-module :name). Venice tracks the modules loaded
and loads a module only once and skips subsequent load attempts.
- Maven
- Shell
- Grep
- Configuration
- Components
- Hexdump
- GEO IP
- Mercator Maps
- CIDR (Classless Inter-Domain Routing)
- Semantic Versioning
- Apache Tomcat WEB Server
- Ring WEB App library
- WebDAV
- Jackson JSON
Venice can be forced to reload an already loaded module
(load-module :maven)
; use the module
(maven/download "org.knowm.xchart:xchart:3.5.4")
; reload the module
(ns-remove maven)
(load-module :maven true)