Skip to content

Releases: JohanDevl/Export_Trakt_4_Letterboxd

Release v1.0.10

22 Mar 11:20
20abf61

Choose a tag to compare

Release v1.0.10

This release was automatically generated from PR #10: Improve GitHub Actions release workflow

Changes included:

Changes

This PR improves the GitHub Actions workflow to create a single release when merging to main:

  • Creates a single release per merged PR
  • Automatically includes PR description in the release notes
  • Exports Docker image as a release asset
  • Fixes context access issues by using file-based approach for release body creation

Technical Details

  • Added step to fetch PR information when merging to main
  • Replaced environment variable usage with file-based approach
  • Added step to create a properly formatted release body
  • Configures the release to be created only on merges to main branch

These changes ensure we have a single, well-documented release for each merged PR with the Docker image included as an asset.

Merged by:

@JohanDevl

Release v1.0.9

22 Mar 10:50
9af384b

Choose a tag to compare

Release v1.0.9

This release was automatically generated from PR #9: Fix CSV Export Format and Docker Option Handling

Changes included:

Problems Solved

This PR addresses several issues and adds new features:

  1. The Docker container did not correctly process the export options
  2. The CSV file format needed to be corrected to match Letterboxd requirements
  3. Added a Rewatch column to indicate movies that have been watched multiple times

Changes Made

Docker-related fixes:

  1. Modified the Dockerfile to set EXPORT_OPTION=\"normal\" as the default value (changed from "complete")
  2. Added debugging information to help diagnose option processing issues
  3. Simplified the export option handling in the script

CSV Export Fixes:

  1. Corrected the CSV format to match Letterboxd import requirements with headers: Title, Year, imdbID, tmdbID, WatchedDate, Rating10
  2. Fixed the date format in the output to use YYYY-MM-DD format instead of the full ISO timestamp
  3. Corrected the IMDB ID prefix handling to prevent duplicate "tt" prefixes (tttt→tt)
  4. Ensured proper quoting of movie titles in the CSV output

New Feature - Rewatch Column:

  1. Added a Rewatch column that indicates whether a movie has been watched multiple times (true) or only once (false)
  2. Used data from the watched_movies.json file to determine the number of viewings
  3. Fixed a bug related to movies without IMDb IDs (null values)

Impact

  • The CSV file now correctly matches Letterboxd's import format
  • Docker containers use the "normal" export option by default for smaller output
  • More reliable CSV file generation during scheduled executions
  • Better debug information when troubleshooting export problems
  • Better utilization of Trakt data to enrich the Letterboxd import file

Testing

These changes have been tested by manually running the Docker container and verifying that the options are correctly processed, producing correctly formatted CSV files.

When merging this PR, the Docker image will be automatically built with these fixes applied.

Merged by:

@JohanDevl

Release v1.0.8

18 Mar 06:54
c9e2963

Choose a tag to compare

Release v1.0.8

This release was automatically generated from PR #8: Add README badges and Docker image to GitHub releases

Changes included:

Problem Solved

This PR adds project badges to README.md and implements GitHub release functionality that automatically attaches the Docker image as a release asset when merges to the main branch occur.

Changes Made

  1. Added multiple badges to README.md to provide better project status visibility:

    • GitHub release badge
    • Stars and issues counters
    • License badge
    • Docker build status
    • Docker package link
    • Repository size badge
    • Trakt.tv and Letterboxd badges
  2. Modified GitHub Actions workflow to:

    • Export the Docker image as a tarball
    • Create a GitHub release when code is merged into main branch
    • Attach the Docker image as a release asset
    • Add instructions for using the Docker image in the release notes

Impact

  • Improved README presentation with informative badges
  • Automated GitHub releases with properly versioned tags
  • Made Docker images directly downloadable as release assets
  • Added clear instructions for Docker image usage in release notes

Testing

These changes don't affect the core functionality of the application. The workflow changes will be tested automatically on the next merge to the main branch.

Merged by:

@JohanDevl

Release v1.0.7

18 Mar 06:34
0e2aa3c

Choose a tag to compare

Release v1.0.7

This release was automatically generated from PR #7: Fix Docker permissions for CSV file export

Changes included:

Problem Solved

This PR resolves an issue where the letterboxd_import.csv file was not being properly created or updated when running in Docker.

Changes Made

  1. Updated the Dockerfile to explicitly set directory permissions (chmod 777) on volume-mounted folders.
  2. Modified docker-entrypoint.sh to ensure permissions are correct at container startup.
  3. Added a GitHub Actions workflow to deploy a GitHub Pages site.

Impact

  • The script now runs correctly
  • The CSV file is generated in the /app/copy directory of the container
  • The file is properly synchronized with the host's copy/ directory thanks to the mounted volume
  • The file permissions (-rwxrwxrwx) allow all users to read and modify it

Merged by:

@JohanDevl

Release v1.0.6

10 Mar 11:34
7f54ba8

Choose a tag to compare

Release v1.0.6

This release was automatically generated from PR #6: Exclude Markdown files from triggering GitHub Actions workflows

Changes included:

Pull Request: Exclude Markdown files from triggering GitHub Actions workflows

Description

This Pull Request modifies the GitHub Actions workflows to prevent them from being triggered when only Markdown files (.md), documentation files in the docs/ directory, or the LICENSE file are changed. This optimization helps conserve GitHub Actions minutes and speeds up the development process for documentation-only changes.

