Google Summer Of Code '21 Final Report for Element History Widget
Posted by zohaib_ on 24 August 2021 in English.Introduction
I started google summer of code with the aim of creating a library that can be easily added to Vespucci and provide it with element comparison features, and provide some other feature requests in Vespucci. I was able to create and deploy the Element History Dialog, which can be found here, where you can find the implementation details for the library.
Work Done
The major work done during the coding period includes the following -
- Creating the parser for OSM elements
- Creating the parser for Changesets
- Creating the UI to list all versions for a selected OSM element
- Creating the UI for comparison between different OSM elements
- Logic for comparison between tags of different versions of a element
- Logic for comparison between data for 2 versions of a node
- Logic for comparison between data for 2 versions of a way
- Logic for comparison between data for 2 versions of a relation
- Handling edge cases like deleted elements and versions
- publishing the library and creating the sample application
A more detailed usage guide can be found on the github readme
Future Scope
Some additions to the project that I plan are -
- Creating more test cases - currently there are a few unit tests that test the basic functionality of the app, I will add more unit tests to cover most logical operations and few UI tests to test the basic flow of the library
- Adding the library to vespucci
- Creating Pull Requests on Vespucci for other features mentioned in my gsoc application.
Finally, I would like to say that my experience with the OSM community has been great, and I would love to contribute more to the great projects that are hosted by OSM