Closed SnoopJ closed 5 years ago
Merging #19 into master will decrease coverage by
0.08%
. The diff coverage is66.66%
.
@@ Coverage Diff @@
## master #19 +/- ##
==========================================
- Coverage 98.84% 98.76% -0.09%
==========================================
Files 21 21
Lines 1130 1132 +2
Branches 119 120 +1
==========================================
+ Hits 1117 1118 +1
Misses 8 8
- Partials 5 6 +1
Impacted Files | Coverage Δ | |
---|---|---|
lenses/maybe.py | 98.46% <66.66%> (-1.54%) |
:arrow_down: |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 1343896...c14a2a5. Read the comment docs.
Hi, it looks like there's an incompatibility of
lenses
with CPython 3.5.2. This is the default Python3 on Ubuntu 16.04, so this bug represents a pretty large fraction of potential users of the library.If I haven't done anything silly in installing this library, I think this is because of a bug in the
typing
module that causes populated__slots__
to be erroneously duplicated when usingGeneric
. I'm not sure exactly what other versions this may affect (although I did try 3.3.7 and it worked fine), but it appears to have been fixed in 3.5.3.This patch tests specifically for Python 3.5.2 and avoids declaring
__slots__
in that case. The end result is thatJust
and subclasses may be slightly less performant (I haven't done any profiling), but the library will be usable, and it does not change the outcome of the test suite for 3.5.2: