RE: Should NLog.dll remain cross-platform?

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

RE: Should NLog.dll remain cross-platform?

Sharad Patel
My vote is +1.

+1 - produce multiple NLog.dll binary releases, one for each platform
#if's in the code.


-----Original Message-----
From: [hidden email]
[mailto:[hidden email]] On Behalf Of
[hidden email]
Sent: Saturday, May 06, 2006 3:09 PM
To: [hidden email]
Subject: Nlog-list digest, Vol 1 #123 - 2 msgs

Send Nlog-list mailing list submissions to
        [hidden email]

To subscribe or unsubscribe via the World Wide Web, visit
or, via email, send a message with subject or body 'help' to
        [hidden email]

You can reach the person managing the list at
        [hidden email]

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Nlog-list digest..."

Today's Topics:

   1. [POLL] Should NLog.dll remain cross-platform? (Jaroslaw Kowalski)
   2. New NLog release (Jaroslaw Kowalski)


Message: 1
From: "Jaroslaw Kowalski" <[hidden email]>
To: <[hidden email]>
Date: Thu, 4 May 2006 15:57:57 +0200
Subject: [Nlog-list] [POLL] Should NLog.dll remain cross-platform?


I've been recently thinking about NLog.dll supporting multiple platforms

(.NET, Mono, .NETCF). There are some issues which make me seriously
reconsider providing versions of NLog.dll compiled for each supported
platform instead of just one binary that targets all.

The issues are:

1. I recently came up with an optimization to the File target on Unix
platform which could be implemented using some mono-specific APIs
(Mono.Posix.dll). Compiling this using .NET 1.0 compiler (although
technically possible for Mono 1.0 profile) is anything but "clean". It's

would not be possible with Mono 2.0 profile since the assemblies use new

format, incompatible with csc.exe 1.0.

2. .NET 2.0 has new configuration API (System.Configuration.dll) which
should be supported in addition to current configuration system, at
least to
get obsolete-warning-free build.

3. There are some new .NET 2.0 APIs which beg for NLog support (like
with managed support for changing colors). With the introduction of
we'll get the new WCF platform as well.

4. Most new development projects target .NET 2.0/VS2005 and .NET 1.0
probably become deprecated soon. It's theoretically possible to support
newer frameworks with older compiler, but it's very hackish and
(late binding, reflection and so on).

5. We already have a special build for .NET CF 1.0 (and there'll be a
build for .NET CF 2.0 soon)

6. There are very few programs that target both Mono and .NET without
recompilation (I'm only aware of NAnt).

So we'd have the following releases:

.NET 1.0 (exists today)
.NET 1.1
.NET 2.0
.NET CF 1.0 (exists today)
.NET CF 2.0 (will be added in 1.0 release)
Mono 1.0 Profile
Mono 2.0 Profile

.NET 1.0 build would be the lowest-common-denominator-version supported
all platforms (just like it is today) and other versions would have
additional features that target specific platforms.

Each target would be marked with an attribute stating its platform
(framework & OS). This will be used to generate documentation so that
user will always know which version to use to get particular
renderer under a particular operating system.

Please vote. Possible answers are:

+1 - produce multiple NLog.dll binary releases, one for each platform
#if's in the code.
0 - undecided
-1 - keep single NLog.dll that targets all platforms

If I get a sum above 0, I'll make a new snapshot release for testing

My vote is +1.




Message: 2
From: "Jaroslaw Kowalski" <[hidden email]>
To: <[hidden email]>
Date: Fri, 5 May 2006 16:48:52 +0200
Subject: [Nlog-list] New NLog release has a preview of new release of

The most recent snapshot of NLog has (compared to 0.95):

* framework specific builds (.NET 1.0/1.1/2.0, .NETCF 1.0/2.0, Mono
* debug/release versions for troubleshooting/debugging
* single NLog.dll instead of NLog.Win32.dll, NLog.Unix.dll and so on
* new installer
* updated documentation (now uses NDoc 2.0 Alpha3k - still buggy)
* Mail target optimized for .NET 2.0 APIs
* colorful console with word and row highlighting. See the screenshots
* File target with auto-archiving (a.k.a. rolling file appender in
* File target optimized for multi-process writes (including special
optimization for Unix)
* Performance Counter target (counts messages)
* minor API tweaks (enums instead of strings)

There are still many issues to be sorted out (mostly documentation
partially because of NDoc 2.0 changes). I'm awaiting comments.



Nlog-list mailing list
[hidden email]

End of Nlog-list Digest

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
<a href="">
Nlog-list mailing list
[hidden email]