Skip to content

Commit 254e8d6

Browse files
committedAug 5, 2016
Bumping version to 0.4.
1 parent ecfb488 commit 254e8d6

File tree

3 files changed

+65
-32
lines changed

3 files changed

+65
-32
lines changed
 

‎NEWS.markdown

+33
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,39 @@
11

22
# libmapper NEWS
33

4+
Changes from 0.3 to 0.4
5+
-----------------------
6+
7+
Released August 3, 2016.
8+
9+
This is still a development release, and includes many API changes,
10+
improvements, and new features since 0.3.
11+
12+
They are summarized very briefly here:
13+
14+
* _Monitors._ The monitor functionality of libmapper has been rewritten to use
15+
leased subscriptions instead of queries. This change simplifies both the
16+
monitor API and the underlying codebase, in addition to increasing the
17+
granularity of updates, decreasing wasted bandwidth, and fixing a problem
18+
with notifications of signal addition or removal.
19+
* _Vector properties._ Properties of objects (devices, signals, links, and
20+
connections) can now have vector values. This includes signal minima and
21+
maxima, so "linear" mode connections can now be calibrated per-element.
22+
* _Expressions._ Vector elements can now be explicitly referenced in the
23+
expression string using the notation `x[n]`, and element ranges can be
24+
referenced using the notation `x[a:b]`. The destination signal (`y`) can
25+
also be specified using vector indexing, allowing connections to perform
26+
partial vector updates – the underlying protocol has also been modified to
27+
use null-padding instead of zero-padding to support this capability. Several
28+
extra functions are now recognized by the parser, and up to 8 user-defined
29+
variables can be (implicitly) declared and used in expressions. See the
30+
expression syntax documentation for more information.
31+
* _Java bindings._ The Java bindings have been improved and extended to
32+
support libmapper's monitor functionality.
33+
34+
As usual, this release is subject to API changes and breakage, however libmapper
35+
is starting to approach a more mature and stable state.
36+
437
Changes from 0.2 to 0.3
538
-----------------------
639

‎configure.ac

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ AC_INIT([libmapper],[m4_esyscmd_s([git describe --always])],[dot_mapper@googlegr
1515
#
1616
# If any interfaces have been removed since the last public release, then set
1717
# age to 0.
18-
SO_VERSION=2:0:0
18+
SO_VERSION=4:0:0
1919

2020
AC_CONFIG_SRCDIR([src/device.c])
2121
AC_CONFIG_HEADERS([src/config.h])

‎test/testcpp.cpp

+31-31
Original file line numberDiff line numberDiff line change
@@ -104,37 +104,37 @@ int main(int argc, char ** argv)
104104
dev.property("name").print();
105105
std::cout << std::endl;
106106

107-
// test std::array<std::string>
108-
std::array<std::string, 3> array1 = {{"one", "two", "three"}};
109-
dev.property("foo").set(array1);
110-
dev.property("foo").print();
111-
std::cout << std::endl;
112-
113-
// test std::array<const char*>
114-
std::array<const char*, 3> array2 = {{"four", "five", "six"}};
115-
dev.property("foo").set(array2);
116-
dev.property("foo").print();
117-
std::cout << std::endl;
118-
119-
// test plain array of const char*
120-
const char* array3[3] = {"seven", "eight", "nine"};
121-
dev.property("foo").set(array3, 3);
122-
dev.property("foo").print();
123-
std::cout << std::endl;
124-
125-
// test std::vector<const char*>
126-
const char *array4[3] = {"ten", "eleven", "twelve"};
127-
std::vector<const char*> vector1(array4, std::end(array4));
128-
dev.property("foo").set(vector1);
129-
dev.property("foo").print();
130-
std::cout << std::endl;
131-
132-
// test std::vector<std::string>
133-
const char *array5[3] = {"thirteen", "14", "15"};
134-
std::vector<std::string> vector2(array5, std::end(array5));
135-
dev.property("foo").set(vector2);
136-
dev.property("foo").print();
137-
std::cout << std::endl;
107+
// // test std::array<std::string>
108+
// std::array<std::string, 3> array1 = {{"one", "two", "three"}};
109+
// dev.property("foo").set(array1);
110+
// dev.property("foo").print();
111+
// std::cout << std::endl;
112+
//
113+
// // test std::array<const char*>
114+
// std::array<const char*, 3> array2 = {{"four", "five", "six"}};
115+
// dev.property("foo").set(array2);
116+
// dev.property("foo").print();
117+
// std::cout << std::endl;
118+
//
119+
// // test plain array of const char*
120+
// const char* array3[3] = {"seven", "eight", "nine"};
121+
// dev.property("foo").set(array3, 3);
122+
// dev.property("foo").print();
123+
// std::cout << std::endl;
124+
//
125+
// // test std::vector<const char*>
126+
// const char *array4[3] = {"ten", "eleven", "twelve"};
127+
// std::vector<const char*> vector1(array4, std::end(array4));
128+
// dev.property("foo").set(vector1);
129+
// dev.property("foo").print();
130+
// std::cout << std::endl;
131+
//
132+
// // test std::vector<std::string>
133+
// const char *array5[3] = {"thirteen", "14", "15"};
134+
// std::vector<std::string> vector2(array5, std::end(array5));
135+
// dev.property("foo").set(vector2);
136+
// dev.property("foo").print();
137+
// std::cout << std::endl;
138138

139139
mapper::Property p("temp", "tempstring");
140140
dev.properties().set(p);

0 commit comments

Comments
 (0)
Please sign in to comment.