--- /tmp/python-thinc-6.12.1-1+b1ocb7stbj/debian/python3-thinc_6.12.1-1+b1_amd64.deb +++ python3-thinc_6.12.1-1+b1_amd64.deb ├── file list │ @@ -1,3 +1,3 @@ │ -rw-r--r-- 0 0 0 4 2019-08-08 08:13:17.000000 debian-binary │ --rw-r--r-- 0 0 0 5344 2019-08-08 08:13:17.000000 control.tar.xz │ --rw-r--r-- 0 0 0 870864 2019-08-08 08:13:17.000000 data.tar.xz │ +-rw-r--r-- 0 0 0 5348 2019-08-08 08:13:17.000000 control.tar.xz │ +-rw-r--r-- 0 0 0 870388 2019-08-08 08:13:17.000000 data.tar.xz ├── control.tar.xz │ ├── control.tar │ │ ├── ./md5sums │ │ │ ├── ./md5sums │ │ │ │┄ Files differ ├── data.tar.xz │ ├── data.tar │ │ ├── ./usr/lib/python3/dist-packages/thinc/linear/avgtron.cpp │ │ │ @@ -1268,25 +1268,25 @@ │ │ │ * int length │ │ │ */ │ │ │ struct __pyx_t_5thinc_7structs_TemplateC { │ │ │ int indices[10]; │ │ │ int length; │ │ │ __pyx_t_5thinc_8typedefs_atom_t atoms[10]; │ │ │ }; │ │ │ -struct __pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc; │ │ │ -typedef struct __pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc; │ │ │ +struct __pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc; │ │ │ +typedef struct __pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc; │ │ │ │ │ │ /* "thinc/linear/avgtron.pyx":249 │ │ │ * feat = PyMem_Malloc(sizeof(SparseAverageC)) │ │ │ * if feat is NULL: │ │ │ * msg = (feat_id, clas, grad) # <<<<<<<<<<<<<< │ │ │ * raise MemoryError("Error allocating memory for feature: %s" % msg) │ │ │ * feat.curr = SparseArray.init(clas, grad) │ │ │ */ │ │ │ -struct __pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc { │ │ │ +struct __pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc { │ │ │ __pyx_t_5thinc_8typedefs_feat_t f0; │ │ │ __pyx_t_5thinc_8typedefs_class_t f1; │ │ │ __pyx_t_5thinc_8typedefs_weight_t f2; │ │ │ }; │ │ │ │ │ │ /* "cymem/cymem.pxd":4 │ │ │ * ctypedef void (*free_t)(void *p) │ │ │ @@ -2300,15 +2300,15 @@ │ │ │ /* CIntToPy.proto */ │ │ │ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_uint64_t(uint64_t value); │ │ │ │ │ │ /* CIntToPy.proto */ │ │ │ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); │ │ │ │ │ │ /* ToPyCTupleUtility.proto */ │ │ │ -static PyObject* __pyx_convert__to_py___pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc(__pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc); │ │ │ +static PyObject* __pyx_convert__to_py___pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc(__pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc); │ │ │ │ │ │ /* CIntFromPy.proto */ │ │ │ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); │ │ │ │ │ │ /* CIntFromPy.proto */ │ │ │ static CYTHON_INLINE uint64_t __Pyx_PyInt_As_uint64_t(PyObject *); │ │ │ │ │ │ @@ -6103,15 +6103,15 @@ │ │ │ * weight_t grad) except -1: │ │ │ * if grad == 0: │ │ │ */ │ │ │ │ │ │ static PyObject *__pyx_pw_5thinc_6linear_7avgtron_18AveragedPerceptron_19update_weight(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ │ │ │ static int __pyx_f_5thinc_6linear_7avgtron_18AveragedPerceptron_update_weight(struct __pyx_obj_5thinc_6linear_7avgtron_AveragedPerceptron *__pyx_v_self, __pyx_t_5thinc_8typedefs_feat_t __pyx_v_feat_id, __pyx_t_5thinc_8typedefs_class_t __pyx_v_clas, __pyx_t_5thinc_8typedefs_weight_t __pyx_v_grad, int __pyx_skip_dispatch) { │ │ │ struct __pyx_t_5thinc_7structs_SparseAverageC *__pyx_v_feat; │ │ │ - __pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_v_msg; │ │ │ + __pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_v_msg; │ │ │ int __pyx_v_i; │ │ │ int __pyx_r; │ │ │ __Pyx_RefNannyDeclarations │ │ │ PyObject *__pyx_t_1 = NULL; │ │ │ PyObject *__pyx_t_2 = NULL; │ │ │ PyObject *__pyx_t_3 = NULL; │ │ │ PyObject *__pyx_t_4 = NULL; │ │ │ @@ -6119,15 +6119,15 @@ │ │ │ PyObject *__pyx_t_6 = NULL; │ │ │ PyObject *__pyx_t_7 = NULL; │ │ │ int __pyx_t_8; │ │ │ PyObject *__pyx_t_9 = NULL; │ │ │ int __pyx_t_10; │ │ │ Py_ssize_t __pyx_t_11; │ │ │ int __pyx_t_12; │ │ │ - __pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_t_13; │ │ │ + __pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_t_13; │ │ │ struct __pyx_t_5thinc_7structs_SparseArrayC *__pyx_t_14; │ │ │ __Pyx_RefNannySetupContext("update_weight", 0); │ │ │ /* Check if called by wrapper */ │ │ │ if (unlikely(__pyx_skip_dispatch)) ; │ │ │ /* Check if overridden in Python */ │ │ │ else if (unlikely((Py_TYPE(((PyObject *)__pyx_v_self))->tp_dictoffset != 0) || (Py_TYPE(((PyObject *)__pyx_v_self))->tp_flags & (Py_TPFLAGS_IS_ABSTRACT | Py_TPFLAGS_HEAPTYPE)))) { │ │ │ #if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_PYTYPE_LOOKUP │ │ │ @@ -6362,15 +6362,15 @@ │ │ │ /* "thinc/linear/avgtron.pyx":250 │ │ │ * if feat is NULL: │ │ │ * msg = (feat_id, clas, grad) │ │ │ * raise MemoryError("Error allocating memory for feature: %s" % msg) # <<<<<<<<<<<<<< │ │ │ * feat.curr = SparseArray.init(clas, grad) │ │ │ * feat.avgs = SparseArray.init(clas, 0) │ │ │ */ │ │ │ - __pyx_t_1 = __pyx_convert__to_py___pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc(__pyx_v_msg); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 250, __pyx_L1_error) │ │ │ + __pyx_t_1 = __pyx_convert__to_py___pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc(__pyx_v_msg); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 250, __pyx_L1_error) │ │ │ __Pyx_GOTREF(__pyx_t_1); │ │ │ __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_Error_allocating_memory_for_feat, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 250, __pyx_L1_error) │ │ │ __Pyx_GOTREF(__pyx_t_2); │ │ │ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; │ │ │ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_MemoryError, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 250, __pyx_L1_error) │ │ │ __Pyx_GOTREF(__pyx_t_1); │ │ │ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; │ │ │ @@ -6741,29 +6741,29 @@ │ │ │ * self, feat_t feat_id, class_t clas, weight_t grad) except -1: │ │ │ * if grad == 0: │ │ │ */ │ │ │ │ │ │ static PyObject *__pyx_pw_5thinc_6linear_7avgtron_18AveragedPerceptron_21update_weight_ftrl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ │ │ │ static int __pyx_f_5thinc_6linear_7avgtron_18AveragedPerceptron_update_weight_ftrl(struct __pyx_obj_5thinc_6linear_7avgtron_AveragedPerceptron *__pyx_v_self, __pyx_t_5thinc_8typedefs_feat_t __pyx_v_feat_id, __pyx_t_5thinc_8typedefs_class_t __pyx_v_clas, __pyx_t_5thinc_8typedefs_weight_t __pyx_v_grad, int __pyx_skip_dispatch) { │ │ │ struct __pyx_t_5thinc_7structs_SparseAverageC *__pyx_v_feat; │ │ │ - __pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_v_msg; │ │ │ + __pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_v_msg; │ │ │ long __pyx_v_i; │ │ │ int __pyx_r; │ │ │ __Pyx_RefNannyDeclarations │ │ │ PyObject *__pyx_t_1 = NULL; │ │ │ PyObject *__pyx_t_2 = NULL; │ │ │ PyObject *__pyx_t_3 = NULL; │ │ │ PyObject *__pyx_t_4 = NULL; │ │ │ PyObject *__pyx_t_5 = NULL; │ │ │ PyObject *__pyx_t_6 = NULL; │ │ │ PyObject *__pyx_t_7 = NULL; │ │ │ int __pyx_t_8; │ │ │ PyObject *__pyx_t_9 = NULL; │ │ │ int __pyx_t_10; │ │ │ - __pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_t_11; │ │ │ + __pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc __pyx_t_11; │ │ │ struct __pyx_t_5thinc_7structs_SparseArrayC *__pyx_t_12; │ │ │ long __pyx_t_13; │ │ │ __Pyx_RefNannySetupContext("update_weight_ftrl", 0); │ │ │ /* Check if called by wrapper */ │ │ │ if (unlikely(__pyx_skip_dispatch)) ; │ │ │ /* Check if overridden in Python */ │ │ │ else if (unlikely((Py_TYPE(((PyObject *)__pyx_v_self))->tp_dictoffset != 0) || (Py_TYPE(((PyObject *)__pyx_v_self))->tp_flags & (Py_TPFLAGS_IS_ABSTRACT | Py_TPFLAGS_HEAPTYPE)))) { │ │ │ @@ -6938,15 +6938,15 @@ │ │ │ /* "thinc/linear/avgtron.pyx":284 │ │ │ * if feat is NULL: │ │ │ * msg = (feat_id, clas, grad) │ │ │ * raise MemoryError("Error allocating memory for feature: %s" % msg) # <<<<<<<<<<<<<< │ │ │ * feat.curr = SparseArray.init(clas, 0) │ │ │ * feat.mom1 = SparseArray.init(clas, 0) │ │ │ */ │ │ │ - __pyx_t_1 = __pyx_convert__to_py___pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc(__pyx_v_msg); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 284, __pyx_L1_error) │ │ │ + __pyx_t_1 = __pyx_convert__to_py___pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc(__pyx_v_msg); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 284, __pyx_L1_error) │ │ │ __Pyx_GOTREF(__pyx_t_1); │ │ │ __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_Error_allocating_memory_for_feat, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 284, __pyx_L1_error) │ │ │ __Pyx_GOTREF(__pyx_t_2); │ │ │ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; │ │ │ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_MemoryError, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 284, __pyx_L1_error) │ │ │ __Pyx_GOTREF(__pyx_t_1); │ │ │ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; │ │ │ @@ -16692,15 +16692,15 @@ │ │ │ unsigned char *bytes = (unsigned char *)&value; │ │ │ return _PyLong_FromByteArray(bytes, sizeof(long), │ │ │ little, !is_unsigned); │ │ │ } │ │ │ } │ │ │ │ │ │ /* ToPyCTupleUtility */ │ │ │ -static PyObject* __pyx_convert__to_py___pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc(__pyx_ctuple_b8b0e____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc value) { │ │ │ +static PyObject* __pyx_convert__to_py___pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc(__pyx_ctuple_a8c07____dunderpyx_t_5thinc_8typedefs_feat_t__and___dunderpyx_t_5thinc_8typedefs_class_t__and___dunderpyx_t_5thinc_8typedefs_weight_t__etc value) { │ │ │ PyObject* item = NULL; │ │ │ PyObject* result = PyTuple_New(3); │ │ │ if (!result) goto bad; │ │ │ item = __Pyx_PyInt_From_uint64_t(value.f0); │ │ │ if (!item) goto bad; │ │ │ PyTuple_SET_ITEM(result, 0, item); │ │ │ item = __Pyx_PyInt_From_int32_t(value.f1); │ │ ├── ./usr/lib/python3/dist-packages/thinc/linear/avgtron.cpython-37m-x86_64-linux-gnu.so │ │ │ ├── readelf --wide --notes {} │ │ │ │ @@ -1,4 +1,4 @@ │ │ │ │ │ │ │ │ Displaying notes found in: .note.gnu.build-id │ │ │ │ Owner Data size Description │ │ │ │ - GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: cdc39669aa24550ed931eb36537c89bb6fa50464 │ │ │ │ + GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: d9874411e29dcc27914b8fea922b0c00eeb2263d │ │ │ ├── strings --all --bytes=8 {} │ │ │ │ @@ -376,15 +376,15 @@ │ │ │ │ thinc.linear.avgtron.AveragedPerceptron.apply_owed_L1 │ │ │ │ thinc.linear.avgtron.AveragedPerceptron.__call__ │ │ │ │ thinc.linear.avgtron.AveragedPerceptron.load │ │ │ │ thinc.linear.avgtron.AveragedPerceptron.dump │ │ │ │ Argument '%.200s' has incorrect type (expected %.200s, got %.200s) │ │ │ │ thinc.linear.avgtron.AveragedPerceptron.update │ │ │ │ thinc.linear.avgtron.AveragedPerceptron.__init__ │ │ │ │ -c39669aa24550ed931eb36537c89bb6fa50464.debug │ │ │ │ +874411e29dcc27914b8fea922b0c00eeb2263d.debug │ │ │ │ .shstrtab │ │ │ │ .note.gnu.build-id │ │ │ │ .gnu.hash │ │ │ │ .gnu.version │ │ │ │ .gnu.version_r │ │ │ │ .rela.dyn │ │ │ │ .rela.plt │ │ │ ├── readelf --wide --decompress --hex-dump=.gnu_debuglink {} │ │ │ │ @@ -1,7 +1,7 @@ │ │ │ │ │ │ │ │ Hex dump of section '.gnu_debuglink': │ │ │ │ - 0x00000000 63333936 36396161 32343535 30656439 c39669aa24550ed9 │ │ │ │ - 0x00000010 33316562 33363533 37633839 62623666 31eb36537c89bb6f │ │ │ │ - 0x00000020 61353034 36342e64 65627567 00000000 a50464.debug.... │ │ │ │ - 0x00000030 feb2a1f8 .... │ │ │ │ + 0x00000000 38373434 31316532 39646363 32373931 874411e29dcc2791 │ │ │ │ + 0x00000010 34623866 65613932 32623063 30306565 4b8fea922b0c00ee │ │ │ │ + 0x00000020 62323236 33642e64 65627567 00000000 b2263d.debug.... │ │ │ │ + 0x00000030 f182068a ....