After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 592283 - Namespace issues
Namespace issues
Status: RESOLVED FIXED
Product: libgoffice
Classification: Other
Component: General
unspecified
Other All
: Normal normal
: ---
Assigned To: Jody Goldberg
Jody Goldberg
Depends on:
Blocks:
 
 
Reported: 2009-08-19 01:37 UTC by Morten Welinder
Modified: 2009-09-01 17:52 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Morten Welinder 2009-08-19 01:37:07 UTC
I think we're approaching a release.  That is an excellent time to
consider the namespace of goffice.

A lot of these functions, insofar they belong in goffice, really need
to acquire a go_ prefix.


welinder@anemone:~/gnome/goffice/goffice/.libs> nm libgoffice-0.8.so | grep ' T ' | grep -v ' T go' | grep -v foo
001039d8 T _fini
000cff20 T _go_combo_is_updating
0003d7a0 T _go_string_dump
0003e4d0 T _go_string_init
0003df10 T _go_string_shutdown
0002b7b4 T _init
0006ba50 T count_io_progress_set
0006bfd0 T count_io_progress_update
0003fb50 T datetime_g_months_between
0003f280 T datetime_g_to_serial
0003fc40 T datetime_g_years_between
0003ed00 T datetime_serial_raw_to_seconds
0003fe30 T datetime_serial_raw_to_serial
0003f300 T datetime_serial_to_g
0003fdc0 T datetime_serial_to_timet
0003ff20 T datetime_timet_to_seconds
0003ff60 T datetime_timet_to_serial
0003fe80 T datetime_timet_to_serial_raw
0003fce0 T datetime_weeknum
0003f5a0 T days_between_basis
000568a0 T e_xml_get_child_by_name
00056690 T e_xml_get_child_by_name_by_lang
000567e0 T e_xml_get_child_by_name_no_lang
0006b010 T error_info_add_details
0006af10 T error_info_add_details_list
0006aeb0 T error_info_free
0006b1d0 T error_info_new_from_errno
0006b240 T error_info_new_from_error_list
0006b140 T error_info_new_printf
0006b180 T error_info_new_str
0006b2b0 T error_info_new_str_with_details
0006b200 T error_info_new_str_with_details_list
0006b0b0 T error_info_new_vprintf
0006ad10 T error_info_peek_details
0006ad60 T error_info_peek_message
0006acb0 T error_info_peek_severity
0006ae60 T error_info_print
0003edd0 T gnm_date_convention_base
0006b8a0 T gnm_io_context_processing_file
0006b940 T gnm_io_context_set_num_files
0006b4d0 T gnm_io_warning
0006b830 T gnm_io_warning_unknown_font
0006b7c0 T gnm_io_warning_unknown_function
0006b720 T gnm_io_warning_unsupported_feature
0006b480 T gnm_io_warning_varargs
0006c150 T gnumeric_io_context_new
0006b510 T gnumeric_io_error_clear
0006b590 T gnumeric_io_error_display
0006b3b0 T gnumeric_io_error_info_set
0006b390 T gnumeric_io_error_occurred
0006b620 T gnumeric_io_error_push
0006c590 T gnumeric_io_error_string
0006b430 T gnumeric_io_error_unknown
0006b3a0 T gnumeric_io_warning_occurred
0006b6a0 T io_context_get_type
0006bd80 T io_progress_message
0006bbc0 T io_progress_range_pop
0006bcb0 T io_progress_range_push
0006b9c0 T io_progress_unset
0006be20 T io_progress_update
00034270 T libgoffice_init
00034210 T libgoffice_shutdown
00065fb0 T plugin_service_activate
00066650 T plugin_service_deactivate
00065cd0 T plugin_service_define
00066c40 T plugin_service_file_opener_get_type
00066be0 T plugin_service_file_saver_get_type
00066ca0 T plugin_service_general_get_type
00066090 T plugin_service_get_cbs
000661b0 T plugin_service_get_description
00066240 T plugin_service_get_id
00066130 T plugin_service_get_plugin
00065f50 T plugin_service_get_type
00066b20 T plugin_service_gobject_loader_get_type
00066760 T plugin_service_load
000662c0 T plugin_service_new
00066df0 T plugin_service_plugin_loader_generate_type
00066b80 T plugin_service_plugin_loader_get_type
00066ac0 T plugin_service_simple_get_type
00066550 T plugin_service_unload
00065dc0 T plugin_services_init
00065d60 T plugin_services_shutdown
0006bb10 T value_io_progress_set
0006c090 T value_io_progress_update
00056f50 T xml_node_get_bool
00056cd0 T xml_node_get_cstr
00056d20 T xml_node_get_double
00056e50 T xml_node_get_enum
00056940 T xml_node_get_gocolor
00056db0 T xml_node_get_int
00056c80 T xml_node_set_bool
00056a00 T xml_node_set_cstr
00056b60 T xml_node_set_double
00056a50 T xml_node_set_enum
00056af0 T xml_node_set_gocolor
00056c20 T xml_node_set_int
Comment 1 Morten Welinder 2009-08-20 01:05:28 UTC
I just committed a major part of this.  We're left with:

