mainGNU Astronomy Utilities - Support: sr #110457, Google Summer of Code (GSoC) 2021


sr #110457: Google Summer of Code (GSoC) 2021

Submitter:  Mohammad Akhlaghi <makhlaghi>
Submitted:  Fri 12 Mar 2021 10:49:16 PM UTC
Category:  All Gnuastro Priority:  5 - Normal
Severity:  3 - Normal Item Group:  * Enhancement
Status:  Done Privacy:  Public
Assigned to:  None Open/Closed:  Closed
Operating System:  None
* Mandatory Fields

Add a New Comment Rich Markup

Jump to the original submission

Sat 19 Feb 2022 09:43:57 PM UTC, comment #9: 

GSoC 2021 finished successfully, so its time to close this support item.

For GSoC 2022's checklist and discussions, we now have this page: sr #110613.

Mohammad Akhlaghi <makhlaghi>
Group administrator
Fri 09 Apr 2021 01:51:32 PM UTC, comment #8: 

For those who want to work on the astrometry project and are having a problem locating the repository where the work is done previously, I'm putting it here for ease:

`match.c` is the main program where the work is done. Go through it to get a high-level understanding of its working. To test locally, use `make compile` (see the Makefile). The `rough-outline.txt` is a brief roadmap for the project.

Sachin Kumar Singh <sks_15>
Tue 06 Apr 2021 06:07:50 AM UTC, comment #7: 

You should definitely apply, it's a great learning experience. This year, the proposals don't need to have a full-on solution as the time limit is lesser than in previous years. Also, the core parts of the project that you mentioned are already implemented; we just need to bind them all together with a few modifications if required.
As of now, you should look into how it is implemented and get a higher-level understanding of it to write your proposal. It shouldn't take long.
For the lower-level part, you don't need to understand every program in GNU Astro right now. I'd suggest focusing more on the matching part as it would be more relevant. You can learn other required parts as you go along with the project.
So don't stress out to learn everything. Understand the bare-bone basics to start working and then you can learn the rest as you go along.

Sachin Kumar Singh <sks_15>
Mon 05 Apr 2021 09:27:43 PM UTC, comment #6: 

I have gone through the entire tutorial by trying all that was mentioned and have got an overview of all the functionalities. Also looking at the mandatory source code and Developing portions of the manual I have a very high-level idea of the file structure and the functionality.
I'm interested in working on the 'astrometry library in gnuastro' project among the two suggested.
However I still not got a hang of the codebase and all low-level details
Since only a week is left now for the proposal submission for GSoC, would you suggest me to move ahead with it or am I not ready for it this year?
If Yes then how should be the ideal plan of action up to 13 April ?

Amey Varhade <ameyvariitg>
Sat 20 Mar 2021 09:44:18 AM UTC, comment #5: 

I tried again using wget, curl, and browser and was able to do access the file. Maybe using a different server might help like using a proxy or a VPN. If that too doesn't work, I've downloaded and uploaded it to google drive. Use this link to download it. Hope it helps! :)

Sachin Kumar Singh <sks_15>
Sat 20 Mar 2021 08:20:36 AM UTC, comment #4: 

I am not able to access the tar file on this site

I tried using both Wget/cURL (from the command-line), and using a browser. With the browser the save link option doesn't work so I copied the download link and tried it using command line.

The error message is :
Wget                                                       --2021-03-20 08:15:01--
           => ‘wcslib.tar.bz2’
Resolving (
Connecting to (||:21... failed: Connection timed out.

Abhishek Yadav <abhishek_yadav>
Thu 18 Mar 2021 12:04:40 PM UTC, comment #3: 

Thanks for reporting this Amey, I was also able to access the WCSLIB source. As Sachin mentioned, when you have a problem, try to be as explicit as possible: Did you use Wget/cURL (from the command-line), or did you use a browser? What was the error message that didn't let you access the tarball? Was there a temporary problem in your network? Did a message come from the WCSLIB server (in Australia)? and things like this.

Generally, as explained in point 1 of the list in Comment #1, to avoid getting too delayed with the initial setup, it is recommended to use your OSs package manager to install dependencies. With a single command you can get all the necessary dependencies installed and ready.

Later, when you learn the role of those dependencies, and want to customize/optimize them, you can always uninstall them using your package manager and install them from source ;-). But to start with, your OS's default build is fine.

Mohammad Akhlaghi <makhlaghi>
Group administrator
Thu 18 Mar 2021 10:45:57 AM UTC, comment #2: 

Hi Amey,

I downloaded and checked the WCSLIB from the link and it seems to be working fine on my side. Can you please explain your problem in more detail or show the error message you're getting? Maybe try to check if there is a permission issue with the tar file (though it's not likely).

