Greetings.
First, thank you again for the positive feedback and review on the
recent Ubuntu/Debian packaging merge. I really appreciate the time and
attention from the CDE developers, and I am happy that the packaging
work was useful to the project.
I have now opened another merge request:
https://sourceforge.net/p/cdesktopenv/code/merge-requests/86/
This MR replaces the vendored dtksh ksh93 source tree with the official
upstream ksh93/ksh repository as a Git submodule.
I want to make one important point very clear: this does not upgrade or
change the ksh93 version used by CDE.
The submodule is pinned to the same ksh93u+m v1.0.4 commit that CDE had
already imported:
d4503c15572dd6b6b2cdd57c61583fbda27571a4
So this is not a KornShell version bump. It is only a provenance and
maintainability change: instead of carrying a copied source tree inside
CDE, the same upstream version is referenced directly through Git
history.
But off course, this will allow us to quickly install and benefit from
upstream korn shell project updates on the future.
Before opening the MR, I audited CDE's embedded ksh93 tree against the
official upstream v1.0.4 tag. Out of 1152 compared files, 1149 were
identical.
The only substantive local CDE delta was in:
src/lib/libast/features/aso
That change has been preserved as a CDE-side patch:
programs/dtksh/ksh93-patches/0001-backport-upstream-asocasptr-fix.patch
The patch is a small backport of the upstream _aso_casptr() fix
associated with ksh93/ksh issue #697. The build system applies it before
building dtksh and reverses it during clean.
There were two other differences found during the audit, but I did not
preserve them as patches:
- src/cmd/ksh93/sh/xec.c had a local NULL comparison simplification.
- src/cmd/ksh93/tests/libcmd.sh had whitespace-only differences.
I left those out intentionally. The xec.c change did not correspond to
an upstream commit that I could identify, and it appeared to be only a
local simplification rather than a required CDE functional change. The
libcmd.sh difference was whitespace-only. I thought it would be better
to keep the submodule as close as possible to the official upstream
v1.0.4 tree and preserve only the real functional delta.
I also tested the MR locally:
- verified the submodule is pinned to official upstream ksh93/ksh v1.0.4
- verified the CDE-side patch applies cleanly
- built a local Debian binary package with dpkg-buildpackage -b -us -uc
- installed the generated cde-desktop_2.5.3-1_amd64.deb
- confirmed /usr/bin/dtksh runs successfully
- confirmed dtksh reports:
Version AJM 93u+m/1.0.4+d4503c15/MOD 2022-10-22
For anyone testing the branch:
https://sourceforge.net/u/johngrimmreaper/cdesktopenv/ci/experiment/ksh93-submodule-v1.0.4-audit/~/
the submodule can be initialized with:
git submodule update --init --recursive
The goal of this merge request is to make future KornShell maintenance
easier and auditable, while preserving the current CDE behavior and the
exact same ksh93 version.
Thank you again for your work on CDE.
Best regards,
Reaper
_______________________________________________
cdesktopenv-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel