cookiejar / cookietemple

A collection of best practice cookiecutter templates for all domains and languages with extensive Github support ⛺
https://cookietemple.com
Apache License 2.0
156 stars 10 forks source link

New project creation fails on Windows due to UnicodeDecodeError when Running lint checks #749

Closed e2jk closed 3 years ago

e2jk commented 3 years ago

[EDIT] Root cause found, see this post and the question if a PR would be accepted for this topic.

Associated Template/Command/Core

C:\Users\<username>\Documents\devel>cookietemple --verbose create (on Windows 10)

After bypassing issue #748 (by commenting out the call to shutil.rmtree in file cookietemple\lib\site-packages\cookietemple\create\template_creator.py:354), when creating a new project (first time using cookietemple, which I installed using pipx), a Traceback is triggered when running linting function: check_version_consistent. Namely:

UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 230: character maps to <undefined>

It might be interesting to note that my system's language is set to French (wich accents etc.), although it doesn't seem that there are accents involved in the different paths used, as I'm creating the project in path C:\Users\<username>\Documents\devel.

To Reproduce

Steps to reproduce the behavior:

  1. Run cookietemple with command: create
  2. Select: cli, python, project name, description, the rest of the questions don't matter (it failed both when I indicate to upload to Github or not)
  3. See error in the next collapsible section:
Full `--verbose` output of the command (Click to expand) ``` C:\Users\\Documents\devel>cookietemple --verbose create ██████  ██████  ██████  ██  ██ ██ ███████ ████████ ███████ ███  ███ ██████  ██  ███████  ██      ██    ██ ██    ██ ██  ██  ██ ██         ██    ██      ████  ████ ██   ██ ██  ██       ██  ██  ██ ██  ██ █████   ██ █████  ██  █████  ██ ████ ██ ██████  ██  █████  ██  ██  ██ ██  ██ ██  ██  ██ ██     ██  ██     ██  ██  ██ ██      ██  ██     ██████  ██████   ██████  ██  ██ ██ ███████  ██  ███████ ██      ██ ██  ███████ ███████  Run cookietemple --help for an overview of all commands [08/02/21 15:33:54] DEBUG Using proactor: IocpProactor proactor_events.py:623 ? Choose the project's domain: cli [08/02/21 15:34:04] DEBUG User was asked the question: ||Choose the project's domain|| as: select questionary.py:93 [08/02/21 15:34:05] DEBUG User selected cli questionary.py:94 ? Choose the project's primary language: python [08/02/21 15:34:06] DEBUG User was asked the question: ||Choose the project's primary language|| as: select questionary.py:93 DEBUG User selected python questionary.py:94 ? Project name [exploding-springfield]: timelog-tracker [08/02/21 15:34:15] DEBUG User was asked the question: ||Project name|| as: text questionary.py:93 DEBUG User selected timelog-tracker questionary.py:94 Looking up timelog-tracker at PyPi! DEBUG Looking up https://pypi.org/project/timelog-tracker template_creator.py:402 DEBUG Starting new HTTPS connection (1): pypi.org:443 connectionpool.py:971 DEBUG https://pypi.org:443 "GET /project/timelog-tracker HTTP/1.1" 301 222 connectionpool.py:452 DEBUG https://pypi.org:443 "GET /project/timelog-tracker/ HTTP/1.1" 404 1893 connectionpool.py:452 Looking up timelog-tracker at readthedocs.io! DEBUG Looking up https://timelog-tracker.readthedocs.io template_creator.py:402 DEBUG Starting new HTTPS connection (1): timelog-tracker.readthedocs.io:443 connectionpool.py:971 [08/02/21 15:34:16] DEBUG https://timelog-tracker.readthedocs.io:443 "GET / HTTP/1.1" 404 None connectionpool.py:452 ? Short description of your project [timelog-tracker. A cookietemple based .]: A utility to track working time in a Microsoft Outlook calendar and generate monthly timesh eets. [08/02/21 15:34:33] DEBUG User was asked the question: ||Short description of your project|| as: text questionary.py:93 DEBUG User selected A utility to track working time in a Microsoft Outlook calendar and generate monthly timesheets. questionary.py:94 ? Initial version of your project [0.1.0]: [08/02/21 15:34:35] DEBUG User was asked the question: ||Initial version of your project|| as: text questionary.py:93 DEBUG User selected 0.1.0 questionary.py:94 ? License: MIT [08/02/21 15:34:37] DEBUG User was asked the question: ||License|| as: select questionary.py:93 DEBUG User selected MIT questionary.py:94 Automatically creating a Github repository with cookietemple is strongly recommended. Otherwise you will not be able to use all of cookietemple's features! ? Do you want to create a Github repository and push your template to it? [Yes]: Yes [08/02/21 15:34:39] DEBUG User was asked the question: ||Do you want to create a Github repository and push your template to it?|| as: confirm questionary.py:93 DEBUG User selected True questionary.py:94 ? Do you want to create an organization repository? [No]: No [08/02/21 15:34:40] DEBUG User was asked the question: ||Do you want to create an organization repository?|| as: confirm questionary.py:93 DEBUG User selected False questionary.py:94 ? Do you want your repository to be private? [No]: No [08/02/21 15:34:42] DEBUG User was asked the question: ||Do you want your repository to be private?|| as: confirm questionary.py:93 DEBUG User selected False questionary.py:94 DEBUG User config not found. Loading default config. config.py:125 DEBUG context_file is main.py:83 C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create/templates/cli/cli_python\cookiecutter.json DEBUG Context generated is OrderedDict([('cookiecutter', OrderedDict([('full_name', 'Emilien Klein'), ('email', 'emilien@klein.st'), generate.py:115 ('github_username', 'e2jk'), ('project_name', 'timelog-tracker'), ('project_slug', 'timelog-tracker'), ('project_slug_no_hyphen', 'timelog_tracker'), ('project_short_description', 'A utility to track working time in a Microsoft Outlook calendar and generate monthly timesheets.'), ('pypi_username', '{{ cookiecutter.github_username }}'), ('version', '0.1.0'), ('testing_library', 'pytest'), ('command_line_interface', ['Click', 'Argparse', 'No command-line interface']), ('license', ['MIT', 'BSD', 'ISC', 'Apache2.0', 'GNUv3', 'Not open source', 'Boost', 'Affero', 'CC0', 'Eclipse', 'CCBY', 'CCBYSA', 'WTFPL', 'unlicence'])]))]) DEBUG Making sure path exists: C:\Users\/.cookiecutter_replay/ utils.py:42 DEBUG Searching C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create/templates/cli/cli_python for the find.py:19 project template. DEBUG The project template appears to be find.py:31 C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create/templates/cli/cli_python\{{ cookiecutter.project_slug_no_hyphen }} DEBUG Generating project from generate.py:265 C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create/templates/cli/cli_python\{{ cookiecutter.project_slug_no_hyphen }}... DEBUG Rendered dir timelog_tracker must exist in output_dir . generate.py:195 DEBUG Making sure path exists: timelog_tracker utils.py:42 DEBUG Created directory at: timelog_tracker utils.py:45 DEBUG Project directory is C:\Users\\Documents\devel\timelog_tracker generate.py:287 DEBUG hooks_dir is C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create\templates\cli\cli_python\hooks hooks.py:55 DEBUG No hooks/dir in template_dir hooks.py:58 DEBUG No pre_gen_project hook found hooks.py:128 DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\.github must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\.github utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\.github utils.py:45 DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\docs must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\docs utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\docs utils.py:45 DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\makefiles must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\makefiles utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\makefiles utils.py:45 DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\tests must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\tests utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\tests utils.py:45 DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\__pycache__ must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\__pycache__ utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\__pycache__ utils.py:45 DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\timelog_tracker must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\timelog_tracker utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\timelog_tracker utils.py:45 DEBUG Processing file .bandit.yml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.bandit.yml generate.py:155 DEBUG Check .bandit.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.bandit.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.bandit.yml generate.py:177 DEBUG Processing file .darglint generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.darglint generate.py:155 [08/02/21 15:34:43] DEBUG Check .darglint to see if it's a binary generate.py:158 DEBUG is_binary: '.darglint' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.darglint generate.py:177 DEBUG Processing file .flake8 generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.flake8 generate.py:155 DEBUG Check .flake8 to see if it's a binary generate.py:158 DEBUG is_binary: '.flake8' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.flake8 generate.py:177 DEBUG Processing file .gitattributes generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.gitattributes generate.py:155 DEBUG Check .gitattributes to see if it's a binary generate.py:158 DEBUG is_binary: '.gitattributes' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.gitattributes generate.py:177 DEBUG Processing file .pre-commit-config.yaml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.pre-commit-config.yaml generate.py:155 DEBUG Check .pre-commit-config.yaml to see if it's a binary generate.py:158 DEBUG is_binary: '.pre-commit-config.yaml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.pre-commit-config.yaml generate.py:177 DEBUG Processing file codecov.yml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\codecov.yml generate.py:155 DEBUG Check codecov.yml to see if it's a binary generate.py:158 DEBUG is_binary: 'codecov.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\codecov.yml generate.py:177 DEBUG Processing file cookietemple.cfg generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\cookietemple.cfg generate.py:155 DEBUG Check cookietemple.cfg to see if it's a binary generate.py:158 DEBUG is_binary: 'cookietemple.cfg' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\cookietemple.cfg generate.py:177 DEBUG Processing file Dockerfile generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\Dockerfile generate.py:155 DEBUG Check Dockerfile to see if it's a binary generate.py:158 DEBUG is_binary: 'Dockerfile' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\Dockerfile generate.py:177 DEBUG Processing file Makefile generate.py:140 [08/02/21 15:34:44] DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\Makefile generate.py:155 DEBUG Check Makefile to see if it's a binary generate.py:158 DEBUG is_binary: 'Makefile' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\Makefile generate.py:177 DEBUG Processing file noxfile.py generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\noxfile.py generate.py:155 DEBUG Check noxfile.py to see if it's a binary generate.py:158 DEBUG is_binary: 'noxfile.py' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\noxfile.py generate.py:177 DEBUG Processing file poetry.lock generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\poetry.lock generate.py:155 DEBUG Check poetry.lock to see if it's a binary generate.py:158 DEBUG is_binary: 'poetry.lock' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\poetry.lock generate.py:177 DEBUG Processing file pyproject.toml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\pyproject.toml generate.py:155 DEBUG Check pyproject.toml to see if it's a binary generate.py:158 DEBUG is_binary: 'pyproject.toml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\pyproject.toml generate.py:177 DEBUG Processing file README.rst generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\README.rst generate.py:155 DEBUG Check README.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'README.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\README.rst generate.py:177 DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\.github\workflows must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\.github\workflows utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\.github\workflows utils.py:45 DEBUG Processing file .github\dependabot.yml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.github\dependabot.yml generate.py:155 DEBUG Check .github\dependabot.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\dependabot.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.github\dependabot.yml generate.py:177 DEBUG Processing file .github\labels.yml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.github\labels.yml generate.py:155 DEBUG Check .github\labels.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\labels.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 [08/02/21 15:34:45] DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.github\labels.yml generate.py:177 DEBUG Processing file .github\workflows\build_package.yml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.github\workflows\build_package.yml generate.py:155 DEBUG Check .github\workflows\build_package.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\build_package.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.github\workflows\build_package.yml generate.py:177 DEBUG Processing file .github\workflows\labeler.yml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.github\workflows\labeler.yml generate.py:155 DEBUG Check .github\workflows\labeler.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\labeler.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.github\workflows\labeler.yml generate.py:177 DEBUG Processing file .github\workflows\publish_package.yml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.github\workflows\publish_package.yml generate.py:155 DEBUG Check .github\workflows\publish_package.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\publish_package.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.github\workflows\publish_package.yml generate.py:177 DEBUG Processing file .github\workflows\run_tests.yml generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\.github\workflows\run_tests.yml generate.py:155 DEBUG Check .github\workflows\run_tests.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\run_tests.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\.github\workflows\run_tests.yml generate.py:177 DEBUG Processing file docs\contributing.rst generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\docs\contributing.rst generate.py:155 DEBUG Check docs\contributing.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\contributing.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\docs\contributing.rst generate.py:177 DEBUG Processing file docs\installation.rst generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\docs\installation.rst generate.py:155 DEBUG Check docs\installation.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\installation.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 [08/02/21 15:34:46] DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\docs\installation.rst generate.py:177 DEBUG Processing file docs\reference.rst generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\docs\reference.rst generate.py:155 DEBUG Check docs\reference.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\reference.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\docs\reference.rst generate.py:177 DEBUG Processing file docs\usage.rst generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\docs\usage.rst generate.py:155 DEBUG Check docs\usage.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\usage.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\docs\usage.rst generate.py:177 DEBUG Processing file makefiles\Linux.mk generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\makefiles\Linux.mk generate.py:155 DEBUG Check makefiles\Linux.mk to see if it's a binary generate.py:158 DEBUG is_binary: 'makefiles\\Linux.mk' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\makefiles\Linux.mk generate.py:177 DEBUG Processing file makefiles\Windows.mk generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\makefiles\Windows.mk generate.py:155 DEBUG Check makefiles\Windows.mk to see if it's a binary generate.py:158 DEBUG is_binary: 'makefiles\\Windows.mk' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\makefiles\Windows.mk generate.py:177 DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\tests\__pycache__ must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\tests\__pycache__ utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\tests\__pycache__ utils.py:45 DEBUG Processing file tests\test_main.py generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\tests\test_main.py generate.py:155 DEBUG Check tests\test_main.py to see if it's a binary generate.py:158 DEBUG is_binary: 'tests\\test_main.py' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\tests\test_main.py generate.py:177 DEBUG Processing file tests\__init__.py generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\tests\__init__.py generate.py:155 DEBUG Check tests\__init__.py to see if it's a binary generate.py:158 DEBUG is_binary: 'tests\\__init__.py' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 [08/02/21 15:34:47] DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\tests\__init__.py generate.py:177 DEBUG Processing file tests\__pycache__\__init__.cpython-38.pyc generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\tests\__pycache__\__init__.cpython-38.pyc generate.py:155 DEBUG Check tests\__pycache__\__init__.cpython-38.pyc to see if it's a binary generate.py:158 DEBUG is_binary: 'tests\\__pycache__\\__init__.cpython-38.pyc' check.py:23 DEBUG Copying binary tests\__pycache__\__init__.cpython-38.pyc to generate.py:160 C:\Users\\Documents\devel\timelog_tracker\tests\__pycache__\__init__.cpython-38.pyc without rendering DEBUG Processing file __pycache__\noxfile.cpython-38.pyc generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\__pycache__\noxfile.cpython-38.pyc generate.py:155 DEBUG Check __pycache__\noxfile.cpython-38.pyc to see if it's a binary generate.py:158 DEBUG is_binary: '__pycache__\\noxfile.cpython-38.pyc' check.py:23 DEBUG Copying binary __pycache__\noxfile.cpython-38.pyc to generate.py:160 C:\Users\\Documents\devel\timelog_tracker\__pycache__\noxfile.cpython-38.pyc without rendering DEBUG Rendered dir C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__pycache__ must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__pycache__ utils.py:42 DEBUG Created directory at: C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__pycache__ utils.py:45 DEBUG Processing file {{ cookiecutter.project_slug_no_hyphen }}\py.typed generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\py.typed generate.py:155 DEBUG Check {{ cookiecutter.project_slug_no_hyphen }}\py.typed to see if it's a binary generate.py:158 DEBUG is_binary: '{{ cookiecutter.project_slug_no_hyphen }}\\py.typed' check.py:23 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\py.typed generate.py:177 DEBUG Processing file {{ cookiecutter.project_slug_no_hyphen }}\__init__.py generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__init__.py generate.py:155 DEBUG Check {{ cookiecutter.project_slug_no_hyphen }}\__init__.py to see if it's a binary generate.py:158 DEBUG is_binary: '{{ cookiecutter.project_slug_no_hyphen }}\\__init__.py' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__init__.py generate.py:177 DEBUG Processing file {{ cookiecutter.project_slug_no_hyphen }}\__main__.py generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__main__.py generate.py:155 DEBUG Check {{ cookiecutter.project_slug_no_hyphen }}\__main__.py to see if it's a binary generate.py:158 DEBUG is_binary: '{{ cookiecutter.project_slug_no_hyphen }}\\__main__.py' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__main__.py generate.py:177 DEBUG Processing file {{ cookiecutter.project_slug_no_hyphen }}\__pycache__\__init__.cpython-38.pyc generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__pycache__\__init__.cpython-38.pyc generate.py:155 DEBUG Check {{ cookiecutter.project_slug_no_hyphen }}\__pycache__\__init__.cpython-38.pyc to see if it's a binary generate.py:158 DEBUG is_binary: '{{ cookiecutter.project_slug_no_hyphen }}\\__pycache__\\__init__.cpython-38.pyc' check.py:23 DEBUG Copying binary {{ cookiecutter.project_slug_no_hyphen }}\__pycache__\__init__.cpython-38.pyc to generate.py:160 C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__pycache__\__init__.cpython-38.pyc without rendering DEBUG Processing file {{ cookiecutter.project_slug_no_hyphen }}\__pycache__\__main__.cpython-38.pyc generate.py:140 DEBUG Created file at C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__pycache__\__main__.cpython-38.pyc generate.py:155 DEBUG Check {{ cookiecutter.project_slug_no_hyphen }}\__pycache__\__main__.cpython-38.pyc to see if it's a binary generate.py:158 DEBUG is_binary: '{{ cookiecutter.project_slug_no_hyphen }}\\__pycache__\\__main__.cpython-38.pyc' check.py:23 DEBUG Copying binary {{ cookiecutter.project_slug_no_hyphen }}\__pycache__\__main__.cpython-38.pyc to generate.py:160 C:\Users\\Documents\devel\timelog_tracker\timelog_tracker\__pycache__\__main__.cpython-38.pyc without rendering DEBUG hooks_dir is C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create\templates\cli\cli_python\hooks hooks.py:55 DEBUG No hooks/dir in template_dir hooks.py:58 DEBUG No post_gen_project hook found hooks.py:128 DEBUG Creating common files. template_creator.py:315 DEBUG Cookiecuttering common files at C:\Users\\AppData\Local\Temp\tmpv4czgcw4 template_creator.py:320 DEBUG User config not found. Loading default config. config.py:125 DEBUG context_file is C:\Users\\AppData\Local\Temp\tmpv4czgcw4\cookiecutter.json main.py:83 DEBUG Context generated is OrderedDict([('cookiecutter', OrderedDict([('commonName', 'common_files_util'), ('full_name', 'Emilien generate.py:115 Klein'), ('email', 'emilien@klein.st'), ('creator_github_username', 'e2jk'), ('project_name', 'timelog-tracker'), ('project_slug', 'timelog_tracker'), ('version', '0.1.0'), ('license', 'MIT'), ('project_short_description', 'A utility to track working time in a Microsoft Outlook calendar and generate monthly timesheets.'), ('language', 'python'), ('domain', 'cli'), ('github_username', 'e2jk'), ('cookietemple_version', '1.3.9')]))]) [08/02/21 15:34:48] DEBUG Making sure path exists: C:\Users\/.cookiecutter_replay/ utils.py:42 DEBUG Searching C:\Users\\AppData\Local\Temp\tmpv4czgcw4 for the project template. find.py:19 DEBUG The project template appears to be C:\Users\\AppData\Local\Temp\tmpv4czgcw4\{{cookiecutter.commonName}} find.py:31 DEBUG Generating project from C:\Users\\AppData\Local\Temp\tmpv4czgcw4\{{cookiecutter.commonName}}... generate.py:265 DEBUG Rendered dir common_files_util must exist in output_dir . generate.py:195 DEBUG Making sure path exists: common_files_util utils.py:42 DEBUG Created directory at: common_files_util utils.py:45 DEBUG Project directory is C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util generate.py:287 DEBUG hooks_dir is C:\Users\\AppData\Local\Temp\tmpv4czgcw4\hooks hooks.py:55 DEBUG No hooks/dir in template_dir hooks.py:58 DEBUG No pre_gen_project hook found hooks.py:128 DEBUG Rendered dir C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github utils.py:42 DEBUG Created directory at: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github utils.py:45 DEBUG Rendered dir C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs utils.py:42 DEBUG Created directory at: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs utils.py:45 DEBUG Processing file .editorconfig generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.editorconfig generate.py:155 DEBUG Check .editorconfig to see if it's a binary generate.py:158 DEBUG is_binary: '.editorconfig' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.editorconfig generate.py:177 DEBUG Processing file .gitignore generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.gitignore generate.py:155 DEBUG Check .gitignore to see if it's a binary generate.py:158 DEBUG is_binary: '.gitignore' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.gitignore generate.py:177 DEBUG Processing file .prettierignore generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.prettierignore generate.py:155 DEBUG Check .prettierignore to see if it's a binary generate.py:158 DEBUG is_binary: '.prettierignore' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.prettierignore generate.py:177 DEBUG Processing file .readthedocs.yml generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.readthedocs.yml generate.py:155 DEBUG Check .readthedocs.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.readthedocs.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.readthedocs.yml generate.py:177 DEBUG Processing file CODE_OF_CONDUCT.rst generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\CODE_OF_CONDUCT.rst generate.py:155 DEBUG Check CODE_OF_CONDUCT.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'CODE_OF_CONDUCT.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\CODE_OF_CONDUCT.rst generate.py:177 [08/02/21 15:34:49] DEBUG Processing file LICENSE generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\LICENSE generate.py:155 DEBUG Check LICENSE to see if it's a binary generate.py:158 DEBUG is_binary: 'LICENSE' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\LICENSE generate.py:177 DEBUG Rendered dir C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE must exist in output_dir generate.py:195 . DEBUG Making sure path exists: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE utils.py:42 DEBUG Created directory at: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE utils.py:45 DEBUG Rendered dir C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows utils.py:42 DEBUG Created directory at: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows utils.py:45 DEBUG Processing file .github\pull_request_template.md generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\pull_request_template.md generate.py:155 DEBUG Check .github\pull_request_template.md to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\pull_request_template.md' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\pull_request_template.md generate.py:177 DEBUG Processing file .github\release-drafter.yml generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\release-drafter.yml generate.py:155 DEBUG Check .github\release-drafter.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\release-drafter.yml' check.py:23 DEBUG nontext_ratio1: 0.015625 helpers.py:73 DEBUG nontext_ratio2: 0.984375 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG EUC-JP Japanese prober hit error at byte 44 eucjpprober.py:61 DEBUG EUC-KR Korean prober hit error at byte 44 mbcharsetprober.py:65 DEBUG CP949 Korean prober hit error at byte 44 mbcharsetprober.py:65 DEBUG Big5 Chinese prober hit error at byte 45 mbcharsetprober.py:65 DEBUG EUC-TW Taiwan prober hit error at byte 44 mbcharsetprober.py:65 DEBUG utf-8 not active charsetgroupprober.py:98 DEBUG SHIFT_JIS Japanese confidence = 0.01 charsetgroupprober.py:101 DEBUG EUC-JP not active charsetgroupprober.py:98 DEBUG GB2312 Chinese confidence = 0.01 charsetgroupprober.py:101 DEBUG EUC-KR not active charsetgroupprober.py:98 DEBUG CP949 not active charsetgroupprober.py:98 DEBUG Big5 not active charsetgroupprober.py:98 DEBUG EUC-TW not active charsetgroupprober.py:98 DEBUG windows-1251 Russian confidence = 0.01 charsetgroupprober.py:101 DEBUG KOI8-R Russian confidence = 0.01 charsetgroupprober.py:101 DEBUG ISO-8859-5 Russian confidence = 0.01 charsetgroupprober.py:101 DEBUG MacCyrillic Russian confidence = 0.0 charsetgroupprober.py:101 DEBUG IBM866 Russian confidence = 0.0 charsetgroupprober.py:101 DEBUG IBM855 Russian confidence = 0.01 charsetgroupprober.py:101 DEBUG ISO-8859-7 Greek confidence = 0.01 charsetgroupprober.py:101 DEBUG windows-1253 Greek confidence = 0.01 charsetgroupprober.py:101 DEBUG ISO-8859-5 Bulgarian confidence = 0.01 charsetgroupprober.py:101 [08/02/21 15:34:50] DEBUG windows-1251 Bulgarian confidence = 0.01 charsetgroupprober.py:101 DEBUG TIS-620 Thai confidence = 0.0 charsetgroupprober.py:101 DEBUG ISO-8859-9 Turkish confidence = 0.5087869462490073 charsetgroupprober.py:101 DEBUG windows-1255 Hebrew confidence = 0.0 charsetgroupprober.py:101 DEBUG windows-1255 Hebrew confidence = 0.01 charsetgroupprober.py:101 DEBUG windows-1255 Hebrew confidence = 0.01 charsetgroupprober.py:101 DEBUG windows-1251 Russian confidence = 0.01 charsetgroupprober.py:101 DEBUG KOI8-R Russian confidence = 0.01 charsetgroupprober.py:101 DEBUG ISO-8859-5 Russian confidence = 0.01 charsetgroupprober.py:101 DEBUG MacCyrillic Russian confidence = 0.0 charsetgroupprober.py:101 DEBUG IBM866 Russian confidence = 0.0 charsetgroupprober.py:101 DEBUG IBM855 Russian confidence = 0.01 charsetgroupprober.py:101 DEBUG ISO-8859-7 Greek confidence = 0.01 charsetgroupprober.py:101 DEBUG windows-1253 Greek confidence = 0.01 charsetgroupprober.py:101 DEBUG ISO-8859-5 Bulgarian confidence = 0.01 charsetgroupprober.py:101 DEBUG windows-1251 Bulgarian confidence = 0.01 charsetgroupprober.py:101 DEBUG TIS-620 Thai confidence = 0.0 charsetgroupprober.py:101 DEBUG ISO-8859-9 Turkish confidence = 0.5087869462490073 charsetgroupprober.py:101 DEBUG windows-1255 Hebrew confidence = 0.0 charsetgroupprober.py:101 DEBUG windows-1255 Hebrew confidence = 0.01 charsetgroupprober.py:101 DEBUG windows-1255 Hebrew confidence = 0.01 charsetgroupprober.py:101 DEBUG detected_encoding: {'encoding': 'Windows-1254', 'confidence': 0.5087869462490073, 'language': 'Turkish'} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\release-drafter.yml generate.py:177 DEBUG Processing file .github\ISSUE_TEMPLATE\bug_report.md generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE\bug_report.md generate.py:155 DEBUG Check .github\ISSUE_TEMPLATE\bug_report.md to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\ISSUE_TEMPLATE\\bug_report.md' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE\bug_report.md generate.py:177 DEBUG Processing file .github\ISSUE_TEMPLATE\feature_request.md generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE\feature_request.md generate.py:155 DEBUG Check .github\ISSUE_TEMPLATE\feature_request.md to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\ISSUE_TEMPLATE\\feature_request.md' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file generate.py:177 C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE\feature_request.md DEBUG Processing file .github\ISSUE_TEMPLATE\general_question.md generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE\general_question.md generate.py:155 DEBUG Check .github\ISSUE_TEMPLATE\general_question.md to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\ISSUE_TEMPLATE\\general_question.md' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file generate.py:177 C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\ISSUE_TEMPLATE\general_question.md DEBUG Processing file .github\workflows\main_master_branch_protection.yml generate.py:140 DEBUG Created file at generate.py:155 C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\main_master_branch_protection.yml DEBUG Check .github\workflows\main_master_branch_protection.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\main_master_branch_protection.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 [08/02/21 15:34:51] DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file generate.py:177 C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\main_master_branch_protection.yml DEBUG Processing file .github\workflows\publish_docs.yml generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\publish_docs.yml generate.py:155 DEBUG Check .github\workflows\publish_docs.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\publish_docs.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\publish_docs.yml generate.py:177 DEBUG Processing file .github\workflows\release-drafter.yml generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\release-drafter.yml generate.py:155 DEBUG Check .github\workflows\release-drafter.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\release-drafter.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file generate.py:177 C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\release-drafter.yml DEBUG Processing file .github\workflows\run_cookietemple_lint.yml generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\run_cookietemple_lint.yml generate.py:155 DEBUG Check .github\workflows\run_cookietemple_lint.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\run_cookietemple_lint.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file generate.py:177 C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\run_cookietemple_lint.yml DEBUG Processing file .github\workflows\sync_project.yml generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\sync_project.yml generate.py:155 DEBUG Check .github\workflows\sync_project.yml to see if it's a binary generate.py:158 DEBUG is_binary: '.github\\workflows\\sync_project.yml' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\.github\workflows\sync_project.yml generate.py:177 DEBUG Rendered dir C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\_static must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\_static utils.py:42 DEBUG Created directory at: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\_static utils.py:45 DEBUG Rendered dir C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\__pycache__ must exist in output_dir . generate.py:195 DEBUG Making sure path exists: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\__pycache__ utils.py:42 DEBUG Created directory at: C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\__pycache__ utils.py:45 DEBUG Processing file docs\authors.rst generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\authors.rst generate.py:155 DEBUG Check docs\authors.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\authors.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\authors.rst generate.py:177 DEBUG Processing file docs\code_of_conduct.rst generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\code_of_conduct.rst generate.py:155 DEBUG Check docs\code_of_conduct.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\code_of_conduct.rst' check.py:23 [08/02/21 15:34:52] DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\code_of_conduct.rst generate.py:177 DEBUG Processing file docs\conf.py generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\conf.py generate.py:155 DEBUG Check docs\conf.py to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\conf.py' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\conf.py generate.py:177 DEBUG Processing file docs\index.rst generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\index.rst generate.py:155 DEBUG Check docs\index.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\index.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\index.rst generate.py:177 DEBUG Processing file docs\make.bat generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\make.bat generate.py:155 DEBUG Check docs\make.bat to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\make.bat' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\make.bat generate.py:177 DEBUG Processing file docs\Makefile generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\Makefile generate.py:155 DEBUG Check docs\Makefile to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\Makefile' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\Makefile generate.py:177 DEBUG Processing file docs\readme.rst generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\readme.rst generate.py:155 [08/02/21 15:34:53] DEBUG Check docs\readme.rst to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\readme.rst' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\readme.rst generate.py:177 DEBUG Processing file docs\requirements.txt generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\requirements.txt generate.py:155 DEBUG Check docs\requirements.txt to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\requirements.txt' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\requirements.txt generate.py:177 DEBUG Processing file docs\_static\custom_cookietemple.css generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\_static\custom_cookietemple.css generate.py:155 DEBUG Check docs\_static\custom_cookietemple.css to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\_static\\custom_cookietemple.css' check.py:23 DEBUG nontext_ratio1: 0.0 helpers.py:73 DEBUG nontext_ratio2: 1.0 helpers.py:85 DEBUG is_likely_binary: False helpers.py:91 DEBUG detected_encoding: {'encoding': 'ascii', 'confidence': 1.0, 'language': ''} helpers.py:95 DEBUG failure: decodable_as_unicode: False helpers.py:117 DEBUG Writing contents to file C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\_static\custom_cookietemple.css generate.py:177 DEBUG Processing file docs\__pycache__\conf.cpython-38.pyc generate.py:140 DEBUG Created file at C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\__pycache__\conf.cpython-38.pyc generate.py:155 DEBUG Check docs\__pycache__\conf.cpython-38.pyc to see if it's a binary generate.py:158 DEBUG is_binary: 'docs\\__pycache__\\conf.cpython-38.pyc' check.py:23 DEBUG Copying binary docs\__pycache__\conf.cpython-38.pyc to generate.py:160 C:\Users\\AppData\Local\Temp\tmpv4czgcw4\common_files_util\docs\__pycache__\conf.cpython-38.pyc without rendering DEBUG hooks_dir is C:\Users\\AppData\Local\Temp\tmpv4czgcw4\hooks hooks.py:55 DEBUG No hooks/dir in template_dir hooks.py:58 DEBUG No post_gen_project hook found hooks.py:128 DEBUG Copying common files into the created project template_creator.py:344 DEBUG Delete common files directory. template_creator.py:352 DEBUG Creating .cookietemple.yml file. template_creator.py:442 Fixing too short underlines of *.rst file (usually index.rst) DEBUG Detected handle cli-python lint.py:31 [08/02/21 15:34:54] DEBUG Running general linting. lint.py:57 Running general linting DEBUG Linting functions of general linting are: template_linter.py:62 ['check_version_consistent', 'check_docker', 'check_files_exist', 'check_no_cookiecutter_strings', 'lint_cookietemple_config', 'check_cookietemple_todos'] Running lint … 0 of 6 ['check_version_consistent', 'check_docker', 'check_files_exist', 'check_no_cookiecutter_strings', 'lint_cookietemple_config', 'check_cookietemple_t… DEBUG Running linting function: check_version_consistent template_linter.py:77 Running lint checks ------------------- --------------------------------------------------------------------------------------------------- 1 of 6 check_version_consistent ┌─────────────────────────────────────────────────────────────────── Traceback (most recent call last) ───────────────────────────────────────────────────────────────────┐ │ c:\users\\appdata\local\programs\python\python38-32\lib\runpy.py:193 in _run_module_as_main │ │ │ │ 190 │ main_globals = sys.modules["__main__"].__dict__ │ │ 191 │ if alter_argv: │ │ 192 │ │ sys.argv[0] = mod_spec.origin │ │ > 193 │ return _run_code(code, main_globals, None, │ │ 194 │ │ │ │ │ "__main__", mod_spec) │ │ 195 │ │ 196 def run_module(mod_name, init_globals=None, │ │ │ │ c:\users\\appdata\local\programs\python\python38-32\lib\runpy.py:86 in _run_code │ │ │ │ 83 │ │ │ │ │ __loader__ = loader, │ │ 84 │ │ │ │ │ __package__ = pkg_name, │ │ 85 │ │ │ │ │ __spec__ = mod_spec) │ │ > 86 │ exec(code, run_globals) │ │ 87 │ return run_globals │ │ 88 │ │ 89 def _run_module_code(code, init_globals=None, │ │ │ │ C:\Users\\.local\bin\cookietemple.exe\__main__.py:7 in │ │ │ │ [Errno 2] No such file or directory: 'C:\\Users\\\\.local\\bin\\cookietemple.exe\\__main__.py' │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\__main__.py:53 in main │ │ │ │ 50 │ # Is the latest cookietemple version installed? Upgrade if not! │ │ 51 │ if not UpgradeCommand.check_cookietemple_latest(): │ │ 52 │ │ console.print("[bold blue]Run [green]cookietemple upgrade [blue]to get the │ │ latest version.") │ │ > 53 │ cookietemple_cli() │ │ 54 │ │ 55 │ │ 56 @click.group(cls=HelpErrorHandling) │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\click\core.py:1137 in __call__ │ │ │ │ 1134 │ │ │ 1135 │ def __call__(self, *args: t.Any, **kwargs: t.Any) -> t.Any: │ │ 1136 │ │ """Alias for :meth:`main`.""" │ │ > 1137 │ │ return self.main(*args, **kwargs) │ │ 1138 │ │ 1139 │ │ 1140 class Command(BaseCommand): │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\click\core.py:1062 in main │ │ │ │ 1059 │ │ try: │ │ 1060 │ │ │ try: │ │ 1061 │ │ │ │ with self.make_context(prog_name, args, **extra) as ctx: │ │ > 1062 │ │ │ │ │ rv = self.invoke(ctx) │ │ 1063 │ │ │ │ │ if not standalone_mode: │ │ 1064 │ │ │ │ │ │ return rv │ │ 1065 │ │ │ │ │ # it's not safe to `ctx.exit(rv)` here! │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\click\core.py:1668 in invoke │ │ │ │ 1665 │ │ │ │ super().invoke(ctx) │ │ 1666 │ │ │ │ sub_ctx = cmd.make_context(cmd_name, args, parent=ctx) │ │ 1667 │ │ │ │ with sub_ctx: │ │ > 1668 │ │ │ │ │ return _process_result(sub_ctx.command.invoke(sub_ctx)) │ │ 1669 │ │ │ │ 1670 │ │ # In chain mode we create the contexts step by step, but after the │ │ 1671 │ │ # base command has been invoked. Because at that point we do not │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\click\core.py:1404 in invoke │ │ │ │ 1401 │ │ │ echo(style(message, fg="red"), err=True) │ │ 1402 │ │ │ │ 1403 │ │ if self.callback is not None: │ │ > 1404 │ │ │ return ctx.invoke(self.callback, **ctx.params) │ │ 1405 │ │ │ 1406 │ def shell_complete(self, ctx: Context, incomplete: str) -> t.List["CompletionItem"]: │ │ 1407 │ │ """Return a list of completions for the incomplete value. Looks │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\click\core.py:763 in invoke │ │ │ │ 760 │ │ │ │ 761 │ │ with augment_usage_errors(__self): │ │ 762 │ │ │ with ctx: │ │ > 763 │ │ │ │ return __callback(*args, **kwargs) │ │ 764 │ │ │ 765 │ def forward( │ │ 766 │ │ __self, __cmd: "Command", *args: t.Any, **kwargs: t.Any # noqa: B902 │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\__main__.py:110 in create │ │ │ │ 107 │ Next, you will be asked whether you want to use cookietemple's Github support create │ │ a repository, push your template and enable a few settings. │ │ 108 │ After the project has been created it will be linted and you will be notified of any │ │ TODOs. │ │ 109 │ """ │ │ > 110 │ choose_domain(path, domain, None) │ │ 111 │ │ 112 │ │ 113 @cookietemple_cli.command(short_help="Lint your existing cookietemple project.", │ │ cls=CustomHelpSubcommand) │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create\create.py:37 in choose_domain │ │ │ │ 34 │ switcher = {"cli": CliCreator, "web": WebCreator, "gui": GuiCreator, "lib": │ │ LibCreator, "pub": PubCreator} │ │ 35 │ │ │ 36 │ creator_obj: Union[CliCreator, WebCreator, GuiCreator, LibCreator, PubCreator] = │ │ switcher.get(domain.lower())() # type: ignore │ │ > 37 │ creator_obj.create_template(path, dot_cookietemple) │ │ 38 │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create\domains\cli_creator.py:84 in create_template │ │ │ │ 81 │ │ ) │ │ 82 │ │ │ │ 83 │ │ # perform general operations like creating a GitHub repository and general │ │ linting │ │ > 84 │ │ super().process_common_operations( │ │ 85 │ │ │ path=Path(path).resolve(), │ │ 86 │ │ │ domain="cli", │ │ 87 │ │ │ language=self.cli_struct.language, │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\create\template_creator.py:77 in process_common_operations │ │ │ │ 74 │ │ │ fix_short_title_underline(f"{project_path}/docs/index.rst") │ │ 75 │ │ │ │ 76 │ │ # Lint the project to verify that the new template adheres to all standards │ │ > 77 │ │ lint_project(project_path, is_create=True, skip_external=False) │ │ 78 │ │ │ │ 79 │ │ if self.creator_ctx.is_github_repo and not dot_cookietemple: │ │ 80 │ │ │ # rename the currently created template to a temporary name, create Github │ │ repo, push, remove temporary template │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\lint\lint.py:59 in lint_project │ │ │ │ 56 │ │ # Run non project specific linting │ │ 57 │ │ log.debug("Running general linting.") │ │ 58 │ │ console.print("[bold blue]Running general linting") │ │ > 59 │ │ lint_obj.lint_project( │ │ 60 │ │ │ super(lint_obj.__class__, lint_obj), custom_check_files=disable_check_files, │ │ is_subclass_calling=False │ │ 61 │ │ ) │ │ 62 │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\lint\template_linter.py:82 in lint_project │ │ │ │ 79 │ │ │ │ if fun_name == "check_files_exist": │ │ 80 │ │ │ │ │ getattr(calling_class, fun_name)(is_subclass_calling) │ │ 81 │ │ │ │ else: │ │ > 82 │ │ │ │ │ getattr(calling_class, fun_name)() │ │ 83 │ │ │ 84 │ def check_files_exist(self, is_subclass_calling=True): │ │ 85 │ │ """Checks a given project directory for required files. │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\lint\template_linter.py:237 in check_version_consistent │ │ │ │ 234 │ │ │ # check if the version matches current version in each listed file │ │ (depending on whitelisted or blacklisted) │ │ 235 │ │ │ for section in sections: │ │ 236 │ │ │ │ for _file, path in parser.items(section): │ │ > 237 │ │ │ │ │ self.check_version_match(path, current_version, section) │ │ 238 │ │ │ os.chdir(cwd) │ │ 239 │ │ │ # Pass message if there weren't any inconsistencies within the version │ │ numbers │ │ 240 │ │ │ if not any("general-5" in tup[0] for tup in self.failed): │ │ │ │ C:\Users\\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\lint\template_linter.py:255 in check_version_match │ │ │ │ 252 │ │ :param section: The current section (blacklisted or whitelisted files) │ │ 253 │ │ """ │ │ 254 │ │ with open(path) as file: │ │ > 255 │ │ │ for line in file: │ │ 256 │ │ │ │ # if a tag is found and (depending on wether it is a white or │ │ blacklisted file) check if the versions are matching │ │ 257 │ │ │ │ if ( │ │ 258 │ │ │ │ │ "<>" not in line and not section == │ │ "bumpversion_files_blacklisted" │ │ │ │ c:\users\\appdata\local\programs\python\python38-32\lib\encodings\cp1252.py:23 in decode │ │ │ │ 20 │ │ 21 class IncrementalDecoder(codecs.IncrementalDecoder): │ │ 22 │ def decode(self, input, final=False): │ │ > 23 │ │ return codecs.charmap_decode(input,self.errors,decoding_table)[0] │ │ 24 │ │ 25 class StreamWriter(Codec,codecs.StreamWriter): │ │ 26 │ pass │ └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 230: character maps to C:\Users\\Documents\devel> ```

