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

Move older concept/exercise drafts to older-drafts folder #791

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

colinleach
Copy link
Sponsor Contributor

@colinleach colinleach commented Sep 20, 2024

[no important files changed]

I moved all the unmerged older learning syllabus material to older-drafts/, with subdirectories for concepts and exercises. The aim is that the Exercism website will now ignore these, even for maintainers.

No file contents were changed, only the location.

I added .gitkeep files to concepts.wip/ and exercises/concept.wip/ so they stay around, even when empty. I guess we will want to use these as a staging area for new drafts?

Comments welcome on whether this is the best way to nake the change.

I'd love to move the 3 old concepts currently in concepts/: these are going to be replaced by the new basics concept when it is merged. I'm hesitant:

  • The old 3 are merged, with entries in config.sys.
  • The Exercism website probably expects to find them?

Does anyone know how to deprecate a concept that is no longer needed? Exercises have a status field, but there seems to be nothing equivalent for concepts.

@colinleach
Copy link
Sponsor Contributor Author

I should have said: this follows on from Issue #789.

@depial
Copy link
Contributor

depial commented Sep 26, 2024

The aim is that the Exercism website will now ignore these, even for maintainers.

I've noticed that the Leap that was deleted is still on the website, under the Practice tab, while now there is now also a duplicate of Annalyn's Infiltration there. I'm wondering why the old ones aren't being deleted from the site?

Another note: I was hesitant to wipe them from the site before we have replacements, but now I feel it wouldn't make a big difference, since I don't think there are many completions anyway.

@colinleach
Copy link
Sponsor Contributor Author

The issue of duplicates and old concept exercises hanging around only seems to affect maintainers. If you look at the exercises in incognito, it all looks correct.

For Leap, I suspect (but can't be sure) that I still see the Concept version on the Practice tab because I solved Leap in the past: only as a practice exercise, but these are now hopelessly muddled. I assume that successful solutions go into a MySQL table, with (student, track, exercise) fields, so the website still shows it to me as something I published. It would need @iHiD to untangle that at the SQL level, and my guess is that he will see it as more trouble than it's worth - given only the two of us are affected,

It could be worse. I just filtered the practice exercise page to show Annalyn's Infiltration, and I'm seeing a magnificent 7 copies! I'm hoping this PR will fix that problem, but we'd need to test that empirically.

@iHiD
Copy link
Member

iHiD commented Sep 27, 2024

I think any exercises also need to be marked as deprecated in the config.json before we can merge this. Otherwise I think things will just break.

@colinleach
Copy link
Sponsor Contributor Author

exercises also need to be marked as deprecated in the config.json before we can merge this

That's part of the confusion - there is no mention of these draft concept exercises in the config.json. They are in a directory called exercises/concept.wip, and the website seems to find them and display them to maintainers. We have no way to deprecate them, other than moving them to somewhere more hidden. All suggestions welcome, if I'm missing something.

Leap is a bigger tangle, because it was created at one time as a concept exercise, as well as a practice exercise. That got the software as confused as I am (which is saying something).

@BethanyG
Copy link
Member

While the concept key is set to false, your config.json still has a concept exercise array, with a number of exercises flagged wip. I think that's what the website is picking up, and what you have to label as deprecated.

Here's the block.

As compared to Python, where we have wip, but also one that's deprecated. The deprecated exercise (Electric Bill) doesn't show for anyone, and is noted as deprecated on the track build status page. The WIP exercise (Pretty Leaflet) shows to maintainers, and is not shown on the track build status page under active exercises/concepts.

@colinleach
Copy link
Sponsor Contributor Author

colinleach commented Sep 27, 2024

that's what the website is picking up, and what you have to label as deprecated

Apologies for maybe not explaining it clearly enough, but that block isn't the problem. Lasagna and Annelyn's Infiltration are the result of recent/ongoing PRs.

What we're trying to get rid of are the old drafts such as dnd-char, emoji-times and the ever-annoying concept variant of leap, which are mentioned nowhere in config.json.

Several of these exercises may be recycled in the future into new versions, extensively rewritten and with new UUIDs. We're not trying to deprecate the name of the exercise, just the draft implementation.

@colinleach
Copy link
Sponsor Contributor Author

colinleach commented Sep 27, 2024

I should have included a link to the relevant directory.

I'm quite surprised this even exists, more surprised that the website treats it as special (presumably because it's under exercises, alongside concept and practice). We're just trying to empty it, to reduce distractions as we start adding new stuff.

Would that break the website? That can only be answered by someone who understands why the website even lists the contents of exercises/concept.wip and what information it might be caching outside the GH repo. It's not coming from config.json.

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.

4 participants