Mac pre-release download way behind Windows version

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
peterl94
Posts: 1001
Joined: Thu May 23, 2013 7:31 pm
Location: United States

Re: Mac pre-release download way behind Windows version

Postby peterl94 » Sat Nov 28, 2015 2:48 am

Hi brusk,

I'm glad to see someone interested in this. I'm afraid I haven't been very reliable as a package maintainer. My excuses is that I'm currently working two jobs which leaves little time for freecad....Anyway, I would be happy to get you set up to provide dev builds.
brusk wrote:Usually a lot of buttons is missing from the Mac version.
Which ones specifically and with what build? I have not noticed this with the builds I've uploaded.
brusk wrote:Actually is in the generated app bundle, in:
FreeCAD.app/Contents/lib/python2.7/site-packages/matplotlib-1.5.0-py2.7-macosx-10.11-x86_64.egg/matplotlib/
The name is fine. That is how Python eggs are named. I would try checking the .pth files in FreeCAD.app/Contents/lib/python2.7/site-packages to see if they list absolute or relative paths. You can compare it with my 0.16.4945 build. From the FreeCAD python console, running "import sys; for p in sys.path: print(p)" should show ...FreeCAD.app/Contents/lib/python2.7/site-packages/matplotlib-1.5.0-py2.7-macosx-10.11-x86_64.egg in the path.

Maybe I'll find some time this weekend to update the script I used to automate the 0.15 snapshot builds. (No promises.)

@sgrogan, if I edit the pre release to upload a new mac build, does it send out a notification again? I wouldn't want subscribers to get duplicate notifications if the builds are uploaded separately. Maybe you would have to be in charge of uploading both builds.

It would makes things a lot easier if we could use something like buildbot, but I doubt it would work on a shared host like what freecadweb.org is on.

Peter
User avatar
sgrogan
Posts: 6166
Joined: Wed Oct 22, 2014 5:02 pm

Re: Mac pre-release download way behind Windows version

Postby sgrogan » Sat Nov 28, 2015 4:37 pm

peterl94 wrote:@sgrogan, if I edit the pre release to upload a new mac build, does it send out a notification again?
If you are only adding an asset to an existing(pre)release there is no new notification.
peterl94 wrote: Maybe you would have to be in charge of uploading both builds.
I can do this. I think to start brusk should set up a github account and clone FreeCAD then post his builds as releases in his repo. When we are confident with the build procedure I could copy the pre-release or we could ask yorik to add brusk to the release team.
@brusk I can help you with this if necessary.
peterl94 wrote:It would makes things a lot easier if we could use something like buildbot, but I doubt it would work on a shared host like what freecadweb.org is on.
Long term it would be great if we could set up Mac on Travis-CI and use it's deploy functionality. I've begun to look at Appveyer to try this on Win, but I always have more ideas than time/skills.
"fight the good fight"
peterl94
Posts: 1001
Joined: Thu May 23, 2013 7:31 pm
Location: United States

Re: Mac pre-release download way behind Windows version

Postby peterl94 » Sun Nov 29, 2015 3:39 am

sgrogan wrote:Long term it would be great if we could set up Mac on Travis-CI and use it's deploy functionality. I've begun to look at Appveyer to try this on Win, but I always have more ideas than time/skills.
That is interesting. I didn't know Travis-CI had a Mac environment. I'll have to give it a try. It would be interesting to see if FreeCAD would compile in under Appveyer's 60 min limit on their one core vm. I'm a little doubtful that it would.

I still think buildbot or jenkins could be better option in the long run, since it would give us a lot more flexibility (and wouldn't be depending on third party services), but it would be a lot more work to setup and we would need a server to install it on.
User avatar
sgrogan
Posts: 6166
Joined: Wed Oct 22, 2014 5:02 pm

Re: Mac pre-release download way behind Windows version

Postby sgrogan » Sun Nov 29, 2015 2:19 pm

peterl94 wrote:It would be interesting to see if FreeCAD would compile in under Appveyer's 60 min limit on their one core vm. I'm a little doubtful that it would.
I'm also worried about memory. I need to package just the release stuff for the libpack and give it a try.
"fight the good fight"
jmaustpc
Posts: 10383
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: Mac pre-release download way behind Windows version

Postby jmaustpc » Sun Nov 29, 2015 2:28 pm

peterl94 wrote: It would be interesting to see if FreeCAD would compile in under Appveyer's 60 min limit on their one core vm.
sgrogan wrote:I'm also worried about memory. I need to package just the release stuff for the libpack and give it a try.
I wonder if it is possible to apply for an extra allowance ...if needed? When we wanted to add OCE to the PPA we had to ask for more space and Ubuntu agreed.
User avatar
brusk
Posts: 52
Joined: Wed Feb 18, 2015 4:33 pm

Re: Mac pre-release download way behind Windows version

Postby brusk » Sun Nov 29, 2015 7:33 pm

peterl94 wrote:I'm glad to see someone interested in this. I'm afraid I haven't been very reliable as a package maintainer. My excuses is that I'm currently working two jobs which leaves little time for freecad....Anyway, I would be happy to get you set up to provide dev builds.
Cool, no worries, would love to help out :) .
peterl94 wrote:
brusk wrote:Usually a lot of buttons is missing from the Mac version.
'
Which ones specifically and with what build? I have not noticed this with the builds I've uploaded.
Sorry, can't reproduce :oops: . But I swear to god I've noticed this several times… Anyways, everything seems fine now.
peterl94 wrote:
brusk wrote:Actually is in the generated app bundle, in:
FreeCAD.app/Contents/lib/python2.7/site-packages/matplotlib-1.5.0-py2.7-macosx-10.11-x86_64.egg/matplotlib/
The name is fine. That is how Python eggs are named. I would try checking the .pth files in FreeCAD.app/Contents/lib/python2.7/site-packages to see if they list absolute or relative paths. You can compare it with my 0.16.4945 build. From the FreeCAD python console, running "import sys; for p in sys.path: print(p)" should show ...FreeCAD.app/Contents/lib/python2.7/site-packages/matplotlib-1.5.0-py2.7-macosx-10.11-x86_64.egg in the path.
It's there and I found I can also import matplotlib without errors. I deleted the try-except from Plot.py and found the real exception:

