Abstract:
Programming languages tend to evolve with new methodologies, user requirements, technology, security constraints etc. In order to stay relevant with changing demands, programming languages needs to keep adopting new features and enhancements. When programming languages make a new version release, it creates a necessity to upgrade the systems developed using older versions. Based on the situation of the project status, ongoing, completed or new, developers need to make the decision whether to proceed with the current version or change to new release. If the developers decides to stay with the older version of release they wouldn’t get the latest features and fixes, eventually the system code would be outdated. This would lead the system to be vulnerable and prone to compatibility concerns. The main intention of this research is to develop a simplified tool for checking code compatibility along with programming language version releases. Currently there few ways that developers check the compatibility (e.g. IDE plugins, CLI commands, compile time reports, etc.) but these are with limitations and not user friendly, aim of this research is to provide a combination of those features, in a more easy to use, optimized, customizable compatibility tool. The users will be able to run compatibility test on the desired version effortlessly, developers would be able to add their own custom rule sets to verify the project code across the selected version by using the tool. Once the tool completes the validation process, it will generate a user friendly report with the findings. The report would contain charts with error types and percentages, filenames, error line number, location, error type and possible fixes, which would be useful for developers. The developers would be able to fix the notified sections and re-run the verification process. The tool will also provide the option to get a deployable image along with updated code and version.
Citation:
Benjamin, J.R. (2019). Tool for checking code compatibility with programming language releases [Master’s theses, University of Moratuwa]. Institutional Repository University of Moratuwa. http://dl.lib.mrt.ac.lk/handle/123/16029