GSOC 2017 - Improved REST API Documentation Project

Hi,

I am Bhashinee Nirmali, an undergraduate of Faculty of Information Technology, University of Moratuwa. I am good at programming in java and web development. I am interested in the gsoc project “Improved REST API Documentation Project”.

I have tried out the Swagger Editor and Swagger Codegen. It would be grateful if you can provide me more information on this project.

Thanks and Regards Bhashinee

3 Likes

@pascal could you be having any response to this? :slight_smile:

1 Like

I think the first step is to make sure you can build the module and understand how the OpenAPI spec is generated (see SwaggerSpecificationCreator.java) as well as how the embedded docs are generated. Then have a look at the tickets listed here and try to understand how they might be solved.

Also, make sure you’ve completed everything expected of students before the program.

1 Like

3 posts were split to a new topic: REST Module Install Error

Hi. Will we be getting feedback for our draft proposals?

@gayanw Most definitely! I’m sorry, I just happened to see your comment here and I wasn’t tagged so it didn’t pop up in mail either. Please don’t hesitate to reach out to me for any help/feedback in the future!

Eitherways, we’re glad you’re interested in contributing to the project. I can see your submitted proposal so I’ll do a run through of the same. If you’re interested in getting feedback from the community, you can write down the gist of your ideas right here in this format Cohort Module Enhancements

I see your proposals in the draft and it’s yet to be completed I believe. Here’s a link to my proposal which was accepted last year. Feel free to copy the template/timeline from there.

Cheers!

You seems to have done a quite a work there :smile: I’ll try prepare gist of ideas for the project. Links were helpful! Thanks. : )

Sounds good. Be sure to complete your proposal very soon(The deadline is close) and inform me, so I can do a complete review of the same (last time I checked, your proposal timeline was incomplete), make the necessary adjustments and then proceed to submit the final copy.

Also, just explicitly tag me/any other mentors or dev in any other future post or mention so I get notified through an email (though I am watching this thread, currently)

@bholagabbar The documentation mentioned about a version 2.x of the REST API. However I only found code related to rest.web.v1.0.

Where is 2.x code go?

I believe the code is here? https://github.com/openmrs/openmrs-module-webservices.rest/tree/master/omod-2.0 , https://github.com/openmrs/openmrs-module-webservices.rest/tree/master/omod-2.1

I’m confused because it still uses v1 in the resource URI path. And also packaged under webservices.rest.web.v1_0

I guess the reason it is this way is because the implementer should not have to enter versions of the API to access the overall API functionality. The API functionality should not be segregated under v1 and v2 but rather be accessible as a whole. I believe the v1, v2.x iterations are development iterations and the implementer should not have to know that this feature is in v1 and that in v2 because APIs don’t work that way IMO.

However, this is slight speculation from my side. Maybe @pascal will shed some light on this.

@gayanw, that wiki page is talking about version 1.x and 2.x of the module codebase. We made a non-backwards-compatible change to that codebase, and increased the major version number many years ago (2013 I guess), and that wiki page dates to that era. You may safely ignore it, since nothing written there is relevant anymore today.

The “v1” in the URLs refers to the API version. See the “Versioning” section of https://wiki.openmrs.org/x/P4IaAQ

Thanks for the clarification.

@bholagabbar I have made few changes to the timeline. If you got time please spare a moment to review. I’m too late though :slight_smile:

That’s cool, we’re on time alright. Still a couple of days to go. Let me check it out rn and leave some feedback

I have reviewed your proposal and provided some feedback. Just keep in mind that details and finesse matters and don’t be in a hurry. Complete every section, go through every detail and ask for the next review :slight_smile:

@gayanw Have you completed the proposal?

Yeah I did. I thought you’d have seen. Your suggestions there were really useful :slight_smile:

1 Like

@bholagabbar @pascal Here I’ve documented what I think is required by the issue RESTWS-561 Document Basic Search

Feel free to let me know if it doesn’t make sense or if there’s other requirements that need to be addressed or whatever else is needed.

Please see the doc.

1 Like

When I received the email yesterday saying that I was selected, I was overwhelmed with joy

I have always wanting to be an active contributor to Open Source. But was able to make only trival contributions here and there. When I found OpenMRS, I thought this would be the place.

Thanks to you all who helped and will help me in the journey.

@bholagabbar @pascal @dkayiwa… hope to get started with you guys pretty soon.

1 Like