Mon, 12 May 2025 20:25:16 -0500
Handle formatting in server messages
Testing Done:
Used the default motd on my local ergo server to verify that formatting was working.
Reviewed at https://reviews.imfreedom.org/r/3991/
|
38534
28747a3cea35
Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38492
diff
changeset
|
1 | PROGS = [ |
|
43055
917386321169
Add Purple.Account:protocol
Gary Kramlich <grim@reaperworld.com>
parents:
43053
diff
changeset
|
2 | 'account', |
|
39974
cea80de2f5ac
Add some unit tests around purple_account_option_copy
Gary Kramlich <grim@reaperworld.com>
parents:
39484
diff
changeset
|
3 | 'account_option', |
|
41181
e859c41d8996
Create the PurpleAccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
41176
diff
changeset
|
4 | 'account_manager', |
|
43144
627ee13c5dee
Add a Purple.Attachment:inline property and other cleanups
Gary Kramlich <grim@reaperworld.com>
parents:
43076
diff
changeset
|
5 | 'attachment', |
|
43145
dff7cdade009
Implement Purple.Attachments
Gary Kramlich <grim@reaperworld.com>
parents:
43144
diff
changeset
|
6 | 'attachments', |
|
41514
a96768bacb59
Create PurpleAuthorizationRequest and use it for notifications.
Gary Kramlich <grim@reaperworld.com>
parents:
41493
diff
changeset
|
7 | 'authorization_request', |
| 42915 | 8 | 'badge', |
|
43076
6b0210915ee3
Create PurpleBadgeManager
Gary Kramlich <grim@reaperworld.com>
parents:
43057
diff
changeset
|
9 | 'badge_manager', |
|
42918
6cb60e125051
Implement Purple.Badges
Gary Kramlich <grim@reaperworld.com>
parents:
42915
diff
changeset
|
10 | 'badges', |
|
42326
3fc3dd614b4e
Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents:
42319
diff
changeset
|
11 | 'channel_join_details', |
|
39975
f691f3812205
Add some unit tests for the circular buffer.. they're not great, was just trying to test somethings
Gary Kramlich <grim@reaperworld.com>
parents:
39484
diff
changeset
|
12 | 'circular_buffer', |
|
42645
3844b333df53
Create PurpleCreateConversationDetails
Gary Kramlich <grim@reaperworld.com>
parents:
42582
diff
changeset
|
13 | 'create_conversation_details', |
|
42964
f0edc907e018
Implement Purple.Command
Gary Kramlich <grim@reaperworld.com>
parents:
42936
diff
changeset
|
14 | 'command', |
|
43057
2c801eae5449
Add commands for say and action
Gary Kramlich <grim@reaperworld.com>
parents:
43055
diff
changeset
|
15 | 'commands', |
|
43053
f2f944ac775c
Implement Purple.CommandManager
Gary Kramlich <grim@reaperworld.com>
parents:
43051
diff
changeset
|
16 | 'command_manager', |
|
41739
f589ceec0172
Create the new PurpleContact
Gary Kramlich <grim@reaperworld.com>
parents:
41736
diff
changeset
|
17 | 'contact', |
|
41948
6d844d2faff1
Split PurpleContactInfo out of PurpleContact
Gary Kramlich <grim@reaperworld.com>
parents:
41888
diff
changeset
|
18 | 'contact_info', |
|
41754
abf413211063
Create the new PurpleContactManager
Gary Kramlich <grim@reaperworld.com>
parents:
41749
diff
changeset
|
19 | 'contact_manager', |
|
42114
d3fe2b899c89
Add membership management to PurpleConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42080
diff
changeset
|
20 | 'conversation', |
|
42273
884be7e66e1f
Add some minor unit tests to PurpleConversationManager
Gary Kramlich <grim@reaperworld.com>
parents:
42266
diff
changeset
|
21 | 'conversation_manager', |
|
42080
df47db24cee6
Add PurpleConversationMember to link a PurpleContactInfo to a PurpleConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42078
diff
changeset
|
22 | 'conversation_member', |
|
42890
c2b7b3b9c351
Break out Purple.Conversation:members to its own class
Gary Kramlich <grim@reaperworld.com>
parents:
42844
diff
changeset
|
23 | 'conversation_members', |
|
41809
94c31400486a
Don't use the default credential manager while unit testing aside from the default manager tests
Gary Kramlich <grim@reaperworld.com>
parents:
41804
diff
changeset
|
24 | 'credential_manager', |
|
40548
42556c49e1e2
Add PurpleCredentialProvider as the first piece to replace the existing keyring api.
Gary Kramlich <grim@reaperworld.com>
parents:
40351
diff
changeset
|
25 | 'credential_provider', |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
42326
diff
changeset
|
26 | 'file_transfer', |
|
42560
dcdf8a9a686b
Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
42538
diff
changeset
|
27 | 'file_transfer_manager', |
|
41090
741992355ead
GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents:
41040
diff
changeset
|
28 | 'history_adapter', |
|
741992355ead
GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents:
41040
diff
changeset
|
29 | 'history_manager', |
|
42383
e8302a55fddb
Create PurpleIdleManager for managing idle states
Gary Kramlich <grim@reaperworld.com>
parents:
42375
diff
changeset
|
30 | 'idle_manager', |
|
38534
28747a3cea35
Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38492
diff
changeset
|
31 | 'image', |
|
40351
79cbdc5c5989
Add some unit tests for key value pairs
Gary Kramlich <grim@reaperworld.com>
parents:
39979
diff
changeset
|
32 | 'keyvaluepair', |
|
40564
2c5b4dc2e86a
Pull the purple_markup_* api out of util.[ch] to purplemarkup.[ch]. No code was changed just moved it from one file to the other.
Gary Kramlich <grim@reaperworld.com>
parents:
40548
diff
changeset
|
33 | 'markup', |
|
41403
0186ae21071f
Add purple_menu_populate_dynamic_targets to dynamically update GMenu's
Gary Kramlich <grim@reaperworld.com>
parents:
41243
diff
changeset
|
34 | 'menu', |
|
42078
979d202488d0
Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents:
42060
diff
changeset
|
35 | 'message', |
| 42844 | 36 | 'messages', |
|
41433
d563b345a096
Phase 1 of the Notifications API
Gary Kramlich <grim@reaperworld.com>
parents:
41403
diff
changeset
|
37 | 'notification', |
|
42922
46b64a8cbec4
Create Purple.NotificationAddContact
Gary Kramlich <grim@reaperworld.com>
parents:
42918
diff
changeset
|
38 | 'notification_add_contact', |
|
42835
3144fbeba349
Rename AuthorizationRequestNotification to NotificationAuthorizationRequest
Gary Kramlich <grim@reaperworld.com>
parents:
42814
diff
changeset
|
39 | 'notification_authorization_request', |
|
42936
022c7b7102d9
Add Purple.NotificationLink
Gary Kramlich <grim@reaperworld.com>
parents:
42922
diff
changeset
|
40 | 'notification_link', |
|
41433
d563b345a096
Phase 1 of the Notifications API
Gary Kramlich <grim@reaperworld.com>
parents:
41403
diff
changeset
|
41 | 'notification_manager', |
|
41749
c22448f50d5d
Create PurplePerson.
Gary Kramlich <grim@reaperworld.com>
parents:
41739
diff
changeset
|
42 | 'person', |
|
42051
18adb1710a54
Add read-only properties for primitive and message to PurplePresence
Gary Kramlich <grim@reaperworld.com>
parents:
42008
diff
changeset
|
43 | 'presence', |
|
42384
835faf0ddcb6
Implement PurplePresenceManager
Gary Kramlich <grim@reaperworld.com>
parents:
42383
diff
changeset
|
44 | 'presence_manager', |
|
41884
36684da1e60d
Add async function to PurpleProtocol for testing whether or not connections are possible
Gary Kramlich <grim@reaperworld.com>
parents:
41809
diff
changeset
|
45 | 'protocol', |
|
42293
8888e6d1e9a8
Create the PurpleProtocolContacts interface
Gary Kramlich <grim@reaperworld.com>
parents:
42273
diff
changeset
|
46 | 'protocol_contacts', |
|
42319
98931e2d3ca2
Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
42293
diff
changeset
|
47 | 'protocol_conversation', |
|
42375
8e61249e9b10
Implement ProtocolFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
42330
diff
changeset
|
48 | 'protocol_file_transfer', |
|
43051
44174781eb68
Clean up Purple.ProtocolManager and add some basic unit tests
Gary Kramlich <grim@reaperworld.com>
parents:
42964
diff
changeset
|
49 | 'protocol_manager', |
|
42243
4659a7247aa7
Add PurpleProtocolRoster for managing server side rosters
Gary Kramlich <grim@reaperworld.com>
parents:
42207
diff
changeset
|
50 | 'protocol_roster', |
|
41242
0343173db2f6
added basic tests for path based functions
ivanhoe <107501-ivanhoe@users.noreply.gitlab.com>
parents:
41181
diff
changeset
|
51 | 'purplepath', |
|
42148
4c7b2771461a
Add PurpleRequestField.is_filled vfunc, and a filled property
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42114
diff
changeset
|
52 | 'request_field', |
|
42152
2bcdf415a79d
Add PurpleRequest{Group,Page}:valid properties
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42148
diff
changeset
|
53 | 'request_group', |
|
2bcdf415a79d
Add PurpleRequest{Group,Page}:valid properties
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42148
diff
changeset
|
54 | 'request_page', |
|
42207
7c16e3b1cce8
Create PurpleSavedPresence for saving the users presences
Gary Kramlich <grim@reaperworld.com>
parents:
42152
diff
changeset
|
55 | 'saved_presence', |
|
42060
d55b605fdafb
Add purple_strmatches and move purple_person_matches and purple_contact_info_matches to it
Gary Kramlich <grim@reaperworld.com>
parents:
42051
diff
changeset
|
56 | 'str', |
|
41736
d78c0951ea2c
Create the PurpleTags object for handling tags
Gary Kramlich <grim@reaperworld.com>
parents:
41734
diff
changeset
|
57 | 'tags', |
|
38534
28747a3cea35
Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38492
diff
changeset
|
58 | 'util', |
|
41040
4be2eda9548a
Create PurpleWhiteboardManager for managing whiteboards
Gary Kramlich <grim@reaperworld.com>
parents:
41034
diff
changeset
|
59 | 'whiteboard_manager', |
|
4be2eda9548a
Create PurpleWhiteboardManager for managing whiteboards
Gary Kramlich <grim@reaperworld.com>
parents:
41034
diff
changeset
|
60 | 'xmlnode', |
|
38534
28747a3cea35
Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38492
diff
changeset
|
61 | ] |
|
38831
d260f3b61831
The start of a ui for unit testing
Gary Kramlich <grim@reaperworld.com>
parents:
38830
diff
changeset
|
62 | |
|
38832
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
63 | test_ui = static_library( |
|
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
64 | 'test-ui', |
|
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
65 | 'test_ui.c', |
|
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
66 | 'test_ui.h', |
|
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
67 | c_args: [ |
|
41107
1570d8844e9a
Enable structured logging in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41090
diff
changeset
|
68 | '-DTEST_DATA_DIR="@0@/data"'.format(meson.current_source_dir()), |
|
1570d8844e9a
Enable structured logging in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41090
diff
changeset
|
69 | '-DG_LOG_USE_STRUCTURED', |
|
1570d8844e9a
Enable structured logging in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41090
diff
changeset
|
70 | '-DG_LOG_DOMAIN="Purple-TestUI"', |
|
38832
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
71 | ], |
|
39354
db17ba548304
libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents:
39166
diff
changeset
|
72 | dependencies: [libpurple_dep, glib] |
|
38832
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
73 | ) |
|
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
74 | |
|
41493
06dcfb1cc1b2
Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents:
41433
diff
changeset
|
75 | testenv.set('XDG_CONFIG_HOME', meson.current_build_dir() / 'config') |
|
42814
59e6529a1e78
Mutliple cleanups to Purple.Message
Gary Kramlich <grim@reaperworld.com>
parents:
42754
diff
changeset
|
76 | testenv.set('G_ENABLE_DIAGNOSTIC', '1') |
|
41493
06dcfb1cc1b2
Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents:
41433
diff
changeset
|
77 | |
|
38534
28747a3cea35
Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38492
diff
changeset
|
78 | foreach prog : PROGS |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41884
diff
changeset
|
79 | e = executable(f'test_@prog@', f'test_@prog@.c', |
|
38848
22e32372b906
Fix a few typos and cleanup some whitespace
Gary Kramlich <grim@reaperworld.com>
parents:
38832
diff
changeset
|
80 | c_args : [ |
|
42384
835faf0ddcb6
Implement PurplePresenceManager
Gary Kramlich <grim@reaperworld.com>
parents:
42383
diff
changeset
|
81 | '-DTEST_DATA_DIR="@0@/data"'.format(meson.current_source_dir()), |
|
835faf0ddcb6
Implement PurplePresenceManager
Gary Kramlich <grim@reaperworld.com>
parents:
42383
diff
changeset
|
82 | '-DTEST_CACHE_DIR="@0@/cache"'.format(meson.current_build_dir()), |
|
38848
22e32372b906
Fix a few typos and cleanup some whitespace
Gary Kramlich <grim@reaperworld.com>
parents:
38832
diff
changeset
|
83 | ], |
|
39354
db17ba548304
libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents:
39166
diff
changeset
|
84 | dependencies : [libpurple_dep, glib], |
|
38832
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
85 | link_with: test_ui, |
|
7ad7854d8e60
Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents:
38831
diff
changeset
|
86 | ) |
|
41493
06dcfb1cc1b2
Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents:
41433
diff
changeset
|
87 | test(prog, e, |
|
06dcfb1cc1b2
Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents:
41433
diff
changeset
|
88 | env: testenv, |
|
06dcfb1cc1b2
Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents:
41433
diff
changeset
|
89 | ) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
90 | endforeach |
|
41734
a708bd1edc77
Clean up setting handling for the credential manager and make its unit tests don't mess up the others
Gary Kramlich <grim@reaperworld.com>
parents:
41683
diff
changeset
|
91 | |
|
42008
ae3fa963c1b3
Add animation support to PurpleAvatar
Gary Kramlich <grim@reaperworld.com>
parents:
41966
diff
changeset
|
92 | subdir('avatar') |