-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
1.10.0 Release #2772
Comments
👍 for keeping up with regular releases. We are still not a C++14 library when it comes to officially released versions, so the sooner the new version comes out, the better. I'm fine having April as our target, though I won't be strict about this. As a long-term goal I would like to have Boost types in the library API to be replaced with Edit: I've started #2792 to discuss smart pointer transition. |
As far as transitioning to C++14 and new release version is concernd, since moving from Boost to STL introduces breaking changes, shouldn't the targeted release for C++14 be a major one? |
I believe PCL 2.x.x was reserved for really big changes e.g. a templated free version of the library following in the footsteps of OpenCV. Without funding I don't see this happening, so I'm open to discussion on this. The current status is:
|
@SergioRAgostinho thanks for the explanation 👍 |
Exactly. (At least in my head) version 2 is reserved for a major revision of the library. Anything short of that would not fulfill expectations.
I'd say we loosely follow SemVer. The SemVer rules are:
On the PCL side we
|
Thanks! 👍 |
Time, time... I've created an to-do issue though. |
Eheh sure, didn't want to push anyone to rush for it 😄 |
I'm aiming at investing one week worth of time around early May (5th onward) to push for this release. @PointCloudLibrary/maintainers If any of you has some time to spare around that period let me know so we can decide on the goals and light sprints. @claudiofantacci and @SunBlack the same question and offer extends to you both. Edit: Or anyone else who reads this post and wants to contribute. |
I support the idea of pushing for the release, would be nice to get it out soon. Unfortunately I can not commit to spending much more time than I normally do, but I will try increase my availability for speedy reviews, discussions, and testing. |
Sounds good. Shall we have a quick chat over Skype/Slack/Gitter/something sometime between 2nd-3rd of May just to agree on the "work package"? |
As far as I remember there is a Gitter room for PCL, so we can have an online discussion there. I'll be available first half of the day 2nd and during working hours 3rd. |
Works for me for the full periods you suggested. There is indeed a Gitter channel. Let's see if someone else joins in. |
Let's chat tomorrow 2PM CET on Gitter? |
I have an exam appointment between 2 and 3 that quite unexpectedly landed in my schedule. Will be free to join immediately after. |
Let's start at 3 then. I'm not sure if anyone else will show up. ^^ |
Testing the waters here: after noticing the potential API breakage that the transition from boost to std is causing I'm starting to question if it won't be better to call the new release PCL 2.0.0. |
I'd be against. We've broken API on multiple occasions before and did not bump major version. If we were to follow strict semver, even when we remove deprecated functions we would need to do a major release! This we clearly don't do, so in PCL we tend to follow "loose" semver. With this in mind, I don't see a reason to suddenly become strict about potential (and hopefully mild) API breakage. Now think about it this way. There is a library that doesn't strictly follow semver. This library makes 2.0 release. What would you expect from this release? I would expect new features, huge refactorings/rearrangements of modules, updates to the core. Certainly waaaay more than just |
Semantic versioning has at least one big advantage: package managers tend to follow it when possible when asked to upgrade a library to a compatible version. I've been using PCL with Conan, and it does take into account semantic versioning when asked to pick compatible dependencies (and AFAIK considers anything that looks like semver to be semver). If you had to switch versioning schemes, the most obvious thing to do would be to write a big disclaimer somewhere and to make sure that it is among the first things mentioned in the changelogs. |
Any updates on the release? |
Life took over and I have not been able to sit at the desk during my free time. |
Yes, 1.10 will require full support of C++14 standard. Therefore, I assume VS2013 will not work. |
@aslze As per this table and a quick grep for variadic templates, at least VS 2015.2 is required for PCL 1.10. I don't know how much the |
My work on smart pointer transition has stalled a while ago and currently, I don't have time to proceed with it. This delays the next release (which is already overdue) by unknown time. I feel we should drop most of the items from the 1.10 milestone and release soon, the diff to the previous release is already enormous. I've checked the milestone items and the TODOs from Sergio's list. I think the following two are the most important, the rest can be moved to 1.11:
@PointCloudLibrary/maintainers what do you think? |
I agree. Some of the pending items require some proper time investment in order be properly fixed. As an example, I've tried at least 3 times to venture into finishing the migration of the random generators withing |
I forgot to add, it is worth to merge #3345 as is and address the pending items later, if we are to close the milestone. |
Just curious, is there a new estimate for when this will be released? There is about one month left for getting this into Ubuntu 20.04 which could be considered a goal? (Not saying it's still a realistic goal but even arbitrary deadlines can sometimes be helpfull ... 😉 ) |
Good to know and agreed. I'll see what I can do. 😉 |
I'm back from my holidays, so I can chip in |
Thanks for the ping. I think getting this into Ubuntu 20.04 is a goal worth pursuing. Big question is: do we want to flip the |
I think yes because it was delayed for the switch (one of the TODOs).
If Sergio is also hesitant, we could release in 2 different modes, conflicting with each other: say |
* Kunal Tyagi <notifications@github.com> [2020-01-09 17:34]:
> do we want to flip the boost::shared_ptr -> std::shared_ptr switch before the release or not?
I think yes because it was delayed for the switch (one of the TODOs).
I vote no. If a feature is not tested, it's not ready.
> I feel uneasy about making this change and hastily tagging 1.10
If Sergio is also hesitant, we could release in 2 different modes, conflicting with each other: say `pcl-std`, `pcl-boost`. I know it's possible on Ubuntu, Arch and MacOS (but might not be possible on vcpkg)
I don't think we will get such a big change in time into Ubuntu.
Note that we set the soversion to major.minor, so 1.10 will be the new
ABI version (I didn't check if there is actually a ABI break). That
means we need to go through the Debian ftp-masters and request a
transition slot from the release team. So I'm not sure if we could make
it into Ubuntu 20.04 at all (but will help as much as I can).
|
From a user POV I'd that getting a new version that works is more important than the shared pointer change. I would even say that letting another version flow before the switch is better: it lets them the time to change |
We added aliases this release, so maybe it makes sense not to flip the switch but to instead release it later. At the same time, we should release it with the switch soon (maybe as 1.11 for 20.10 instead of 20.04) because we wouldn't know what issues crop up till we do it and preferably with little to no changes to the code (just the flip ie.). There's plenty of time for testing till then.
There's no such thing (I think) 😄
Did you mean 2 flavors or the flip? |
Oh? I read the issue about |
@jspricke @Morwenn thanks for the inputs.
Absolutely, at the very least because we jump from C++98 to C++14.
Same assessment here. In the last months, we put some effort into making sure that all API-visible smart pointers are hidden behind typedefs. Thus ideally, the shared pointer change will be invisible to the users. And if it is invisible, why would they even care? 😄
As @kunaltyagi mentioned, we don't have
I'm pro flipping in |
* Kunal Tyagi <notifications@github.com> [2020-01-10 03:19]:
> I don't think we will get such a big change in time into Ubuntu
Did you mean 2 flavors or the flip?
2 flavors.
|
Congratulations 1.10.0 Release! 🎉 |
I can create the darwin package for Mojave (10.14.6) |
* Sergey Alexandrov <notifications@github.com> [2020-01-19 08:53]:
I've tagged [1.10.0](https://github.com/PointCloudLibrary/pcl/releases/tag/pcl-1.10.0).
Awesome, congrats!
@jspricke what are the steps we need to take to get this version into Ubuntu 20.04?
I will work on it. We need to get into Debian first ;).
Cheers Jochen
|
PCL 1.10.0 All-in-one Installer released! 👍 |
Mojave package too :) (Don't know if it'll work on other systems though, didn't test that) |
Congrats guys :) |
Hello, sorry if obvious (I am new to PCL), but it seems the All in One does not include io/real_sense_grabber.h? Am I missing something? Thanks. |
@skhadem Pre-built PCL included in PCL All-in-one Installer is built with basic options. |
I'll add the task list later. I just want to converge on the approximate date. I would propose early/mid April, after ICCV and IROS deadlines if I'm not mistaken.
I'm also looking to converge on the essential features to be released. I'm aiming at finishing the C++14 migration, or getting close to.
boost::function
tostd::function
#3079, AddregisterCallback()
overload to grabbers to support assignment ofboost::function
s with templated signatures #3128boost::tuple
tostd::tuple
#3250boost::unordered_map
tostd::unordered_map
#3107Replace random_shuffle by shuffle #3069, Use C++11 random generator instead of Boost in RangeLikelihood #2988, Inconsistent handling of default seed in NormalGenerator & UniformGenerator #2985, Replace boost::mt19937 with std::mt19937 #2803, Replace UuidGenerator of Boost in OutofcoreOctreeDiskContainer #2955COMPONENTS
when finding VTK to avoid linking agains unnecessary modules #3140Add RSSDK 2.0 (librealsense2) grabber #2214,Changes to RSSDK 2.0 grabber #3467, Configuration fails on Linux host with librealsense2 installed #3481, Downgrade RSSDK2 warning message to status. #3490Tentative schedule:
May 12thJune 9th -15 week just to get the PRs outMay 26thJune 23rd - 1-2 weeks to review everything.June 9thJuly 7th - 1-2 weeks prepare the actual release. Revise PR labels and titlesThe text was updated successfully, but these errors were encountered: