ABI break in 1.2.12 -> 1.2.13
alsa-project/alsa-lib issue #422 was opened from bbhtt:
This seems a bit unusual for a patch version bump.
``` ┌───────────────────────────┐ │ ABI Break: libasound.so.2 │ └───────────────────────────┘
Functions changes summary: 1 Removed, 3 Changed (250 filtered out), 35 Added functions Variables changes summary: 0 Removed, 0 Changed, 0 Added variable
1 Removed function:
[D] 'function void snd_ump_block_info_set_block_id(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_block_id@@ALSA_1.2.10}
35 Added functions:
[A] 'function const unsigned char* snd_pcm_hw_params_get_sync(const snd_pcm_hw_params_t*)' {snd_pcm_hw_params_get_sync@@ALSA_1.2.13} [A] 'function int snd_seq_create_ump_block(snd_seq_t*, int, const snd_ump_block_info_t*)' {snd_seq_create_ump_block@@ALSA_1.2.13} [A] 'function int snd_seq_create_ump_endpoint(snd_seq_t*, const snd_ump_endpoint_info_t*, unsigned int)' {snd_seq_create_ump_endpoint@@ALSA_1.2.13} [A] 'function int snd_seq_has_queue_tempo_base(snd_seq_t*)' {snd_seq_has_queue_tempo_base@@ALSA_0.9} [A] 'function int snd_seq_port_info_get_ump_is_midi1(const snd_seq_port_info_t*)' {snd_seq_port_info_get_ump_is_midi1@@ALSA_1.2.13} [A] 'function void snd_seq_port_info_set_ump_is_midi1(snd_seq_port_info_t*, int)' {snd_seq_port_info_set_ump_is_midi1@@ALSA_1.2.13} [A] 'function unsigned int snd_seq_queue_tempo_get_tempo_base(const snd_seq_queue_tempo_t*)' {snd_seq_queue_tempo_get_tempo_base@@ALSA_1.2.13} [A] 'function void snd_seq_queue_tempo_set_tempo_base(snd_seq_queue_tempo_t*, unsigned int)' {snd_seq_queue_tempo_set_tempo_base@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_clear(snd_ump_block_info_t*)' {snd_ump_block_info_clear@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_active(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_active@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_card(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_card@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_device(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_device@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_direction(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_direction@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_first_group(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_first_group@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_flags(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_flags@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_midi_ci_version(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_midi_ci_version@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_name(snd_ump_block_info_t*, const char*)' {snd_ump_block_info_set_name@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_num_groups(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_num_groups@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_sysex8_streams(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_sysex8_streams@@ALSA_1.2.13} [A] 'function void snd_ump_block_info_set_ui_hint(snd_ump_block_info_t*, unsigned int)' {snd_ump_block_info_set_ui_hint@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_clear(snd_ump_endpoint_info_t*)' {snd_ump_endpoint_info_clear@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_card(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_card@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_device(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_device@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_family_id(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_family_id@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_flags(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_flags@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_manufacturer_id(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_manufacturer_id@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_model_id(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_model_id@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_name(snd_ump_endpoint_info_t*, const char*)' {snd_ump_endpoint_info_set_name@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_num_blocks(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_num_blocks@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_product_id(snd_ump_endpoint_info_t*, const char*)' {snd_ump_endpoint_info_set_product_id@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_protocol(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_protocol@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_protocol_caps(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_protocol_caps@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_sw_revision(snd_ump_endpoint_info_t*, const unsigned char*)' {snd_ump_endpoint_info_set_sw_revision@@ALSA_1.2.13} [A] 'function void snd_ump_endpoint_info_set_version(snd_ump_endpoint_info_t*, unsigned int)' {snd_ump_endpoint_info_set_version@@ALSA_1.2.13} [A] 'function int snd_ump_packet_length(unsigned int)' {snd_ump_packet_length@@ALSA_1.2.13}
3 functions with some indirect sub-type change:
[C] 'function int __old_snd_pcm_hw_params_get_access(const snd_pcm_hw_params_t*)' at pcm.c:8062:1 has some indirect sub-type changes: Please note that the exported symbol of this function is snd_pcm_hw_params_get_access@ALSA_0.9 parameter 1 of type 'const snd_pcm_hw_params_t*' has sub-type changes: in pointed to type 'const snd_pcm_hw_params_t': in unqualified underlying type 'typedef snd_pcm_hw_params_t' at pcm.h:64:1: underlying type 'struct snd_pcm_hw_params' at asound.h:414:1 changed: type size hasn't changed 1 data member insertion: 'unsigned char sync[16]', at offset 4352 (in bits) at asound.h:421:1 1 data member change: type of 'unsigned char reserved[64]' changed: type name changed from 'unsigned char[64]' to 'unsigned char[48]' array type size changed from 512 to 384 array type subrange 1 changed length from 64 to 48 array subrange changed: upper bound of '<anonymous range>[48]' change from '63' to '47' and offset changed from 4352 to 4480 (in bits) (by +128 bits)
[C] 'function int snd_ctl_pcm_info(snd_ctl_t*, snd_pcm_info_t*)' at control.c:1219:1 has some indirect sub-type changes: parameter 2 of type 'snd_pcm_info_t*' has sub-type changes: in pointed to type 'typedef snd_pcm_info_t' at pcm.h:48:1: underlying type 'struct snd_pcm_info' at asound.h:345:1 changed: type size hasn't changed 1 data member change: type of 'snd_pcm_sync_id sync' changed: entity changed from 'union snd_pcm_sync_id' to 'unsigned char[16]' and name of 'snd_pcm_info::sync' changed to 'snd_pcm_info::pad1' at asound.h:349:1
[C] 'function int snd_seq_get_queue_tempo(snd_seq_t*, int, snd_seq_queue_tempo_t*)' at seq.c:3880:1 has some indirect sub-type changes: parameter 3 of type 'snd_seq_queue_tempo_t*' has sub-type changes: in pointed to type 'typedef snd_seq_queue_tempo_t' at seq.h:441:1: underlying type 'struct snd_seq_queue_tempo' at asequencer.h:540:1 changed: type size hasn't changed 1 data member insertion: 'unsigned short int tempo_base', at offset 160 (in bits) at asequencer.h:532:1 1 data member change: type of 'char reserved[24]' changed: type name changed from 'char[24]' to 'char[22]' array type size changed from 192 to 176 array type subrange 1 changed length from 24 to 22 array subrange changed: upper bound of '<anonymous range>[22]' change from '23' to '21' and offset changed from 160 to 176 (in bits) (by +16 bits) ```
Issue URL : https://github.com/alsa-project/alsa-lib/issues/422 Repository URL: https://github.com/alsa-project/alsa-lib
participants (1)
-
GitHub issues - opened