User:Abhiram/GSoC2023/Log

From BRL-CAD

Development Logs[edit]

Community Bonding Period, May 4th – May 28th

  • Got a bit familiar with CMake
  • Spoke with my mentor on how to proceed with things moving ahead
  • Made a note of all the current libraries and their last supported version for Python2
  • Got more familiar with c++ part of the codebase

Work Period

Monday, May 29th, 2023[edit]

  • Appleseed gave some build errors which previously weren't there, maybe it happened because I have accidentally moved some files
  • I have my semester end exam on May 30th, couldn't focus on this because of that. Will try to fix it the next day.

Tuesday, May 30th, 2023[edit]

  • Fixed the error, had to clear the path to dependencies and add them again. The root cause is still unknown, but hopefully it doesn't occur again.
  • Made changes to the development environment using python poetry (helps manage virtual environments better)
  • UPDATE: will work on updating build logic for now, once I have enough time (i.e., after my final exams are over on June 8th) I will switch the development environment to Linux as that will make things a lot easier for me.

Wednesday, May 31st, 2023[edit]

  • Couldn't work on the project as I had an exam the next day

Thursday, June 1st, 2023[edit]

  • Updated the runtestsuite.py file to python3
  • Updated png.py file to python3, replaced all the map functions present in the file with list comprehension, updated the usage of the next() method and few other changes

Friday, June 2nd, 2023[edit]

  • Updated the appleseed.package file. Removed Unicode prefix
  • Updated cleanmany.py file. Added parenthesis to print function and replaced format with f-strings.
  • Updated convermany.py file. Made changes to print function and updated the next method

Saturday, June 3rd, 2023[edit]

  • Most of the changes I am making are almost repetitive so ill stop mention them unless a new change is made
  • Updated oslextractmeta, rendermanager, rendermany, rendernode files.
  • In rendernode.py renamed the module _winreg to winreg

Sunday, June 4th, 2023[edit]

  • Have an exam coming up so didn't do any work

Monday, June 5th, 2023[edit]

  • Had an exam the next day

Tuesday, June 6th, 2023[edit]

  • Update updatetestsuiterefimages.py and sortincludes.py to python3

Wednesday, June 7th, 2023[edit]

  • Had an exam the next day (last one, will be done with my exams and my semester break starts :D )

Thursday, June 8th, 2023[edit]

  • Finalized updating the /scripts folder to python3
  • Will now work on the python files present in the /sandbox/share folder
  • Updated aspaths2json.py, mitsuba2appleseed.py and rfmdisneypresets2appleseed.py to python3 (mostly involved updating the print functions and removing deprecated import statements)

Friday, June 9th, 2023[edit]

  • Updated all the files present in the /sandbox/examples/python and /sandbox/share folders
  • Finished updating all the files present in the sandbox directory

Saturday, June 10th, 2023[edit]

  • Updated __init__.py, logtarget.py and textureconverter.py. All these files are from /src/appleseed.python directory.

Sunday, June 11th, 2023[edit]

  • Got sick so had to take a day off :/

Monday, June 12th, 2023[edit]

  • Updated runtests.py. Changed the unittest.Testprogram class to unittest.main() function, which also automatically determines the test environmentte
  • Updated testbasis.py and testdict2dict.py
  • Updated testentitymap.py. All of the files updated today belong to /src/appleseed.python/test directory.

Tuesday, June 13th, 2023[edit]

  • Went through the rest of the files, all of them are compatible with python3, no changes are required.
  • This concludes Milestone-1 which is updating the build logic of Python2 files to Python3.
  • Will move on to the testing phase now. So far I am inline with the proposed schedule, I think ill be ahead of schedule soon enough.

Wednesday, June 14th, 2023[edit]

  • Spent most of the time setting up a proper Linux environment, ran into numerous problems(thank you windows! QAQ ), most of which I fixed. Will get back to it tomorrow.

Thursday, June 15th, 2023[edit]

  • Almost finished setting up the environment, took me a lot of time than I expected it to
  • resolved some of the conflicts that were present in the CmakeLists file. Will resolve the remaining tomorrow.

Friday, June 16th, 2023[edit]

  • Spent almost the entire day(10-11h) trying to fix this error
    file STRINGS file "/include/boost_1_61_0/boost/version.hpp 
    cannot be read.). Tried giving read permission manually, resetting the entire environment, nothing seemed to work.
  • Because of the following error boost is not being detected properly. In one attempt the build failed at around 48% because one of the variables wasnt defined, after that when I tried to rebuild it came to the same version.hpp error

Saturday, June 17th, 2023[edit]

  • Decided to take a break to free up my mental exhaustion, will get back to the error on Monday

