Comments (8)
I have investigated a little more deeply and have come to the following conclusions:
- This is not a platform-dependent bug
- This is a problem with pylibdmtx, not the upstream library
Evidence
This is not a platform independent bug
I have managed to replicate this problem on my machine (Debian testing) with the apt install
ed libdmtx (v0.7.5), as has @akhmerov.
This is a problem with pylibdmtx
I used the first part of @justinvdk's script above to generate a problematic datamatrix. I then saved this to a PNG file and read it in using the dmtxread
program installed with apt
, which is linked against libdmtx v0.7.5, and it produces the correct result.
What's the problem
I believe that the API to libdmtx has changed between 2 bugfix releases, when really there should have been a minor (or even major) version release.
I used the shell script from this gist with git bisect
in the libdmtx repo to find that this commit is where things stopped working. I notice that this commit actually changed the API of libdmtx by adding extra fields to some of the exported datastructures. This means that the wrappers in wrapper.py
are formally incorrect, and things break in unexpected ways.'
from pylibdmtx.
Included in v.0.1.8, now on PyPI.
from pylibdmtx.
from pylibdmtx.
Seems like this was not fixed after all... I am also getting these unexpected results on MAC
from pylibdmtx.
Downgrading to libdmtx to version 0.7.4 fixes the issue. Therefore I suggest the issue is with latest libdmtx and not pylibdmtx.
from pylibdmtx.
I now observe this issue with libdmtx 0.7.5 and Ubuntu 18.10.
from pylibdmtx.
Hi @quicklizard99 @kursancew, have you had a chance to look at this? This seems to be a breaking issue on fresh installs of this repo. @jbweston's fix resolves it on my machine. His PR is ready to be merged, but additional information is needed on how to update CI to run with the newest version of libdmtx.
(Although, some broader changes may be required if backwards compatibility with libdmtx is viewed as a necessity. Depending on scope, I can potentially help out as well in order to get this repo working again.)
from pylibdmtx.
Awesome, thank you!
from pylibdmtx.
Related Issues (20)
- ImportError:Could not find module 'libdmtx-64.dll' (or one of its dependencies).(windows) HOT 2
- Enhanced Navigation: Introducing QR Code Directional Assistance
- Python 3.12 compatibility: distutils is no longer available
- (Ubuntu) ImportError: Unable to find dmtx shared library HOT 3
- decode() timeout time always reached, even when matrix is found much earlier HOT 1
- Could not find module 'libdmtx-32.dll' HOT 2
- How do I decode low quality image HOT 2
- Low frame rate when reading video stream with camera HOT 1
- Any GPU Support? HOT 1
- Bug: There are some hidden reason causes I can not recognize this code. HOT 1
- Error message for empty input for `encode` could be more specific
- Package 'libdmtx0a' has no installation candidate HOT 1
- Matrix can not be recognised if printed as circles. WhY? HOT 9
- Windows DLL for version 0.7.5 HOT 1
- Create a GS1 Datamatrix Code ECC200 HOT 2
- Some datamatrix do not recognize ASCii 026 separator (GS) HOT 2
- DmtxTime bug
- ImportError: Unable to find dmtx shared library (Mac) HOT 2
- decoding from camera is too slow and non robust HOT 1
- DeprecationWarning because of distutils
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pylibdmtx.