New Core builds will be listed here

Here you can post threads specific to the current release of the core (099)

Moderator: POL Developer

Post Reply
Yukiko
Distro Developer
Posts: 2825
Joined: Thu Feb 02, 2006 1:41 pm
Location: San Antonio, Texas
Contact:

New Core builds will be listed here

Post by Yukiko »

[Edit: To avoid spamming the forum with new topics announcing new builds I will make this thread dedicated to posting new builds. Any new build will be posted as a reply in this thread.]

Turley has given us a Christmas present!

You can pick-up your present here.

It's so good I am going to reveal what is inside: A new performance monitor for keeping an eye on our scripts.

From the core-changes.txt:

Code: Select all

-- POL099 --
12-23-2017 Turley:
  Added:   os:PerformanceMeasure(delta_seconds, max_scripts)
           Monitors for given number of seconds the instructions of all scripts. Returns:
           struct with the following members: 
           total_number_observed - number of scripts alive in the timespan
           total_instructions - sum of all instructions of the observed scripts
           scripts - array of structs (max number is given max_scripts param) sorted by instructions amount
           each scripts entry has the following members:
           name - script name, if attached with name/npctemplate
           instructions - number of executed instructions
           pid - PID of the script
           percent - percent of the total instruction amount
           
Yukiko
Distro Developer
Posts: 2825
Joined: Thu Feb 02, 2006 1:41 pm
Location: San Antonio, Texas
Contact:

Re: New build on 2018-01-08

Post by Yukiko »

The latest commit for this was on the 5th of this month. So I am a little bit behind in getting it built and posted.

See the Downloads page for the new build.

From core-changes .txt:

Code: Select all

-- POL099 --
01-05-2018 Turley:
  Added:   fileaccess.cfg Directory entry
           Can be definied multiple times in package syntax.
           ::config means config rootfolder, :mypkg:test means subfolder test of mypkg. Has only a meaning if AllowRemote is given. Limits the access to given folder and its subfolders.
  Added:   New type Boolean
           == != ! operators are implemented
           use new basic.em function Boolean(1/0) to create such type.
           see testsuite/escript/boolean in the sources for detailed scripts of what is possible.
01-04-2018 Kevin:
  Added:   os::HTTPRequest(url, method := "GET", options := struct{})
           Creates an HTTP request, and returns the returned data as a string.
Please report any bugs you may find in the Core Bug report forum.
Yukiko
Distro Developer
Posts: 2825
Joined: Thu Feb 02, 2006 1:41 pm
Location: San Antonio, Texas
Contact:

New build on 2018-02-07.

Post by Yukiko »

There is a new Core build of POL 099 Beta. It adds a new eScript feature and fixes a bug with the file access system for scripts plus a lot of clean-up of build includes that greatly improved my build time. This include clean-up has nothing to do with scripted includes in your server scripts. It is something you will notice if you compile the server code. A huge thanks to Turley for the bug fix and the build speed improvement and to both Turley and Kevin for the new feature, function objects as Turley referred to them.

You will need to recompile your eScript source files after installing this new release. I always do that anyway just to be safe.

Go to the Downloads page to get it either as an installer or as a ZIP archive.

Be certain that you replace ALL old files with the new files in the archive. You will want to backup your uoconvert.cfg file if you are using one of the newer versions of that file included in the Distro.

As always, here are the pertinent notes from core-changes.txt:

Code: Select all

-- POL099 --
02-06-2018 Turley:
  Fixed:   fileaccess.cfg: Not specifying Directory entry behaves like before and gives access to all directories. (broken since 01-05-2018)
02-05-2018 Turley:
  Added:   Operator @
           used to receive a function object, which can later be used to call the underlying function with the same parameters/return value via the method ".call(..)"
  Note:    This object can only executed in the same script instance where it was created and cannot be saved/loaded from datafiles/cprops.
  Note:    Use cases:
           function genericItemLoop(func)
             for item in ...
               // complicated checks
               func.call(item);
             endfor
           endfunction
           function changecolor(item)
             item.color:=6;
           endfunction
           ...
           genericItemLoop(@changecolor);
           genericItemLoop(@changeY);

           // (fast) function table, instead of "if" cascade
           var look=dictionary;
           look["blubb"]:=@doSomething
           look["blah"]:=@doSomethingElse
           ...
           look[mykey].call();
          
  Changed: Version number of ecl files, recompilation needed.
           
Post Reply