[Ironpython-users] Splitting up the IronPython repo
Markus Schaber
m.schaber at codesys.com
Mon Jan 20 11:13:34 CET 2014
Hi, Jeff,
Good work, I'm all in favour of it. Splitting DLR, IronPython and IronRuby into different projects is a good thing.
Just some unordered thoughts:
The python standard library could be fetched by the build script directly from the cPython servers (maybe with a few local patches applied until those are included upstream). The same may apply to other dependencies.
For the first IronPython 3 release, I suggest that you try to target Python 3.4 directly, and skip the intermediate 3.0-3.3 releases.
Also, I think now it's time to hard-code .NET 4 as dependency and drop .NET 2/3 - this will allow us to lots of #ifdefs and some other nasty code. Also, the PAL concept may be extended to replace some of those #ifdefs (as already mentioned on http://blog.jdhardy.ca/2013/06/ironpython-3-todo.html). In my eyes, the main benefit of this will be that we (hopefully) can get rid of the conditional project references (which are a little PITA because they are not handled well by Visual Studio).
For debugging purposes, it may still be handy to have a combined .sln which contains IronPython, DLR and maybe the hosting application, but it should be possible to retain the capability to create such a solution.
Best regards
Markus Schaber
--
CODESYS® a trademark of 3S-Smart Software Solutions GmbH
Inspiring Automation Solutions
3S-Smart Software Solutions GmbH
Dipl.-Inf. Markus Schaber | Product Development Core Technology
Memminger Str. 151 | 87439 Kempten | Germany
Tel. +49-831-54031-979 | Fax +49-831-54031-50
E-Mail: m.schaber at codesys.com | Web: http://www.codesys.com | CODESYS store: http://store.codesys.com
CODESYS forum: http://forum.codesys.com
Managing Directors: Dipl.Inf. Dieter Hess, Dipl.Inf. Manfred Werner | Trade register: Kempten HRB 6186 | Tax ID No.: DE 167014915
> -----Ursprüngliche Nachricht-----
> Von: Ironpython-users [mailto:ironpython-users-
> bounces+m.schaber=codesys.com at python.org] Im Auftrag von Jeff Hardy
> Gesendet: Montag, 20. Januar 2014 10:10
> An: ironpython-users at python.org
> Betreff: [Ironpython-users] Splitting up the IronPython repo
>
> One of the big issues with working on IronPython is the size of the git
> repository (specifically https://github.com/IronLanguages/main) - git does
> not like really big repos, especially on Windows. Part of the problem is that
> the repository includes:
>
> * The DLR
> * IronPython
> * IronRuby
> * Two copies of the Python stdlib
> * The Ruby stdlib
> * WiX
> * and a bunch of reference assemblies
>
> Even on a fast machine, 'git status' takes several seconds to return.
> I believe this is because it was originally a TFS repo, which can scale to
> handle bigger repos by using a bigger server. With git that option doesn't
> exist - if the repo is too big, the only option is to split it up.
>
> I've created two repos - https://github.com/jdhardy/dlr and
> https://github.com/jdhardy/ironpython-only - that contain just the DLR and
> IronPython, respectively. In them, git calls are nearly instantaneous, which
> makes working with it a lot less painful.
>
> There are other advantages - the DLR can get its own release cycle and
> packaging, and IP can then depend on a specific version of the DLR.
> Each project has a modified version of the IronPython build system that makes
> it easy to build for other platforms (iOS, Android, Win8, etc. - they still
> need to ported and tested, but the builds are easier).
>
> I did most of the work using Mono/xbuild, so I know it works there (except
> for a bug in Mono's .NET 4.5 support), but it has some errors on Windows that
> I need to sort out.
>
> Once I get my Windows box back and get some time to fix the few remaining
> issues, I'll move the repos to the IronLanguages account and use them for
> development of a real DLR release and IronPython 3.0. Any more 2.7 releases
> will come out of the existing repo.
>
> One downside is that copying patches between 3.0 and 2.7 is going to be extra
> work, but 3.0 will solve so many problems with strings that I think it will
> quickly become the more common target. In general Python
> 3 momentum is picking up so it's a good time (some recent hand-wringing
> notwithstanding) to try and have IronPython 3 in the right spot at the right
> time.
>
> I haven't really addressed IronRuby because, for intents and purposes, it's
> dead.
>
> All of that said, if anyone has any objections I'd like to hear them.
> The split repos work well for me but I'm curious if others prefer the
> combined repo.
>
> - Jeff
> _______________________________________________
> Ironpython-users mailing list
> Ironpython-users at python.org
> https://mail.python.org/mailman/listinfo/ironpython-users
More information about the Ironpython-users
mailing list