From 14d99a122504bc07b0508c9fb12f67dc35011eda Mon Sep 17 00:00:00 2001 From: toastmt Date: Tue, 17 Mar 2026 15:33:38 +0200 Subject: [PATCH 1/3] add GSoC 2026 proposal for Astropy core hardening --- 2026/astropy/astropy-core_hardening-yorgos.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 2026/astropy/astropy-core_hardening-yorgos.md diff --git a/2026/astropy/astropy-core_hardening-yorgos.md b/2026/astropy/astropy-core_hardening-yorgos.md new file mode 100644 index 0000000..fcaaafb --- /dev/null +++ b/2026/astropy/astropy-core_hardening-yorgos.md @@ -0,0 +1,56 @@ +# Application Title +Hardening astropy’s core stability - Yorgos Vasilantonakis + +## Contributor Information +* **Name:** Yorgos Vasilantonakis +* **Time-zone:** EET (GMT+2) +* **Matrix/slack/IRC Handle:** +* **Github/forge username:** toastmt +* **Blog:** +* **Blog RSS feed:** +* **PR link(s):** + * . + * . + +### Background +My name is Yorgos and I'm currently doing a CS conversion degree, building on my previous BSc in Physics. Over the last year I have focused on C and Python. I was drawn to this project because it perfectly bridges my two backgrounds. It allows me to apply my recent CS focus to the mathematical concepts I studied in physics. + +### Interest in OpenAstronomy +Coming from a physics background I've worked with free and open-source programs and have come to appreciate all the software that powers modern scientific discovery. As someone who grew up with sci-fi and astronomy magazines and books, I find the prospect of contributing to a major astronomical codebase like Astropy to be incredibly exciting. I think the specific project idea looks interesting, as it alligns with my current interest in C, and it seems like something I could be useful for. + +## Project Proposal Application +**Proposal Title:** Hardening astropy’s core stability + +**Organisation:** Astropy + +### **Summary:** +I am drawn to this project because it sits exactly at the intersection of my skill sets. My primary programming focus is in C, making Astropy's C core an ideal environment for me to contribute. I am also very interested in analyzing performance-critical C code in a real world codebase. + +### Deliverables +**1.** Direct tests for astropy/convolution/src/_convolve.c +**2.** Direct tests for astropy/timeseries/periodograms/bls/bls.c +**3.** Direct tests for astropy/wcs/src/ files +**4.** CI/CD pipeline and documentation + +### Description/timeline + +|Period|Description| +|------|-----------| +|Community Bonding period| Map all C-functions to be tested in the project, set up the dev environment, assign priorities and testing implementation strategy with mentors.| +| week 1-2 | convolution: Expand the current prototype tests into a full testing package for convolve.c. Focus on edge cases (NaNs, empty arrays, infinity).| +| week 3-4 | bls: Create a full c test package to validate the mathematical accuracy of the bls.c periodogram core.| +| week 5-10 | wcs: Work to create tests for the c files in the world coordinate system folder.| +| week 11-12 | Handle final bug fixes, CI/CD test integration, write documentation. | + +## GSoC + +### Have you participated previously in GSoC? When? With which project? +No +### Are you also applying to other projects? +No +### Schedule availability +I'll be fully available during the time of the programme, no holidays planned + + +## Other comments +I have spent some time trying to understand the logic in some of the c files in the astropy codebase. To better understand the implementation I concentrated on the convolve.c file which implements convolution algorithms for 1D, 2D and 3D. I compiled the file and developed a small standalone testing file that interacts directly with the convolve1d_c function at the C level, and which contains a few simple tests for the 1D case. This has helped me understand the 1D convolution algorithm well. From e4d7cc975b7b34adb9660c5a9021c7f77e6be680 Mon Sep 17 00:00:00 2001 From: toastmt Date: Tue, 17 Mar 2026 15:38:12 +0200 Subject: [PATCH 2/3] Formatting fixes --- 2026/astropy/astropy-core_hardening-yorgos.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/2026/astropy/astropy-core_hardening-yorgos.md b/2026/astropy/astropy-core_hardening-yorgos.md index fcaaafb..1e5bf9b 100644 --- a/2026/astropy/astropy-core_hardening-yorgos.md +++ b/2026/astropy/astropy-core_hardening-yorgos.md @@ -1,5 +1,5 @@ -# Application Title -Hardening astropy’s core stability - Yorgos Vasilantonakis +# Hardening astropy’s core stability - Yorgos Vasilantonakis + ## Contributor Information * **Name:** Yorgos Vasilantonakis @@ -27,10 +27,10 @@ Coming from a physics background I've worked with free and open-source programs I am drawn to this project because it sits exactly at the intersection of my skill sets. My primary programming focus is in C, making Astropy's C core an ideal environment for me to contribute. I am also very interested in analyzing performance-critical C code in a real world codebase. ### Deliverables -**1.** Direct tests for astropy/convolution/src/_convolve.c -**2.** Direct tests for astropy/timeseries/periodograms/bls/bls.c -**3.** Direct tests for astropy/wcs/src/ files -**4.** CI/CD pipeline and documentation +* **1.** Direct tests for astropy/convolution/src/_convolve.c +* **2.** Direct tests for astropy/timeseries/periodograms/bls/bls.c +* **3.** Direct tests for astropy/wcs/src/ files +* **4.** CI/CD pipeline and documentation ### Description/timeline From 7d5e7cab6780a950f38ff7d866e89e6c2690eeaa Mon Sep 17 00:00:00 2001 From: toastmt Date: Wed, 18 Mar 2026 12:09:57 +0200 Subject: [PATCH 3/3] Upadate proposal with link to PR #19452 --- 2026/astropy/astropy-core_hardening-yorgos.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/2026/astropy/astropy-core_hardening-yorgos.md b/2026/astropy/astropy-core_hardening-yorgos.md index 1e5bf9b..da9cad9 100644 --- a/2026/astropy/astropy-core_hardening-yorgos.md +++ b/2026/astropy/astropy-core_hardening-yorgos.md @@ -8,9 +8,7 @@ * **Github/forge username:** toastmt * **Blog:** * **Blog RSS feed:** -* **PR link(s):** - * . - * . +* **PR link(s):** #19452 WIP: Standalone C-level tests for 1D convolution (GSoC 2026) (https://github.com/astropy/astropy/pull/19452) ### Background My name is Yorgos and I'm currently doing a CS conversion degree, building on my previous BSc in Physics. Over the last year I have focused on C and Python. I was drawn to this project because it perfectly bridges my two backgrounds. It allows me to apply my recent CS focus to the mathematical concepts I studied in physics.