-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ignore files listed in .mdbookignore during build #2183
base: master
Are you sure you want to change the base?
Conversation
Due to a bug in the `gitignore` create we switched to the `ignore` crate which does also provide more features to filter different files.
Regarding the semver compatibility: Yea, the API can change across semver-incompatible releases, but we have to minimize the semver-incompatible releases because they affect plugins (plugins may need to be updated in order to use the new release). We will eventually plan to release a 0.5 release, which will likely include a variety of API changes, but it will likely be a while before that is ready. In order to avoid waiting for that, you can add new functions and avoid changing existing ones. Any stale functions can be removed in the next semver-breaking release (0.5). |
Hey @egasimus, this problem came up to me again. I've pulled your changes and rebased on the latest master. I've also made you a contributor on my fork, so that we are able to work on the same PR. |
Hey @egasimus and @Bergmann89 , it sounds to me like this PR could get over the finish line if it is "just" changed to avoid the API-breaking change to I'm willing to look into make that additional change here, but I figured I'd ask if either of you two want to take that on first, rather than stepping on your toes. |
Hey @pnkfelix, currently I have no time to work on this, but I've added you as a collaborator to my fork. Feel free to finish the work. Greetings, Bergmann. |
Same here! I can't make the context switch into this right now (dammit >_<), but by all means do proceed @pnkfelix, it would be awesome for anyone to finalize this! 🚀 |
Whats the state of this PR? I sitting in front of the same problem. I am happy to take a look and bring it to the finish line if needed. |
Based on #1908 by @Bergmann89.
This fixes the issues identified by @ehuss, except for the updated
copy_files_except_ext
function:I would like to discuss that.
Agreed, I'd call it just
copy_files
In which case
copy_files_except_ext
would be orphaned within the mdBook codebase - as far as I saw, it has a single caller.Maybe some package that depends on
mdbook
uses this function, maybe none does; information flows the other way, so we have no way of knowing, and no way of addressing that, except, of course, for... semver (which Cargo helpfully enforces).As far as I understand the semver specification, public API can change as long as the change is denoted by incrementing the major version - except in the case of
0.x
versions, where anything goes. Generally, I'm a detractor of using0.x
versions for prolonged periods of time, exactly for this reason.Maybe, after adding much-awaited support for
.mdbookignore
, it would be a good time to release a1.0.0
, and start harnessing the full benefits of the semver standard by tracking breaking changes in the major version? That's what it's for 🤷