Thread overview
LDC 0.11.0 release process
May 12, 2013
David Nadlinger
May 12, 2013
David Nadlinger
May 12, 2013
David Nadlinger
May 12, 2013
David Nadlinger
May 12, 2013
David Nadlinger
May 13, 2013
Jacob Carlborg
May 12, 2013
David Nadlinger
May 12, 2013
Hi all,

As discussed previously, I'd really like to push out the release soon, and Kai and I have been fixing the last outstanding issues on Linux yesterday.

Unfortunately, the GitHub file server part of our code is hosted on was offline for maintenance last night, so further progress has been delayed somewhat. But right now, all the Linux buildbots are green, and the test suite also fully passes on the current LLVM 3.3 RC (Linux x86_64, multilib).

There is one big remaining issue, though: OS X. Currently, the test results look like this:
———
	1350 - phobos_std_algorithm_debug_32_run (SEGFAULT)
	1352 - phobos_std_algorithm_release_32_run (SEGFAULT)
	1422 - phobos_std_container_debug_32_run (SEGFAULT)
	1424 - phobos_std_container_release_32_run (SEGFAULT)
	1430 - phobos_std_conv_debug_32_run (SEGFAULT)
	1432 - phobos_std_conv_release_32_run (SEGFAULT)
	1454 - phobos_std_csv_debug_32_run (SEGFAULT)
	1470 - phobos_std_datetime_debug_32_run (SEGFAULT)
	1500 - phobos_std_file_release_run (SEGFAULT)
	1518 - phobos_std_functional_debug_32_run (SEGFAULT)
	1520 - phobos_std_functional_release_32_run (SEGFAULT)
	1596 - phobos_std_parallelism_release_run (SEGFAULT)
	1598 - phobos_std_parallelism_debug_32_run (SEGFAULT)
	1600 - phobos_std_parallelism_release_32_run (SEGFAULT)
	1630 - phobos_std_random_debug_32_run (SEGFAULT)
	1638 - phobos_std_range_debug_32_run (SEGFAULT)
	1640 - phobos_std_range_release_32_run (SEGFAULT)
	1646 - phobos_std_regex_debug_32_run (SEGFAULT)
	1648 - phobos_std_regex_release_32_run (SEGFAULT)
	1750 - phobos_std_typecons_debug_32_run (SEGFAULT)
	1752 - phobos_std_typecons_release_32_run (SEGFAULT)
	1793 - phobos_std_uuid_debug_build (Failed)
	1794 - phobos_std_uuid_debug_run (Not Run)
	1795 - phobos_std_uuid_release_build (Failed)
	1796 - phobos_std_uuid_release_run (Not Run)
	1798 - phobos_std_uuid_debug_32_run (SEGFAULT)
	1800 - phobos_std_uuid_release_32_run (SEGFAULT)
	1806 - phobos_std_variant_debug_32_run (Failed)
	1808 - phobos_std_variant_release_32_run (Failed)
	1841 - phobos_std_digest_digest_debug_build (Failed)
	1842 - phobos_std_digest_digest_debug_run (Not Run)
	1843 - phobos_std_digest_digest_release_build (Failed)
	1844 - phobos_std_digest_digest_release_run (Not Run)
	1865 - phobos_std_digest_sha_debug_build (Failed)
	1866 - phobos_std_digest_sha_debug_run (Not Run)
	1867 - phobos_std_digest_sha_release_build (Failed)
	1868 - phobos_std_digest_sha_release_run (Not Run)
	1886 - phobos_std_net_isemail_debug_32_run (SEGFAULT)
	1888 - phobos_std_net_isemail_release_32_run (SEGFAULT)
	1889 - phobos_std_internal_digest_sha_SSSE3_debug_build (Failed)
	1890 - phobos_std_internal_digest_sha_SSSE3_debug_run (Not Run)
	1891 - phobos_std_internal_digest_sha_SSSE3_release_build (Failed)
	1892 - phobos_std_internal_digest_sha_SSSE3_release_run (Not Run)
	1950 - phobos_std_internal_uni_debug_32_run (SEGFAULT)
	2100 - dmd-testsuite_release (Failed)
	2102 - dmd-testsuite_debug_32 (Failed)
	2104 - dmd-testsuite_release_32 (Failed)
———

It seems like there is a GC problem in 32 bit mode, will investigate.

David
May 12, 2013
P.S.: We should probably switch to a more stable-looking versioning scheme soon, and as this is going to be the first release that does not support D1 anymore, we could probably also call it "LDC 2.0.0" as well. What do you think, especially in terms of confusion potential with the upstream DMD version numbers also in the picture?
May 12, 2013
On Sunday, 12 May 2013 at 12:05:24 UTC, David Nadlinger wrote:
> It seems like there is a GC problem in 32 bit mode, will investigate.

s/GC/TLS/

David

May 12, 2013
On Sunday, 12 May 2013 at 12:27:21 UTC, David Nadlinger wrote:
> s/GC/TLS/

Test case:
---
extern(C) int printf(const char*, ...);

void foo()() {
    static int i;
    printf("%x\n", &i);
}

void main() {
    foo();
}
---

David
May 12, 2013
On Sunday, 12 May 2013 at 12:30:47 UTC, David Nadlinger wrote:
> Test case:
> ---
> extern(C) int printf(const char*, ...);
>
> void foo()() {
>     static int i;
>     printf("%x\n", &i);
> }
>
> void main() {
>     foo();
> }
> ---

This is not a regression on our side, it happens with the 0.10.0 release as well.

Seems to go away when enabling PIC though – I guess it should be the default anyway on OS X? (matching what Clang does)

David
May 12, 2013
Looks a little better with PIC enabled:

———
	1500 - phobos_std_file_release_run (SEGFAULT)
	1596 - phobos_std_parallelism_release_run (SEGFAULT)
	1806 - phobos_std_variant_debug_32_run (Failed)
	1808 - phobos_std_variant_release_32_run (Failed)
	2098 - dmd-testsuite_debug (Failed)
	2100 - dmd-testsuite_release (Failed)
	2102 - dmd-testsuite_debug_32 (Failed)
	2104 - dmd-testsuite_release_32 (Failed)
———

The test suite failures might not all be real, due to the annoying output file name clash issue for the d_do_test unit tests (need to do something about this).

David
May 13, 2013
On 2013-05-12 15:50, David Nadlinger wrote:

> This is not a regression on our side, it happens with the 0.10.0 release
> as well.
>
> Seems to go away when enabling PIC though – I guess it should be the
> default anyway on OS X? (matching what Clang does)

Mac OS X always uses PIC.

-- 
/Jacob Carlborg