intersystems / intersystems/ipm

FindHomeModule() returns null for mapped items

Open
#1,233 1 comment 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
ObjectScript
Stars
41
Forks
29
Avg merge
23h 54m
Merged PRs (30d)
4

Description

## Describe the bug
If code is mapped from an IPM package that is installed in a separate namespace, this method in IPM's API will say that it does not belong to any IPM package: `##class(%IPM.ExtensionBase.Utils).FindHomeModule()`

## To Reproduce
Steps to reproduce the behavior:
1. `zpm "install git-source-control"`
2. `do ##class(SourceControl.Git.API).MapEverywhere()`
3. Switch to another namespace
4. `write ##class(%IPM.ExtensionBase.Utils).FindHomeModule("SourceControl.Git.API.cls")` should write an IPM module object, but it writes nothing.

## Expected behavior
`FindHomeModule` should follow the item to its mapped namespace and give me the appropriate module reference.

## System information (please complete the following information):
- IPM version: 0.10.9
- IRIS version: IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2026.1 (Build 234U) Fri Mar 27 2026 14:07:14 EDT

## Additional context
This is root cause of an Embedded Git bug: https://github.com/intersystems/git-source-control/issues/997

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the issue with zpm install git-source-control, MapEverywhere(), and a namespace switch, then inspect %IPM.ExtensionBase.Utils.FindHomeModule(). Done means FindHomeModule("SourceControl.Git.API.cls") returns the appropriate IPM module reference for code mapped from a package installed in another namespace.

Written by the indexing model from the issue text.

Assessment

Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
70/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.