Auditing community-contribution workflow vs repo topics

I did an audit of exercism repos: does the “pause-community-contributions.yml” workflow exist, and does it align with the corresponding repo topic.

Repo            Exists? Topic                            Status
05ab1e          yes     community-contributions-paused   OK
8th             yes     community-contributions-paused   OK
abap            no      community-contributions-accepted OK
arm32-assembly  no      -                                missing topic
arm64-assembly  yes     -                                missing topic
arturo          no      -                                missing topic
awk             no      community-contributions-accepted OK
ballerina       yes     community-contributions-paused   OK
bash            no      community-contributions-accepted OK
batch           no      -                                missing topic
bqn             yes     community-contributions-paused   OK
c               no      community-contributions-accepted OK
c3lang          no      community-contributions-accepted OK
cairo           no      -                                missing topic
ceylon          yes     community-contributions-paused   OK
cfml            yes     community-contributions-paused   OK
chapel          yes     community-contributions-paused   OK
clojure         yes     community-contributions-paused   OK
cobol           yes     community-contributions-paused   OK
coffeescript    no      -                                missing topic
common-lisp     yes     community-contributions-paused   OK
coq             yes     community-contributions-paused   OK
cpp             yes     community-contributions-paused   OK
crystal         no      community-contributions-accepted OK
csharp          yes     community-contributions-paused   OK
d               yes     community-contributions-paused   OK
dart            yes     community-contributions-paused   OK
dataweave       no      -                                missing topic
delphi          yes     community-contributions-paused   OK
dyalog-apl      no      -                                missing topic
elixir          no      community-contributions-accepted OK
elm             no      community-contributions-accepted OK
emacs-lisp      no      community-contributions-accepted OK
erlang          no      community-contributions-accepted OK
euphoria        yes     community-contributions-paused   OK
factor          yes     community-contributions-paused   OK
forth           yes     community-contributions-paused   OK
fortran         no      -                                missing topic
free-pascal     yes     community-contributions-paused   OK
fsharp          yes     community-contributions-paused   OK
func            no      -                                missing topic
futhark         no      -                                missing topic
gdscript        no      -                                missing topic
gleam           no      community-contributions-accepted OK
gnucobol        yes     community-contributions-paused   OK
go              yes     community-contributions-paused   OK
groovy          yes     community-contributions-paused   OK
harbour         no      -                                missing topic
haskell         yes     community-contributions-paused   OK
haxe            yes     community-contributions-paused   OK
idris           yes     community-contributions-paused   OK
io              yes     community-contributions-paused   OK
j               yes     community-contributions-paused   OK
jai             no      -                                missing topic
java            no      community-contributions-accepted OK
javascript      yes     community-contributions-paused   OK
jq              no      community-contributions-accepted OK
julia           no      community-contributions-accepted OK
kotlin          yes     community-contributions-paused   OK
lean            yes     -                                missing topic
lfe             yes     community-contributions-paused   OK
lua             no      community-contributions-paused   incorrect topic
mips            yes     community-contributions-paused   OK
moonscript      no      -                                missing topic
nim             yes     community-contributions-paused   OK
nushell         no      -                                missing topic
objective-c     yes     community-contributions-paused   OK
ocaml           no      community-contributions-paused   incorrect topic
odin            no      -                                missing topic
perl5           yes     community-contributions-paused   OK
pharo-smalltalk no      community-contributions-accepted OK
phix            no      -                                missing topic
php             no      community-contributions-paused   incorrect topic
plsql           yes     community-contributions-paused   OK
pony            yes     community-contributions-paused   OK
powershell      yes     community-contributions-paused   OK
prolog          yes     community-contributions-paused   OK
purescript      yes     community-contributions-paused   OK
pyret           no      community-contributions-accepted OK
python          yes     community-contributions-paused   OK
qsharp          yes     community-contributions-paused   OK
r               no      community-contributions-paused   incorrect topic
racket          no      community-contributions-accepted OK
raku            yes     community-contributions-paused   OK
reasonml        yes     community-contributions-paused   OK
red             no      community-contributions-accepted OK
rescript        no      -                                missing topic
rexx            no      community-contributions-accepted OK
risc-v          yes     -                                missing topic
roc             no      -                                missing topic
ruby            yes     community-contributions-paused   OK
rust            yes     community-contributions-paused   OK
sather          yes     -                                missing topic
scala           yes     community-contributions-paused   OK
scheme          yes     community-contributions-paused   OK
sed             no      -                                missing topic
seed7           no      -                                missing topic
shen            yes     community-contributions-paused   OK
sml             yes     community-contributions-accepted incorrect topic
snobol4         no      -                                missing topic
solidity        yes     community-contributions-paused   OK
sqlite          no      -                                missing topic
squirrel        no      -                                missing topic
swift           no      community-contributions-paused   incorrect topic
system-verilog  yes     community-contributions-paused   OK
tact            no      -                                missing topic
tasm            no      -                                missing topic
tcl             yes     community-contributions-paused   OK
typescript      yes     community-contributions-paused   OK
uiua            no      -                                missing topic
unison          no      community-contributions-paused   incorrect topic
vbnet           yes     community-contributions-paused   OK
vimscript       yes     community-contributions-paused   OK
vlang           no      community-contributions-accepted OK
wasm            no      community-contributions-paused   incorrect topic
wren            yes     community-contributions-paused   OK
x86-64-assembly yes     community-contributions-paused   OK
yamlscript      no      -                                missing topic
zig             yes     community-contributions-paused   OK

I’m not sure who can edit repo topics. For maintainers of repos where the Status != “OK”, can you check if you can set the topic?

  • if the workflow is in place, topic should be “community-contributions-paused”
  • otherwise “community-contributions-accepted”

I don’t believe regular maintainers do. I always had to ask Erik to do that for me.

Edit - Arturo, Coffeescript, and Rescript could use the community-contributions-accepted topic please and thank you. I’ll set Visual Basic to community contributions later this week so we can add the topic there as well.

1 Like

Tracks I (co-)maintain are a pretty diverse mess.

All three should be community-contributions-accepted, unless @depial wants to disagree (unlikely, based on past discussions). These are low-traffic tracks, and students attracted to them tend to be relatively knowledgable.

Repo Exists? Topic Status
fortran no - missing topic
julia no community-contributions-accepted OK
r no community-contributions-paused incorrect topic

I don’t think I can change the repo topic myself, so rely on @glennj to fix Fortran and R.

I/we also need to check and perhaps update the track README.md files, which may be a decade or so out of date.

I’ve updated the discrepancies: where the workflow is not installed, I’ve set the topic to “community-contributions-accepted”

If you would actually not like to accept community contributions, install the pause-community-contributions workflow and then I can switch the topic.

2 Likes

I think we can accept contributions for SQLite and GDScript.

The following scripts are not active. Maybe that should indicate no community contributions? (I’m omitting GDScript as it’s actively moving towards launch.)

arm32-assembly
dataweave
dyalog-apl
func
harbour
jai
nushell
phix
rescript
sed
seed7
snobol4
squirrel
tact
tasm

Similarly for unmaintained tracks: dataweave swift

1 Like

Probably a better way to exclude the community is to archive inactive tracks that haven’t made any progress, as shown in:

1 Like

I strongly agree with Isaac. Unmaintained tracks should be community-contributions-paused with no exceptions. If there’s no track maintainer, cross-track-maintainers do not replace the maintainer’s role in directing a track’s vision. Therefore, an unmaintained track can’t accept community contributions because there’s nobody to say what those contributions should be.

Inactive WIP tracks are a different but related problem, and they should be archived. We probably want to have an one-time grace period of a month or two so notice trickles out before we archive the first set of inactive repos. We can always unarchive the repo later, but that gives folks a reminder to be more active ahead of our action. I’d be worried that someone might wanting to revisit their WIP track but then gets scared off since it was archived without notice. That’s not a great feeling, and that might make them not want to ask for it to be unarchived again.

Once you finish the current exercise of pruning inactive maintainers, it might be useful to advertise the full list of unmaintained tracks. E.g. by posting the list in a new topic, with a suggestion that anyone who cares about them should take responsibility for maintaining. Otherwise they will stagnate.

FWIW, I became a Julia maintainer after @BethanyG quite forcefully told me to, and a Fortran maintainer after @IsaacG quite forcefully told me to. Some people just need a nudge.

Colin, you should take over maintaining all the unmaintained tracks! :smiley:

1 Like

A very compelling argument.

Swift is the only active unmaintained track with topic community-contributions-accepted

The inactive wip tracks with -accepted are:

arm32-assembly
c3lang
dataweave
dyalog-apl
func
gdscript
harbour
jai
nushell
phix
rescript
rexx
sed
seed7
snobol4
squirrel
tact
tasm

It’s beginning to look like the generic-track repo should include the pause-community-contributions workflow

3 Likes

I plead old age and infirmity…

Also ignorance.

1 Like

The pause workflow was there, it just had a typo in the filename :man_facepalming: . That’s been fixed, and the repo is now c-c-paused.

2 Likes

I’ve been tweaking the audit script. Current output is too big to paste here.

Audit of community-contribution status for exercism repos

2 Likes