Changelog for
phobos-devel-2.109.1-1.3.i586.rpm :
* Wed Jul 03 2024 Andrea Manzini
- Update to version 2.109.1
* Compiler change: bool values other than 0 or 1 are not AATTsafe
* fixed Bugzilla 24602: Internal compiler error: failed to detect static initialization of associative array
* fixed Bugzilla 24566: condition that starts with runtime value and uses compile time array does not short circuit
* Bugzilla 24596: Rebindable2 corrupts objects- suggest to install also phobos-devel-static (see bsc#1219521)
* Sun Jun 02 2024 Andrea Manzini - Update to version 2.109.0
* Compiler changes + [next edition] Aliasing a member of a type instance is now an error + Add Bitfield Introspection Capability + Added __ctfeWrite to write messages from CTFE + Deprecation warnings are now also limited by -verrors + dtoh generates signatures for extern(Windows) and extern(System) functions. + foreach on a dynamic array can have an index type smaller than size_t + foreach_reverse on a delegate is now an error + Expansion of identifier tables to allow new characters to match C23 have been added along with CLI configurability + ImportC has improved Unicode support + Missing symbol errors are made less cryptic
* Runtime changes + Add module core.sys.linux.sys.mount. + Remove all collectNoStack functions and API from druntime. + Mark Thread.sleep as AATTtrusted
* Library changes + Add std.process.Config.preExecDelegate
* Mon May 06 2024 Andrea Manzini - Update to version 2.108.1
* DMD Compiler regression fixes + Bugzilla 23657: [REG2.101] Incorrect error escape reference to stack allocated value + Bugzilla 24436: a array be overwritten when other array be written + Bugzilla 24479: [REG2.104] Error on getAttributes on getOverloads of templates + Bugzilla 24505: [REG2.108] ImportC: Function-like macros (newly translated to templates) may collide with regular symbols + Bugzilla 24519: compiler segfault on default argument with slice operator []
* DMD Compiler bug fixes + Bugzilla 24495: ImportC: Struct initialization expression fails to initialize field + Bugzilla 24509: importC cannot handle _stdcall Function Calling Convention with single heading underscore + Bugzilla 24511: __stdcall functions from C are extern(C) in D.
* Phobos regression fixes + Bugzilla 24481: retro no longer works with types that support assignment but not moving
* Druntime regression fixes + Bugzilla 24498: Multidimensional array not scanned by GC
* Tue Apr 02 2024 Andrea Manzini - Update to version 2.108.0
* Compiler changes - Added .nameSig field to TypeInfo_Class in object.d - Keywords like __FILE__ are always evaluated at the call site - Hex strings now convert to integer arrays - Add support for Interpolated Expression Sequences - Named arguments for functions have been implemented and documented
* Library changes - isForwardRange, isBidirectionalRange, and isRandomAccessRange now take an optional element type - std.uni has been upgraded from Unicode 15.0.0 to 15.1.0
* Sat Mar 16 2024 Andrea Manzini - Added rdmd run/build tool ( https://dlang.org/rdmd.html )
* Tue Mar 12 2024 Andrea Manzini - Update to version 2.107.1
* DMD Compiler regression fixes - Bugzilla 20802: [REG2.088.0] Link failure with writefln - Bugzilla 24371: [REG 2.104] String array concatenation does not respect operator precedence
* DMD Compiler bug fixes - Bugzilla 20297: ld: warning: no platform load command found for macOS - Bugzilla 21047: Linker error: GOT load reloc does not point to a movq instruction - Bugzilla 22556: Invalid GOT load reloc with -O on MacOS - Bugzilla 23517: dmd with -g flag fails to link on macOS with unaligned pointer - Bugzilla 24137: Link failure on macOS with symbol count from symbol table and dynamic symbol table differ - Bugzilla 24365: ICE when printing \'showCtfeContext\' error - Bugzilla 24370: static array values in static AA initialise to dynamic arrays - Bugzilla 24399: Link failure on MacOS with address=0x0 points to section(2) with no content in config_a68_4c3.o - Bugzilla 24409: DMD crash for CTFE in stompOverlappedFields - Bugzilla 24422: ImportC: ICE: Segfault in cparseFunctionDefinition- Update to version 2.107.0
* Compiler changes - A string literal as an assert condition is deprecated - Unrecognized pragmas are no longer an error, but instead simply ignored - Added AATTstandalone for module constructors - _d_newarray{mTX,miTX,OpT} are converted to a single template: _d_newarraymTX
* Runtime changes - Using an invalid MemoryOrder for core.atomic operations are now rejected at compile time
* Library changes - isForwardRange now takes an optional element type.- Update to version 2.106.1
* DMD Compiler regression fixes - Bugzilla 22212: dmd version has -dirty suffix on windows
* DMD Compiler bug fixes - Bugzilla 22483: DMD generates invalid string sections that work by coincidence - Bugzilla 24281: Segfault with missing field after named argument - Bugzilla 24283: [SIMD][CODEGEN] Bad codegen with and not + AVX2 registers- Update to version 2.106.0
* 2.106.0 comes with 17 major changes and 65 fixed Bugzilla issues. For full changelog see https://dlang.org/changelog/2.106.0.html
* Fri Nov 03 2023 Andrea Manzini - Update to versione 2.105.3
* DMD Compiler regression fixes: - Bugzilla 24171: [REG 2.100] Segfault compiling an empty ddoc file - Bugzilla 24188: ICE (Illegal instruction) with missing imported symbol
* DMD Compiler bug fixes: - Bugzilla 23686: template instance reused with default alias arg - Bugzilla 23865: duplicate alias not detected- Changes from version 2.105.2:
* DMD Compiler regression fixes - Bugzilla 24109: [REG2.103] \'need this\' when invoking outer method from inner method - Bugzilla 24110: [REG2.104] Array comparison lowering apparently not handled properly in __traits(compiles) - Bugzilla 24118: ICE / regression from 2.103.1 - segfault on CTFE only code in 2.104.2 and 2.105.0 - Bugzilla 24144: [REG2.105] Silent file name index overflow
* DMD Compiler bug fixes - Bugzilla 24139: \'this\' corruption in extern(C++) dtor when destructing via TypeInfo_Struct
* Phobos bug fixes - Bugzilla 24140: Int128.opBinary [+-
*/%&|^] with negative long arguments gives wrong answers- Changes from version 2.105.1:
* A function with enum storage class is now deprecated, not an error
* for detail and bugfixes see https://dlang.org/changelog/2.105.1.html#bugfix-list- Changes from version 2.105.0:
* Compiler changes - Assignment-style syntax is now allowed for alias this - Catch clause must take only const or mutable exceptions - Functions can no longer have enum storage class - Overloading extern(C) functions is now an error - Deprecation phase ended for access to private method when overloaded with public method. - Added predefined version identifier VisionOS
* Runtime changes - Linux input header translations were added to druntime - Integration with the Valgrind memcheck tool has been added to the garbage collector
* Library changes - Better static assert messages for std.algorithm.iteration.permutations - Added std.system.instructionSetArchitecture and std.system.ISA
* Dub changes - Exposed --d-versions CLI flag
* for details see https://dlang.org/changelog/2.105.0.html#bugfix-list
* Thu Jul 20 2023 Matthias Eliasson - Update to version 2.104.2
* DMD Compiler regression fixes: - [REG2.102] Cannot use traits(getAttributes) with overloaded template - ImportC: ICE on nested C initializer 2
* DMD Compiler bug fixes: - Segmentation fault on mixin template + using unknown type - \"alias this\" not properly dereferenced when the object being looked up is a field of a type - error: instantiated from here: maxElement!(\"a.a\", A[])
* Druntime regression fixes: - \"Warning: cannot inline function\" in core.lifetime- Changes from version 2.204.1
* DMD Compiler regression fixes: - [REG2.101.0] Appending deprecated structs in deprecated function causes deprecation message - [REG 2.103.0] ICE: dip1021 memory corruption - ICE on failed alias this attempt on pointer expression - [REG 2.103.0] address of a __traits(getOverloads) item is not converted to a delegate anymore
* DMD Compiler bug fixes: - Segfault for function contract -preview=dip1021 - ICE: Invalid array access for invalid interface definition - ImportC: ICE on nested C initializer - segfault when printing scope inference failure - ICE: dip1021 asserts on typeof(null) parameter
* Phobos regression fixes: - std.range.slide fails in dmd-2.104.0 - std.algorithm.maxElement no longer works with array of BigInt- Changes from version 2.104.0
* Compiler changes: - Better error message when attribute inference fails down the call stack - Using ; as an empty statement has been turned into an error - Using in parameters with non extern(D)/extern(C++) functions is deprecated - in ref on parameters has been deprecated in favor of -preview=in - Throwing qualified objects is now deprecated - User Defined Attributes now parse Template Arguments
* Library changes: - Better static assert messages for std.algorithm.comparison.clamp - std.typecons.Rebindable now supports all types
* Tools changes: - rdmd supports -shared
* Dub changes: - Add new properties \'cSourcePaths\' and \'cImportPaths\' to SDL/JSON - The way packages are stored internally has changed- Changes from version 2.103.1
* Compiler changes: - Deprecate invalid special token sequences inside token strings
* DMD Compiler regression fixes: - Header generation wrongfully outputs constructor bodies - Typing invalid mnemonic in asm{} block segfault
* DMD Compiler bug fixes: - Segmentation fault in CppMangleVisitor.headOfType - Assertion failure in CppMangleVisitor.template_args - Segfault for malformed static if in imported template
* Druntime regression fixes: - [REG 2.103] Throwing while in a deep callstack causes memory corruption
* Sun Apr 16 2023 Bjørn Lie - Update to version 2.103.0
* Compiler changes: - Add __check(assign-expression) to ImportC - Alias this for classes is deprecated - -preview=dip25 has been enabled by default - export int a; now generates dllexport instead of dllimport - Deprecate traits(isVirtualFunction) and traits(getVirtualFunctions)
* Library changes: - Unicode grapheme walking updated to conform to Unicode version 15 - Better static assert messages for std.algorithm.iteration.joiner - Better static assert messages for std.algorithm.sorting.sort
* Dub changes: The --color argument now accepts values auto, never, always- Changes from version 2.102.2:
* 6 fixed Bugzilla issues.- Changes from version 2.102.1:
* Dub changes: - Reverted v1.31.0 working directory change when using dub run - -root= - Path dependencies of path-based sub-packages have been fixed- Changes from version 2.102.0:
* Compiler changes: - A missed case of conflicting extern (D) AATTsystem function definitions has been deprecated - Deprecate the ability to call __traits(getAttributes) on overload sets - Deprecate non-empty for statement Increment clause with no effect - Array literals assigned to scope array variables can now be allocated on the stack - static assert now supports multiple message arguments - -preview=systemVariables has been added
* Runtime changes: The default Throwable.TraceInfo generation now is AATTnogc.
* Library changes: - Single- and double-precision implementations for log function families - The Unicode property \"C\" aka \"Other\" has had the wrong properties associated with it - Unicode table generator is now in Phobos, tables are updated to version 15 - std.typecons.Unique now calls destroy on struct types
* Installer changes: - Update the bundled VisualD package - Prefer 64 bit over 32 bit DMD on Windows 64 bit.
* Dub changes: - Binary output will now be in a central cache - DUB API breaking change: Package.metadataCache setter and getter have been removed- Changes from version 2.101.2:
* 16 fixed Bugzilla issues.- Changes from version 2.101.1:
* 11 fixed Bugzilla issues.
* Thu Dec 01 2022 Fabian Vogt - Bootstrap using gdmd instead of prebuilt binaries
* Wed Nov 16 2022 Chris Josten - Build using the build.d script, as opposed to the deprecated posix.mak- Remove dmd_use_tarball_bootstrap.diff patch as it is no longer needed- Update to version 2.101.0
* Compiler changes
* Add bit fields to D
* Added __traits(classInstanceAlignment)
* Relaxed pragma(crt_constructor) / pragma(crt_destructor) linkage check
* Add predefined version D_Optimized when compiling with -O
* Throwing from contracts of nothrow functions has been deprecated
* Using integers for version or debug conditions has been deprecated
* Print deprecations for scope pointer errors
* Improvements for the C++ header generation
* -preview=fixImmmutableConv has been added
* Returning a discarded void value from a function is now deprecated
* ImportC now recognizes the typeof(...) operator
* Removed the -transition=markdown and -revert=markdown switches
* new can now allocate an associative array
* -preview=in can now be used with extern(C++), disabled for other non-D linkage
* The shortened method syntax is now available by default.
* Source files may no longer contain Unicode directionality overrides
* Runtime changes
* Added avx512f detection to core.cpuid
* --DRT-oncycle=deprecate is removed
* Posix (excl. Darwin): Switch default GC signals from SIGUSR1/2 to SIGRTMIN/SIGRTMIN+1
* Library changes
* Added SafeRefCounted, that can be used in AATTsafe with - preview=dip1000.
* Move logger out of experimental.
* remove std.experimental.logger\'s capability to set the minimal LogLevel at compile time
* Change std.experimental.logger.core.sharedLog to return shared(Logger)
* std.experimental.typecons has been removed
* std.digest.digest has been removed
* std.xml has been removed
* std.socket.Socket methods now accept only scope arrays.
* Add custom fill value to std.outbuffer.OutBuffer class- Update to version 2.100.2
* Compiler changes
* scope(failure) blocks that contain return statements are now deprecated- Update to version 2.100.1
* Compiler changes
* scope(failure) blocks that contain return statements are now deprecated- Update to version 2.100.0
* Compiler changes
* End deprecation period for using alias this for partial assignment.
* The deprecation period for D1-style operators has ended.
* scope as a type constraint on class, struct, and enum declarations is deprecated.
* The deprecation period of unannotated asm blocks has been ended.
* The deprecation period of the delete keyword has been ended.
* Improvements for the C++ header generation
* The deprecation period for scope as a type constraint on interface declarations has ended.
* The inout attribute no longer implies the return attribute
* Support contract invariant version identifier.
* Implement DIP 1038: AATTmustuse
* Added .tupleof property for static arrays
* Usage of this and super as types has been removed
* A missed case of switch case fallthrough has been deprecated
* Library changes
* New function bind in std.functional
* Nullable in std.typecons can now act as a range
* Zlib updated to 1.2.12
* Tools changes
* rdmd now supports specifying the D compiler using the RDMD_DMD environment variable- Update to version 2.099.1
* Compiler changes
* Special case for __traits(parameters) in foreach loops was removed
* Library changes
* std.experimental.logger default level changed to info instead of warning- Update to version 2.099.0
* Compiler changes
* When ref scope return attributes are used on a parameter, and return scope appears, the return applies to the scope, not the ref.
* __traits(parameters) has been added to the compiler.
* Add ability to import modules to ImportC
* Casting between compatible sequences
* New command line switch -vasm which outputs assembler code per function
* The \'-preview=intpromote\' switch is now set by default.
* -m32 now produces MS Coff objects when targeting windows
* Ignore unittests in non-root modules
* main can now return type noreturn and supports return inference
* Falling through switch cases is now an error
* Throw expression as proposed by DIP 1034 have been implemented
* Added __traits(initSymbol) to obtain aggregate initializers
* Runtime changes
* Add support for AATTsafe class opEquals
* Library changes
* Move checkedint out of experimental.
* chunkBy AATTsafe with forward ranges and splitWhen fully AATTsafe
* std.csv can now optionally handle csv files with variable number of columns.
* Change default log level for std.experimental.logger to LogLevel.warning
* std.conv.to accepts std.typecons tuples