Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
3113f6f
Plan made, will remove later.
Omnideth May 25, 2026
e561d39
Large chunk of functionality exposed in Typescript for MVP.
Omnideth May 25, 2026
7379013
Roadmap pushed up for final feature expansion.
Omnideth May 25, 2026
3dfa921
Committing these to pivot boxes, this is steps 11-13, I do have a que…
Omnideth May 25, 2026
85b7bd2
These changes are the minimum required to get perl typescript support…
Omnideth May 27, 2026
662fb11
This should install Carton only when Perl is implicated on either OS.
Omnideth May 27, 2026
1dc42eb
Addressing feedback.
Omnideth May 28, 2026
0c996ec
Okay perl and Bun are th two integrations affected by this.
Omnideth May 29, 2026
1578403
As main has shifted under me, it looks like this makes me congruent w…
Omnideth May 30, 2026
57e94aa
I am reverting the apphost.ps1 changes from before, they made their w…
Omnideth May 30, 2026
9012eb6
Add newline at end of validate-typescript-apphost.ps1
Omnideth May 30, 2026
f68baec
Merge branch 'main' into perl-ts-integration
aaronpowell Jun 1, 2026
ad3b10a
Update examples/perl/cpanm-api-integration/CpanmApiIntegration.AppHos…
aaronpowell Jun 18, 2026
205eb87
Merge branch 'main' into perl-ts-integration
aaronpowell Jun 18, 2026
2e59b48
Reverting the packageProjectPath inclusion as this resolves just fine…
Omnideth Jun 30, 2026
dc3c62a
Updating with .mts as the default to match main
Omnideth Jun 30, 2026
94bbb4e
Removing the nested folder - which touches the Aspire.slnx per https:…
Omnideth Jul 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ node_modules
examples/perl/**/local/*
**cpanfile.snapshot
**/.aspire/modules/
**/.modules/
**/*.AppHost.TypeScript/.aspire/
**/*.AppHost.TypeScript/nuget.config
tsconfig.apphost.json
.ngrok
Expand Down
2 changes: 1 addition & 1 deletion CommunityToolkit.Aspire.slnx
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@
<Project Path="examples/papercut/CommunityToolkit.Aspire.Hosting.PapercutSmtp.ServiceDefaults/CommunityToolkit.Aspire.Hosting.PapercutSmtp.ServiceDefaults.csproj" />
</Folder>
<Folder Name="/examples/perl/">
<Project Path="examples/perl/cpanm-api-integration/CpanmApiIntegration.AppHost/CpanmApiIntegration.AppHost.csproj" />
<Project Path="examples/perl/CpanmApiIntegration.AppHost/CpanmApiIntegration.AppHost.csproj" />
</Folder>
<Folder Name="/examples/postgres-ext/">
<Project Path="examples/postgres-ext/CommunityToolkit.Aspire.Hosting.PostgreSQL.Extensions.AppHost/CommunityToolkit.Aspire.Hosting.PostgreSQL.Extensions.AppHost.csproj" />
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { createBuilder } from "./.aspire/modules/aspire.mjs";

const builder = await createBuilder();

const perlApi = await builder.addPerlApi("perl-api", ".", "../scripts/API.pl");
await perlApi.withCpanMinus();
await perlApi.withPackage("Mojolicious::Lite", { force: true, skipTest: true });
await perlApi.withLocalLib({ path: "local" });
await perlApi.withHttpEndpoint({ name: "http", env: "PORT" });

const perlDriver = await builder.addPerlScript("perl-driver", "../scripts", "driver.pl");
await perlDriver.withEnvironment("API_URL", perlApi.getEndpoint("http"));
await perlDriver.withReference(perlApi);
await perlDriver.waitFor(perlApi);

await builder.build().run();
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"appHost": {
"path": "apphost.mts",
"language": "typescript/nodejs"
},
"sdk": {
"version": "13.4.3"
},
"profiles": {
"https": {
"applicationUrl": "https://localhost:17453;http://localhost:15453",
"environmentVariables": {
"ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL": "https://localhost:21453",
"ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL": "https://localhost:22453"
}
}
},
"packages": {
"CommunityToolkit.Aspire.Hosting.Perl": "../../../src/CommunityToolkit.Aspire.Hosting.Perl/CommunityToolkit.Aspire.Hosting.Perl.csproj"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// @ts-check

import { defineConfig } from "eslint/config";
import tseslint from "typescript-eslint";

export default defineConfig({
files: ["apphost.mts"],
extends: [tseslint.configs.base],
languageOptions: {
parserOptions: {
projectService: true,
},
},
rules: {
"@typescript-eslint/no-floating-promises": ["error", { checkThenables: true }],
},
});
Loading
Loading