{"id":20123976,"url":"https://github.com/dalenewman/transformalize.transform.csscript","last_synced_at":"2025-06-13T07:04:18.933Z","repository":{"id":141704146,"uuid":"120034351","full_name":"dalenewman/Transformalize.Transform.CsScript","owner":"dalenewman","description":"A CS-Script Transform for Transformalize","archived":false,"fork":false,"pushed_at":"2019-12-16T21:42:05.000Z","size":1600,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-13T07:02:29.327Z","etag":null,"topics":["csharp","csharp-script","etl","transformalize"],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dalenewman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-02-02T21:41:57.000Z","updated_at":"2019-12-16T21:42:08.000Z","dependencies_parsed_at":"2024-04-19T05:32:14.262Z","dependency_job_id":null,"html_url":"https://github.com/dalenewman/Transformalize.Transform.CsScript","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dalenewman/Transformalize.Transform.CsScript","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalenewman%2FTransformalize.Transform.CsScript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalenewman%2FTransformalize.Transform.CsScript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalenewman%2FTransformalize.Transform.CsScript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalenewman%2FTransformalize.Transform.CsScript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dalenewman","download_url":"https://codeload.github.com/dalenewman/Transformalize.Transform.CsScript/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalenewman%2FTransformalize.Transform.CsScript/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259599313,"owners_count":22882349,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["csharp","csharp-script","etl","transformalize"],"created_at":"2024-11-13T19:47:02.934Z","updated_at":"2025-06-13T07:04:18.914Z","avatar_url":"https://github.com/dalenewman.png","language":"C#","readme":"### Overview\n\nThis adds C# transform to Transformalize using [CS-Script](https://github.com/oleg-shilo/cs-script).  It is a plug-in compatible with Transformalize 0.6.1-beta.\n\n### Usage\n\n```xml\n\u003ccfg name=\"Test\"\u003e\n    \u003centities\u003e\n        \u003cadd name=\"Test\"\u003e\n            \u003crows\u003e\n                \u003cadd text=\"SomethingWonderful\" number=\"2\" /\u003e\n            \u003c/rows\u003e\n            \u003cfields\u003e\n                \u003cadd name=\"text\" /\u003e\n                \u003cadd name=\"number\" type=\"int\" /\u003e\n            \u003c/fields\u003e\n            \u003ccalculated-fields\u003e\n                \u003cadd name=\"csharped\" t='csscript(return text + \" \" + number;)' /\u003e\n            \u003c/calculated-fields\u003e\n        \u003c/add\u003e\n    \u003c/entities\u003e\n\u003c/cfg\u003e\n```\n\nThis produces `SomethingWonderful 2`\n\nNote: This csharp transform allows you to set a `remote` attribute on the field to `true`.  Doing \nthis runs the code in a remote `AppDomain`.  This avoids the memory leak associated with running \ndyanamically loaded c# assemblies in the host's `AppDomain`.  Unfortunately, running the code \nremotely is only half as fast as running it in-process.\n\n### Benchmark\n\n``` ini\n\nBenchmarkDotNet=v0.11.5, OS=Windows 10.0.17134.407 (1803/April2018Update/Redstone4)\nIntel Core i7-7700HQ CPU 2.80GHz (Kaby Lake), 1 CPU, 8 logical and 4 physical cores\nFrequency=2742192 Hz, Resolution=364.6718 ns, Timer=TSC\n  [Host]       : .NET Framework 4.7.2 (CLR 4.0.30319.42000), 32bit LegacyJIT-v4.7.3221.0\n  LegacyJitX64 : .NET Framework 4.7.2 (CLR 4.0.30319.42000), 64bit LegacyJIT/clrjit-v4.7.3221.0;compatjit-v4.7.3221.0\n\nJob=LegacyJitX64  Jit=LegacyJit  Platform=X64  \nRuntime=Clr  \n\n```\n|                  Method |       Mean |     Error |    StdDev | Ratio | RatioSD |\n|------------------------ |-----------:|----------:|----------:|------:|--------:|\n|       \u0026#39;10000 test rows\u0026#39; |   916.0 ms | 11.914 ms |  9.949 ms |  1.00 |    0.00 |\n|  \u0026#39;10000 1 local csharp\u0026#39; |   957.5 ms | 18.817 ms | 21.669 ms |  1.05 |    0.03 |\n| \u0026#39;10000 1 remote csharp\u0026#39; | 1,483.2 ms |  8.235 ms |  7.300 ms |  1.62 |    0.02 |\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdalenewman%2Ftransformalize.transform.csscript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdalenewman%2Ftransformalize.transform.csscript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdalenewman%2Ftransformalize.transform.csscript/lists"}