8 Commits

Author SHA1 Message Date
1ea207cda1 1.5.4
Some checks failed
Default (tags) / security (push) Failing after 0s
Default (tags) / test (push) Failing after 0s
Default (tags) / release (push) Has been skipped
Default (tags) / metadata (push) Has been skipped
2024-10-28 01:36:24 +01:00
ff365ee508 fix(core): Fix issues with path keys in tsconfig and logger setup in logging.ts. 2024-10-28 01:36:24 +01:00
a3226efd9a 1.5.3
Some checks failed
Default (tags) / security (push) Failing after 0s
Default (tags) / test (push) Failing after 0s
Default (tags) / release (push) Has been skipped
Default (tags) / metadata (push) Has been skipped
2024-10-28 01:30:40 +01:00
f74a6bf2ad fix(core): Fix incorrect logging and directory preparation 2024-10-28 01:30:39 +01:00
d47ac4793d 1.5.2
Some checks failed
Default (tags) / security (push) Failing after 2s
Default (tags) / test (push) Failing after 1s
Default (tags) / release (push) Has been skipped
Default (tags) / metadata (push) Has been skipped
2024-10-28 01:27:01 +01:00
9a89b63cf9 fix(core): Add logging for found publish modules 2024-10-28 01:27:00 +01:00
4ee31f85ab 1.5.1
Some checks failed
Default (tags) / security (push) Failing after 0s
Default (tags) / test (push) Failing after 0s
Default (tags) / release (push) Has been skipped
Default (tags) / metadata (push) Has been skipped
2024-10-28 01:24:52 +01:00
2b518722df fix(core): Fixes handling of undefined paths in tsconfig generation. 2024-10-28 01:24:52 +01:00
8 changed files with 44 additions and 7 deletions

View File

@ -1,5 +1,29 @@
# Changelog # Changelog
## 2024-10-28 - 1.5.4 - fix(core)
Fix issues with path keys in tsconfig and logger setup in logging.ts.
- Corrected the iteration over paths in the createTsconfigJson method of PublishModule.
- Fixed logger setup by ensuring console is enabled in logging.ts.
## 2024-10-28 - 1.5.3 - fix(core)
Fix incorrect logging and directory preparation
- Corrected logging to accurately report the number of detected publish modules.
- Ensured the publish directory is emptied before creating package.json.
## 2024-10-28 - 1.5.2 - fix(core)
Add logging for found publish modules
- Added console logging to display the count and list of discovered publish modules during the publish process.
- Included a startup log message indicating the beginning of the tspublish process.
## 2024-10-28 - 1.5.1 - fix(core)
Fixes handling of undefined paths in tsconfig generation.
- Added a null check for `paths` in the original tsconfig before modifying it.
- Enhanced testing by adding a test case for creating a TsPublish instance.
## 2024-10-28 - 1.5.0 - feat(classes.publishmodule) ## 2024-10-28 - 1.5.0 - feat(classes.publishmodule)
Add method to create and write tsconfig.json during publish module setup Add method to create and write tsconfig.json during publish module setup

View File

@ -1,6 +1,6 @@
{ {
"name": "@git.zone/tspublish", "name": "@git.zone/tspublish",
"version": "1.5.0", "version": "1.5.4",
"private": false, "private": false,
"description": "A tool to publish multiple, concise, and small packages from monorepos, specifically for TypeScript projects within a git environment.", "description": "A tool to publish multiple, concise, and small packages from monorepos, specifically for TypeScript projects within a git environment.",
"main": "dist_ts/index.js", "main": "dist_ts/index.js",

View File

@ -5,4 +5,9 @@ tap.test('first test', async () => {
console.log(tspublish); console.log(tspublish);
}); });
tap.test('should create a TsPublish instance', async () => {
const tspublishInstance = new tspublish.TsPublish();
expect(tspublishInstance).toBeTruthy();
});
tap.start(); tap.start();

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@git.zone/tspublish', name: '@git.zone/tspublish',
version: '1.5.0', version: '1.5.4',
description: 'A tool to publish multiple, concise, and small packages from monorepos, specifically for TypeScript projects within a git environment.' description: 'A tool to publish multiple, concise, and small packages from monorepos, specifically for TypeScript projects within a git environment.'
} }

View File

@ -80,8 +80,10 @@ export class PublishModule {
const originalTsConfig = plugins.smartfile.fs.toObjectSync( const originalTsConfig = plugins.smartfile.fs.toObjectSync(
plugins.path.join(paths.cwd, 'tsconfig.json') plugins.path.join(paths.cwd, 'tsconfig.json')
); );
for (const path of originalTsConfig.compilerOptions.paths) { if (originalTsConfig?.compilerOptions?.paths) {
originalTsConfig.compilerOptions.paths[path][0] = `.${originalTsConfig.compilerOptions.paths[path][0]}`; for (const path of Object.keys(originalTsConfig.compilerOptions.paths)) {
originalTsConfig.compilerOptions.paths[path][0] = `.${originalTsConfig.compilerOptions.paths[path][0]}`;
}
} }
const tsconfigJson = { const tsconfigJson = {
compilerOptions: { compilerOptions: {
@ -92,7 +94,7 @@ export class PublishModule {
moduleResolution: 'NodeNext', moduleResolution: 'NodeNext',
esModuleInterop: true, esModuleInterop: true,
verbatimModuleSyntax: true, verbatimModuleSyntax: true,
paths: originalTsConfig.compilerOptions.paths, paths: originalTsConfig?.compilerOptions?.paths,
}, },
exclude: [ exclude: [
'dist_*/**/*.d.ts', 'dist_*/**/*.d.ts',
@ -140,9 +142,9 @@ export class PublishModule {
this.options.monoRepoDir, this.options.monoRepoDir,
`dist_publish_${this.options.packageSubFolder}` `dist_publish_${this.options.packageSubFolder}`
); );
await plugins.smartfile.fs.ensureEmptyDir(this.options.publishModDirFullPath);
// package.json // package.json
await plugins.smartfile.fs.ensureEmptyDir(this.options.publishModDirFullPath);
const packageJson = await plugins.smartfile.SmartFile.fromString( const packageJson = await plugins.smartfile.SmartFile.fromString(
plugins.path.join(this.options.publishModDirFullPath, 'package.json'), plugins.path.join(this.options.publishModDirFullPath, 'package.json'),
await this.createPackageJson(), await this.createPackageJson(),

View File

@ -9,6 +9,10 @@ export class TsPublish {
public async publish (monorepoDirArg: string) { public async publish (monorepoDirArg: string) {
const publishModules = await this.getModuleSubDirs(monorepoDirArg); const publishModules = await this.getModuleSubDirs(monorepoDirArg);
logger.log('info', `Found ${Object.keys(publishModules).length} publish modules:`);
for (const publishModule of Object.keys(publishModules)) {
logger.log('info', `Publishing module: ${publishModule} -> ${publishModules[publishModule].name}`);
}
for (const publishModule of Object.keys(publishModules)) { for (const publishModule of Object.keys(publishModules)) {
const publishModuleInstance = new PublishModule({ const publishModuleInstance = new PublishModule({
monoRepoDir: monorepoDirArg, monoRepoDir: monorepoDirArg,

View File

@ -4,6 +4,7 @@ import { TsPublish } from './classes.tspublish.js';
export * from './classes.tspublish.js' export * from './classes.tspublish.js'
export const runCli = async () => { export const runCli = async () => {
console.log('Starting tspublish...');
const tspublish = new TsPublish(); const tspublish = new TsPublish();
await tspublish.publish(paths.cwd); await tspublish.publish(paths.cwd);
} }

View File

@ -1,4 +1,5 @@
import * as plugins from './plugins.js'; import * as plugins from './plugins.js';
import * as commitinfo from './00_commitinfo_data.js'; import * as commitinfo from './00_commitinfo_data.js';
export const logger = plugins.smartlog.Smartlog.createForCommitinfo(commitinfo.commitinfo); export const logger = plugins.smartlog.Smartlog.createForCommitinfo(commitinfo.commitinfo);
logger.enableConsole();