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

Fix up the commit trailers functionality #1576

Merged
merged 5 commits into from
Apr 23, 2023
Merged

Fix up the commit trailers functionality #1576

merged 5 commits into from
Apr 23, 2023

Conversation

itsluketwist
Copy link
Contributor

@itsluketwist itsluketwist commented Apr 21, 2023

Add trailers_dict and trailers_list methods to fix the commit trailers functionality.

I left the existing method as is to not break any existing code using it, leaving a comment about how it's incorrect.

Also updated the trailers tests.

Work here resolves issue #1533

Copy link
Member

@Byron Byron left a comment

Choose a reason for hiding this comment

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

Thanks a lot for your help, it looks very good already!

There isn't much missing at all for getting it merged, and I am looking forward to hearing what you think. Thank you.

Git messages can contain trailer information that are similar to RFC 822
e-mail headers (see: https://git-scm.com/docs/git-interpret-trailers).

WARNING: This function only returns the latest instance of each trailer key
Copy link
Member

Choose a reason for hiding this comment

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

I think it's OK to deprecate it, and suggest using trailers_dict(). Then this warning can be removed as it will show up when using it.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Agreed - deprecated 78424b5

Copy link
Member

Choose a reason for hiding this comment

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

That's not deprecation 😅, that's downright removal, which is a breaking change.

After taking a look I realize now that there is no built-in facility for marking properties or functions as deprecated. So I think documenting the deprecation is as good as it gets.

Sorry for the hassle, but once that is reverted, it's ready to merge.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No worries! trailers method is back - 9ef07a7

git/objects/commit.py Outdated Show resolved Hide resolved
git/objects/commit.py Outdated Show resolved Hide resolved
@Byron
Copy link
Member

Byron commented Apr 23, 2023

Thanks a lot for bearing with me on this one, and I really appreciate the one commit per change with reference to it in the respective comment.

There is just one tiny adjustment left and then it's ready to go.

@Byron Byron added this to the v3.1.32 - Bugfixes milestone Apr 23, 2023
@Byron Byron merged commit e3bc5d1 into gitpython-developers:main Apr 23, 2023
@Byron
Copy link
Member

Byron commented Apr 23, 2023

Thanks a lot for the contribution, much appreciated!

@itsluketwist
Copy link
Contributor Author

Thanks a lot for the contribution, much appreciated!

No problem!

Issue #1533 can also be closed now. 😄

@itsluketwist itsluketwist deleted the fix-trailers branch April 24, 2023 08:21
renovate bot referenced this pull request in allenporter/flux-local Jul 12, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [GitPython](https://togithub.com/gitpython-developers/GitPython) |
`==3.1.31` -> `==3.1.32` |
[![age](https://badges.renovateapi.com/packages/pypi/GitPython/3.1.32/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/pypi/GitPython/3.1.32/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/pypi/GitPython/3.1.32/compatibility-slim/3.1.31)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/pypi/GitPython/3.1.32/confidence-slim/3.1.31)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>gitpython-developers/GitPython (GitPython)</summary>

###
[`v3.1.32`](https://togithub.com/gitpython-developers/GitPython/releases/tag/3.1.32):
- with another security update

[Compare
Source](https://togithub.com/gitpython-developers/GitPython/compare/3.1.31...3.1.32)

#### What's Changed

- Bump cygwin/cygwin-install-action from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/gitpython-developers/GitPython/pull/1572](https://togithub.com/gitpython-developers/GitPython/pull/1572)
- Fix up the commit trailers functionality by
[@&#8203;itsluketwist](https://togithub.com/itsluketwist) in
[https://github.com/gitpython-developers/GitPython/pull/1576](https://togithub.com/gitpython-developers/GitPython/pull/1576)
- Name top-level exceptions as private variables by
[@&#8203;Hawk777](https://togithub.com/Hawk777) in
[https://github.com/gitpython-developers/GitPython/pull/1590](https://togithub.com/gitpython-developers/GitPython/pull/1590)
- fix pypi long description by
[@&#8203;eUgEntOptIc44](https://togithub.com/eUgEntOptIc44) in
[https://github.com/gitpython-developers/GitPython/pull/1603](https://togithub.com/gitpython-developers/GitPython/pull/1603)
- Don't rely on **del** by
[@&#8203;r-darwish](https://togithub.com/r-darwish) in
[https://github.com/gitpython-developers/GitPython/pull/1606](https://togithub.com/gitpython-developers/GitPython/pull/1606)
- Block insecure non-multi options in clone/clone_from by
[@&#8203;Beuc](https://togithub.com/Beuc) in
[https://github.com/gitpython-developers/GitPython/pull/1609](https://togithub.com/gitpython-developers/GitPython/pull/1609)

#### New Contributors

- [@&#8203;Hawk777](https://togithub.com/Hawk777) made their first
contribution in
[https://github.com/gitpython-developers/GitPython/pull/1590](https://togithub.com/gitpython-developers/GitPython/pull/1590)
- [@&#8203;eUgEntOptIc44](https://togithub.com/eUgEntOptIc44) made their
first contribution in
[https://github.com/gitpython-developers/GitPython/pull/1603](https://togithub.com/gitpython-developers/GitPython/pull/1603)
- [@&#8203;r-darwish](https://togithub.com/r-darwish) made their first
contribution in
[https://github.com/gitpython-developers/GitPython/pull/1606](https://togithub.com/gitpython-developers/GitPython/pull/1606)
- [@&#8203;Beuc](https://togithub.com/Beuc) made their first
contribution in
[https://github.com/gitpython-developers/GitPython/pull/1609](https://togithub.com/gitpython-developers/GitPython/pull/1609)

**Full Changelog**:
gitpython-developers/GitPython@3.1.31...3.1.32

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/allenporter/flux-local).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi41LjMiLCJ1cGRhdGVkSW5WZXIiOiIzNi41LjMiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
otc-zuul bot pushed a commit to opentelekomcloud-infra/eyes_on_docs that referenced this pull request Aug 14, 2023
Bump gitpython from 3.1.31 to 3.1.32

Bumps gitpython from 3.1.31 to 3.1.32.

Release notes
Sourced from gitpython's releases.

v3.1.32 - with another security update
What's Changed

Bump cygwin/cygwin-install-action from 3 to 4 by @​dependabot in gitpython-developers/GitPython#1572
Fix up the commit trailers functionality by @​itsluketwist in gitpython-developers/GitPython#1576
Name top-level exceptions as private variables by @​Hawk777 in gitpython-developers/GitPython#1590
fix pypi long description by @​eUgEntOptIc44 in gitpython-developers/GitPython#1603
Don't rely on del by @​r-darwish in gitpython-developers/GitPython#1606
Block insecure non-multi options in clone/clone_from by @​Beuc in gitpython-developers/GitPython#1609

New Contributors

@​Hawk777 made their first contribution in gitpython-developers/GitPython#1590
@​eUgEntOptIc44 made their first contribution in gitpython-developers/GitPython#1603
@​r-darwish made their first contribution in gitpython-developers/GitPython#1606
@​Beuc made their first contribution in gitpython-developers/GitPython#1609

Full Changelog: gitpython-developers/[email protected]



Commits

5d45ce2 prepare 3.1.32 release
ca965ec Merge pull request #1609 from Beuc/block-insecure-options-clone-non-multi
5c59e0d Block insecure non-multi options in clone/clone_from
c09a71e Merge pull request #1606 from r-darwish/no-del
a3859ee fixes
8186159 Don't rely on del
741edb5 Merge pull request #1603 from eUgEntOptIc44/eugenoptic44-fix-pypi-long-descri...
0c543cd Improve readability of README.md
9cd7ddb Improve the 'long_description' displayed on pypi
6fc11e6 update README to reflect the status quo on git command usage
Additional commits viewable in compare view




Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

@dependabot rebase will rebase this PR
@dependabot recreate will recreate this PR, overwriting any edits that have been made to it
@dependabot merge will merge this PR after your CI passes on it
@dependabot squash and merge will squash and merge this PR after your CI passes on it
@dependabot cancel merge will cancel a previously requested merge and block automerging
@dependabot reopen will reopen this PR if it is closed
@dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
@dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
@dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
@dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
@dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the Security Alerts page.

Reviewed-by: Vladimir Vshivkov
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants