Erlang/OTP 18.2

This release of Erlang/OTP can be built from source or installed using pre-built packages for your OS or third-party tools (such as kerl or asdf).

docker run -it erlang:18.2

Highlights #

OTP-12392
Application(s):
ssl

Add upper limit for session cache, configurable on ssl application level.

If upper limit is reached, invalidate the current cache entries, e.i the session lifetime is the max time a session will be keept, but it may be invalidated earlier if the max limit for the table is reached. This will keep the ssl manager process well behaved, not exhusting memeory. Invalidating the entries will incrementally empty the cache to make room for fresh sessions entries.

asn1-4.0.1 #

The asn1-4.0.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13149
Application(s):
asn1

Trying to encode an empty named BIT STRING in BER would fail with a function_clause exception. (Thanks to Svilen Ivanov for reporting this bug.)

Full runtime dependencies of asn1-4.0.1: erts-7.0, kernel-3.0, stdlib-2.0

common_test-1.11.1 #

The common_test-1.11.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13007
Application(s):
common_test

When data from the netconf server was split into many ssh packages, the netconf client performed really bad. This is now improved.

OTP-13008
Application(s):
common_test

In ct_netconfc, if a timer expired 'at the same time' as the server sent the rpc-reply, the timeout message might already be in the client's message queue when the client removed the timer ref from its 'pending' list. This caused a crash in the client since the timer ref could no longer be found when handling the timeout message. This problem is now fixed by always flushing the timeout message from the message queue when canceling a timer.

OTP-13035
Application(s):
common_test

The error logger handler ct_conn_log_h did not respect the 'silent' option, and tried to print to an undefined file descriptor. This has been corrected.

OTP-13173
Application(s):
common_test
Related Id(s):
seq12978

If the user would let the test run proceed after test suite compilation failure, Common Test did not set the exit status to indicate failure as expected. This has been corrected. Also, the 'abort_if_missing_suites' option now makes Common Test abort the test run without asking the user if compilation fails, even if access to stdin/stdout exists.

OTP-13181
Application(s):
common_test, test_server

With the Common Test 'create_priv_dir' start option set to 'auto_per_tc', the name of the priv directory for a configuration function could clash with the name of the priv directory for a test case, which would cause Test Server failure. This error has been corrected.

Full runtime dependencies of common_test-1.11.1: compiler-6.0, crypto-3.6, debugger-4.1, erts-7.0, inets-6.0, kernel-4.0, observer-2.1, runtime_tools-1.8.16, sasl-2.4.2, snmp-5.1.2, ssh-4.0, stdlib-2.5, test_server-3.9, tools-2.8, xmerl-1.3.8

compiler-6.0.2 #

The compiler-6.0.2 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13091
Application(s):
compiler

Fix cerl_trees:label/2 bug with map K/V swap

OTP-13113
Application(s):
compiler

Warnings produced when the 'bin_opt_info' option was given could sometimes lack filenames and line numbers. (Thanks to José Valim for reporting this bug.)

Full runtime dependencies of compiler-6.0.2: crypto-3.6, erts-7.0, hipe-3.12, kernel-4.0, stdlib-2.5

crypto-3.6.2 #

The crypto-3.6.2 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13017
Application(s):
crypto, erts, eunit, snmp

Small documentation fixes

Full runtime dependencies of crypto-3.6.2: erts-6.0, kernel-3.0, stdlib-2.0

dialyzer-2.8.2 #

Note! The dialyzer-2.8.2 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependency has to be satisfied: -- hipe-3.13 (first satisfied in OTP 18.1)

OTP-13068
Application(s):
dialyzer, hipe

Reintroduce the erlang:make_fun/3 BIF in erl_bif_types.

Full runtime dependencies of dialyzer-2.8.2: compiler-5.0, erts-7.0, hipe-3.13, kernel-3.0, stdlib-2.5, syntax_tools-1.6.14, wx-1.2

diameter-1.11.1 #

The diameter-1.11.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13137
Application(s):
diameter

Fix request table leaks

The End-to-End and Hop-by-Hop identifiers of outgoing Diameter requests are stored in a table in order for the caller to be located when the corresponding answer message is received. Entries were orphaned if the handler was terminated by an exit signal as a consequence of actions taken by callback functions, or if callbacks modified identifiers in retransmission cases.

Full runtime dependencies of diameter-1.11.1: erts-6.0, kernel-3.0, ssl-5.3.4, stdlib-2.0

erl_docgen-0.4.1 #

The erl_docgen-0.4.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13026
Application(s):
erl_docgen, erts

Updated the xmllint target to just check the xml files with real documentation content.
Corrected some errors and added some missing target in the DTD's.

Full runtime dependencies of erl_docgen-0.4.1: edoc-0.7.13, erts-6.0, stdlib-2.5, xmerl-1.3.7

erl_interface-3.8.1 #

The erl_interface-3.8.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13188
Application(s):
erl_interface

Fix the conditional selection of gethostbyname_r and gethostbyaddr_r.

erts-7.2 #

The erts-7.2 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13017
Application(s):
crypto, erts, eunit, snmp

Small documentation fixes

OTP-13076
Application(s):
erts
Related Id(s):
seq12959

Fix memory corruption bug caused by disabling distribution and then re-enable distribution with a node name that has previously been used by a remote node.

OTP-13079
Application(s):
erts

Renamed variables with name bool as Visual Studio 2015 now treats this is a keyword.

OTP-13102
Application(s):
erts

erl_prim_loader has not supported custom loaders for several releases. In the documentation for erl_prim_loader, all references to custom loaders have now been removed.

OTP-13105
Application(s):
erts

Fixed compilation of erts together with libc versions that do not define __uint32_t.

OTP-13107
Application(s):
erts

erl -make now returns non-zero exit codes on failure

OTP-13115
Application(s):
erts

Fix crash on init:restart in embedded mode caused by on_load handler process not being relaunched leading to load failure for modules such as crypto and asn1rt_nif that need it to be present for correct NIF loading.

OTP-13125
Application(s):
erts

Fix maps decode in erlang:binary_to_term/1

Decoding a term with a large (HAMT) map in an small (FLAT) map could cause a critical error if the external format was not produced by beam.

OTP-13146
Application(s):
erts

Fix very rare bug in GC when big maps with a lot of hash collisions from a remote node are waiting in inner message queue.

OTP-13150
Application(s):
erts

Fixed a bug that could cause a crash dump to become almost empty.

OTP-13026
Application(s):
erl_docgen, erts

Updated the xmllint target to just check the xml files with real documentation content.
Corrected some errors and added some missing target in the DTD's.

OTP-13147
Application(s):
erts

Add function enif_getenv to read OS environment variables in a portable way from NIFs.

Full runtime dependencies of erts-7.2: kernel-4.0, sasl-2.4, stdlib-2.5

eunit-2.2.12 #

The eunit-2.2.12 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13017
Application(s):
crypto, erts, eunit, snmp

Small documentation fixes

Full runtime dependencies of eunit-2.2.12: erts-6.0, kernel-3.0, stdlib-2.5

hipe-3.14 #

Note! The hipe-3.14 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependency has to be satisfied: -- erts-7.1 (first satisfied in OTP 18.1)

OTP-13048
Application(s):
hipe

Fix hipe bug causing segfaults when native code constructs binaries starting with a zero-length integer field.

OTP-13068
Application(s):
dialyzer, hipe

Reintroduce the erlang:make_fun/3 BIF in erl_bif_types.

OTP-13092
Application(s):
hipe

In certain cases of matching with very big binaries, the HiPE compiler generated code that would fail the match, even in cases that the matching was successful. The problem was more quite noticeable on 32-bit platforms.

OTP-13159
Application(s):
hipe

mikpe/hipe_x86_signal-musl-support

Full runtime dependencies of hipe-3.14: compiler-5.0, erts-7.1, kernel-3.0, stdlib-2.5, syntax_tools-1.6.14

