With 25th May approaching, I’m confident to say that I’ve completed my first evaluation (although some grammatical and styling rechecking is left). Now, as directed by Kai, I’ve implemented the wiki_login.m function from using the internals of url-transfer.cc/h class. I’ve scapped the earlier design of implementing cookie_manager.m script and libcurl_wrapper.cc class for doing the cookie thing and directly implemented __wiki_login__ as an internal function in urlwrite.cc. A user is now able to log into api.php

To test my implemtation:

  • Make a test account on wiki.octave.space with username and password of your choice.

  • hg clone https://me_ydv_5@bitbucket.org/me_ydv_5/octave

  • hg up ocs

  • cd path/to/your/build/tree/ and execute make -jX

  • ./run-octave

  • execute wiki_login ("https://wiki.octave.space/api.php", yourUsername, yourPassword);

If it is all successful, you should see a prompt Success: logged in as yourUsername.

Other than that, I’m really grateful to jwe for moving the version.h file to liboctave from libinterp as this is needed to get the OCTAVE_VERSION for the user agent (see week 3 for this). Eariler, it was in libinterp and we must not use anything from libinterp in liboctave as it should be compiled irrespective of the former.

NOTE: You may need to re-run ./bootstrap and ./configure due to above changes.

Lastly, I would request to someone who uses Windows (My Windows ran into some problem and I’m now unable to connect to internet, I’ll reinstall it whenever I get some time) and/or Mac OS to test my implementation and report any errors.

Needless to say I’m always looking forward to constructive feedback/criticism.

Link to BitBucket repo.