Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

API review for version 4.0.0: thoughts, ideas, linked Issues, etc.

未关闭
#776 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
18/100
Issue 类型
功能
描述清晰度
需要澄清
活跃度
停滞
技术栈
numpy, python
领域
api, data

调研方向

这是一次广泛的 API 审查,而不是范围明确的实现任务。首先阅读 Python Array API Standard 以及链接的 issue #775、#772、#773、#277、#328、#38 和 #135,然后审查列出的主题和相关的 cf-python API 讨论。不存在单一的完成标准;可执行的主题需要拆分为具有明确定义结果的聚焦 issue。

由索引模型根据 Issue 内容生成。

描述

API review (4.0.0) enhancement

This Issue is to collate and register any comments (thoughts, ideas, tentative decisions, questions, etc.) including links to self-contained related Issues, regarding the cf-python API (and perhaps the API of cfdm too, also keeping cf-plot and it's eventual incorporation into cf-python in mind).

The context, for those unaware, is that we will be reviewing and revising the API for a forthcoming version 4.0.0, which we hope to release by the end of 2024. Anything anyone wants to register on the topic of the cf-python API is very welcome! Brain dumps are welcome, though we may want to move distinct topics to their own Issues and link them in, if themes emerge.

Useful references are:


Please try to organise points/discussion as we go along into topics and themes, noting them below (ideally linking to comments and/or Issues). Anyone contributing to the thread feel free to edit/update this.

Topics and themes

  • conforming to the Python Array API standard (see link above)
  • deprecated objects:
    • ensure all deprecation errors include stating replacements, else messages to indicate why there isn't one any longer (etc.) - should only be a small number of cases that don't abide by this already.
  • views/representations of fields/datasets:
    • including identical data in different formats, #775.
    • truncation for long FieldLists, arrays, etc., #772.
  • (methods for) conversion to/from other formats:
    • xarray, #773
  • availability of methods on given objects vs. module-level, #277
  • level of support for NumPy-like operations (generalising sentiment in #328)
    • more binary operations (now we are well-daskified), #38
  • ensuring sets of related methods have full coverage, esp. pairs e.g. minima and maxima such as argmax and argmin (see https://github.com/NCAS-CMS/cf-python/issues/135)
  • aliases e.g. for longer method names - when to use, what to use and how to document (including should we have a big table listing these?)
  • simplifications in general - what can sensibly be streamlined?
  • verbosity and logging (e.g. which methods deserve a verbose keyword)
    • getting all outputs managed under the logging umbrella, #286.
主要语言
Python
星标
151
派生
23
平均合并
21 小时 29 分钟
30 天内合并 PR
1

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

NCAS-CMS/cf-python 的其他 Issue

查看 NCAS-CMS/cf-python 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。