Skip to content

Commit

Permalink
Better handling of paths with non-unicode sequences
Browse files Browse the repository at this point in the history
- Filenames are decoded and encoded appropriately for the current Python version
- More filename tests
- Fix git version parsing on Windows

Refs #70, #71
  • Loading branch information
Kentzo committed Nov 5, 2019
1 parent f6e3cf9 commit 326e09e
Show file tree
Hide file tree
Showing 7 changed files with 264 additions and 104 deletions.
48 changes: 35 additions & 13 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,10 @@ matrix:
- python2.6 -m virtualenv env
- pyenv local --unset
- source env/bin/activate
- python -c "import sys; print(sys.platform)"
- os: osx
language: generic
env: NAME="Python 2.7"
env: NAME="Python 2 Homebrew"
before_install:
- brew update
- brew upgrade python2 || true
Expand All @@ -33,7 +34,7 @@ matrix:
- source env/bin/activate
- os: osx
language: generic
env: NAME="Python pypy"
env: NAME="Python pypy Homebrew"
before_install:
- brew update
- brew upgrade pypy || brew install pypy || true
Expand All @@ -58,8 +59,8 @@ matrix:
before_install:
- brew update
- brew upgrade pyenv || brew install pyenv || true
- pyenv install 3.5.6
- pyenv local 3.5.6
- pyenv install 3.5.9
- pyenv local 3.5.9
- eval "$(pyenv init -)"
- python3.5 -m venv env
- pyenv local --unset
Expand All @@ -70,8 +71,8 @@ matrix:
before_install:
- brew update
- brew upgrade pyenv || brew install pyenv || true
- pyenv install 3.6.7
- pyenv local 3.6.7
- pyenv install 3.6.9
- pyenv local 3.6.9
- eval "$(pyenv init -)"
- python3.6 -m venv env
- pyenv local --unset
Expand All @@ -81,26 +82,38 @@ matrix:
env: NAME="Python 3.7"
before_install:
- brew update
- brew upgrade python || true
- python3.7 -m venv env
- brew upgrade pyenv || brew install pyenv || true
- pyenv install 3.7.5
- pyenv local 3.7.5
- eval "$(pyenv init -)"
- python3.6 -m venv env
- pyenv local --unset
- source env/bin/activate
- os: osx
language: generic
env: NAME="Python HEAD"
env: NAME="Python 3 Homebrew"
before_install:
- brew update
- brew unlink python
- brew install python --HEAD
- python3 -m venv env
- brew upgrade python || true
- python3.7 -m venv env
- source env/bin/activate
- os: osx
language: generic
env: NAME="Python pypy3"
env: NAME="Python pypy3 Homebrew"
before_install:
- brew update
- brew upgrade pypy3 || brew install pypy3 || true
- pypy3 -m venv env
- source env/bin/activate
- os: osx
language: generic
env: NAME="Python HEAD"
before_install:
- brew update
- brew unlink python
- brew install python --HEAD
- python3 -m venv env
- source env/bin/activate
- os: linux
env:
- PIP_URL="https://bootstrap.pypa.io/2.6/get-pip.py"
Expand All @@ -127,12 +140,19 @@ matrix:
language: python
python: 3.7
sudo: true
- os: linux
language: python
python: 3.8
sudo: true
- os: linux
language: python
python: 3.6-dev
- os: linux
language: python
python: 3.7-dev
- os: linux
language: python
python: 3.8-dev
- os: linux
language: python
python: nightly
Expand All @@ -146,6 +166,8 @@ matrix:
python: 3.6-dev
- os: linux
python: 3.7-dev
- os: linux
python: 3.8-dev
- os: linux
python: nightly

Expand Down
3 changes: 3 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ Questions & Answers
| Q: How to exclude files?
| A: Mark paths you want to exclude in the .gitattributes file with the export-ignore attribute. Read more on `git-scm.com <https://git-scm.com/docs/gitattributes#_code_export_ignore_code>`_.
| Q: What about non-unicode filenames?
| A: All filenames that particular version of Python can represent and handle are supported. Extra [en|de]coding is done where appropriate.
Support
-------
If functional you need is missing but you're ready to pay for it, feel free to `contact me <mailto:[email protected]?subject=git-archive-all>`_. If not, create an issue anyway, I'll take a look as soon as I can.
Loading

0 comments on commit 326e09e

Please sign in to comment.