Skip to content
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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor for python_solvespace API. #268

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

amrsoll
Copy link
Collaborator

@amrsoll amrsoll commented Aug 23, 2022

Why?

The PR is currently a draft to feel the temperature of the water and talk about it.

The python_solvespace repo is much closer to the upstream solvespace repo. This means that some bugs might already be solved there, such as #261 (not confirmed if this can fix it)

A side effect of this refactor is that a lot of abstraction is already done by the python wrapper 馃槃 and saves a lot of lines.

History

@hlorus used to base CAD sketcher on an other solvespace repo . As it got archived it seemed to be abandonned, but an other fork was maintained by the same user.

TODO

  • Fix updating entity properties post-solving
  • Fix dragging entities
  • Work out how to use the groups with this API (I pretty much deleted everything related to groups)
  • Update docs
  • Fix vertical / horizontal constraints
  • A lot more

@amrsoll amrsoll added the enhancement New feature or request label Aug 23, 2022
@amrsoll amrsoll requested a review from hlorus August 23, 2022 23:06
@exegetor
Copy link
Collaborator

You said "same user" but I don't see any sign of it on realthunder's page. Can you link to the python_solvespace repo you're using?

@amrsoll
Copy link
Collaborator Author

amrsoll commented Aug 23, 2022

@amrsoll amrsoll marked this pull request as draft August 24, 2022 00:37
@hlorus
Copy link
Owner

hlorus commented Aug 24, 2022

Definitely intresting to explore this direction. My main question here is if we would have to drop support for the current python port "py_slvs".

Some people also pointed completely different solvers out. Maybe we could start thinking about having it somewhat generic to allow plugging in any solver we want in the future.

@amrsoll
Copy link
Collaborator Author

amrsoll commented Aug 24, 2022

My main question here is if we would have to drop support for the current python port "py_slvs".

There doesn't immediately seem like there is any advantage of using py_slvs over python_solvespace (god I hate when python packages put py/python in their name 馃槀 )

Maybe we could start thinking about having it somewhat generic to allow plugging in any solver we want in the future.

Oh the nightmare 馃槀 given how differently some solvers and their API might work (imagine something acting as weirdly as bpy) it will be integration hell to have support for multiple solvers, and I don't think they can be easily abstracted.

@hlorus
Copy link
Owner

hlorus commented Aug 25, 2022

Oh the nightmare 馃槀 given how differently some solvers and their API might work (imagine something acting as weirdly as bpy) it will be integration hell to have support for multiple solvers, and I don't think they can be easily abstracted.

Hmm yeah, might not be worth the hassle to support multiple solvers.

@hlorus
Copy link
Owner

hlorus commented Sep 6, 2022

Interestingly i'm already failing at installing the solver...
pip_error.txt

At least for the latest version, it worked with version 3.0.0.post7

@hlorus
Copy link
Owner

hlorus commented Sep 13, 2022

This will likely need alot of testing so i would recommend making this an official branch, getting it to a testable stage and then collect feedback by testers.

@amrsoll
Copy link
Collaborator Author

amrsoll commented Sep 15, 2022

Well i am happy not to be the only one to want this tested out, see if it works better :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants