The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 4,227 other subscribers

Archive for October 25th, 2018

Some Delphi versions miss some of the Indy files

Posted by jpluimers on 2018/10/25

Depending on your Delphi versions, you will likely miss Indy files:

The gap between XE and XE8 is not covered, but these versions miss a lot of files too.

The cause is that Embarcadero uses their own version control system, which is merged down and up to the Indy Subversion repository at irregular and incomplete intervals likely lacking a process checking if the merge results are OK.

Related:

You can get the missing files from GitHub – graemeg/indy.

This is the delta from Delphi 2010 to XE:

...\Indy10\Core\de\IdDsnCoreResourceStrings.pas
...\Indy10\Core\de\IdResourceStringsCore.pas
...\Indy10\Core\fr\IdDsnCoreResourceStrings.pas
...\Indy10\Core\fr\IdResourceStringsCore.pas
...\Indy10\Core\ja\IdDsnCoreResourceStrings.pas
...\Indy10\Core\ja\IdResourceStringsCore.pas
...\Indy10\Core\dclindycore.res
...\Indy10\Core\IdAboutVCL.rc
...\Indy10\Core\indycore.res
...\Indy10\Protocols\de\IdDsnResourceStrings.pas
...\Indy10\Protocols\de\IdHTTPWebBrokerBridge.pas
...\Indy10\Protocols\de\IdMessageBuilder.pas
...\Indy10\Protocols\de\IdResourceStringsProtocols.pas
...\Indy10\Protocols\de\IdZLibConst.pas
...\Indy10\Protocols\fr\IdDsnResourceStrings.pas
...\Indy10\Protocols\fr\IdHTTPWebBrokerBridge.pas
...\Indy10\Protocols\fr\IdMessageBuilder.pas
...\Indy10\Protocols\fr\IdResourceStringsProtocols.pas
...\Indy10\Protocols\fr\IdZLibConst.pas
...\Indy10\Protocols\ja\IdDsnResourceStrings.pas
...\Indy10\Protocols\ja\IdHTTPWebBrokerBridge.pas
...\Indy10\Protocols\ja\IdMessageBuilder.pas
...\Indy10\Protocols\ja\IdResourceStringsProtocols.pas
...\Indy10\Protocols\ja\IdZLibConst.pas
...\Indy10\Protocols\dclindyprotocols.res
...\Indy10\Protocols\IdAllAuthentications.pas
...\Indy10\Protocols\IdAllHeaderCoders.pas
...\Indy10\Protocols\IdAuthenticationSSPI.pas
...\Indy10\Protocols\IdBlockCipherIntercept.pas
...\Indy10\Protocols\IdCompressorZLib.pas
...\Indy10\Protocols\IdFIPS.pas
...\Indy10\Protocols\IdFTPListParseIEFTPGateway.pas
...\Indy10\Protocols\IdFTPListParsePCNFSD.pas
...\Indy10\Protocols\IdFTPListParsePCTCP.pas
...\Indy10\Protocols\IdFTPListParseSuperTCP.pas
...\Indy10\Protocols\IdFTPListParseTandemGuardian.pas
...\Indy10\Protocols\IdFTPListParseUnisysClearPath.pas
...\Indy10\Protocols\IdHashSHA.pas
...\Indy10\Protocols\IdHeaderCoder2022JP.pas
...\Indy10\Protocols\IdHeaderCoderBase.pas
...\Indy10\Protocols\IdHeaderCoderPlain.pas
...\Indy10\Protocols\IdHMAC.pas
...\Indy10\Protocols\IdHMACMD5.pas
...\Indy10\Protocols\IdHMACSHA1.pas
...\Indy10\Protocols\IdHTTPWebBrokerBridge.pas
...\Indy10\Protocols\IdMessageBuilder.pas
...\Indy10\Protocols\IdSASL_CRAM_SHA1.pas
...\Indy10\Protocols\IdSASL_CRAMBase.pas
...\Indy10\Protocols\IdSASLDigest.pas
...\Indy10\Protocols\IdSSLOpenSSLUtils.pas
...\Indy10\Protocols\IdSSPI.pas
...\Indy10\Protocols\IdUriUtils.pas
...\Indy10\Protocols\IdWebDAV.pas
...\Indy10\Protocols\IdZLib.pas
...\Indy10\Protocols\IdZLibConst.pas
...\Indy10\Protocols\IdZLibHeaders.pas
...\Indy10\Protocols\indyprotocols.res
...\Indy10\System\de\IdResourceStrings.pas
...\Indy10\System\fr\IdResourceStrings.pas
...\Indy10\System\ja\IdResourceStrings.pas

This is the delta from XE to XE2 (i.e. missing as of Delphi XE2) the same sources added to XE have been gone on XE2:

...\Indy10\Core\de\IdDsnCoreResourceStrings.pas
...\Indy10\Core\de\IdResourceStringsCore.pas
...\Indy10\Core\fr\IdDsnCoreResourceStrings.pas
...\Indy10\Core\fr\IdResourceStringsCore.pas
...\Indy10\Core\ja\IdDsnCoreResourceStrings.pas
...\Indy10\Core\ja\IdResourceStringsCore.pas
...\Indy10\Core\dclIndyCore.dpk
...\Indy10\Core\dclindycore.res
...\Indy10\Core\IdAboutVCL.pas
...\Indy10\Core\IdAboutVCL.rc
...\Indy10\Core\IdAntiFreeze.pas
...\Indy10\Core\IdCoreDsnRegister.pas
...\Indy10\Core\IdCoreRegisterCool.dcr
...\Indy10\Core\IdCoreSelectionEditors.pas
...\Indy10\Core\IdDsnCoreResourceStrings.pas
...\Indy10\Core\IdDsnPropEdBindingVCL.pas
...\Indy10\Core\IdRegisterCore.pas
...\Indy10\Protocols\de\IdDsnResourceStrings.pas
...\Indy10\Protocols\de\IdHTTPWebBrokerBridge.pas
...\Indy10\Protocols\de\IdMessageBuilder.pas
...\Indy10\Protocols\de\IdResourceStringsProtocols.pas
...\Indy10\Protocols\de\IdZLibConst.pas
...\Indy10\Protocols\fr\IdDsnResourceStrings.pas
...\Indy10\Protocols\fr\IdHTTPWebBrokerBridge.pas
...\Indy10\Protocols\fr\IdMessageBuilder.pas
...\Indy10\Protocols\fr\IdResourceStringsProtocols.pas
...\Indy10\Protocols\fr\IdZLibConst.pas
...\Indy10\Protocols\ja\IdDsnResourceStrings.pas
...\Indy10\Protocols\ja\IdHTTPWebBrokerBridge.pas
...\Indy10\Protocols\ja\IdMessageBuilder.pas
...\Indy10\Protocols\ja\IdResourceStringsProtocols.pas
...\Indy10\Protocols\ja\IdZLibConst.pas
...\Indy10\Protocols\dclIndyProtocols.dpk
...\Indy10\Protocols\dclindyprotocols.res
...\Indy10\Protocols\IdDsnRegister.pas
...\Indy10\Protocols\IdDsnResourceStrings.pas
...\Indy10\Protocols\IdDsnSASLListEditorFormVCL.pas
...\Indy10\Protocols\IdRegister.pas
...\Indy10\Protocols\IdRegisterCool.dcr
...\Indy10\System\de\IdResourceStrings.pas
...\Indy10\System\fr\IdResourceStrings.pas
...\Indy10\System\ja\IdResourceStrings.pas

In fact more are missing, the Delphi 2007 to 2009 delta was this:

...\Indy10\Core
...\Indy10\Core\dclIndyCore.dpk
...\Indy10\Core\dclindycore.dpkw
...\Indy10\Core\dclIndyCore.drc
...\Indy10\Core\dclindycore.res
...\Indy10\Core\IdAbout.pas
...\Indy10\Core\IdAboutDotNET.pas
...\Indy10\Core\IdAboutVCL.pas
...\Indy10\Core\IdAntiFreeze.pas
...\Indy10\Core\IdCoreDsnRegister.pas
...\Indy10\Core\IdCoreRegister.dcr
...\Indy10\Core\IdDsnBaseCmpEdt.pas
...\Indy10\Core\IdDsnCoreResourceStrings.pas
...\Indy10\Core\IdDsnPropEdBinding.pas
...\Indy10\Core\IdDsnPropEdBindingNET.pas
...\Indy10\Core\IdDsnPropEdBindingVCL.pas
...\Indy10\Core\IdRegisterCore.pas
...\Indy10\Core\indycore.dpkw
...\Indy10\Core\IndyCore.drc
...\Indy10\Protocols
...\Indy10\Protocols\dclIndyProtocols.dpk
...\Indy10\Protocols\dclindyprotocols.dpkw
...\Indy10\Protocols\dclIndyProtocols.drc
...\Indy10\Protocols\dclindyprotocols.res
...\Indy10\Protocols\IdCompressorZLibEx.pas
...\Indy10\Protocols\IdDsnRegister.pas
...\Indy10\Protocols\IdDsnResourceStrings.pas
...\Indy10\Protocols\IdDsnSASLListEditor.pas
...\Indy10\Protocols\IdDsnSASLListEditorForm.pas
...\Indy10\Protocols\IdDsnSASLListEditorFormVCL.pas
...\Indy10\Protocols\IdHashSHA1.pas
...\Indy10\Protocols\IdHL7.pas
...\Indy10\Protocols\IdMIMETypes.pas
...\Indy10\Protocols\IdRegister.dcr
...\Indy10\Protocols\IdRegister.pas
...\Indy10\Protocols\IdRegisterCool.dcr
...\Indy10\Protocols\IdSSLOpenSSLHeadersNET.pas
...\Indy10\Protocols\IdZLibEx.pas
...\Indy10\Protocols\indyprotocols.dpkw
...\Indy10\Protocols\IndyProtocols.drc
...\Indy10\System
...\Indy10\System\IdObjs.pas
...\Indy10\System\IdObjsBase.pas
...\Indy10\System\IdObjsVCL.pas
...\Indy10\System\IdStackLinux.pas
...\Indy10\System\IdSys.pas
...\Indy10\System\IdSysBase.pas
...\Indy10\System\IdSysNativeVCL.pas
...\Indy10\System\IdSysNet.pas
...\Indy10\System\IdSysVCL.pas
...\Indy10\System\IdSysVCLNet.pas
...\Indy10\System\IdSysWin32.pas
...\Indy10\System\IndySystem.drc

RS … mentiones the files missing as of Berlin, but in fact many other delphi versions miss files too.

File only in Indy SVN: 'Core\IdAbout.pas'
File only in Indy SVN: 'Core\IdAboutDotNET.pas'
File only in Indy SVN: 'Core\IdAboutVCL.pas'
File only in Indy SVN: 'Core\IdAntiFreeze.pas'
File only in Indy SVN: 'Core\IdCoreDsnRegister.pas'
File only in Indy SVN: 'Core\IdDsnBaseCmpEdt.pas'
File only in Indy SVN: 'Core\IdDsnCoreResourceStrings.pas'
File only in Indy SVN: 'Core\IdDsnPropEdBinding.pas'
File only in Indy SVN: 'Core\IdDsnPropEdBindingNET.pas'
File only in Indy SVN: 'Core\IdDsnPropEdBindingVCL.pas'
File only in Indy SVN: 'Core\IdRegisterCore.pas'
File only in Indy SVN: 'Core\indycorefpc.pas'
File only in Indy SVN: 'Design\IdDsnCoreResourceStrings.pas'
File only in Indy SVN: 'Design\IdDsnNETCompEditor.pas'
File only in Indy SVN: 'Design\IdDsnPropEdBindingNET.pas'
File only in Indy SVN: 'Protocols\IdASN1Coder.pas'
File only in Indy SVN: 'Protocols\IdCoderTNEF.pas'
File only in Indy SVN: 'Protocols\IdDsnRegister.pas'
File only in Indy SVN: 'Protocols\IdDsnResourceStrings.pas'
File only in Indy SVN: 'Protocols\IdDsnSASLListEditor.pas'
File only in Indy SVN: 'Protocols\IdDsnSASLListEditorForm.pas'
File only in Indy SVN: 'Protocols\IdDsnSASLListEditorFormNET.pas'
File only in Indy SVN: 'Protocols\IdDsnSASLListEditorFormVCL.pas'
File only in Indy SVN: 'Protocols\IdDummyUnit.pas'
File only in Indy SVN: 'Protocols\IdHashAdler32.pas'
File only in Indy SVN: 'Protocols\IdHashIntf.pas'
File only in Indy SVN: 'Protocols\IdHashSHA1.pas'
File only in Indy SVN: 'Protocols\IdHeaderCoderBig5.pas'
File only in Indy SVN: 'Protocols\IdHL7.pas'
File only in Indy SVN: 'Protocols\IdHostnameServer.pas'
File only in Indy SVN: 'Protocols\IdLDAPV3.pas'
File only in Indy SVN: 'Protocols\IdLDAPV3Coder.pas'
File only in Indy SVN: 'Protocols\IdMIMETypes.pas'
File only in Indy SVN: 'Protocols\IdNTLMv2.pas'
File only in Indy SVN: 'Protocols\IdPOP4Server.pas'
File only in Indy SVN: 'Protocols\IdRegister.pas'
File only in Indy SVN: 'Protocols\IdResourceStringsSSLDotNet.pas'
File only in Indy SVN: 'Protocols\IdSASL_NTLM.pas'
File only in Indy SVN: 'Protocols\IdServerIOHandlerSSLOpenSSL.pas'
File only in Indy SVN: 'Protocols\IdSSH.pas'
File only in Indy SVN: 'Protocols\IdSSLDotNET.pas'
File only in Indy SVN: 'Protocols\IdTunnelCommon.pas'
File only in Indy SVN: 'Protocols\IdTunnelMaster.pas'
File only in Indy SVN: 'Protocols\IdTunnelSlave.pas'
File only in Indy SVN: 'Protocols\IdUserAccountsOTP.pas'
File only in Indy SVN: 'Protocols\indyprotocolsfpc.pas'
File only in Indy SVN: 'Protocols\ZLib\ZLib.pas'
File only in Indy SVN: 'Protocols\ZLib\ZLibConst.pas'
File only in Indy SVN: 'System\IdAssemblyInfo.pas'
File only in Indy SVN: 'System\IdIconv.pas'
File only in Indy SVN: 'System\IdResourceStringsDotNet11.pas'
File only in Indy SVN: 'System\IdResourceStringsIconv.pas'
File only in Indy SVN: 'System\IdResourceStringsKylixCompat.pas'
File only in Indy SVN: 'System\IdResourceStringsTextEncoding.pas'
File only in Indy SVN: 'System\IdStackDotNet.pas'
File only in Indy SVN: 'System\IdStackLibc.pas'
File only in Indy SVN: 'System\IdStackLinux.pas'
File only in Indy SVN: 'System\IdStackUnix.pas'
File only in Indy SVN: 'System\IdStreamNET.pas'
File only in Indy SVN: 'System\IdTransactedFileStream.pas'
File only in Indy SVN: 'System\indysystemfpc.pas'aa

–jeroen

Posted in Delphi, Development, Software Development | Leave a Comment »

Ralph Johnson: 22 years of design patterns – YouTube video of lecture

Posted by jpluimers on 2018/10/25

via [WayBack] Ralph Johnson: 22 years of design patterns. I thought you might find this interestinghttps://youtu.be/jhPLFLcxslM – Agustin Ortu – Google+ the below video.

Ralph Johnson is one of the Gang of Four: the authors of the famous Design Patterns: Elements of Reusable Object-Oriented Software book published October 21, 1994 and copyrighted 1995.

Google translated lecture announcement, slightly edited:

Ralph Johnson is world renowned for his high impact contributions to Software Engineering, particularly Object Orientation. His book “Design Patterns” has been best-selling in the history of computing (more than 500,000 copies sold in English and in translations into 13 languages). From his research group also emerged the first works on frameworks, patterns and refactoring. His students also created the first refactoring tool, the Smalltalk Refactoring Browser, on whose architecture all the refactoring tools of today are based.

His talk, “Twenty Years of Design Patterns,” will talk about the evolution of software patterns since its inception in 1994. Some have become common, and others have not. Some patterns have changed. Ralph Johnson will talk about several of the patterns that are more widely known, with a renewed understanding of what the book “Design Patterns” should have said.

Ralph moved from the Department of Computer Science at the University of Illinois to COO of Metaficient and many of his history is only at the WayBack machine, so here are some links to it:

  • Ralph Johnson: The Refactory is dedicated to helping organizations succeed with objects and design patterns. Principals include Ralph Johnson, an original member of the Gang of Four patterns.
  • Former Ralph E. Johnson homepage at the University of Illinois
  • Metaficient Management Team
  • 2016: 25 years of OOP Konferenz 2016 – Ralph Johnson
  • Ralph Johnson on Parallel Programming Patterns: Ralph Johnson, one of the four GoF authors, talks about the upcoming book “The Patterns for Parallel Programming”. He highlights the difficulties in dealing with discovering and writing down parallel programming patterns, how to choose and use such a pattern, and similarities with the initial Design Patterns book.
  • A Pattern Language for Parallel Programming: Ralph Johnson presents a pattern language that he and his colleagues are working on in an attempt to solve the hard issues of parallel programming through a set of design patterns: Structural Patterns, Computational Patterns, Parallel Algorithm Strategy Patterns, Implementation Strategy Patterns, and Concurrent Execution Patterns.

–jeroen

Read the rest of this entry »

Posted in Design Patterns, Development, Software Development | Leave a Comment »

Why I wish QC had been archived in full…

Posted by jpluimers on 2018/10/25

A quick search later and it seems I’m bumping into [WayBack] http://qc.embarcadero.com/wc/qcmain.aspx?d=125403 (the version I’m bugfixing is built using XE6).

The workaround listed (in my case blanking indexfieldnames in OnBeforeClose) works.

Now… imagine if this had been filed to QualityPortal instead.

I would have had to remember to search it, and maybe wouldn’t have found it as Google does fuzzy searches very well.

And due to the lower visibility it likely would have fewer comments as well…

So yeah EMB/Idera, please revisit the choice of walling up QualityPortal.

Source: [WayBack] So I just hit a weird issue in our program. A quick search later and it seems I’m bumping into this http://qc.embarcadero.com/wc/qcmain.aspx?d=125403… imagine if it had been in QualityPortal… – Asbjørn Heid – Google+

–jeroen

 

Posted in Delphi, Development, QC, Software Development | Leave a Comment »

 
%d bloggers like this: