@defmodule[SRFI-105 #:reader]{
This reader package provides the SRFI-105 Curly Infix reader/parser.
}
@defmodule[Scheme+]{
This package provides the Scheme+ language definitions.
}
I'm not sure I understand the issue. The two packages depend on each other, so they should both declare that dependency. (The dependency declaration for Scheme+ on SRFI-105 appears to be commented out.) Dependency declarations are the way to control the package-build order.
Maybe the concern was about packages being mutually dependent. Although modules cannot be mutually dependent, packages are allowed to be mutually dependent — and then they will be built and installed together.
It is normal to be commented , it was in previous version, but perheaps i can try to decomment it (but will make a circular reference)
The codes works fine , i just changed the unfinished documentation and commited too early. It is true that there sould be 20 lines of code common to the 2 package, to not create circular dependancies (but perheaps as you say ...) that i had duplicated in the 2 modules, not elegant...
i just,while writing my reply, provided the common code from Scheme+ and required it in SRFI-105 (and commented the duplicate code in SRFI-105)
but even if they build the system report errors in red and i think this result in Fails statut in Racket package system, so i prefer avoid circular reference between package even if they should be allowed.
Get back to the problem: it is only a documentation problem, no real problem in code. It is because i mentioned the SRFI-105 reader in the Scheme+ doc... i do not know what magic do the package manager but it fails because that.
A solution would be to just mention SRFI-105 in text not use in doc , not use some macro that do weird things.
I had commited that in new versions to check this idea.Both for SRFI-105 and Scheme+, just have to wait a few hours what will be the status of packages......
You can make a cross-document reference "indirect", which means that the other document doesn't need to be installed, and a link rendered in local documentation will go to https://docs.racket-lang.org if the target document isn't installed.
Only some kinds of documentation links can be indirect. As examples, seclink and racketmodname recognize #:indirect to create indirect links.
The 2 projects now no more fail. The offending lines where only those containing a reference in the documentation to SRFI-105, that is the one already removed and also those which look like that:
i had to removed the first line of code which is annoying for the documentation:
@codeblock|{
(require Scheme+)
{3 * 5 + 2}
17
}|
i will try your solution to uncomment out and make the 2 packages depend on each other even if it is only for documentation. Anyway it is true they are almost used together.