Skip to content

Releases: JohanDevl/Export_Trakt_4_Letterboxd

Release v1.2.2

24 Mar 22:21
217425d

Choose a tag to compare

Release v1.2.2

This release was automatically generated from PR #35: Add vX.Y.Z format for Docker image tags

Changes included:

Description

This PR adds the vX.Y.Z tag format to Docker images in addition to existing formats. This ensures explicit references to versions including the 'v' prefix, maintaining consistency between Git tags and Docker image tags.

Changes

  • Added type=semver,pattern=v{{version}} pattern in Docker metadata configuration
  • Added explicit raw tag generation with type=raw,value=v${{ steps.version.outputs.version }},enable=${{ startsWith(github.ref, 'refs/tags/v') }}

Impact

  • Docker images will now also be tagged with the vX.Y.Z format when building from version tags
  • Improves consistency between Git tags and Docker tags
  • Makes it easier to reference specific versioned Docker images with the same format as Git tags

Tests

  • Docker build workflow will generate the vX.Y.Z tag format when building from version tags

Merged by:

@JohanDevl

Release v1.2.1

24 Mar 22:17
f0e096a

Choose a tag to compare

Release v1.2.1

This release was automatically generated from PR #34: Add vX.Y.Z Docker image tag format

Changes included:

Description

This PR adds the vX.Y.Z tag format to Docker images in addition to existing formats. This will allow for explicit references to versions including the 'v' prefix.

Changes

  • Added type=semver,pattern=v{{version}} pattern in Docker metadata configuration

Impact

  • Docker images will now also be tagged with the vX.Y.Z format
  • Improves consistency between Git tags and Docker tags

Tests

  • Docker build workflow is functional
  • Tags generated as expected during releases

Merged by:

@JohanDevl

Release v1.2.0

24 Mar 22:05
6a697d9

Choose a tag to compare

Release v1.2.0

This release was automatically generated from PR #33: Release v1.2.0: Internationalization and Docker improvements

Changes included:

Release v1.2.0

Major Features

  • Added full internationalization (i18n) support with translations for:
    • English (en)
    • French (fr)
    • German (de)
    • Spanish (es)
    • Italian (it)
  • Fixed Docker container building and execution
  • Added translation management utilities

Changes

  • Implemented translation framework for all user-facing messages
  • Created manage_translations.sh utility for managing language files
  • Support for setting language in config or via environment variable
  • Fixed module loading in Docker containers
  • Improved Docker build process to properly include locales directory
  • Added documentation for internationalization system
  • Harmonized message keys and translations across all language files

Bug Fixes

  • Fixed Docker build process to properly find config.sh module
  • Fixed container initialization with proper paths for locales
  • Ensured consistent translation key naming and organization
  • Corrected encoding issues in language files

Developer Improvements

  • Added utility for creating, exporting, and managing translations
  • Support for exporting translations to JSON and PO formats
  • Improved documentation for internationalization
  • Added unit tests for translation system

Documentation

  • Added INTERNATIONALIZATION.md with detailed guide
  • Updated README with language configuration instructions
  • Added developer documentation for adding new languages

This release significantly improves the user experience by providing internationalization support and fixing Docker-related issues. Users can now use the application in their preferred language, and Docker deployments work correctly out of the box.

Merged by:

@JohanDevl

Release v1.0.17

24 Mar 21:02
0017332

Choose a tag to compare

Release v1.0.17

This release was automatically generated from PR #30: Merge develop into main: Docker Optimization and Features

Changes included:

Description

This PR merges the latest changes from the develop branch into the main branch, focusing primarily on Docker optimization and feature enhancements. It includes improvements to the Docker implementation, data processing functions, and automatic film limiting in normal mode.

Fixes #22

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Documentation update

How Has This Been Tested?

  • All unit tests are passing, including the previously failing test for create_plays_count_lookup
  • Docker containers have been built and tested locally
  • Integration tests have been verified to ensure proper data processing
  • Manual testing of the automatic film limiting feature in normal mode

Key Changes

  1. Docker Optimization:

    • Improved Docker image with optimized size
    • Enhanced Docker Compose configuration
    • Better error handling in Docker environment
  2. Data Processing Improvements:

    • Fixed the create_plays_count_lookup function to use IMDB IDs instead of Trakt IDs
    • Enhanced error handling in data processing functions
    • Improved JSON processing with better null value handling
  3. User Experience Enhancements:

    • Added automatic film limiting in normal mode (defaults to 10 most recent films)
    • Better logging and user feedback

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have tested my changes and they work as expected
  • Any dependent changes have been merged and published in downstream modules

Merged by:

@JohanDevl

Release v1.0.16

24 Mar 12:27
fcd0ea5

Choose a tag to compare

Release v1.0.16

This release was automatically generated from PR #28: Fix: Change version tag format to vX.Y.Z

Changes included:

Changes

This PR changes the version tag format to follow the standard semantic versioning format with a "v" prefix. When the workflow runs on the main branch, it will now generate an additional tag in the format vX.Y.Z (e.g., v1.2.3).

Benefits

  • Standard versioning format with "v" prefix
  • Consistent with Git tags format
  • Better integration with semantic versioning tools

Implementation

  • Updated the tag pattern in the docker-publish.yml workflow
  • Changed format from main-X.Y.Z to vX.Y.Z
  • Tag is still only applied when building from the main branch and when a version is available

This change ensures Docker image tags follow the same versioning convention as the Git repository tags.

Merged by:

@JohanDevl

Release v1.0.15

24 Mar 12:23
97f11c9

Choose a tag to compare

Release v1.0.15

This release was automatically generated from PR #27: Fix: Add explicit version tag for Docker images

Changes included:

Changes

This PR adds an explicit version tag for Docker images built from the main branch. When the workflow runs on the main branch, it will now generate an additional tag in the format main-X.Y.Z (e.g., main-1.2.3).

Benefits

  • Better visibility of the version associated with the main branch image
  • Easier tracking of which version is currently deployed
  • Allows referencing specific version of main builds

Implementation

  • Added a new tag pattern in the docker-publish.yml workflow
  • The tag combines "main-" prefix with the current version number
  • Only applies when building from the main branch and when a version is available

This change complements the previous modifications to include version information inside the Docker images.

Merged by:

@JohanDevl

Release v1.0.14

24 Mar 12:18
fe33614

Choose a tag to compare

Release v1.0.14

This release was automatically generated from PR #26: Add version information to Docker images

Changes included:

Changes

This PR adds version information to Docker images:

  • Added version retrieval step in GitHub workflow to get the latest tag version
  • Pass the version as a build argument to Docker
  • Added ARG and LABEL in Dockerfile to store version information
  • Expose version via environment variable in container
  • Display version on container startup

When a Docker image is published from the main branch, it will include the current project version visible in container metadata and displayed during container startup.

Testing

  • Verified Docker build arguments are correctly passed
  • Verified version information is added to Docker image metadata
  • Verified version is displayed on container startup

Merged by:

@JohanDevl

Release v1.0.13

24 Mar 12:10
3c04b38

Choose a tag to compare

Release v1.0.13

This release was automatically generated from PR #25: Implement automated testing framework (Issue #15)

Changes included:

Description

This PR implements a comprehensive automated testing framework as described in Issue #15.

Changes Made

  • Added Bats testing framework as a Git submodule
  • Created helpers for tests (bats-support, bats-assert, bats-file)
  • Implemented unit tests for all core modules (config, API, data processing)
  • Added integration tests for the export process
  • Created mock API responses to test without actual API calls
  • Added a test runner script with coverage reporting
  • Updated GitHub Actions workflow to run tests during CI/CD
  • Added documentation for the testing framework

Testing

The tests can be run using ./tests/run_tests.sh. For coverage reporting, use ./tests/run_tests.sh coverage.

Documentation

A comprehensive guide to the testing framework has been added in docs/TESTING.md.

Closes #15

Merged by:

@JohanDevl

Release v1.0.12

23 Mar 21:16
193e513

Choose a tag to compare

Release v1.0.12

This release was automatically generated from PR #24: Code Restructuring and Modularization

Changes included:

Description

This PR implements the code restructuring and modularization outlined in issue #12.

The original script was a single monolithic file containing all functionality. This approach made maintenance challenging, limited reusability, and complicated debugging efforts. This PR restructures the codebase to follow a modular pattern, improving maintainability, readability, and extensibility.

Changes

  • Split monolithic script into focused modules with specific responsibilities
  • Created a lib/ directory with 5 specialized modules:
    • config.sh: Configuration management
    • utils.sh: Utility functions and debugging
    • trakt_api.sh: API interaction functions
    • data_processing.sh: Data transformation functions
    • main.sh: Main orchestration module
  • Added new install.sh script for streamlined setup
  • Simplified the main Export_Trakt_4_Letterboxd.sh script
  • Updated README.md to reflect new structure
  • Added detailed documentation in docs/MODULARIZATION.md

Benefits

  • Improved maintainability: Each module has a single responsibility
  • Enhanced testability: Functions are isolated for better testing
  • Better readability: Smaller, focused files
  • Increased extensibility: New features can be added to specific modules
  • Simplified debugging: Issues can be traced to specific modules

The functionality remains intact while providing a more maintainable foundation for future enhancements.

Closes #12

Merged by:

@JohanDevl

Release v1.0.11

22 Mar 11:24
8ee1935

Choose a tag to compare

Release v1.0.11

This release was automatically generated from PR #11: Streamline Docker Release Workflow

Changes included:

Changes

This PR optimizes the GitHub Actions Docker workflow to simplify the release process:

  • Removes redundant release body creation steps
  • Streamlines the workflow for better efficiency
  • Maintains all core functionality for Docker image building and publishing
  • Ensures proper export of Docker images for releases

Technical Details

Based on the latest commit: "Remove redundant release body creation and release job from Docker publish workflow"

These improvements make the workflow more maintainable while preserving all essential functionality.

Merged by:

@JohanDevl