./lang/qore, Embeddable multithreaded scripting language

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version:, Package name: qore-, Maintainer: nros

Qore is a modular, multi-threaded, SQL-integrated dynamically typed
scripting language with optional hard typing and procedural and
object-oriented features, powerful and easy-to-use data types,
structures, and operators, a clean and easy-to-lean/read syntax.

Required to run:
[math/mpfr] [devel/pcre]

Required to build:

Master sites:

SHA1: 794af91df0e8881603c54f57fc3a9111db63c5ba
RMD160: f69cb70a0df3f52f411efe5f57e50c53e08d6c49
Filesize: 30722.335 KB

Version history: (Expand)

CVS history: (Expand)

   2018-12-27 16:15:22 by Joerg Sonnenberger | Files touched by this commit (1)
Log message:
Disable single compilation unit by default, it will dramatically
increase memory use during compilation for poor man's LTO.
   2018-06-08 21:22:50 by Niclas Rosenvik | Files touched by this commit (1) | Package updated
Log message:
Updated lang/qore buildlink3.mk file to reflect the new module api version of qore
   2018-06-08 20:38:29 by Niclas Rosenvik | Files touched by this commit (3) | Package updated
Log message:
Updated lang/qore to version .

New features in Qore:
* the sqlutil script has been updated with the –select option
  to allow dumped table rows to be filtered
* "thread list", "backtrace all" commands implemented for
  the debugger
* QUnit: overloaded the testAssertionValue() method to support
  auto/number/float and more verbose output when a difference
  in number/float values is found
* qdbg-remote supports ConnectionProvider connections
* new method: Breakpoint::getProgram()

* improved debugging support:
 - added support for a Visual Studio Code debug adapter for Qore
 - the debugger can now retrieve sources when running from a remote
   debug server
 - debugger options can now be set from command line (verbosity etc.)
 - the onAttach() event is now executed synchronously when
   the program thread context starts
 - the onDetach() event is executed properly when program thread
   contexts terminate
 - the onStep() now provides the breakpointId value if available
 - the onExit() event was added for greater control over
   code execution in the debugger
 - the onException() event was improved
 - server commands now support frameid as a parameter

Bug fixes:
 to many to list.
   2018-01-28 17:24:15 by Thomas Klausner | Files touched by this commit (71)
Log message:
recursive bump after mpfr shlib major bump
   2017-10-12 20:17:46 by Niclas Rosenvik | Files touched by this commit (3) | Package updated
Log message:
Updated lang/qore to version 0.8.13.

New features in Qore:

* Input/Output stream APIs
* Vastly improved type system with complex type support
* Improved operators; list, string, binary slice operators,
  the ".." range operator, improved new, cast<>, and instanceof
  operators, lazy evaluation of functional and list operators
* Improved encryption support including AES encryption,
  encryption/decryption streams, support for AAD and MACs
* Improved HTTPS and SSL security support with addition X.509
  certificate support including automatic certificate
  verification in client and server contexts
* Universal connection API
* Support for binding output placeholder buffers for result sets
  that return an SQLStatement object for more efficient piecewise
  processing of DB stored procedure/function calls that return
  very large result sets
* Strong encapsulation support (ex: private:internal)
* Deterministic garbage collection performance improvements with
  large cycles
* Debugging support and APIs including remote network debugging
* Language Server Protocol support for Qore in the new astparser
  module for rich language support in IDEs such as the
  Visual Studio Code Qore Extension

Bug Fixes in Qore:

* fixed a bug causing AbstractQuantifiedBidirectionalIterator not
  being available (issue 968)
* BulkSqlUtil module fixes:
    -fixed the module to work properly even with DB drivers that
     do not support parameter array binding (issue 1154)
* CsvUtil module fixes:
    -fixed a bug in an error message validating input data
     (issue 1062)
    -added an exception when detected headers do not match the
     fields option (issue 2179)
* HttpServer module fixes:
    -added logic to attempt to mask passwords in log messages
     (issue 1086)
* HttpServerUtil module fixes:
    -fixed a bug where the msg arg to AbstractAuthenticator::do401()
     was ignored (issue 1047)
* RestHandler module fixes:
    -added logic to allow sensitive data to be masked in log messages
     (issue 1086)
* SqlUtil module fixes:
    -fixed a bug in update and upsert statement generation when the
     given data does not have enough columns to use the unique index
     found, an error message is generated that contains all the
     columns names instead of just the column names required by the
     index (issue 1013)
* WebSocketClient module fixes:
    -fixed a thread lock starvation race condition (issue 2130)
* UTF-16 fixes:
    -fixed a bug comparing strings in UTF-16 encodings (issue 1579)
    -fixed Qore::substr() and <string>::substr() with strings in
     UTF-16 encodings (issue 1586)
    -fixed Qore::trim(), Qore::ltrim(), Qore::rtrim() and the trim
     operator with strings with UTF-16 encodings (issue 1775)
* fixed a bug where break and continue statements were accepted
  outside of loops (issue 976)
* fixed a bug compiling on Solaris SPARC with g++ where
  MPFR_DECL_INIT() is compiled incorrectly with -O1 or greater
  (issue 958)
* fixed a bug causing an infinite loop in decompression functions
  (issue 966)
* fixed an issue where an internal C++ API
  (QoreProgram::parseCmdLineDefines()) performed a needless copy
  of a data structure (issue 1099)
* fixed a stack corruption bug with asynchronous I/O on UNIX
  systems with ReadOnlyFile methods (issue 1106)
* fixed bugs with inconsistent conversions of int, float, and
  boolean values to date/time values, now they are all converted
  uniformly to relative date/time values (issue 1156)
* fixed a bug where Qore allowed code to be declared both public
  and private without a warning (issue 1187)
* fixed a bug where the instanceof operator would return True with
  objects that did not publically inherit the given class or where
  the given class is not accessible (issue 1191)
* fixed a bug in qpp support of the 'final' class flag (issue 1222)
* fixed a bug where the + operator provided access to private
  members from outside the class (issue 1209)
* fixed a bug where different overloaded method variant resolution
  rules were used at parse time (best match in hierarchy) and
  runtime (best match in first matching class) in a class hierarchy
  (issue 1229)
* fixed a bug where exceptions in base class constructor calls did
  not reflect the actual source location (issue 1230)
* fixed a bug where runtime function/method variant matching was
  incorrectly biased towards default matches for missing arguments
  (issue 1231)
* fixed bugs where calls to Socket::upgradeClientToSSL() and
  Socket::upgradeServerToSSL() were ignored with no exception
  thrown if the socket was not connected (issue 1258)
* fixed a bug where a closure created in an object scope could not be
  called if the object had been deleted, even if the closure did not
  refer to the object (issue 1303)
* fixed a bug where ord() would return negative numbers for bytes
  with the high bit set with compilers where char is the same as
  signed char (issue 1385)
* fixed a bug where int(number) returned rounded value instead of the
  integer part (while int(float) behaved correctly; also
  cf. initializing a softint value from a number vs. from a float)
  (issue 1463)
* File::read() now uses character semantics for the length argument
  (issue 1548)
* fixed a bug with strongly-typed lvalue assignments with classes
  created in different Program objects (issue 1551)
* fixed a bug where an ASCII string and the same string in a different
  encoding and with diacritics could incorrectly be marked as equal
  (issue 1579)
* fixed bugs in HTTPClient methods where string message bodies were
  not converted to the object's character encoding before transmission
  (issue 1813)
* fixed a bug in the reference and *reference assignment restrictions;
  previously any value was accepted, now only references are accepted
  as the initial assignment values (issue 1819)
* fixed a bug in handling the SqlUtil::BLOB type in the FreetdsSqlUtil
  module (issue 1852)
* fixed a bug in overloaded call variant matching where missing
  arguments were counted towards the match (issue 1897)
* fixed many bugs where parse-time errors could be reported at an
  incorrect source location; parse-time error location reporting has
  been completely overhauled and reimplemented for correctness
  (issue 1930)
* fixed a bug where code signatures would accept parameter variables
  without "$" signs even when %allow-bare-refs was not in effect
  (issue 1941)
* fixed memory leaks in the scanner related to EOF conditions
  (issue 1976)
* rewrote Qore functions gethostbyname(), gethostbyname_long() and
  gethostbyaddr() to use standard C functions getaddrinfo(3) and
  getnameinfo(3) internally instead of the deprecated gethostbyname(3)
  and gethostbyaddr(3) (issue 1952)
* fixed cmake builds on Darwin (issue 1980)
* fixed a bug where immediate date-time values were not marked with
  their type at parse time (issue 2001)
* fixed a bug where the *data type restriction would allow all types
  to be assigned at runtime (issue 2002)
* Qore::RangeIterator::constructor(int) and Qore::xrange(int) were
  updated; the second arguments were removed to avoid ambiguity with
  the other overloaded variants (issue 2016)
* fixed a bug where Qore::replace() could get in an infinite loop
  with arguments with embededed nulls (issue 2098)
* fixed a bug in regular expression extraction where an infinite loop
  could occur (issue 2083)
* fixed a bug where a call reference to an object method that crosses
  Program boundaries could result in a core dump when called due to an
  error managing thread-local data (issue 2145)
* fixed crashes in scanner due to EOF in comments (issue 2175)
   2017-07-30 21:27:08 by Niclas Rosenvik | Files touched by this commit (3) | Package updated
Log message:
Update Qore to version

This is a bugfix release so no buildlink change.


New Features in Qore
 * added broken-logic-precedence warning.

Bug Fixes in Qore
 * fixed documentation regarding escaping of characters in
   strings and added a parse exception in case of trying
   to escape octal values in range 400-777 (issue 50)
 * fixed a crashing bug where Datasource::getConfigString()
   was called without a connection, also could crash in an
   implicit internal call to this method with the
   DatasourcePool class when connections were lost and the
   warning callback should be called (issue 1992)
 * fixed a bug where Datasource::getConfigHash() returned
   different values depending on if the object was
   connected or not (issue 1994)
   2017-07-11 21:41:20 by Joerg Sonnenberger | Files touched by this commit (8)
Log message:
require much less memory.
   2017-06-13 21:23:32 by Niclas Rosenvik | Files touched by this commit (3) | Package updated
Log message:
Update qore to version

Changelog from release notes:

New Features since Qore
* added the SalesforceRestClient module for communicating with
  Salesforce.com using the REST APIs
* module SqlUtil
    -has support for native default values in tables
     (issue 1428)
    -has support for Oracle named types (eg. spatial types) for
     Schema.qm and SchemaReverse.qm. (issue 1465)

Bug Fixes since Qore
* module fixes:
    -FixedLengthUtil: fixes and improvements to errors and
     exceptions (issue 1828)
    -HttpServerUtil: eliminated excess logging of all HTTP
     chunks sent and received (issue 1832)
    -PgsqlSqlUtil: fixed a bug in setting a comment for a
     table column (issue 1886)
    -SqlUtil: fixed a bug in the offset query hash argument
     in SQL operation methods (issue 1880), fixed a bug
     that prohibited only columns from the main query to be
     selected when joins are used (issue 1909)
    -TableMapper: fixed a bug in flush messages in the
     InboundTableMapper class (issue 1849)
* fixed a bug that could cause spurious parse-time exceptions
  to be thrown when matching call variants with multiple
  return types for the same callable object (issue 1928)
* fixed the process return code in the output reference in
  backquote() on Unix/Linux platforms (issue 1884)
* fixed a bug where connections were not immediately released
  back to the DatasourcePool in case of an SQLSTATEMENT-ERROR
  exception (issue 1836)
* eliminated a spurious exception in the SQLStatement class in
  case of a DatasourcePool timeout (issue 1832)
* fixed a crash when the incorrect type was passed to a
  parameter declared *reference (issue 1815)
* fixed a crash when the Qore library exits caused by an error
  in handling module dependencies with injected modules
  (issue 1805)
* fixed segfault crashes caused by calling object methods with
  null pointers (issue 1791)
* added internal API support to make it easier for DBI drivers
  to handle lost connections and to allow DBI drivers that must
  close all open handles before a connection is closed
  (such as the oracle driver); due to this change, SQLStatement
  objects based on a DatasourcePool are closed automatically
  whenever the datasource is returned to the pool (issue 1250)
* implemented new parse options to revert the effect of parse
  options that affect code safety (issue 1895):
* fixed parse locations of strings and regexes (issue 1905)
* fixed a memory leak where references participate in recursive
  references (issue 1774)
* fixed a build issue with clang++ (issue 1768)
* fixed a memory leak in the Queue copy constructor when the
  Queue was used in other objects (such as an event queue,
  etc; issue 1749)
* Mapper module fixes:
    -fixed bugs handling the allow_dot and allow_output_dot
     options (issue 1690)
    -fixed TableMapper bugs introduced in Qore
     (issue 1754)
