We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

[Tasks Java] [17.11 --> 18.4] Java API change on WorkingTimeCollection.remove( ) breaking existing application and requiring recompilation - any reason?


In Aspose Tasks Java 17.11, the class WorkingTimeCollection has only one remove() method:

public boolean remove(WorkingTime wt)

However, somewhere along the way to version 18.4, it has been replaced by two different methods with different parameter types:

public boolean remove(Object wt)

public WorkingTime remove(int index)

As a result, code compiled against Aspose 17.11 now fails to execute as it cannot find the remove() method taking a WorkTime object as parameter.

So, sure, the code can work if recompiled with Aspose 18.4 so that the method using an Object will now be linked, but is there any justification on why you had to change this signature to use Object and couldn’t keep a version with a WorkTime type as parameter? I may have unrealistic expectations in hoping that I can just drop in a new version of Aspose Tasks and get everything to keep working without having to recompile :slight_smile:

For my information, is this kind of API change common with Aspose Tasks for the sake of maintaining a clean & simple API, or is it considered an unfortunate event that should be avoided as much as possible in the future?
Both are fine and reasonable answers, but I want to understand if I need to make it a habit to recompile & reship all my code leveraging Aspose whenever I need to deliver a new version of Aspose Tasks - which is quite often considering the good job you’re doing on fixing these MSP 2016 format support issues with each new release.



We regret the inconvenience caused to you.

Yes, that shouldn’t have happened atleast prior notification about the change which has unfortunately happened now. The recompile will work though. With every release, we are incorporating modifications that can involve changes but that are first notified to users before removing completely from the API. We are further getting information about this change at our end and will soon update you here with our findings.