Monday, June 19th 2023[edit]

  • cloning the repository again and starting from the scratch somehow fixed the cannot read version.hpp file and a bunch of other errors, really dont know what the problem was here.
  • during the building process at around 48% I am getting this new error
    /bin/sh: 1: ../../../sandbox/bin/oslc: Permission denied
    tried giving permission to the oslc file manually using chmod, but the permission gets overwritten when the build process is running.

Wednesday, June 21st 2023[edit]

  • Submitted milestone1 pull request (updating all the python files to python3)

Friday, June 23rd 2023[edit]

  • Found a workaround for the oslc file permission denied error. Faced a lot of errors after that but i finished the build process. I think the build Appleseed from source (linux docs) need a lot of updates even for the current version of Appleseed.

Saturday, June 24th 2023[edit]

  • Will be working towards my next milestone, i.e., updating the QT code to the latest version to make it compatible with python3. Went to through the QT docs to familiarize myself a bit.

Monday, June 26th 2023[edit]

  • Most of the current QT code is compatible with QT 5.15 (FY2023 requirements), whereas for QT 6 (FY2024) there are a little more changes to do. Waiting for mentors approval on which one to proceed with. Will keep familiarizing myself until then.

Tuesday, June 27th 2023[edit]

  • Spent most of the time familiarizing myself with QT docs'

Monday, July 3rd 2023[edit]

  • The appleseed linux build instructions seem to be outdated, I thought ill tackle the issues encountered today.
  • There are several warnings that occur during the build process, today I tried to fix most of them. Most of the errors seem to be due to outdated libraries (OpenImageIO etc) maybe later when I update all the dependencies and the libraries these warnings/errors should be fixed
  • At around 64% mark after building appleseed.qtcommon this error occurs that stops the build process. The error seems to occur due to boost and OpenImageIO not being able to link properly which is really weird because all the pre-build-dependencies are in a folder with compatible versions. Spend most of the time trying to the fix the error but no luck

Tuesday, July 4th 2023[edit]

  • Personal emergency, couldn't work today

Wednesday, July 5th 2023[edit]

  • Went through CMake docs to familiarize myself so that I can fix the errors that are occurring

Monday, July 10th 2023[edit]

  • Last few days I have been trying to make the linux build work on Ubuntu 22.04, had little to no success

Thursday, July 13th 2023[edit]

  • Fixed the warnings that arise when running the CMake command in Ubuntu 22.04
  • Updated about the same in the building appleseed on linux wiki file

Friday, July 14th 2023[edit]

  • Appleseed build has completed, but when I try to run appleseed.studio, it gives me a segmentation error.
  • Upon further research the error was found out to be caused by version incompatibility with LLVM

Sunday, July 16th 2023[edit]

  • Spent a lot of time trying to fix the segmentation fault, still no fix.

Monday, July 17th 2023[edit]

  • Had a bunch of placement exams in college, had to write those

Thursday, July 20th - 21st, 2023[edit]

  • Went through few of the previously updated python files

Saturday, July 22nd, 2023[edit]

  • Finished going through all the previously updated python files and checking for any errors

Monday, July 24th - 28th, 2023[edit]

  • Had interviews/assessments in college

Saturday, July 29th, 2023[edit]

  • built LLVM locally instead of using prebuilt dependencies. The build was successful but when linking them to appleseed some issues popped up, spent the rest of the time trying to fix them.

Tuesday, August 1st, 2023[edit]

  • After fixing a couple of errors in between the build goes until 100%, but fails due to some linker issues. Tried a few possible fixes but no luck. I think its because of the libraries not being linked in the correct order but I am not entirely sure about this

Sunday, August 6th, 2023[edit]

  • Spent around 3 days trying to fix the issue with llvm not being found when building OSL even though it is installed on my system and all the path variables are correct
  • In the meantime I will start updating the blenderseed to python3
  • Went through all the 13 files present in /operators and /properties and made changes wherever required

Tuesday, August 8th, 2023[edit]

  • Went through files in /render and /scripts/blenderseed.package.py and made changes wherever required

Thursday, August 10th, 2023[edit]

  • Updated all the remaining files present in /scripts and assethandlers.py, cycles_shaders.py and material.py from /translators

Friday, August 11th, 2023[edit]

  • Updated all the files present in the root directory of /translators

Sunday, August 13th, 2023[edit]

  • went through all the remaining files present in /translators/cameras and /translatores/objects and made changes wherever required
  • went through all the files present in /ui

Monday, August 14th, 2023[edit]

  • Update all the files present in utils.py
  • Update the 3 remaining files present in the root directory. /__init__.py, /logger.py, /preferences.py

Tuesday, August 15th - 17th 2023[edit]

  • Double checked all the files again to ensure I ddnt miss anything