robofit / arcor2

Solution for end-user programming of (collaborative) robots using Augmented Reality. From AR to Python and back!
GNU Lesser General Public License v3.0
15 stars 16 forks source link

second version of python_to_json #806

Closed SimonKadnar closed 1 year ago

SimonKadnar commented 1 year ago

I had trouble whit that import cycle so i created a new file "python_to_json.py" (i am not sure how to solve this problem) and i added some little tests in zip packages (all should work).

SimonKadnar commented 1 year ago

I was thinking the entry parameter in this program will be zip file so i created zip files for complet testing but i can change it into files but then i have to create a new function for reading files just for tests or if i understand wrongly the entry parameter i can change function for read from zip into read from files and change the tests.

ZdenekM commented 1 year ago

I was thinking the entry parameter in this program will be zip file so i created zip files for complet testing but i can change it into files but then i have to create a new function for reading files just for tests or if i understand wrongly the entry parameter i can change function for read from zip into read from files and change the tests.

Correct, the input will be a zip file. So for tests, you can create one from files... Maybe it can be done as a fixture? Should be easy - just zipping the directory...

ZdenekM commented 1 year ago

@SimonKadnar It seems that some zip file is missing: https://github.com/robofit/arcor2/actions/runs/4225073100/jobs/7337331171#step:11:238

SimonKadnar commented 1 year ago

Hmmm iteresting but that file is there and localy it works

SimonKadnar commented 1 year ago

I tried download my branch and everything is working i am not sure where can by the issue

ZdenekM commented 1 year ago

@SimonKadnar Could you please add just one commit for each iteration? Like this, it's quite hard to check what has been changed since the last time. Thanks.

SimonKadnar commented 1 year ago

I know you said less commits but i did it during 3 days and i found little problem in tests : when is imported same class more times it creates some mess in dict where are stored objects types, so i tried test like this i take value from your function (program_src) and i am using it as modified script as input in to my program. I am not sure how test thats modules when they include same classes, maybe if exists some function to clean imported files it can workes but i can create tests like this whitout reading zip file but what you think shoud i crate more tests and put there script like string or use your function to translade it and then test it ?

ZdenekM commented 1 year ago

I know you said less commits but i did it during 3 days and i found little problem in tests : when is imported same class more times it creates some mess in dict where are stored objects types, so i tried test like this i take value from your function (program_src) and i am using it as modified script as input in to my program. I am not sure how test thats modules when they include same classes, maybe if exists some function to clean imported files it can workes but i can create tests like this whitout reading zip file but what you think shoud i crate more tests and put there script like string or use your function to translade it and then test it ?

Not sure what the problem is. We should discuss it in person or during a call.

SimonKadnar commented 1 year ago

I itegrated compiler into build.py but i am not sure if i did it right. One of necessarys values for decompile is script but you importining it only if project has no logic so i added another condition whit difrenet variable for script, to do not affect rest of function. Now decompilation works when you set to owerrite script.

ZdenekM commented 1 year ago

That should be a good solution I guess.

SimonKadnar commented 1 year ago

I will fix that typos and other stuff later. I did this commit because i want have actual version for tomorrow

SimonKadnar commented 1 year ago

I tried do squesh but it creates a big errors and conflicts. I not sure why when you take them all together i expect it will be fine but not. Wudnt be better delete all commits and then create one with actuall version because i dont know how to fix this ?

ZdenekM commented 1 year ago

I tried do squesh but it creates a big errors and conflicts. I not sure why when you take them all together i expect it will be fine but not. Wudnt be better delete all commits and then create one with actuall version because i dont know how to fix this ?

Have you tried to rebase first? E.g. with git pull --rebase. There shouldn't be many conflicts, maybe just a few, as there was no active development in the arcor2/master. Conflicts are normal and should be quite easy to solve in this case.

SimonKadnar commented 1 year ago

I created integration test but its for docker. I tried to make it like you said but in that way i am little lost. Maybe if you have time tomorrow we can try resolvit during the call. After this i can change that action point staff... but that shoud be all for this ''pull request''.

SimonKadnar commented 1 year ago

I tried do squesh but it creates a big errors and conflicts. I not sure why when you take them all together i expect it will be fine but not. Wudnt be better delete all commits and then create one with actuall version because i dont know how to fix this ?

Have you tried to rebase first? E.g. with git pull --rebase. There shouldn't be many conflicts, maybe just a few, as there was no active development in the arcor2/master. Conflicts are normal and should be quite easy to solve in this case.

Yes and it writing me "already up to date" but when i try "git rebase --interactive abe9d9f" (abe9d9f is my first commit) it giving me nonstop new and new conflicts that i have to resolve and after i resolve it giving me again new conglicts.