3.1.0
Better offset-overflow handling in the subsetter library. (Garret Rieger)
Improved Unicode 14 properties in the USE shaper, and various other USE shaper fixes. (David Corbett)
MATH and COLR v1 tables subsetting support, and various other subsetter fixes. (Qunxin Liu)
Support for Pwo Karen / Ason Chin medial la. (Simon Cozens)
Apply GPOS positioning when substituting with morx table, if kerx is missing. (Behdad Esfahbod)
Apply calt and clig features across syllable boundaries in Indic shaper. (Behdad Esfahbod)
Meson option for enabling Graphite 2 has been renamed to graphite2.
Build and documentation fixes.
New API:
+hb_buffer_set_not_found_glyph()
+hb_buffer_get_not_found_glyph()
pkglint fixes:
add comment to patch
changes from changelog:
* Release 1.9.0 *
03-Nov-2020 Troy A. Griffitts
Added new compile option USECXX11TIME which will provide a default
SWLog::logTimedInformation impl using C++11 facilities
Added new compile options STRIPLOGD and STRIPLOGI which will compile
out engine calles to SWLog::logDebug and SWLog::logInformation
and SWLog::logTimedInformation for runtime optimization
Extended Cordova plugin to include SWModule::setEntry,
SWMgr::getPrefixPath
Isolated all File IO calls to FileMgr
Merged in Xiphos' Windows patch to FileMgr to allow full legal Unicode
range in file path names.
Improved TEI -> HTML output path
Completed camelCase of all public non-deprecated API methods
Added the concept of Utility Modules to engine which are intended to
assist clients in building a robust user experience but are not
intended for exposure to the end user in the same way as
traditional SWORD modules.
Added the concept of [Pref Abbrevs] to locale files to assist mobile
developers choose a localized abbreviation for Bible book
names.
Added facility to set timeouts for SWTransport classes
Many locale updates and new locales added
Improved support for many markup tags
Many bug fixes
Changes to promote safe multi-threaded use
Expanded examples
25-Jul-2020 Troy A. Griffitts
Added ZipCompress::unTarGZ to provide a library facility to untargz
a file on all supported platforms.
07-Jul-2020 Troy A. Griffitts
Renamed __[su][8,16,32,64] defines to SW_[su][8,16,32,64]
20-Apr-2020 Troy A. Griffitts
Extended StringMgr to include lowerUTF8, isUpper, isLower, isDigit,
isAlpha
Added personalization facility for cipher keys
10-Sep-2018 Troy A. Griffitts
Added intra-verse search support
01-Nov-2017 Troy A. Griffitts
Added bindings: Android and cordova
01-Sep-2017 Troy A. Griffitts
Adding French mapping data.
Patch submitted by domcox
21-May-2017 Troy A. Griffitts
Added --with-icuregex option to use ICU regex engine
Overview of changes in GLib 2.70.1
==================================
* Fix network changes not being signalled from NetworkManager (work by
Julian Andres Klode)
* Fix build when building with --fatal-meson-warnings (work by Eli Schwartz) (!2304)
* Bugs fixed:
- g_network_monitor_nm never updates on connection change (listens for signal on wrong dbus interface)
- !2245 gdesktopappinfo: Do not call xterm when it does not exist, inform the caller the launch failed
- !2253 Backport !2251 âGString: Bump minimum sizeâ to glib-2-70
- !2256 Backport !2254 âSmall optimization for g_object_setâ to glib-2-70
- !2259 Backport !2257 âFix documentation for g_dbus_object_manager_get_object().â to glib-2-70
- !2262 Backport !2244 âgutils: Avoid segfault in g_get_user_database_entryâ to glib-2-70
- !2271 Backport !2266 âfix uninitial variableâ to glib-2-70
- !2276 Backport !2274 âDo not try to access errno after calling getpwnam_r.â to glib-2-70
- !2300 Backport !2285 âfix issues found by svace static code analyzerâ to glib-2-70
- !2301 Backport !2293 âglib-private: Fix MSVC build with AddressSanitizerâ to glib-2-70
- !2302 Backport !2291 âgnetworkmonitornm: Stop using removed PropertiesChanged signalâ to glib-2-70
- !2304 meson: fix warnings for extract_all_objects function
0.60.0:
run_target can now be used as a dependency
The Python Modules dependency method no longer accepts positional arguments
Override python installation paths
New subprojects packagefiles subcommand
Deprecated project options
More efficient static linking of uninstalled libraries
gnome.yelp variadic argument deprecation
static keyword argument to meson.override_dependency()
dependency() sets default_library on fallback subproject
install_emptydir function
Cython can now transpile to C++ as an intermediate language
New custom dependency for iconv
Unknown options are now always fatal
Install DESTDIR relative to build directory
Java Module
Link tests can use sources for a different compiler
Relax restrictions of str.join()
Improvements for the Rustc compiler
The qt modules now accept generated outputs as inputs for qt.compile_*
Waf support in external-project module
Comparing two objects with different types is now an error
Installation tags
Compiler.unittest_args has been removed
Dependencies with multiple names
i18n module now returns gettext targets
Added support for CLA sources when cross-compiling with the C2000 toolchain
Support for clippy-driver as a rustc wrapper
Force Visual Studio environment activation
MSVC compiler now assumes UTF-8 source code by default
Add support for find_library in Emscripten
Optional custom_target() name
• i3bar: fix crash with multiple monitors
• xmlto: fix broken .TH line by extending title length
• i3-msg: fix --raw short form (-r) in manpage
• libi3: add missing sys/stat.h header
• use getcwd(NULL, 0) instead of GNU extension get_current_dir_name()
Release 21.11.0:
core:
* Fix rendering of some non-standard confirming annotations
* Support rendering of some non-standard Type3 charprocs. Issue #1150
* TextOutputDev: Respect orientation when selecting words. Issue #499
* CairoOutputDev: Don't override the antialias settings from the cairo_t
* StructElement: support MCID in XObjects
* Fix detection of monospace fonts
* Ignore Adobe-Identity for non embedded CID fonts
* PageLabelInfo::labelToIndex: work on some special no style intervals
* Fix crash in malformed files
* Minor code improvements
utils:
* pdfinfo: add -url option to print all URLs in a PDF
* pdftohtml: document what zoom means in regard to DPI
qt6:
* Require Qt 6.1
* Minor code improvements
Release 21.10.0:
core:
* Add support for setting custom stamp annotations
* Add default appearance for the well known stamp names
* Correct encoding of signature's properties Reason & Location
* Splash: Fix rendering of some odd patterns
* SignatureHandler::validateCertificate: Add option to not do OCSP revocation check
* SignatureHandler::validateCertificate: Add support for AIA fetching to verify certificates
* greallocn: if memory allocation fails, free the previous pointer to avoid memory leak
* Fix issues with malformed files
* Internal code improvements
utils:
* pdfsig: Add a way to list certificate nicknames
* pdfsig: You can now add signatures from pdfsig
* pdfsig: Add option to not do OCSP revocation check
* pdfsig: Add option for AIA fetching to verify certificates
* pdfinfo: Add -custom option to print custom metadata
* pdfinfo: add metadata flags
qt:
* Add support for setting custom stamp annotations
* Add getters for signature's properties Reason & Location
* Internal code improvements
glib:
* Remove incorrect PopplerAttachment deprecation
Notmuch 0.34.1 (2021-11-03)
===========================
Library
-------
Fix for deallocation and nulling of output parameter for
notmuch_database_{open_with,create_with,load}_config when errors
occur. This change fixes a potential use-after-free bug that has been
present since 0.32. This release also improves the documentation of
status returns for the same 3 functions.
ver 0.23.3 (2021/10/31)
* protocol
- add optional position parameter to "add" and "playlistadd"
- allow range in "playlistdelete"
* database
- fix scanning files with question mark in the name
- inotify: fix use-after-free bug
* output
- alsa: add option "stop_dsd_silence" to work around DSD DAC noise
* macOS: fix libfmt related build failure
* systemd: add "RuntimeDirectory" directive
== [8.2.0] 2021-09-29 ==
* Add API for accessing incremental GC time limit with nanosecond precision
* Add API function to force start of incremental collection
* Add GC_ prefix to scan_ptr and some other static variables (refactoring)
* Add GC_get/set_disable_automatic_collection API
* Add I_HOLD_LOCK assertion to expand_hp_inner and related functions
* Add assertion on free-list argument and result of GC_new_kind
* Add assertion that GC is initialized to base incremental_protection_needs
* Add assertions that GC_page_size is initialized
* Add cordtest, staticrootstest, test_cpp, tracetest, disclaim tests (CMake)
* Add debug messages on thread suspend/resume (Win32)
* Add dummy testing of GC_incr_bytes_allocd/freed
* Add table of contents in gcdescr.md
* Add testing of GC_CALLOC/MALLOC_EXPLICITLY_TYPED (gctest)
* Adjust formatting of numbered lists in README.md to match other .md files
* Adjust highlighting of API prototypes in gcinterface.md
* Adjust macro def/usage for AVR32, CRIS, NETBSD, OPENBSD, SH4 in gcconfig.h
* Adjust printf calls in gctest check_heap_stats so that each has new-line
* Allow incremental GC on Cygwin
* Allow memory unmapping in case of MPROTECT_VDB
* Allow to disable GWW or mprotect-based VDB at build
* Allow to disable Glibc FPU exception mask and TSX workarounds (Linux)
* Allow to disable __builtin_return_address(1) usage (x86 and x64)
* Allow to specify custom value of LOG_PHT_ENTRIES
* Always abort on failure to access /proc/self/maps (Linux)
* Always define default_push_other_roots (code refactoring)
* Avoid gcc stringop-overflow warning for intended overflow in smashtest
* Avoid initial 3ms pause on world stop/start with GC_retry_signals (Linux)
* Build cord.lib by Makefile.direct, NT_MAKEFILE, OS2_MAKEFILE, WCC_MAKEFILE
* Build gc as a shared multi-threaded library by default (CMake)
* Build gccpp library by Makefile.direct, NT_MAKEFILE and WCC_MAKEFILE
* Build gctba library
* Build shared libraries by default (WCC_MAKEFILE)
* Change CLOCK_TYPE to timespec for Nintendo Switch (code refactoring)
* Change EMSCRIPTEN macro for internal use to no-underscore format
* Change log_size fields of finalizer to unsigned type (code refactoring)
* Change type of toggleref_array_size/capacity to size_t (code refactoring)
* Check leak of objects allocated by CRT malloc in gctest (MS VC)
* Check real-symbols are already initialized in pthread_join/detach
* Collapse multiple includes of windows.h (code refactoring)
* Comments reformatting in mark.c to properly delimit sentences
* Compile de test GUI app with resources (CMake)
* Compile gc.c unless building static libraries (NT_MAKEFILE, WCC_MAKEFILE)
* Compile msvc_dbg.c by CMake script (MS VC)
* Declare API function and print amount of memory obtained from OS
* Define GC_win32_free_heap API function for all Windows targets
* Define STATIC macro to static by default
* Depend number of fork_a_thread calls on NTHREADS (gctest)
* Detect dladdr() presence in CMake script
* Detect presence of execinfo.h system header in CMake script
* Detect presence of getcontext and dl_iterate_phdr in CMake script
* Detect sigsetjmp() availability in CMake script
* Disable Clang/GCC aliasing optimization in CMake script by default
* Do not build tests by default (Makefile.direct and other Makefiles)
* Do not build the tests by default (CMake)
* Do not call GC_push_conditional unless PROC_VDB
* Do not call add_to_our_memory with null pointer (refactoring)
* Do not compile pthread_*.c files in Cygwin or MSYS (CMake)
* Do not define GC_write_cs for Xbox One target
* Do not define HAVE_NO_FORK for all Unix-like systems
* Do not hard-code CMAKE_DL_LIBS value and install paths (CMake)
* Do not hard-code finalizable objects limit which triggers GC
* Do not update scratch_last_end_ptr unless used by reg dynamic libraries
* Document GC_incr_bytes_allocd/freed API function
* Eliminate '(long)size<=0 is always false' cppcheck FP
* Eliminate 'Consecutive return is unnecessary' cppcheck style warning
* Eliminate 'accessing GC_dont_gc without lock' in GC_init code defect FP
* Eliminate 'bytes_freed access w/o lock in incr_bytes_free' code defect FP
* Eliminate 'checking if unsigned i < 0' cppcheck FP in is_heap_base
* Eliminate 'hash_val value is never used' cppcheck false positive
* Eliminate 'passing tainted var maps_buf to tainted sink' code defect FP
* Eliminate 'retry_cnt is assigned value but never used' cppcheck FP
* Eliminate 'stop variable is always 0' compiler warning in print_callers
* Eliminate 'struct member os_callback is never used' cppcheck warning
* Eliminate 't->flags not atomically updated' code defect FP
* Eliminate 'tmpl might be accessed at non-zero index' cppcheck error
* Eliminate GCC warning of unsafe __builtin_return_address(1)
* Eliminate code duplication in reclaim_clear and disclaim_and_reclaim
* Eliminate double lock code defect false positive in generic_lock
* Eliminate memory leak reported in add_current_malloc_heap at exit (Win32)
* Emscripten single-threaded support (detect stack base, push registers)
* Enable CMake-based build for Borland and Watcom compilers
* Enable compilation without C runtime (Win32)
* Enable fork testing in single-thread builds (Unix-like)
* Enable mprotect-based incremental GC for Linux/arm and Linux/aarch64
* Enable true incremental collection even if parallel marker is on
* Enable use of __builtin_unwind_init() if clang-8 or later
* Ensure ELFSIZE is defined in dyn_load.c for OpenBSD (code refactoring)
* Ensure add_to_heap_inner arguments are valid (refactoring)
* Ensure all getters and setters are run at least once by gctest (pthreads)
* Export CMake targets with namespace BDWgc
* Fix 'const obj must be initialized if not extern' error in gc_alloc_ptrs.h
* Fix ./libgc.la dependency on FreeBSD (Automake)
* Fix HOST determination in CMake script
* Fix copyright message in de_win.rc, gc_cpp.cc, ec.h and specific.h
* Fix missing OS_TYPE definition for some targets
* Fix mmap(PROT_NONE) failure if RLIMIT_AS value is low (Linux)
* Generate cordtest and de executable files in GC base folder
* Generate pkg-config metadata file (CMake)
* Get rid of some non-ELF ifdefs (code refactoring)
* Handle potential incomplete buffer read in GC_linux_main_stack_base
* Implement GET_TIME for Nintendo Switch
* Increase NTHREADS value in tests if code coverage analysis
* Install docs and man page if enable_docs (CMake)
* Install gc_gcj.h and gc_pthread_redirects.h only if appropriate
* Log abort message details even if not print_stats (unless SMALL_CONFIG)
* Mark buffer returned by get_maps as const (code refactoring)
* Move C++ GC_ATTR_EXPLICIT and GC_NOEXCEPT definition to gc_config_macros.h
* Move GC state non-pointer variables into GC_arrays (code refactoring)
* Move GC state pointer variables into GC_arrays
* Move GC_scratch_recycle_inner() to alloc.c (refactoring)
* Move GC_throw_bad_alloc definition to new C++ file
* Move QNX and Emscripten macro definitions to proper place in gcconfig.h
* Move definition of GC_n_mark_procs and GC_n_kinds from mark.c to misc.c
* New API (GC_set_markers_count) to control number of parallel markers
* New API function to clear GC exclusion table
* New API function to get size of object debug header
* New API standalone functions to acquire and release the allocator lock
* New CMake option (disable_gc_debug) to remove debugging code
* New CMake option (disable_handle_fork) to disable fork handling completely
* New macro (CONSOLE_LOG) to enable logging to console on Win32
* New macro (GCTEST_PRINT_VERBOSE) to enable verbose logging in test.c only
* New macro (NO_MSGBOX_ON_ERROR) to avoid message box on GC abort (Win32)
* OpenBSD does not use ELF_CLASS (code refactoring)
* Pass -D GC_DLL -fvisibility=hidden if default configure build is requested
* Pass -no-undefined linker flag if building shared libraries (CMake)
* Print pid of child processes if verbose logging (gctest)
* Read environment variables from a file on WinCE (CMake script)
* Reduce stack-allocated buffer in get_nprocs from 4KB to 1.7KB
* Refine flags field comment in pthread_support.h
* Reflect result of VDB selection at runtime in incremental_protection_needs
* Reformat code of GC_push_roots
* Reformat gc.man (wrap long lines)
* Reformatting and code refactoring of CMake script
* Remove 'current users' section from overview.md
* Remove 'distributed ports', 'scalable versions' sections from overview.md
* Remove AC_MSG_RESULT for THREADDLLIBS (dgux386)
* Remove Borland-specific Makefile and gc.mak script
* Remove GC_eobjfreelist variable in typd_mlc.c (code refactoring)
* Remove GC_gcj_malloc_initialized variable (code refactoring)
* Remove Linux-specific commands for building cord/de from Makefile.direct
* Remove Win32 main_thread static variable if threads discovery is disabled
* Remove code duplication between GC_unmap and GC_unmap_gap (refactoring)
* Remove code duplication between PROTECT and UNPROTECT macros (refactoring)
* Remove commented out assignment of gc_use_mmap in configure (refactoring)
* Remove dash characters comprising prefix of some verbose logs (gctest)
* Remove dependency on user32.dll import library from static libgc (Win32)
* Remove documentation specific to particular old BDWGC releases
* Remove duplicate Linux-related macro definitions in gcconfig.h
* Remove duplicate macro definitions in gcconfig.h except for Linux
* Remove gcmt-dll generation, rename libgc-lib.a to libgc.a (CMake)
* Remove goto statement in print_callers (code refactoring)
* Remove limit on number of heap sections
* Remove new_gc_alloc.h file
* Remove redundant GC_with_callee_saves_pushed call in multi-threaded builds
* Remove redundant check of GC_free argument in register_finalizer
* Remove redundant type casts in backgraph HEIGHT_UNKNOWN/IN_PROGRESS
* Remove unused GC_prev_heap_addr (refactoring)
* Remove unused STACK_GRAN macro definitions (code refactoring)
* Remove unused sparc_sunos4_mach_dep.s file
* Remove useless empty statements after block ones (refactoring)
* Remove weakobj_free_list variable in disclaim_weakmap_test (refactoring)
* Rename READ to PROC_READ in os_dep.c (code refactoring)
* Rename cord/cord test executable to de (CMake)
* Rename ext_descr to typed_ext_descr_t (code refactoring)
* Rename gc64.dll to gc.dll and gc[64]_dll.lib to gc.lib in NT_MAKEFILE
* Rename gc68060.lib to gc.lib, cord/cord68060.lib to cord.lib in SMakefile
* Rename make_as_lib option to enable_static in NT_MAKEFILE and WCC_MAKEFILE
* Rename nothreads option to disable_threads in NT_MAKEFILE
* Repeat run_one_test NTHREADS times by gctest if single-threaded
* Replace "msecs" with "ms" in all comments and messages
* Replace 'stack base' with 'stack bottom' in the documentation
* Replace SN_TARGET_ORBIS to PLATFORM_* and GC_NO_* macros
* Replace _M_AMD64 macro with _M_X64 (code refactoring)
* Replace find_limit_openbsd to find_limit_with_bound (OpenBSD 5.2+)
* Replace obsolete AC_HELP_STRING with AS_HELP_STRING (refactoring)
* Replace push_one calls with push_many_regs one for Win32 thread context
* Report memory region bounds and errno on GC_unmap/remap failure
* Report presence of process fork testing (gctest)
* Report time with a nanosecond precision where available
* Retry suspend/resume signals on all platforms by default
* Run tree and typed tests in child process (gctest)
* Set GC_collecting hint for GC_collect_a_little_inner calls (pthreads)
* Set name of GC marker threads
* Set so-version for installed shared libraries (CMake)
* Simplify logged message in scratch_recycle
* Simplify loops of collect_a_little/stopped_mark invoking mark_some
* Support -fvisibility=hidden option in CMake script
* Support CFLAGS_EXTRA to pass extra user-defined compiler flags (CMake)
* Support FreeBSD/RISC-V, Linux/arc, LoongArch, OpenBSD/powerpc64
* Support header files installation (CMake)
* Support most configure options in CMake script
* Suppress warnings in test_tinyfl() of gctest reported by Watcom C complier
* Take nanoseconds into account when updating full_gc_total_time
* Turn off C++ API by default, export it in gccpp library (CMake)
* Turn on automatic fork() handling by default on Android
* Update README.cmake regarding Unix, C++ and tests
* Update libgc.so version info to differentiate against v8.0.x
* Update the ASCII diagrams describing the tree structure for pointer lookups
* Update the documentation to match the current GC implementation
* Upgrade cmake_minimum_required(version) to 3.1
* Use CreateThread without GC_ prefix in gctest (code refactoring)
* Use KB/MB/GB abbreviations uniformly across entire documentation
* Use USE_MMAP_ANON when USE_MMAP is configured on OpenBSD
* Use a specific Emscripten allocator for Tiny
* Use atomic primitives for Sony PlayStation Portable 2 and PS4
* Use better precision Windows timers
* Use clock_gettime() instead of clock() on Cygwin and Linux
* Use compiler TLS on FreeBSD and NetBSD
* Use mprotect-based VDB on PowerPC and S390 (Linux)
* Use soft dirty bits on Linux (i386, powerpc, s390, x86_64)
* Workaround 'condition result<=0 is always false' cppcheck FP in get_maps
* Workaround 'push_regs configured incorrectly' error (GCC-11)
* Workaround 'same value in both branches of ternary operator' cppcheck FP
* Workaround various cppcheck false positives
Version 1.0.3 Release Notes (October 14, 2021)
==============================================
Potentially breaking change:
- argument ``x`` is now required for the ``guess`` method of Models
To get reasonable estimates for starting values one should always supply both ``x`` and ``y`` values; in some cases it would work
when only providing ``data`` (i.e., y-values). With the change above, ``x`` is now required in the ``guess`` method call, so scripts might
need to be updated to explicitly supply ``x``.
Bug fixes/enhancements:
- do not overwrite user-specified figure titles in Model.plot() functions and allow setting with ``title`` keyword argument
- preserve Parameters subclass in deepcopy
- coerce ``data`` and ``indepdent_vars`` to NumPy array with ``dtype=float64`` or ``dtype=complex128`` where applicable
- fix collision between parameter names in built-in models and user-specified parameters
- correct error message in PolynomialModel
- improved handling of altered JSON data
- map ``max_nfev`` to ``maxiter`` when using ``differential_evolution``
- correct use of noise versus experimental uncertainty in the documentation
- specify return type of ``eval`` method more precisely and allow for plotting of (Complex)ConstantModel by coercing their
``float``, ``int``, or ``complex`` return value to a ``numpy.ndarray``
- fix ``dho`` (Damped Harmonic Oscillator) lineshape
- reset ``Minimizer._abort`` to ``False`` before starting a new fit
- fix typo in ``guess_from_peak2d``
Various:
- update asteval dependency to >= 0.9.22 to avoid DeprecationWarnings from NumPy v1.20.0
- remove incorrectly spelled ``DonaichModel`` and ``donaich`` lineshape, deprecated in version 1.0.1
- remove occurrences of OrderedDict throughout the code; dict is order-preserving since Python 3.6
- update the contributing instructions
- (again) defer import of matplotlib to when it is needed
- fix description of ``name`` argument in ``Parameters.add``
- update dependencies, make sure a functional development environment is installed on Windows
- use ``setuptools_scm`` for version info instead of ``versioneer``
- transition to using ``f-strings``
- mark ``test_manypeaks_speed.py`` as flaky to avoid intermittent test failures
- update scipy dependency to >= 1.14.0
- improvement to output of examples in sphinx-gallery and use higher resolution figures
- remove deprecated functions ``lmfit.printfuncs.report_errors`` and ``asteval`` argument in ``Parameters`` class
.. _whatsnew_102_label:
Version 1.0.2 Release Notes (February 7, 2021)
==============================================
Version 1.0.2 officially supports Python 3.9 and has dropped support for Python 3.5. The minimum version
of the following dependencies were updated: asteval>=0.9.21, numpy>=1.18, and scipy>=1.3.
New features:
- added two-dimensional Gaussian lineshape and model
- all built-in models are now registered in ``lmfit.models.lmfit_models``; new Model class attribute ``valid_forms``
- added a SineModel
- add the ``run_mcmc_kwargs argument`` to ``Minimizer.emcee`` to pass to the ``emcee.EnsembleSampler.run_mcmc`` function
Bug fixes:
- ``ModelResult.eval_uncertainty`` should use provided Parameters
- center in lognormal model can be negative
- restore best-fit values after calculation of covariance matrix
- add helper-function ``not_zero`` to prevent ZeroDivisionError in lineshapes and use in exponential lineshape
- save ``last_internal_values`` and use to restore internal values if fit is aborted
- dumping a fit using the ``lbfgsb`` method now works, convert bytes to string if needed
- fix use of callable Jacobian for scalar methods
- preserve float/int types when encoding for JSON
- better support for saving/loading of ExpressionModels and assure that ``init_params`` and ``init_fit`` are set when loading a ``ModelResult``
Various:
- update minimum dependencies
- improvements in coding style, docstrings, CI, and test coverage
- fix typo in Oscillator
- add example using SymPy
- allow better custom pool for emcee()
- update NIST Strd reference functions and tests
- make building of documentation cross-platform
- relax module name check in ``test_check_ast_errors`` for Python 3.9
- fix/update layout of documentation, now uses the sphinx13 theme
- fixed DeprecationWarnings reported by NumPy v1.2.0
- increase value of ``tiny`` and check for it in bounded parameters to avoid "parameter not moving from initial value"
- add ``max_nfev`` to ``basinhopping`` and ``brute`` (now supported everywhere in lmfit) and set to more uniform default values
- use Azure Pipelines for CI, drop Travis
Version 1.1.1 (2021/03/26)
--------------------------
- Strip UTF-16 BOM (U+FEFF) from start of file
- Message context (msgctxt) support for MO files
- Dropped Python < 2.7 support
- Updated docs and README after switch from Bitbucket to Github
Pkgsrc changes:
Set license
Buildlink file added
Changes from NEWS file:
Changes in 1.5.21 (25 March 2021)
* Fixed: Avoid usage of strlen when creating MAT_T_UTF8 encoded
character array (regression of v1.5.20)
* Fixed reading of compression flag from HDF5 MAT file
Changes in 1.5.20 (21 March 2021)
* Added support for writing MAT_T_UTF8 encoded character array
to HDF5 MAT file (by conversion to UTF-16 if in BMP)
* Updated cmake-conan to version 0.16.1
* Fixed bug with size_t arguments of logging function calls
* Fixed bug reading past EOF from (crafted) MAT file
* Fixed bug writing MAT_T_UTF8 encoded character array to v5
MAT file
* Fixed printing of MAT_T_UTF8 encoded character array
* Several other fixes, for example for memory leaks
Changes in 1.5.19 (6 November 2020)
* Fixed support for CMake (>= v3.19.0) build system
* Fixed bug reading variable from v4 MAT file
(regression of v1.5.18)
Changes in 1.5.18 (17 September 2020)
* Added support of HDF5 v1.12.x
* Added support for UTF-8 encoded file name on Windows (MSVC)
(requires HDF5 >= v1.11.6 for HDF5 MAT file)
* Added support for reading uncompressed v5 MAT file generated
by SWAN
* Added error codes to public interface
* Added support for CMake build system
* Fixed read performance of numeric array from compressed v5
MAT file
* Fixed support for VS2005 and VS2008 (MSVC)
(regression of v1.5.15)
* Fixed mktemp linker warning when using GNU linker
* Fixed bug writing struct array to uncompressed v5 MAT file
on big endian architecture (regression of v1.5.10)
* Fixed bug writing cell array to uncompressed v5 MAT file
on big endian architecture
* Fixed bug reading variable name from v4 MAT file
(CVE-2019-17533)
* Fixed bug reading variable name from (crafted) compressed v5
MAT file
(CVE-2020-19497)
* Fixed bug reading dimensions from (crafted) compressed v5 MAT
file (CVE-2019-20017, CVE-2019-20018, CVE-2019-20020,
CVE-2019-20052)
Changes in 1.5.17 (18 July 2019)
* Fixed bug reading struct array with packed field names from v5
MAT file
* Fixed bug reading past EOF from (crafted) uncompressed v5 MAT
file
Changes in 1.5.16 (25 June 2019)
* Fixed error handling on integer addition/multiplication
overflows (CVE-2019-13107)
Changes in 1.5.15 (29 March 2019)
* Added new API function Mat_GetHeader to retrieve header string
of a MAT file
* Fixed integer multiplication overflows when calculating total
number of elements from (crafted) MAT file
* Fixed bug reading character array from (compressed) v5 MAT
file (regression of v1.5.14)
* Fixed number of variables for repeated calls of Mat_GetDir
* Fixed memory leak in Mat_VarFree for function class
Changes in 1.5.14 (11 March 2019)
* Deprecated usage of Mat_VarWriteInfo/Mat_VarWriteData in favor
of Mat_VarWrite/Mat_VarWriteAppend
* Fixed bug reading dimensions from (crafted) compressed v5 MAT
file (CVE-2019-9026, CVE-2019-9027, CVE-2019-9028,
CVE-2019-9029, CVE-2019-9030, CVE-2019-9031, CVE-2019-9032,
CVE-2019-9033, CVE-2019-9034, CVE-2019-9035, CVE-2019-9036,
CVE-2019-9038)
* Fixed bug reading name (> 24 characters) from v5 MAT file
(regression of v1.5.13)
* Fixed bug printing datatype in Mat_VarPrint (CVE-2019-9037)
Changes in 1.5.13 (22 October 2018)
* Fixed bug calculating size for zero-rank variables in
Mat_VarGetSize
* Fixed bug reading dimensions from (crafted) v5 MAT file
* Fixed bug reading tag and class from (crafted) v5 MAT file
* Fixed integer multiplication overflows
* Fixed HDF5 compatibility in Mat_Open and Mat_Create for
HDF5 > v1.10.1
Changes in 1.5.12 (7 March 2018)
* Updated Mat_VarWriteAppend: Added support to append a
variable to a previously written struct array in HDF5
MAT file
* Fixed bug reading MAT_T_UINT16 encoded character array
from HDF5 MAT file
* Fixed bug reading MAT_T_UTF16 encoded character array
from compressed v5 MAT file
* Fixed bug writing MAT_T_UTF16 encoded character array
to HDF5 MAT file
* Fixed buffer overflow in Mat_VarGetCells/Mat_VarGetStructs
Changes in 1.5.11 (22 October 2017)
* Added new API function Mat_VarWriteAppend to append a
numeric array to a previously written variable in HDF5
MAT file
* Fixed bug calculating sizes of cell/struct array with
empty cells/fields in Mat_VarGetSize
* Fixed bug writing cell/struct array with empty cells/fields
to v5 MAT file
* Fixed bug writing cell/struct array with empty cells/fields
to HDF5 MAT file
* Fixed read performance of cell/struct array with empty
cells/fields from v5 MAT file
* Fixed read performance of numeric array from uncompressed
v5 MAT file
* Fixed testsuite (if configured with the MATLAB application)
* Updated man pages
Changes in 1.5.10 (14 February 2017)
* Added new API function Mat_GetDir to retrieve all variable
names of a MAT file
* Fixed performance of repeated calls to Mat_VarWrite
(regression of v1.5.7)
* Fixed bugs reading (hyperslabs of) numeric array where the
variable data type differs from the desired output data type
* Increased testsuite coverage
Changes in 1.5.9 (22 October 2016)
* Fixed resource leak when reading character array from HDF5
MAT file
* Fixed bug writing struct to HDF5 MAT file: Mat_VarWrite
never returned 0 on success
* Fixed bug writing sparse logical array to HDF5 MAT file
* Fixed bug calculating array sizes of struct, cell, complex
and sparse array in Mat_VarGetSize
* Fixed bug duplicating sparse array with empty data in
Mat_VarDuplicate
* Fixed segmentation fault when reading compressed v5 MAT
file with opaque class
* Updated support of HDF5 v1.10.x: No longer depend on
deprecated v1.8.x symbols
Changes in 1.5.8 (30 June 2016)
* Fixed bug writing array to v4 MAT file on big endian
architecture (regression of v1.5.7)
Changes in 1.5.7 (22 June 2016)
* Added support for MAT_T_UTF16 when reading character array
from v5 MAT file
* Added support of HDF5 v1.10.x (with deprecated v1.8.x
symbols exported)
* Added warning on unsupported character data types when
reading v5 MAT file
* Added error check if variable already exists when writing
to MAT file
* Fixed support of custom log functions:
Moved log levels to the public interface
* Fixed bug creating v4 and v5 MAT file:
Open in write+update mode
* Fixed bug creating v5 and HDF5 MAT file:
Set BOF marker to 128
* Fixed bug in Mat_VarDelete:
Rewind file before looping over variables
* Fixed bug writing cell array with empty struct fields to
compressed v5 MAT file
* Fixed bug reading empty character array from HDF5 MAT file
* Fixed bug iterating through links in a group of HDF5
MAT file
* Fixed bug iterating on #subsystem# group of HDF5 MAT file
* Fixed compilation out of source directory
* Fixed C++ compilation on MinGW
* Restructured testsuite
* Fixed testsuite if hdf5 dependency is missing
* Increased testsuite coverage
* Various fixes for variable scopes that cause compilers to
issue diagnostics
Changes in 1.5.6 (23 February 2016)
* Fixed bug writing array to v4 MAT file on big endian
architecture
* Fixed bug writing header with more than 127 characters
to v5 or HDF5 MAT file
Changes in 1.5.5 (19 February 2016)
* Added support of reading sparse array from v4 MAT file
* Added support of writing sparse array to v4 MAT file
* Added support of writing character array to v4 MAT file
* Added support of autogen.sh on Darwin
* Added missing Visual Studio project files for test_mat
* Added missing Visual Studio resource file
* Enabled C++ compilation
* Updated snprintf.c to C99 snprintf v1.1
* Increased testsuite coverage
* Fixed bug writing complex array to v4 MAT file
* Fixed bug writing cell containing a struct with fields
but empty array to compressed v5 MAT file
* Fixed bug reading hyperslabs of cells and struct fields
from compressed v5 MAT file (regression of v1.5.3)
* Fixed bug writing empty character array to uncompressed
v5 MAT file
* Fixed bug reading cells and struct fields from HDF5 MAT file
* Fixed bug printing array dimensions in Mat_VarPrint on MinGW
* Fixed bug calculating array sizes of structs in Mat_VarGetSize
* Fixed bug duplicating sparse array in Mat_VarDuplicate
* Fixed testsuite if zlib/hdf5 dependencies are missing
* Several other fixes, especially for memory leaks
Changes in 1.5.3 (11 January 2016)
* Added support for writing numeric array to v4 MAT file
* Added Visual Studio project for test_mat
* Added new API functions Mat_CalcSingleSubscript2 and
Mat_CalcSubscripts2 that work on size_t type
* Fixed memory consumption reading compressed v5 MAT file
* Fixed bug writing compressed v5 MAT file
* Fixed bug in Mat_VarReadNextInfo5 where freed variable
was not set to NULL
* Fixed several bugs in Mat_VarDelete
* Fixed bug writing empty struct to HDF5 MAT file
* Fixed bug writing character array to HDF5 MAT file
* Fixed bug writing character array to compressed v5 MAT file
* Updated Visual Studio solution and project files to work
with newer HDF5 and Visual Studio versions
* Various fixes for unused variables, unnecessary
initializations, etc. that
cause compilers to issue diagnostics
* Several other fixes, especially for memory leaks
Changes in 1.5.2 (31 July 2013)
* Added support for linear data read for v4 and HDF5 MAT file
* Fixed bug reading slices of variables in matdump
* Fixed feof calls so they compile on platforms that
dereference the argument in a macro
* More robust checking that file is MAT file and eliminates
some segmentation faults
* Various fixes for unused variables, unnecessary
initializations, etc. that cause compilers to issue
diagnostics
* Several other fixes
Changes in 1.5.1 (10 March 2013)
* Fixed bug writing compressed HDF5 file
* Fixed bug reading cell array elements written with
a non-empty variable name
* Fixed bug writing complex sparse matrices as struct
fields or cell elements to uncompressed v5 MAT file
* Fixed a number of potential issues identified via
static analysis
* Fixed uninitialized pointers when creating
structures through Mat_VarCreateStruct, and fix a
bug in the struct API testsuite
* Fixed extended sparse support in v7.3 MAT file
* Added 64-bit integer support for v5 MAT file
* Added missing support for reading hyperslabs from
HDF5 MAT file
* Added variable indexing notation support to
matdump to display subsets of variables
* Added tests for extended sparse support in testsuite
* Added missing enumerations or default case in
switch statements
Changes in 1.5.0 (15 April 2012)
* Changed licensing from the GNU Lesser General Public
License to the BSD-2-Clause License
* Added support for reading/writing HDF5 MAT file
* Bug fixes for compressed variables that caused issues
with matio reading them
* Upgraded dimensions in matvar_t structure to size_t
enabling support for large arrays
* Added a testsuite
Upstream changes:
1.57 Thu Sep 30 16:25 2021
- Add expire($key) method to allow explicitly expiring
a key from the cache. In write-back mode, if the key
is dirty it will be written back, in other modes it's
the same as remove($key)
Upstream changes:
1.23 2021-10-30 12:52:43 rurban
- relax bogus blead test failures
- add reverse test: if @Barewords are covered on keywords.h
- move some @Barewords not in keywords.h to @BarewordsExtra
- add %main, %CORE, %CORE::GLOBAL:: to @Hashes
- fixed versions for EQ, CORE, state, break, given, when, default, UNITCHECK
Upstream changes:
Version 1.30
* New options 'command','exe' dis-ambiguate the problems around
determining how to parse the command line and determine the
executable name. It also allows faking argv[0]. They can be
inspected after program launch via same-named attributes.
* New options 'stdin','stdout','stderr' allow initializing handles
of the child process.
* New option 'cwd' sets initial current directory of the child
* Renamed '->die' to '->terminate' and options 'die_upon_destroy'
to 'autoterminate' (but preserved back-compat)
* Option 'autoterminate' now has an attribute accessor and can be
toggled on the fly.
* New option 'autodie' throws exceptions from constructor instead
of returning undef.
* On Unix, use a pipe to capture error messages all the way through
to the exec() call. Reap exec() failures without exposing the
forked process to the user.
* Add methods ->suspend and ->resume
* Mitigate bug in timeout_system where a system clock change could
increase the wait-time indefinitely.
Upstream changes:
## 2021 10 29
- No significant bugs have been found since the last release, but several
minor issues have been fixed. Vertical alignment has been improved for
lists of call args which are not contained within parens (next item).
- Vertical alignment of function calls without parens has been improved with
the goal of making vertical alignment essentially the same with or
without parens around the call args. Some examples:
# OLD
mkTextConfig $c, $x, $y, -anchor => 'se', $color;
mkTextConfig $c, $x + 30, $y, -anchor => 's', $color;
mkTextConfig $c, $x + 60, $y, -anchor => 'sw', $color;
mkTextConfig $c, $x, $y + 30, -anchor => 'e', $color;
# NEW
mkTextConfig $c, $x, $y, -anchor => 'se', $color;
mkTextConfig $c, $x + 30, $y, -anchor => 's', $color;
mkTextConfig $c, $x + 60, $y, -anchor => 'sw', $color;
mkTextConfig $c, $x, $y + 30, -anchor => 'e', $color;
# OLD
is id_2obj($id), undef, "unregistered object not retrieved";
is scalar keys %$ob_reg, 0, "object registry empty";
is register($obj), $obj, "object returned by register";
is scalar keys %$ob_reg, 1, "object registry nonempty";
is id_2obj($id), $obj, "registered object retrieved";
# NEW
is id_2obj($id), undef, "unregistered object not retrieved";
is scalar keys %$ob_reg, 0, "object registry empty";
is register($obj), $obj, "object returned by register";
is scalar keys %$ob_reg, 1, "object registry nonempty";
is id_2obj($id), $obj, "registered object retrieved";
This will cause some changes in alignment, hopefully for the better,
particularly in test code which often uses numerous parenless function
calls with functions like 'ok', 'is', 'is_deeply', ....
- Two new parameters were added to control the block types to which the
-bl (--opening-brace-on-new-line) flag applies. The new parameters are
-block-left-list=s, or -bll=s, and --block-left-exclusion-list=s,
or -blxl=s. Previously the -bl flag was 'hardwired' to apply to
nearly all blocks. The default values of the new parameters
retain the the old default behavior but allow it to be changed.
- The default behavior of the -bli (-brace-left-and-indent) flag has changed
slightly. Previously, if you set -bli, then the -bl flag would also
automatically be set. Consequently, block types which were not included
in the default list for -bli would get -bl formatting. This is no longer done,
and these two styles are now controlled independently. The manual describes
the controls. If you want to recover the exact previous default behavior of
the -bli then add the -bl flag.
- A partial fix was made for issue for git #74. The -lp formatting style was
being lost when a one-line anonymous sub was followed by a closing brace.
- Fixed issue git #73, in which the -nfpva flag was not working correctly.
Some unwanted vertical alignments of spaced function perens
were being made.
- Updated the man pages to clarify the flags -valign and -novalign
for turning vertical alignment on and off (issue git #72).
Added parameters -vc -vsc -vbc for separately turning off vertical
alignment of code, side comments and block comments.
- Fixed issue git #68, where a blank line following a closing code-skipping
comment, '#>>V', could be lost.
- This version runs 10 to 15 percent faster on large files than the
previous release due to optimizations made with the help of NYTProf.
- This version of perltidy was stress-tested for many cpu hours with
random input parameters. No instabilities, internal fault checks,
undefined variable references or other irregularities were seen.
- Numerous minor fixes have been made, mostly very rare formatting instabilities
found in random testing. An effort has been made to minimize changes to
existing formatting that these fixes produce, but occasional changes
may occur. Many of these updates are listed at:
https://github.com/perltidy/perltidy/blob/master/local-docs/BugLog.pod
Upstream changes:
1.33 2021-10-30
- Rebuilt all locale data with the data from CLDR 40.0.0. There are some
notable data changes in CLDR 40.0.0.
- Data change: The root locale is now named "und", not "root".
- Data change: The "en-US-POSIX" locale has been removed from CLDR. If you
load this locale you will now get the "en-US" locale.
-BREAKING The default printer is now syntect. It has the following benefits.
I tested it for several weeks and it seems stable. See the section in README
to know the difference between bat printer and syntect printer.
-Performance is 2x to 4x faster
-Output layout and highlighting are optimized; line number highlight and
matched regions at matched line
-Support background color with --background
-Color themes are optimized
-BREAKING The default value of --min-context was changed from 5 to 3. And the
default value of --max-context was changed from 10 to 6. This is because it
turned out that the previous default values were too large for surveying the
search results.
-BREAKING Since themes for syntect printer are now managed by ourselves
(see below), syntect printer no longer looks at BAT_THEME and BAT_STYLE
environment variables. To set the default theme and layout, use shell's
command alias. See the document for more details.
-syntect printer now renders more accurate colors by considering alpha values
of colors by blending them with background colors. In v0.1.9, alpha values
were simply ignored. For example, gutter color with Nord theme was wrongly
very light at v0.1.9.
-Depend on ansi_term crate only when targeting Windows. It reduces number of
dependencies when bat-printer is not enabled.
-Improve a compile error when both feature syntect-printer and bat-printer are
disabled.
-Describe the exit status of hgrep command and versioning of this project in
the readme document.
-Fix rendering ansi theme was broken. The theme is for old terminals which
only supports 16 colors.
-Fix --first-only did not work with bat printer.
-Fix the background color in file header when --background is specified