py4dstem / py4dstem/py4DSTEM

Recommendations for development guidelines

Open
#468 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
279
Forks
177
PR merge metrics
No merged PRs in 30d

Description

First of all, thank you for sharing py4DSTEM. Here are some guidelines I would like to propose for the development of the library.

  1. Enhance unit testing: It would be beneficial to expand the coverage of unit tests. As the project grows, insufficient unit test coverage could pose potential issues.

  2. Include relevant unit tests for issue fixes: Whenever addressing and resolving issues, please ensure that corresponding unit tests are added to maintain test coverage.

  3. Minimize interface changes in minor version updates: Whenever possible, avoid making significant changes to the interface during minor version updates. While I understand that this may not always be feasible prior to the first major release, consistency in the interface is valuable.

  4. Provide comprehensive examples: To facilitate the usage of all functions and classes within the py4DSTEM library, it is recommended to provide at least one example for each. As the functionality is designed to be used in specific ways, having examples is crucial. Additionally, utilizing examples as part of the unit testing process can enhance efficiency.

  5. Create notebook files for paper examples: It would be beneficial to have corresponding notebook files for all examples mentioned in the py4DSTEM paper.

Please note that these suggestions are intended to contribute to the ongoing improvement of the project and are not meant as criticism of the current guidelines. Thank you once again for your valuable contributions.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no specific files, tests, or entry points. Start by reviewing the existing unit-test suite, library examples, and paper examples, then determine which concrete guideline or example task can be scoped independently. Done would require an agreed scope and corresponding project changes.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
documentation, testing
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.