Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo
I've been thinking a lot about the best license for this library (and possibly for many other open-source libraries), and haven't reached a clear conclusion. I also exchanged some fruitful emails with Mathias Bierschenk (thanks!), and got more ideas and information. The problem is pretty complicated, so I'd like to have a discussion here.
First, I want to mention a page that discusses open-source licensing issues in detail: http://www.catb.org/~esr/Licensing-HOWTO.html (I also got the link from Mathias). It's pretty long, but worth reading.
Now let's define our goals for the license:
1. It should allow linking the library to any program if possible, without any condition or restriction.
This is a bit tricky, because for some programs the limitations come from "outside" i.e. the program's license - strong copyleft licenses such as GPL require the library to be redistributed under that specific license too.
However, GPL is the only widely-used strong copyleft license, so we mainly need to concern about GPL compatibility. See below for more details.
2. It should protect our work (and the freedom of the code), not allowing redistribution of the library itself (and modified versions) in a closed-source form or with a license that we didn't accept.
About GPL compatibility:
One problem is that somebody may take and maintain a modified version of the library and only release it under the GPL. This way, the (probably improved) library can't be linked with non-free (closed-source) programs anymore.
However, it is not a big problem (and also unlikely to happen), so between this issue and GPL incompatibility I'd choose the former.
Also, for the SMART library in particular, there is an exception in the GPL that *might* apply:
"the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable."
But I think it would be wise not to rely on it.
Now let's consider the most commonly-used licenses and what problems they have:
1. GPL itself (~40000 SF projects)
Obviously, it doesn't meet our first goal. GPL forces the developers to release their code under the GPL too (and as a consequence, make the source code available without extra charges (except distribution costs) and redistributable under the GPL). We don't want to force the developers using the library to do that.
2. LGPL (~6000 SF projects)
Apparently LGPL was written to address the goals mentioned above. But at a closer inspection, one can see that redistribution of programs linked with the library, under any other terms, is allowed only with a set of conditions (refer to paragraph 6 at http://www.gnu.org/licenses/lgpl.html ). That is not good enough.
3. BSD or MIT (~5000 SF projects, combined)
These licenses are simple and great; however, they don't provide the protection that I mentioned in the second goal. They are also "poorly crafted for modern conditions" as E.S.Raymond says in the Licensing-HOWTO page.
4. Public domain (~1500 SF projects)
Obviously, it comes with absolutely no protection.
5. Artistic license (~1000 SF projects)
This is pretty ambiguous, because there are several artistic licenses. Two of them (hopefully both pretty recent) are http://www.opensource.org/licenses/artistic-license.php and http://dev.perl.org/perl6/rfc/346.html
I don't really understand them yet, but they sound pretty strange to me. I'll have to study them in detail, or even better, you could do that and post a reply to this thread.
Ok, then let's see some possible solutions:
1. GPL with an exception that allows linking with any program, such as the license of Guile
- best compatibility with GPL, while satisfying both goals
- there's no OSI-approved license (that I know of) with these terms
- how do we declare the license on SF?
2. wxWindows (wxWidgets) license (LGPL with an exception)
- OSI approved
- written with Richard Stallman's advice and approval
- contains a copyright notice with proper names and explicitly forbids any kind of modification of the license
- the exception allows distribution "under the user's own terms" of "binary object code versions of works based on the Library"; however, LGPL says 'A "work based on the Library" means either the Library or any derivative work under copyright law', so apparently it doesn't meet our second goal (?)
- would the copyright notice effectively assign the copyright to the people mentioned in the license?
- how about the exception?
3. Write our own license
- we can decide all the terms, with no bull, no unnecessary additions and nothing left out
- obviously, not a known license
- people will have to study it carefully and understand it; they may not trust it without some legal advice
- how to write it?
4. MPL 1.1 with multiple licensing (including GPL)
- MPL alone (the license that we are currently using) is not GPL-compatible
- multiple licensing is described in paragraph 13 of the MPL
- recommended by OSI (see the Licensing-HOWTO page)
- MPL is very complicated and written in legalese; I personally don't understand exactly what it says
- is it necessary to have a clause in the license in order to use multiple licensing?
5. Multiple licensing (including GPL)
- compatibility with several licenses (so more people can be happy)
- modified versions could use only one of the licenses (as discussed at "About GPL compatibility")
- is it legally acceptable? (why does MPL have a specific clause?)
- what licenses to use, in order to meet the 2 goals?
There are also AFL and OSL, recommended by OSI. I haven't studied them in detail (and they're not really popular), but I understand they are comparable to BSD and respectively GPL (but arguably better written). That would make AFL not acceptable, and OSL acceptable only with multiple licensing.
Sorry for the long message, but I felt it was important to go into these details. If you are unclear about any terms that I used (or claims that I made), you can check www.gnu.org and the Licensing-HOWTO page that I mentioned near the beginning.
Please reply with your opinions, comments, suggestions, corrections and/or questions. You are also welcome to invite anybody else to participate in the discussion.
you have described your thoughts so well and detailed that I suggest to re-post (or provide a link to) in a more approriate mailing list:
(including a link to the archive)
I'd be curious what kind of answers you will get as I assume this is a kind of common problem/question. I must admit, though, that I don't know if these people are already biased and only say something like "Pick the Academic Free License and don't worry!".
On the other hand, maybe someone goes into the details, e.g. about possible misconceptions or about the question if the SMART library could be considered as part of the compiler with regards to the GNU GPL. It really depends on whether they bother to read your whole post at all, but from what I've seen it seems there are enough people with different opinions.
I couldn't see your message in the archive ... maybe you need to be subscribed to post?
I think you could get the wxWidgets license to work.
- would the copyright notice effectively assign the copyright to the people mentioned in the license?
No I think the copyright is meant to apply only to the actual text of the license. Not sure why it's there - you could check with wxwidgets team / OSI / FSF
- how about the exception?
This should probably be raised with wxwidgets / FSF as a question. It clearly is not meant to include the library itself, so if it implies that it is a problem with the license that probably needs to be corrected. However it is difficult to define at what point the library is itself and what point it is being included in another library.
In any case I think the best bet is to take the wxWidgets license and see if any modifications to it are required, rather than starting from stratch, since the intent of the license seems to be exactly the same as what you want to do.
Ooo, you just made my day. I'll have to come back to this with a better post later.
The first sentence of you goal preempts GPL and LGPL as they both place conditions and restrictions. But so do other licenses, perhaps a slight rewording of the desire needs to be accomplished?
It sounds as if you're trying to determine how to state license multiplicity such that libraries with differing licenses can be used by and with your library. Is this correct?
I had tried that list in the past (of course, not with such a detailed message because at that time I didn't have much information), and I was quickly contradicted, dismissed and sent to a lawyer (as if license lawyers were as common and affordable as plumbers)
My impression was that the list was for lawyers and OSS gurus, to discuss issues like the deeply complex implications of the difference between "0.5" and "1/2" in the wording of a license, and not for common mortals.
Ok, I guess I'll have to ask at the wxWidgets forums/lists.
I think you're right about the rewording, for example we most likely wouldn't mind conditions like "you must retain this disclaimer of liability".
Let me try to rephrase: the first goal is to allow our library to be linked with any program, and the resulting executable to be distributable under the broadest possible choice of terms (both free/open-source and proprietary/closed-source, both gratis and commercial), without causing licensing clashes.
Pretty much like MinGW, I suppose, except that our first goal is [greatly] limited by our second goal (which MinGW doesn't seem to have).
OTOH, these two goals are not necessarily carved in stone, we are also open towards other (well-supported) suggestions.
I have some comments, but they should be taken with a grain of salt. I am not a lawyer or even a paralegal. Beware, my comments are written as I though of them and are poorly organized.
I have always liked the MPL. My biggest problems are its hard ties with Mozilla. If you use the license I would suggest you modify and maintain your own version. The multiple license portion of the MPL allows the licensee to choose which license they want to adhere to. That is a flaw in my opinion in that almost everyone will always choose the least restrictive license. That sort of removes the need for a multiple license with a more restrictive license, like the GPL, because it will never be used.
I didnt like Kips sister version of this project for two reasons. For one thing he went against my good advice and released it under GPL. The GPL is a great license, but I have several disagreements with it. A library released as GPL can not be used, in object form or otherwise, in proprietary applications. For another it has a horrid name. >_<
Almost everyone I know suggests not using the LGPL for anything. I tend to agree, but I will say it seems to be a good license for DLL type libraries. This doesnt mean much as the original point, or goal if you prefer, of the project was to remove MINGW dependency on the MSVCRT.
I recommended a variant of the MIT license originally, and I tend to stand by that recommendation. My suggestion was to use MIT as a template, but bump up the security. That is, I wanted to protect the copyright holders of the library and keep it from being dumped into closed source projects. As you point out, finding a good lawyer for cheap is an exercise in futility.
Public Domain is not a license. At least under the BSD and MIT licenses an illusion of closed copyrighted material is maintained.
Let me say that I really like the wxWidgets license. I would suggest writing your own variant and explicitly basing it on the GPL instead of the LGPL while keeping a similar exception for executable code, or object code at your leisure. I think that this route would completely accomplish both of your concerns. I would suggest you use the phrase executable code and define it somehow as binary code ready to be executed in an execution environment. Defining it simply as object code would allow people to release proprietary version of the library or using the source code in a proprietary library. That is, use the source itself and not simply link to it.
The AFL, as I understand it, will not protect your code as you desire, and the OSL will not allow the freedom you desire.
Finally, keep in mind that licensing, especially open source licensing is a thin hair. It has very little tinsel strength. Depending on how the code is used, where it is used, who used it, what country the code is used in, who finally resides over any possible lawsuits, and what day of the week it is depends on the enforceability of a license. Any license regardless of everything may not be enforceable under certain circumstances. I only bring this up to say, you may wish to offer it under a very easy to under an easy to understand license and forgo your own rights. Under the right circumstances even the MS EULA is not enforceable and it is a headache waiting to happen. Not to mention, if the user of the library is underage, or for other reasons not allowed too enter into a legally binding contract, then the license doesnt really mean anything. Of course, my point here is that a simpler less restrictive license may be the best bet.
Then again, my brain is in fuzzy mode so this entire commentary may be worthless.
Zero Dante Valintine
(For anybody who didn't know, Zero is the guy who originally had the idea to make this library, then gave it up but a couple of guys and I took it over)
> I am not a lawyer or even a paralegal.
I don't think any of us is :) and even if you were, your comments would not be considered legal advice outside of an attorney-client relationship... or something :p
> I have always liked the MPL.
There must be something terribly wrong with you :) How can you like that... thing?
> If you use the license I would suggest you modify and maintain your own version.
Then we probably couldn't call it MPL anymore (?)
> everyone will always choose the least restrictive license
Not really, I think everyone will always choose the most compatible license for their needs.
If they want to link the library with a GPL project, they will obviously choose GPL.
> I didnt like Kips sister version of this project
Ugh.. I don't want to talk about it
> My suggestion was to use MIT as a template, but bump up the security.
That means writing our own license. BTW, I forgot to mention another "con" for that: there are too many different licenses already...
> I really like the wxWidgets license. I would suggest writing your own variant and explicitly basing it on the GPL instead of the LGPL while keeping a similar exception for executable code, or object code at your leisure.
That sounds very much like the license of Guile, have you checked it? (It is the first solution I suggested)
> Finally, keep in mind that licensing, especially open source licensing is a thin hair.
yeah, this is explained in detail in the Licensing-HOWTO page; it is also mentioned there that the license is mainly a kind of "social contract", but still it actually works very well (at least within the OSS community)
> I only bring this up to say, you may wish to offer it under a very easy to understand license and forgo your own rights.
I prefer at least stating the intention of the copyright holders (to protect the code); even if it is not enforceable, the message is important
(more details in the Licensing-HOWTO page)
"I couldn't see your message in the archive ... maybe you need to be subscribed to post?"
you mean the archive in the opensource.org list? I haven't posted anything yet, I only suggested it to Adrian, because I think it's up to him if he wants it to be discussed there.
I guess my post was ambigous, since I wrote "I'd be curious what kind of answers you *will* get (...)". Maybe I had better written something like "(...) what kind of answers you *would* get if you posted your question there"? You see, English isn't my native language... ;-)
Well, it has been almost one month of silence here. I also asked about the wxWidgets license in their forums, but I got 0 replies.
Then my suggestion is to use the Guile license adapted for our library. It has one problem which I didn't mention - it forces people to use GPL if they distribute source code, but I don't think it matters much (and GPL is the most popular anyway).
The question remains: how do we declare it on SF? I will probably have to submit a support request. I thought it must have been asked before, so I searched for "guile" in the tracker, but I only found one question about the license of Guile, and in the end the project admin decided to move to LGPL instead.
So anyway, I will start making the necessary steps for changing to the Guile license. Let me know if any of you have any objections or comments.
Guile seems to fit well the goals you stated at the beginning of this thread but I don't see why people must release their source code as GPL should they chose to distribute it ?
It is clear nobody can change the library to make it a closed source library and it is also clear that if the library is changed to add some GPL code, then the whole library falls under the GPL licence. But I understand that the Guile exception frees the application from adopting the GPL licence of the library it is linked against. Is it correct ?
Adrian: "Well, it has been almost one month of silence here."
I can only speak for myself here. The reason is that these questions *are* somewhat difficult and license reviews take more time than I had expected. I've been trying to read and understand both versions of the Artistic License that you pointed to, but haven't got really far. My comments:
Doesn't meet you goals. The problem here is the requirements under 4 that interfere with the link-with-anything goal. These requirements are relaxed in 6 and 7, but these don't explicitly allow linking the "package" into an executable.
You have noticed that this is a beta, right? Thus I'm not sure if this is explicitly allowed by SourceForge.
The "Permissions for Redistribution of Modified Versions of the Package as Source" and "Permissions for Redistribution of Non-Source Versions of Package" fulfill your link-with-anything goal. An exception is given under 8. It sounds a bit weird at first, though:
"In addition to the permissions given elsewhere by this license, You are also permitted to link Modified and Standard Versions of this Package with other works and distribute the result without restriction, provided You have produced binary program(s) that do not overtly expose the interfaces of the Package. (...)"
Huh? "overtly expose the interfaces"?! What's that supposed to mean? Just read on:
"(...) This also includes permission to build stand-alone binary or bytecode versions (...) that require the Package, but do not otherwise give the casual user direct access to the Package itself."
While this might sound promising, the problem is that it offers more freedom than you actually want to offer because the exception also applies to Modified Versions (not only Standard Versions). Because of this problem I didn't bother to further investigate this license.
Another question I tried to answer was: Can you link a GPL program against the Smart Library if the Smart Library is distributed under a license which is incompatible with the GPL? I've been thinking about this, but every once in a while I would find new pitfalls. First, I was sure the answer was yes:
"Q: What legal issues come up if I use GPL-incompatible libraries with GPL software?
A: If the libraries that you link with fall within the following exception in the GPL:
'However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.'
then you don't have to do anything special to use them; the requirement to distribute source code for the whole program does not include those libraries, even if you distribute a linked executable containing them. Thus, if the libraries you need come with major parts of a proprietary operating system, the GPL says people can link your program with them without any conditions."
But then I discovered an irritating note at another question:
"I'm writing a Windows application with Microsoft Visual C++ (or Visual Basic) and I will be releasing it under the GPL. Is dynamically linking my program with the Visual C++ (or Visual Basic) run-time library permitted under the GPL?
Yes, because that run-time library normally accompanies the compiler or interpreter you are using."
The question is, why do they say "dynamically linking" instead of "statically"? I believe the exception mentioned above also includes static linking?!
License of Guile is OK, but it forces everyone to GPL his whole program if he makes changes to the library. It would fit your intentions better if you used LGPL with a special exception. If someone makes changes to the library and dynamically links the library, he has only to release the sources of the library. That's rather your intention, isn't it?
Just one more thing. Although you don't seem to be thinking about writing your own license anymore, some thoughts about this.
"3. Write our own license
- we can decide all the terms, with no bull, no unnecessary additions and nothing left out"
My take is that most of the "bull" and "unnecessary additions" in existing licenses aren't "unnecessary" at all. Just think about how you would write a license that covers the issues and goals that you metioned in your original post.
The thing is, if you want to force other people to distribute source code of their changes, you must also force them to put it under the very same license, otherwise they could choose e.g. BSD or GPL, thus impeding your intentions. For obvious reasons, it wouldn't be enough if they only "published the sources", it must be under *this* license.
Essentially, you must create a license similar to the GPL that contains a special exception for linking, and that doesn't allow to take this special exception away.
Also, you must define the terms that you refer to (Licensor, Original Work, Derivative Work, Source Code, You).
Of course, you also need a warranty disclaimer.
No matter how you tackle it, the license becomes quite lengthy and hard to read (and far from OSI-certified if that matters).
Or just stick to the following:
SMART LIBRARY LICENSE
1. If you make changes to the Smart Library, you must distribute the respective source code under the terms of this license as well, or retain from distribution at all. This affects only the Smart Library, not the code that the Smart Library is linked to.
2. If you don't make changes to the Smart Library you may publish the resulting work under terms of your choice.
3. Don't sue us if it breaks.
I would like to offer better advice, but after reading the guile license I would vote for it. That is if I had a vote, which I don't.
Sorry it took so long for me to drop back around Adrian. First Metroid Prime 2 came out, and you know what that means, and for about two weeks I have been working a cable project, and now it is almost christmas. Plus my new toy, laptop, is suppose to come in soon. ^_^
Off Topic [No more so than my being here.]: Mathias are you coding for SMART?
Zero Dante Valintine (狂気機械)
"Off Topic [No more so than my being here.]: Mathias
are you coding for SMART?"
Short answer: No.
Long answer: When I was learning C and discovered Bloodshed Dev-C++, I wondered (like several others) if I can use it for creating closed source software. So I read books, FAQ's, and so on, but in the end I couldn't find a comprehensive answer, so I wrote one myself. (http://www14.brinkster.com/aditsu/dev-cpp-faq.html#legal) It isn't really easy to give an ad hoc answer to a beginner because you can't be sure if he knows: what does the GPL imply, what is Dev-C++ and what is MinGW, what is a library, what is a compiler, what is Derivative Work, and so on. So I contacted Adrian who was kind enough to include it into his FAQ.
Until recently I have been using Win95 (now I use Win98SE) and I appreciated any software that didn't require special system updates (Internet Explorer for CHM help files being one of my favourites). I began to realize that there are still people who must, for whatever reason, use older versions of Windows. So I thought it might be a good idea not to use new OS features until you really need them, i.e. only to use them when they add significant functionality rather than some cosmetic stuff.
Because I liked the idea of supporting the first version of Win95 no matter if MSVCRT.DLL is installed, I had an interest in John Platt's MINGWACR project and was disappointed that development had stopped. (By the way, John Platt has finally given up this project: "I have chosen to discontinue development of the project because I do not want to be involved in potential copyright issues, especially since the SCO Lawsuit. I need a lead developer to take over the project."). Some Google search and such revealed some strange CharlieFace project that to my knowledge hasn't released any files yet, and the Smart Library.
First, I didn't really understand why Adrian hasn't simply chosen MIT/BSD, but with time it occured to me that it might be a good thing to protect one's own work. It's a general interest of mine if there is a license that protects one's work and still allows linking with anything. Even Guile means that someone could make it GPL-only.
The interest in the Smart Library itself, however, is somewhat diminishing for me, as I feel that we are going to see 2005 soon with Win95 support becoming less important every year. Moreover, there are several free of charge compilers around that support early Win95 out of the box (Borland, DigitalMars, even Microsoft I hear?). Smart might still be useful to bypass some limitations of MSVCRT.
That's more than you ever wanted to know about me, isn't it? ;-)
> I don't see why people must release their source code as GPL should they chose to distribute it ?
well, if they just need to link to the SMART library, then I think they could distribute their code without it, under any license
if they actually copy some code from the library for using it in a different way, then it will have to be GPL according to the license
do you have a better suggestion?
> the Guile exception frees the application from adopting the GPL licence of the library it is linked against. Is it correct ?
yes, the binary executable code is freed from GPL (if it doesn't use other GPL code)
> I've been trying to read and understand both versions of the Artistic License that you pointed to
wow, thank you for your effort!
from your findings, it seems that using an artistic license is not a good idea (too confusing and probably not suitable), so maybe we should forget it
> it offers more freedom than you actually want to offer because the exception also applies to Modified Versions (not only Standard Versions).
I don't think I would mind applying the exception to modified versions too
the Guile license also states "If you write modifications of your own for GUILE, it is your choice whether to permit this exception to apply to your modifications. If you do not wish that, delete this exception notice."
> Can you link a GPL program against the Smart Library if the Smart Library is distributed under a license which is incompatible with the GPL?
> First, I was sure the answer was yes:
well, the SMART library is not [yet] "normally distributed with the major components of the operating system", so I'm not sure about that exception
> But then I discovered an irritating note at another question:
> why do they say "dynamically linking" instead of "statically"? I believe the exception mentioned above also includes static linking?!
well, I think it's obvious that it includes static linking, but for that person it was unclear whether it included dynamic linking (to the vb runtime libs) or not
> License of Guile is OK, but it forces everyone to GPL his whole program if he makes changes to the library.
they could extend the exception to the modifications, as I said above
> My take is that most of the "bull" and "unnecessary additions" in existing licenses aren't "unnecessary" at all.
you may be right, but I think I would be really happy to delete some parts completely
> Or just stick to the following:
> SMART LIBRARY LICENSE
that's interesting :) but we would need to study the implications in detail.. and it would be harder to get SF to approve it
for now let's focus on the suitability of the Guile license
> That is if I had a vote, which I don't.
I think you still have a vote (at least as long as it's the same as my vote *grin*)
> First Metroid Prime 2 came out, and you know what that means
huh? not really
but I think this is really off-topic ^^
> John Platt has finally given up this project: "[...]I need a lead developer to take over the project."
I wonder if we (the SMART guys hehe) should volunteer, but the only thing I remember from looking at the mingwacr code is that I didn't understand anything
maybe I should look again?
> Some Google search and such revealed some strange CharlieFace project that to my knowledge hasn't released any files yet,
oh, that was just Kip trying to be a smartass towards Zero and the other guys; nevermind that project
and if you don't know Kip, be happy :)
> First, I didn't really understand why Adrian hasn't simply chosen MIT/BSD
actually, jwking was originally in charge, with drarem, w1nma1n and me as sidekicks :)
we decided together that we should protect our work; maybe I didn't care very much, but I agreed
however, jwking and drarem seem to have disappeared, w1nma1n just recently returned from a long but very justified absence, and the most active developer was Frederic who joined us later, almost accidentally :)
so if we clarify who's in charge, we could change some things, but I think it's not necessary
> Even Guile means that someone could make it GPL-only.
yes, but there's no way around it if we want to be GPL-compatible
> The interest in the Smart Library itself, however, is somewhat diminishing for me
> Smart might still be useful to bypass some limitations of MSVCRT.
well, that's one of the main reasons I want to work on the library - the limitations
the second one would be speed, but I expect it won't be easy to make it really faster
>if they actually copy some code from the library for using it in a different way, then it will have to be GPL
Well, it would be better to allow any form of open source distribution, but GPL is good enough.
>well, that's one of the main reasons I want to work on the library - the limitations the second one would be speed, but I expect it won't be easy to make it really faster
I entirely agree with you on this. Moreover, I'm not smart enough to make it really fast. My goal is to make the library usable to the point where people start using it and it attracts some gurus that can make it fast. I hope it's not just a dream ;-)
I'm not sure how important my opinion is for you, but anyway...
Adrian: "for now let's focus on the suitability of the Guile license"
Similar to one problem with the wxWidgets License, it has the problem that it contains the names "GUILE" and "Free Software Foundation".
Other than that and the things that I already mentioned (and that you indicated are OK for you), I don't see any problems with GUILE. I hope you get it approved by SourceForge, that means in a way that is useful for you.
> Similar to one problem with the wxWidgets License, it has the problem that it contains the names "GUILE" and "Free Software Foundation".
Well, I don't plan to use the exact Guile license, but a very similar one, with the names replaced.
It seems that it's the best choice we can find, and nobody has strong arguments against it, so I plan to go for it.
Merry Christmas to all!
I finally did the license change and updated the project information and home page. Let me know if you have any comments.
i think its the best use GPL for tiny projects which it isn't
in greater projects you should use anything else because, GPL forbids to create CLOSED LICENCE program with even parts of your code even saying that that part of code is yours not theirs
Thank you for stepping in 32 months after the last post :-) As you can see, the discussion was long before we took that dual license system.
To understand why we did that, you may review the very first post of Adrian where he states the goals of the license, in particular:
>2. It should protect our work (and the freedom of the code), not allowing redistribution of the library itself (and modified versions) in a closed-source form or with a license that we didn't accept.
I don't want anyone to take the code, reuse it in its application and then deny others the right he was offered (and took gladly) either by closing the source or the license.
Hey Frederic, how are you doing? Long time no talk, still watching this forum? :)
Sorry I kinda abandoned this project (well, not intentionally, but.. effectively). There are several reasons for that:
- I am (and have been) very busy with my work
- I pretty much stopped programming in C/C++, since I had to use java at work. I found out that I like it very much, and it has a lot of advantages.
- I pretty much stopped using windoze. I switched to Gentoo Linux, even at work.
- There doesn't seem to be a lot of interest in this project. The world is moving to .net, java, php, ruby and the like. C/C++ are becoming niche languages (when talking about new projects), used mainly in OS-specific, high-performance code.
- Also, not many people are using gcc on windows, and those who do are generally satisfied with the msvcrt implementation.
- scanf is a *MAJOR PAIN* to implement and test.
So the project is frozen indefinitely. I'd still like to continue it, but I'd also like to do a lot of other things, which will most likely come first (and I don't have time for them either).
If anybody volunteers to work on it, I'd be very happy. Otherwise, if you think it's better to delete it from sourceforge, I'll consider it.
Hi Adrian ! I see you are still watching the forum too :-)
Your reasons for stopping the project sound like an echo of what happened here :-)
I completely moved to Linux at home several years ago (I'm using Gentoo and forbid any mentioning of Windows :-)) and I'm more than happy with that choice. I don't plan to have Windows again on my computer.
Although I still program in C and I'm still stuck with Windows at work, the compiler we use is so rudimentary that it can not accommodate another run time library than the one it is provided with. So I don't have any use for a SMART library any more...
I still watch this forum in case something happens or someone volunteers to continue the project and needs some information. I'm reluctant to throw away the little that was done but, sooner or later, we will have to delete the project if nothing change. It is best not to clutter Sourceforge's namespace indefinitely. I just can't get used to the idea...