Skip to content

Overhaul top-level README file and convert format to Markdown #6988

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

Merged
merged 9 commits into from
Jan 31, 2025

Conversation

mhucka
Copy link
Contributor

@mhucka mhucka commented Jan 28, 2025

This is a major overhaul of the main Cirq README file. Much of the
content is rewritten, and there are numerous additions and
enhancements all over. The changes include but are not limited to:

  • Updates and corrections
  • Addition of new sections
  • Centering and resizing the logo for a more professional look
  • Addition of GitHub badges for extra "pizzazz"
  • Addition of pointers to related Quantumlib software
  • Addition of a table of contents
  • Improvements to info about how to cite Cirq
  • Conversion to Markdown format to allow formatting that is
    compatible with both GitHub and PyPI

This is a follow-on to now-closed PRs #6903 and #6901, which concerned
making roughly the same changes while keeping with the
reStructuredText format of the previous README file. Switching to
Markdown allows use of some simple raw HTML to achieving formatting
that is not possible in pure Markdown, and still do so in a way that
works on both GitHub and PyPI.

@CirqBot CirqBot added the size: L 250< lines changed <1000 label Jan 28, 2025
@mhucka mhucka marked this pull request as ready for review January 28, 2025 00:37
@mhucka mhucka requested review from vtomole and a team as code owners January 28, 2025 00:37
@mhucka
Copy link
Contributor Author

mhucka commented Jan 28, 2025

Here are screenshots of what the new page will look like.

Light mode:
cirq-readme-md-github-light

Dark mode:
cirq-readme-md-github-dark

Copy link

codecov bot commented Jan 28, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 97.89%. Comparing base (26b1f46) to head (14cb5db).
Report is 6 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #6988   +/-   ##
=======================================
  Coverage   97.89%   97.89%           
=======================================
  Files        1085     1085           
  Lines       95131    95131           
=======================================
+ Hits        93124    93125    +1     
+ Misses       2007     2006    -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@mhucka
Copy link
Contributor Author

mhucka commented Jan 28, 2025

Note: the failing checks on Windows are due to the new README file triggering a bug in the dev_tools/ scripts: several of them call open() without checking the character encoding used in the file or providing an encoding parameter to the open() call. This can fail when a platform's default encoding does not match the encoding actually used in the file. In this case, the addition of a emoji character in UTF-8 in the new README.md is resulting in a failure on Windows, where I guess the default encoding is not assumed by Python to be UTF-8.

PR #6989 provides a fix to the underlying problem. Applying that PR should make the checks in this PR succeed.

@mhucka
Copy link
Contributor Author

mhucka commented Jan 28, 2025

In the last commit (b93082b), I used Markdown reference links to try to make the source text more readable. If the result is not actually an improvement, then we can delete that commit.

Copy link
Collaborator

@pavoljuhas pavoljuhas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM with a couple of minor comments.
Thank you for improving this!

Copy link
Collaborator

@pavoljuhas pavoljuhas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One extra thing before merge - please delete README.rst

@mhucka mhucka self-assigned this Jan 30, 2025
@mhucka
Copy link
Contributor Author

mhucka commented Jan 30, 2025

One extra thing before merge - please delete README.rst

Done in the latest commit.

@mhucka mhucka added this pull request to the merge queue Jan 31, 2025
This is a major overhaul of the main Cirq README file. Much of the
content is rewritten, and there are numerous additions and
enhancements all over. The changes include but are not limited to:

- Updates and corrections
- Addition of new sections
- Centering and resizing the logo for a more professional look
- Addition of GitHub badges for extra "pizzazz"
- Addition of pointers to related Quantumlib software
- Addition of a table of contents
- Improvements to info about how to cite Cirq
- Conversion to Markdown format to allow formatting that is
  compatible with both GitHub and PyPI

This is a follow-on to now-closed PRs quantumlib#6903 and quantumlib#6901, which concerned
making roughly the same changes while keeping with the
reStructuredText format of the previous README file. Switching to
Markdown allows use of some simple raw HTML to achieving formatting
that is not possible in pure Markdown, and still do so in a way that
works on both GitHub and PyPI.
No content edits (except possibly one or two trivial changes of
wording). This changes some links to use Markdown "reference" link
syntax, to make some of the source text more readable.
The previous links for the bibliographic records went to Cirq 1.2 in
Zenodo. There doesn’t seem to be a way to get Zenodo to produce bibtex
for the latest version of a record (only specific versions of a
record), so I ended up using doi.org, but that one doesn't have a way
to produce MarcXML. So I removed that format, leaving the other two.

This also moves the GitHub contributors badge/count, per
recommendation by Pavol in the review of this PR.
This is so that existing links go to same section despite the renamed
heading.
@pavoljuhas pavoljuhas removed this pull request from the merge queue due to a manual request Jan 31, 2025
@pavoljuhas
Copy link
Collaborator