inets-6.1 #

The inets-6.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13069
Application(s):
inets

Replace obs-folds with spaces instead of failing

OTP-13071
Application(s):
inets

Add validation fun for URI scheme to http_uri API

OTP-13093
Application(s):
inets

Handle stream bodies as documented.

OTP-13110
Application(s):
inets

Correct error handling of mod_esi generated chunks. Send warning headers in chunk trailers instead of generating an unexpected additional 500 request response, when problems, such as a timeout occurs.

OTP-13117
Application(s):
inets

HTTP client terminates gracefully when an invalid chunked length header is encountered.

OTP-12985
Application(s):
inets

Add default for SNI (Server Name Indication) when running https using the inets HTTP-client.

OTP-13116
Application(s):
inets

Be forgiving to chunked sizes that have trailing whitespaces as prior implementation was. Also some legacy embedded devices does actually have trailing whitespaces even though this in not according to the spec.

Full runtime dependencies of inets-6.1: erts-6.0, kernel-3.0, mnesia-4.12, runtime_tools-1.8.14, ssl-5.3.4, stdlib-2.0

jinterface-1.6.1 #

The jinterface-1.6.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13106
Application(s):
jinterface

Add missing Term tag matching switch statement that was missing an external fun tag.

OTP-13165
Application(s):
jinterface

fixed writing small compressed values.

kernel-4.1.1 #

Note! The kernel-4.1.1 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependencies have to be satisfied: -- sasl-2.6 (first satisfied in OTP 18.1) -- stdlib-2.6 (first satisfied in OTP 18.1)

OTP-12836
Application(s):
kernel

Host name lookups though inet_res, the Erlang DNS resolver, are now done case insensitively according to RFC 4343. Patch by Holger Weiß.

OTP-13040
Application(s):
kernel

IPv6 distribution handler has been updated to share code with IPv4 so that all features are supported in IPv6 as well. A bug when using an IPv4 address as hostname has been fixed.

OTP-13083
Application(s):
kernel

Caching of host names in the internal DNS resolver inet_res has been made character case insensitive for host names according to RFC 4343.

OTP-13155
Application(s):
kernel
Related Id(s):
PR#646

Cooked file mode buffering has been fixed so file:position/2 now works according to Posix on Posix systems i.e. when file:position/2 returns an error the file pointer is unaffected.

The Windows system documentation, however, is unclear on this point so the documentation of file:position/2 still does not promise anything.

Cooked file mode file:pread/2,3 and file:pwrite/2,3 have been corrected to honor character encoding like the combination of file:position/2 and file:read/2 or file:write/2 already does. This is probably not very useful since the character representation on the caller's side is latin1, period.

OTP-12837
Application(s):
kernel

Add {line_delim, byte()} option to inet:setopts/2 and decode_packet/3

Full runtime dependencies of kernel-4.1.1: erts-7.0, sasl-2.6, stdlib-2.6

observer-2.1.1 #

The observer-2.1.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13030
Application(s):
observer

Show ets owner pid in crashdump viewers popup window, thanks Leo Liu.

OTP-13044
Application(s):
observer

Several initialisms (eg, ERTS, ETS, SMP) are used as headings. They were being capitalized incorrectly.

OTP-13163
Application(s):
observer

Fixed a crash in crashdump viewer when dump contained a truncated binary.

Full runtime dependencies of observer-2.1.1: erts-7.0, et-1.5, inets-5.10, kernel-3.0, runtime_tools-1.8.14, stdlib-2.0, wx-1.2

parsetools-2.1.1 #

The parsetools-2.1.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13031
Application(s):
parsetools

Correct the documentation of the error tuple returned by Yecc and Leex.

Full runtime dependencies of parsetools-2.1.1: erts-6.0, kernel-3.0, stdlib-2.5

public_key-1.1 #

The public_key-1.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-12936
Application(s):
public_key, ssh

The 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384' and 'ecdsa-sha2-nistp521' signature algorithms for ssh are implemented. See RFC 5656.

OTP-13054
Application(s):
public_key, ssh
Related Id(s):
OTP-13052

There is now a file (public_key/priv/moduli) which lists size-generator-modulus triples. The purpose is to give servers the possibility to select the crypto primes randomly among a list of pregenerated triples. This reduces the risk for some attacks on diffie-hellman negotiation.

See the reference manual for public_key:dh_gex_group/4 where the handling of this is described.

The ssh server (ssh:daemon) uses this.

OTP-13132
Application(s):
public_key

Add different upper bounds for diffrent string types as suggested by comment in PKIX1Explicit88.

Full runtime dependencies of public_key-1.1: asn1-3.0, crypto-3.3, erts-6.0, kernel-3.0, stdlib-2.0

runtime_tools-1.9.2 #

The runtime_tools-1.9.2 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13078
Application(s):
runtime_tools

Clarified dbg:stop documentation

Full runtime dependencies of runtime_tools-1.9.2: erts-7.0, kernel-3.0, mnesia-4.12, stdlib-2.0

sasl-2.6.1 #

Note! The sasl-2.6.1 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependencies have to be satisfied: -- kernel-4.1 (first satisfied in OTP 18.1) -- stdlib-2.6 (first satisfied in OTP 18.1)

OTP-13000
Application(s):
sasl

Documentation improvements

Full runtime dependencies of sasl-2.6.1: erts-6.0, kernel-4.1, stdlib-2.6, tools-2.6.14

snmp-5.2.1 #

The snmp-5.2.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13017
Application(s):
crypto, erts, eunit, snmp

Small documentation fixes

OTP-13101
Application(s):
snmp

Update configuration check of imask ( list of ones and zeros) to allow the empty list.

Full runtime dependencies of snmp-5.2.1: crypto-3.3, erts-6.0, kernel-3.0, mnesia-4.12, runtime_tools-1.8.14, stdlib-2.5

ssh-4.2 #

The ssh-4.2 application can be applied independently of other applications on a full OTP 18 installation.

OTP-12699
Application(s):
ssh
Related Id(s):
OTP-11688

Better error handling in ssh_file. There was some rare errors when a NFS-mounted file was opened by ssh_file and then remotely deleted during reading. That caused an endless loop.

That bug is now fixed.

OTP-12759
Application(s):
ssh

Fixed a bug in the compression algorithm zlib@openssh.com.

OTP-12966
Application(s):
ssh
Related Id(s):
seq12945

It is now possible to start more than one daemon with a file descriptor given in option fd. Each daemon must of course have a unique file descriptor.

OTP-13029
Application(s):
ssh

Fixed a bug that caused the option dh_gex_limit to be ignored.

OTP-13158
Application(s):
ssh

A problem is fixed with the ssh:connect option pref_public_key_algs specifying user keys.

OTP-12003
Application(s):
ssh

Document updates in the ssh reference manual: app doc file and ssh_connection.

OTP-12787
Application(s):
ssh

The authorization phase is made stateful to prevent ssh acting on messages sent in wrong order.

OTP-12792
Application(s):
ssh
Related Id(s):
#5214 , 6166 , Codenomicon

Testcases for bad message lengths and for bad subfield lengths added.

OTP-12936
Application(s):
public_key, ssh

The 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384' and 'ecdsa-sha2-nistp521' signature algorithms for ssh are implemented. See RFC 5656.

OTP-12939
Application(s):
ssh

The crypto algorithms 'aes192-ctr' and 'aes256-ctr' are implemented. See RFC 4344.

OTP-13018
Application(s):
ssh

The ciphers and macs AEAD_AES_128_GCM and AEAD_AES_256_GCM are implemented but not enabled per default. See the SSH App Reference Manual and RFC5647 for details.

The ciphers aes128-gcm@openssh.com and aes256-gcm@openssh.com are also implemented and available in the default configuration.

OTP-13052
Application(s):
ssh
Related Id(s):
OTP-13054