Code: Select all

  File "/usr/local/FreeCAD.app/Contents/Mod/Plot/Plot.py", line 34, in <module>
    from matplotlib.backends.backend_qt4agg import NavigationToolbar2QTAgg as NavigationToolbar
  ImportError: cannot import name NavigationToolbar2QTAgg
So the real error is hidden by the except part, regardless of the exception it will always say that it's matplotlib that's missing: https://github.com/FreeCAD/FreeCAD/blob ... lot.py#L37 . I tried to prevent hiding errors by adding the exception message here: https://github.com/FreeCAD/FreeCAD/comp ... uk:patch-1. (Using Github's Pull Requests would be convenient btw ;) ). Guess I have to create an issue in the bug tracker.

Anyways, it seems the issue is the same as here https://github.com/semiautomaticgit/Sem ... n/issues/2, that is, "Agg" has been removed from "NavigationToolbar2QTAgg" in the current version of matplotlib. (Yes, it works when I remove "Agg" :) .)

So is the version of matplotlib pinned or is it ok to ship the current version?
User avatar
brusk
Posts: 52
Joined: Wed Feb 18, 2015 4:33 pm

Re: Mac pre-release download way behind Windows version

Postby brusk » Sun Nov 29, 2015 7:52 pm

sgrogan wrote:
peterl94 wrote: Maybe you would have to be in charge of uploading both builds.
I can do this. I think to start brusk should set up a github account and clone FreeCAD then post his builds as releases in his repo. When we are confident with the build procedure I could copy the pre-release or we could ask yorik to add brusk to the release team.
@brusk I can help you with this if necessary.
Great, let's look at it when I've sorted out my matplotlib issue.
peterl94 wrote: It would be interesting to see if FreeCAD would compile in under Appveyer's 60 min limit on their one core vm.
60 minutes? I think it took only a few minutes on my MacBook Air. How long does it take on your machine?
jmaustpc
Posts: 10383
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: Mac pre-release download way behind Windows version

Postby jmaustpc » Mon Nov 30, 2015 2:24 pm

brusk wrote: peterl94 wrote:
It would be interesting to see if FreeCAD would compile in under Appveyer's 60 min limit on their one core vm.



60 minutes? I think it took only a few minutes on my MacBook Air. How long does it take on your machine?
Yes, but...... we are talking a full new compile including the cmake configure time, and Peter is talking about one one cpu core, and for that matter a virtual machine.

With multi core CPUs you get a bit speed up of the compile time by adding a "-j" tag (with a number).

We have talked about this recently, and if my memory is correct, someone here had something like a current top of the line 8 core cpu and they got the time down to something like between 10 and 15 minutes, I think.

I have not timed it for some time, we mostly do incremental builds. But I think from memory my old core2 duo 2.2GHz takes something like 45 or 50 minutes...a good portion of an hour on two CPU cores. I used to compile FreeCAD on a single core 1.3 GHz core1 laptop...but that was a while ago now and FreeCAD was very much smaller back then.
User avatar
brusk
Posts: 52
Joined: Wed Feb 18, 2015 4:33 pm

Re: Mac pre-release download way behind Windows version

Postby brusk » Mon Nov 30, 2015 7:06 pm

jmaustpc wrote:Yes, but...... we are talking a full new compile including the cmake configure time, and Peter is talking about one one cpu core, and for that matter a virtual machine.

With multi core CPUs you get a bit speed up of the compile time by adding a "-j" tag (with a number).

We have talked about this recently, and if my memory is correct, someone here had something like a current top of the line 8 core cpu and they got the time down to something like between 10 and 15 minutes, I think.

I have not timed it for some time, we mostly do incremental builds. But I think from memory my old core2 duo 2.2GHz takes something like 45 or 50 minutes...a good portion of an hour on two CPU cores. I used to compile FreeCAD on a single core 1.3 GHz core1 laptop...but that was a while ago now and FreeCAD was very much smaller back then.
Hm. I'll have to time it next time I build :) .
jmaustpc
Posts: 10383
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: Mac pre-release download way behind Windows version

Postby jmaustpc » Tue Dec 01, 2015 3:36 am

brusk wrote:Hm. I'll have to time it next time I build :) .
Yes, me too! :)

I used to compile from scratch a lot, as I use to test many developer's branches, however for a while now I have been and still will be restricted to my mobile Internet access and have to keep data down to very low levels or pay a lot, its also slow etc. etc.