Also, check this page has solution to you query:

Sachin Kumar Singh <sks_15>
Thu 18 Mar 2021 04:29:38 AM UTC, comment #1: 

I was involved in my midterms for about a week. Among the mandatory dependencies, I have installed GSL and CFITSIO successfully. However, I am not able to install the third one.
I am not able to access the tar file on this site  WCSLIB

Amey Varhade <ameyvariitg>
Fri 12 Mar 2021 10:49:16 PM UTC, original submission:  


This is for those interested in participating in Gnuastro's development focused on GSoC 2021. It is based on teh successful completion GSoC 2020 and its related discussions in sr #110195. The basic point is that you should first install and run the programs to get a feeling of their over-all purpose and usage, then start getting your hands dirty into the coding. The following list should be a rough guide on how to do this.

  1. Install the dependencies. In particular, if you use the most common GNU/Linux operating systems, to start with, we recommend using your package manager. Later, when you get more advanced, you can install them from source also.
  2. Install the latest Gnuastro from the officially released tarball and install it as described in the Quick start.
  3. There is a full chapter of tutorials, if you have time go through all of them, if not, the general tutorial should be enough. It is a little long, but shouldn't take more than three or four hours. You don't necessarily have to understand the full depth of the science behind the steps. Try to open the images (inputs and outputs) and things should be clear. This tutorial touches upon most Gnuastro programs will give you a very good feeling of it (and thus help you develop good ideas to write in the GSoC proposal.
  4. Having done the tutorial, you may have your own ideas on what to improve, or you can have a look at the list of bugs or tasks. Some more easier tasks are task #15317, task #15138, task #15136, task #15109, task #15053, task #14986, task #14908, task #14760, task #14643, task #14419, task #14409, task #14364. If they aren't already taken, you can post a comment on the task and start focusing on it.
  5. You are now ready to start developing. But you will need the version controlled source, which needs to be bootstrapped. And bootstrapping has its own dependencies. So install the bootstrapping dependencies, then follow the bootstrapping guide to prepare the raw source for building/developing. After bootstrapping, you can configure and install Gnuastro's version controlled source just like the tarball.
  6. Depending on the task/bug that you have selected to work on, please read the description of that particular program. For example if the bug/task is related to the Crop program, read the Crop section of the manual. This will give you an over-all feeling of the overall working style of the program and help guide you mentally when you are reading the source.
  7. Read the Developing chapter of the Gnuastro manual. Please read this section carefully because it will really help you get a smooth start on the source code and our style. In particular the Program source section describes the common structure of files and programming structure of the programs. Don't forget to read the other sections of this chapter too ;-)!
  8. Build you own fork of Gnuastro (as described in the Forking tutorial.
  9. If you are fixing a bug, please try to reproduce it.
  10. Go into the source of the program you want to work on, and start reading the code from `main.c' (which has the starting `main()' function). Follow the functions and comments until the end of the program (beware that some programs can be large and complex, you can usually tell this by the number of files in its source directory).
  11. Once you have a nice mental image of the program, you are ready to start working on your selected bug/task.
  12. Please don't hesitate to ask any GSoC (general) question here, but if your discussion is about a certain task/bug, please don't post it here, use the bug/task's own page.

Mohammad Akhlaghi <makhlaghi>
Group administrator


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by abhishek_yadav (Posted a comment)
  • -email is unavailable- added by sks_15 (Posted a comment)
  • -email is unavailable- added by ameyvariitg (Posted a comment)
  • -email is unavailable- added by makhlaghi (Submitted the item)
  • -email is unavailable- added by makhlaghi
  • -email is unavailable- added by makhlaghi

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.


    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2022-02-19 makhlaghi StatusNone Done
        Open/ClosedOpen Closed
    2021-03-12 makhlaghi Carbon-Copy- Added -email is unavailable-
        Carbon-Copy- Added -email is unavailable-

    Back to the top

    Powered by Savane 3.13-b921.
    Corresponding source code