JuliaPOMDP / Registry

MIT License
2 stars 2 forks source link

Remove MCTS (and others) from this registry #90

Open mossr opened 4 years ago

mossr commented 4 years ago

Hey @zsunberg, I ran into super strange dependency problems with MCTS and POMDPPolicies because MCTS was in both the General registry and this registry. All of my MCTS issues were resolve by removing this registry then adding MCTS.

I think you'd also want to remove other packages that are now in General:

zsunberg commented 4 years ago

I suspect that the issue does not have so much to do with the packages being registered here, but rather the lack of upper compat bounds on old versions of these packages.

I do not know how to edit this registry, but I would be supportive of a solution to this problem if someone has the bandwidth to figure it out. Completely removing the packages from the registry is not the most desirable solution because then there is no record of the old package versions.

I think the best way forward would be to push hard towards registering all of the packages in General with correct compat bounds so that people never have to get this registry.

mossr commented 4 years ago

Good point about old package records, I didn't think of that.

I think I found the right fix, and luckily it's simple: in the Compat.toml files in this registry, we need to cap it off at the last version of the package that lived in this registry.

e.g. for Compat.toml under MCTS, if I change ["0.4.3-0"] to be ["0.4.3"] then there is no conflicting compatibility overlap starting at version v0.4.4 which is part of General.

https://github.com/JuliaPOMDP/Registry/blob/9a6e24d5023ea638f003fcba76ea8b2ca8ebcc39/M/MCTS/Compat.toml#L21-L29

My original problem: with the JuliaPOMDP registry added, the lasted MCTS v0.4.6 was always getting POMDPPolicies v0.3.3. But without this registry, it was correctly getting POMDPPolicies v0.4.0. I tried this fix above locally and it works as expected.

zsunberg commented 4 years ago

Oh, yikes... this seems very complex and nasty. Seems like we will have to do it for every package :(

On Wed, Sep 30, 2020 at 2:31 PM Robert Moss notifications@github.com wrote:

Good point about old package records, I didn't think of that.

I think I found the right fix, and luckily it's simple: in the Compat.toml files in this registry, we need to cap it off at the last version of the package that lived in this registry.

e.g. for Compat.toml under MCTS, if I change ["0.4.3-0"] to be ["0.4.3"] then there is no conflicting compatibility overlap starting at version v0.4.4 which is part of General.

https://github.com/JuliaPOMDP/Registry/blob/9a6e24d5023ea638f003fcba76ea8b2ca8ebcc39/M/MCTS/Compat.toml#L21-L29

My original problem: with the JuliaPOMDP registry added, the lasted MCTS v0.4.6 was always getting POMDPPolicies v0.3.3. But without this registry, it was correctly getting POMDPPolicies v0.4.0. I tried this fix above locally and it works as expected.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/JuliaPOMDP/Registry/issues/90#issuecomment-701628344, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABALI24V3N77MAFK5EDW73TSIOIS5ANCNFSM4R62I22Q .

mossr commented 4 years ago

I'm hoping it's just a matter of capping the last version listed in the JuliaPOMDP/Registry.

I just posted a question about this on the Julia discourse—hopefully to get some advice: https://discourse.julialang.org/t/handling-compatibility-requirements-for-identical-packages-across-two-registries/47553