Rename test-abi to test-symbols, start verifying symbols are documented
We keep forgetting to update `apidoc/ostree-sections.txt`, so let's start enforcing it. Of course it turns out we had some bugs here like symbols marked as public but never implemented, etc. Those are fixed in the prior commits. Closes: #263 Approved by: giuseppe
This commit is contained in:
parent
6923c088c5
commit
e9a1809c4d
|
|
@ -28,7 +28,7 @@ TESTS_ENVIRONMENT += OT_TESTS_DEBUG=1 \
|
||||||
PATH=$$(cd $(top_builddir) && pwd):$${PATH} \
|
PATH=$$(cd $(top_builddir) && pwd):$${PATH} \
|
||||||
$(NULL)
|
$(NULL)
|
||||||
|
|
||||||
uninstalled_test_scripts = tests/test-abi.sh
|
uninstalled_test_scripts = tests/test-symbols.sh
|
||||||
|
|
||||||
test_scripts = \
|
test_scripts = \
|
||||||
tests/test-basic.sh \
|
tests/test-basic.sh \
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,9 @@ OstreeBootconfigParser
|
||||||
ostree_bootconfig_parser_new
|
ostree_bootconfig_parser_new
|
||||||
ostree_bootconfig_parser_clone
|
ostree_bootconfig_parser_clone
|
||||||
ostree_bootconfig_parser_parse
|
ostree_bootconfig_parser_parse
|
||||||
|
ostree_bootconfig_parser_parse_at
|
||||||
ostree_bootconfig_parser_write
|
ostree_bootconfig_parser_write
|
||||||
|
ostree_bootconfig_parser_write_at
|
||||||
ostree_bootconfig_parser_set
|
ostree_bootconfig_parser_set
|
||||||
ostree_bootconfig_parser_get
|
ostree_bootconfig_parser_get
|
||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
|
|
@ -97,6 +99,8 @@ ostree_checksum_inplace_from_bytes
|
||||||
ostree_checksum_inplace_to_bytes
|
ostree_checksum_inplace_to_bytes
|
||||||
ostree_checksum_bytes_peek
|
ostree_checksum_bytes_peek
|
||||||
ostree_checksum_bytes_peek_validate
|
ostree_checksum_bytes_peek_validate
|
||||||
|
ostree_checksum_b64_inplace_from_bytes
|
||||||
|
ostree_checksum_b64_inplace_to_bytes
|
||||||
ostree_cmp_checksum_bytes
|
ostree_cmp_checksum_bytes
|
||||||
ostree_validate_rev
|
ostree_validate_rev
|
||||||
ostree_parse_refspec
|
ostree_parse_refspec
|
||||||
|
|
@ -109,6 +113,7 @@ ostree_object_to_string
|
||||||
ostree_object_from_string
|
ostree_object_from_string
|
||||||
ostree_content_stream_parse
|
ostree_content_stream_parse
|
||||||
ostree_content_file_parse
|
ostree_content_file_parse
|
||||||
|
ostree_content_file_parse_at
|
||||||
ostree_raw_file_to_content_stream
|
ostree_raw_file_to_content_stream
|
||||||
ostree_checksum_file_from_input
|
ostree_checksum_file_from_input
|
||||||
ostree_checksum_file
|
ostree_checksum_file
|
||||||
|
|
@ -140,11 +145,14 @@ ostree_deployment_get_bootcsum
|
||||||
ostree_deployment_get_bootserial
|
ostree_deployment_get_bootserial
|
||||||
ostree_deployment_get_bootconfig
|
ostree_deployment_get_bootconfig
|
||||||
ostree_deployment_get_origin
|
ostree_deployment_get_origin
|
||||||
|
ostree_deployment_get_origin_relpath
|
||||||
|
ostree_deployment_get_unlocked
|
||||||
ostree_deployment_set_index
|
ostree_deployment_set_index
|
||||||
ostree_deployment_set_bootserial
|
ostree_deployment_set_bootserial
|
||||||
ostree_deployment_set_bootconfig
|
ostree_deployment_set_bootconfig
|
||||||
ostree_deployment_set_origin
|
ostree_deployment_set_origin
|
||||||
ostree_deployment_clone
|
ostree_deployment_clone
|
||||||
|
ostree_deployment_unlocked_state_to_string
|
||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
OSTREE_DEPLOYMENT
|
OSTREE_DEPLOYMENT
|
||||||
OSTREE_IS_DEPLOYMENT
|
OSTREE_IS_DEPLOYMENT
|
||||||
|
|
@ -226,6 +234,7 @@ ostree_repo_create
|
||||||
ostree_repo_get_path
|
ostree_repo_get_path
|
||||||
ostree_repo_get_mode
|
ostree_repo_get_mode
|
||||||
ostree_repo_get_config
|
ostree_repo_get_config
|
||||||
|
ostree_repo_get_dfd
|
||||||
ostree_repo_copy_config
|
ostree_repo_copy_config
|
||||||
ostree_repo_remote_add
|
ostree_repo_remote_add
|
||||||
ostree_repo_remote_delete
|
ostree_repo_remote_delete
|
||||||
|
|
@ -237,6 +246,9 @@ ostree_repo_remote_get_gpg_verify
|
||||||
ostree_repo_remote_get_gpg_verify_summary
|
ostree_repo_remote_get_gpg_verify_summary
|
||||||
ostree_repo_remote_gpg_import
|
ostree_repo_remote_gpg_import
|
||||||
ostree_repo_remote_fetch_summary
|
ostree_repo_remote_fetch_summary
|
||||||
|
ostree_repo_get_remote_boolean_option
|
||||||
|
ostree_repo_get_remote_list_option
|
||||||
|
ostree_repo_get_remote_option
|
||||||
ostree_repo_get_parent
|
ostree_repo_get_parent
|
||||||
ostree_repo_write_config
|
ostree_repo_write_config
|
||||||
OstreeRepoTransactionStats
|
OstreeRepoTransactionStats
|
||||||
|
|
@ -247,6 +259,8 @@ ostree_repo_abort_transaction
|
||||||
ostree_repo_transaction_set_refspec
|
ostree_repo_transaction_set_refspec
|
||||||
ostree_repo_transaction_set_ref
|
ostree_repo_transaction_set_ref
|
||||||
ostree_repo_set_ref_immediate
|
ostree_repo_set_ref_immediate
|
||||||
|
ostree_repo_set_cache_dir
|
||||||
|
ostree_repo_sign_delta
|
||||||
ostree_repo_has_object
|
ostree_repo_has_object
|
||||||
ostree_repo_write_metadata
|
ostree_repo_write_metadata
|
||||||
ostree_repo_write_metadata_async
|
ostree_repo_write_metadata_async
|
||||||
|
|
@ -269,6 +283,8 @@ ostree_repo_load_object_stream
|
||||||
ostree_repo_query_object_storage_size
|
ostree_repo_query_object_storage_size
|
||||||
ostree_repo_import_object_from
|
ostree_repo_import_object_from
|
||||||
ostree_repo_import_object_from_with_trust
|
ostree_repo_import_object_from_with_trust
|
||||||
|
ostree_repo_import_archive_to_mtree
|
||||||
|
ostree_repo_export_tree_to_archive
|
||||||
ostree_repo_delete_object
|
ostree_repo_delete_object
|
||||||
OstreeRepoCommitFilterResult
|
OstreeRepoCommitFilterResult
|
||||||
OstreeRepoCommitFilter
|
OstreeRepoCommitFilter
|
||||||
|
|
@ -284,6 +300,7 @@ ostree_repo_commit_modifier_unref
|
||||||
ostree_repo_devino_cache_new
|
ostree_repo_devino_cache_new
|
||||||
ostree_repo_devino_cache_ref
|
ostree_repo_devino_cache_ref
|
||||||
ostree_repo_devino_cache_unref
|
ostree_repo_devino_cache_unref
|
||||||
|
ostree_repo_devino_cache_get_type
|
||||||
ostree_repo_write_directory_to_mtree
|
ostree_repo_write_directory_to_mtree
|
||||||
ostree_repo_write_dfd_to_mtree
|
ostree_repo_write_dfd_to_mtree
|
||||||
ostree_repo_write_archive_to_mtree
|
ostree_repo_write_archive_to_mtree
|
||||||
|
|
@ -309,8 +326,16 @@ ostree_repo_static_delta_execute_offline
|
||||||
ostree_repo_traverse_new_reachable
|
ostree_repo_traverse_new_reachable
|
||||||
ostree_repo_traverse_commit
|
ostree_repo_traverse_commit
|
||||||
ostree_repo_traverse_commit_union
|
ostree_repo_traverse_commit_union
|
||||||
|
ostree_repo_commit_traverse_iter_cleanup
|
||||||
|
ostree_repo_commit_traverse_iter_clear
|
||||||
|
ostree_repo_commit_traverse_iter_get_dir
|
||||||
|
ostree_repo_commit_traverse_iter_get_file
|
||||||
|
ostree_repo_commit_traverse_iter_init_commit
|
||||||
|
ostree_repo_commit_traverse_iter_init_dirtree
|
||||||
|
ostree_repo_commit_traverse_iter_next
|
||||||
OstreeRepoPruneFlags
|
OstreeRepoPruneFlags
|
||||||
ostree_repo_prune
|
ostree_repo_prune
|
||||||
|
ostree_repo_prune_static_deltas
|
||||||
OstreeRepoPullFlags
|
OstreeRepoPullFlags
|
||||||
ostree_repo_pull
|
ostree_repo_pull
|
||||||
ostree_repo_pull_one_dir
|
ostree_repo_pull_one_dir
|
||||||
|
|
@ -318,6 +343,7 @@ ostree_repo_pull_with_options
|
||||||
ostree_repo_pull_default_console_progress_changed
|
ostree_repo_pull_default_console_progress_changed
|
||||||
ostree_repo_sign_commit
|
ostree_repo_sign_commit
|
||||||
ostree_repo_append_gpg_signature
|
ostree_repo_append_gpg_signature
|
||||||
|
ostree_repo_add_gpg_signature_summary
|
||||||
ostree_repo_verify_commit
|
ostree_repo_verify_commit
|
||||||
ostree_repo_verify_commit_ext
|
ostree_repo_verify_commit_ext
|
||||||
ostree_repo_verify_summary
|
ostree_repo_verify_summary
|
||||||
|
|
@ -364,8 +390,11 @@ ostree_sepolicy_new
|
||||||
ostree_sepolicy_get_path
|
ostree_sepolicy_get_path
|
||||||
ostree_sepolicy_get_name
|
ostree_sepolicy_get_name
|
||||||
ostree_sepolicy_get_label
|
ostree_sepolicy_get_label
|
||||||
|
ostree_sepolicy_get_csum
|
||||||
OstreeSePolicyRestoreconFlags
|
OstreeSePolicyRestoreconFlags
|
||||||
ostree_sepolicy_restorecon
|
ostree_sepolicy_restorecon
|
||||||
|
ostree_sepolicy_setfscreatecon
|
||||||
|
ostree_sepolicy_fscreatecon_cleanup
|
||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
OSTREE_SEPOLICY
|
OSTREE_SEPOLICY
|
||||||
OSTREE_IS_SEPOLICY
|
OSTREE_IS_SEPOLICY
|
||||||
|
|
@ -386,6 +415,7 @@ ostree_sysroot_try_lock
|
||||||
ostree_sysroot_lock_async
|
ostree_sysroot_lock_async
|
||||||
ostree_sysroot_lock_finish
|
ostree_sysroot_lock_finish
|
||||||
ostree_sysroot_unlock
|
ostree_sysroot_unlock
|
||||||
|
ostree_sysroot_unload
|
||||||
ostree_sysroot_get_fd
|
ostree_sysroot_get_fd
|
||||||
ostree_sysroot_ensure_initialized
|
ostree_sysroot_ensure_initialized
|
||||||
ostree_sysroot_get_bootversion
|
ostree_sysroot_get_bootversion
|
||||||
|
|
@ -393,13 +423,17 @@ ostree_sysroot_get_subbootversion
|
||||||
ostree_sysroot_get_deployments
|
ostree_sysroot_get_deployments
|
||||||
ostree_sysroot_get_booted_deployment
|
ostree_sysroot_get_booted_deployment
|
||||||
ostree_sysroot_get_deployment_directory
|
ostree_sysroot_get_deployment_directory
|
||||||
|
ostree_sysroot_get_deployment_dirpath
|
||||||
ostree_sysroot_get_deployment_origin_path
|
ostree_sysroot_get_deployment_origin_path
|
||||||
ostree_sysroot_cleanup
|
ostree_sysroot_cleanup
|
||||||
ostree_sysroot_prepare_cleanup
|
ostree_sysroot_prepare_cleanup
|
||||||
ostree_sysroot_get_repo
|
ostree_sysroot_get_repo
|
||||||
ostree_sysroot_init_osname
|
ostree_sysroot_init_osname
|
||||||
ostree_sysroot_deployment_set_kargs
|
ostree_sysroot_deployment_set_kargs
|
||||||
|
ostree_sysroot_deployment_set_mutable
|
||||||
|
ostree_sysroot_deployment_unlock
|
||||||
ostree_sysroot_write_deployments
|
ostree_sysroot_write_deployments
|
||||||
|
ostree_sysroot_write_origin_file
|
||||||
ostree_sysroot_deploy_tree
|
ostree_sysroot_deploy_tree
|
||||||
ostree_sysroot_get_merge_deployment
|
ostree_sysroot_get_merge_deployment
|
||||||
ostree_sysroot_origin_new_from_refspec
|
ostree_sysroot_origin_new_from_refspec
|
||||||
|
|
|
||||||
|
|
@ -323,11 +323,6 @@ global:
|
||||||
ostree_deployment_unlocked_state_to_string;
|
ostree_deployment_unlocked_state_to_string;
|
||||||
} LIBOSTREE_2016.3;
|
} LIBOSTREE_2016.3;
|
||||||
|
|
||||||
/* NOTE NOTE NOTE
|
|
||||||
* Versions above here are released. Only add symbols below this line.
|
|
||||||
* NOTE NOTE NOTE
|
|
||||||
*/
|
|
||||||
|
|
||||||
LIBOSTREE_2016.5 {
|
LIBOSTREE_2016.5 {
|
||||||
global:
|
global:
|
||||||
ostree_repo_import_object_from_with_trust;
|
ostree_repo_import_object_from_with_trust;
|
||||||
|
|
@ -337,3 +332,8 @@ global:
|
||||||
ostree_repo_get_remote_boolean_option;
|
ostree_repo_get_remote_boolean_option;
|
||||||
ostree_repo_set_cache_dir;
|
ostree_repo_set_cache_dir;
|
||||||
} LIBOSTREE_2016.4;
|
} LIBOSTREE_2016.4;
|
||||||
|
|
||||||
|
/* NOTE NOTE NOTE
|
||||||
|
* Versions above here are released. Only add symbols below this line.
|
||||||
|
* NOTE NOTE NOTE
|
||||||
|
*/
|
||||||
|
|
|
||||||
|
|
@ -19,10 +19,19 @@
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
echo '1..1'
|
echo '1..2'
|
||||||
|
|
||||||
|
echo "Verifying all expected symbols are actually exported..."
|
||||||
grep ' ostree_[A-Za-z0-9_]*;' ${G_TEST_SRCDIR}/src/libostree/libostree.sym | sed -e 's,^ *\([A-Za-z0-9_]*\);,\1,' | sort -u > expected-symbols.txt
|
grep ' ostree_[A-Za-z0-9_]*;' ${G_TEST_SRCDIR}/src/libostree/libostree.sym | sed -e 's,^ *\([A-Za-z0-9_]*\);,\1,' | sort -u > expected-symbols.txt
|
||||||
eu-readelf -a ${G_TEST_BUILDDIR}/.libs/libostree-1.so | grep 'FUNC.*GLOBAL.*DEFAULT.*@@LIBOSTREE_' | sed -e 's,^.* \(ostree_[A-Za-z0-9_]*\)@@LIBOSTREE_[0-9_.]*,\1,' |sort -u > found-symbols.txt
|
eu-readelf -a ${G_TEST_BUILDDIR}/.libs/libostree-1.so | grep 'FUNC.*GLOBAL.*DEFAULT.*@@LIBOSTREE_' | sed -e 's,^.* \(ostree_[A-Za-z0-9_]*\)@@LIBOSTREE_[0-9_.]*,\1,' |sort -u > found-symbols.txt
|
||||||
diff -u expected-symbols.txt found-symbols.txt
|
diff -u expected-symbols.txt found-symbols.txt
|
||||||
|
echo "ok exports"
|
||||||
|
|
||||||
echo 'ok'
|
# cmd__private__ is private. The fetcher symbol should not have been made public.
|
||||||
|
grep -E -v '(ostree_cmd__private__)|(ostree_fetcher_config_flags_get_type)' found-symbols.txt > expected-documented.txt
|
||||||
|
|
||||||
|
echo "Verifying all public symbols are documented:"
|
||||||
|
grep '^ostree_' ${G_TEST_SRCDIR}/apidoc/ostree-sections.txt |sort -u > found-documented.txt
|
||||||
|
diff -u expected-documented.txt found-documented.txt
|
||||||
|
|
||||||
|
echo 'ok documented symbols'
|
||||||
Loading…
Reference in New Issue