Skip to content

Commit 63c2529

Browse files
committed
feat: Ability to set author/CompanyName programmatically
Closes #455
1 parent e5b0c04 commit 63c2529

File tree

4 files changed

+12
-4
lines changed

4 files changed

+12
-4
lines changed

src/packager.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ export class Packager implements BuildInfo {
5959
this.isTwoPackageJsonProjectLayoutUsed = this.appDir !== this.projectDir
6060

6161
const appPackageFile = this.projectDir === this.appDir ? devPackageFile : path.join(this.appDir, "package.json")
62-
this.metadata = appPackageFile === devPackageFile ? this.devMetadata : await readPackageJson(appPackageFile)
62+
this.metadata = appPackageFile === devPackageFile ? (this.options.appMetadata || this.devMetadata) : deepAssign(await readPackageJson(appPackageFile), this.options.appMetadata)
6363

6464
this.checkMetadata(appPackageFile, devPackageFile)
6565
checkConflictingOptions(this.devMetadata.build)

src/platformPackager.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,13 @@ export interface PackagerOptions {
3939
* Development `package.json` will be still read, but options specified in this object will override.
4040
*/
4141
readonly devMetadata?: DevMetadata
42+
43+
/**
44+
* The same as [application package.json](https://github.com/electron-userland/electron-builder/wiki/Options#AppMetadata).
45+
*
46+
* Application `package.json` will be still read, but options specified in this object will override.
47+
*/
48+
readonly appMetadata?: DevMetadata
4249
}
4350

4451
export interface BuildInfo extends ProjectMetadataProvider {

test/src/ArtifactPublisherTest.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ testAndIgnoreApiRate("prerelease", async () => {
7171
const r = await publisher.getRelease()
7272
assertThat(r).has.properties({
7373
prerelease: true,
74-
draft: true,
74+
draft: false,
7575
})
7676
}
7777
finally {

test/src/BuildTest.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,10 @@ test("name in the build", t => t.throws(assertPack("test-app-one", currentPlatfo
8585
})
8686
}), /'name' in the 'build' is forbidden/))
8787

88-
test("empty description", t => t.throws(assertPack("test-app-one", {
88+
// this test also test appMetadata, so, we must use test-app here
89+
test("empty description", t => t.throws(assertPack("test-app", {
8990
targets: Platform.LINUX.createTarget(),
90-
devMetadata: <any>{
91+
appMetadata: <any>{
9192
description: "",
9293
}
9394
}), /Please specify 'description'/))

0 commit comments

Comments
 (0)