@@ -8,6 +8,7 @@ interface PackageJsonFile {
88 content : {
99 name : string
1010 version : string
11+ private ?: boolean
1112 dependencies ?: Record < string , string >
1213 devDependencies ?: Record < string , string >
1314 peerDependencies ?: Record < string , string >
@@ -51,17 +52,26 @@ function checkBrowserSdkPackageJsonFiles(): void {
5152}
5253
5354function checkPackageJsonVersion ( packageJsonFile : PackageJsonFile ) : void {
54- if (
55- isBrowserSdkPublicPackageName ( packageJsonFile . content . name ) &&
56- packageJsonFile . content . version !== releaseVersion
57- ) {
55+ if ( packageJsonFile . content ?. private ) {
56+ // The developer extension is a private package, but it should still have a version
57+ if (
58+ packageJsonFile . content . version &&
59+ packageJsonFile . content . name !== '@datadog/browser-sdk-developer-extension'
60+ ) {
61+ throw new Error ( `Private package ${ packageJsonFile . relativePath } should not have a version` )
62+ }
63+ } else if ( packageJsonFile . content . version !== releaseVersion ) {
5864 throw new Error (
5965 `Invalid version for ${ packageJsonFile . relativePath } : expected ${ releaseVersion } , got ${ packageJsonFile . content . version } `
6066 )
6167 }
6268}
6369
6470function checkPackageDependencyVersions ( packageJsonFile : PackageJsonFile ) : void {
71+ if ( packageJsonFile . content . private ) {
72+ return
73+ }
74+
6575 for ( const dependencies of [
6676 packageJsonFile . content . dependencies ,
6777 packageJsonFile . content . devDependencies ,
@@ -72,12 +82,7 @@ function checkPackageDependencyVersions(packageJsonFile: PackageJsonFile): void
7282 }
7383
7484 for ( const [ dependencyName , dependencyVersion ] of Object . entries ( dependencies ) ) {
75- if (
76- isBrowserSdkPublicPackageName ( dependencyName ) &&
77- ! dependencyVersion . startsWith ( 'workspace:' ) &&
78- ! dependencyVersion . startsWith ( 'file:' ) &&
79- dependencyVersion !== releaseVersion
80- ) {
85+ if ( isBrowserSdkPackageName ( dependencyName ) && dependencyVersion !== releaseVersion ) {
8186 throw new Error (
8287 `Invalid dependency version for ${ dependencyName } in ${ packageJsonFile . relativePath } : expected ${ releaseVersion } , got ${ dependencyVersion } `
8388 )
@@ -86,6 +91,6 @@ function checkPackageDependencyVersions(packageJsonFile: PackageJsonFile): void
8691 }
8792}
8893
89- function isBrowserSdkPublicPackageName ( name : string ) : boolean {
94+ function isBrowserSdkPackageName ( name : string ) : boolean {
9095 return name ?. startsWith ( '@datadog/' )
9196}
0 commit comments