2.4.0 Release preparation

From Lazarus wiki
Revision as of 12:49, 10 June 2012 by Chronos (talk | contribs) (category)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Long term todo's for 2.4.0 release

Remove legacy interfaces and compatibility

  • disable oldlinux building (done)
  • move 1.0.x style routines (with old errorhandling) in sockets to a separate unit (<os>sock was proposed for the OS interface, "sockets" for a generic wrapper over the OS-interface common for all platforms, and "passock" for the Pascal-style boolean-wrappers and the sock2text)
  • Decide what to do with unit libc. Should probably get some deprecated here and there to "discourage" use. See also http://bugs.freepascal.org/view.php?id=13373 This is not about preparing to remove unit libc (for which I (Marco) don't have a schedule) , it is just to discourage new use of it.

removing old socket routines

since nobody did anything about this at all since 2.2.0 was released, is it really a good idea to start completely throwing that stuff around now right before the next release? -- Jonas

The agreement then was afaik to kill it off just before 2.4.0, to avoid having long ifdef's in user code between 2.2 and 2.3.1 (the oldlinux problem we had with 1.0 and 1.9.x).

But you are right that it might be too late for the passock part. So I suggest to keep that part for another round, since they are flagged deprecated anyway, and only remove the aliases that have 1:1 fp* equivalents since 1.9.x days. Moreover, the upcoming release is a beta. Its interface should be correct, but minor bugs can be fixed in the real release, if their potential problem scope is as little as this one. -- Marco