Blizzard / Blizzard/s2protocol

s2_cli.py doesn't print game, message, or tracker events when using Python 3

Open
#96 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
641
Forks
118
PR merge metrics
No merged PRs in 30d

Description

I've been having issues with the s2_cli.py script in Python 3.7. The game, message, and tracker events for a replay get printed just fine in Python 2.7, but never in Python 3.7.

After some debugging, I think I've narrowed it down to how the built-in map() function has changed between Python 2 and Python 3. map() returns a list in Python 2, but it returns an iterator in Python 3. So:

` map(process_event, protocol.decode_replay_game_events(contents))`

calls process_event on each event in Python 2, but does nothing in Python 3 until you start stepping through the iterator.

I fixed this issue in my local copy, but I haven't really used github much so I'll look into making a pull request.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.