Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release version 0.1 with SSB and stitching #32

Closed
46 of 52 tasks
uellue opened this issue Feb 26, 2021 · 13 comments · Fixed by #56
Closed
46 of 52 tasks

Release version 0.1 with SSB and stitching #32

uellue opened this issue Feb 26, 2021 · 13 comments · Fixed by #56
Milestone

Comments

@uellue
Copy link
Member

uellue commented Feb 26, 2021

Since the code for SSB and for stitching is pretty mature and we are about to publish a paper regarding live ptychography based on this SSB implementation, it is now time for the first release.

  • Handle Update SSB towards a release #31
  • we should merge over the CI configuration of the LiberTEM repo
  • including the release scripts etc.
  • the azure pipeline definition needs to be cleaned up a bit:
    • distributed docker tests are not needed (yet?)
    • no nodejs tests either
  • then we can configure a Azure project for Ptychography 4.0 on dev.azure.com
  • we also need to enable the codecov.io thingy for this repo
  • Edit by @uellue: Create Zenodo sandbox and production initial deposition
  • Edit by @uellue: Set up github.io page
  • Edit by @uellue: Create PyPI sandbox and production initial project?
  • We then need to make some secrets available to the pipeline:
    • Note @uellue: I have changed the variable names from LT_* to PTY_* in azure-pipelines.yml
    • for example, the deploy_docs job needs to have access to a github deploy key
    • and we need to generate access tokens for test.pypi.org (libertem_bot user?)
    • and for pypi.org
    • and for sandbox.zenodo.org
    • and for zenodo.org
  • we can then also add links on https://github.com/liberTEM/libertem.github.io (it's very simple, just change the readme.md)
  • [N/A] for tests w/ data access, need to add a second azure pipeline, possibly with its own runner (not sure the other runner can/should be made available to different projects) → moved to Tests w/ data access in CI #51

Dependencies

Before (using a release candidate package)

  • Clean up references*.bib
  • Review open issues and pull requests
  • Handle deprecation, search the code base for DeprecationWarning that are supposed to be removed in that release.
  • Full documentation review and update, including link check using sphinx-build -b linkcheck "docs/source" "docs/build/html"
  • Review and approval by co-authors for first release
  • Run complete test suite, including slow tests that are deactivated by default and tests that require sample files. Also run tests that require a GPU.
  • Update the expected version in notes on changes, i.e. from 0.3.0.dev0 to 0.3.0 when releasing version 0.3.0.
  • Update and review change log in docs/source/changelog.rst, merging snippets in docs/source/changelog/*/ as appropriate.
  • Update the JSON files in the packaging/ folder with author and project information
  • Create a release candidate using scripts/release. See scripts/release --help for details.
  • Confirm that wheel and tar.gz are built for the release candidate on GitHub: https://github.com/Ptychography-4-0/ptychography/releases
  • Confirm that a new version with the most recent release candidate is created in the Zenodo.org sandbox TODO fix link https://example.com/fixme that is ready for submission.
  • Install release candidate packages in a clean environment (for example:
    python -m pip install -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple 'ptychography==0.1.0rc0'
  • Make sure you have test files for all supported algorithms available
  • Run all examples and applications using the test files
    • Are parameters recognized correctly, as far as implemented?
    • Any bad default values?
    • Does the file open correctly?
    • Does the result change when the input parameters are changed?
    • All display channels present and looking reasonable?
    • Reasonable performance?
  • Run all examples and applications on Windows
  • Confirm that pull requests and issues are handled as intended, i.e. milestoned and merged in appropriate branch.

After releasing on GitHub

  • Confirm that all release packages are built and release notes are up-to-date
  • Install release package
  • Confirm correct version info
  • confirm package upload to PyPI
  • Publish new version on zenodo.org
  • Update documentation with new links, if necessary
    • Add zenodo badge for the new release to Changelog page
  • Send announcement message on mailing list
  • Bump version in master branch to next .dev0
@uellue uellue added this to the 0.1 milestone Feb 26, 2021
@uellue uellue changed the title Release version 0.1 with stitching Release version 0.1 with SSB and stitching Feb 26, 2021
@uellue
Copy link
Member Author

uellue commented Mar 19, 2021

@sk1p now that CI is working, we can maybe set up the github.io page next? After that I can add all the links etc. :-)

@sk1p
Copy link
Contributor

sk1p commented Mar 19, 2021

now that CI is working, we can maybe set up the github.io page next? After that I can add all the links etc. :-)

https://ptychography-4-0.github.io/ptychography/

Done!

uellue added a commit to LiberTEM/libertem.github.io that referenced this issue Mar 19, 2021
@uellue
Copy link
Member Author

uellue commented Mar 19, 2021

Maybe we can bake RC1 next to see how test.pypi.org and sandbox.zenodo.org work?

@sk1p
Copy link
Contributor

sk1p commented Mar 19, 2021

Maybe we can bake RC1 next to see how test.pypi.org and sandbox.zenodo.org work?

It's in the oven

@sk1p
Copy link
Contributor

sk1p commented Mar 19, 2021

@sk1p
Copy link
Contributor

sk1p commented Mar 19, 2021

@uellue
Copy link
Member Author

uellue commented Mar 19, 2021

@sk1p
Copy link
Contributor

sk1p commented Mar 19, 2021

https://sandbox.zenodo.org/record/748946

Should we maybe clean up the references*.bib file? Right now, it's just a copy from the LiberTEM main repo, so we could remove most of the LiberTEM-specific entries here. That should make the "related identifiers" section of the zenodo deposition a bit more manageable.

@uellue
Copy link
Member Author

uellue commented Mar 19, 2021

https://sandbox.zenodo.org/record/748946

Should we maybe clean up the references*.bib file? Right now, it's just a copy from the LiberTEM main repo, so we could remove most of the LiberTEM-specific entries here. That should make the "related identifiers" section of the zenodo deposition a bit more manageable.

Yes, sounds good!

@uellue
Copy link
Member Author

uellue commented Mar 19, 2021

We could now start review by co-authors while we work on releasing LiberTEM 0.7 and LiberTEM-live 0.1, then merge #35, and then continue with this release?

@uellue uellue mentioned this issue Mar 19, 2021
2 tasks
@uellue
Copy link
Member Author

uellue commented Mar 19, 2021

Maybe we can bake RC3 after #41 and then ask the others for review of the homepage and Zenodo deposition?

@sk1p
Copy link
Contributor

sk1p commented Mar 19, 2021

We could now start review by co-authors while we work on releasing LiberTEM 0.7 and LiberTEM-live 0.1, then merge #35, and then continue with this release?

Sounds like a plan!

Maybe we can bake RC3 after #41 and then ask the others for review of the homepage and Zenodo deposition?

In the oven.

@SimeonEhrig
Copy link
Contributor

@uellue My ORCID is: https://orcid.org/0000-0002-8218-3116

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants