Change history for QextSerialPort (formerly QwSerialPort):
(Lines beginning with + represent new functionality, * represent changed or
fixed functionality, - represent removed or deprecated functionality)
Version 1.2 rc (2012 Debao Zhang)
* Build-system refactor
* Issue 145 : Custom baud support for MacOS
* Issue 36 : Fix Devices Notification for Vista
* Issue 54 and Issue 108 : Try detect more ports for windows
* Issue 139 : Adjust the name of generated library
- QextWinEventNotifier has been removed
Version 1.2 beta2 (2012 Debao Zhang)
* Issue 124 : implement canReadLine
* Issue 122 : make Dtr default to TRUE under Windows.
* Issue 127 : fix QObject::MoveToThread brokes SerialPort on Windows
* Issue 129 : Add custom baud support for Windows.
* Issue 131 : Make sure portName returned by QextSerialEnumerator can be used by QextSerialPort
* Issue 134 : Make "make install" really works
* Issue 2: device discovery / removal notification on linux (read config_example.pri to figure out how to enable it.)
Version 1.2 beta1 (2012 Debao Zhang)
* D-pointer and Q_PRIVATE_SLOT are used to moving private members from QextSerialPort to QextSerialPortPrivate
* qdoc3 instead of doxygen is used for generating documents
* MIT license header add to all sources files
+ add a helper class QextWinEventNotifier for windows user, when user's SDK doesnot contain Qt's private files, this class will be auto selected.
Version 1.2win-alpha (2007 Michal Policht)
+ Added QextSerialEnumerator pre-alpha. Works under W2k and later versions of Windows.
+ Event driven mechanism (alternative to polling) is now available on Windows.
- Removed default (=0) parameter from open() functions.
* Fixed bug #1714917 in Win_QextSerialPort::close() method (by Kurt).
* Fixed problem with lack of proper blocking in readData() on win32 (by Brandon Fosdick).
* Removed QT_THREAD_SUPPORT option. Now QextSerialPort must be always compiled with threads support.
* Mutexes are not static.
* setTimeout() now accepts only one parameter.
* bytesAvailable() on POSIX now shows 0 bytes instead of -1 when no bytes are available.
* bytesAvailable() is const.
* native POSIX file descriptors instead of QFile->handle() calls
+ POSIX: Save and restore original termios when opening and closing the device
* POSIX: Only disable special characters on systems that support it
* POSIX: Use cfmakeraw(3) to get a non-canonical termios
+ POSIX: Call close(2) in close() to actually close the device
Version 1.1 (official release)
Version 1.0.1
* Minor changes (mostly in test application)
Version 1.0.0e (by Micha? Policht)
* Fixed bytesAvailable(). Includes buffered bytes to the result.
+ Added isSequential() method.
+ Provided test application
Version 1.0.0d ( changes by Micha? Policht )
- Removed isOpen() overriden declaration/implementation from qextserialport's classes. isOpen() relies on QIODevice now.
- Removed bool portOpen variable. Replaced by internal QIODevice.openMode.
- Removed getChar(), putChar() overriden declaration/implementation. QIODevice can handle this.
* Calling open() with specified OpenMode invokes QIODevice::open() which result in proper openMode setting.
* readData(), writeData() are protected as in QIODevice declaration.
* QIODevice:: read() and write() function are working now (use them instead of readData() writeData()).
* readData(), writeData() don't check if port is open any more (read() and write() assures that). The same behaviour can be found in QFile for example.
* Fixed readLine().
* Fixed randomly crash on deletion bug on Windows ( by Stuart Nixon )
If I can use it as a library, how should the README be formulated?
Is the "MIT license" from 2008 appropriate?
== Why can we use MIT? ==
Form the history of [http://lists.trolltech.com/qt-interest/2004-12/msg01022.html qt-interest mail list]
* Wayne Roth, the original author of the project, had said that:
the code is in the public domain. Do whatever you like with it. Right
now I have too many other things to do to put any serious time into
fixing it. Trolltech should be aware of this already; they asked
about a license when they offered to host the tarball.
* Stefan Sander, the maintainer of qextserialport on sourceforge, said that
Hello,
My project registration at !SourceForge have been approved.
http://www.sf.net/projects/qextserialport
I thought an initial licence of Public Domain would be best solution.
Someone wrote: - Because its public domain, some could fork it under different licenses -
And from [http://groups.google.com/group/qextserialport/browse_thread/thread/fbcddbfb4a0b5a51?pli=1 this thread] on qesp mail list, we can see that, current maintainers and users agree with a MIT licence.
* Brandon Fosdick,
I would vote for BSD or MIT :)
* Liam Staskawicz,
That works for me - let's call it MIT and go for it :)
And from [[https://groups.google.com/forum/?fromgroups#!topic/qextserialport/P_5TrNHBICE this other thread]] on the same mailing list:
OS X implementation, see \l http://developer.apple.com/documentation/DeviceDrivers/Conceptual/AccessingHardware/AH_Finding_Devices/chapter_4_section_2.html