NekoVM 1.8.2

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

NekoVM 1.8.2

Nicolas Cannasse
Hi,

NekoVM 1.8.2 has been released on http://nekovm.org/download !

The VM being very stable, this is a minor bugfix release. Changes are
the following :

  * vm : use 15 digits (instead of 10) for float display
  * std : allow up to 512MB array/string size in serialize
   (instead of 1MB)
  * std : bugfix in utf8 (with 4 bytes codes)
  * vm : finalizers bugfix on Windows
  * std : added sys_thread_cpu_time()
  * vm : use VEXTERN for neko_kind_module and neko_id_module
  * std : hide process console in process_run
  * nekoml : added Math core module
  * std : fixed timeout error for sockets on Windows
  * mod_tora : added PROXY_MODE configuration
  * std : fixed timeout error for sockets on Linux
  * vm : fixed $int and $float - return null on invalid strings
  * mysql : added result_get_fields_names
  * gc : prevent issues with AV softs / GoogleDesktop
    which inject threads (on windows)
  * vm : use sse2 for fp calculus on gcc
   (double precision, same as msvc/flash)
  * mysql : added support for BINARY(size) type
  * vm : keep stack infos for object/array ops (interp)
  * std : added thread_stack
  * vm : added $fasthash
  * mysql5 : fixed 5.5 protocol change
  * std : fixed sha1 for 64-bits (also fix mysql5 auth)
  * std : added make_sha1
  * mysql : added set_conv_funs for string + bytes wrapping support

Enjoy !

Nicolas

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: NekoVM 1.8.2

Juraj Kirchheim
Hi Nicolas,

I was wondering, what does $fasthash do?
Could you maybe document it here: http://nekovm.org/doc/view/builtins ?

thanks,
back2dos

On Sat, Sep 10, 2011 at 3:13 PM, Nicolas Cannasse
<[hidden email]> wrote:

> Hi,
>
> NekoVM 1.8.2 has been released on http://nekovm.org/download !
>
> The VM being very stable, this is a minor bugfix release. Changes are the
> following :
>
>  * vm : use 15 digits (instead of 10) for float display
>  * std : allow up to 512MB array/string size in serialize
>  (instead of 1MB)
>  * std : bugfix in utf8 (with 4 bytes codes)
>  * vm : finalizers bugfix on Windows
>  * std : added sys_thread_cpu_time()
>  * vm : use VEXTERN for neko_kind_module and neko_id_module
>  * std : hide process console in process_run
>  * nekoml : added Math core module
>  * std : fixed timeout error for sockets on Windows
>  * mod_tora : added PROXY_MODE configuration
>  * std : fixed timeout error for sockets on Linux
>  * vm : fixed $int and $float - return null on invalid strings
>  * mysql : added result_get_fields_names
>  * gc : prevent issues with AV softs / GoogleDesktop
>   which inject threads (on windows)
>  * vm : use sse2 for fp calculus on gcc
>  (double precision, same as msvc/flash)
>  * mysql : added support for BINARY(size) type
>  * vm : keep stack infos for object/array ops (interp)
>  * std : added thread_stack
>  * vm : added $fasthash
>  * mysql5 : fixed 5.5 protocol change
>  * std : fixed sha1 for 64-bits (also fix mysql5 auth)
>  * std : added make_sha1
>  * mysql : added set_conv_funs for string + bytes wrapping support
>
> Enjoy !
>
> Nicolas
>
> --
> haXe - an open source web programming language
> http://haxe.org
>

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: NekoVM 1.8.2

Adrian Veith
In reply to this post by Nicolas Cannasse
Hello Nicholas,

nice news - coming back from my holidays in France!

are there any breaking changes in the vm ?
we use the neko vm a lot on windows
- what was the problem with the finalizers on windows ? - we had strange
bugs with external objects (resources), which I never could follow,
because they occured randomly. I blamed the GC for that and changed the
way how we freed the resources. That helped in 99% but not always since
haXe has no real RAII scheme (no finally nor scope).

