dodona-edu / dodona

🧑‍💻 Learn to code for secondary and higher education
https://dodona.be
MIT License
70 stars 23 forks source link

Allow linking to exercises in the same repo #1050

Closed beardhatcode closed 1 month ago

beardhatcode commented 5 years ago

It would be nice to be able to link to an other exercise in a repo.

I was thinking of something like this:

Write a `goal` predicate for an  
[iterative deepning](exercise:/SearchAlgorithms/ItterDepth) 
algorithm that ...

This link should refer to the exercise that is at /SearchAlgorithms/ItterDepth as seen from the root of the current repository:


I don't know what should happen with

Original issue by @beardhatcode on Tue Apr 30 2019 at 13:42.

ninewise commented 5 years ago

How about referring by exercise token? This is the only cross-instance identifier we have.

Though [iterative deepning](exercise:1poiu23w0f98poq2iu1209384) is a bit ugly.

Original comment by @ninewise on Tue Apr 30 2019 at 14:39.

beardhatcode commented 5 years ago

Looking up exercise with token 1poiu23w0f98poq2iu1209384 is equally costly to looing up exercise with path /SearchAlgorithms/ItterDepth. Both string comparisons of relatively short size in the database. (I think)

Original comment by @beardhatcode on Tue Apr 30 2019 at 15:18.

chvp commented 5 years ago

Paths are more natural, and we don't want people to ascribe any meaning to the tokens, so if/when this is implemented I'm definitely a proponent of the using the path as the identifier (both are unique (within the repo)). This does prevent inter-repo links, but those seem less useful to me anyway.

Original comment by @charvp on Tue Apr 30 2019 at 15:56.

pdawyndt commented 5 years ago

Inter-repo links will always be possible using a plain URL (as is done now). This suggestion is only an additional way to included references to other exercises.

Original comment by @pdawyndt on Tue Apr 30 2019 at 16:25.

JoFAM commented 1 year ago

@bmesuere Any update on this? I could really use this to be honest...

bmesuere commented 1 year ago

@JoFAM We have no way to implement this without a significant refactor of how Dodona works, so don't expect this any time soon.

jorg-vr commented 1 month ago

For now not feasible