[racket] tool warnings from raco

From: Matthew Butterick (mb at mbtype.com)
Date: Mon Apr 28 20:42:16 EDT 2014

Yes, deleting ~/Library/Racket/planet cured the problem (a folder I had never known about until today)

Thanks for the help.





On Apr 28, 2014, at 5:33 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:

> I'm able to replicate the problem in my machine, and it's a problem
> with `raco setup` not cleaning up after unlinked planet packages.
> 
> Robby's instructions should work around the problem, because the
> "cache.rktd" file there is the one that's not cleaned up.
> 
> At Mon, 28 Apr 2014 19:19:40 -0500, Robby Findler wrote:
>> I'm not sure where the reference is, but I guess that if you delete
>> ~/Library/Racket/planet and then re-run "make" from the top-level,
>> then you should be in good shape.
>> 
>> Robby
>> 
>> On Mon, Apr 28, 2014 at 5:11 PM, Matthew Butterick <mb at mbtype.com> wrote:
>>>> How are you installing Racket? From a git build or a snapshot or something 
>> else?
>>> 
>>> 
>>> Two machines, both using a git build from a fork of plt/racket, updated 
>> regularly.
>>> 
>>> Turns out that deleting `info-cache.rktd` is a bad idea, because that causes 
>> most of the commands to disappear from raco.
>>> 
>>> So I rebuilt both installations from source.
>>> 
>>> After deleting all the vestigial PLaneT development links (with `raco planet 
>> unlink`) and uninstalling all my packages, I'm getting the same error on both 
>> machines:
>>> 
>>>> raco setup: 0 rendering: 
>> <pkgs>/racket-index/scribblings/main/user/start.scrbl
>>>> [... traceback ...]
>>>> raco setup: docs failure: require: PLaneT could not find the package 
>> "mb/pollen:1": Server had no matching package: No package matched the specified 
>> criteria
>>> 
>>> 
>>> The start.scrbl file that threw the error calls (make-start-page). When I 
>> print the docs this function is looking for, one of them is:
>>> 
>>>> (library 0  /path/to/git/pollen/scribblings/pollen.scrbl (planet 
>> scribblings/pollen.scrbl (mb pollen.plt 1 (= 0))))
>>> 
>>> 
>>> This is the source of the error, because mb pollen.plt has been unlinked, and 
>> that's why "No package matched the specified criteria."
>>> 
>>> But what I don't understand is why Racket has retained this vestigial 
>> reference to the PLaneT module, and how I get rid of it.
>>> 
>>> Thanks for any theories.
>>> 
>>> 
>>> 
>>> 
>>> 
>>> On Apr 27, 2014, at 6:06 PM, Robby Findler <robby at eecs.northwestern.edu> 
>> wrote:
>>> 
>>>> How are you installing Racket? From a git build or a snapshot or something 
>> else?
>>>> 
>>>> Robby
>>>> 
>>>> On Sun, Apr 27, 2014 at 7:58 PM, Matthew Butterick <mb at mbtype.com> wrote:
>>>>> Hm, that is curious.
>>>>> 
>>>>> Whenever I do `raco planet [anything]` I get `Unrecognized command: planet`.
>>>>> 
>>>>> Also, when I do `raco help` I don't get `planet` as an option:
>>>>> 
>>>>> All available commands:
>>>>> link     manage library-collection directories
>>>>> pkg      manage packages
>>>>> pollen   issue Pollen command
>>>>> setup    install and build libraries and documentation
>>>>> 
>>>>> 
>>>>> BTW could it be a problem that `pollen` is both the name of a package and a
>>>>> raco command installed by that package?
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> On Apr 27, 2014, at 5:48 PM, Robby Findler <robby at eecs.northwestern.edu>
>>>>> wrote:
>>>>> 
>>>>> The raco planet commands are still there and there are no plans to
>>>>> eliminate them.
>>>>> 
>>>>> Can you say what errors you're getting?
>>>>> 
>>>>> Robby
>>>>> 
>>>>> On Sun, Apr 27, 2014 at 7:40 PM, Matthew Butterick <mb at mbtype.com> wrote:
>>>>> 
>>>>> Do you have any links that were installed via `raco link` instead of
>>>>> `raco pkg`, such as a link from developing "pollen" before the package
>>>>> system?
>>>>> 
>>>>> 
>>>>> Yes, Pollen was originally a PLaneT module, but IIRC I used `raco planet
>>>>> link` to install it (consistent with the instructions here [1])
>>>>> 
>>>>> Here's how I can reproducibly shift between states:
>>>>> 
>>>>> 1) Warning appears ("tool "pollen" registered twice ...")
>>>>> 2) Delete `info-cache.rktd`. Warning disappears.
>>>>> 3) Do `raco pkg remove pollen`.
>>>>> 4) Go to pollen directory and do `raco pkg install`.
>>>>> 5) Warning reappears.
>>>>> 
>>>>> So maybe it's a simple matter of erasing the old PLaneT references (?) but
>>>>> I'm not sure where those lurk, and all the `raco planet ...` commands
>>>>> referenced in the docs [2] are apparently long gone.
>>>>> 
>>>>> [1] http://hashcollision.org/brainfudge/
>>>>> 
>>>>> [2]
>>>>> 
>> http://docs.racket-lang.org/planet/index.htmlhttp://docs.racket-lang.org/planet/
>> index.html
>>>>> 
>>>>> 
>>>>> 
>>>>> At Sun, 27 Apr 2014 15:12:44 -0700, Matthew Butterick wrote:
>>>>> 
>>>>> When I invoke raco from the command line, it throws the warning:
>>>>> 
>>>>> warning: tool "pollen" registered twice: "pollen" and
>>>>> #<path:/path/to/pollen>
>>>>> 
>>>>> 
>>>>> 
>>>>> This error also appeared on racket-dev in Jul 2013. At that time Matthew
>>>>> Flatt
>>>>> said:
>>>>> 
>>>>> I changed `raco setup' to use relative paths for the info-domain cache,
>>>>> but not to prune away the old absolute paths.
>>>>> 
>>>>> For now, you can delete "racket/lib/info-cache.rktd", and I'll work on
>>>>> a repair to `raco setup'.
>>>>> 
>>>>> 
>>>>> 
>>>>> But though I've tried deleting info-cache.rktd, the warning eventually
>>>>> returns.
>>>>> 
>>>>> The problem doesn't surface with other packages. It doesn't seem to affect
>>>>> how
>>>>> anything works.
>>>>> 
>>>>> It also might be a bug in this particular package, though I'm not clear how
>>>>> a
>>>>> package can mess with raco's registration scheme.
>>>>> 
>>>>> 
>>>>> ____________________
>>>>> Racket Users list:
>>>>> http://lists.racket-lang.org/users
>>>>> 
>>>>> 
>>>>> 
>>>>> ____________________
>>>>> Racket Users list:
>>>>> http://lists.racket-lang.org/users
>>>>> 
>>>>> 
>>>>> 
>>>>> ____________________
>>>>> Racket Users list:
>>>>> http://lists.racket-lang.org/users
>>>>> 
>>> 
>>> 
>>> ____________________
>>>  Racket Users list:
>>>  http://lists.racket-lang.org/users
>> ____________________
>>  Racket Users list:
>>  http://lists.racket-lang.org/users



Posted on the users mailing list.