Upgraded the package version to 0.0.9. Introduced Typedoc for generating documentation with added script in package.json. Enhanced exception handling by introducing `DependencyResolutionError`. Refined TSinjex comments and README structure for better readability. Updated index file exports for better module organization.
Upgraded the project version to 0.0.8. Updated various dev dependencies, specifically @typescript-eslint packages and eslint-plugin-jsdoc, to their latest versions. Replaced @typescript-eslint/eslint-plugin with @stylistic/eslint-plugin to ensure compatibility and improved linting. These changes enhance code quality and tool efficiency.
Updated package version to 0.0.7 to reflect new changes. Added export statements for `InitDelegate` and `GenericConstructor` types, enhancing type availability for package users.
Renamed all instances of 'TSInjex' to 'TSinjex' for consistency across the codebase, including interfaces, classes, and test files. Updated the version in `package.json` from 0.0.5 to 0.0.6. Added Jest setup example to the `README.md` to guide developers on initial configuration for testing.
Added `src` folder and `tsconfig.json` to the release preparation to ensure all necessary files are included. Uncommented the deletion of the temporary branch to streamline the workflow. Set releases to be marked as prereleases automatically. Updated version in `package.json` to 0.0.5 and included a `files` field to specify which files to include in the package.
Changed the relative import path in `register.ts` for better module resolution and incremented the package version to 0.0.4 to reflect the updated changes.
### Details
Disabled the step for deleting the temporary branch in the release workflow by commenting out the relevant lines. This adjustment prevents potential issues caused by branch deletion during the release process and ensures the stability of the workflow until a more robust solution is implemented.
Added steps to set the Git user name and email in the release workflow. This ensures that commits made by the workflow are correctly attributed to GitHub Actions, preventing potential issues with commit authorship.
Updated the GitHub Actions CreateRelease workflow to use `git reset` instead of `git rm -rf`, ensuring the `.gitignore` file is removed. Simplifies the preparation of files for release and prevents the removal of unexpected files.
Switched `git reset --hard` to `git rm -rf .` followed by a target-specific `git reset` in the release workflow. This change ensures only the necessary files (README.md, package.json, LICENSE, dist/**) are retained for the temp release branch, improving the accuracy of release preparation.
Renamed functions files to follow consistent camelCase convention. Added a missing type export for ITSInjex interface in the main index file, enabling better TypeScript type support and ensuring interfaces are available for external modules.
Renamed `jest.config.js` to `jest.config.cjs` for compatibility with CommonJS modules. Updated `.eslintignore` to exclude `.cjs` files to prevent linting issues.
Simplified the npm scripts by removing the unnecessary "postinstall" script which was triggering the TypeScript build. This step was redundant since the build process is already handled separately.
Added the creation of a temporary branch to stage release files before tagging, ensuring a clean release environment. Adjusted the tag creation process and included steps to delete the temporary branch post-tagging. Updated `package.json` to version 0.0.3 and set module type for better compatibility.
Bumped the project version from 0.0.1 to 0.0.2 in the package-lock.json. Added `hasInstallScript` attribute to the main package metadata, indicating the presence of an installation script.
Upgraded package version from 0.0.1 to 0.0.2 to reflect new functionality. Added exports for `resolve` and `register` functions to extend the library capabilities.
Added a new "postinstall" script to `package.json` to automatically build TypeScript files using the `build:tsc` command after dependencies are installed. This ensures that the TypeScript code is compiled immediately following an `npm install`, improving the setup process consistency.
- Renamed DIContainer class and related references to TSInjex to better indicate its purpose as a TypeScript-based dependency injection container.
- Extracted IDependency interface to a separate file to improve modularity.
- Split the ITSInjex interface into ITSInjexRegister and ITSInjexResolve, then extended them in a new ITSInjex interface to clarify the separation of concerns.
- Updated tests and decorators to reflect the renaming and interface changes.
- Adjusted helper, functions, and index export to align with the new TSInjex structure.
Modified the workflow to exit with code 1 instead of 0 when the version has not changed. This prevents the release job from being considered successful when no new release is created, improving the accuracy of pipeline status.
Commented out the file uploads section in the CreateRelease GitHub Action workflow. This prevents specified files from being included in the release, likely streamlining the release process or addressing issues with file attachments.
Introduced a new script `version:show` to easily display the current project version from the package.json. This enhances developer efficiency by providing quick access to the version number.
Introduced a GitHub Actions workflow to automate release creation upon pushes to the main branch, enhancing CI/CD efficiency. Updated the pull request workflow to support manual triggers. Adjusted Jest's coverage thresholds from 80% to 70% to reflect current testing standards. Added "types" field in package.json for TypeScript declarations. Created an empty README.md.
Added `workflow_dispatch` to GitHub Actions to permit manual execution of pull request tests, enhancing flexibility in CI/CD processes. Included `types` field in `package.json` to specify TypeScript declaration file, improving TypeScript support and integration.