The ssh:daemon option dh_gex_groups is extended to read a user provided ssh moduli file with generator-modulus pairs. The file is in openssh format.

OTP-13054
Application(s):
public_key, ssh
Related Id(s):
OTP-13052

There is now a file (public_key/priv/moduli) which lists size-generator-modulus triples. The purpose is to give servers the possibility to select the crypto primes randomly among a list of pregenerated triples. This reduces the risk for some attacks on diffie-hellman negotiation.

See the reference manual for public_key:dh_gex_group/4 where the handling of this is described.

The ssh server (ssh:daemon) uses this.

OTP-13055
Application(s):
ssh
Related Id(s):
OTP-13053

The ssh:daemon option pwdfun now also takes a fun/4. This enables the user to 1) check userid-password in another way than the builtin algorithm, 2) implement rate limiting per user or source IP or IP+Port, and 3) implement blocking of missbehaving peers.

The old fun/2 still works as previously.

OTP-13066
Application(s):
ssh

There is now a new option to make the server limit the size range of moduli available for the diffie-hellman group exchange negotiation. See option {dh_gex_limits,{Min,Max}} in ssh:daemon/3.

OTP-13067
Application(s):
ssh

Ecdh key exchange now validates compressed and uncompressed keys as defined in rfc5656

OTP-13109
Application(s):
ssh

Search order for the .ssh directory are changed so $HOME is tried before init:get_argument(home).

OTP-13130
Application(s):
ssh

The sftp receive window handling is optimized so it will not update the remote end too often. This makes "sftp mget" considerable faster.

OTP-13156
Application(s):
ssh

The option key_cb is extended to take an optional list that is passed to the callback module as an option. With this it is possible to have different keys depending on which host that is connected. Another possibility is to write a callback module that fetches keys etc from a database.

Thanks to Vipin Nair.

Full runtime dependencies of ssh-4.2: crypto-3.3, erts-6.0, kernel-3.0, public_key-0.22, stdlib-2.3

ssl-7.2 #

The ssl-7.2 application can be applied independently of other applications on a full OTP 18 installation.

OTP-12838
Application(s):
ssl

Honor distribution port range options

OTP-13134
Application(s):
ssl

Correct supervisor specification in TLS distribution.

OTP-13141
Application(s):
ssl

Correct cache timeout

OTP-13144
Application(s):
ssl

Avoid crash and restart of ssl process when key file does not exist.

OTP-13166
Application(s):
ssl

Enable passing of raw socket options on the format {raw,_,_,_} to the underlying socket.

OTP-13189
Application(s):
ssl

Hibernation with small or a zero timeout will now work as expected

OTP-12392
Application(s):
ssl

*** HIGHLIGHT ***

Add upper limit for session cache, configurable on ssl application level.

If upper limit is reached, invalidate the current cache entries, e.i the session lifetime is the max time a session will be keept, but it may be invalidated earlier if the max limit for the table is reached. This will keep the ssl manager process well behaved, not exhusting memeory. Invalidating the entries will incrementally empty the cache to make room for fresh sessions entries.

OTP-12457
Application(s):
ssl

Use new time functions to measure passed time.

OTP-13142
Application(s):
ssl

Improved error handling in TLS distribution

OTP-13143
Application(s):
ssl

Distribution over TLS now honors the nodelay distribution flag

Full runtime dependencies of ssl-7.2: crypto-3.3, erts-7.0, inets-5.10.7, kernel-3.0, public_key-1.0, stdlib-2.0

stdlib-2.7 #

Note! The stdlib-2.7 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependencies have to be satisfied: -- kernel-4.1 (first satisfied in OTP 18.1) -- sasl-2.6 (first satisfied in OTP 18.1)

OTP-13084
Application(s):
stdlib

The Erlang Pretty Printer uses :: for function type constraints.

A bug concerning pretty printing of annotated type union elements in map pair types has been fixed.

Some minor issues regarding the documentation of types and specs have been corrected.

OTP-13145
Application(s):
stdlib

