It's embarrassing how much time this saved on builds.
This apparently has always been doing a linear scan on the entire symbol
table for _every single param in the symbol table_, including those that
were imported. This is not only unnecessary, but has no effect on the end
result of the system.
This cut build times almost in half, due to the number of symbols in some of
our packages. All for unnecessary work.
Like most things that have quadratic (or polynomial) time complexity, they
don't show up during initial development, and are hard to even profile for,
because their effects are so small. Now that our system has grown
substantially, it had a massive effect.
DEV-15114
This should have been part of a previous commit. So few parts of the system
utilize tests that I didn't notice that this was failing until after the
commit, since I'm not used to running them...even though I wrote them.
This system is being replaced with TAMER, so these changes largely just get
the tests working properly again.
DEV-15095
RSG (Ryan Specialty Group) recently announced a rename to Ryan Specialty (no
"Group"), but I'm not sure if the legal name has been changed yet or not, so
I'll wait on that.
A bunch of failing pipelines apparently wasn't obvious to me. And shame on
me for not running these locally; I forgot that the part of the system that
I touched had tests.
This was broken by b6cfdb4221.
This now uses year ranges, which I'll update annually.
This also renames "R-T Specialty" to "Ryan Specialty Group". The latter is
the parent company of the former. I was originally employed under the
former when LoVullo Associates was purchased, by I now work for the parent
company.
Shame on me!
* test/graph-test.xsl (foo:graph-vtwo-vthree): Swap `a' and `c' nodes. This
ordering seems to have changed after a Saxon upgrade, and this ordering
makes much more sense.
* test/symtable/symbols.xspec: Add missing `@default' and
`@pollute'. Remove extra `@keep'. All keeps should be gone by now, but
it looks like I missed some; that will be handled in a separate commit.
* src/symtable.xsl (symtable:find-duplicates):
Update description. Find duplicates in same package.
* test/symtable.xspec: Update test case accordingly.
The `preproc:param-dim' template must remain for now, as it is used by
others.
* src/current/include/preproc/symtable.xsl
(preproc:symtable)[lv:param]: Extracted template.
* src/symtable/symbols.xsl
(preproc:symtable)[lv:param]: Added template.
* test/symtable/symbols.xsl
(lv:param): Scenario added.
This was already happening, but formally test and document it, since
it's a very useful property.
* src/graph.xsl (graph:union): Document dedupe behavior
* test/graph-test.xsl: Add test data
* test/graph.xspec: Add dedupe test for graph:union