-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(errors): All the errors will be printed if any #178
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This is the 1st commit message: ♻️ chore(yaml): Refactor YAML parsing and error handling Removed deprecated code and improved the YAML parser for better error handling and performance. This includes restructuring the parsing logic and enhancing the error reporting mechanism to provide clearer feedback on parsing issues. - Consolidated error handling for various parsing scenarios - Improved token management and state transitions in the parser - Enhanced support for YAML directives and comments handling # This is the commit message #2: ✨ feat(docker): Add Dockerfile and .dockerignore for tinifier Introduced a Dockerfile to facilitate the building and running of the tinifier application in a containerized environment. The Dockerfile includes multi-stage builds for compiling the Go application and preparing a minimal runtime image. Additionally, a .dockerignore file was created to exclude unnecessary files from the Docker context, optimizing the build process. # This is the commit message #3: ✨ feat(pipeline): Introduce configurable options for pipeline processing Added a new options struct to allow configuration of pipeline behavior, including maximum parallel processing, retry attempts, and error thresholds for cancellation. This enhances flexibility and control over pipeline execution, improving error handling and concurrency management. - Implemented Apply method for options struct - Added functions to set options: WithMaxParallel, WithRetryAttempts, WithMaxErrorsToStop - Updated ThreeSteps function to utilize new options for better configurability # This is the commit message #4: ✨ feat(cli): Add configurable options for file processing Introduced a new options structure to manage configuration for the CLI application. This includes flags for API keys, file extensions, thread count, error handling, and more. The changes enhance user flexibility and allow for better customization of the file processing behavior. - Added command-line flags for configuration - Implemented validation for user inputs - Integrated configuration file loading for default settings # This is the commit message #5: ✨ feat(finder): Implement file filtering and directory traversal Added a new package for file filtering that allows users to filter files by their extensions, supporting both case-sensitive and case-insensitive options. Implemented functionality to retrieve files from specified directories, with support for recursive searching. This enhances the application's ability to process files based on user-defined criteria. - Introduced `FilterByExt` function for filtering files - Added `Files` function for directory traversal - Included tests to ensure correct functionality of file filtering and retrieval # This is the commit message #6: ♻️ refactor(pipeline): Replace slice inputs with iter.Seq for flexibility Updated the ThreeSteps function to accept iter.Seq instead of a slice for input values, enhancing flexibility in input handling. Adjusted related test cases to utilize slices.Values for compatibility with the new input type. This change aims to improve the pipeline's adaptability to different input structures. # This is the commit message #7: 📝 docs(pipeline): Update comments and improve documentation clarity Enhanced comments in the pipeline code to clarify the purpose and functionality of key components. This includes detailed descriptions for error handling, configuration options, and the execution flow of the ThreeSteps function. Improved documentation aims to facilitate better understanding and maintainability of the code. # This is the commit message #8: ✨ feat(cli): Enhance file processing with concurrency and error handling Updated the run method to process files concurrently using a pool of TinyPNG clients. Implemented error handling to stop processing based on a configurable maximum error threshold. Added retry logic for file uploads and downloads, improving robustness and user experience. Enhanced file filtering capabilities to support additional formats. # This is the commit message #9: 📝 docs(readme): Enhance README with detailed features and usage examples Updated the README to include a comprehensive features list, installation instructions, configuration options, and usage examples for the `tinifier` CLI tool. This improves user understanding and accessibility of the tool's capabilities. Added a demo GIF and a section on how to record a demo for better visual guidance. # This is the commit message #10: 🔧 chore(golangci): Update linter prefix in configuration Changed the linter prefix in the golangci configuration from 'describe-commit' to 'tinifier' to align with the project's current naming conventions. This update ensures consistency in linting across the codebase. - Updated linter prefix for clarity - Maintained existing linter settings and configurations ♻️ refactor(cli): Improve error logging and progress reporting Refactored error handling and progress reporting in the CLI application. Removed the old progress string function and integrated progress reporting directly into the logging statements. Enhanced error messages to include the error count and maximum allowed errors, improving clarity and user feedback during file processing. 📝 docs(readme): Enhance README with TinyPNG usage details Added information about TinyPNG's compression techniques and file handling policies to the README. This improves user understanding of the tool's functionality and the implications of using the TinyPNG API.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.