)]}'
{
  "log": [
    {
      "commit": "f7e7c35639f4cd0042f3f4507d3dd10dcf81a9f0",
      "tree": "10957600538a757d398ca0bbc73e3f3d9d72cf8c",
      "parents": [
        "21fcd5f746b400213f56035a2a424ea2feff9f31"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Sep 06 13:40:00 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Sep 06 13:40:00 2026 +0200"
      },
      "message": "Bring the Readme up to date\n\nThe dependency was still given as libcollocatordb 1.5.0, while Makefile.PL\nhas refused to build against anything below 1.8.0 since the Log-Dice\ncorrection. Anybody following the Readme got a build error instead of an\nexplanation.\n\nThe link into the source for the undocumented result components pointed at\ntemplates/index.html.ep#684, which is the t-SNE iteration loop; the table\nheads that carry them are around #938.\n\nThe image slimming section still described a single slim(toolkit) command\nproducing an image called ids-kl/derekovecs.slim. The tool is mint now, and\none command cannot do it: mint keeps what the running server touches, so it\nneeds a model to probe, which is why the example models stay in the first\nimage and Dockerfile.remove-example-data takes them out again afterwards.\nThe three steps are the ones the CI runs, with the sizes they produce.\n\nThe result of / was undocumented, unlike the one of getClassicCollocators,\nso the fields of the syntagmatic entries had nowhere to be explained -\nincluding max(z), which is the reason for looking at them at all. The\nexample is a real answer for \"Grund\".\n\nAlso: vector expressions in the opening paragraph, cutoff and threshold in\nthe getPosWiseW2VCollocators parameters, and the copyright year.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ide30904629510337bc620a4d3817a72cea0bce41\n"
    },
    {
      "commit": "21fcd5f746b400213f56035a2a424ea2feff9f31",
      "tree": "6ae8016583eaa565276b0a912e7ea6c01831e73c",
      "parents": [
        "565274ef29a94438e63dffac72ac74c24a534c40"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Sep 06 13:17:29 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Sep 06 13:17:29 2026 +0200"
      },
      "message": "Show the predictive score before the sigmoid\n\nmax(a) is sigmoid(z), and sigmoid is monotone, so it ranks the collocates\nthe way the raw score z does - but only in principle. It is read out of\nexpTable, whose index is (z + MAX_EXP) * (EXP_TABLE_SIZE / MAX_EXP / 2),\ninteger arithmetic that comes to 83: z is bucketed at 1/83 and everything\nfrom MAX_EXP up lands in one value, 0.99741. Of the 1000 rows for\n\"König - Mann + Frau\" only 264 have a distinct max(a), up to fifteen share\none, and Gemahlin, römisch-deutsche, ungekrönte and Co-Fürsten sit\ntogether on the cap.\n\nz was computed for every candidate at every window position and dropped at\nthat lookup, which is what the unused max_f and maxmax_f in\ngetCollocators once tracked. It is carried through now, per position in\ncollocator.raw and as the maximum over positions in collocator.max_raw,\nand shown next to max(a) as max(z).\n\nNothing else changes: the threshold, the ordering inside a position\u0027s list\nand the auto focus all still work on the activation. The column renders\nthree decimals but sorts on the unrounded value.\n\nThe info page entry says that the arithmetic covers the paradigmatic and\nthe predictive syntagmatic analysis, and about the latter that it used to\nconsider only the first word form and has gained the max(z) column. The\nsaturation change needs no notice of its own: of ten frequent single words\nthe highest max(z) is 5.981, so none reaches the cap of 6 and only\nexpressions get past it.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: If26bd78b36e247a4250b63059114470c473fb6c5\n"
    },
    {
      "commit": "565274ef29a94438e63dffac72ac74c24a534c40",
      "tree": "bab44688a0ecfbc487dc94cf7e3f85d65604e5fa",
      "parents": [
        "5b8aaf7556e4c5f677d51601c3f1c15e90557516"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Sep 06 13:17:17 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Sep 06 13:17:17 2026 +0200"
      },
      "message": "Search the embedding space with vector expressions\n\n\"König - Mann + Frau\" now looks for the neighbours of\nvec(König) - vec(Mann) + vec(Frau) instead of the neighbours of a single\nword. A \u0027+\u0027 or \u0027-\u0027 is an operator only at the beginning of a token, so\nhyphenated words like \"Nord-Süd-Dialog\" stay searchable, and blank\nseparated words keep entering the query with a \u0027+\u0027, as before.\n\n_get_neighbours() already had the branch for it, but nothing ever filled\nwl-\u003esep: the wordlist came from malloc() and the signs were read out of\nuninitialised memory, so a multi word query subtracted operands at\nrandom. It is filled now, and its indexing corrected - sep[b] is the sign\nof operand b, not sep[b-1].\n\nThe predictive collocators answer for the whole query as well.\ngetCollocators() read the input weights of wl-\u003ewordi[0], the first\noperand, and nothing said so: \"Haus Auto\" answered with the collocators\nof Haus, \"Auto Haus\" with those of Auto. The score of a candidate is\nsigmoid(q . syn1neg[collocate, position]), linear in q before the\nsigmoid, so q can be the signed combination the paradigmatic side\nsearches around rather than the vector of one word.\n\nThe terms are averaged rather than summed. The sigmoid is informative\nover a narrow range only - the strongest collocates of a single word\nreach 0.994 to 0.997 on dereko-2026-ii, against the 0.9975 that MAX_EXP\nallows - so a plain sum would push them into saturation. Dividing by the\nnumber of terms keeps every query in the range MIN_RESP and the auto\nfocus are calibrated for, and leaves one word exactly as it was, divisor\none. A balanced analogy is one term as well, +1 -1 +1.\n\nThose tails now saturate instead of being dropped. Activations outside\n±MAX_EXP used to skip the collocate entirely, removing the strongest ones\nfrom the list and from the position and target sums.\n\nThe count based collocators cannot follow: they are looked up per node in\nthe co-occurrence database. They used to be fetched for the first\nparadigmatic neighbour, i.e. for the word nearest to the query vector,\nwhich for an expression is not what was asked for. The interface says so\nin place of that table now, and get_neighbours() reports the number of\noperands so it can tell the two cases apart.\n\nOperands outside the vocabulary are named above the result instead of\nbeing dropped in silence. The vocabulary lookup only recognised a miss at\nthe very end of the vocabulary, so in a merged model a missing word\nresolved to whatever sits at the boundary between the two vocabularies;\nit returns -1 in both halves now.\n\nTwo more things the tokeniser uncovered. The best array was sized for\n10 * max(N, 200) entries but sorted over N * para_threads, which fits\nonly as long as the syntagmatic threads take half of them - it is sized\nfor num_threads slices now. And its unfilled slots kept wordi \u003d\u003d 0 from\nthe memset, which the result loop emitted as vocab[-1 * max_w] once a\nthread found fewer candidates than were asked for; slots start at -1 and\nthe loop stops there.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ia91727eb669d73fc055adf652500464b8a743795\n"
    },
    {
      "commit": "5b8aaf7556e4c5f677d51601c3f1c15e90557516",
      "tree": "5f0af7ab733f9d250efe610938078a4bda8d6ea3",
      "parents": [
        "f5abdcd3a5ad1e1ca9361fa1989d2f7cc9430c57"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 19:21:22 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 19:21:22 2026 +0200"
      },
      "message": "Info tab: show the changes, age out old downtimes, link GitHub\n\nThree things in the info tab.\n\nThe note about the changed scores sat inside the downtime list, where\nnobody could read it: insertCalendarEvents() calls replaceChildren() on\nthat list and fills it from the iCal feed, so any static content there is\nonly a placeholder until the calendar loads. It is now a section of its\nown, above the downtimes, and the thanks to Tim Feldmüller is dropped\nfrom it again - he belongs in the Readme and the changelog, not in a\nnotice to users.\n\nDowntimes older than a week are no longer listed. The maxAgeDays\nparameter of insertCalendarEvents() defaulted to 100, which kept\nmaintenance windows from months ago on the page.\n\nThe dd elements of that list had no indent of their own and fell back to\nthe browser default of 40px, which is inside the 21ex that the floated dt\noccupies, so their text wrapped around the float instead of starting\nafter it.\n\nThe source code links point to the published GitHub repositories now,\nand collocatordb is listed alongside dereko2vec. derekovecs itself has no\nGitHub repository yet, so its link still goes to gitiles.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I178cad2586db0ef07f6e76671c3c35e050b1bf60\n"
    },
    {
      "commit": "f5abdcd3a5ad1e1ca9361fa1989d2f7cc9430c57",
      "tree": "d426d60afa9a64765eb219eec672fdda2873e9a0",
      "parents": [
        "92507656d27d6413f59c0d784a117f907ec2d7eb"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 18:44:21 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 18:44:21 2026 +0200"
      },
      "message": "Use tabular figures for the numbers in the result tables\n\nThe scores are compared column by column, which only works when the\ndigits line up. Fira Sans and Fira Sans Condensed set their digits\nproportionally by default, where the widths differ by almost a third,\nfrom 433 to 558 units for Fira Sans, so the columns came out ragged.\n\nBoth fonts carry tabular figures in their tnum feature, also in the\nsubsets Google Fonts serves, so no other font is needed:\nfont-variant-numeric: tabular-nums is enough, with font-feature-settings\nas the fallback for browsers that do not know it.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I13ddaa2a2d5ea7282fc53112441249f83f3bc18f\n"
    },
    {
      "commit": "92507656d27d6413f59c0d784a117f907ec2d7eb",
      "tree": "96b74854526fb9f3e90992b22d279d2b0fa1e5ea",
      "parents": [
        "67ea2ad2b0313bb80c6a8d57061fb1ed68e2bbdb"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 17:59:18 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 17:59:18 2026 +0200"
      },
      "message": "Correct the log-likelihood scaling and fix the German announcement\n\ncollocatordb 1.8.0 scales the log-likelihood contingency table with the\nwindow size as a whole rather than in its row total alone, so LL values\nchange here too. MI, MI², MI³ and nPMI do not, as they only need the\nexpected co-occurrence frequency, which is the same either way. Thanks\nto Tim Feldmüller for spotting the inconsistency.\n\nThe German announcement still described LDaf as Log-Dice of the auto\nfocus window, and thus as at most as high as LD. That was true only for\nthe intermediate state that has since been reverted; the English text\nhad been corrected, the German one had not, because the replacement that\nwas supposed to update it silently matched nothing. Both are now\nrewritten from the same wording.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I42174ac2500f8e1bc3e54739310736526a1d5d47\n"
    },
    {
      "commit": "67ea2ad2b0313bb80c6a8d57061fb1ed68e2bbdb",
      "tree": "292d68b01c3763843018b7edbd69a51c37c1a239",
      "parents": [
        "1e00eb8162313000137aad16fb6cda794ea567e2"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 16:47:02 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 16:47:02 2026 +0200"
      },
      "message": "Bump the version to 0.99 and require collocatordb 1.8.0\n\nThe explanations added for LD, LDaf and the effective window size only\nhold with collocatordb 1.8.0, where Log-Dice follows Rychly\u0027s\ndefinition. Built against an older one, the interface would show the\nprevious LD values under the new text, without anything indicating the\nmismatch, so the minimum version is raised from 1.5.0.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ib8d7ca9e69bbc065d04684da3aa1d662b253d46d\n"
    },
    {
      "commit": "1e00eb8162313000137aad16fb6cda794ea567e2",
      "tree": "855bb8610c01906b0f7d96f672d78f0d9adb9c74",
      "parents": [
        "ffd6d2a20ef47c67fe15e5494121f88f516d67ab"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 16:38:30 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 04 16:38:30 2026 +0200"
      },
      "message": "Document the corrected Log-Dice, the effective window and the auto focus\n\nThree things were left unexplained, and one of them has changed:\n\nLD is now computed as Rychly (2008) defines it, without the window size\nfactor that used to be applied to f1, so its values are higher than\nbefore, by up to log2 of the window size, and comparable to those of\nother tools. This is announced in the info tab.\n\nLDaf is unchanged, as is the resulting order of the collocates, but it is\neasily mistaken for Log-Dice of the auto focus window. It is the auto\nfocus score itself, whose denominator grows with the width of the\nselection, which is what makes it sensitive to how concentrated a pair\nis, and thus what makes it order collocates usefully enough to serve as\nthe default order. It is therefore not on the scale of LD and can be\nhigher or lower than it.\n\nLL, MI, MI², MI³ and nPMI are computed over the positions in which the\ncollocate actually occurs, not over the whole context window. Calling\nthese the attested positions, and their number the effective window size,\nkeeps them apart from the auto focus, which is Belica\u0027s term for the not\nnecessarily contiguous selection of positions that yields the highest\nscore. Both are visible in the auto-focus column, which marks the\nattested positions with a hollow and the selected ones with a filled\nsquare.\n\nExplained in the info tab in both languages, in the tooltips of the LDaf\nand auto-focus columns, and the LDaf tooltip now gives the formula.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Id6293c71438d4b42d3a461697c181e3b6a072a83\n"
    },
    {
      "commit": "ffd6d2a20ef47c67fe15e5494121f88f516d67ab",
      "tree": "c72ed28cfdcb5900071808a4b6d2266b87881557",
      "parents": [
        "c48d39095bce6758a351c510055c0771fed33908"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 12:29:32 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 12:29:32 2026 +0200"
      },
      "message": "Bump the version and fix the CI image\n\nmetacpan/metacpan-api, which the build ran in, switched to an\nunprivileged user. apt-get cannot write /var/lib/apt/lists there and\ngives up with \"Permission denied\", so cmake never got installed and the\ncollocatordb build died with \"cmake: command not found\". The image has no\nsudo either, and a job cannot ask for another user, so this needs a\ndifferent image: the official perl one runs as root and brings cpanm,\npinned to its distribution so that an upstream rebuild cannot move\nrocksdb underneath us.\n\nTwo things follow from the change. morbo comes from the local lib now\nrather than from the image, so the server test needs perl5/bin on the\nPATH, and the cache key carries the image, because perl5/ only holds what\ncpanm found missing in the image it was built in.\n\nA failed package installation is also reported where it happens now\ninstead of surfacing much later as a missing command.\n\nVerified with gitlab-ci-local: all 12 tests pass, against the rocksdb 9.10\nof trixie.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I4ed59866b57aa10e39c28390a9a9e2b7d74780e5\n"
    },
    {
      "commit": "c48d39095bce6758a351c510055c0771fed33908",
      "tree": "245dd0dd2aa3fed1725055a73ccbcc8058ec4a78",
      "parents": [
        "b3cd59f0a422e7fcdf78658d4480966f61800bd1"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 12:13:45 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 12:13:45 2026 +0200"
      },
      "message": "Stop writing a few hundred log lines per request\n\nEvery neighbourhood request printed one line per window position, one per\nvocabulary lookup, the whole JSON of a similar profile and the comings and\ngoings of the worker threads. Together with the crawler traffic that came\nto about a million lines a day on corpora.ids-mannheim.de, which is what\nfilled the log partition of the machine.\n\nThose diagnostics are behind DEREKOVECS_DEBUG now, and the per request\nnarration of the perl side, which repeated what the access log line of the\nsame request already says, is logged at debug level. What is left in the\ndefault configuration is one line per request, plus the user agent of a\nrequest that was turned away as a crawler.\n\nStartup messages, the model mapping and error messages are untouched.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I4059a1db5ba59a59da6177225c6f66ff53ddcaec\n"
    },
    {
      "commit": "b3cd59f0a422e7fcdf78658d4480966f61800bd1",
      "tree": "2a02147bf42a94cd2c6b67c1a83ae209a3f41c25",
      "parents": [
        "23993b6d7a6cfcc85238bc6ba3170cd55fa88289"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 10:47:45 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 10:47:45 2026 +0200"
      },
      "message": "Turn away the crawlers that collect training data\n\nEvery URL with parameters is a result computed for one word, there is one\nfor every word of the vocabulary, and none of it can be answered from a\ncache, so a crawler that follows them keeps the machine busy for nothing.\nThe instance on corpora.ids-mannheim.de answers about 21000 such requests\na day.\n\nRequests whose User-Agent matches a list of such crawlers now get 403 in\nbefore_dispatch, i.e. before any computation. The list can be replaced in\nthe configuration file, robots \u003d\u003e {block_user_agents \u003d\u003e \u0027...\u0027}, and an\nempty value switches the blocking off. Ordinary search engines are not on\nit.\n\nFor the crawlers that do read robots.txt, every response to a request\nwith parameters carries X-Robots-Tag: noindex, nofollow, result pages\ncarry the matching meta element, and robots.txt is served at every path -\nwhich only helps where derekovecs owns its host name, a proxy that mounts\nit below a path still has to serve the site wide one itself.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Id68487ef716459e0ea9f045060edc34edf85065e\n"
    },
    {
      "commit": "23993b6d7a6cfcc85238bc6ba3170cd55fa88289",
      "tree": "d242bdaf531603def9d355d9806526b3e2d13a12",
      "parents": [
        "3c216ba24ada5a6e9c2f9815ec35e0f09a107960"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Aug 02 09:58:00 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Aug 02 09:58:00 2026 +0200"
      },
      "message": "CI: add a github workflow that also builds on MacOS\n\nBuilds collocatordb, installs the perl dependencies and runs the tests on\nubuntu-latest and macos-latest. On MacOS with the perl of homebrew, so that the\nmodules can be installed without sudo and without running into the system\nintegrity protection.\n\nOnly test.t: server-test.t guesses the pids of the server it started and kills\nthem, which has no business on a machine it does not own.\n\nThe .gitignore ignores everything starting with a dot, so .github needs an\nexception like .gitlab-ci.yml and .dockerignore have.\n\nVerified on Linux by running the steps of the job as they are, which is how the\nmissing make install was found - the tests load the module from the perl\nlibrary path, not from the build directory. The MacOS job has not run yet, that\nis what it is for.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I9f70f080366f64053663bc4c9a36087aba2f9e4e\n"
    },
    {
      "commit": "3c216ba24ada5a6e9c2f9815ec35e0f09a107960",
      "tree": "fc3bec46802d512aae13cc87c3a6a400729bc77c",
      "parents": [
        "c5856d95c7d0eb18c65abb2940dd917f0ae5cf51"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 12:09:01 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 12:09:01 2026 +0900"
      },
      "message": "Bump version to 0.96\n\nAlso moves the changelog entry about the Session::Token build fix, which was\nfiled under 0.95 but only landed after that tag.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I7e4329f4e7c5ea738baeea4e6a1747e816b551cb\n"
    },
    {
      "commit": "c5856d95c7d0eb18c65abb2940dd917f0ae5cf51",
      "tree": "df981cda1916a3678df1f03853bf7ce96c7c03ee",
      "parents": [
        "211fff4f5f9622419eadf2713d47b3ca8160acc1"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 11:53:43 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 11:53:43 2026 +0900"
      },
      "message": "Docker: let the image run as any user\n\nThe image only started as root: Inline aborts with \"Couldn\u0027t find an\nappropriate DIRECTORY for Inline to use\" when /derekovecs/_Inline is not\nwritable, and there is no compiler left in the image to build the XS part\nsomewhere else.\n\nThat rules out deployments whose models come from an NFS export with\nroot_squash, where the container has to run as the owning user. Making the\nInline cache writable for everybody is enough, the code directory stays\nuntouched. Verified with --user: the image serves neighbours and count based\ncollocators with the models mounted read only.\n\nThe hypnotoad pid file is written relative to the working directory, so such a\ndeployment should set pid_file to an absolute path outside of it.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I28a91d65f208250d3adb4b4a923198c37211f81b\n"
    },
    {
      "commit": "211fff4f5f9622419eadf2713d47b3ca8160acc1",
      "tree": "213185958a06d46c98b202816beb9ec28a917855",
      "parents": [
        "606a90995f826685fc3fdc6af9cafc9e59abcf8a"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 10:31:10 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 10:31:10 2026 +0900"
      },
      "message": "CI: modernize the docker slimming\n\nFollows what Kalamar does. slimtoolkit became mintoolkit, and the invocation\nhad to change anyway: the tool has no --in-container option anymore, so the\njob would have stopped at an unknown flag. The download of the slim binary\ngoes away with it, it was never used, the containerized tool was called\ninstead.\n\nFF_NETWORK_PER_BUILD and the dns option of the dind service let the mint\ncontainer reach the container it probes, as in Kalamar.\n\nThe probe waited 10 seconds for the server, which is not enough: the image\ncompiles its Inline C at startup and then loads the model, and only answers\nafter 21 seconds, measured with the image of this commit. It waits 60 now.\n\nThe image tarball carries the version in its name, as in Kalamar, and\nupload-docker was adapted accordingly. It only runs for v tags now and has to\nbe started by hand. Before it also ran for every master commit, where\nCI_COMMIT_TAG is empty and it would have pushed a tag-less image.\n\nThe .dockerignore did not catch .gitlab-ci-local, it was written with a dot\ninstead of a hyphen. Everybody who runs gitlab-ci-local and then builds the\nimage locally packed the whole CI scratch directory into it, 549 MB in my\ncase, including job logs, which contain the CI variables. Release tarballs are\nignored now, too. This does not affect images built in CI, whose checkout is\nclean.\n\nVerified locally by running the whole chain: the large image builds, mint\nminifies it from 1.3 GB to 905 MB with the http probe answering 200, and the\nimage from Dockerfile.remove-example-data serves neighbours, collocators and\ngetVecsByRanks correctly with the compilers removed.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I0014c8d2e4f4cee667b0d1c5016f037c9aa44743\n"
    },
    {
      "commit": "606a90995f826685fc3fdc6af9cafc9e59abcf8a",
      "tree": "a5457c24bd54ee474a24660c0da8e5dec78f0d8b",
      "parents": [
        "e20daf1615a1cd4838f00ffacf45741e93e9477e"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 10:09:07 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 10:09:07 2026 +0900"
      },
      "message": "Docker: build Session::Token with C17\n\nThe image build failed at the dependency installation. Session::Token declares\nthe functions of its bundled isaac implementation without prototypes, which is\nan error since alpine moved to a gcc that defaults to C23:\n\n  Token.xs:31:7: error: too many arguments to function \u0027isaac\u0027; expected 0, have 1\n\nIt comes in through Mojolicious::Plugin::Util::RandomString, so nothing works\nwithout it. Only this one distribution is built with C17, everything else keeps\nthe defaults. CI is not affected, its gcc still defaults to C17.\n\nThe image builds again and serves the example model: paradigmatic and\nsyntagmatic neighbours, count based collocators and getVecsByRanks all return\nthe expected results.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I16b894aba70f179272bb411bacdde9dcee8aa194\n"
    },
    {
      "commit": "e20daf1615a1cd4838f00ffacf45741e93e9477e",
      "tree": "0744f908550d2338bd542b2676dbebf6abdb76fc",
      "parents": [
        "0fc9927f75fd95e5acaa0adb0ef470fcf15207ea"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 09:55:55 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 09:55:55 2026 +0900"
      },
      "message": "Bundle Devel::CheckLib in inc/\n\nMakefile.PL uses Devel::CheckLib to look for libcollocatordb, and cpanm runs\nMakefile.PL to find out about the dependencies, so it has to be there before\nanything else can be installed. That is what the \"use lib qw(inc)\" in\nMakefile.PL is for, only that inc/Devel/CheckLib.pm was never committed, so it\nexisted on developer machines but in no clean checkout.\n\nVersion 1.16 as required by Makefile.PL, distributed under the same terms as\nperl itself, with the package statement split the way Devel::CheckLib\ndocuments it for bundling, so that it is not indexed.\n\nCI and the docker image do not have to install it separately anymore. Verified\nin the CI image without Devel::CheckLib installed: Makefile.PL writes its\nMakefile and cpanm --installdeps resolves the dependencies.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I321954ce2db07dbead3a5322da0dc0385ba00c91\n"
    },
    {
      "commit": "0fc9927f75fd95e5acaa0adb0ef470fcf15207ea",
      "tree": "c6dadf2efc201f03e815b45f5d897cba782b2be4",
      "parents": [
        "96972c683fa6479e63ae5e8acccefc40f129efbc"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 09:50:14 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 09:50:14 2026 +0900"
      },
      "message": "Bump version to 0.95\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ibe0fa92a56370fc4f5fff14f53bf515fb483775c\n"
    },
    {
      "commit": "96972c683fa6479e63ae5e8acccefc40f129efbc",
      "tree": "42def51890d796c008b8e3fb8a3f18af429c2064",
      "parents": [
        "cb6adf87e81b5199c9ee53cebcd9f1ec0cce2e9d"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 09:50:14 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 09:50:14 2026 +0900"
      },
      "message": "Install the rocksdb package instead of building it\n\ncollocatordb 1.5.0 builds against any recent rocksdb, so neither CI nor the\ndocker image has to build rocksdb 5.11 from source anymore. CI installs\nlibrocksdb-dev, the image rocksdb-dev.\n\nVerified with gitlab-ci-local: the job passes in 1.4 minutes instead of 5.45,\nwith librocksdb-dev 7.8.3 of the image. For the docker image, collocatordb was\nbuilt against alpine\u0027s rocksdb 11.0.4 with the package list of the Dockerfile,\nand Makefile.PL accepts the resulting library.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I24f38158ac5faed9802cf0955617de064580c016\n"
    },
    {
      "commit": "cb6adf87e81b5199c9ee53cebcd9f1ec0cce2e9d",
      "tree": "47389bf8a55c46a8e4731269bc19676466b9a75c",
      "parents": [
        "59c05367fad3782d91a9a6315870bdec6ec37bb8"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 09:30:16 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 09:30:16 2026 +0900"
      },
      "message": "Require collocatordb 1.5.0\n\n1.5.0 fixes the two leaks in the collocator lookup, which leaked 3.6 kB per\nuncached getClassicCollocators or getCollocationAssociation request, and builds\nagainst the rocksdb of the distribution.\n\nThe version check refuses anything older, verified against both: with the\ninstalled 1.3.2 Makefile.PL stops with \"Installed collocatordb version 1.3.2 is\ntoo low\", with 1.5.0 it passes.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I35ef6cf0a5fb179c5caf811c98cc5a2cde054417\n"
    },
    {
      "commit": "59c05367fad3782d91a9a6315870bdec6ec37bb8",
      "tree": "5f4ae7414a01ee4578363aa88078ff41f485bce1",
      "parents": [
        "25ab1702b0ae44fcd4b56fe4e6a7b5665d1e431a"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 07:58:10 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Jul 31 07:58:10 2026 +0900"
      },
      "message": "CI: install Devel::CheckLib before resolving the dependencies\n\ncpanm runs Makefile.PL to find out what a distribution needs, so everything\nMakefile.PL itself uses has to be installed before that. It uses\nDevel::CheckLib to look for libcollocatordb, which is not part of the CI image,\nso Makefile.PL aborted at its use statement, wrote no Makefile and cpanm gave\nup with \"Configuring /builds/ids-kl/derekovecs ... N/A\". Listing the module in\nPREREQ_PM cannot help, as those are only known after Makefile.PL has run.\n\nThis worked locally only because of an uncommitted inc/Devel/CheckLib.pm, which\nMakefile.PL picks up via \"use lib qw(inc)\".\n\nThe Dockerfile already installs Devel::CheckLib explicitly for the same reason,\nCI does it now as well. Makefile.PL declares it in CONFIGURE_REQUIRES, so that\ninstallations from a distribution tarball pull it in by themselves.\n\nVerified with gitlab-ci-local: build-and-test passes, 12 tests in 2 files.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Id1aee5f978092bf33594e081d43893f1ac78c692\n"
    },
    {
      "commit": "25ab1702b0ae44fcd4b56fe4e6a7b5665d1e431a",
      "tree": "1e984182b5a86bd9392e06233182cf6d36ff8ae7",
      "parents": [
        "f7003079456ddcb50e09772a426bd6c37167471e"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 16:19:57 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 16:19:57 2026 +0900"
      },
      "message": "CI: do not let ccache break the build\n\nThe pipeline aborted with \"ccache: command not found\" at ccache --show-stats.\nccache only makes the build faster, so nothing may depend on it being there:\nthe compiler symlinks and the cmake launcher options are only set up when it is\nactually installed, and printing the statistics can no longer fail the job.\n\nThe collocatordb build passed CMAKE_C_COMPILER_LAUNCHER, but collocatordb is\nC++, so ccache was never used for it. It sets both launchers now.\n\nAlso drops the two `env` calls, which printed all CI variables, including\nDOCKER_HUB_PASSWORD and the other secrets, into the job logs.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ib650cc7d473e837c8a47ee6f0a982d4fb335728f\n"
    },
    {
      "commit": "f7003079456ddcb50e09772a426bd6c37167471e",
      "tree": "6f233bd0d7ef84b5ab18f074c834bcf35a166da3",
      "parents": [
        "6f317a90d71d61df065c7a02edf602c857cec26a"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 15:59:52 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 15:59:52 2026 +0900"
      },
      "message": "Bump version to 0.94\n\nThe unreleased changes contain the new w2v.compare_to option and the new cache\nconfiguration section besides the fixes, so this is not just a patch release.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I5c705bc45d27d3abfce0edcad15b9b82a21353fe\n"
    },
    {
      "commit": "6f317a90d71d61df065c7a02edf602c857cec26a",
      "tree": "4b4742756cd78b51c23fb015158b1e5d0fb5e7d4",
      "parents": [
        "d6a163cbe4dbebef25202bbf71fd29b190215e60"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 15:09:54 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 15:09:54 2026 +0900"
      },
      "message": "Fix collocator lookups for merged models and guard word ranks\n\nw2v.merge was unusable: the server died at startup with \"Undefined subroutine\n\u0026main::mergeVectors\", because mergeVectors was not exported.\n\nWith that fixed, count based collocators and precomputed profiles were looked\nup with unshifted ranks. The collocator db and the profiles belong to the\nprimary model, which mergeVectors puts at [merged_end, words), so its ranks\nhave to be shifted back. The adjustment existed but was dead code, as it read\n$IDS::DeReKoVecs::Read::mergedEnd while the value was assigned to\n$main::mergedEnd. Instead of wiring a second copy of the value, the merge\noffset is now read from the C layer, which is the only place that knows it.\n\nOut of range ranks reach libcollocatordb straight from the request and crash\nthe process there, so a single GET /getClassicCollocators?w\u003d\u003cbeyond vocabulary\u003e\nwas enough to kill a worker. Ranks are validated before use now, both for the\ncollocator db and for the model matrix in getVecs, and out of range ids yield\nan empty result.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I26ef508e3682cbe00df27d4de5588d1f1493c701\n"
    },
    {
      "commit": "d6a163cbe4dbebef25202bbf71fd29b190215e60",
      "tree": "2f2d7ab689f51271152e9d379bb814bc1437be6b",
      "parents": [
        "7662ce124b3dd48e49ddc9e83e932893bc7bb550"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:48:10 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:48:10 2026 +0900"
      },
      "message": "Give every request its own window sums array\n\nThe collocator threads accumulated their per window position activation sums\nin a global array. This is not a live bug, because a worker processes requests\none after the other, but it is shared mutable state that only works by\naccident, and the array was allocated uninitialised. Every request allocates\nand zeroes its own array now, so the collocator threads of one request cannot\ninfluence another.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I9b44ff38871ae2f2729542b8d9f66e489ccc5dd9\n"
    },
    {
      "commit": "7662ce124b3dd48e49ddc9e83e932893bc7bb550",
      "tree": "f6cb00dee988bdacb8a43e927f4dddcf2755ffef",
      "parents": [
        "d19578342c63aca95e581b4fe42f1b3001d639b2"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:48:10 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:48:10 2026 +0900"
      },
      "message": "Fix getVecsByRanks, used by the collocator SOM\n\ngetVecs was never exported, so POST /derekovecs/getVecsByRanks answered every\nrequest with \"Undefined subroutine \u0026main::getVecs\" and the collocator SOM\nnever got its vectors.\n\nThe route also only existed with the /derekovecs prefix, while the frontend\nderives its base url from the current path, so it could not be reached at all\nfor instances served from the root. Added the prefix independent route like the\nother web service functions have.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I983b2a34f75892c2302861a0219e4614ffb1d4c9\n"
    },
    {
      "commit": "d19578342c63aca95e581b4fe42f1b3001d639b2",
      "tree": "f5505bec97c94da52baa4b6150bc578116172cb3",
      "parents": [
        "af436141ee83e08aeb2c8da5f1368ef51724245c"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:40:10 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:40:10 2026 +0900"
      },
      "message": "Add changelog entries for the memory leak and cache fixes\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I0514abea7aeeb19db9217a4c5b37d9370d0c2a08\n"
    },
    {
      "commit": "af436141ee83e08aeb2c8da5f1368ef51724245c",
      "tree": "3d276ce85ce0460e9f29036cbcc0c33d1c26cbcc",
      "parents": [
        "0413530655ec966e235cd862daa09bca166e4514"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:40:10 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:40:10 2026 +0900"
      },
      "message": "Limit the size of the result caches\n\nThe neighbourhood, classic collocator and similar profile caches grew by one\nentry per queried word and were never evicted, so a long running worker\neventually exhausted the machine\u0027s memory. They are size limited Mojo::Cache\ninstances now, configurable in the new cache section of the configuration\nfile.\n\nThe neighbourhood cache never hit anyway: the lookup used a comma inside the\nhash subscript, i.e. a $; joined multidimensional key, the value was read with\na second key and stored under a third one that did not include\nsearchBaseVocabFirst at all.\n\nStarting the server with -C now really bypasses the caches. It did not before,\nbecause $opt_C was read in IDS::DeReKoVecs::Read but set in main.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I17b801df54137ea81b660229bf789725de5a2b1b\n"
    },
    {
      "commit": "0413530655ec966e235cd862daa09bca166e4514",
      "tree": "b01deedb0f2892ef42cf55eaabb17549ba662d34",
      "parents": [
        "0ab973950366ba7853a894e21676b86fd6b53453"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:40:02 2026 +0900"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Jul 30 14:40:02 2026 +0900"
      },
      "message": "Fix memory leaks in the request path\n\nEvery request leaked the target sum array (cutoff * sizeof(float), i.e. 2 MB\nat the default cutoff of 500000), the thread handle array, the target word\nlist and the collocator results of all window threads. getWordNumber() leaked\na word list on every word lookup, too.\n\nOn top of that every string and array returned from C to perl leaked: for a\nchar* return value Inline::C generates sv_setpv(), which copies the buffer but\nnever frees it, and for an AV* return value it generates newRV(), which leaves\nthe array behind with a reference count of one. All functions returning data\nto perl therefore return an SV* now and release their buffers.\n\ngetClassicCollocators() and getCollocationScores() leaked twice, because\nlibcollocatordb hands out strdup()ed strings that were strdup()ed again.\n\nAlso fixes crashes in the same code paths:\n- get_neighbours() divided by zero when called with nosp\u003d1\n- getPosWiseW2VCollocators() wrote before the start of its result buffer for\n  empty results, called malloc(0) for models without a syn layer and\n  dereferenced a NULL collocator result for multi word input starting with an\n  out of dictionary word\n- getBiggestMergedDifferences() sized its buffer for 50 bytes per record,\n  which is not enough for long words\n- getSimilarProfiles() wrote to buffer[-1] for empty profiles\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Iff4215745f26156408a056de6d867753993082c2\n"
    },
    {
      "commit": "0ab973950366ba7853a894e21676b86fd6b53453",
      "tree": "a4db99b5517139b60aa57cdab20754690f814cd7",
      "parents": [
        "57cc90271fcfcb0a7938dc5379e524aca71c359f"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Dec 10 16:16:32 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Dec 10 16:18:46 2024 +0100"
      },
      "message": "Add getPosWiseW2VCollocators -\u003e json to API\n\nResolves #8\n\nChange-Id: Id1eca2896fadc59bebb2786e45fd8a6b3efdca6c\n"
    },
    {
      "commit": "57cc90271fcfcb0a7938dc5379e524aca71c359f",
      "tree": "d0f0826bc0b1e4e4f7a824ce336ee044efeacc87",
      "parents": [
        "8a99d64ceb37e3aa33fe6207e088885239ddc8a3"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Dec 10 15:33:36 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Dec 10 15:33:36 2024 +0100"
      },
      "message": "Fix missing export of getPosWiseW2VCollocatorsAsTsv\n\nChange-Id: Id4f7a98d6d35026cd81218aad1934daac306b1a7\n"
    },
    {
      "commit": "8a99d64ceb37e3aa33fe6207e088885239ddc8a3",
      "tree": "679f6b94467a94f942dcb0945eea8204f4d3b75f",
      "parents": [
        "f604691e0e126a14d2e9d6c8ddd3ef834d25fb2d"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Dec 05 09:37:19 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Dec 05 09:37:19 2024 +0100"
      },
      "message": "add example compose.yaml for running docker with example data\n\nChange-Id: I8c3b1a8107b24459ea9181df237cd6e373583d07\n"
    },
    {
      "commit": "f604691e0e126a14d2e9d6c8ddd3ef834d25fb2d",
      "tree": "fda43c12c05d13ae3f0500cf44bc3d2e0d025687",
      "parents": [
        "3eeec658a42dfa23434a21d70c7bc3005283af00"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Dec 03 17:21:57 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Dec 03 17:21:57 2024 +0100"
      },
      "message": "disable avx2 for Inline::C for more compatibility\n\nChange-Id: I6e85a0daf024b696979143e54105efe86e529728\n"
    },
    {
      "commit": "3eeec658a42dfa23434a21d70c7bc3005283af00",
      "tree": "ab53ee9e956fe5256d952177dee000ecf801a82b",
      "parents": [
        "6835bf8be40067db96f6aeb7c7d327db00ebb17a"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 18 18:30:04 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 18 20:29:05 2024 +0100"
      },
      "message": "Add w2v-\u003ecompare_to parameter and use for count-based delta calcs\n\nChange-Id: Ic53cbc5b3984659b3ebfa6c8ad30fd42850a9fc9\n"
    },
    {
      "commit": "6835bf8be40067db96f6aeb7c7d327db00ebb17a",
      "tree": "547bcefdd4683d5a8b18ad282ba5cd5797c18ea3",
      "parents": [
        "0dd6ad7cb4c4b70d8ed59839dc1512d8da113d12"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 17:26:01 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 17:26:01 2024 +0100"
      },
      "message": "docker: install Devel::CheckLib explicitly\n\nChange-Id: Idcc751e116d37cf33097f5f1f42e4ae6552e3527\n"
    },
    {
      "commit": "0dd6ad7cb4c4b70d8ed59839dc1512d8da113d12",
      "tree": "3e2985c2d3029e25ab6618ed03840d476f94b0eb",
      "parents": [
        "a6a81dcb99524efe7504326454058afcde9be2db"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:55:45 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:55:45 2024 +0100"
      },
      "message": "move Devel::CheckLib dep from test to main\n\nChange-Id: I414b7363c6827b9a6fb6d8640f9180b9426a1d8f\n"
    },
    {
      "commit": "a6a81dcb99524efe7504326454058afcde9be2db",
      "tree": "fe0cf4eaf832fcc7d22286b6e455a8b146f921db",
      "parents": [
        "b3d425d549efe5ae8b5f8aeb835c14877a99a11a"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:25:10 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:25:10 2024 +0100"
      },
      "message": "add CMakeLists.txt for CLion\n\nChange-Id: Ifb4bc61c72b5c14aeb6912fd9155bfbabbef3da7\n"
    },
    {
      "commit": "b3d425d549efe5ae8b5f8aeb835c14877a99a11a",
      "tree": "8c78a650756c8a9a5e471823c3360ff344c211a9",
      "parents": [
        "9f6a19df86491bed130d56789665ea64f10b60fe"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:23:21 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:23:21 2024 +0100"
      },
      "message": "bump version to 0.93.2\n\nChange-Id: I484288bec7ec07c8bcc5ab64d2400dd20b596078\n"
    },
    {
      "commit": "9f6a19df86491bed130d56789665ea64f10b60fe",
      "tree": "ad3e60c28dddaef69e82e788125375e17f410e26",
      "parents": [
        "e288d8e5bb61cf6d223a90761d05baf4f73acc0c"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:22:47 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:22:47 2024 +0100"
      },
      "message": "switch to collocatordb 1.3.2\n\nChange-Id: I77420c7ef3b9184fa78107c42575c3f162c1ce20\n"
    },
    {
      "commit": "e288d8e5bb61cf6d223a90761d05baf4f73acc0c",
      "tree": "21920fb9a7d763a1524b9d01bca6caff61a371dc",
      "parents": [
        "46b352816a6db0c6d521c350b63e9ebd3a664c1e"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:18:50 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Nov 15 16:18:50 2024 +0100"
      },
      "message": "add some C includes\n\nChange-Id: I692d26e909240538685c10c1b347270db7359174\n"
    },
    {
      "commit": "46b352816a6db0c6d521c350b63e9ebd3a664c1e",
      "tree": "e5e3b3122477c5bef8e0538ba2295fd81e5e9bea",
      "parents": [
        "a6a587673a1de25b0927cca5b6c73b9adcd44b35"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 19:24:52 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 19:24:52 2024 +0200"
      },
      "message": "docker-upload: push also as latest\n\nChange-Id: I4db6e8ead519104a9c162158550e6386d57ee022\n"
    },
    {
      "commit": "a6a587673a1de25b0927cca5b6c73b9adcd44b35",
      "tree": "9115e97634e5e436fb0f9b55d05279f67561cfab",
      "parents": [
        "a9923bd6995c2a7b3811356b8c0f0743a05ae3e9"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 17:02:59 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 17:35:48 2024 +0200"
      },
      "message": "Docker: actually squash slimmed image\n\nChange-Id: Ifb26d54e616ae1434feed01312172bda83a4d866\n"
    },
    {
      "commit": "a9923bd6995c2a7b3811356b8c0f0743a05ae3e9",
      "tree": "3b39933094a4c425671b95ef794745aab7eb0c47",
      "parents": [
        "e82c7a077776f0e618ba87c9b9e66a9474f1ca0d"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 14:49:45 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 17:35:48 2024 +0200"
      },
      "message": "CI: add docker upload job\n\nChange-Id: Ic1e079b04b4eebf6c67fb25074c57fd6f45be83b\n"
    },
    {
      "commit": "e82c7a077776f0e618ba87c9b9e66a9474f1ca0d",
      "tree": "5b1bba1ae0bc46baa9a791ca9c00ef88aed99ad7",
      "parents": [
        "0b02070e9a2435fd3b313e1751672002f519b4c5"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 14:49:26 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 17:35:48 2024 +0200"
      },
      "message": "Docker don\u0027t slim the workdir\n\nFixes missing tab arrow\n\nChange-Id: If9a037a1991cd7360aff941d2b4d0322b24a3cae\n"
    },
    {
      "commit": "0b02070e9a2435fd3b313e1751672002f519b4c5",
      "tree": "bc6538fd46cd6dfa3f6c6998108673a45bac3896",
      "parents": [
        "2c1fb33b279f8446671d4dcddf1db11ed445ad17"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 13:26:15 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 13:26:15 2024 +0200"
      },
      "message": "Docker slim: wait 20s before probing\n\nChange-Id: Ia2d3eb7defc5fef8c6702dd6ad2b9d2b1b4a27f9\n"
    },
    {
      "commit": "2c1fb33b279f8446671d4dcddf1db11ed445ad17",
      "tree": "1aac3f6ef41e719af3edf871cbe19e48e835e65a",
      "parents": [
        "6d70c32905d15cd0062f532b40a6bd9fe3136119"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:48:55 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:48:55 2024 +0200"
      },
      "message": "gitlab ci: always run build-and-test\n\nChange-Id: I90f84ceac4eb7703951a6860146aed3aa5db941f\n"
    },
    {
      "commit": "6d70c32905d15cd0062f532b40a6bd9fe3136119",
      "tree": "9079aec2e9d234c9cbff32fe75f211cc38e04d07",
      "parents": [
        "10ccb98294c2ab51f547ca782a5540219d75f5e5"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:41:13 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:45:46 2024 +0200"
      },
      "message": "v0.93.1\n\nChange-Id: I14013d2a56364d3fbf0160647f1eb075fe4045ea\n"
    },
    {
      "commit": "10ccb98294c2ab51f547ca782a5540219d75f5e5",
      "tree": "c6ec36c6e1a572fa73f6a296eb93bad755afa78e",
      "parents": [
        "846e149dc446bb4023854fea4f028fc89ac550f8"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Sep 12 14:15:13 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:45:46 2024 +0200"
      },
      "message": "GitLab-CI: add build-docker job with slimming\n\nChange-Id: If2b9d90d28e2637fab7aa6ea525feb446f6e05d4\n"
    },
    {
      "commit": "846e149dc446bb4023854fea4f028fc89ac550f8",
      "tree": "e747d83412a689d3cee36f531606b014d7e03f53",
      "parents": [
        "694094ae88140291d22f15dc137f906eb8ac7466"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Sep 11 19:10:31 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:45:46 2024 +0200"
      },
      "message": "Docker: switch to alpinelinux and cpm\n\nChange-Id: I78210b14a3620fcba36ee7a49f83cd5cd8acc1f3\n"
    },
    {
      "commit": "694094ae88140291d22f15dc137f906eb8ac7466",
      "tree": "db45311065e058adc1cb204a0fb1b9abc26e18a5",
      "parents": [
        "7e2d0a0e18c5b3663f59b94a95c207df699ac140"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 14:23:30 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:45:46 2024 +0200"
      },
      "message": "Bump version to 0.93 and update Changelog\n\nChange-Id: Iae331fbc9aa40dec74115187d137b4eabe88255d\n"
    },
    {
      "commit": "7e2d0a0e18c5b3663f59b94a95c207df699ac140",
      "tree": "4590bdf4ff2f478e452f7e00bafb69291a49e744",
      "parents": [
        "1c90f685b1bdd829c590a3b004f11e052eb3e6bc"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 17:08:59 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:45:46 2024 +0200"
      },
      "message": "Update slimming instructions in Readme\n\nChange-Id: I1d74e05f613a94dcfecb225199cffdef212c2cda\n"
    },
    {
      "commit": "1c90f685b1bdd829c590a3b004f11e052eb3e6bc",
      "tree": "939dbbbe8f91f42642252581bbe1fdb92f712757",
      "parents": [
        "6c39901ed3703fcd4368c8baebeff9d87a91949d"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 16:01:09 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Sep 13 12:45:46 2024 +0200"
      },
      "message": "Simplify and debloat running docker container\n\nChange-Id: I74f467694f1c6f5b75564ce546fae31b34b50d8f\n"
    },
    {
      "commit": "6c39901ed3703fcd4368c8baebeff9d87a91949d",
      "tree": "e58a47959d188f8532ef7ab6b662417d42b7e5f4",
      "parents": [
        "7effa3e91d593f43df5d62903054d4a6338cb535"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 16:12:05 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 16:12:32 2024 +0200"
      },
      "message": "Remove RocksDB log file from project files\n\nChange-Id: I4e8374c07840e148c79d6621e50b211406181e61\n"
    },
    {
      "commit": "7effa3e91d593f43df5d62903054d4a6338cb535",
      "tree": "cb7ba063e8b3ab303542ba28f192a24a749c1a22",
      "parents": [
        "014220ce5507e2518daee5fc567bbe8a367c4da1"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 16:01:09 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 16:12:32 2024 +0200"
      },
      "message": "Simplify and debloat running docker container\n\nChange-Id: I74f467694f1c6f5b75564ce546fae31b34b50d8f\n"
    },
    {
      "commit": "014220ce5507e2518daee5fc567bbe8a367c4da1",
      "tree": "d40483ae929c0627a9378a9a38fc1eae2a7adec9",
      "parents": [
        "41964fbb85491d7daf9f3fc871d7386d6ec74d21"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 15:33:43 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 16:12:32 2024 +0200"
      },
      "message": "Add missing reference in about\n\nChange-Id: Ic41c855a590a59791b3aeb3e5fe3f7c4bddfb5c3\n"
    },
    {
      "commit": "41964fbb85491d7daf9f3fc871d7386d6ec74d21",
      "tree": "9a6f2577b191caaf50ca1e13131cd689162c40f4",
      "parents": [
        "2486d8f04868999fd211f70c502bda924f9a5fbd"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 15:03:00 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 15:05:16 2024 +0200"
      },
      "message": "Add Iași team contribution reference for CoRoLa\n\nChange-Id: Ia7d2525e9a7040d26e4f0980d335e4a75008e439\n"
    },
    {
      "commit": "2486d8f04868999fd211f70c502bda924f9a5fbd",
      "tree": "29635ca5f12821cca1487cde268ad1b3dadf03d9",
      "parents": [
        "d3e58ce71cc621b8af5a73c6c06582cf3d0793ac"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 14:23:07 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 14:23:07 2024 +0200"
      },
      "message": "Mention R client library in Readme\n\nChange-Id: I5415df5d2cba5ee74dffc71881e3fe0812e04759\n"
    },
    {
      "commit": "d3e58ce71cc621b8af5a73c6c06582cf3d0793ac",
      "tree": "a8192ec0288fed45d2d5b78d733672fb2d697b25",
      "parents": [
        "fefa26185fabbf8131336e0bddbb201b4d352751"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 14:17:32 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 28 14:17:32 2024 +0200"
      },
      "message": "Mention contributors in Readme\n\nChange-Id: If938fa5451e6333f667ecceedf370a83b90da982\n"
    },
    {
      "commit": "fefa26185fabbf8131336e0bddbb201b4d352751",
      "tree": "05862375eda83c092d969bcd3c19f9ece2931ca5",
      "parents": [
        "90265675d2cd73cef1f6d3864a17b059fcdd31da"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 27 19:51:01 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 27 20:03:25 2024 +0200"
      },
      "message": "Add optional slimming instruction to README.md\n\nChange-Id: I0321bacf2cb628dbdc8e0280cd311aee2e002e83\n"
    },
    {
      "commit": "90265675d2cd73cef1f6d3864a17b059fcdd31da",
      "tree": "5568f42657055cfd1cd904359499bc386e2ab413",
      "parents": [
        "d68f5c3f1d37bb6b5ad578ed61f2fc30cd886d0c"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 27 19:51:15 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 27 20:01:10 2024 +0200"
      },
      "message": "Fix Dockerfile syntax\n\nChange-Id: I3ebf670402d23beb5f6ea974454a6245369e670f\n"
    },
    {
      "commit": "d68f5c3f1d37bb6b5ad578ed61f2fc30cd886d0c",
      "tree": "44426efdd69a8c7411cd627cc30036eb4105860f",
      "parents": [
        "2bb85b2704e91aa8374fe9c84535f212397b912e"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 23 11:50:32 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 23 11:50:32 2024 +0200"
      },
      "message": "Use KorAP as example for production level offer\n\nChange-Id: Ibac0c0b2f7107addfdd3cc1d1836f25545cb35d6\n"
    },
    {
      "commit": "2bb85b2704e91aa8374fe9c84535f212397b912e",
      "tree": "b19c1aa4e5b66bacf72823e2990d6d01a9a73bf3",
      "parents": [
        "fa7628f1b63274585c0cfa80d01b4bde54f21cc1"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 23 11:50:03 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 23 11:50:03 2024 +0200"
      },
      "message": "Update gitignore\n\nChange-Id: I28467c1c2e7afeab55d38971214b5b25e373b01a\n"
    },
    {
      "commit": "fa7628f1b63274585c0cfa80d01b4bde54f21cc1",
      "tree": "224f220707f6da81acb5bf3a59367d1a3131fd91",
      "parents": [
        "49c5cf097debb6f7ce7c730ba5af2cba51be5a68"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 23 11:40:27 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 23 11:40:27 2024 +0200"
      },
      "message": "Add DeReKo and CoRoLa references\n\nChange-Id: I15ea77d1ca795f136960f15a1508ecf2fa391aec\n"
    },
    {
      "commit": "49c5cf097debb6f7ce7c730ba5af2cba51be5a68",
      "tree": "cd0c882c37b60da0ab42b7bffaf06f017a142399",
      "parents": [
        "d196a6fce8d2fb0a6d0b396eded56de2580199b3"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 06 10:30:44 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 06 10:30:44 2024 +0200"
      },
      "message": "make KorAP instance configurable\n\nsee example.conf\n\nChange-Id: Ia6ece608272cf21efba29e23f948434164487f3d\n"
    },
    {
      "commit": "d196a6fce8d2fb0a6d0b396eded56de2580199b3",
      "tree": "23b77d22b374947bcdefbbedb068a7ea2880e92c",
      "parents": [
        "41d61c0bc831d007d420fad15ca72bd0d36e3939"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 05 22:18:20 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 05 22:18:20 2024 +0200"
      },
      "message": "Use our own rocksdb fork\n\nChange-Id: I20c4aa9c947d7f35422c6934539340c9374ec9de\n"
    },
    {
      "commit": "41d61c0bc831d007d420fad15ca72bd0d36e3939",
      "tree": "444033fba4b990399f75701a67cc0572a15f82fa",
      "parents": [
        "bdd779ad9348daef91be2eaaf1eb5af7b97a42ea"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 05 22:11:30 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 05 22:11:30 2024 +0200"
      },
      "message": "Fix build on MacOS\n\nChange-Id: I5fa3c9675aab518f3b4c691c83b7d9defe8228ac\n"
    },
    {
      "commit": "bdd779ad9348daef91be2eaaf1eb5af7b97a42ea",
      "tree": "6e3801fbd16b871517563e832d91538dec16024c",
      "parents": [
        "06578a1c822abcb8dbae9df9267fe1725fd4c795"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 05 10:02:29 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 05 10:03:00 2024 +0200"
      },
      "message": "Fix build with gcc 14.1\n\nChange-Id: I29278eb7743458c8f6266f96bc0ba6cdf3dd8d6a\n"
    },
    {
      "commit": "06578a1c822abcb8dbae9df9267fe1725fd4c795",
      "tree": "1a73f2304bc8415bf9c9072d5c04efcd19720fa4",
      "parents": [
        "e58a749ec4bd8e9532414da99ba640ba130e795c"
      ],
      "author": {
        "name": "Rainer Perkuhn",
        "email": "perkuhn@ids-mannheim.de",
        "time": "Wed Jul 31 16:12:40 2024 +0200"
      },
      "committer": {
        "name": "Rainer Perkuhn",
        "email": "perkuhn@ids-mannheim.de",
        "time": "Wed Jul 31 16:12:40 2024 +0200"
      },
      "message": "Update index.html.ep,deleted wrong blank in RE"
    },
    {
      "commit": "e58a749ec4bd8e9532414da99ba640ba130e795c",
      "tree": "e063ac92b8412fd078bbe23bf0168f00be04ebd7",
      "parents": [
        "589172565f4105b182b22da51207bb0b24c72c9d"
      ],
      "author": {
        "name": "Rainer Perkuhn",
        "email": "perkuhn@ids-mannheim.de",
        "time": "Tue Jul 30 15:17:52 2024 +0200"
      },
      "committer": {
        "name": "Rainer Perkuhn",
        "email": "perkuhn@ids-mannheim.de",
        "time": "Tue Jul 30 15:17:52 2024 +0200"
      },
      "message": "Update index.html.ep, added \",s0\" to position specific queries in autofocus response visualization  "
    },
    {
      "commit": "589172565f4105b182b22da51207bb0b24c72c9d",
      "tree": "94e274e03a6b09f673d67a9c9a820b70ec5d8196",
      "parents": [
        "d5010ecf0cd0506a1832f16542e01c734e4430ec"
      ],
      "author": {
        "name": "Rainer Perkuhn",
        "email": "perkuhn@ids-mannheim.de",
        "time": "Tue Jul 30 14:43:06 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Jul 30 14:48:12 2024 +0200"
      },
      "message": "Update derekovecs.js, modified cosmas II query proximity operator to /w1:5,s0 as appropriately reflecting context definition"
    },
    {
      "commit": "d5010ecf0cd0506a1832f16542e01c734e4430ec",
      "tree": "2e392d426c98d66f017f4e0a0d87fbd74e06f397",
      "parents": [
        "5c0b0e1f8a6e6290d5f5719d6a32335c4f49720e"
      ],
      "author": {
        "name": "Rainer Perkuhn",
        "email": "perkuhn@ids-mannheim.de",
        "time": "Tue Jul 30 14:38:25 2024 +0200"
      },
      "committer": {
        "name": "Rainer Perkuhn",
        "email": "perkuhn@ids-mannheim.de",
        "time": "Tue Jul 30 14:38:25 2024 +0200"
      },
      "message": "Update index.html.ep, fix cosmas II queries for collocates with correct replacement of blank and| (also surrounded with blanks) by \"oder\"; modified cosmas II query proximity operator to /w1:5,s0 as appropriately reflecting context definition"
    },
    {
      "commit": "5c0b0e1f8a6e6290d5f5719d6a32335c4f49720e",
      "tree": "4cb23facd6335ccb832f987add2d6def09a97c7b",
      "parents": [
        "b37bd84fef2e5f0a6786144a7d36ee8c0cd3b580"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 12 14:42:17 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 12 14:42:17 2024 +0200"
      },
      "message": "CSS: align dt and dd style with p\n\nChange-Id: Ieb2a9e5036bb6944e305ab0adda4bfaf14d758cd\n"
    },
    {
      "commit": "b37bd84fef2e5f0a6786144a7d36ee8c0cd3b580",
      "tree": "08a72327b0487e269ba1f191565462eede38ba41",
      "parents": [
        "dd8cfbeffdd66a5e8651ecc2bb79ef5c5c8007ca"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 05 11:22:30 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 05 11:22:30 2024 +0200"
      },
      "message": "Add missing reference to latest derekovecs publication\n\nChange-Id: Ic729a6b01f92324c33ca778cff5a7a191b75beca\n"
    },
    {
      "commit": "dd8cfbeffdd66a5e8651ecc2bb79ef5c5c8007ca",
      "tree": "45549053fa4c756b7b965684d09922edf495a6df",
      "parents": [
        "6c4f1372c68b6bc2ea0f04016b785fdb8e708438"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 05 11:00:12 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 05 11:00:12 2024 +0200"
      },
      "message": "Improve announcement indention\n\nChange-Id: I752c009cde1a19168cc65d00569446f2ad02f270\n"
    },
    {
      "commit": "6c4f1372c68b6bc2ea0f04016b785fdb8e708438",
      "tree": "00bd909ab20eecc6430070591b9f9f4c47fab8aa",
      "parents": [
        "4df553397d18576e86953a4b86659e85288b9168"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 05 10:59:35 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 05 10:59:35 2024 +0200"
      },
      "message": "Allow HTML in announcements\n\nChange-Id: I2b152c672f46cb6e37f2ab3d3265790d5fab069b\n"
    },
    {
      "commit": "4df553397d18576e86953a4b86659e85288b9168",
      "tree": "fda0e0688c62b358382c5b23c6d393b6c8d1eb33",
      "parents": [
        "18d7835dbed95ba42ec7308f6b5e77705d5c37dd"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 05 09:55:56 2024 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Apr 05 09:58:42 2024 +0200"
      },
      "message": "Keep announcements for 100 days by default\n\nChange-Id: Idce630beb3220c46a9b1f16cd8d7cba758f6b18e\n"
    },
    {
      "commit": "18d7835dbed95ba42ec7308f6b5e77705d5c37dd",
      "tree": "6ab059a25819c8e4650a2c84bcf613544d5ba67f",
      "parents": [
        "898e548588d11c2e2142eb8c02c8b80a4a97417e"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Feb 20 20:55:54 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Feb 20 20:55:54 2024 +0100"
      },
      "message": "CI: Use caching\n\nChange-Id: I4c70241b122c915195d3dbf10ef6758444c35126\n"
    },
    {
      "commit": "898e548588d11c2e2142eb8c02c8b80a4a97417e",
      "tree": "b55aa8bd178e7f28b23d8e907aa89e6a610652d2",
      "parents": [
        "03e1bdc40e99bf96b3b22fae81b3c6e1014f6e55"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Feb 20 15:03:07 2024 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Feb 20 15:12:06 2024 +0100"
      },
      "message": "Add export buttons to data tables\n\nChange-Id: Ie05c400b0e19107148474a8f8735e83d92235107\n"
    },
    {
      "commit": "03e1bdc40e99bf96b3b22fae81b3c6e1014f6e55",
      "tree": "c1ce0bf3082f1e97a2ac33e74eb8f156f7fcec58",
      "parents": [
        "eacc63f81aa0781d5e1c3143b86182c3b930dc11"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 06 15:40:44 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 06 15:40:44 2023 +0100"
      },
      "message": "Bump version to 0.92.1 and add changelog\n\nChange-Id: I8e6841cb64944bc8ee59dfb707b53de99f22b455\n"
    },
    {
      "commit": "eacc63f81aa0781d5e1c3143b86182c3b930dc11",
      "tree": "96054625985c3f6fe612c67d34fca1d6f6adbfd0",
      "parents": [
        "2c84b5dddbe6e8d9b7c09a7ab5a81cb46eec75e0"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 06 15:39:13 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 06 15:39:13 2023 +0100"
      },
      "message": "Show version information in footer\n\nChange-Id: Ib976168f8bdea14a092436f4e17441e8533405b1\n"
    },
    {
      "commit": "2c84b5dddbe6e8d9b7c09a7ab5a81cb46eec75e0",
      "tree": "66df4b154dc463fb7d8bf25db51bbe0c5dc37b48",
      "parents": [
        "ddba9086ca3597459e3bc64c3ee05aba276849ed"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 06 12:56:52 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 06 12:56:52 2023 +0100"
      },
      "message": "Hotfix escaping of double quotes in count-based collocates\n\nChange-Id: I57fa6227a9e20c00553c935bdd2de1bbfcece26a\n"
    },
    {
      "commit": "ddba9086ca3597459e3bc64c3ee05aba276849ed",
      "tree": "2f9f792032b1467e2a0577f3c48f68de38fa5d0b",
      "parents": [
        "043db1500f3e2677770e2701cb96cd996482062d"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 06 06:59:14 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Nov 06 06:59:14 2023 +0100"
      },
      "message": "Add deploy CI target\n\nChange-Id: If2f954fb0556f6306ff26520d985ac903a964993\n"
    },
    {
      "commit": "043db1500f3e2677770e2701cb96cd996482062d",
      "tree": "725b1e98f5d845c50c7b9f7d69a6e72502186037",
      "parents": [
        "b36bc7439838d1a0102e85d117b066b9583094eb"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 17:47:53 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 17:47:53 2023 +0100"
      },
      "message": "Add getVocabSize\n\nChange-Id: I642b39b1186752387da2b555b6e6cb20a0952be5\n"
    },
    {
      "commit": "b36bc7439838d1a0102e85d117b066b9583094eb",
      "tree": "6e8210bff3d006e2410db71904b4fe70a709d336",
      "parents": [
        "91f021b6bf25a59c8e0575339078ebcd5df27d5f"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 17:46:11 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 17:46:11 2023 +0100"
      },
      "message": "Use proper json encoding for new API methods\n\nChange-Id: I3a7ee7168b196fbbd7e38b09b67d10994dda3568\n"
    },
    {
      "commit": "91f021b6bf25a59c8e0575339078ebcd5df27d5f",
      "tree": "c7e8837bbd3c63c28f4e440267c61026fa3d8955",
      "parents": [
        "2f59a69e20b15cec1df04d4c8306971409fc4f99"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 11:44:46 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 11:44:46 2023 +0100"
      },
      "message": "Bump version to 0.92\n\nChange-Id: I9d28a85a30d34efd82789a29c31d9343c263a3e5\n"
    },
    {
      "commit": "2f59a69e20b15cec1df04d4c8306971409fc4f99",
      "tree": "9f1fab32a337940f47d8c2f6ad25559c930c0a1a",
      "parents": [
        "dea505eff0bc11e843176c91e056200959d049c0"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 11:44:27 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 11:44:27 2023 +0100"
      },
      "message": "Remove duplicate DEFAULT_NET init\n\nChange-Id: I4e6e7662bf5a9d7824263881fddd459cffc79fb6\n"
    },
    {
      "commit": "dea505eff0bc11e843176c91e056200959d049c0",
      "tree": "0d6d4e7a7d996148847b38bd4f14fb1e9308fb40",
      "parents": [
        "af708c221f9258049c9032f24c9757792a963783"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 11:42:36 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 11:42:36 2023 +0100"
      },
      "message": "Add getModelName\n\nChange-Id: I07a7e1db71eb522237721700c444d6873c81f5c0\n"
    },
    {
      "commit": "af708c221f9258049c9032f24c9757792a963783",
      "tree": "6b723e9da77c340dff17220a3028ca5a32657516",
      "parents": [
        "a546b1e3fbf25ec59f77b2d46c4146d183c4cd53"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 11:20:20 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 11:28:03 2023 +0100"
      },
      "message": "Add getVersion\n\nChange-Id: Iddace1378a02dac8ee5ce4ab717689a319758387\n"
    },
    {
      "commit": "a546b1e3fbf25ec59f77b2d46c4146d183c4cd53",
      "tree": "029e2a9cfc6c56e0fc1f9945e2bcaaf1832a2db1",
      "parents": [
        "3576c62c5b5ef6998bf0799f70b3e419bfded41b"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 08:52:37 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 08:52:37 2023 +0100"
      },
      "message": "Use tabular nums in dd/dt\n\nChange-Id: I3a6d820e4d43ca2baf26d61dec23c49f27fc2ebf\n"
    },
    {
      "commit": "3576c62c5b5ef6998bf0799f70b3e419bfded41b",
      "tree": "4115c549a1a9f163f8fcc49777018823153c6c14",
      "parents": [
        "68e29be001bb9f0e6228aef2233aff284a75e72b"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 08:51:58 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sun Nov 05 08:51:58 2023 +0100"
      },
      "message": "Fetch downtime calendar on server side\n\nChange-Id: I15fbe6b42489fa233dc0e17c31910e8a06444a3c\n"
    },
    {
      "commit": "68e29be001bb9f0e6228aef2233aff284a75e72b",
      "tree": "1850e733d967350d43a13ae4eff02de379abe9a6",
      "parents": [
        "9ae184ce2b3ad55d7465add6fdf030b56e64acd6"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Nov 04 18:37:35 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Nov 04 18:37:35 2023 +0100"
      },
      "message": "Fix calendar events path\n\nChange-Id: I2293bb8a532f818eca88fdbfb9309e825da9feef\n"
    },
    {
      "commit": "9ae184ce2b3ad55d7465add6fdf030b56e64acd6",
      "tree": "fb7a263f080097d06fd180150a760dac85f00fa2",
      "parents": [
        "ac4640204014bfe5684a24260127935408ad99bf"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Nov 04 18:21:54 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Nov 04 18:23:03 2023 +0100"
      },
      "message": "Insert scheduled downtime infos from cloud calendar\n\nChange-Id: I8e4524126c08c4b89298e29b4c17588ef3997b71\n"
    },
    {
      "commit": "ac4640204014bfe5684a24260127935408ad99bf",
      "tree": "3f27c82adf9d5f0acf0dd6546ad59ca7f4555321",
      "parents": [
        "f8d0c609c86758903479bd3e4a376da2ba570fb0"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Apr 18 20:07:45 2023 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Apr 18 20:07:45 2023 +0200"
      },
      "message": "Add documentdation on getSimilarity API function\n\nChange-Id: If4dd30c78960a9d49ac55ea48897bd9e7f84118c\n"
    },
    {
      "commit": "f8d0c609c86758903479bd3e4a376da2ba570fb0",
      "tree": "65f0d549902f0ba383c74dc7c2638510159d0143",
      "parents": [
        "dd163a371c2a80397d4283d7074fef2083f50459"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Apr 18 19:41:30 2023 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Apr 18 19:41:30 2023 +0200"
      },
      "message": "Drop non-standard kl include paths\n\nChange-Id: I5b86acc047053a87ee862354be59360a65ec3976\n"
    },
    {
      "commit": "dd163a371c2a80397d4283d7074fef2083f50459",
      "tree": "88baffa53580ee3ced50eced6fe6b4ad42745628",
      "parents": [
        "42e6d0965c67fe7e0641cb933d760e415f5c597a"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Apr 18 19:36:38 2023 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Apr 18 19:36:38 2023 +0200"
      },
      "message": "export getSimilarity\n\nChange-Id: Ia0b4ad86b6ae1be5136d68d07956e05f6f09a75d\n"
    },
    {
      "commit": "42e6d0965c67fe7e0641cb933d760e415f5c597a",
      "tree": "9a816618a39250268d36c926e77b14467b704c5e",
      "parents": [
        "da7b349d2611dc60a67bed087ab0c7b059dc8a58"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Apr 18 19:29:12 2023 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Apr 18 19:29:12 2023 +0200"
      },
      "message": "Fetch jquery via https\n\nFixes dereokovecs not working via https\n\nChange-Id: Ie334a15697674e9e04e87af3a452192727e49662\n"
    },
    {
      "commit": "da7b349d2611dc60a67bed087ab0c7b059dc8a58",
      "tree": "07a838da6679c84a16a2230120040a12803602a8",
      "parents": [
        "e29fb9af07482851da9c0aac5ad02f18c065beb5"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Feb 27 20:10:59 2023 +0100"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Feb 27 20:10:59 2023 +0100"
      },
      "message": "Don\u0027t turn on garbage filter by default: it eats all camelCase words\n\nChange-Id: I6db6ec090dd2ed085b4eb0bb39e1c9a6efb6de9d\n"
    },
    {
      "commit": "e29fb9af07482851da9c0aac5ad02f18c065beb5",
      "tree": "dda92fb94ad2af378abdc30074bb9e5f230a9053",
      "parents": [
        "20e595b5d7dd738b1c1e74e4cf26b4aee6e2839a"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 30 09:59:23 2022 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 30 09:59:23 2022 +0200"
      },
      "message": "Add hint to table head mouse-overs for undocumented results\n\nChange-Id: Ieb71d6bc18ff1127034d10ec49c0f0163579c5e8\n"
    },
    {
      "commit": "20e595b5d7dd738b1c1e74e4cf26b4aee6e2839a",
      "tree": "589b4dc50c4cf256e489afeb9101ad337aaf588b",
      "parents": [
        "e82ba3ccb05529c12c1c354fb62392da20a35d0b"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 30 09:47:13 2022 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 30 09:58:31 2022 +0200"
      },
      "message": "Fix documentation of \"win\"\n\nChange-Id: I89862119e8a06ab316b8c5160e0cd693ed29cbd3\n"
    },
    {
      "commit": "e82ba3ccb05529c12c1c354fb62392da20a35d0b",
      "tree": "2c4b7ee9dfdd7f06dd443f51a9a2f14e4a7e2178",
      "parents": [
        "93f33e87ef0eb5cfd00cad390294415f0b97df23"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 29 23:22:06 2022 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 30 09:21:46 2022 +0200"
      },
      "message": "Add documentation for getClassicCollocators web service funtion result\n\nChange-Id: I1abb3df3c2bde6417cb962183a1f184bdca1e170\n"
    }
  ],
  "next": "93f33e87ef0eb5cfd00cad390294415f0b97df23"
}
