[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#525782: lintian: warn about "#MISSING: ..." in symbols files



Package: lintian
Version: 2.2.9
Severity: wishlist

Please warn about symbols files containing #MISSING: ...

These lines indicate some symbols have disappeared in newer versions of
a library. The removed symbols might have been private symbols that have
been hidden or they were public symbols that have been removed. Private
symbols should be removed from the symbols file. Removed symbols means
an ABI breakage and that version should not be packaged without
reintroducing the symbols or bumping the SONAME/etc. Another alternative
is that the symbols were introduced in a release candidate and removed
in the final release, I guess the symbols should be removed. Normally
when a symbol disappears the package will FTBFS with a message like the
below. Some people seem to just patch their symbols file with the lines
containing #MISSING instead of dealing with the issue properly and
hopefully a lintian warning would discourage that practice.

dh_makeshlibs
dpkg-gensymbols: warning: some symbols disappeared in the symbols file: see diff output below
dpkg-gensymbols: warning: debian/libicns1/DEBIAN/symbols doesn't match completely debian/libicns1.symbols
--- dpkg-gensymbolskwkdDi	2009-04-27 13:18:21.000000000 +0800
+++ dpkg-gensymbolsnfF9Vl	2009-04-27 13:18:21.000000000 +0800
@@ -19, 7 +19, 7 @@
 icns_import_family_data@Base 0.5.7
 icns_init_image@Base 0.5.7
 icns_init_image_for_type@Base 0.5.7
- icns_jp2_to_image@Base 0.5.7
+#MISSING: 0.5.9-1.1# icns_jp2_to_image@Base 0.5.7
 icns_new_element_from_image@Base 0.5.7
 icns_new_element_from_mask@Base 0.5.7
 icns_read_family_from_file@Base 0.5.7
dh_makeshlibs: command returned error code 256

Here are some examples of that on lenny:

$ grep MISSING /var/lib/dpkg/info/*symbols 
/var/lib/dpkg/info/e2fslibs.symbols:#MISSING: 1.41.1# os_tab@Base 1.37
/var/lib/dpkg/info/e2fslibs.symbols:#MISSING: 1.41.1# crc16@Base 1.41.0
/var/lib/dpkg/info/e2fslibs.symbols:#MISSING: 1.41.1# crc16_table@Base 1.41.0
/var/lib/dpkg/info/e2fslibs.symbols:#MISSING: 1.41.0# ext2fs_swap_ext_attr@Base 1.37
/var/lib/dpkg/info/e2fslibs.symbols:#MISSING: 1.41.0# ext2fs_swap_group_desc@Base 1.37
/var/lib/dpkg/info/e2fslibs.symbols:#MISSING: 1.41.0# ext2fs_swap_inode@Base 1.37
/var/lib/dpkg/info/e2fslibs.symbols:#MISSING: 1.41.0# ext2fs_swap_inode_full@Base 1.37
/var/lib/dpkg/info/e2fslibs.symbols:#MISSING: 1.41.0# ext2fs_swap_super@Base 1.37
/var/lib/dpkg/info/libblkid1.symbols:#MISSING: 1.41.1# blkid_devdirs@Base 1.34
/var/lib/dpkg/info/libblkid1.symbols:#MISSING: 1.40.7# check_for_modules@Base 1.40.6
/var/lib/dpkg/info/libblkid1.symbols:#MISSING: 1.40.7# fs_proc_check@Base 1.40.6
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_connection_failed@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_connection_failed_with_error@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_connection_succeeded@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_message_handler_handle_message@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_message_new_from_node@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_message_node_add_child_node@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_message_node_new@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_message_sub_type_to_string@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_message_type_to_string@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_proxy_connect_cb@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_sock_addrinfo_get_error_str@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_sock_get_error_str@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_sock_get_local_host@Base 1.2.3-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_sock_library_shutdown@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_base_free_fields@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_base_init@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_begin@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_close@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_free@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_func_always_continue@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_initialize@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_new@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_read@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_ssl_send@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_utils_base64_encode@Base 1.1.4-2
/var/lib/dpkg/info/libloudmouth1-0.symbols:#MISSING: 1.3.3-1# _lm_utils_generate_id@Base 1.1.4-2
/var/lib/dpkg/info/libogg0.symbols:#MISSING: 1.1.0# oggpack_adv_huff@Base 1.0rc3
/var/lib/dpkg/info/libogg0.symbols:#MISSING: 1.1.0# oggpack_look_huff@Base 1.0rc3

-- 
bye,
pabs

http://wiki.debian.org/PaulWise

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: