5.4.0 is generally focused on code quality improvements and tornado asyncio compatibility.
- Add github actions, bail on asyncio patch for tornado 6.1.
- Start testing on Python 3.9.
- Fix stack levels for ipykernel's deprecation warnings and stop using some deprecated APIs.
- Add env parameter to kernel installation
- Fix stop_on_error_timeout blocking other messages in queue.
- Remove most of the python 2 compat code.
- Remove u-prefix from strings
Changes include:
* Add let* and and* in Lwt.Syntax and Lwt_result.Syntax.
* Also add let+ and and+.
* Add Lwt_result.both.
* Always use libev if detected.
New in 2020.11
6model:
+ [af9ebffb,ffc8a269,75177470,38a2f815,2e8b5657] Fix interning of parametrics
+ [3c5deb2f] Implement serialize/deserialize of CStr REPR
+ [a37cd763,cbb92b03,dfbdcc9d] Eliminate pointer mismatch warnings on big endian systems
+ [2a98b8f3] MVM_nativeref_{read,write}_lex_i should handle uint8, uint16, uint32
+ [608b90eb] No need to MVMROOT `root` twice in `get_attribute`
Core:
+ [88722e8e] Fix zeroing of reallocated memory in MVM_recalloc
+ [1eda12a0] Use `foo(void)` instead of just `foo()` for functions that take no arguments
Platform:
+ [18e6f94e] Import pthread on Windows to get a type
Strings:
+ [cefec1fb] Regenerate Unicode database files for v13.0, v13.1
+ [2cac07c9] Regenerate unicode_db to fix minor comment difference
+ [4ced726f] Use MVM_{malloc,realloc,calloc,free} consistency
+ [55964708] `swap_bytes` in utf16.c needs to also swap bytes on big endian platforms
Tooling/Build:
+ [f212c081] Update generation scripts for Unicode 13.0, 13.1
+ [004e4bc7] The probe for `pthread_setname_np` needs prototypes from <string.h>
+ [6a2284e6,aa83051a] Report the lines that caused coverage
+ [7167b3d1,56fca429] Remove unused, unneeded and misspelled block filter
This does not work because it is using a cross-compiler and not the native
toolchain, and said cross-compiler (or, rather, its linker) does not support
relro.
Pkgsrc changes:
- Follow redirects (open-cobol -> gnucobol) for MASTER_SITES and HOMEPAGE
- Add a test target
ChangeLog:
GnuCOBOL 3.1.1 released (20201208)
GnuCOBOL 3.1 released (20201111) had issues that were fixed
* New GnuCOBOL features
** XML GENERATE statement
(note: runtime support needs additional library libxml2)
** JSON GENERATE statement
(note: runtime support needs additional library cJSON or JSON-C)
** CONTINUE AFTER statement (COBOL 202x) implemented, also handle fractions
of seconds in C$SLEEP now
** TYPEDEF and SAME AS (COBOL 2002) implemented, including the MicroFocus
and RM/COBOL variants
** >>TURN (COBOL 2002) directive implemented, allowing some exception checks
to be turned on/off per source as desired
** Improved support for different compiler extensions (ACUCOBOL, IBM,
Fujitsu, MicroFocus COBOL, Microsoft COBOL, RM/COBOL, CA Realia and more)
** file handling: include support for a callable EXTFH interface also provided
by several compilers including Micro Focus
This allows users to insert an external file handler while retaining
all of the normal COBOL I/O functions with a possible callback to libcob.
To have the compiled program call `yourfh()` for file I/O use:
`cobc -fcallfh=yourfh`
In turn `yourfh()` may call `EXTFH()` to use I/O functions from GnuCOBOL.
The external file handler can also be directly invoked from COBOL, too,
using `CALL "EXTFH"`.
** Note: Not each flag contained in the FCD3 is handled already **
** file handling: added support for [RE]WRITE FILE file FROM source
** file handling: name mapping adjusted (improved MF and ACU-compatibility):
entries starting with a period or number are not resolved any more,
periods in the external identifier are always replaced by underscore
-> MY.FILE is resolved by DD_MY_FILE, dd_MY_FILE, MIFILE now;
prefixes "-F " and "-D " are removed from external names;
if filename is not absolute after translation, COB_FILE_PATH is now
still applied;
File name mapping now applies both to COBOL statements and CALLable
CBL_ and C$ file routines.
** Screen I/O: initial mouse support (for details see runtime.cfg),
use of CURSOR clause in SPECIAL-NAMES for positioning on ACCEPT
** on abort a stack trace will be genereated, this can be suppressed by
runtime configuration option COB_STRACK_TRACE
** the dump that is generated on abort (depending on -fdump at compile-time)
was heavily improved and combines consecutive identical OCCURS items,
leading to smaller dump files
** changes in handling COPY statement:
* copybook names that contain an extension aren't searched with additional
extensions [as post-rc1-change this may be set to old behaviour by
defining COB_MULTI_EXTENSION when building GnuCOBOL/cobc]
* library names are now tested for environment "COB_COPY_LIB_libname",
allowing the directory to specified externally (also as no-directory
by exporting with empty value) and has a fallback (with a warning) to
be effectively ignored (as previous versions did this)
* Removed functions
** SCREEN SECTION, REPORT-WRITER module: removed non-standard extension
"LINE / COL signed-integer" (inadvertently available since 2.2/3.0rc1);
which will now raise an error "unsigned integer expected";
if used replace by standard "LINE / COL +/- integer"
* Obsolete features (will be removed in the next version if no explicit user
requests are raised)
** support for Borland C compiler and linker
** -fif-cutoff flag for cobc (currently disabled, see entry below in 3.0rc1)
** old OpenCOBOL-only-EXTFH
* Changes to the COBOL compiler (cobc) options:
** new options:
-f[no]-ec=exception-name to tune the exception checks similar to the >>TURN
directive, you may also leave out the "EC-" prefix here, example to
enable all checks but disable all bound checks but OCCURS DEPENDING ON:
cobc -debug -fno-ec=bound -fec=bound-odo
** adjustments to warning options:
-Wextra "new" option to enable every possible warning that is not dialect
specific (this option used to be called -W)
-Wadditional new warning group for all warnings that don't have a group
on their own
-Wno-error and -Wno-error=<warning> to treat (specific <warning>s) not as error
-Wdangling-text for raising the warning "source text after program area",
not included in -Wall any more
-Wno-ignored-error allows to suppress messages that normally would be an
error and are only allowed because they are never executed
-Wimplicit-define and -Wcorresponding are now enabled by default
-f[no]-diagnostics-show-option, enabled by default, shows the
command line option responsible for the diagnostic message
extra information to a warning (or error) is now marked as "note:"
** the interal Xref got a huge speedup, has all references in ascending order
now and includes the total amount of direct references
** the interal listing got a speedup and has all error references in
ascending order now
** cobc -g (and configure --enable-debug) use the most expressive
debugging options available on the system
** cobc -g now auto-includes references to the COBOL source file and to
all ENTRY and SECTION elements to ease source level debugging
* Changes in the COBOL runtime (libcob)
** Messages from the COBOL runtime are also translated now (if installed).
To prevent this disable translations in general with using the configure
option --disable-nls (or by deactivating ENABLE_NLS in config.h).
** libcob.h does no longer auto-include gmp.h (behavior since 2.x), if you link
against libcob and need cob_decimal include gmp.h/mpir.h yourself before;
otherwise you do not need it in your include path any more
** execution times of INSPECT and INITIALIZE with OCCURS were heavily cut down
** convenience functions for direct C access to COBOL fields and for debugging
were added, see new C-API documentation
** first-time file-locking under Win32
** Breaking change: previously the return-code of registered error handlers
(by CBL_ERROR_PROC) were ignored. This was changed according to the
documentation for CBL_ERROR_PROC -> a RETURN-VALUE of ZERO skips further
error handlers to be called, including the internal one.
* New build features
** Running the internal tests by make check now fails if the testsuite has any
unexpected result.
** The modules and test programs in the NIST COBOL-85 test suite (tests/cobol85)
may now be build and/or tested and/or the test results checked separately.
You now may also run the tests with a previous installed version of GnuCOBOL
(or a version specified by a manual temporary setup).
For details see tests/cobol85/README.
** new configure option --with-math=ARG to specify which math multiple precision
library is to be used, where ARG may be: check (default), gmp, mpir
** new configure options --with-xml2 / -without-xml2 to explicit force/disable
XML runtime support, otherwise it will be included if found as working
** new configure option --with-json / -without-json to explicit force/disable
JSON runtime support, otherwise it will be included if found as working
Note: As a special case you may built-in cJSON by placing its source in
the folder "libcob". If it is included there, this version will be compiled
into libcob. It may be enforced with --with-json=local,
like --with-json=cjson and --with-json=json-c enforce the given library.
** To adjust the build system for GMP/MPIR you may use the new variables
GMP_CFLAGS / MPIR_CFLAGS and GMP_LIBS / MPIR_LIBS.
If unset configure will try pkg-config.
** To adjust configure to use libxml2 you may use the new variables XML2_CFLAGS
and XML2_LIBS. If unset configure will use pkg-config / xml2-config.
** To adjust configure to use libcjson you may use the new variables CJSON_CFLAGS
and CJSON_LIBS, similar JSON_C_CFLAGS and JSON_C_LIBS for libjson-c.
If unset configure will use pkg-config.
** new configure option --enable-hardening to either enable GNU C's
hardening options or leave as-is, or disable (which previous versions
effectively did)
** build system: defaults.h is not created or included any more, all configure
provided defines are now found in the single header config.h
** Any time after `make` you can call `pre-inst-env` script to use the still-
uninstalled binaries. Samples:
pre-inst-env cobc -xj prog.cob
pre-inst-env cobcrun -M prog start
pre-inst-env may also be called without parameters to start a new shell
session with the environment adjusted to use the uninstalled version.
* Too much bug fixes to list here (please check ChangeLogs for full details),
includes the following CVEs:
** compiler (may be triggered with special crafted source files)
CVE-2019-14468, CVE-2019-14486, CVE-2019-14528, CVE-2019-14541,
CVE-2019-16396, CVE-2019-16395
* GnuCOBOL's getopt implementation honors POSIXLY_CORRECT now:
if set to any value the option parsing in cobc, cobcrun and CBL_GC_GETOPT
stops at the first nonoption, otherwise it stays with the old behaviour and
re-orders nonoptions to the end)
* Known issues in 3.1
** testsuite:
* if built with vbisam, cisam or disam, depending on the version used, some
tests will lead to UNEXPECTED PASS, while others may fail
* possibly failing tests (false positives):
* temporary path invalid
* compiler outputs (assembler)
* compile from stdin
* NIST: OBNC1M.CBL false positive (the test runner uses a nonportable way of
emulating a program kill)
** the recent additions of ">> TURN" and "variable LIKE variable" may not work
as expected in all cases
** features that are known to not be portable to every environment yet
(especially when using a different compiler than GCC)
* function with variable-length RETURNING item
* USAGE POINTER, which may need to be manually aligned
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GnuCOBOL 3.0-rc1 released (20180422)
* New GnuCOBOL features
** REPORTWRITER module added
** INDEXED file handling: added support for sparse and split keys
** file handling: added support for [RE]WRITE FILE file FROM source
** DISPLAY ... UPON PRINTER may be redirected to an external command
(new runtime configuration COB_DISPLAY_PRINT_PIPE) or appended to a file
(new runtime configuration COB_DISPLAY_PRINT_FILE, which takes precedence)
** XML GENERATE statement
(note: runtime support needs additional library libxml2)
** JSON GENERATE statement
(note: runtime support needs additional library cJSON)
** Improved support for different compiler extensions (ACUCOBOL, IBM,
Fujitsu, MicroFocus COBOL, Microsoft COBOL, RM/COBOL and more)
** Parser support for many features of different compilers, for example
PIC 1 / USAGE BIT, ACUCOBOL extensions for graphical controls
VALIDATE statement and much more.
Most of them will be fully implemented in a later version...
** Option to dump (partial) data of modules on abort.
Use new cobc option -fdump=<scope> to prepare the module and optional
use new runtime configuration options COB_DUMP_FILE and COB_DUMP_WIDTH
to adjust the dump.
** C interface: new functions cob_set_runtime_option / cob_get_runtime_option
to set/get special runtime options (currently FILE * for trace and printer
output) or to reload the runtime configuration after changing environment
** file handling: include support for a callable EXTFH interface also provided
by several compilers including Micro Focus
This allows users to insert an external file handler while retaining
all of the normal COBOL I/O functions with a possible callback to libcob.
To have the compiled program call `yourfh()` for file I/O use:
`cobc -fcallfh=yourfh`
In turn `yourfh()` may call `EXTFH()` to use I/O functions from GnuCOBOL.
The external file handler can also be directly invoked from COBOL, too,
using `CALL "EXTFH"`.
** Note: Not all flags contained in the FCD3 are handled already **
* Changed cobc options:
** The option -debug (runtime checks) no longer implies -ftrace (option to
trace program flow of the generated module with COB_SET_TRACE).
You may specify -ftrace[all] along -debug if you want to use this feature.
** The option -E (preprocess file) does not imply an output file any more.
If no output file is explicit specified with -o filename.i the output will
be written to stdout (behavior of versions 1.1 is restored).
Requesting output to stdout explicit by using a dash as output name is
also possible.
** Changed options for listing:
The option -tsymbols was replaced by -ftsymbols and therefore can now also
be explicit deactivated by specifying -fno-tsymbols.
New options for suppressing (or explicit requesting) parts of the listing:
-fno-theader suppress all headers from listing while keeping page breaks
-fno-tmessages suppress warning and error summary from listing
-fno-tsource suppress actual source from listing (for example to only
produce the cross-reference)
** The option -fif-cutoff (option to change generated C sources to use
a label + goto for nested if/else) was deactivated to allow the C compiler
to fully control the program flow.
** Please report if you have a need for this option as it will be **
** removed permanently in the next release of GnuCOBOL otherwise. **
* Changes in the COBOL runtime (libcob)
** updated exception handling, GnuCOBOL now only cleans raised exceptions when
requested by SET LAST EXCEPTION TO OFF
** The standard-format for program tracing was changed and is now adjustable
by the runtime configuration option COB_TRACE_FORMAT.
* New build features
** New test suite for manual tests (especially SCREEN I/O),
run with `make checkmanual`.
Note: You may want to adjust the test runner tests/run_prog_manual.sh which
defaults to xterm in GUI environments and screen in terminal environments.
** new configure option --enable-debug-log to allow *internal* tracing
of GnuCOBOL (intended for developers of GnuCOBOL only)
* Too much bug fixes to list here (please check ChangeLogs for full details).
Version 2.3.0 (2020-11-28)
--------------------------
Following features are deprecated and will be removed in a future release:
- Support for the SDL 1.2 library (i.e. SDL 2.x should be used instead)
- SDL 2.x "bUseSdlRenderer" config and "GPU scaling" GUI options
(after HW support for SDL2 is available widely enough)
- The old UAE CPU core (i.e. the new WinUAE CPU core should be used instead)
- Python v2 support in Python scripts (Python 2 was end of life in 2020)
- The "external" disassembler (i.e. use "--disasm uae" instead)
- Hatari XBios(255) API enabled with the "--bios-intercept" option
(i.e. use "--natfeats" & "--cmd-fifo" options and "hconsole" instead)
- The old ~/.hatari configuration file location (use ~/.config/hatari instead)
Emulation:
- FDC / Disk :
- Support for MegaSTE DIP switch register $FF9200
(set floppy drive to HD by default on MegaSTE/TT/Falcon)
- support for DD/HD mode on MegaSTE at $FF860E
(when FDC is set to HD mode, reading DD floppies will fail)
- Support for the 'Disk Change' (DC) signal on TT machines on TT's MFP GPIP4
- Fix: IDE disks with sector size > 512 bytes
- Fix: IDE controller is now always available in Falcon mode, even if
no hard disks have been configured.
- CPU:
- Update CPU core to latest WinUAE 4.4.0 beta : full support for undocument
fields in 68000 bus/address error stack frames, as well as CCR flags for
most of the 680x0 instructions (using a cpu tester program on the real
hardware that checks all possible opcodes' combinations)
- 68030 MMU hardware bus error support + various fixes
- FPU fixes
- Video:
- Improved timing when setting Vsync signal
(same place where video counter is reloaded)
- Handle screen where vertical DE signal is completely disabled
- Better start/end position for the VBlank signal at 50Hz and 60Hz
- Sound:
- Add a better filter for downsampling the internal 250 kHz signal, should
give better results when the YM2149 outputs high frequency sounds
- Fix microwire mask shifting when CPU runs > 8 MHz
- MFP :
- Rewrite MFP code to handle several MFP objects and add support
for the TT's 2nd MFP (not all TT's MFP signals are emulated yet)
- Improved Falcon's DMA sound interrupt on GPIP7 and AER
- Blitter:
- Large rewrite of the blitter's core, improving cycle accuracy and
handling the complex cases where xcount=1 and nfsr=1. Code is slighlty
smaller and closer to the logic of the real hardware
- Handle restart in non HOG mode when the CPU uses a RMW instruction
(eg TAS)
- Improve access to memory regions that would generate a bus error
for the CPU
- Emulate additional RTC/NVRAM registers
- megaSTE should start at 8 MHz, not 16 MHz
Emulator:
- Miscellaneous:
- Fix: freeze at Hatari exit and RS-232 device file changes,
when device file(s) are FIFO(s)
- Fix: when autostarting programs without pre-existing INF file,
enable blitter also with EmuTOS
- Use floppy track's size in bytes to detect DD/HD/ED
(instead of counting sectors)
- Add --lilo debug option for more convenient m68k Linux loading
- Config file handling:
- Support config file values with '=' in them
- Skip reading global config file if HATARI_TEST environment
variable is set
- Memory handling:
- Memory snapshot version increase due to FDC changes
(i.e. old snapshots won't work with new version)
- Accept 10MB as valid ST-RAM amount (max on real MegaSTE/TT machines)
and correct invalid Falcon ST-RAM amounts
- Fix: 24-bit address mode change while emulation is running
(triggered e.g. when TT-RAM is enabled for TT)
- HD images:
- Fix: run-time IDE byte swap change requires IDE re-init
- Fix: TOS booting from A: although SCSI drive was enabled
- Support read-only HD image files, and show error dialogs
for image file open/lock issues
- GEMDOS HD emulation:
- Support FASTLOAD program flag with GEMDOS HD
- GEMDOS HD emulation cartridge assembly functionality is moved almost
completely to emulator side. Fixes Atari side error handling when program
file is not readable, and TOS stack overflows in some rare cases
- Detect DTA re-use to reduce DTA cache usage, grow cache on
demand and give warning if its entries need to be re-cycled
(= cache max size is reached)
- Invalid DTA in Fsnext() return -ENMFIL, like TOS does
- Fix: skip non-existing host files on FSnext() instead
of returning an error (latter broke directory listings)
- Fix: Dsetpath/Dgetpath empty path handling
- Hatari graphics support:
- Low/med-rez line doubling uses less CPU and doubled lines in
"TV" display mode are now drawn at half intensity, not as black
(fixes TV mode being too dark)
- SDL2: "--zoom" option accepts any values between 1.0 - 8.0
- SDL2: "--zoom" option is changed to always enable low resolution
doubling before SDL framebuffer is scaled up (or down) by the zoom
factor. This way Hatari output window is approximately same sized
regardless of emulated Atari resolution, like on a real CRT monitor
- SDL2: scale quality is selected automatically; nearest pixel for sharp
output with integer scaling factors, and linear scaling to smooth out
issues with non-integer scaling and window resizes
- SDL2: Now redundant "nRenderScaleQuality" config option is
removed and "Linear scaling" option in GUI is replaced with
the "GPU scaling" option (=bUseSdlRenderer config option)
- Added new "--screenshot-dir" option to select the folder for screenshots
- Fix: [ffmpeg/video] Invalid PNG signature 0x89504E470D0A1A
- Fix: garbage graphics (by clearing the whole render area)
- Fix: Spec512_StoreCyclePalette when using 16 or 32 MHz
- Input handling:
- Support SDL "Hat" events in addition to "Axes" events
(= support 80's game controllers, also in SDL GUI)
- Map a turbofire button independent of the fire button if the game
controller is capable
- Show mouse grab toggle shortcut key in startup statusbar message
- Center host mouse to Hatari window on Atari resets and resolution
changes only when window is focused and mouse pointer is within it
- Fix: keypad emulation with SDL2
- Fix: simulated (socket API) key input with SDL2
- Profiler:
- Profiler backtrace shows now real caller addresses
and their offsets from the function entry points
(slows profiling of addresses with symbols)
- All profiler outputs have now reasonable limits
(so that they don't flood console)
- Fix: exception in profile post-processor script
(with symbol address aliases)
- Tracing:
- Fix: CPU disassembly trace output doesn't go to specified trace file
- Trace flags can be added and removed instead of needing to
always specify all the relevant ones, both with "--trace"
command line option and debugger "trace" command:
--trace os_base,aes, trace +xbios,bios, trace -bios,-aes
- VDI trace shows names also for NVDI/Speedo/GDOS functions
- VDI & AES trace function numbers are shown in hexadecimals
with 0x prefix like rest of the OS calls
- Debugger:
- New "screenshot" command for saving screen dump to a PNG/BMP file
- "symbols resident" option replaced with "symbols autoload"
option which can be used to completely disable automatic symbol
loading and unloading for programs run through the GEMDOS HD
(helps debugging resident programs started from GEMDOS HD)
- Improvements to UAE and external disassembler disassembly
- UAE disassembler is now default instead of external one
(latter doesn't decode all instructions correctly)
- New "info" subcommands:
"acia", "dmasnd", "ikbd", "mfp", "nvram", "rtc" and "scc"
- Also UAE disassembler can now show the profile info
- "info" command can show AES & VDI information on on their
respective traps without VDI mode/tracing being enabled
- Breakpoint ":info" option to call specified info function
on tracing breakpoint hits (one can now use e.g. ":info vdi"
on VdiOpcode breakpoints)
- Improved symbols info output
- Native features:
- Support for missing NF_SHUTDOWN (reset) sub commands
- Test code for rest of features (except for NF_SCSIDRV)
- When Hatari resets or exits due to emulated program
NF_SHUTDOWN / NF_EXIT call, output user a note about that
Tools and Hatari Python/Gtk UI:
- Python scripts use now "python3" because most current distros don't
anymore install Python v2 by default. To use a script with v2,
change "python3" in its first line to "python2"
Building and unit tests:
- Source repository moved from Mercurial to Git
- Fix: issue with multilib capable cross-compilers
- Only Caps library v5.1 is supported (support for old v4.2 is dropped)
- Obsolete Mudflap option replaced with AddressSanitizer support
- Add tests for GEMDOS HD, fullscreen/overscan display, blitter and Hatari
command FIFO + improve CPU/MMU variant coverage in earlier tests
Documentation:
- Up to date documentation provided at: https://hatari.tuxfamily.org/doc/
- New m68k-linux.txt and m68k-netbsd.txt documents on how to
test m68k Linux and NetBSD under Hatari
- Debugging and profiling information is split from manual.html to
a separate debugger.html file
- Minor improvements
Fixed demos:
- Pacemaker STE demo (end part), when it's run from GEMDOS HD
- Multi scrolls part in Closure by Sync
(regression since Hatari 2.2, vsync in bottom border)
- Fullscreen part in Hard As Ice STE demo by I.C.E.
(screen with no vertical DE signal)
- Fullast Vinner by Troed/Sync
(improved vblank position, partial fix for now)
- Electric Night Falcon demo by Dune
(MFP DMA sound interrupt on timer A using AER)
- Oompa by No Extra (after greetings part)
(blitter access to bus error regions)
- E.K.O System (music should now play in the racing scene)
Fixed programs:
- MS Write (crash), when it's run from GEMDOS HD
- Akaisex program reading AKAI S1000 HD floppies converted to STX
- EmuTos drawing vertical lines with blitter and leaving some trails
(blitter in non HOG mode using TAS intruction to restart)
- Cecile v2.22, now also works if no IDE drive has been configured
- Trans D-Bug Express by PHF (lock when running in megaSTE mode at 16 MHz)
FRRouting
=========
FRR is free software that implements and manages various IPv4 and IPv6 routing
protocols. It runs on nearly all distributions of Linux and BSD as well as
Solaris and supports all modern CPU architectures.
FRR currently supports the following protocols:
* BGP
* OSPFv2
* OSPFv3
* RIPv1
* RIPv2
* RIPng
* IS-IS
...
2.23.0:
[CHANGE] UI: Make the React UI default.
[CHANGE] Remote write: The following metrics were removed/renamed in remote write.
prometheus_remote_storage_succeeded_samples_total was removed and prometheus_remote_storage_samples_total was introduced for all the samples attempted to send.
prometheus_remote_storage_sent_bytes_total was removed and replaced with prometheus_remote_storage_samples_bytes_total and prometheus_remote_storage_metadata_bytes_total.
prometheus_remote_storage_failed_samples_total -> prometheus_remote_storage_samples_failed_total .
prometheus_remote_storage_retried_samples_total -> prometheus_remote_storage_samples_retried_total.
prometheus_remote_storage_dropped_samples_total -> prometheus_remote_storage_samples_dropped_total.
prometheus_remote_storage_pending_samples -> prometheus_remote_storage_samples_pending.
[CHANGE] Remote: Do not collect non-initialized timestamp metrics.
[FEATURE] [EXPERIMENTAL] Remote write: Allow metric metadata to be propagated via remote write. The following new metrics were introduced: prometheus_remote_storage_metadata_total, prometheus_remote_storage_metadata_failed_total, prometheus_remote_storage_metadata_retried_total, prometheus_remote_storage_metadata_bytes_total.
[ENHANCEMENT] Remote write: Added a metric prometheus_remote_storage_max_samples_per_send for remote write.
[ENHANCEMENT] TSDB: Make the snapshot directory name always the same length.
[ENHANCEMENT] TSDB: Create a checkpoint only once at the end of all head compactions.
[ENHANCEMENT] TSDB: Avoid Series API from hitting the chunks.
[ENHANCEMENT] TSDB: Cache label name and last value when adding series during compactions making compactions faster.
[ENHANCEMENT] PromQL: Improved performance of Hash method making queries a bit faster.
[ENHANCEMENT] promtool: tsdb list now prints block sizes.
[ENHANCEMENT] promtool: Calculate mint and maxt per test avoiding unnecessary calculations.
[ENHANCEMENT] SD: Add filtering of services to Docker Swarm SD.
[BUGFIX] React UI: Fix button display when there are no panels.
[BUGFIX] PromQL: Fix timestamp() method for vector selector inside parenthesis.
[BUGFIX] PromQL: Don't include rendered expression on PromQL parse errors.
[BUGFIX] web: Fix panic with double close() of channel on calling /-/quit/.
[BUGFIX] TSDB: Fixed WAL corruption on partial writes within a page causing invalid checksum error on WAL replay.
[BUGFIX] Update config metrics prometheus_config_last_reload_successful and prometheus_config_last_reload_success_timestamp_seconds right after initial validation before starting TSDB.
[BUGFIX] promtool: Correctly detect duplicate label names in exposition.
Rocks'n'Diamonds 4.2.0.5:
Here’s another bugfix release that fixes and adds the following:
fixed handling of player at fake acid for EM engine
fixed wrap-around with entering EM style doors for EM engine
fixed activating robot wheel at wrap-around position for EM engine
fixed some elements and properties when reading native DC2 levels
added Emscripten support for running R’n’D in a web browser
fixed compiling on OS/2 (ArcaOS, in fact)
fixed some compiler warnings for newer versions of GCC
Rocks'n'Diamonds 4.2.0.4:
This is yet another bugfix release that fixes and adds the following:
re-added accidentally removed program icon
fixed bug with text input / text area gadgets when pressing “Escape” key
fixed bug with clicked text area gadgets marking level as changed
improved inserting level sketch from clipboard to level editor
fixed some game elements when inserting level sketch from clipboard
added setting game engine when inserting level sketch from clipboard
fixed workaround for color key bug in SDL 2.0.12 that breaks transparency
improved handling “CONF” and “PROPERTIES” buttons in level editor
fixed bug with virtual buttons that may be broken after rotating device
increased maximum tape length for playing extreme levels like “Zelda II”
fixed graphical bugs if digging or collecting causes player relocation
Rocks'n'Diamonds 4.2.0.3:
This is another bugfix release which fixes and adds the following:
fixed some problems with wrap-around levels in Emerald Mine engine
added full compatibility for wrap-around levels in Emerald Mine engine
fixed single-step mode for wrap-around levels in Emerald Mine engine
fixed playing tapes recorded with old Emerald Mine game engine
added command “autofix” to fix tapes recorded with old EM game engine
fixed key shortcut to start/end game (which was broken since 4.2.0.0)
fixed some other key shortcuts that require entering upper case letters
added menu command “:undo-tape” to undo/restore last recorded tape
fixed potential crash bug that may occur when loading custom artwork
fixed single-step mode when using custom elements with mouse click events
added creating undo/redo snapshots when using mouse click events
fixed problems with virtual buttons and showing envelopes on Android
improved startup speed by optimizing parsing of parameter values
improved handling output of warnings, errors and debug messages
fixed showing source date on version page of info screen menu
added showing commit hash on version page of info screen menu
Rocks'n'Diamonds 4.2.0.2:
This is mainly a bugfix release which fixes and adds the following:
fixed broken tapes (for various reasons) recorded with old EM engine
fixed support for initially moving spring in EM game engine
added support for initially moving spring to R’n’D game engine
fixed potential crash bug when reading from artwork info cache
fixed wrong eater content when loading native EM levels
added support for variable number of eater arrays for EM engine
fixed vsync mode when not using OpenGL renderer (like “Metal” on Mac)
added option for setting hint for render driver to setup config file
added displaying render driver on info screen page
Rocks'n'Diamonds 4.2.0.1:
This is a bugfix release which fixes the following bugs:
fixed loading dynamic libraries shipped with the Linux package
fixed level editor key shortcuts (broken by regression)
fixed support for wrap-around levels in EM engine for old tapes
Rocks'n'Diamonds 4.2.0.0:
The most important change is the long-awaited update of the Emerald Mine game engine, which was based on an old version of David Tritscher’s “Emerald Mine for X11” from 2000/2001. The new game engine uses a more recent code base from 2009, which contains new features and bug fixes and improves the compatibility of the game engine with many levels from the Emerald Mine Club level collection (while preserving compatibility of already recorded tapes).
The most important Emerald Mine game engine related changes are:
support for wrap-around levels (like level 80 from level set “Ruppelmine 2”)
improved handling of chain-explosions of the “bug” game element
improved handling of the “fake acid” game element
improved handling of various other game elements (like burning dynamite)
As another important improvement, the whole build system was updated for all platforms to support today’s development tools and to support the most recent versions of the SDL libraries, which removes several problems when building the game on current systems. This also includes native 64-bit support for the Windows version.
Here’s an overview of the most important build system changes:
added support for cross-compiling to Windows 64-bit platform
added CPU architecture (32/64 bit) to version info screen
added build support for older versions of Mac OS X
changed build system for Android from Ant to Gradle
updated SDL libraries to the latest versions for all platforms
The following features and bug fixes were added to custom elements:
added being able to use CE condition “CE value/score gets 0”
added mouse click events to CE change events (experimental)
added new change action “move player new” to CE change actions
added support for tapes with both keyboard/joystick and mouse actions
fixed bug with reanimating killed player by CE condition
The following additions and fixes are related to global animations:
added option to generally set global animations to block clicks
added missing handling of animation mode “random” for global animations
fixed drawing global animations when switching screens without fading
Additionally, there are the following new features and bug fixes:
added workaround for a bug in SDL 2.0.12 which prevents transparency
fixed potential crash bug if personal user level set cannot be found
changed move speed for some elements for older game engine versions
fixed element property that caused levels/tapes to be unsolvable
moved game engine settings to separate setup menu screen
fixed bug with scrollbar still active on virtual buttons config screen
replaced ILBM graphics source files in repository with converted PNG files
fixed text event handling for newer SDL versions on Android
fixed screen rotation for newer SDL versions on Android
fixed screen size for newer SDL versions on Android
updated custom game controller mappings for newer SDL versions on Android
added disabling overlay touch buttons when using joystick
libyang is a YANG data modelling language parser and toolkit written (and
providing API) in C. The library is used e.g. in
* Parsing (and validating) schemas in YANG format.
* Parsing (and validating) schemas in YIN format.
* Parsing, validating and printing instance data in XML format.
* Parsing, validating and printing instance data in JSON format
12/12/2020 (v1.03):
What’s new:
* Improved FT2 accuracy
* Alt-Backspace alternative for insert keybindings
* Improved mousewheel / touchpad scrolling for Windows/OSX/SDL2
* Option to invert mousewheel for pattern editor
* New flanger effect
* Allow quarter periods in sample generator
* Click and drag to move selection in pattern editor
* More intuitive cutting/pasting of partial FX commands
* Allow selections by clicking outside the pattern bounds
* Easier and more intuitive sample selection resizing
Bugs fixed:
* Various compatibility fixes
* Jam channels stop working after applying settings
* Improper WAV chunk parsing for odd sizes
* Multiple heap & buffer overflow vulnerabilities
* MacOS compatibility
* Inverted samoples during signed to unsigned conversion
* …and more, see git commit history for details