[Mono-dev] Moving *.Design to package "mono-design"
We have a proposal to move System.Design.dll, System.Drawing.Design.dll, and System.Web.Extensions.Design.dll to a separate package to break the dependency between mono-web and mono-winforms. Tomboy has started to use System.Web so if we leave the packages as is it will suddenly depend on mono-winforms (where System.Design currently lives, which is needed by System.Web.Extensions.Design, currently in mono-web, which Tomboy doesn't need). ivanz suggests the new package be called mono-designtime. Please chime in if you have relevant information or a good reason to object. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Moving *.Design to package "mono-design"
On Fri, Aug 7, 2009 at 3:57 PM, Andrew Jorgensen wrote: > We have a proposal to move System.Design.dll, System.Drawing.Design.dll, and > System.Web.Extensions.Design.dll to a separate package to break the > dependency between mono-web and mono-winforms. > > Tomboy has started to use System.Web so if we leave the packages as is it > will suddenly depend on mono-winforms (where System.Design currently lives, > which is needed by System.Web.Extensions.Design, currently in mono-web, which > Tomboy doesn't need). > > ivanz suggests the new package be called mono-designtime. > > Please chime in if you have relevant information or a good reason to object. I favor this split. :-) Some additional info: * mono-winforms is a multi-megabyte package, and having a dependency on it becomes an issue for Tomboy and other apps that want to be on the openSUSE GNOME Live CD or other space-constrained environments * I cannot think of any situations where a user application would actually need *Design.dll * It "looks bad" to have Mono apps on Linux depend on a "controversial" package like mono-winforms Hope this helps, Sandy ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Moving *.Design to package "mono-design"
Just some info (for the "additional info"): System.Windows.Forms (and especially the PropertyGrid control) extremely depend on the *Design assemblies. ANY application that uses these will need the *Design assemblies at runtime. Also imho the name mono-designtime isn't optimal because it somehow suggests they are not needed at runtime which is not true. Greetings Andreas -Ursprüngliche Nachricht- Von: mono-devel-list-boun...@lists.ximian.com [mailto:mono-devel-list-boun...@lists.ximian.com] Im Auftrag von Sandy Armstrong Gesendet: Samstag, 8. August 2009 01:04 An: Andrew Jorgensen Cc: mono-devel-list@lists.ximian.com Betreff: Re: [Mono-dev] Moving *.Design to package "mono-design" On Fri, Aug 7, 2009 at 3:57 PM, Andrew Jorgensen wrote: > We have a proposal to move System.Design.dll, System.Drawing.Design.dll, and System.Web.Extensions.Design.dll to a separate package to break the dependency between mono-web and mono-winforms. > > Tomboy has started to use System.Web so if we leave the packages as is it will suddenly depend on mono-winforms (where System.Design currently lives, which is needed by System.Web.Extensions.Design, currently in mono-web, which Tomboy doesn't need). > > ivanz suggests the new package be called mono-designtime. > > Please chime in if you have relevant information or a good reason to object. I favor this split. :-) Some additional info: * mono-winforms is a multi-megabyte package, and having a dependency on it becomes an issue for Tomboy and other apps that want to be on the openSUSE GNOME Live CD or other space-constrained environments * I cannot think of any situations where a user application would actually need *Design.dll * It "looks bad" to have Mono apps on Linux depend on a "controversial" package like mono-winforms Hope this helps, Sandy ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Moving *.Design to package "mono-design"
Hi, Andreas is right and I completely forgot about this when we discussed :(. There are several parts of Windows Forms that use reflection to instantiate types part of which are in System.Design. As he says some of those types are the TypeEditors and TypeConverters. And if we don't ship WinForms together with System.Design things will break. The same is also probably valid for ASP.NET. And you won't be able to find a hard dependency between the WinForms/ASP.NET and System.Design because the way it works is via an attribute on a class which is initialized with a Type name (string) in order to be loose coupled. Now the problem is that if System.Design is missing those type won't be resolved from code that uses them will break. An example: namespace System.Windows.Forms { [Editor("System.Windows.Forms.Design.DockEditor, " + Consts.AssemblySystem_Design, typeof(System.Drawing.Design.UITypeEditor))] public enum DockStyle { None= 0, Top= 1, Bottom= 2, Left= 3, Right= 4, Fill= 5 } } If System.Design is missing the WinForms property grid will no long work for editing the Dock property of a Control (TypeEditor) and also won't be able to convert the type to a human readable string (TypeConverter). Now, I am not familiar with ASP.NET but a fgrep showed that there are quite a lot of those attributes with references to System.Design and I guess say if I am developing an app and I have a form where a user can select a Color and I am using the System.Design Color editor and System.Design is missing my app will break. Unfortunately that leaves you with no option of avoiding aspnet pulling winforms through System.Design. :( Kind Regards, Ivan Zlatev http://ivanzlatev.com On Sun, Aug 9, 2009 at 10:39 AM, Andreas Nahr < classdevelopm...@a-softtech.com> wrote: > Just some info (for the "additional info"): > System.Windows.Forms (and especially the PropertyGrid control) extremely > depend on the *Design assemblies. ANY application that uses these will need > the *Design assemblies at runtime. > > Also imho the name mono-designtime isn't optimal because it somehow > suggests > they are not needed at runtime which is not true. > > Greetings > Andreas > > -Ursprüngliche Nachricht- > Von: mono-devel-list-boun...@lists.ximian.com > [mailto:mono-devel-list-boun...@lists.ximian.com] Im Auftrag von Sandy > Armstrong > Gesendet: Samstag, 8. August 2009 01:04 > An: Andrew Jorgensen > Cc: mono-devel-list@lists.ximian.com > Betreff: Re: [Mono-dev] Moving *.Design to package "mono-design" > > On Fri, Aug 7, 2009 at 3:57 PM, Andrew Jorgensen > wrote: > > We have a proposal to move System.Design.dll, System.Drawing.Design.dll, > and System.Web.Extensions.Design.dll to a separate package to break the > dependency between mono-web and mono-winforms. > > > > Tomboy has started to use System.Web so if we leave the packages as is it > will suddenly depend on mono-winforms (where System.Design currently lives, > which is needed by System.Web.Extensions.Design, currently in mono-web, > which Tomboy doesn't need). > > > > ivanz suggests the new package be called mono-designtime. > > > > Please chime in if you have relevant information or a good reason to > object. > > I favor this split. :-) > > Some additional info: > * mono-winforms is a multi-megabyte package, and having a dependency > on it becomes an issue for Tomboy and other apps that want to be on > the openSUSE GNOME Live CD or other space-constrained environments > * I cannot think of any situations where a user application would > actually need *Design.dll > * It "looks bad" to have Mono apps on Linux depend on a > "controversial" package like mono-winforms > > Hope this helps, > Sandy > ___ > Mono-devel-list mailing list > Mono-devel-list@lists.ximian.com > http://lists.ximian.com/mailman/listinfo/mono-devel-list > > ___ > Mono-devel-list mailing list > Mono-devel-list@lists.ximian.com > http://lists.ximian.com/mailman/listinfo/mono-devel-list > ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Moving *.Design to package "mono-design"
On Sun, Aug 9, 2009 at 3:30 AM, Ivan Zlatev wrote: > Hi, > > Andreas is right and I completely forgot about this when we discussed :(. Thanks, Andreas, for pointing this out. Apologies, Andrew, for not noticing this earlier. > Unfortunately that leaves you with no option of avoiding aspnet pulling > winforms through System.Design. :( And unfortunately, there seems to be no good way to split up the mono-web (ASP.NET) package, as the System.Web assembly seems to have quite a few responsibilities. As Michael Hutchinson pointed out, many apps rely on System.Web only for the HttpUtility class. For apps that need to keep their dependency size sane, it seems the only choice is to bundle that class directly in your app. Thanks for all the input, Sandy ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Moving *.Design to package "mono-design"
On Sun, Aug 9, 2009 at 6:30 AM, Ivan Zlatev wrote: > > Unfortunately that leaves you with no option of avoiding aspnet pulling > winforms through System.Design. :( There's still the option of a mono-web-designtime package... -- Michael Hutchinson http://mjhutchinson.com ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Moving *.Design to package "mono-design"
> Unfortunately that leaves you with no option of avoiding aspnet pulling > winforms through System.Design. :( > And unfortunately, there seems to be no good way to split up the > mono-web (ASP.NET) package, as the System.Web assembly seems to have > quite a few responsibilities. Well all the Designer Stuff in the *Design assemblies is dynamically binding at runtime. So from a purely technical point of view there is no problem in not shipping the System.Design.dll or something like that with an application that uses anything from System.Web. Everything will work as long as you are not using any of the Design stuff (or using anything that uses the Design stuff). In fact it *should* even "work" when using the Design stuff, it just won't work the same way as originally expected. Afaik currently most of the Web stuff in System.Design is only stubbed out anyways, so the difference between shipping it or not should (in most cases) be minimal for *web* applications. Greetings Andreas ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Moving *.Design to package "mono-design"
On Sun, Aug 9, 2009 at 9:38 PM, Andreas Nahr wrote: > > > Unfortunately that leaves you with no option of avoiding aspnet pulling > > winforms through System.Design. :( > > > And unfortunately, there seems to be no good way to split up the > > mono-web (ASP.NET) package, as the System.Web assembly seems to have > > quite a few responsibilities. > > Well all the Designer Stuff in the *Design assemblies is dynamically binding > at runtime. > So from a purely technical point of view there is no problem in not shipping > the System.Design.dll or something like that with an application that uses > anything from System.Web. > Everything will work as long as you are not using any of the Design stuff > (or using anything that uses the Design stuff). In fact it *should* even > "work" when using the Design stuff, it just won't work the same way as > originally expected. > Afaik currently most of the Web stuff in System.Design is only stubbed out > anyways, so the difference between shipping it or not should (in most cases) > be minimal for *web* applications. > Nevertheless if mono-web does not include System.Design then it basically beaks MS.NET compatibility. Because then the user will have to know "Oh wait. There is mono-designtime I also have to install". And the worse is that those problems will be very very difficult to track down (missing dynamic dependency). So instead of breaking the out of the box experience so to speak, what about creating a mono-web-lite package without the System.Design/winforms dependency (= don't install System.Design)? That way apps that don't have any direct or indirect deps on System.Design (e.g. Tomboy) can put a dependency on mono-web-lite instead of on mono-web. An idea I just had. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list