The quickstarts page is difficult to follow and contains outdated code #1175
Closed
tomashauser
started this conversation in
Ideas
Replies: 3 comments 1 reply
-
Thanks for the notes, @tomashauser! |
Beta Was this translation helpful? Give feedback.
1 reply
-
Created an issue for this and picked up the first pieces. Have a few discussion points on a wider conceptual level. #1202 |
Beta Was this translation helpful? Give feedback.
0 replies
-
The ticket already fixed some things, but while working on this I found some other inconsistencies. Will be picking those up with a future merge request. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I tried following the quarkus-quickstart without the underlying code so that I could initially read through it, try out the steps, and then review the "solution." However, this proved challenging, as the article introduces pieces of code that use outdated APIs, and there are instances of code appearing without context. I tracked the issues I encountered so that the quickstart article can be improved. I also have a few suggestions.
In this section, you can directly use a URL with preselected options:
This saves users from manually selecting options.
In multiline commands using a backward slash (
\
), add a note for Windows users to place the command on a single line if they use CMD.In this section, it says:
"Planning value ranges need to be countable, meaning there needs to be a finite number of possible planning values."
This is not technically correct, as countability does not imply finiteness (for example, the set of natural numbers is countable but infinite). I would suggest saying that they need to come from a finite collection.
When reaching this step: Create the Solver Service, the tutorial starts using
javax.ws.rs
, but newer versions of Quarkus will rightly complain thatjakarta
imports (e.g.,jakarta.inject.Inject
,jakarta.ws.rs.POST
,jakarta.ws.rs.Path
) should be used.In this section, you call
TimetableConstraintProvider::roomConflict
, but in this earlier section, it was made a private method.The code from the previous point is also invalid, as the room variable is named
ROOM
, notROOM1
as referenced in theroomConflict
test. Additionally, the newLesson
object calls a constructor that wasn't defined in theLesson
class snippet.In Test the Solver,
jakarta.inject
is correctly used, but the constraint test before it still usesjavax
imports, which Quarkus does not accept.The test in this section uses
org.awaitility
, which was not listed in the dependency list at the beginning of the tutorial.Finally, the test in Test the Solver calls
.getSolverStatus
, which is not part of theTimetable
definition. The user following this quickstart has no way of knowing the contents without downloading the quickstart project files. Additionally, there is mention of demo data that isn't explained elsewhere.Beta Was this translation helpful? Give feedback.
All reactions