Code review was in order last week, and some major improvements were made regarding my pseudo-spaghetti code, which now should be more readable and maintainable. Down below you can check out the complete list of changes made recently to prosody files, in order to polish the Installer!
prosodyctl1: Swapped prints for the show_message function
2: Removed a comment from the remove command
3: Rewrote the install command
4: Rewrote the remove command
5: Rewrote the list command, to make it cleaner and easier to work with
6: Install, remove and list now use the execute_command instead
7: Removed the auxiliary command enabled_plugins
core/configmanager1: Added support to complement_lua_path
1: Added the check_flags function - changeset
2: Added the call_luarocks function
3: call_luarocks command differentiates output, when being called by install/remove
4: The call_luarocks function can now also deal with the list command
5: Added the execute_command function
6: check_flags now always consider that the plugin is specified at the penultimate argument that it receives
7: Changed a comment
util/startup1: The setup_plugindir function now uses the resolve_relative_path function
2: setup_plugindir now uses lfs.mkdir to check/create directories
3: Removed/rewrote comments at setup_plugindir
4: removed redundant variable
5: Now also check cpath for duplicates
6: Now uses complement_lua_path to deal with lua's path/cpath
7: Reorganized some code at setup_plugindir
util/paths1: Added the function complement_lua_path
2: Refactored a variable, to avoid shadowing
Miscellaneousmake_repo: moved make_repo script into the tools/directory
Nothing too special this week on the technical side, but time was cut a bit shorter due to personal reasons, so I need to do some catchup again! Google is stressing that deadlines are around, and time is flying reaaaaaaally fast.
The most important objective of cleaning code was given priority, and I think a good effort was made towards it. Some potential issues are still lying around in my mind, but documentation needs to be given a serious tackle.
At the very least this week, the main focus should be on documentation and a couple of hours debugging some areas I believe might give problems.