--- title: "2024 Developer Summit: Meeting 1" --- ## Information - Date: Friday, [May 3rd 9AM - 10AM Pacific time (click for your timezone)](https://www.timeanddate.com/worldclock/converter.html?iso=20240503T160000&p1=224) - Zoom Link: https://ucsc.zoom.us/j/91723472248?pwd=U2oyY0NScUZsWnY4UlFodkUwcFFUZz09 - [Discord invite link](https://discord.com/invite/vur45CbwMz) ## Participants - Jarrod Millman - Matthias Bussonnier - Matthew Feickert (@matthewfeickert) - Lars Grüter (@lagru) - Sanket Verma - Brigitta Sipőcz (@bsipocz) - Pamphile Roy - Dan Schult - Sebastian Berg - Kyle Sunden - Mridul Seth - Inessa Pawson - Ariel Rokem - Thomas Fan - Madicken Munk - Ariel Rokem (@arokem) - Matt Haberland (@mdhaber) - Dan McCloy (@drammock) - Elliott Sales de Andrade - CJ Carey - Tim Head (@betatim) - Paul Ivanov (@ivanov) - Nick Smith (@nsmith-) - Erik Welch (@eriknw) - Sarah Kaiser (@crazy4pi314) - Henry Schreiner (@henryiii) - Juanita Gomez - Ross Barnowski (@rossbar) ## Agenda - Short intro (Jarrod) - Q&A - Do we have to book flights by Friday? No, but we do need your **hotel stay dates** by then. - Is there a shared travel spreadsheet? Yes, it's [here](https://docs.google.com/spreadsheets/d/12YjSCqHoq0lK6K-2RCF0DHKnHHLf_hPkmnJAZFUEOgI/edit?usp=sharing). - How to travel from airport to hotel? Light rail is easiest and cheapest. - What do we/you want to work on? ## Project Ideas GitHub project for this summit: https://github.com/orgs/scientific-python/projects/8/views/1 Matthias asks: are we supposed to maybe put our names next to projects we are interested in/want to lead ? ##### docs & tutorials - Convert scientific python lectures to more maintainable format (@mdhaber, @melissawm?, @rossbar?) - interested: [name=@bsipocz] [name=@rossbar] - Review and update content of scientific python lectures - Numpydoc improvements - [name=@rossbar] - Better pydata-sphinx-theme/scientific python hugo theme integration - Re-usable class names, ... <-- Jarrod, more here - [name=drammock] Improved testing for Pydata Sphinx Theme - Would also be useful for Scientific Python Hugo Theme - Port development guide to scientific python hugo theme - Lead: [name=henryiii] - [`intersphinx_registry`](https://github.com/Carreau/intersphinx_registry) - lead: [name=@Matthias] - Declarative "Sphinx.toml" (e.g [IPython PR discussion](https://github.com/ipython/ipython/pull/14427)), and general standardisation of documentation across the ecosystem. - lead: [name=@Matthias] - interested: [name=@bsipocz] - CI/infrastructure template for tutorial repos - lead: [name=@bsipocz] - interested: [name=Sarah K] ##### numerics - Sparse arrays - finish up 1D - ensure returning 1D where possible - migration guide/tools - next steps/tests - [name=eriknw]: sparse array interface protocol and binary format - Array API adoption - Lead: - Interested: @matthewfeickert, @seberg, @betatim, @thomasjpfan - Api dispatch beyond arrays - First class support for DataFrames - Exchange protocols (buffer protocol extension, non-arrays) - [name=seberg] Would be interesting to discuss, since I have considered whether we should push even a PEP to allow more DTypes (or even other extensions). - [Random generator spec SPEC7](https://github.com/scientific-python/specs/pull/180) - [name=seberg] I thought this might be interesting to get the new rng used more in downstream NumPy (if others are interested) - [name=betatim] might attempt transitioning scikit-learn - [name=ncsmith] Extension to allow object façade for record arrays (struct-of-array with member functions that act like vectorized operations on array-of-struct from a UI point of view) - Lead: [name=ncsmith] Will refine the topic and make a github issue for it - Interested: [name=matthewfeickert], [name=seberg] would be interesting to discuss ##### packaging - a SPEC describing packaging best practices - wheels, wheel building, conda-forge - interested: [name=henryiii] - Virtual [pypi multi-index](https://github.com/scientific-python/upload-nightly-action/issues/76#issuecomment-2024800855) (that is also in infrastructure) to simplify nightly/rs/testing - lead: [name=@matthias] - interested: [name=@betatim, @matthewfeickert] ##### community - project governance, what to do about inactive maintainers? - More resources for Plausible instance/maintenance/status/etc - needs a bit of patience/pressing refresh to get standard front page to load - https://devstats.scientific-python.org/ - Something interesting Erik Welch did for NX https://github.com/networkx/networkx/pull/7314 - SPECs (new / process / infrastructure) - Best community practices - guide for adopting various CoC, governance models, managing project community via online channels etc. - Typing SPEC: Documenting best practices, when and how to use stubs, how to type numpy arrays, and what to do if your arrays represent, e.g., images - Changelog SPEC - [Spec-8:supply chain security](https://discuss.scientific-python.org/t/spec-8-supply-chain-security/1163/6) - Improvements in open source supply chain security (e.g. [using GitHub Artifact Attestations on GHA and Sigstore elsewhere](https://github.blog/2024-05-02-introducing-artifact-attestations-now-in-public-beta/)) - [name=matthewfeickert]: I proposed this topic, and can lead it, but it seems that Juanita is also already doing academic research here and might be a better person. - [name=Matthias] Would suggest reproducible build as well. (cf recent xz), - What is a reusable build? Simply being able to produce wheel artifact with same hash offline? I.e. would providing docker image + build tools be enough? - Does `hatchling`'s reproducible build count (and trying to extend that as a standard)? Or are you thinking something more specific? - [name=Matthias, madicken] interested in participating. - [Terminology for parameters controlling parallel computation](https://discuss.scientific-python.org/t/terminology-for-parameters-controlling-parallel-computation/1016/6) (@lagru) - flesh out team, governance, and criteria for https://tools.scientific-python.org/ - Anyone interested in speaking NumFOCUS and Jupyter maybe moving to the Linux foundation ? - [name=Matthias]: I proposed the topics, but might not be the best to lead - [name=Sanket]: The topics looks good! I'd love to lead some of them - [name=Sarah K]: I'd be interested! - [name=Stéfan] Happy to have a call/discussion about this, but would really appreciate if we could not distract summit activities with NF talk. FWIW, LF is not suitable for ecosystem projects, IMO. Lots of discussions happening in various places all over the ecosystem. ##### infrastructure - [migrate/rename get more maintainer on backport bot](https://github.com/MeeseeksBox/MeeseeksDev) - lead: [name=Matthias] - interested: [name=madicken] [name=@bsipocz] - discuss other projects that would be better branded on https://tools.scientific-python.org/ - sphinx-gallery? ##### tooling - pytest-plugins / Sphinx extensions - spin improvements or setting it up for other projects - Release Management (changelist, ...) - https://tools.scientific-python.org/actions/ - [name=henryiii] Repo-review - Working on new plugins - Adding or updating checks to sp-repo-review - Add tests using the new testing support to sp-repo-review - [name=henryiii] Cookie - Work on supporting dependent questions (in cookiecutter, already in copier) - Better support for optional components (like citation file) - Backend selection (currently pybind11, add nanobind, Cython, etc?) - Add better support for other task runners (hatch) - [name=henryiii] Cookiecutter and copier TUI project - Already exists, just needs polish and to be placed somewhere - Tested on cookie ##### actions - Way to keep teams up to date - https://github.com/scientific-python/sync-teams-action - @tupui mentioned DAO :eyes: - [name=henryiii] Maybe fork https://github.com/wandnz/action-lint-annotations into scientific-python and start using it in cookie / Guide? ##### misc - [name=Lars (@lagru)] is working on [docstub](https://github.com/lagru/docstub) *"Generate Python stub files from docstrings"*, inspired by [docs2stubs](https://github.com/gramster/docs2stubs). Nothing to see yet, but would love to have a prototype for the summit - [name=Matthias] interested, I think thous woudl go with a stricter numpy docstring format/parser. Might have some things to pull oout of https://pypi.org/project/velin/ and https://github.com/mkdocstrings/griffe - [name=Guen] Telemetry - somewhat related: devstats - SPEC? - @betatim is interested - @arokem is interested too (see also previous attempt at https://popylar.github.io/popylar/) - Parallel APIs and control (see [Thomas Fan's blog post](https://thomasjpfan.github.io/parallelism-python-libraries-design/)) - Lazy Import (Is it worth it?) - Default to PyTorch as the default underlying array library? - Docs running in the browser with Jupyter-lite - Python typing - No longer ship tests in wheels (and: how then to obtain tests easily) - Cross project test matrix, with identification of libraries causing failures - [name=Pamphile (@tupui)] Decentralized Git. I created this https://github.com/tupui/soroban-versioning. Very early, the idea is to put some data about the projects on-chain for integrity (e.g. push hashes there so that if someone force push, you know the repo was compromized. This is the first feature in and working even.). Then, we can add more features like a Decentralized Autonomous Org (DAO). ## e-mail template for flight booking ``` My Direct Bill ID is: ... I would like to make a booking for a flight (example I found online below): From: ..., ... To: Seattle, US Inbound date: 2nd of June Return date: 6th of June Personal details: First name: ... Middle name: ... Third name: ... Family name: ... Birth date: ... Thank you in advance. Kind regards, ... ```