* fixed a memory leak in %try-module error handling (issue 1690)
* fixed a bug in trunc_str() when the string has an invalid
  multi-byte character at the end of the string and the string
  is exactly the byte width requested (issue 1693)
* fixed a bug where ReadOnlyFile::getchar() did not respect
  character semantics as documented (issue 1574)
* OracleSqlUtil module fixes:
    -fixed a bug in character_semantics for standalone column
     (issue 1688)
* Mapper module fixes:
    -fixed a bug in handling "list mode" data such as submitted by
     InboundTableMapper::queueData() (issue 1736, bug introduced
     in Qore with the fix for issue 1626)
* SqlUtil module fixes:
    -fixed schema alignment skipping column with name "driver"
     (issue 1684)
    -fixed sqlutil schema management: functional indexes are
     rejected without () in name (issue 1610)
* TableMapper module fixes:
    -fixed a bug in handling "list mode" data with optimized
     inserts (issue 1736, bug introduced in Qore with
     the fix for issue 1626)
* WebSocketClient module fixes:
    -added timeout values to Socket and HTTPClient calls
     (issue 1725)
* WebSocketHandler module fixes:
    -added timeout values to Socket calls (issue 1725)
* WebSocketUtil module fixes:
    -added timeout values to Socket calls (issue 1725)
* fixed a bug where a type conversion error in an lvalue
  assignment could generate a confusing unrelated runtime
  exception (issue 1697)
* fixed a bug where invalid characters in the port
  specification in a URL were ignored (issue 1728)
* fixed a bug with SSL socket communication the remote closing
  the connection during a send operation could cause the
  current thread to go into an infinite loop consuming
  100% CPU (issue 1729)
* fixed a bug in the HashListIterator class iterating hashes
  with a mix of lists and single values such as used by bulk
  DML binds; now the single values will appear as the current
  value for all list elements as per the original design
  instead of throwing a runtime exception (issue 1738)
* fixed bug in internal string generation with size_t arguments
  that could cause invalid data to be output or crashes on
  32-bit platforms (issue 1640)
* fixed a runtime memory leak and invalid runtime behavior with
  undetected recursive lvalue references (issue 1617)
* improved prompt collection performance with large graphs of
  objects by eliminating additional unnecessary graph scans,
  resulting in further large performance improvements in the
  garbage collector (issue 1363)
* improved InboundTableMapper::queueData() performance
  (in the TableMapper module) when used with data in hash of
  lists format to use bulk DML in input and output without
  internal data conversions (issue 1626)
* OracleSqlUtil module fixes:
    -worked around ORA-22165 from op_in() caused by Oracle's
     limit on number of collection elements (issue 1660)
    -fixed a bug in the force option (i.e. cascade) for
     dropping types (issue 1683)
    -improved %try-module error reporting and documentation
     (issue 1648)
* fixed a bug in Qore::parse_url() parsing single-character
  hostnames (issue 1524)
* fixed a bug where PO_LOCKDOWN was not set when parsing init
  and del attributes in user module headers (issue 1535)
* fixed a bug parsing exception catch block parameter errors
  (in debug builds only; issue 1558)
* fixed a bug dereferencing binary values with the [] operator;
  the behavior now corresponds to the documentation (issue 1566)
* fixed a bug that would result in a crash if a method were
  declared both static and abstract (issue 1590)
* fixed performance issues with the Mapper module (and by
  extension the TableMapper module) for mappers with many
  identity (i.e. 1:1) and constant mappings (issue 1620)
* fixed a bug in the BulkInsertOperation class in the
  BulkSqlUtil module where inserts would fail or silently
  insert invalid data in the second or later blocks when
  constant hashes were used (issue 1625)
* Mime module:
    -added support for URL form-encoded messages (issue 1436)
* RestClient module:
    -added support for URL form-encoded messages (issue 1436)
    -added support for the "rawxml" message body encoding
     (issue 1437)
* fixed handling of invalid compressed data in the following
  functions (issue 1432):
* fixed @inf@ on Windows (issue 1442):
* fixed Qore::parse_url() with single-character usernames
  (issue 1455)
* corrected the error message with SSL reads when the server
  closes the connection prematurely (issue 1488)
* fixed the Host header in HTTP requests to not include the port
  if the port is the default port for the scheme because it
  causes some servers to reject the request (issue 1489)