Watching the daily results of our private leaderboard I did some observations:

  • the number of registered participants has grown since start from 68 to 93, 82 no surprise with the published code
  • actually, only 33 participants have collected  points and stars
  • I downloaded the actual ranking as JSON file into a local table 
  • I could identify only 17  22 names from DC that I flagged DC for our ranking
  • if I missed you pls. let me know your identity in AoC by DC mail  to add your DC flag

Date:  2021-12-27 08:53:47 UTC

Rank    DC      stars   score   name
1       1       50      4087    Kevin An
2       1       50      4026    Yuval Golan
3       1       50      4056    rcemper     disqualified by using Embedded Python
4       1       50      3798    ISC Jacques HUSER
------------------------------------------------ all completed
5       1       41      2901    Bert Sarens
6       1       36      2825    Oliver Wilms
7       1       36      2689    dspools
8       1       36      2683    Ivo ver eecke
9       1       28      2060    Tim Leavitt
10      1       22      1775    Fabian
11      1       17      1273    rhodery
12      1       18      1265    Shamus Clifford
13      1       18      1230    CrashAvery
14      1       16      1149    TylerFeldhege
15      1       15      1147    Sergei Shutov (Banksia Global)
16      1       11      764     José Roberto Pereira Junior
17      1       9       599     jackpto
18      1       6       386     NjekTt
19      1       5       307     Stuart Byrne
20      1       4       267     goran7t
21      1       2       148     David Hockenbroch
22      1       2       116     Evgeny Shvarov
------------------------------------------------ DC members
23              50      4145    Steven Reiz
24              32      2584    Navæéd Ålæm
25              28      2271    Carter Bourette
26              11      804     jonasvandervennet
27              11      768     @leeto
28              8       548     Paul Langelaan
29              6       416     alex2008alex
30              1       57      maxisimo

Instead of a daily reply, I plan just to update this reply once a day

Sure!  very condensed

  • set cls=##class(%Dictionary.ClassDefinition).%OpenId("<pkg>.<classname>")
  • set met=cls.Methods.GetAt(1)  ; may need some search
  • set imp=met.Implementation   ; a GlobalChar.Stream
  • write imp,OutputToDevice()

or you jump to the Method directly

  • set met=##class(%Dictionary.MethodDefinition).%OpenId("<pkg>.<classname>||<methodname>")

And these classes have tons of params to set or clear by specific methods

I'm not so convinced that such a converter never existed.
Probably in past  ~20yrs+ back when the improved readable syntax
came in place at the beginning of the millennium.
And taking this time gap the engineers of such tools are
most likely not available anymore in whatever sense. 

Otherwise it is still working and used in system routines like
%R.int, %RI.int, %RIMF.int, %RO.int, %ROMFOLD.int, %ROU.int, %RSET.int, ....

You expect something rather impossible.
every temporary SQL query result, every Temp.Stream all PPG (^||glob  ) reside in CACHETEMP for all Namespaces and every process.
What you ask for would require ALL simultaneously running processes to remove their related contents.

I fact this means not just stopping all processes but forcing them to terminate.
in other words to shut down Caché   BTW. it's the same for IRIS.
 

what I understand from your description:

  • you have an input file with records (rows) with delimited fields (columns)
  • you expect to see this file as a table (like in Excel)
  • you expect to sort your rows by various columns
  • you expect to include/exclude rows by various criteria

This is all standard  SQL and fully included IRIS  (MUMPS was almost stone-age) 
The only question left is your input format as Excel has a proprietary format,
but reads many others as well (CSV, HTML, XML, ..??)
 

suggestion

ClassMethod Login(ByRef streamReturn As %GlobalBinaryStream, user As %String, pass As %String) As %Status [ ProcedureBlock = 1 ]
{
 set streamReturn=##class(%GlobalBinaryStream).%New()
 set cswReturn={}
 set cswReturn.success=1
 ;
 set format=##class(%JSON.Formatter).%New()
 set format.Indent=0
 set format.LineTerminator=""
 set sc=format.FormatToStreamFromObject(cswReturn,.streamReturn)  
 quit sc
}

I have to add a few personal remarks.

This issue of the monthly reviews is exceptional as there is no package rated below 5*
In that sense, you may feel it be a Christmas edition.  And that's true for me.
It points out that the quality of contributions has significantly improved.
And as I try every package myself  I find problems and sometimes solutions too,
that I post as Pull Request on GitHub.
Pls understand, if I place Pull Request it is meant as help, suggestion but never as critics.

Some of you have already consumed this support as a kind of field testing.
And I offer it again to you to improve the quality of your package also before publishing.
My resources at home are of course limited and connections to external systems are not available.
I don't have medical devices or a machine park at home.

In addition, I'd like to thank you for your trust and your examples.
And over time I learned a lot about Docker configurations and various tricks to run them.
And there are areas where I just have no expertise. I skip these subjects.

Finally.
You are an exceptional society and I enjoy again and again to work with you

this is the method description  it seems that you should your call parameters differently

method ExecuteProcedure(ByRef pResultSnapshots As %ListOfObjects,
        Output pOutputParms As %ListOfDataTypes,
        pQueryStatement As %String,
        pIO As %String,
        pInputParms...)
 as %Status [ Language = objectscript ]

The pOutputParms list returns the output values of all scalar output and input/output parameters.
This would result in this order

SET tSC = ..Adapter.ExecuteProcedure( , .outparmSQLQuery2 , "io*"pRequest.StringValue )

>> 1st par  - skipped
>> 2nd par = output byRef
>> 3rd par = SqlQuery
>> 4th par = io
>>par 5 ... query input parameters
 

This explains the log