welinder@anemone:~/gnome/goffice/goffice/.libs> nm libgoffice-0.8.so | grep ' T ' | grep -v ' T go' | grep -v foo
00104e38 T _fini
000d0120 T _go_combo_is_updating
0003d9a0 T _go_string_dump
0003e6d0 T _go_string_init
0003e110 T _go_string_shutdown
0002b960 T _init
0003fd50 T datetime_g_months_between
0003f480 T datetime_g_to_serial
0003fe40 T datetime_g_years_between
0003ef00 T datetime_serial_raw_to_seconds
00040030 T datetime_serial_raw_to_serial
0003f500 T datetime_serial_to_g
0003ffc0 T datetime_serial_to_timet
00040120 T datetime_timet_to_seconds
00040160 T datetime_timet_to_serial
00040080 T datetime_timet_to_serial_raw
0003fee0 T datetime_weeknum
00056aa0 T e_xml_get_child_by_name
00056890 T e_xml_get_child_by_name_by_lang
000569e0 T e_xml_get_child_by_name_no_lang
00034470 T libgoffice_init
00034410 T libgoffice_shutdown
00057150 T xml_node_get_bool
00056ed0 T xml_node_get_cstr
00056f20 T xml_node_get_double
00057050 T xml_node_get_enum
00056b40 T xml_node_get_gocolor
00056fb0 T xml_node_get_int
00056e80 T xml_node_set_bool
00056c00 T xml_node_set_cstr
00056d60 T xml_node_set_double
00056c50 T xml_node_set_enum
00056cf0 T xml_node_set_gocolor
00056e20 T xml_node_set_int
Comment 2 Morten Welinder 2009-08-22 16:03:09 UTC
We're down to xml stuff now, plus some #defines related to colours and units.


welinder@anemone:~/gnome/goffice> nm goffice/.libs/libgoffice-0.8.so | grep ' T ' | grep -v ' T go' | grep -v ' T foo' 
00104e38 T _fini
000d0120 T _go_combo_is_updating
00037500 T _go_fonts_init
000372d0 T _go_fonts_shutdown
0003d9a0 T _go_string_dump
0003e6d0 T _go_string_init
0003e110 T _go_string_shutdown
0002b954 T _init
00056aa0 T e_xml_get_child_by_name
00056890 T e_xml_get_child_by_name_by_lang
000569e0 T e_xml_get_child_by_name_no_lang
00034470 T libgoffice_init
00034410 T libgoffice_shutdown
00057150 T xml_node_get_bool
00056ed0 T xml_node_get_cstr
00056f20 T xml_node_get_double
00057050 T xml_node_get_enum
00056b40 T xml_node_get_gocolor
00056fb0 T xml_node_get_int
00056e80 T xml_node_set_bool
00056c00 T xml_node_set_cstr
00056d60 T xml_node_set_double
00056c50 T xml_node_set_enum
00056cf0 T xml_node_set_gocolor
00056e20 T xml_node_set_int
Comment 3 Morten Welinder 2009-08-24 00:24:52 UTC
link-symbols are done.
unit defines are done.

That leaves the color defines where the situation was improved.
Comment 4 Jean Bréfort 2009-09-01 05:53:10 UTC
go-color.h macros have been renamed. Anything else left?
Comment 5 Morten Welinder 2009-09-01 12:42:14 UTC
This is the last I know of at this point:

./goffice/app/go-plugin-service-impl.h:#define GPS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GO_TYPE_PLUGIN_SERVICE, GOPluginServiceClass))
./goffice/app/go-plugin-service-impl.h:#define GPS_GET_CLASS(o) GPS_CLASS (G_OBJECT_GET_CLASS (o))
./goffice/app/go-plugin-service-impl.h:#define GPS_GOBJECT_LOADER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GO_TYPE_PLUGIN_SERVICE, GOPluginServiceGObjectLoaderClass))
./goffice/app/go-plugin-service-impl.h:#define GPS_GOBJECT_LOADER_GET_CLASS(o) GPS_GOBJECT_LOADER_CLASS (G_OBJECT_GET_CLASS (o))
Comment 6 Jean Bréfort 2009-09-01 14:52:46 UTC
Damned, I missed that one, and this one is used in GChemUtils too.
Replace with GOPS_ or GO_PS_?
Comment 7 Morten Welinder 2009-09-01 15:41:25 UTC
GO_PLUGIN_SERVICE_ I think.
Comment 8 Jean Bréfort 2009-09-01 16:32:07 UTC
done.