Salu,

Adrian.

Am 10.09.2011 15:13, schrieb Nicolas Cannasse:

> Hi,
>
> NekoVM 1.8.2 has been released on http://nekovm.org/download !
>
> The VM being very stable, this is a minor bugfix release. Changes are
> the following :
>
>  * vm : use 15 digits (instead of 10) for float display
>  * std : allow up to 512MB array/string size in serialize
>   (instead of 1MB)
>  * std : bugfix in utf8 (with 4 bytes codes)
>  * vm : finalizers bugfix on Windows
>  * std : added sys_thread_cpu_time()
>  * vm : use VEXTERN for neko_kind_module and neko_id_module
>  * std : hide process console in process_run
>  * nekoml : added Math core module
>  * std : fixed timeout error for sockets on Windows
>  * mod_tora : added PROXY_MODE configuration
>  * std : fixed timeout error for sockets on Linux
>  * vm : fixed $int and $float - return null on invalid strings
>  * mysql : added result_get_fields_names
>  * gc : prevent issues with AV softs / GoogleDesktop
>    which inject threads (on windows)
>  * vm : use sse2 for fp calculus on gcc
>   (double precision, same as msvc/flash)
>  * mysql : added support for BINARY(size) type
>  * vm : keep stack infos for object/array ops (interp)
>  * std : added thread_stack
>  * vm : added $fasthash
>  * mysql5 : fixed 5.5 protocol change
>  * std : fixed sha1 for 64-bits (also fix mysql5 auth)
>  * std : added make_sha1
>  * mysql : added set_conv_funs for string + bytes wrapping support
>
> Enjoy !
>
> Nicolas
>

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: NekoVM 1.8.2

Blue Sans douze
Hi Nicolas.

Is Tora stable enough to use in a huge tchat server, which would have like 1.5k connected at the same time.
Won't it crash ? How can I manage to make only a small part crash, instead of all the tora server ?

I love what you've done with haXe/neko/tora.

Forever haxer,
Blue112


2011/9/10 Adrian Veith <[hidden email]>
Hello Nicholas,

nice news - coming back from my holidays in France!

are there any breaking changes in the vm ?
we use the neko vm a lot on windows
- what was the problem with the finalizers on windows ? - we had strange
bugs with external objects (resources), which I never could follow,
because they occured randomly. I blamed the GC for that and changed the
way how we freed the resources. That helped in 99% but not always since
haXe has no real RAII scheme (no finally nor scope).

Salu,

Adrian.

Am 10.09.2011 15:13, schrieb Nicolas Cannasse:
> Hi,
>
> NekoVM 1.8.2 has been released on http://nekovm.org/download !
>
> The VM being very stable, this is a minor bugfix release. Changes are
> the following :
>
>  * vm : use 15 digits (instead of 10) for float display
>  * std : allow up to 512MB array/string size in serialize
>   (instead of 1MB)
>  * std : bugfix in utf8 (with 4 bytes codes)
>  * vm : finalizers bugfix on Windows
>  * std : added sys_thread_cpu_time()
>  * vm : use VEXTERN for neko_kind_module and neko_id_module
>  * std : hide process console in process_run
>  * nekoml : added Math core module
>  * std : fixed timeout error for sockets on Windows
>  * mod_tora : added PROXY_MODE configuration
>  * std : fixed timeout error for sockets on Linux
>  * vm : fixed $int and $float - return null on invalid strings
>  * mysql : added result_get_fields_names
>  * gc : prevent issues with AV softs / GoogleDesktop
>    which inject threads (on windows)
>  * vm : use sse2 for fp calculus on gcc
>   (double precision, same as msvc/flash)
>  * mysql : added support for BINARY(size) type
>  * vm : keep stack infos for object/array ops (interp)
>  * std : added thread_stack
>  * vm : added $fasthash
>  * mysql5 : fixed 5.5 protocol change
>  * std : fixed sha1 for 64-bits (also fix mysql5 auth)
>  * std : added make_sha1
>  * mysql : added set_conv_funs for string + bytes wrapping support
>
> Enjoy !
>
> Nicolas
>

