imagej / imagej/pyimagej

Expand directory-based initialization options

Open
#142 1 comment 1 reaction 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
534
Forks
95
PR merge metrics
No merged PRs in 30d

Description

Currently if you give `imagej.init(...)` a directory it assumes it's a Fiji/ImageJ installation and always looks in `jars` and `plugins` subdirctories. For completeness it may be useful to provide an option where the user completely configures their own environment.

This would be done through `scyjava`, adding jars to the classpath explicitly. We may want to add a public [_search_for_jars](https://github.com/imagej/pyimagej/blob/a8c5261ebf12d583d71696fba7db4f76a95a7906/imagej/__init__.py#L65) to `scyjava`.

Most importantly we would need a mechanism to prevent the automatic endpoint and/or classpath modification.. perhaps a `populate_classpath` flag in [the init()](https://github.com/imagej/pyimagej/blob/a8c5261ebf12d583d71696fba7db4f76a95a7906/imagej/__init__.py#L98) method that defaults to `True`, and if `False` skips the [bulk of init()](https://github.com/imagej/pyimagej/blob/a8c5261ebf12d583d71696fba7db4f76a95a7906/imagej/__init__.py#L122-L172).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with imagej/__init__.py, especially _search_for_jars and init() around the linked lines, then review how scyjava handles explicit jars and endpoint or classpath changes. Done means directory initialization can use a user-configured environment, including explicit classpath setup and a way to skip automatic population when requested.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
developer-experience
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.