Skip to content
Roland Hughes edited this page Jan 17, 2026 · 2 revisions

January 2026 Status

Version 0.2.1 - Modernization

Because I need RedDiamond to work on a Windows platform so I don't go insane working on BasisDoctrina, ls-cs has been resurrected. Decision was made to focus on VCPKG (windows only), CMake, and CPack for dependencies and packaging. Back when I started, these things weren't good, now they are, at least a bit better. VCPKG is useless on Linux because we currently have MESA dependencies and the MESA package in VCPKG requires libdrm-intel version way beyond those found in 18.04 and 20.04

If you are good or better yet really good with CMake, now is a good time to join.

  • Webkit was dropped.

  • All that "declarative" sh*t was dropped too.

  • Oceans of dead code are being removed. Vulkan was dropped because the version in the library was soooo out of date it couldn't begin to compile with VCPKG Vulkan.

  • Qt header files will all be renamed to avoid collisions when both Qt development and LsCs development are installed on same machine.

  • Build scripts will lose the hard coded include/Qt path in the cmake files.

  • Many/most of the 3rd party directory trees will be deleted. Eventually VCPKG will provide common things like JPEG, ZLIB, TIFF, etc. There is no reason to carry around such baggage in 2026. Ubuntu 18.04 has all these things and that is as old as we will go.

  • Every attempt will be made to make this library STATIC linkable. With Web and scripting that was physically impossible.

  • When this version is done the library should have installable packages for Windows 10, 11, Debian, RPM based distros, and Arch

  • At this point we will ask someone still running Windows 7 (64-bit) to see if it can build and package there as well. I am ripping out 32-bit support. If someone desperately wants to use this on 32-bit Raspberry PI OS or Windows XP I can point them to the previous release for things to steal from CMake scripts. Yes, I have one of those old PIs. It has been in a box for years. I don't foresee a grand desire to do anything on it again unless a client requests it.

  • LsScintilla will be modified to use this version of library, quickly followed by RedDiamond

0.3.1 - BasisDoctrina ideas - Plugins are legacy baggage

  • SDL3 will become the I/O foundation. Legacy platform plugin architecture will be nuked and replace by a single LsPlatform class. More difficult that it sounds since SDL3 has its own event loop.
  • Many dependencies should go away with the switch to SDL3.
  • We should be able to use VCPKG for all platforms once we move to SDL3.
  • All of the EventLoop classes may end up going away or modified to use this new event loop.
  • All of the QChar stuff will be removed. It will be replaced by LsChar which will be a version of bd_char
  • All of the QString stuff will be replaced by LsString which will be based on bd_string
  • DBus class will be created wrapping SDL3 DBus capabilities then adding whatever else we need.
  • One by one each existing legacy CopperSpice/Qt class will be replaced by an Ls class wrapping either SDL3, STL, or something else.
  • QApplication will be deleted and replaced by LsTask which will be based on bd_task
  • So it is never confusing, we will need to come up with an Ls class name that doesn't include application for the control manager. alt To understand that you should probably read BasisDoctrina RoadMap Effort is being spent here to prove out concepts and ideas that will be used for a from scratch library.
  • As time and resources allow, shiny new classes wrapping SDL3 functionality that never existed in legacy Qt or CopperSpice
  • LsSerialPort class will be added

It is expected there will be many 0.3.x releases before we get to next major release

1.0.0 - LsSomethingOrOther

  • A project name starting with Ls will be chosen. It will remove Cs as well as all hints at CopperSpice and Qt. At this point, other than parts of a CMake script that was nearly re-written in its entirety, there should be nothing left of what came before.
  • GitHub will be asked to change the name and sever the fork from CopperSpice.
  • Project will be on its own and the creator of said project will be moving to BasisDoctrina.
  • License will change to EPL-2.0 plus restriction or Zlib plus restriction

For those who are curious, the restriction is this

Restriction: You may not include this library in any library you charge money for. The days of companies like Qtc selling Open Source as a commercial library end here.