--
haXe - an open source web programming language
http://haxe.org


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: NekoVM 1.8.2

Justin Donaldson-3
In reply to this post by Nicolas Cannasse
This looks solid, glad you are continuing to develop neko.  Are there still int/float differences? Do we still need Int32, to keep things consistent?

-Justin

On Sat, Sep 10, 2011 at 6:13 AM, Nicolas Cannasse <[hidden email]> wrote:
Hi,

NekoVM 1.8.2 has been released on http://nekovm.org/download !

The VM being very stable, this is a minor bugfix release. Changes are the following :

 * vm : use 15 digits (instead of 10) for float display
 * std : allow up to 512MB array/string size in serialize
 (instead of 1MB)
 * std : bugfix in utf8 (with 4 bytes codes)
 * vm : finalizers bugfix on Windows
 * std : added sys_thread_cpu_time()
 * vm : use VEXTERN for neko_kind_module and neko_id_module
 * std : hide process console in process_run
 * nekoml : added Math core module
 * std : fixed timeout error for sockets on Windows
 * mod_tora : added PROXY_MODE configuration
 * std : fixed timeout error for sockets on Linux
 * vm : fixed $int and $float - return null on invalid strings
 * mysql : added result_get_fields_names
 * gc : prevent issues with AV softs / GoogleDesktop
  which inject threads (on windows)
 * vm : use sse2 for fp calculus on gcc
 (double precision, same as msvc/flash)
 * mysql : added support for BINARY(size) type
 * vm : keep stack infos for object/array ops (interp)
 * std : added thread_stack
 * vm : added $fasthash
 * mysql5 : fixed 5.5 protocol change
 * std : fixed sha1 for 64-bits (also fix mysql5 auth)
 * std : added make_sha1
 * mysql : added set_conv_funs for string + bytes wrapping support

Enjoy !

Nicolas

--
haXe - an open source web programming language
http://haxe.org


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: NekoVM 1.8.2

Nicolas Cannasse
In reply to this post by Juraj Kirchheim
Le 10/09/2011 17:03, Juraj Kirchheim a écrit :
> Hi Nicolas,
>
> I was wondering, what does $fasthash do?
> Could you maybe document it here: http://nekovm.org/doc/view/builtins ?

Yes I need to think the docs.

$fasthash is the same as $hash but it does not lookup+store the result
in the global reverse table.

Nicolas

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: NekoVM 1.8.2

Nicolas Cannasse
In reply to this post by Adrian Veith
Le 10/09/2011 21:33, Adrian Veith a écrit :
> Hello Nicholas,
>
> nice news - coming back from my holidays in France!
>
> are there any breaking changes in the vm ?
> we use the neko vm a lot on windows

Few things that changed in a backward-incompatible manner :

- $int/$float can now return "null" on some invalid numbers (instead of
0 before). This affects Std.parseInt and parseFloat but is now
consistent with other platforms

- if you had in mysql a field typed as TINYTEXT/TEXT/MEDIUMTEXT/etc. and
storing inside it binary data containing \0, the new neko mysql driver
will only return data up to the \0. This is because a bug in previous
mysql driver that was incorrectly reporting these types as BLOBs.

> - what was the problem with the finalizers on windows ?

We found that on Windows, if you store some GC allocated memory inside a
finalized block, this memory might be free before the finalizer is
called, leaving to random crashes.

> - we had strange
> bugs with external objects (resources), which I never could follow,
> because they occured randomly. I blamed the GC for that and changed the
> way how we freed the resources. That helped in 99% but not always since
> haXe has no real RAII scheme (no finally nor scope).

There is a good possibility this might be related if you were using
"val_gc" on these resources.

Best,
Nicolas

--
haXe - an open source web programming language
http://haxe.org