The shell command rp prints strings as lists of integers if pretty printing of lists is set to false.

OTP-13157
Application(s):
stdlib

The shell would crash if a bit syntax expression with conflicting types were given (e.g. if a field type was given as 'integer-binary'). (Thanks to Aleksei Magusev for reporting this bug.)

OTP-13162
Application(s):
stdlib

The rand:export_seed/0 would never return 'undefined' even if no seed has previously been created. Fixed to return 'undefined' if there is no seed in the process dictionary.

OTP-13032
Application(s):
stdlib

Add support for the Delete, Home and End keys in the Erlang shell.

OTP-13063
Application(s):
stdlib

beam_lib:all_chunks/1 and beam_lib:build_module/1 have been documented.

Full runtime dependencies of stdlib-2.7: compiler-5.0, crypto-3.3, erts-7.0, kernel-4.1, sasl-2.6

test_server-3.9.1 #

The test_server-3.9.1 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13015
Application(s):
test_server

When generating Makefile from Makefile.src, ts_lib:get_arg/4 earlier removed all spaces in the extracted argument. The code was probably meant for removing leading and trailing spaces only, and is now corrected to do so.

OTP-13181
Application(s):
common_test, test_server

With the Common Test 'create_priv_dir' start option set to 'auto_per_tc', the name of the priv directory for a configuration function could clash with the name of the priv directory for a test case, which would cause Test Server failure. This error has been corrected.

Full runtime dependencies of test_server-3.9.1: erts-7.0, inets-6.0, kernel-4.0, observer-2.1, runtime_tools-1.8.16, stdlib-2.5, syntax_tools-1.7, tools-2.8

tools-2.8.2 #

The tools-2.8.2 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13042
Application(s):
tools

The emacs mode does not add a newline after the arrow on -callback lines anymore.

Full runtime dependencies of tools-2.8.2: compiler-5.0, erts-7.0, inets-5.10, kernel-3.0, runtime_tools-1.8.14, stdlib-2.5, webtool-0.8.10

typer-0.9.10 #

The typer-0.9.10 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13010
Application(s):
typer

Fix a bug that could result in a crash when printing warnings onto standard error.

Full runtime dependencies of typer-0.9.10: compiler-5.0, dialyzer-2.7, erts-6.0, hipe-3.10.3, kernel-3.0, stdlib-2.0

wx-1.6 #

The wx-1.6 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13160
Application(s):
wx

Add wxOverlay and make wxPostScripDC optional to make it easier to build on windows.

Correct some function specifications.

The driver implementation have been optimized and now invokes commands after events have been sent to erlang.

Full runtime dependencies of wx-1.6: erts-6.0, kernel-3.0, stdlib-2.0

xmerl-1.3.9 #

The xmerl-1.3.9 application can be applied independently of other applications on a full OTP 18 installation.

OTP-13070
Application(s):
xmerl

Removed the built-in definitions of xml.xsd from the xmerl_xsd module.

Full runtime dependencies of xmerl-1.3.9: erts-6.0, kernel-3.0, stdlib-2.5

Thanks To #

Andrey Mayorov, Ben Tyler, Constantin Rack, Danil Zagoskin, David Whitlock, Derek Brown, Eric Appelt, Gary Coulbourne, Holger Weiß, Ian Denhardt, Johannes Weißl, Josh Adams, Kirill Zaborsky, Kirilll Zaborsky, Kostis Sagonas, Loïc Hoguin, Luca Favatella, Luis Rascao, Magnus Henoch, Magnus Lång, Magnus Ottenklinger, Mikael Pettersson, Nico Kruber, Pawel Pikula, Pierre Fenoll, Péter Gömöri, Riccardo, Rich Morin, Roger Lipscombe, Rory Byrne, Serge Aleynikov, Sergey Savenko, Steven Danna, Tobias Schlager, Tom Briden, Tom Szilagyi, Tuncer Ayaz, Vipin Nair, Vlad Dumitrescu, soranoba, xsipewe