libxmp / libxmp/libxmp

Contribution Clarification (xmp_set_row, xmp_add_channels, xmp_move_channels)

Open
#100 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

5.0 API enhancement
Dominant language
C
Stars
392
Forks
82
Avg merge
1d 4h
Merged PRs (30d)
5

Description

Hello. In the never-ending quest to make libxmp perfect, I thought the following functions would be useful (particularly for people writing trackers):

  • xmp_set_row moves current playback position to a specified row; this pairs well with xmp_set_position
  • xmp_add_channels modifies a MOD's number of channels; it is versatile, so as not to clog up libxmp's API
  • xmp_move_channels offers versatility similar to xmp_add_channels

I have already made and tested the functions but have two questions:

  • Are API additions like the above better suited for master or libxmp-devel?
  • Please confirm the process of adding to libxmp's API. I see the following that need to be added: actual code, libxmp.h EXPORT declaration, libxmp.map declaration (under 4.4?), documentation in libxmp.rst, test module in test-dev directory. Did I miss anything?

Perhaps a CONTRIBUTING file could be added that addresses these questions (and any others that may arise in the future).

Thanks for everything and happy tracking!

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the listed API touchpoints—libxmp.h, libxmp.map, libxmp.rst, and the test-dev directory—alongside the proposed CONTRIBUTING file. Determine which contribution questions and API-addition steps need documenting. Done means the process and required files are clearly explained for future contributors.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
developer-experience, documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.