Expected behavior

I would have expected the program to finish without throwing an Exception, and upload the project to GitHub, register on PyPI (or whatever cookietemple is expected to do - as mentioned, this is first time I'm using it)

System:

Additional context

Please ask if any other detail would be needed. In the meantime I'll start with the files created in the folder, and will handle the project creation manually on GitHub.

e2jk commented 3 years ago

[Ignore this comment, is not the cause of this issue]

Well, actually re-reading the traceback, I'm suprised by seeing this line (shown after the second call from the top in the traceback):

│ [Errno 2] No such file or directory: 'C:\\Users\\<username>\\.local\\bin\\cookietemple.exe\\__main__.py' │

This cookietemple.exe is the executable that pipx created when installing cookietemple. It looks like cookietemple creates a path to its __main__.py file by assuming it is in a folder down the main folder. The __main__.py file is to be found in the virtual environment folder that pipx created when installing cookietemple, which in my case is: "C:\Users\<username>\.local\pipx\venvs\cookietemple\Lib\site-packages\cookietemple\__main__.py"

I have a bit of trouble understanding the rest of the Traceback, am I correct in believing that the UnicodeDecodeError is triggered because the file path is empty or undefined? If that's the case, it would be helpful to rename this issue in "New project creation fails on Windows when installed with pipx (UnicodeDecodeError when Running lint checks)"

e2jk commented 3 years ago

[Ignore this comment, is not the cause of this issue]

Again, maybe just ignore the previous comment. Although the traceback complains about the file not existing, the immediate next entry in the traceback is for the actual __main__.py file, so it looks like that bit is not the cause of the issue:

[SNIP]
│ [Errno 2] No such file or directory: 'C:\\Users\\<username>\\.local\\bin\\cookietemple.exe\\__main__.py'                                                                    │
│                                                                                                                                                                         │
│ C:\Users\<username>\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\__main__.py:53 in main                                                                    
[SNIP]
e2jk commented 3 years ago

OK, getting a bit further... By adding a poor man's debug statement print("XX", path) at C:\Users\<username>\.local\pipx\venvs\cookietemple\lib\site-packages\cookietemple\lint\template_linter.py:237 (one of the lines involved in the Traceback) I get the following output just before the Exception being thrown:

XX timelog_tracker/__init__.py
XX .cookietemple.yml
XX docs/conf.py
XX pyproject.toml
XX .github/release-drafter.yml

So that last file must be what is causing all this trouble. And indeed, when opening the file in Notepad++, I see it contains some of the nowadays funky emoticons:

image

Looks like (at least on my machine [Windows]?) these funky characters are not of the taste of the character encoding...

e2jk commented 3 years ago

OK, that was it. By removing the 4 emoticons highlighted in the previous post from the template file "C:\Users\<username>\.local\pipx\venvs\cookietemple\Lib\site-packages\cookietemple\create\templates\common_files\{{cookiecutter.commonName}}\.github\release-drafter.yml", the process passed that section of the code succesfully.

I suppose these emoticons work for some people, but I'd be inclined to submit a PR to remove them from the template. Any opposition to that?

(unfortunately, a new Traceback is triggered because of the autopep8 command not being recognized, I'll open a separate issue #750 for that...)

e2jk commented 3 years ago

Quoting @Zethson's comment from the linked PR (which I just closed):

Thank you for the PR. We are rather reluctant to remove this. Is it possible to install the missing support for these characters in W10 enterprise? If yes, I would prefer to add this to the installations instructions. Honestly, I am confused why these characters are not supported to begin with. We cannot be the first people to use these characters on Windows. They should be rather common.

Searching a bit around (for instance here) it seems that the issue is with Windows's default characterset Windows-1252 not having these extended characters. Or you could see the issue differently, that Windows doesn't use Unicode/UTF-8 by default (as Linux and MacOS do).

Maybe a solution can be found in being explicit about which characterset to use when opening these files for linting, something like adding an explicit , encoding='utf-8' to the open command when inspecting these files?

Zethson commented 3 years ago

Maybe a solution can be found in being explicit about which characterset to use when opening these files for linting, something like adding an explicit , encoding='utf-8' to the open command when inspecting these files?

Perfect, yes. Let's do this.