From lang at b1-systems.de Mon Nov 22 08:15:25 2021 From: lang at b1-systems.de (Ralf Lang) Date: Mon, 22 Nov 2021 09:15:25 +0100 Subject: [dev] Library 6iness and PHP 8 readiness In-Reply-To: <1567aa3f-b848-822e-ec06-23003c292a16@b1-systems.de> References: <1567aa3f-b848-822e-ec06-23003c292a16@b1-systems.de> Message-ID: Am 20.11.2021 um 08:31 schrieb Ralf Lang: > https://wiki.horde.org/Doc/Dev/ConversionH6 > > I have begun a table of libraries which I have worked on converting to > standards which I consider suitable for a next release. Of course it's > all debatable as it is NOT aligned with upstream goals. > There are more libraries where I did parts or slightly different > things, evolving into the strategies I documented there. > > I will add libraries to the table when I see them conforming > sufficiently to one of the described strategies. > > One example I did not add to the table yet is Exception because there > are minor deviations in test setup and coding convention. Once it's > aligned, it will be on the list. > https://github.com/maintaina-com/Exception/tree/FRAMEWORK_6_0/src > > The good news is we have a complete dependency cycle of libraries now, > so we have an installable set on which we can expand. > > Everything is designed to allow a gradual move of applications towards > the namespaced versions without major jumps where only one or the > other must be used exclusively. > While most libs are straight conversions, some contain substantial new > features or some BC breaks - stricter signatures, renamed protected > variables, class names which are no straight conversions from the > unnamespaced model. > The weekend saw horde/log added to the list https://www.ralf-lang.de/2021/11/21/horde-log-rewrite-goes-psr-3/ The horde/db library is also in the works but it is rich of __call, __get, inheritance subtleties of parameter covariance and keyed configuration arrays. Database adapters are hard to test and I don't think I will have a CI job for oracle. Setting up test scenarios for mysql/mariadb, postgresql and sqlite is already quite some work. It won't be done soon, too many more urgent topics on the table. -- Ralf Lang Linux Consultant / Developer Tel.: +49-170-6381563 Mail: lang at b1-systems.de B1 Systems GmbH Osterfeldstraße 7 / 85088 Vohburg / http://www.b1-systems.de GF: Ralph Dehner / Unternehmenssitz: Vohburg / AG: Ingolstadt,HRB 3537 From lang at b1-systems.de Mon Nov 22 20:03:07 2021 From: lang at b1-systems.de (Ralf Lang) Date: Mon, 22 Nov 2021 21:03:07 +0100 Subject: [dev] Proposal: Deprecate horde/thrift, re-think horde/scribe Message-ID: Hello, I looked into the Horde/Thrift and Horde/Scribe packages as both are in the dependency chain for horde/log (and almost nothing else). I propose to: - Deprecate horde/thrift for H6 It is a pear packaging and autoloading hack around a very outdated version of the apache thrift client. As of composer, we can simply depend on a more recent version of apache/thrift and be done with it. - Update or deprecate horde/scribe Either: - Move the ScribeHandler from horde/log to the scribe package - Make it depend on a recent version of apache/thrift natively - Modernize our scribe client implementation or - drop Scribe support from horde Facebook Scribe is no longer available as a maintained open source software. I do not know if there was or is a sufficiently interesting use case behind that integration. Facebook themselves have moved from "real" php to hack For cloud-native logging options, I would rather look into logstash or fluentd integration. -- Ralf Lang Linux Consultant / Developer Tel.: +49-170-6381563 Mail: lang at b1-systems.de B1 Systems GmbH Osterfeldstraße 7 / 85088 Vohburg / http://www.b1-systems.de GF: Ralph Dehner / Unternehmenssitz: Vohburg / AG: Ingolstadt,HRB 3537