Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Timeline for removing deprecated classes #61

Open
hanslovsky opened this issue Apr 17, 2018 · 3 comments
Open

Timeline for removing deprecated classes #61

hanslovsky opened this issue Apr 17, 2018 · 3 comments

Comments

@hanslovsky
Copy link
Member

Some classes in imglib2-algorithm are labeled deprecated, e.g. net.imglib2.algorithm.gauss.Gauss. Do we have a timeline for when they should be removed? This should certainly happen before a 1.0.0 release as the zero major version still indicates a fluid API. My thought on this is that this should happen sooner rather than later because multiple classes (some of which are deprecated) with similar functionality can be confusing for callers, for example #59. Also, the sooner deprecated methods disappear, the sooner people stop building their software on top of them.

@tpietzsch
Copy link
Member

Gauss we can certainly remove. It's been deprecated for years.
In general, I'm for removing everything for which there is already a replacement.

@hanslovsky
Copy link
Member Author

I will compile a list of all deprecated classes/method (and replacements, if any).

@hanslovsky
Copy link
Member Author

hanslovsky commented Apr 18, 2018

package class what replacement in use within imglib2-algorithm
net.imglib2.algorithm.integral ScaleAreaAveraging2d two constructors N/A no
net.imglib2.algorithm.labeling AllConnectedComponents whole class ConnectedComponents, ConnectedComponentsAnalysis (PR) net.imglib2.algorithm.labeling.Watershed
net.imglib2.algorithm.region.localneighborhood.old all classes whole class net.imglib2.algorithm.neighborhood no/only within deprecated package
net.imglib2.algorithm.gauss all but AbstractGauss whole class net.imglib2.algorithm.gauss3 no/only within deprecated package
net.imglib2.multithreading all classes whole class N/A yes
net.imglib2.algorithm.localextrema LocalExtrema findLocalExtrema( RandomAccessibleInterval, LocalNeighborhoodCheck, ExecutorService ) yes within same class yes
net.imglib2.algorithm.fill all all helper interfaces and old unintuitive interfaces in FloodFill yes within same class no

I suggest removing

  • net.imglib2.algorithm.integral.ScaleAreaAveraging2d constructors
  • net.imglib2.algorithm.region.localneighborhood.old
  • net.imglib2.algorithm.gauss

I somehow missed the @Deprecated tag in LocalExtrema. Added to the list. The only use within imglib2-algorithm is inside DogDetection.

I also added all classes relevant for FloodFill after the merge of #58. I would like to remove those but it feels somewhat wrong because they were deprecated just now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants