Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add D workflow #546

Merged
merged 1 commit into from
Aug 21, 2020
Merged

Add D workflow #546

merged 1 commit into from
Aug 21, 2020

Conversation

Geod24
Copy link
Contributor

@Geod24 Geod24 commented Jun 11, 2020

Description (and commit message):

D is a statically and strongly typed, multi-paradigm, general-purpose native programming language.
D is fully open-source and maintained by a volunteer community.
For more information, see https://dlang.org

This patch adds a minimal workflow that allows users to compile D projects that use DUB,
the official D package manager and build tool.

The workflow uses the community-maintained `setup-dlang` action,
which can install any version of `dmd` (the reference compiler),
or `ldc` (the LLVM-based, performance oriented compiler,
on any of the three platforms currently supported by Github free runners.
Support for GDC is not yet implemented.

The logo used (d.svg) originates from
https://github.com/dlang/dlang.org/blob/master/images/dlogo_2015.svg
and is available under the BSL-1.0 license
(https://github.com/dlang/dlang.org/blob/master/LICENSE.txt)

Co-Authored-By: Mathias Lang <pro.mathias.lang@gmail.com>

I believe this satisfies all the requirements set forth by the contributing guidelines.

It does use an external action, which was the blocker in the previous attempt (#74), but according to the current guidelines this is tolerated if the disclaimer message is present (which I added).
I also used the hash, as requested in the guideline, despite it being very user-unfriendly. The release used is here:
https://github.com/dlang-community/setup-dlang/releases/tag/v1.0.0

Official website: https://dlang.org/
Official Github organization: https://github.com/orgs/dlang
Action being used: https://github.com/dlang-community/setup-dlang

You can see that the action is in a different organization, however that is simply to simplify access management. As you can see I am a member of both organizations.

As a side note:

  • it would be very nice if we could benefit from the same exemption as Terraform (which also doesn't have the disclaimer, BTW);
  • The guidelines don't mention what OS the action should run on. I went with the same bet and used ubuntu-latest, like almost everyone else;

@Geod24 Geod24 mentioned this pull request Jun 11, 2020

steps:
- uses: actions/checkout@v2
- uses: dlang-community/setup-dlang@7c3e57bdc1ff2d8994f00e61b3ef400e67d2d7ac

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't we use master directly if this is the template for users and they have to trust setup-dlang either way? (and if they are really worried they can always lock the version).
The way I see it this might hurt the standard user as he won't be able to receive any bugfix to the build pipeline.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Geod24
Copy link
Contributor Author

Geod24 commented Jun 24, 2020

Rebased on master. Ping @ethomson @andymckay .

@Geod24
Copy link
Contributor Author

Geod24 commented Jul 10, 2020

Rebased on master. @jclem : Any chance you could review this ?

@Geod24 Geod24 force-pushed the dlang-workflow branch 2 times, most recently from 12f5b04 to d61059b Compare July 20, 2020 15:23
@Geod24 Geod24 changed the base branch from master to main July 29, 2020 03:11
@Geod24
Copy link
Contributor Author

Geod24 commented Jul 29, 2020

Rebased / retargeted. Is anything else missing ?

@perwy19
Copy link

perwy19 commented Jul 31, 2020 via email

D is a statically and strongly typed, multi-paradigm, general-purpose native programming language.
D is fully open-source and maintained by a volunteer community.
For more information, see https://dlang.org

This patch adds a minimal workflow that allows users to compile D projects that use DUB,
the official D package manager and build tool.

The workflow uses the community-maintained `setup-dlang` action,
which can install any version of `dmd` (the reference compiler),
or `ldc` (the LLVM-based, performance oriented compiler,
on any of the three platforms currently supported by Github free runners.
Support for GDC is not yet implemented.

The logo used (d.svg) originates from
https://github.com/dlang/dlang.org/blob/master/images/dlogo_2015.svg
and is available under the BSL-1.0 license
(https://github.com/dlang/dlang.org/blob/master/LICENSE.txt)

Co-Authored-By: Mathias Lang <pro.mathias.lang@gmail.com>
@Geod24
Copy link
Contributor Author

Geod24 commented Aug 19, 2020

Rebased on main. Shall I try ping another contributor ? Perhaps @imjohnbo ?
It'd be great to know what is holding this PR back, considering it's carefully following all the guidelines.

@andymckay
Copy link
Contributor

So sorry for the delay @Geod24. I think this is good to merge.

@andymckay andymckay merged commit 4085d27 into actions:main Aug 21, 2020
@Geod24
Copy link
Contributor Author

Geod24 commented Aug 21, 2020

@andymckay : Thanks!

@Geod24 Geod24 deleted the dlang-workflow branch August 21, 2020 00:32
@Geod24
Copy link
Contributor Author

Geod24 commented Aug 21, 2020

@andymckay : Any update on the guidelines regarding versions ? This uses the hash, as prescribed by this repository's documentation, but most other places do not. I've listed a few examples here.

@andymckay
Copy link
Contributor

@Geod24 most of those are referencing actions from partners and have different guidelines. I think one or two did slip through the net and we should review those to match the new guidelines. Thank you for the heads up on that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants