Boost filesystem v3

Discussion related to the implementation of new features & algorithms to the Core Engine.

Moderators: jromang, tomb, zcott, coordinators

Boost filesystem v3

Postby Omniflux » Wed Apr 04, 2012 11:54 pm

Luxrender currently uses Boost filesystem v2 which is deprecated. The Boost website states that Boost filesystem v2 will not be included in Boost releases 1.48 and later (although it is still available as of Boost 1.49).

Switching to Boost filesystem v3 will require one of the following:
  • Supporting both v2 and v3 with ifdefs around the affected code.
  • Implementing a compatibility layer which implements the ifdefs and code.
  • Switching to v3 and breaking compatibility with Boost versions less than 1.44

Attached is a patch implementing the third option. It actually breaks compatibility with Boost versions less than 1.46, but can be extended to 1.44 by defining BOOST_FILESYSTEM_VERSION as 3.

What are your thoughts on making this change? Should we not worry about it yet, and wait until v2 is actually removed from Boost?
Attachments
boost_filesystem_v3.patch
Patch to update to Boost filesystem v3
(14.66 KiB) Downloaded 9 times
Omniflux
Developer
 
Posts: 51
Joined: Mon Nov 15, 2010 8:41 pm

Re: Boost filesystem v3

Postby SATtva » Thu Apr 05, 2012 12:17 am

We already seem to de facto switched to 1.47 for official builds, and most likely it will be the version of choice for 0.9 RCs and final. So i'd say the third option is safe and a way to go.
Linux builds packager
聞くのは一時の恥、聞かぬのは一生の恥
User avatar
SATtva
Developer
 
Posts: 5487
Joined: Tue Apr 07, 2009 12:19 pm
Location: from Siberia with love

Re: Boost filesystem v3

Postby J the Ninja » Thu Apr 05, 2012 1:07 am

SATtva wrote:We already seem to de facto switched to 1.47 for official builds, and most likely it will be the version of choice for 0.9 RCs and final. So i'd say the third option is safe and a way to go.


Seconded. We've been using 1.47 pretty much exclusively for a month or two now, nothing has exploded and no pets have died that we're aware of. Might as well just fully switch to v3.
-Jason

Material DB Admin
User avatar
J the Ninja
Developer
 
Posts: 2207
Joined: Wed May 19, 2010 9:54 pm
Location: Portland, USA

Re: Boost filesystem v3

Postby jeanphi » Thu Apr 05, 2012 2:12 am

Hi,

Option 3 is the only reasonable one, and it is a good time to make the switch since we will soon enter RC cycle.

Jeanphi
jeanphi
Developer
 
Posts: 6569
Joined: Mon Jan 14, 2008 7:21 am

Re: Boost filesystem v3

Postby Omniflux » Sun Apr 08, 2012 8:55 pm

I have updated the patch to simplify some things and get it to compile on linux.

Is there someone who can test it on OS X for me?
Attachments
boost_filesystem_v3.patch
Patch to update to Boost filesystem v3
(14.57 KiB) Downloaded 7 times
Omniflux
Developer
 
Posts: 51
Joined: Mon Nov 15, 2010 8:41 pm

Re: Boost filesystem v3

Postby Carbonflux » Tue Apr 10, 2012 7:42 am

What I find frustrating about this is there is no actual practical reason to do it, I am not objecting to this change given the group think is all for it but I can't help but call attention to the fact that switching to the v3 file system has no practical value in terms of features, its just about formally dotting the i's and crossing the t's which just makes work for people without providing any benefit.

Just what is the benefit to switching to v3?

Someone changed a few lines of code and now v2 is "depreciated." Boost is a experimental platform, its not meant to be taken literally.

Its has been several years since we have needed a new feature from boost yet again and again we are breaking the build and backward compatibility because the number is higher.

This has nothing to do with rendering images at all.

I really wish I was not forced into the position of being the crazy bad guy about this, its not fair that I have to take the beating for just being rational. Why do we have to keep breaking stuff that works fine? Why is it that I am forced into a position where I have to be critical of a new and talented developer? Someone we really need contributing to the project.

I am tired of being the forced into the role of the monster in the room.
www.carbonflux.org - photographing the imagination.
User avatar
Carbonflux
Developer
 
Posts: 1394
Joined: Thu Aug 07, 2008 7:22 pm
Location: Seattle, WA, USA.

Re: Boost filesystem v3

Postby Lord Crc » Tue Apr 10, 2012 8:23 am

Carbonflux wrote:Just what is the benefit to switching to v3?


The only real benefit from Filesystem v3 that I've managed to see is that v3 has a POSIX compliant rename() function, so that we can avoid the sometimes-failing workaround we have now, for example in Film::CreateBuffers() or Film::WriteResumeFilm().

Other than that Filesystem v3 is required for using boost > 1.49, so any user who wishes to compile lux will have to use Boost <= 1.49 until we switch. On the other hand, once we switch, users will have to use Boost >= 1.44.
May contain traces of nuts.
User avatar
Lord Crc
Developer
 
Posts: 4446
Joined: Sat Nov 17, 2007 2:10 pm

Re: Boost filesystem v3

Postby jeanphi » Tue Apr 10, 2012 9:50 am

Hi,

And also note that each version of boost does not only bring features (that we might use or not) but also fixes and improvements to existing features which are sometimes noteworthy for performance or security.

Jeanphi
jeanphi
Developer
 
Posts: 6569
Joined: Mon Jan 14, 2008 7:21 am

Re: Boost filesystem v3

Postby Lord Crc » Tue Apr 10, 2012 10:06 am

jeanphi wrote:And also note that each version of boost does not only bring features (that we might use or not) but also fixes and improvements to existing features which are sometimes noteworthy for performance or security.


True, especially Boost.Asio and Boost.Thread has gotten a lot of bugfixes since 1.43 which may be relevant to us.
May contain traces of nuts.
User avatar
Lord Crc
Developer
 
Posts: 4446
Joined: Sat Nov 17, 2007 2:10 pm

Re: Boost filesystem v3

Postby Omniflux » Tue Apr 10, 2012 12:14 pm

Carbonflux wrote:Why is it that I am forced into a position where I have to be critical of a new and talented developer?

I see nothing critical about me or the work I've done, only the decision of whether or not to make this change, which is specifically what I created this thread for.
Omniflux
Developer
 
Posts: 51
Joined: Mon Nov 15, 2010 8:41 pm


Return to Architecture & Design

Who is online

Users browsing this forum: No registered users and 0 guests