-
Notifications
You must be signed in to change notification settings - Fork 57
/
.pubnub.yml
1286 lines (1285 loc) · 46 KB
/
.pubnub.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
name: c-core
schema: 1
version: "4.15.0"
scm: github.com/pubnub/c-core
changelog:
- date: 2024-11-25
version: v4.15.0
changes:
- type: feature
text: "Add custom message type support for the following APIs: publish, signal, share file, subscribe and history."
- type: feature
text: "Add `pubnub_set_ipv4_connectivity` and `pubnub_set_ipv6_connectivity` to `pubnub_coreapi` to switch preferred connectivity protocol."
- type: bug
text: "Make sure that in case of connection close (including because of error) proxy context object will be reset."
- date: 2024-10-24
version: v4.14.1
changes:
- type: bug
text: "Fix CMakeLists to build correctly on Windows."
- type: improvement
text: "Prepare CMakeLists to support builds for Arm64 architecture."
- date: 2024-10-15
version: v4.14.0
changes:
- type: feature
text: "Add core Event Engine implementation with the required set of types and methods."
- type: feature
text: "Add Subscribe Event Engine built atop of the core Event Engine implementation."
- type: feature
text: "Add the following entities: channel, channel group, uuid and channel metadata objects."
- type: feature
text: "Add objects to manage subscriptions and provides interface for update listeners."
- type: feature
text: "Add new event listeners, which make it possible to add listeners to a specific entity or group of entities (though subscription and subscription set)."
- type: feature
text: "Added ability to configure automated retry policies for failed requests."
- date: 2024-09-05
version: v4.13.1
changes:
- type: bug
text: "Removed additional null byte character."
- date: 2024-08-09
version: v4.13.0
changes:
- type: feature
text: "Add `delete message` API support to the advanced history module."
- date: 2024-08-05
version: v4.12.3
changes:
- type: bug
text: "Add the missing `ttl` parameter to the `pubnub_publish_options` for extended `publish` configuration."
- date: 2024-08-05
version: v4.12.2
changes:
- type: bug
text: "Fixed custom `bool` type for CMake builds."
- date: 2024-08-05
version: v4.12.1
changes:
- type: bug
text: "Fix query values for boolean flags for history endpoint (`include meta`, `include uuid`, `include message type` and `reverse`)."
- date: 2024-07-29
version: v4.12.0
changes:
- type: feature
text: "Added `filter` and `sort` parameters to be closer to the other SDKs with object API."
- type: feature
text: "Configurable `bool` type."
- type: bug
text: "Missing features needed for grant token API in CMakeLIsts.txt."
- date: 2024-07-15
version: v4.11.2
changes:
- type: bug
text: "Added missing subscribe v2 crypto implementation."
- date: 2024-06-28
version: v4.11.1
changes:
- type: bug
text: "Fixed `cmake` build for not ESP32 builds."
- date: 2024-06-27
version: v4.11.0
changes:
- type: feature
text: "Provided support for ESP32 devices via ESP-IDF framework."
- type: feature
text: "Provided support for MBedTLS library used within esp32 platform."
- type: improvement
text: "Replace `strncpy` with `strcpy` in blocks where it is safer to be used."
- date: 2024-06-14
version: v4.10.0
changes:
- type: feature
text: "Added possibility to use strings in actions API."
- type: improvement
text: "`pubnub_action_type` enum has been deprecated."
- date: 2024-03-26
version: v4.9.1
changes:
- type: bug
text: "Fix too small amount of memory allocated for aes cbc algorithm in some cases."
- type: improvement
text: "Add possibility to include address sanitizer in build via CMake."
- date: 2024-01-08
version: v4.9.0
changes:
- type: feature
text: "Provide CMake support."
- type: feature
text: "Adjust `build.cs` unreal engine file for CMake build."
- date: 2023-12-07
version: v4.8.0
changes:
- type: feature
text: "Add `#if` switches into files that are related to PubNub features to not rely only on makefiles. [Be careful when update. It's not a breaking change at all but might fail build for custom makefiles!]."
- date: 2023-11-23
version: v4.7.1
changes:
- type: bug
text: "Handle unencrypted message while getting messages with crypto."
- date: 2023-11-20
version: v4.7.0
changes:
- type: feature
text: "Provided `PUBNUB_EXTERN` macro to extern C functions."
- date: 2023-11-14
version: v4.6.2
changes:
- type: bug
text: "Fix `pubnub_free()` function on not initialised PubNub that can cause exceptions/undefined behaviours."
- date: 2023-11-08
version: v4.6.1
changes:
- type: bug
text: "Provide missing `publish()` function overload for QT wrapper that allows set publish related options."
- date: 2023-10-30
version: v4.6.0
changes:
- type: feature
text: "Add the `PUBNUB_QT_MOVE_TO_THREAD` flag as default to give users the opportunity to manage threads by themselves."
- type: bug
text: "Move `pubnub_qt` into QT main thread by default to be sure that timers will be run in it."
- date: 2023-10-16
version: v4.5.0
changes:
- type: feature
text: "Update the crypto module structure and add enhanced AES-CBC cryptor."
- type: bug
text: "Improved security of crypto implementation by increasing the cipher key entropy by a factor of two."
- type: bug
text: "Fixed missing return from failed `pbaes256_decrypt_alloc()` function."
- date: 2023-09-28
version: v4.4.0
changes:
- type: feature
text: "Provide module files to integrate SDK with Unreal Enigne."
- date: 2023-07-24
version: v4.3.0
changes:
- type: feature
text: "Add `publisher` field into `pubnub_v2_message`."
- type: bug
text: "Fixed `flags` and `region` values that always equaled `0`."
- date: 2023-05-24
version: v4.2.2
changes:
- type: bug
text: "Conditionally use of using newest openssl API Ipv4 parsing is needed for working with proxy. Include object file with that function for proxy builds."
- type: improvement
text: "Use newest openssl API."
- date: 2023-04-26
version: v4.2.1
changes:
- type: improvement
text: "Conditionally use `sha256` when build is linked with OpenSSL 3+ version."
- date: 2023-02-07
version: v4.2.0
changes:
- type: feature
text: "Updated QT to version `6.*`."
- type: bug
text: "Fixed not building QT module."
- type: bug
text: "Align QT module with current SDK state."
- type: improvement
text: "Removed some states, classes and structs that aren't currently used."
- date: 2023-01-16
version: v4.1.0
changes:
- type: feature
text: "Added pubnub_set_state_ex to support heartbeat."
- type: bug
text: "Removed state param from subscribe request."
- type: bug
text: "Added state param to hearbeat request."
- date: 2022-12-14
version: v4.0.6
changes:
- type: bug
text: "Fixed hanging allocated memory after error in `parse_token` by cleaning the result memory on `cbor` error."
- type: improvement
text: "Implemented more tests for `pubnub_token_parse` function to increase confidence about that function."
- type: improvement
text: "Refactored implementation of some tests' setups."
- date: 2022-12-02
version: v4.0.5
changes:
- type: bug
text: "Fixed compilation error for MSVC in `pubnub_parse_token` function."
- date: 2022-11-25
version: v4.0.4
changes:
- type: bug
text: "Fixed crashing parsing token for not valid values by logging an error and returning `NULL`."
- date: 2022-11-17
version: v4.0.3
changes:
- type: bug
text: "Fixed wrong pointer reallocation in string concatenation."
- type: bug
text: "Fixed allocation counter that was not taking to the account recursed allocations."
- date: 2022-11-15
version: v4.0.2
changes:
- type: bug
text: "Improved accuracy of the base64 encoding size what fixes buffer underflow in encryption module."
- type: bug
text: "Fixed undefined behaviours in `pubnub_encrypt_decrypt_iv_sample.c` by including some additional checks and variable initialisations."
- type: improvement
text: "Made same base for encrypt functions what makes codes easier to understand and maintain."
- date: 2022-11-08
version: v4.0.1
changes:
- type: bug
text: "`ERR_load_BIO_strings()` is deprecated in OpenSSL 3.0. Low-level encoding primitives are also deprecated. `EVP_EncodeBlock()` is available in all currently supported OpenSSL releases."
- date: 2022-11-02
version: v4.0.0
changes:
- type: feature
text: "Add `user_id` configuration option that deprecates `uuid` ones."
- type: feature
text: "BREAKING CHANGES: now `user_id` (old `uuid`) is a required property!."
- date: 2022-10-11
version: v3.5.2
changes:
- type: bug
text: "Fix memory leak in cpp `parse_token` method."
- type: bug
text: "Fix buffer overflow in core `pubnub_parse_token` function for some cases."
- type: bug
text: "Fix buffer overflow in core `pubnub_encrypt` function for randomized initial vector."
- date: 2022-09-22
version: v3.5.1
changes:
- type: bug
text: "Fix wrong parsing uuid in parse_token."
- type: bug
text: "Fix case sensitive header check."
- date: 2022-09-08
version: v3.5.0
changes:
- type: feature
text: "Implemented Fetch History."
- date: 2022-07-05
version: v3.4.3
changes:
- type: bug
text: "Removed extra parenthesis in get_dns_ip function code."
- type: bug
text: "Added uuid query param to history, set/get state, wherenow, channel-group operations."
- date: 2022-04-25
version: v3.4.2
changes:
- type: bug
text: "Handle state for subscribe and resubscribe."
- date: 2022-03-09
version: v3.4.1
changes:
- type: bug
text: "Support system name servers in async DNS client."
- type: bug
text: "Fix multiple memory safety and leak issues."
- type: bug
text: "Fix slash char encoding for pnsdk."
- date: 2022-01-11
version: v3.4.0
changes:
- type: feature
text: "Add token permissions revoke functionality."
- type: bug
text: "Remove body from `signature` calculation for requests with DELETE HTTP method."
- type: improvement
text: "Update `.pubnub.yml` file with access token revoke and secret key all access."
- date: 2022-01-10
version: v3.3.2
changes:
- type: bug
text: "Filter-expr query param typo."
- date: 2022-01-05
version: v3.3.1
changes:
- type: bug
text: "Encode = (equal) sign for filter expression."
- version: v3.3.0
date: 2021-10-11
changes:
- type: feature
text: "Implemented PAMv3 support."
- type: bug
text: "Handle subscribe error for empty channel-group."
- version: v3.2.0
date: 2021-09-15
changes:
- type: bug
text: "Error codes for missing subscribe timetoken."
- version: v3.1.0
date: 2021-06-14
changes:
- type: feature
text: "Added PAMv3 Grant Token support."
- version: v3.0.0
date: 2021-05-24
changes:
- type: feature
text: "BREAKING CHANGE - Added PUBNUB_RAND_INIT_VECTOR to support dynamic IV, default to true."
- version: v2.14.0
date: 2021-05-10
changes:
- type: bug
text: "Handling Access Denied server error in Pubnub Access Manager requests."
- version: v2.13.0
date: 2021-04-20
changes:
- type: feature
text: "Implemented Pubnub Access Manager Support."
- type: feature
text: "Implemented Objects V2. Removed Objects V1."
- version: v2.12.7
date: 2021-01-20
changes:
- type: feature
text: "Added support for Universal Windows(UWP)."
- version: v2.12.6
date: 2020-10-03
changes:
- type: bug
text: "Fix DNS servers rotation during transaction origin DNS resolution timeout."
- version: v2.12.5
date: 2020-04-08
changes:
- type: improvement
text: "Dynamically allocate memory for `uuid` in `pubnub_set_uuid` function."
- version: v2.12.4
date: 2020-01-31
changes:
- type: bug
text: Properly handle DNS retries and stale HTTP Kept-Alive connections
- version: v2.12.3
date: 2020-01-16
changes:
- type: bug
text: Fix assertion failure while retrying timed out DNS queries with multiple contexts
- version: v2.12.2
date: 2019-12-05
changes:
- type: improvement
text: Add support for automatic sending of heartbeat messages with sync interface (POSIX and Windows)
- version: v2.12.1
date: 2019-11-22
changes:
- type: improvement
text: Add support for automatic sending of heartbeat messages on Windows, callback.
- version: v2.12.0
date: 2019-11-15
changes:
- type: improvement
text: Support automatic sending of heartbeat messages (only on POSIX, callback, for now).
- version: v2.11.1
date: 2019-10-25
changes:
- type: bug
text: Fix Qt
- version: v2.11.0
date: 2019-10-20
changes:
- type: improvement
text: Introduce Actions API
- type: bug
text: Fix stopwatch not working after 25 days
- type: improvement
text: Add 'include_meta' parameter to pubnub_history_ex()
- version: v2.10.2
date: 2019-10-18
changes:
- type: bug
text: Restore get/set connection timeout in C++ wrapper
- version: v2.10.1
date: 2019-10-02
changes:
- type: improvement
text: Retry if DNS server does not respond. Number of retries is a compile-time parameter.
- type: bug
text: In C++, fix transaction finishing before user starts to wait for it to finish.
- version: v2.10.0
date: 2019-09-23
changes:
- type: improvement
text: Introduce Objects API
- type: bug
text: Fix high history (extended/full) handling of 'reverse' and other boolean parameters
- version: v2.9.4
date: 2019-09-10
changes:
- type: improvement
text: Introduce separate connection timer, to control/limit the duration of DNS resolving and connection establishment, which should be much shorter than full transaction timer, which has to be >5 min for subscribe
- type: bug
text: Fix high CPU load in callback interface when no context, thus socket, is executing a transaction
- version: v2.9.3
date: 2019-09-03
changes:
- type: improvement
text: Detect TCP/IP connect timeout in callback mode w/sockets - does not seem to work on Windows
- type: improvement
text: Add set_proxy_none() to pubnub::context
- version: v2.9.2
date: 2019-08-28
changes:
- type: bug
text: Proxy admin functions (set, get) were not protected by mutex/monitor, so caused a race condition
- type: bug
text: Setting new proxy might have been ignored until the resolved DNS addresses of the previous proxy expire.
- type: bug
text: If all resolved addresses on file expire, we would report transaction failure instead of just asking for new ones.
- version: v2.9.1
date: 2019-08-25
changes:
- type: improvement
text: Improvements in sockets and DNS error reporting
- version: v2.9.0
date: 2019-08-09
changes:
- type: improvement
text: Introduce Signals support
- type: improvement
text: Support subscribe V2 in C++ & Qt
- type: improvement
text: Add pubnub_stop() for graceful shutdown when using callback interface
- version: v2.8.4
date: 2019-06-12
changes:
- type: improvement
text: Introduce minimal transaction timer duration
- type: improvement
text: Use QTime for transaction timer duration
- version: v2.8.3
date: 2019-05-31
changes:
- type: improvement
text: Use TTL from DNS response (cache resolved addresses)
- type: improvement
text: Better identification of the platform we run on
- type: improvement
text: Detect authenticating proxy that works incorrectly
- version: v2.8.2
date: 2019-04-29
changes:
- type: improvement
text: Will try other address from (async) DNS response if first one fails
- type: improvement
text: Will try secondary (async) DNS server if primary doesn't work
- version: v2.8.1
date: 2019-04-29
changes:
- type: improvement
text: Update pubnub_allooc_std.c to pubnub_cancel() changes
- version: v2.8.0
date: 2019-03-18
changes:
- type: improvement
text: Support Message Counts API
- version: v2.7.0
date: 2019-02-19
changes:
- type: improvement
text: Support IPv6 for DNS resolution (mostly for callback interface)
- version: v2.6.4
date: 2019-01-17
changes:
- type: bug
text: URL encode channel name(s)
- version: v2.6.3
date: 2019-01-08
changes:
- type: improvement
text: Update samples to changes in pubnub_cancel() and other interface changes
- type: improvement
text: Update samples to use time() instead of clock() as clock() can measure CPU-only time instead of real time
- type: improvement
text: Update Qt functional tests and make them reliable
- type: improvement
text: UUID is now part of the Pubnub context (instead of a pointer to it). This makes handling its lifetime easier, yet does not incur much memory increase
- type: bug
text: C++ wrapper and Qt did not have proper multithreading support as they did not protect _their_ data. Now that is fixed.
- version: v2.6.2
date: 2018-12-20
changes:
- type: bug
text: Fix memory leak regarding OpenSSL
- version: v2.6.1
date: 2018-12-02
changes:
- type: improvement
text: Publish can now be GZIPed (if done via POST)
- type: bug
text: Publish via POST encrypted could publish garbage and fail
- version: v2.6.0
date: 2018-11-20
changes:
- type: improvement
text: Publish can now be done via POST
- type: bug
text: Several smaller DNS en/de/coding issues fixed
- version: v2.5.8
date: 2018-11-08
changes:
- type: improvement
text: pubnub_await() in the sync interface now reports PNR_TIMEOUT on, well, (transaction) timeout
- version: v2.5.7
date: 2018-11-04
changes:
- type: bug
text: DNS en/de/coding could fail on some toolchains because of alignment issues.
- version: v2.5.6
date: 2018-11-02
changes:
- type: bug
text: TLS connection timeout was prone to errors due to time synchronisation and such.
- version: v2.5.5
date: 2018-11-01
changes:
- type: bug
text: Fix wrong detection of PNR_TIMEOUT, by reset of TLS connect timer when connection is established.
- version: v2.5.4
date: 2018-10-18
changes:
- type: bug
text: Fix DNS decoding
- version: v2.5.3
date: 2018-10-16
changes:
- type: feature
text: Add support for pubnub_subscribe_v2() w/filter expressions
- type: feature
text: pubnub_cancel() returns is it done, or it just started the cancellation
- type: feature
text: Code that is only for TLS/SSL ifdef-ed out when not building w/TLS/SSL
- type: feature
text: Functional tests for C++ updated and now run on each commit
- version: v2.5.2
date: 2018-09-10
changes:
- type: bug
text: Improved handling of lost connection while in HTTP Keep-Alive
- type: feature
text: pubnub_free() now implies pubnub_cancel()
- type: feature
text: pubnub_cancel() will now call pbnc_fsm() in the sync interface. Combined with previous, this makes it possible to call pubnub_free() in sync interface and have it succeed even if transaction is ongoing.
- version: v2.5.1
date: 2018-08-30
changes:
- type: feature
text: Removed (unused) option to ignore TLS/SSL errors
- version: v2.5.0
date: 2018-08-28
changes:
- type: feature
text: Support HTTPS CONNECT proxy
- type: feature
text: Can set proxy via IP address and `localhost`
- type: feature
text: Adhere to Connection: close from server
- type: bug
text: Possible pointer out of bounds fixed in JSON parser
- type: feature
text: Functional tests improved, can run concurrently
- type: bug
text: MacOS build fixed
- version: v2.4.3
date: 2018-07-25
changes:
- type: feature
text: Support OpenSSL 1.1.x with callback interface
- type: feature
text: Add support for filter expressions on subscribe
- type: feature
text: Enable receiving GZIP-ed reply
- version: v2.4.2
date: 2018-07-12
changes:
- type: feature
text: Enable setting HTTP Keep-Alive use on/off for C++ and Qt
- version: v2.4.1
date: 2018-07-06
changes:
- type: feature
text: Enable reading system DNS on Windows
- type: bug
text: Small fixes in system DNS reading/parsing
- version: v2.4.0
date: 2018-06-14
changes:
- type: feature
text: Callback interface uses (our own) async DNS
- type: feature
text: Enable sending meta data when publishing
- type: feature
text: Enable setting `norep` (do not replicate) when publishing (with `store=false`, publish becomes "fire")
- type: bug
text: Small fixes for async DNS
- type: feature
text: On MacOS, use SO_NOSIGPIPE to avoid SIGPIPE on the socket
- type: bug
text: Bad handling of new transaction started in the callback and HTTP keep-alive was active
- type: bug
text: Bad handling of error (connection lost) when starting a new transaction on a HTTP kept-alive connection
- version: v2.3.3
date: 2018-04-11
changes:
- type: feature
text: On Linux, use MSG_NOSIGNAL to avoid SIGPIPE on send()
- type: feature
text: Add API to read proxy configuration
- type: bug
text: Avoid (currently harmless) inconsistent locking order
- type: bug
text: Fix HTTP GET & CONNECT proxy w/HTTP Keep-Alive
- type: feature
text: Send up-to-date version info in User-Agent HTTP header
- version: v2.3.2
date: 2018-03-10
changes:
- type: bug
text: Unify default blocking I/O setting to block in sync and non-block in callback interface
- version: v2.3.1
date: 2018-03-08
changes:
- type: bug
text: Read from OpenSSL in a loop, to handle more than one record received at a time
- type: bug
text: Fix minor race condition on timer expiry
- version: v2.3.0
date: 2018-03-05
changes:
- type: feature
text: Use HTTP Keep-alive, where possible
- version: v2.2.14
date: 2018-02-06
changes:
- type: bug
text: Fix removing the first context from the timer list
- version: v2.2.13
date: 2018-02-06
changes:
- type: feature
text: Support OpenSSL 1.1.0+ (BIO_(s|g)et_conn_ip -> BIO_(s|g)et_conn_address)
- type: bug
text: Handle chunks larger than http_buff
- type: bug
text: Fix receiving data longer than http_buff at a time
- version: v2.2.12
date: 2017-12-30
changes:
- type: bug
text: Cleanups, fix build issue and warnings on Windows
- version: v2.2.11
date: 2017-10-30
changes:
- type: bug
text: Fix resource leaks in C++ pubnub::futres on Windows
- version: v2.2.10
date: 2017-10-05
changes:
- type: bug
text: Fix build issues on Mac
- version: v2.2.9
date: 2017-10-01
changes:
- type: bug
text: Fix high CPU utilization when network out on Mac
- version: v2.2.8
date: 2017-09-25
changes:
- type: bug
text: Fix off-by-one error
- version: v2.2.7
date: 2017-09-14
changes:
- type: bug
text: Fix handling of recv() errrno on MacOS
- version: v2.2.6
date: 2017-09-10
changes:
- type: feature
text: Support OpenSSL 1.1.0+ (removed BIO_set_conn_port_int)
- type: bug
text: Some logging code was not using proper types
- version: v2.2.5
date: 2017-09-01
changes:
- type: bug
text: Fix potential issue in interpreting UTF-8 char values
- version: v2.2.4
date: 2017-08-30
changes:
- type: bug
text: Fix off-by-one error
- version: v2.2.3
date: 2017-03-09
changes:
- type: bug
text: Fix handling of segmented messages
- type: feature
text: Improve exising and add new logging
- version: v2.2.2
date: 2016-10-12
changes:
- type: feature
text: Improve parsing of bad publish/subscribe key error
- type: feature
text: Add option to turn of SSL/TLS session reuse
- type: feature
text: PNR_TIMEOUT no longer resets the time token
- type: bug
text: Fixes and improvements of the console sample application
- version: v2.2.1
date: 2016-04-02
changes:
- type: bug
text: Fix C++ pubnub::futres destructor hanging up
- version: v2.2.0
date: 2016-02-22
changes:
- type: feature
text: First "core feature complete" release
features:
access:
- ACCESS-OBJECTS-V2-MANAGEMENT
- ACCESS-SECRET-KEY-ALL-ACCESS
- ACCESS-GRANT-TOKEN
- ACCESS-PARSE-TOKEN
- ACCESS-SET-TOKEN
- ACCESS-REVOKE-TOKEN
channel-groups:
- CHANNEL-GROUPS-ADD-CHANNELS
- CHANNEL-GROUPS-REMOVE-CHANNELS
- CHANNEL-GROUPS-REMOVE-GROUPS
- CHANNEL-GROUPS-LIST-CHANNELS-IN-GROUP
presence:
- PRESENCE-HERE-NOW
- PRESENCE-WHERE-NOW
- PRESENCE-SET-STATE
- PRESENCE-GET-STATE
- PRESENCE-HEARTBEAT
publish:
- PUBLISH-STORE-FLAG
- PUBLISH-RAW-JSON
- PUBLISH-WITH-METADATA
- PUBLISH-GET
- PUBLISH-POST
- PUBLISH-SYNC
- PUBLISH-ASYNC
- PUBLISH-FIRE
- PUBLISH-REPLICATION-FLAG
storage:
- STORAGE-INCLUDE-TIMETOKEN
- STORAGE-COUNT
- STORAGE-REVERSE
- STORAGE-START-END
- STORAGE-MESSAGE-COUNT
- STORAGE-HISTORY-WITH-META
- STORAGE-FETCH-WITH-META
- STORAGE-FETCH-WITH-MESSAGE-ACTIONS
subscribe:
- SUBSCRIBE-CHANNELS
- SUBSCRIBE-CHANNEL-GROUPS
- SUBSCRIBE-PRESENCE-CHANNELS
- SUBSCRIBE-PRESENCE-CHANNELS-GROUPS
- SUBSCRIBE-WILDCARD
- SUBSCRIBE-FILTER-EXPRESSION
- SUBSCRIBE-SIGNAL-LISTENER
- SUBSCRIBE-USER-LISTENER
- SUBSCRIBE-SPACE-LISTENER
- SUBSCRIBE-MEMBERSHIP-LISTENER
- SUBSCRIBE-MESSAGE-ACTIONS-LISTENER
signal:
- SIGNAL-SEND
objects:
- OBJECTS-GET-USER
- OBJECTS-GET-USERS
- OBJECTS-CREATE-USER
- OBJECTS-UPDATE-USER
- OBJECTS-DELETE-USER
- OBJECTS-GET-SPACE
- OBJECTS-GET-SPACES
- OBJECTS-CREATE-SPACE
- OBJECTS-UPDATE-SPACE
- OBJECTS-DELETE-SPACE
- OBJECTS-GET-MEMBERSHIPS
- OBJECTS-JOIN-SPACES
- OBJECTS-UPDATE-MEMBERSHIPS
- OBJECTS-LEAVE-SPACES
- OBJECTS-GET-MEMBERS
- OBJECTS-ADD-MEMBERS
- OBJECTS-UPDATE-MEMBERS
- OBJECTS-REMOVE-MEMBERS
message-actions:
- MESSAGE-ACTIONS-GET
- MESSAGE-ACTIONS-ADD
- MESSAGE-ACTIONS-REMOVE
time:
- TIME-TIME
supported-platforms:
-
version: PubNub POSIX C SDK
platforms:
- Most modern Unix-derived OSes support enough of POSIX to work. For some, like MacOS (OSX) we have special support to handle them not being fully POSIX compliant. Basically, if the OS is released in last 3/4 years, it will most probably work.
- Some older OSes, like Ubuntu 12.04 or older, may need a few tweaks to work.
- For TLS/SSL support, we use OpenSSL, and a recent version, 0.9.8 or higher should work. If the user doe snot wish to use TLS/SSL, she does not need OpenSSL at all.
-
version: PubNub POSIX C++ SDK
platforms:
- Most modern Unix-derived OSes support enough of POSIX to work. For some, like MacOS (OSX) we have special support to handle them not being fully POSIX compliant. Basically, if the OS is released in last 3/4 years, it will most probably work.
- Some older OSes, like Ubuntu 12.04 or older, may need a few tweaks to work.
- For TLS/SSL support, we use OpenSSL, and a recent version, 0.9.8 or higher should work. If the user does not wish to use TLS/SSL, she does not need OpenSSL at all.
- Some features require C++11 or newer compliant compiler, if you do not have such a compiler you will not be able to use those features (but will be able to use the rest of the POSIX C++ SDK)
-
version: PubNub Windows C SDK
platforms:
- Windows 7 or newer with Visual Studio 2008 or newer should work. Newer versions of Clang for Windows and GCC (MINGW or Cygwin) should also work.
- For TLS/SSL support, we use OpenSSL, and a recent version, 0.9.8 or higher should work. If the user doesn't wish to use TLS/SSL, she does not need OpenSSL at all.
-
version: PubNub Windows C++ SDK
platforms:
- Windows 7 or newer with Visual Studio 2008 or newer should work. Newer versions of Clang for Windows and GCC (MINGW or Cygwin) should also work.
- For TLS/SSL support, we use OpenSSL, and a recent version, 0.9.8 or higher should work. If the user doesn't wish to use TLS/SSL, she does not need OpenSSL at all.
- Some features require C++11 or newer compliant compiler, if you do not have such a compiler you will not be able to use those features (but will be able to use the rest of the Windows C++ SDK)
-
version: PubNub FreeRTOS SDK
platforms:
- FreeRTOS+ 150825 or newer is supported.
-
version: PubNub Qt SDK
platforms:
- Qt5 is fully supported.
- Qt4 is not supported, but 'C core' is known to build on Qt4 and some features work.
- Older versions are not supported.
-
version: PubNub mBed SDK
platforms:
- mBed 2 is supported.
- Newer versions should work, but are not supported out of the box.
-
version: PubNub ESP32 SDK
platforms:
- ESP-IDF 5.2.1 is supported
- Newer versions should work, but are not supported out of the box.
sdks:
-
full-name: PubNub POSIX C SDK
short-name: POSIX C
artifacts:
-
artifact-type: api-client
language: C
tier: 1
tags:
- Server
- Mobile
source-repository: https://github.com/pubnub/c-core
documentation: https://www.pubnub.com/docs/sdks/c-core/posix-c
distributions:
-
distribution-type: source code
distribution-repository: GitHub release
package-name: C-Core
location: https://github.com/pubnub/c-core/releases/tag/v4.15.0
requires:
-
name: "miniz"
min-version: "2.0.8"
license: "MIT"
license-url: "https://github.com/richgel999/miniz"
location: "Shipped with SDK"
is-required: "Required"
-
name: "MD5"
min-version: "1.0.0"
license: "heavily cut-down BSD license"
license-url: "https://openwall.info/wiki/people/solar/software/public-domain-source-code/md5"
location: "Shipped with SDK"
is-required: "Required"
-
name: "OpenSSL"
min-version: "0.9.8"
max-version: "1.1.1"
license: "Dual OpenSSL and SSLeay license"
license-url: "https://www.openssl.org/source/license.html"
location: "Installation required"
is-required: "Optional"
-
name: "OpenSSL"
min-version: "3.0.0"
license: "Apache license"
license-url: "https://www.openssl.org/source/license.html"
location: "Installation required"
is-required: "Optional"
supported-platforms:
supported-operating-systems:
Linux:
target-architecture:
- i386
- amd64
minimum-os-version:
- Ubuntu 12.04
maximum-os-version:
- Ubuntu 20.04 LTS
macOS:
target-architecture:
- x86-64
minimum-os-version:
- Mac OS X 10.8
maximum-os-version:
- macOS 11.3.1
-
full-name: PubNub POSIX C++ SDK
short-name: POSIX C++
artifacts:
-
artifact-type: api-client
language: C/C++
tier: 2
tags:
- Server
- Mobile
source-repository: https://github.com/pubnub/c-core
documentation: https://www.pubnub.com/docs/sdks/c-core/posix-cpp
distributions:
-
distribution-type: source code
distribution-repository: GitHub release
package-name: C-Core
location: https://github.com/pubnub/c-core/releases/tag/v4.15.0
requires:
-
name: "miniz"
min-version: "2.0.8"
license: "MIT"
license-url: "https://github.com/richgel999/miniz"
location: "Shipped with SDK"
is-required: "Required"
-
name: "MD5"
min-version: "1.0.0"
license: "heavily cut-down BSD license"
license-url: "https://openwall.info/wiki/people/solar/software/public-domain-source-code/md5"
location: "Shipped with SDK"
is-required: "Required"
-
name: "OpenSSL"
min-version: "0.9.8"
max-version: "1.1.1"
license: "Dual OpenSSL and SSLeay license"
license-url: "https://www.openssl.org/source/license.html"
location: "Installation required"
is-required: "Optional"
-
name: "OpenSSL"
min-version: "3.0.0"
license: "Apache license"
license-url: "https://www.openssl.org/source/license.html"
location: "Installation required"
is-required: "Optional"
supported-platforms:
supported-operating-systems:
Linux:
target-architecture:
- i386
- amd64
minimum-os-version:
- Ubuntu 12.04
maximum-os-version:
- Ubuntu 20.04 LTS
macOS:
target-architecture:
- x86-64
minimum-os-version:
- Mac OS X 10.8
maximum-os-version:
- macOS 11.3.1