Skip to content

Avoids env var warning when path contains $/%; fix #832 - #961

Merged
Byron merged 1 commit into
gitpython-developers:masterfrom
rgkimball:fix/expandvars-warning
Dec 6, 2019
Merged

Avoids env var warning when path contains $/%; fix #832#961
Byron merged 1 commit into
gitpython-developers:masterfrom
rgkimball:fix/expandvars-warning

Conversation

@rgkimball

Copy link
Copy Markdown
Contributor

I ran into the same issue as @kamadoatfluid in #832, as I have a mounted disk path including a $ (valid file & folder character in most operating systems, as is %). Since this is intended to catch environment variables per #662, I propose the use of regex instead to prevent irrelevant warnings from cluttering logs/console output.

This PR supports all expansion conventions demonstrated in os.path.expandvars, and also aligns with environment variable naming specifications. Illegal variables simply will cause errors and therefore don't present a security risk: word characters only, beginning with a-z or _.

Supported formats:

  • % APPDATA % or %APPDATA%
  • $MYVAR
  • ${MYVAR}

@Byron

Byron commented Dec 6, 2019

Copy link
Copy Markdown
Member

Sorry for the late response and thanks a lot for the improvement!

@Byron
Byron merged commit 313b3b4 into gitpython-developers:masterDec 6, 2019
@ByronByron added this to the v3.0.6 - Bugfixes milestone Dec 6, 2019
wip-sync referenced this pull request in NetBSD/pkgsrc-wip Mar 7, 2020
3.1.0
=====
* Switched back to using gitdb package as requirement
(`gitdb#59 <https://github.com/gitpython-developers/gitdb/issues/59>`_)
3.0.9
=====
* Restricted GitDB (gitdb2) version requirement to < 4
* Removed old nose library from test requirements
Bugfixes
--------
* Changed to use UTF-8 instead of default encoding when getting information about a symbolic reference
(`#774 <https://github.com/gitpython-developers/GitPython/issues/774>`_)
* Fixed decoding of tag object message so as to replace invalid bytes
(`#943 <https://github.com/gitpython-developers/GitPython/issues/943>`_)
3.0.8
=====
* Added support for Python 3.8
* Bumped GitDB (gitdb2) version requirement to > 3
Bugfixes
--------
* Fixed Repo.__repr__ when subclassed
(`#968 <https://github.com/gitpython-developers/GitPython/pull/968>`_)
* Removed compatibility shims for Python < 3.4 and old mock library
* Replaced usage of deprecated unittest aliases and Logger.warn
* Removed old, no longer used assert methods
* Replaced usage of nose assert methods with unittest
3.0.7
=====
Properly signed re-release of v3.0.6 with new signature
(See `#980 <https://github.com/gitpython-developers/GitPython/issues/980>`_)
3.0.6
=====
| Note: There was an issue that caused this version to be released to PyPI without a signature
| See the changelog for v3.0.7 and `#980 <https://github.com/gitpython-developers/GitPython/issues/980>`_
Bugfixes
--------
* Fixed warning for usage of environment variables for paths containing ``$`` or ``%``
(`#832 <https://github.com/gitpython-developers/GitPython/issues/832>`_,
`#961 <https://github.com/gitpython-developers/GitPython/pull/961>`_)
* Added support for parsing Git internal date format (@<unix timestamp> <timezone offset>)
(`#965 <https://github.com/gitpython-developers/GitPython/pull/965>`_)
* Removed Python 2 and < 3.3 compatibility shims
(`#979 <https://github.com/gitpython-developers/GitPython/pull/965>`_)
* Fixed GitDB (gitdb2) requirement version specifier formatting in requirements.txt
(`#979 <https://github.com/gitpython-developers/GitPython/pull/965>`_)
Sign up for freeto 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

@rgkimball@Byron