Summary of the D Language Foundation Monthly Meeting on August 25th, 2021
Mike Parker
aldacron at gmail.com
Mon Sep 6 11:17:53 UTC 2021
The D Language Foundation meeting for the month of August took
place on Friday, August 27, at 13:00 UTC. Participating were:
* Walter Bright
* Átila Neves
* Andrei Alexandrescu
* Ali Çehreli
* Razvan Nitu
* Max Haughton
* Me
## Topics discussed
### SAOC application to solve "dub dependency hell"
One of the SAOC applications was on the agenda. The proposed
project aims to solve an issue that arises with dub when two
dependencies, in turn, depend on different versions of a third
dependency. Currently, dub will error out. The proposal calls for
two new compiler switches that dub can make use of to resolve the
version difference by modifying the mangled names of the
functions from two versions to distinguish them. As one of the
SAOC judges, Átila liked the end goal of the project but was
concerned about the approach. Walter also expressed concern about
the ramifications of the new switches. He suggested exploring if
dmd's existing `-mv` switch can be used to solve the problem. If
that is not possible, the SAOC student will proceed with
implementing the original proposal. Once the project is complete,
it can be tested and evaluated to see if it works without any
problematic consequences.
### Potential contract jobs
We talked about getting more active in [making use of our HR
fund][1]. It's currently sitting at $17,525. We have one contract
job that's indefinitely delayed, but it's been a while since we
put this fund to use. As a start, I proposed paying someone to
investigate the DLL situation, see what's still broken, and fix
it. Someone pointed out that Martin Kinkelin has significantly
improved DLL support for LDC in order to make Phobos/Druntime as
a DLL a reality. So whether or not this particular initiative
moves forward depends on if there's enough work left to do to
fund it, and I'll know more once I get the details from Martin.
If not, we'll have other funded projects to propose. (And if
anyone is appreciative of the work Martin has done on this issue
and with LDC in general, you can show it [by sponsoring his
work][2].)
### Server management
The services that comprise dlang.org are not all on one server,
they are administered by different people and others generally
have no admin access. This includes not just the servers, but the
domains and DNS settings. This is a result of some of the
services, such as the D Tour and the web forum interface, having
been created and managed by volunteers, and subsequently brought
under the dlang.org umbrella. At a previous meeting last year, we
discussed the need to unify things somewhat. It would be
beneficial to have multiple people with admin access to all of
the services that comprise our core community.
Around the same time last year, an anonymous donor provided $500
to the foundation to put to use on server management, and also
offered his experience and expertise if we need it. We
subsequently discussed options at a couple of meetings, but did
not come to a final conclusion, and put the issue on the
backburner. Recently, we received news that the long-term
administrator of dlang.org is looking toward retirement not too
far down the road. He gave us significantly advance notice so
that we can make preparations with time to spare. Now is the time
to take the issue off the backburner.
We decided as a first step to reach out to our anonymous donor
since he already offered to help, to see if he is still willing.
If so, we will consult with him and start formulating a plan. We
may need to ask for volunteers or raise money for a part-time
position, or who knows what. I will put out more information and
announcements as we progress.
### Gamification of Bugzilla issues
Razvan has been working on a system to track and reward
contributions of Bugzilla fixes across the core repositories,
with help from Vladimir Panteleev. He's got the implementation
done and has successfully tested it, so now he's ready to pull
the trigger on it. We discussed potential rewards for the first
round. Razvan will soon publish a blog post describing the new
system and detailing the rewards.
The short of it is that each reward period will run for three
months. At the end of the period, the top three contributors will
each be rewarded. Razvan will explain in the blog post how the
scoring system works. Rewards will vary and will be announced at
the beginning of each period. As a pilot run, the first period
will be shorter, starting from the date Razvan announces in his
blog post and ending on the first day of DConf Online (November
20). That will allow us to announce the reward winners at DConf.
The second period will be longer, starting from November 21 and
running until March 31. The third period will then begin the
quarterly schedule starting from April 1.
### DIP 1029, Bugzilla 19320
Two recent PRs from one of this year's SAOC participants, Luís
Ferreira, made their way onto the agenda.
[He submitted one][3] back in July to implement [DIP 1029, "Add
throw as Function Attribute"][4]. This is going to need sign-off
from Walter. We discussed it at the meeting, and Walter promised
to look at it as soon as I remind him. Luís isn't quite ready
yet; he still has some more work to do and has asked me to wait
until he's done. When I get the thumbs up from him, I'll ping
Walter and he'll review the PR.
[The other was a fix][5] for [Bugzilla issue 19320][6]. This is
an issue affecting unit testing `std.array`. His workaround
involved modifying that module. Razvan subsequently submitted an
[alternative PR that disables the error][7]. We discussed the
issue and the PRs and decided the best course of action is to
find and resolve the root cause in dmd. This is now on Walter's
TODO list.
### Governance proposal
For some time now, Mathias Lang has quietly been working on a
governance proposal for D inspired by [Python's PEP 13][8]. He
has solicited feedback from a few people, including Iain Buclaw
and myself, and now has a draft proposal. Max brought this up in
the meeting and everyone agreed that it's worth discussing. We
decided that this will be the primary item on the agenda for our
next monthly meeting on September 24th. I subsequently asked
Mathias to submit the proposal to all the relevant parties so
they can review it beforehand.
I want to emphasize that this is going to be a *discussion* of
the proposal. The last thing I want is to give the impression
that this indicates an intention to accept or reject it outright.
Experience has shown that people can read more into my words than
I intended by them, so let me be clear: this is a *discussion* of
the proposal, a discussion which can lead to any of a number of
potential outcomes, none of which is preordained.
I will have more to say about this after our next monthly meeting.
### Bringing in more people
Quite frequently, the topics that come up in our monthly meetings
are lacking some perspective. Bringing some key people into these
meetings can bring that needed perspective. As such, we've
decided that starting with the next meeting, we will invite
Martin Kinkelin, Iain Buclaw, and Mathias Lang to become
permanent meeting members. Mathias has been attending the
quarterly meetings as a representative of his company, Iain has
attended as the representative of GDC, and Martin has recently
begun attending as the representative of LDC. Including them in
our monthly meetings can't help but be beneficial to D.
### Other
A few other topics we discussed: Ali brought up a hypothetical
renaming of `@trusted` to something that would more accurately
reflect its meaning (`@certified` came up, but this is not
something anyone will actively pursue at the moment); Walter
brought up his implementation of bitfields for ImportC and
proposed that he turn them on for D, and after a discussion about
it everyone agreed that's the way to go; Andrei brought up [his
old PR to add `imported` for inline imports][9], since the
library solution has limitations a language solution would not,
and it seems there was agreement to move forward with it.
### Conclusion
Our next meeting is scheduled for September 24th. I expect the
governance proposal will take up the majority of our discussion
time, leaving little room for the potential items we already have
for the agenda. In other words, it's full.
If you have an issue regarding the D community or the ecosystem
that you would like to see on a meeting agenda, please let me
know. I don't believe it's an option for the next meeting, but I
can definitely slot you in at a future meeting. In addition to
discussing your agenda, we would welcome your feedback on any of
the issues we discuss at that meeting.
[1]: https://www.flipcause.com/secure/cause_pdetails/NTUxOTc=
[2]: https://github.com/sponsors/kinke
[3]: https://github.com/dlang/dmd/pull/12934
[4]:
https://github.com/dlang/DIPs/blob/master/DIPs/accepted/DIP1029.md
[5]: https://github.com/dlang/phobos/pull/8204
[6]: https://issues.dlang.org/show_bug.cgi?id=19320
[7]: https://github.com/dlang/dmd/pull/13015
[8]: https://www.python.org/dev/peps/pep-0013/
[9]: https://github.com/dlang/druntime/pull/1756
More information about the Digitalmars-d-announce
mailing list