Somehow this PR branch picked commits from the main -

$ git log --oneline main..f55479be --author="(Seneca|Doug|Pavol|Dax|Matthew)"
37cf3225 add snapshot_id to get_sampler interface on engine object (#7005)
0039d36f Streamline proto serialization of circuits with duplicate operations (#6991)
98314aae Fix check/nbformat installation and execution (#7004)
fdd87e7d Fix mapped measurement keys of repeat_until fields in CircuitOperations (#6881)
3f4945f9 Fix logic for handling `repetition_ids` in `CircuitOperation.replace` (#6984)

@mhucka - For the sake of better merge message - can you please reset it to rebased-6988 from my repo which drops those commits and has the same content?

git checkout mhucka-new-top-readme
git fetch https://github.com/pavoljuhas/Cirq.git rebased-6988
# last check - should have no output
git diff mhucka-new-top FETCH_HEAD


git reset FETCH_HEAD
git push --force-with-lease ...

@mhucka
Copy link
Contributor Author

mhucka commented Jan 31, 2025

Oh, foo, how that did happen.

@mhucka mhucka force-pushed the mhucka-new-top-readme branch from 0f8bec3 to 964c6f7 Compare January 31, 2025 19:33
@mhucka
Copy link
Contributor Author

mhucka commented Jan 31, 2025

Thanks for the clear instructions! I followed them and it looks like those extra commits are no longer here.

Somehow this PR branch picked commits from the main -

$ git log --oneline main..f55479be --author="(Seneca|Doug|Pavol|Dax|Matthew)"
37cf3225 add snapshot_id to get_sampler interface on engine object (#7005)
0039d36f Streamline proto serialization of circuits with duplicate operations (#6991)
98314aae Fix check/nbformat installation and execution (#7004)
fdd87e7d Fix mapped measurement keys of repeat_until fields in CircuitOperations (#6881)
3f4945f9 Fix logic for handling `repetition_ids` in `CircuitOperation.replace` (#6984)

@mhucka - For the sake of better merge message - can you please reset it to rebased-6988 from my repo which drops those commits and has the same content?

git checkout mhucka-new-top-readme
git fetch https://github.com/pavoljuhas/Cirq.git rebased-6988
# last check - should have no output
git diff mhucka-new-top FETCH_HEAD


git reset FETCH_HEAD
git push --force-with-lease ...

@mhucka mhucka enabled auto-merge January 31, 2025 19:40
@mhucka mhucka added this pull request to the merge queue Jan 31, 2025
Merged via the queue into quantumlib:main with commit d936ee3 Jan 31, 2025
38 checks passed
@mhucka mhucka deleted the mhucka-new-top-readme branch January 31, 2025 19:59
@mhucka mhucka changed the title Overhaul top-level README and convert to Markdown Overhaul top-level README file and convert format to Markdown Apr 8, 2025
BichengYing pushed a commit to BichengYing/Cirq that referenced this pull request Jun 20, 2025
* Overhaul top-level README and convert to Markdown

This is a major overhaul of the main Cirq README file. Much of the
content is rewritten, and there are numerous additions and
enhancements all over. The changes include but are not limited to:

- Updates and corrections
- Addition of new sections
- Centering and resizing the logo for a more professional look
- Addition of GitHub badges for extra "pizzazz"
- Addition of pointers to related Quantumlib software
- Addition of a table of contents
- Improvements to info about how to cite Cirq
- Conversion to Markdown format to allow formatting that is
  compatible with both GitHub and PyPI

This is a follow-on to now-closed PRs quantumlib#6903 and quantumlib#6901, which concerned
making roughly the same changes while keeping with the
reStructuredText format of the previous README file. Switching to
Markdown allows use of some simple raw HTML to achieving formatting
that is not possible in pure Markdown, and still do so in a way that
works on both GitHub and PyPI.

* Adapt setup.py to work with new Markdown-format README

* Update to reference README.md instead of README.rst

* Use md reference links for better plain-text readability

No content edits (except possibly one or two trivial changes of
wording). This changes some links to use Markdown "reference" link
syntax, to make some of the source text more readable.

* Fix list indentation to follow Google Markdown style

* Fix links to bib records & reposition recontributors number

The previous links for the bibliographic records went to Cirq 1.2 in
Zenodo. There doesn’t seem to be a way to get Zenodo to produce bibtex
for the latest version of a record (only specific versions of a
record), so I ended up using doi.org, but that one doesn't have a way
to produce MarcXML. So I removed that format, leaving the other two.

This also moves the GitHub contributors badge/count, per
recommendation by Pavol in the review of this PR.

* Remove README.rst

* Add link target for #how-to-cite

This is so that existing links go to same section despite the renamed
heading.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/docs size: L 250< lines changed <1000
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants