Merged
Conversation
deemonic
added a commit
that referenced
this pull request
Mar 26, 2025
* Feature/add imagick as driver (#2) * created conversion strategy interface * added libreoffice and imagick strategies * added a new converter class * added driver and drivers array to config * added contructor to strategies * wip conversion validator * wip * created InputFileNotFoundException * added a driver override method * created cleanup service * implemented cleanup strategy * wip * finished FileHandler * removed ConversionService * added todo for LibreOffice strategy * Feature/implement registry (#3) * wip * updated disk in libreoffice strategy * minor refactor and test for Format Registry * added OdtFormat to registry * added RtfFormat to the registry * added TxtFormat to registry * added HtmlFormat to registry * added XmlFormat to registry * added XlsxFormat to registry * added OdsFormat to registry * added XlsFormat to registry * added PptxFormat to registry * added PptFormat to registry * added OdpFormat to registry * added SvgFormat to registry * added JpgFormat to registry * added PngFormat to registry * added BmpFormat to registry * added TiffFormat to registry * updated strategies * undo composer changes * Increase test coverage (#4) * removed unused ConversionValidator * added tests for cleanup * added basic tests for Filename class * added test for docx * Add sample docs for integration tests * debug mimetype * updated libre_office path for gitgub action test * workflow test * workflow test * test workflow * test workflow * tes workflow * updated libre office path * added fileinfo to php in workflow * added logs for mime detection * testing logging * testing workflow * testing workflow * adedd lfs files to workflow * removed log statements * added tests for Doc and BMP formats * added CSV tests * added html, jpg and odp tests * wip * updated ods smaple file * added detect mimetype from zip method * odt and png tests added * added ppt conversion test * added pptx and rtf tests * added svg tests * added tiff tests * addd txt tests * added xls test * added xlsx test * added xml test * added libre office path to laravel env environment * updated libreoffice path * debug bmp in workflow * updated mime types to array * set libre office path * added image/x-ms-bmp to bmp mimetypes * Feature/imagick-and-refactor (#5) * wip mark implementation * wip markdown * added imagick strategy + minor refactor * refactored conversion result * updated tests and added imagick to github workflow * refactored cleanup service * updated readme + added webp and gif support * added tests for gif and webp * adding gif and webp sample files * updated cleanup class tests * updated readme and testcase * added potrace install to the workflow * updated test case * updated readme * added sponsors section to readme + funding.yml
This file contains hidden or 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
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.
This pull request introduces significant enhancements and updates to the Doxswap Laravel package, focusing on expanding its conversion capabilities to include image formats, improving the API, and simplifying the cleanup strategy. The most important changes include updating the README to reflect new features, adding support for ImageMagick, and modifying the configuration and cleanup logic.
Enhancements and New Features:
README.md: Updated to include new image format conversion capabilities, detailed conversion tracking, and installation instructions for ImageMagick. [1] [2].github/workflows/main.yml: Added theimagickextension to the setup to support image processing.Configuration Updates:
config/config.php: Simplified the cleanup configuration by replacing thecleanup_strategywith aperform_cleanupboolean flag. [1] [2]Codebase Simplification:
src/ConversionCleanup.php: Refactored to remove the detailed cleanup strategies and instead use a simpleperform_cleanupflag to determine if the input file should be deleted after conversion. [1] [2]src/Converter.php: Removed the file and integrated its logic into other parts of the codebase for simplification.Conversion Result Enhancements:
src/Contracts/ConversionStrategy.phpandsrc/Contracts/ConvertibleFormat.php: Updated theconvertmethod to return aConversionResultobject instead of a string, providing more detailed conversion information. [1] [2] [3] [4]src/ConversionResult.php: Added a new class to encapsulate detailed conversion results, including filenames, file paths, duration, and timestamps.