jab on dev
jab on main
Add filterwarnings = error to p… (compare)
jab on dev
Add filterwarnings = error to p… (compare)
dependabot[bot] on pip
jab on deps
jab on main
Upgrade dependencies. astroid … Switch dependabot schedule to m… (compare)
def reduce_or_add(d, reduce):
seen = {}
ret = defaultdict(set)
for k, vs in d.items():
for v in vs:
if v in seen:
ret[seen[v]].remove(v)
seen[v] = reduce(k, seen[v])
ret[seen[v]].add(v)
else:
ret[k].add(v)
seen[v] = k
return ret
test_properties
but is it a property test?assert hasattr(bi, "_isinv")
wheel
in requirements? Building wheels for collected packages: py-cpuinfo
Running setup.py bdist_wheel for py-cpuinfo ... error
Complete output from command /home/tuananh/projects/bidict/venv/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-03qu3tgi/py-cpuinfo/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmpeq9k47vbpip-wheel- --python-tag cp36:
usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: -c --help [cmd1 cmd2 ...]
or: -c --help-commands
or: -c cmd --help
error: invalid command 'bdist_wheel'
----------------------------------------
Failed building wheel for py-cpuinfo
Running setup.py clean for py-cpuinfo
Failed to build py-cpuinfo
@given(...)
feeding hypothesis-generated input into it. I deliberately threw it into test_properties.py nonetheless to keep it together with the other property-based tests for that function, but I at least should have added a comment to make it clearer this was intentional (not missing a @given
or something). bi._isinv
more clearly and concisely expresses the intent there, in my opinion.wheel
should not need to be in setup_requires.
--no-binary=:all:
to your pip install
command?
pip install
Just Works, and pip list
includes wheel
, see e.g. https://travis-ci.org/github/jab/bidict/jobs/730242994 (search for "pip list" in the console output) – but definitely for another time since this is exactly the kind of nonsense that can otherwise easily burn a whole hack day:)
wheel
isn't even a transitive dependency.
Something interesting, in poking around to find where the invariants might break, I found that by adding
HASHABLES = ATOMS | st.functions()
this causes test_pickle_roundtrips
to fail because functions cannot be pickled. One can, amusedly create bidicts with functions as keys
bidict({print: print}).inv[print]("Hello world")