Automatic C++ documentation generation on GitLab project using doxygen - c++

I am working in a GitLab C++ project and I am trying to have a automatic documentation generation on the code using Doxygen. I don't really know how to approach the problem.
Can I somehow include it in CMake to have a updated documentation in the project everytime someone builds it?
Or would it be better to have the server generate a documentation when someone pushes his Code?
Thanks for your help!

Consider publishing the generated documentation on a GitLab Pages site (https://docs.gitlab.com/ee/user/project/pages/) You can then link to it from your Wiki to make it easy to find.
GitLab Wiki is stored in a separate Git repository (https://docs.gitlab.com/ee/user/project/wiki/) so that's why I think it would be cleaner to create a Pages site rather than to update the Wiki Git repo from the main Git repo.

Yes, I think it is better to have a separate server build the documentation whenever someone pushes. If you have a Travis-CI account, you could configure an automatic deployment of your Doxygen documentation to the GitLab Wiki.
See here a link to a Gist example for GitHub, but should be expandable to GitLab:
https://gist.github.com/vidavidorra/548ffbcdae99d752da02

Related

How to find github pages repo when using custom domain?

I would like to know what is to know what is the github repo of that site:
https://cdn.rtlcss.com/semantic-ui/2.2.6/semantic.rtl.css.
I know that it uses github cause when accessing to https://cdn.rtlcss.com/semantic-ui/2.2.6/, we get github 404.
The reason is that I want to contribute to it.
Found it by looking for rtlcss in github.
https://github.com/RTLCSS/cdn/tree/gh-pages/semantic-ui/2.2.6

Where can I find documentation for Ember 0.9.8?

I have a client from years ago that wants a few changes to an Ember app that was written in ember-0.9.8. I haven't used ember since then, and I know a lot has changed. But, I still need to refer to the old documentation, and the website seems to only go back as far as 1.10.
Ember v0.9.8 was release on May 21, 2012. This is a little before any of their git repos for the guides.
The guides back then were within the emberjs repo and had to be built manually.
Download the release: https://github.com/emberjs/ember.js/releases/tag/v0.9.8
The README.md file has instructions for building the documentation.
Building API Docs
The Ember.js API Docs provide a detailed collection of methods,
classes, and viewable source code.
NOTE: Requires node.js to generate.
See http://emberjs.com/ for annotated introductory documentation.
Preview API documenation
run rake docs:preview
The docs:preview task will build the documentation and make it available at http://localhost:9292/index.html
Build API documentation
run rake docs:build
HTML documentation is built in the docs directory
You can give it a try, but good luck - it might be tough.
As mentioned by Lux the API documentation is in the code and that one is on GitHub. You could find the ember code at that point of time by tag. The readme contains information about how to generate the API docs. If you are lucky it will still work.
v0.9.8.1 was released on 23 May 2012. That's quite a long time for a web application to run without any major refactoring. Ember has changed hardly since then.

keep gh-pages automatically up to date

I have this project with a gh-pages branch setup.
The web content inside of it was published via gh pages generator function.
https://mh-cbon.github.io/go-msi/
It s really just the README.md to index.html + layout.
Now i would like this web content to be synced with my updates.
As a matter of fact, gh pages functionality requires to go through the github web ui to trigger the build.
Indeed, i made a test change on my readme, pushed it on master, but the published website remains the same.
See the commit
The test wording won t be find into the site
Q: how can i do to automatically triggers the rebuild of my pages ?
Ideally, with just a call to a github api.
Would like not to do a plain setup of jekyll.
If not possible, can you provide a 3 steps command way to build the pages using a free theme and the README.md of my project ?
You could use Travis CI or another CI system to do automatic updates to you gh-pages branch. This Github Gist has a complete and detailed explanation of the process. You can easily combine those instructions with these on how to restructure your index.html etc. to allow to Jekyll updates and automate everything.
I don't think that the raw Github Page Generator is available through the Github API, but I'm pretty sure that the Github Page Generator is just using Jekyll.
Only gh-pages branch content is published.
If you push to master branch this doesn't trigger the build for gh-pages branch.
If you want to update you published pages, you have to push to gh-pages.
At http://agentscript.org, which is the gh-pages site for the repo for agentscript, I simply:
Created an automatic page via github's Automatic Generator
Replaced the static readme text in index.html with html generated by the current readme
..By using a library that converts md to html.
I'm not sure if that's what you're looking for. I could supply more details if needed.
thanks to all for your contributions, I ended implementing my own solution.
Basically its a bunch of sh scripts to execute over vagrant, docker, travis etc.
For now on I provided all you need to generate, with a vagrant box or a travis yaml, your gh-pages with the cayman theme like the github service does.
It is available at https://github.com/mh-cbon/gh-pages
The generated site is here
If you want to use another theme, you will need to ensure the jekyll configuration in _config.yml is correct.
You may also need to update the template files of the selected theme, at least for cayman theme i needed to.
All those adjustments are to implement into a config.jekyll.sh file to put on the root of your repository to generate.
That's it!

How can develop module in Sitecore?

I have started Sitecore learning few months ago.That time first question come in my mind is that how can I develop module? but can not able to find documentation. Can anybody provide me documentation how can I develop custom module?
If you mean you would like to create a module for the Sitecore marketplace, as others have done, then the process is fairly simple.
Write your code (ASCX, ASPX, CS, JS, etc.)
Create your Sitecore items (Layouts, renderings/sublayouts, custom buttons, etc.)
Create your configuration files (if necessary) for the App_Config\Include folder.
Build your solution and test it in a Sitecore instance locally.
Package the published files and item together using the Sitecore packaging utility.
Contribute your module on the marketplace and upload the package for review.
What you are hoping to achieve here is that another person could grab your package, install it on their system, and be able to use it without needing to recompile your source code.
If you want to develop a module, come up with the idea and then build it.
You can then submit it to the Sitecore a Marketplace under the contribute section.
https://marketplace.sitecore.net/Contribute.aspx?sc_lang=en
Typically you'll submit a package to this section and documentation on how to setup and use the module.
Sitecore will then test the module and inform you whether it is suitable for the marketplace. Your module will then be published on the marketplace ready for others to download.
When developing your module you should consider compatibility with Sitecore versions, and you should also test it thoroughly.
Here's some more info on best practices when building modules:
https://kb.sitecore.net/articles/831724

What steps do I take to integrate an (outdated) but working django application into my project?

I would like to integrate an existing application someone has on github into my site. What steps do I need to take to integrate it?
Would most people just download this entire thing and throw it inside of the project root, add it to the INSTALLED_APPS and modify urls.py? I would imagine there are some extra steps I'd have to take to get it to work.
In addition, since it was written in Jan 09-esque, and I'm using the latest 1.2 release I would probably have to modify and add some form csrf checking?
There are no generic instructions for integrating existing application into your django project because every application is different.
Generally most of the popular apps provide README/INSTALL docs which guides you through installation and How to use app. An app without documentation & tests is risky to use unless you are ready to own it and take pain of going through source code and figuring it out.
Also I don't think the application you posted above can be integrated into your project without modifying the code. It's a project by itself and can be used in standalone mode. (Well that's what I think after looking at source code)