Changes

  • Added paths-ignore configuration to all three workflow files:
    • docker-test.yml
    • docker-publish.yml
    • auto-tag.yml
  • Configured each workflow to ignore:
    • All Markdown files (**/*.md)
    • All files in the documentation directory (docs/**)
    • The LICENSE file

Motivation

When making documentation-only changes, there's no need to run the full CI/CD pipeline, including Docker image builds and tests. This change makes the development workflow more efficient by skipping unnecessary builds and tests when only documentation is modified.

Testing

The changes have been tested by verifying that:

  • The syntax of the workflow files is valid
  • The paths-ignore patterns correctly match the intended files
  • The configuration is consistent across all workflow files

Related Issues

This change addresses the need to optimize GitHub Actions usage and improve the development workflow for documentation updates.

Additional Notes

After this change, you can freely update documentation without triggering the CI/CD pipeline. If you need to force a workflow run for documentation changes, you can make a small non-documentation change or manually trigger the workflow from the GitHub Actions UI.

Merged by:

@JohanDevl

Release v1.0.5

10 Mar 11:22
6b5957c

Choose a tag to compare

Release v1.0.5

This release was automatically generated from PR #5: Change 'complet' to 'complete' for consistency

Changes included:

Pull Request: Change 'complet' to 'complete' for consistency

Description

This Pull Request changes the French term "complet" to its English equivalent "complete" throughout the codebase for better linguistic consistency and to fix issues with the complete export option.

Changes

  • Modified Export_Trakt_4_Letterboxd.sh to use "complete" instead of "complet" in conditional statements
  • Updated docker-entrypoint.sh help message to display "complete" instead of "complet"
  • Updated documentation in README.md to reflect the correct option name
  • Updated export option descriptions in CONFIGURATION.md and DOCKER_USAGE.md

Motivation

The codebase was inconsistently using both "complet" (French) and "complete" (English) in different places, which could cause confusion and potential bugs when users tried to use the complete export option. This PR standardizes on the English term "complete" throughout the codebase.

Testing

  • Verified that the "complete" export option works correctly
  • Confirmed that all documentation consistently refers to the option as "complete"
  • Tested that the Docker container correctly displays "complete" in the help message

Related Issues

Fixes an inconsistency where the export option was referred to as both "complet" and "complete" in different parts of the codebase.

Merged by:

@JohanDevl

Release v1.0.4

10 Mar 10:52
1bacb98

Choose a tag to compare

Release v1.0.4

This release was automatically generated from PR #4: Documentation Improvements and Docker Issue Fixes

Changes included:

Summary of Changes

This PR includes several important improvements to the documentation and fixes various Docker-related issues.

1. Documentation Reorganization

  • Simplified README.md: The README has been significantly streamlined to contain only essential information, making it more accessible to new users.
  • Detailed Documentation Creation: Added two new documentation files in the docs/ folder:
    • CONFIGURATION.md: Detailed guide on configuration and basic usage
    • DOCKER_USAGE.md: Comprehensive guide on Docker usage

2. Docker Fixes

  • Configuration File Management: Modified the docker-entrypoint.sh script to dynamically create the .config.cfg.example file in the config/ folder at container startup.
  • Container Persistence: Fixed the issue where the container would stop immediately after startup by using tail -f /dev/null to keep the process alive.
  • Structure Simplification: Removed unnecessary copying of the configuration file to the container root, keeping everything in the config/ folder.
  • Configuration Harmonization: Aligned the configuration file format and variable names between the example file and the actual implementation to ensure consistency.

3. Configuration Script Enhancement

  • Added Trakt Username: Modified the setup_trakt.sh script to prompt for and save the Trakt username during configuration.
  • Variable Name Consistency: Ensured that variable names are consistent between the configuration file and the scripts that use them.

4. Testing Workflow Improvements

  • Fixed Docker Testing Workflow: Resolved issues in the GitHub Actions workflow that tests the Docker image:
    • Fixed the error where the container would exit with code 137
    • Modified the test approach to avoid running the entrypoint script directly
    • Added better error handling and fallbacks

Impact of Changes

These modifications significantly improve the user experience by:

  • Making documentation clearer and better organized
  • Resolving Docker container startup and shutdown issues
  • Simplifying the configuration process
  • Ensuring consistency between configuration files and scripts
  • Making the testing workflow more reliable

Tests Performed

  • Verified dynamic creation of the configuration file
  • Tested Docker container persistence
  • Validated the configuration process with Trakt username
  • Confirmed that the Docker testing workflow runs successfully

Detailed Changes

  1. README.md: Simplified and reorganized, with detailed information moved to dedicated documentation files.
  2. docker-entrypoint.sh:
    • Updated to create a consistent configuration example file
    • Modified to keep the container running with tail -f /dev/null
  3. setup_trakt.sh:
    • Updated to use consistent variable names (USERNAME instead of TRAKT_USERNAME)
  4. docker-test.yml:
    • Fixed to prevent infinite loops and exit code 137 errors
    • Improved error handling and test reliability
  5. New Documentation Files:
    • Added detailed guides for configuration and Docker usage

Merged by:

@JohanDevl

Release v1.0.3

09 Mar 22:34
2631889

Choose a tag to compare

Release v1.0.3

This release was automatically generated from PR #3: Documentation Improvements and Docker Issue Fixes

Changes included:

Summary of Changes

This PR brings several important improvements to the documentation and fixes Docker-related issues.

1. Documentation Reorganization

  • Simplified README.md: The README has been significantly streamlined to contain only essential information, making it more accessible to new users.
  • Detailed Documentation Creation: Added two new documentation files in the docs/ folder:
    • CONFIGURATION.md: Detailed guide on configuration and basic usage
    • DOCKER_USAGE.md: Comprehensive guide on Docker usage

2. Docker Fixes

  • Configuration File Management: Modified the docker-entrypoint.sh script to dynamically create the .config.cfg.example file in the config/ folder at container startup.
  • Container Persistence: Fixed the issue where the container would stop immediately after startup by using tail -f /dev/null to keep the process alive.
  • Structure Simplification: Removed unnecessary copying of the configuration file to the container root, keeping everything in the config/ folder.

3. Configuration Script Enhancement

  • Added Trakt Username: Modified the setup_trakt.sh script to prompt for and save the Trakt username during configuration.

Impact of Changes

These modifications significantly improve the user experience by:

  • Making documentation clearer and better organized
  • Resolving Docker container startup and shutdown issues
  • Simplifying the configuration process

Tests Performed

  • Verified dynamic creation of the configuration file
  • Tested Docker container persistence
  • Validated the configuration process with Trakt username

Screenshots (if applicable)

N/A

Merged by:

@JohanDevl

Release v1.0.2

09 Mar 21:40
7a811cb

Choose a tag to compare

Release v1.0.2

This release was automatically generated from PR #2: Docker Implementation with Enhanced Cron Functionality

Changes included:

Docker Implementation with Enhanced Features

Overview

This PR implements comprehensive Docker support with automated cron job functionality, improved testing, and enhanced CI/CD capabilities for the Trakt to Letterboxd export process. The implementation focuses on reliability, user experience, and proper testing to ensure smooth operation in containerized environments.

Key Features

Docker Implementation

  • Created a robust Docker setup using Alpine Linux for minimal image size
  • Implemented proper volume management for persistent data storage
  • Added configuration handling with dedicated config directory
  • Modified scripts to work correctly in containerized environments
  • Added comprehensive documentation for Docker usage

Cron Job Automation

  • Implemented configurable cron scheduling via environment variables
  • Created a wrapper script with detailed logging capabilities
  • Added user-friendly log messages with emojis and timestamps
  • Ensured proper error handling and reporting
  • Configured dual logging (container stdout and detailed log file)

CI/CD Enhancements

  • Added GitHub Actions workflow for Docker image building and publishing
  • Implemented automatic tagging with latest and develop tags
  • Created automated Docker testing workflow for Pull Requests
  • Added automatic version tagging when PRs are merged
  • Configured comprehensive test suite for Docker images

Documentation

  • Updated README with detailed Docker usage instructions
  • Added cron job configuration examples
  • Created troubleshooting section for common issues
  • Added GitHub Actions workflow documentation
  • Created Docker testing documentation
  • Implemented MIT license

Testing

The implementation has been thoroughly tested with:

  • Automated Docker image tests
  • Various export options and cron schedules
  • Volume mounting and configuration handling
  • Docker Compose validation

All components function as expected, with proper logging and error handling.

Documentation

New documentation files:

  • docs/GITHUB_ACTIONS.md: Details on the GitHub Actions workflows
  • docs/AUTO_TAGGING.md: Information on automatic version tagging
  • docs/DOCKER_TESTING.md: Documentation on Docker testing workflow

This PR is ready for review and should be merged into the main branch to provide users with Docker support, automated export capabilities, and improved CI/CD features.

Merged by:

@JohanDevl

Release v1.0.1

09 Mar 21:13
7d20695

Choose a tag to compare

Release v1.0.1

This release was automatically generated from PR #1: Docker Implementation with Enhanced Cron Functionality

Changes included:

Docker Implementation with Enhanced Cron Functionality

Overview

This PR implements comprehensive Docker support with automated cron job functionality for the Trakt to Letterboxd export process. The implementation focuses on reliability, user experience, and proper logging to ensure smooth operation in containerized environments.

Key Features

Docker Implementation

  • Created a robust Docker setup using Alpine Linux for minimal image size
  • Implemented proper volume management for persistent data storage
  • Added configuration handling with dedicated config directory
  • Modified scripts to work correctly in containerized environments
  • Added comprehensive documentation for Docker usage

Cron Job Automation

  • Implemented configurable cron scheduling via environment variables
  • Created a wrapper script with detailed logging capabilities
  • Added user-friendly log messages with emojis and timestamps
  • Ensured proper error handling and reporting
  • Configured dual logging (container stdout and detailed log file)

Documentation

  • Updated README with detailed Docker usage instructions
  • Added cron job configuration examples
  • Created troubleshooting section for common issues
  • Added GitHub Actions workflow documentation
  • Implemented MIT license

CI/CD

  • Tagged development version for automated builds
  • Configured GitHub Actions workflow for container publishing

Merged by:

@JohanDevl