Skip to content

Licensing consideration with extract-msg dependency #50

@luchaf

Description

@luchaf

Hi @fleetingbytes,

First, thank you once again for your helpfulness with the licensing clarification in issue #46. Your quick response and willingness to update the LICENSE file was really appreciated.

I wanted to bring up another licensing-related topic I stumbled upon while working with rtfparse. I noticed that the extract-msg library that rtfparse depends on is licensed under GPL3, which creates a licensing compatibility challenge. When GPL3 code is included as a dependency, it effectively requires any distributed software containing it to comply with GPL3 terms, which conflicts with the MIT license's permissive nature.

Looking at the codebase, I see that extract-msg is used specifically for handling MSG files in the CLI, which appears to be separate from the core RTF parsing functionality that makes rtfparse so valuable.
Would you be willing to consider removing the extract-msg dependency to maintain clear MIT licensing throughout the project?

This would:

  • Ensure rtfparse remains fully MIT-licensed without any GPL3 restrictions
  • Simplify the dependency tree
  • Keep the library focused on its core strength of RTF parsing
  • Make it easier for organizations to adopt rtfparse without licensing concerns

I understand that MSG support might be useful for some workflows, but users who need to process MSG files could use extract-msg directly for that specific use case, while rtfparse could focus on being the best RTF parsing solution.

I really appreciate rtfparse and the work you've put into it. This licensing clarity would help ensure more organizations can confidently use your excellent RTF parsing library.

Would you be open to this change? I'd be happy to submit a PR removing the MSG-related functionality if that would be helpful.
Thank you for considering this!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions