|
1 | 1 | # The Astropy Roadmap
|
2 |
| -**Latest revision: May 2023** |
| 2 | +**Latest revision: June 2024** |
3 | 3 |
|
4 | 4 | - [Introduction](#Introduction)
|
5 | 5 | - [Status Legend](#Status-Legend)
|
6 | 6 | - [Functionality](#Functionality)
|
| 7 | +- [Infrastructure, Documentation](#Infrastructure-Documentation) |
| 8 | +- [Interoperability and compatibility](#Interoperability-and-compatibility) |
7 | 9 | - [Hardware and Performance](#Hardware-and-Performance)
|
8 | 10 | - [Learn and User Support](#Learn-and-User-Support)
|
9 | 11 | - [Community Building and Sustainability](#Community-Building-and-Sustainability)
|
10 |
| -- [Infrastructure, Documentation](#Infrastructure-Documentation) |
11 | 12 | - [Government, Management, and Personnel](#government-management-and-personnel)
|
12 | 13 |
|
13 | 14 |
|
@@ -36,52 +37,81 @@ This Roadmap captures high level actionable items that we as a project aim to un
|
36 | 37 |
|
37 | 38 | ## Functionality
|
38 | 39 |
|
39 |
| -- :large_orange_diamond: Provide next-generation spectroscopic reduction, analysis, and visualization tools usable by individual researchers and larger surveys. |
| 40 | +The core product of the Astropy Project is high quality astronomical software, including both the core library and Astropy Affiliated packages. This category encompasses goals having to do with this core Project functionality. |
| 41 | + |
| 42 | +- :green_circle: Provide next-generation spectroscopic analysis tools usable by individual researchers and larger surveys. |
| 43 | + |
| 44 | +- :green_circle: Add quantity support for non-NumPy arrays. |
| 45 | + |
| 46 | +- :large_orange_diamond: Provide next-generation spectroscopic reduction tools usable by individual researchers and larger surveys. |
| 47 | + |
| 48 | + |
| 49 | +## Infrastructure, Documentation |
| 50 | + |
| 51 | +Underlying all Astropy packages is critical infrastructure that ensures high quality, well-documented software is released. This category encompasses goals having to do with such infrastructure and documentation. |
| 52 | + |
| 53 | + |
| 54 | +- :green_circle: Implement robust performance benchmark reporting. |
| 55 | + |
| 56 | +- :green_circle: Revive dashboards for developers (CI status etc) and community (PR trends etc). |
| 57 | + |
| 58 | +- :green_circle: Improve documentation for infrastructure setup, as well as the developer documentation. |
40 | 59 |
|
41 |
| -- :large_orange_diamond: Improve support and validation for input/output of standard file formats used in Astronomy by improving the unified I/O system. |
42 | 60 |
|
43 |
| -- :large_orange_diamond: Improve interoperability and compatibility, while reducing duplication, amongst Astropy-affiliated packages and other community standard software. |
| 61 | +## Interoperability and compatibility |
| 62 | + |
| 63 | +One of the core principles of the Astropy Project is to "foster an ecosystem of interoperable astronomy packages." This category encompasses goals related to that principle of interoperability and compatibility. |
| 64 | + |
| 65 | +- :green_circle: Improve support and validation for input/output (I/O) of standard file formats used in astronomy by improving the unified I/O system: allowing user added classes/formats, and implementing GWCS. |
| 66 | + |
| 67 | +- :red_square: Unify unit packages (e.g., `astropy.units`, `pint`, `unyt`). |
| 68 | + |
44 | 69 |
|
45 | 70 | ## Hardware and Performance
|
46 | 71 |
|
| 72 | +Astronomers perform their work in a variety of computing environments with a variety of requirements. This category encompasses goals related to supporting the performance and hardware needs of Astropy Project users, as well as anticipating future needs and requirements. |
| 73 | + |
47 | 74 | - :large_orange_diamond: Improve and/or maintain interoperability with performant I/O file formats and libraries such as HDF5 and Dask.
|
48 | 75 |
|
49 | 76 | - :red_square: Improve support for using Astropy tools in heterogeneous computing environments such as cloud environments or GPU systems.
|
50 | 77 |
|
| 78 | +- :red_square: Add basic PyScript/WebAssembly support in Astropy. |
| 79 | + |
| 80 | + |
51 | 81 | ## Learn and User Support
|
52 | 82 |
|
| 83 | +The Astropy Project cannot succeed in its core objectives without a robust user onboarding and support system. This category is for items related to the Astropy Learn ecosystem and other user support related improvements. |
| 84 | + |
53 | 85 | - :green_circle: Generate and ingest guides and/or a series of tutorials that demonstrate Astropy Project functionality in the context of astronomical research.
|
54 | 86 |
|
55 |
| -- :large_orange_diamond: Update Astropy website: Rework the Team page and improve the visibility of Astropy Learn. |
| 87 | +- :large_orange_diamond: Update Astropy website to improve the visibility of Astropy Learn and overall reflect the Project as a whole, not just the core package. |
56 | 88 |
|
57 |
| -- :large_orange_diamond: Expand and build on workshop offerings by recruiting and training more facilitators and expanding the geographic diversity of meetings where we offer workshops. |
| 89 | +- :large_orange_diamond: Develop tutorials that demonstrate the use of Astropy for spectroscopy tasks. |
58 | 90 |
|
59 |
| -- :large_orange_diamond: Expand the number and diversity of active user support resources. |
| 91 | +- :red_square: Expand and build on workshop offerings, including online and increased geographic coverage. |
60 | 92 |
|
61 |
| -- :red_square: Develop tutorials that demonstrate the use of Astropy for spectroscopy tasks. |
| 93 | +- :red_square: Develop/harvest tutorials suitable for use in university astronomy courses. |
62 | 94 |
|
63 |
| -- :red_square: Develop/harvest tutorials suitable for use in university astronomy courses. |
64 | 95 |
|
65 | 96 | ## Community Building and Sustainability
|
66 | 97 |
|
67 |
| -- :large_orange_diamond: Increase the learning and mentoring opportunities for people interested in becoming contributors and helping to develop existing contributors. |
| 98 | +As a community-driven project, the long term health and development of the Astropy community is an intrinsic part of the Project. This category encompasses goals related to growing and maintaining that community, and ensuring that it adheres to the core principles of inclusion and consensus-building. |
68 | 99 |
|
69 |
| -- :large_orange_diamond: Better understand Astropy user community through a NumPy-like user survey (see [this summary](https://numpy.org/user-survey-2020-details/) of their results). |
| 100 | +- :green_circle: Better understand Astropy user community through user surveys (Organization mycologey reports: [Astropy Community Engagement](https://astropy-report.orgmycology.com), [Community views on diversity, equity, and inclusion in the Astropy project](https://astropy-dei.orgmycology.com)). |
70 | 101 |
|
71 |
| -- :red_square: Increase inclusion, diversity, and empowerment efforts within the Astropy Project and NumFOCUS communities, and improve our understanding of the demographics of our communities in order to measure the effectiveness of these efforts. |
| 102 | +- :large_orange_diamond: Increase the learning and mentoring opportunities for people interested in becoming contributors and helping to develop existing contributors into maintainers. |
72 | 103 |
|
73 |
| -## Infrastructure, Documentation |
| 104 | +- :red_square: Increase inclusion, diversity, and empowerment efforts within the Astropy Project and NumFOCUS communities, and improve our understanding of the demographics of our communities in order to measure the effectiveness of these efforts. |
74 | 105 |
|
75 |
| -- :green_circle: Implement integration testing for core, coordinated, and infrastructure packages. |
76 | 106 |
|
77 |
| -- :large_orange_diamond: Improve documentation for infrastructure setup, as well as the developer documentation. |
| 107 | +## Government, Management, and Personnel |
78 | 108 |
|
79 |
| -- :red_square: Implement robust performance benchmark reporting. |
| 109 | +This category encompasses goals related to governing and managing the teams of the Astropy Project to facilitate reaching the goals described elsewhere in this document. |
80 | 110 |
|
81 |
| -## Government, Management, and Personnel |
| 111 | +- :green_circle: Develop a process for recruiting, selecting, and managing personnel to complete Project priorities that require external labor. |
82 | 112 |
|
83 | 113 | - :large_orange_diamond: Adopt the NumFOCUS Code of Conduct (CoC) and build a community ombuds/CoC team to curate the guidelines and enforce them.
|
84 | 114 |
|
85 |
| -- :large_orange_diamond: Develop a process for recruiting, selecting, and managing personnel to complete Project priorities that require external labor. |
| 115 | +- :large_orange_diamond: Document the process for taking on a formal role in the Astropy project and recruit for unfilled team positions. |
86 | 116 |
|
87 |
| -- :red_square: Document the process for taking on a formal role in the Astropy project and recruit for unfilled Team positions. |
| 117 | +- :large_orange_diamond: Define and staff the strategic planning role. |
0 commit comments