Commit Graph

168 Commits

Author SHA1 Message Date
Nick Groenen 82b6e597c6
Release v23.12.0 2023-12-03 17:38:24 +01:00
Nick Groenen 90d7dc3cf4
Update make-new-release.sh 2023-12-03 17:35:56 +01:00
Nick Groenen 7bbd211732
Remove leftover `--ignore-frontmatter-keyword` docs reference
An earlier iteration of #163 included this flag, but the final version
only uses `--skip-tags` and `--only-tags`.
2023-12-03 17:21:44 +01:00
Nick Groenen d6f8b4e692
Use cargo-dist to create release artifacts
This will create binaries for more platforms (including ARM builds for
MacOS) and installer scripts in addition to just the binaries themselves.
2023-12-03 17:06:31 +01:00
Nick Groenen ab3fe66d5c
Replace gitchangelog with git-cliff
gitchangelog doesn't look very maintained anymore. Git cliff makes for a
more modern replacement that is a little easier to install as well.
2023-12-03 13:26:35 +01:00
Nick Groenen 151679788a
Fix: trim filenames while resolving wikilinks
Obsidian trims the filename part in a [[WikiLink|label]], so each of
these are equivalent:

[[wikilink]]
[[ wikilink ]]
[[ wikilink |wikilink]]

Obsidian-export now behaves similarly.

Fixes #188
2023-12-02 12:19:16 +01:00
dependabot[bot] 4b88ad2b51 Bump serde_yaml from 0.9.25 to 0.9.27
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.9.25 to 0.9.27.
- [Release notes](https://github.com/dtolnay/serde-yaml/releases)
- [Commits](https://github.com/dtolnay/serde-yaml/compare/0.9.25...0.9.27)

---
updated-dependencies:
- dependency-name: serde_yaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-02 11:42:43 +01:00
dependabot[bot] c7e0196fbe Bump eyre from 0.6.8 to 0.6.9
Bumps [eyre](https://github.com/eyre-rs/eyre) from 0.6.8 to 0.6.9.
- [Commits](https://github.com/eyre-rs/eyre/compare/v0.6.8...eyre@0.6.9)

---
updated-dependencies:
- dependency-name: eyre
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-02 11:42:31 +01:00
dependabot[bot] ede7a06c24 Bump tempfile from 3.8.0 to 3.8.1
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.8.0 to 3.8.1.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/commits)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-02 11:31:39 +01:00
dependabot[bot] f3d063aab4 Bump slug from 0.1.4 to 0.1.5
Bumps [slug](https://github.com/Stebalien/slug-rs) from 0.1.4 to 0.1.5.
- [Commits](https://github.com/Stebalien/slug-rs/compare/v0.1.4...v0.1.5)

---
updated-dependencies:
- dependency-name: slug
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-02 11:31:24 +01:00
dependabot[bot] 06b2a3d6a4 Bump ignore from 0.4.20 to 0.4.21
Bumps [ignore](https://github.com/BurntSushi/ripgrep) from 0.4.20 to 0.4.21.
- [Release notes](https://github.com/BurntSushi/ripgrep/releases)
- [Changelog](https://github.com/BurntSushi/ripgrep/blob/master/CHANGELOG.md)
- [Commits](https://github.com/BurntSushi/ripgrep/commits)

---
updated-dependencies:
- dependency-name: ignore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-02 11:30:54 +01:00
dependabot[bot] 0606eca6de Bump pulldown-cmark-to-cmark from 11.0.0 to 11.0.2
Bumps [pulldown-cmark-to-cmark](https://github.com/Byron/pulldown-cmark-to-cmark) from 11.0.0 to 11.0.2.
- [Release notes](https://github.com/Byron/pulldown-cmark-to-cmark/releases)
- [Changelog](https://github.com/Byron/pulldown-cmark-to-cmark/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Byron/pulldown-cmark-to-cmark/compare/v11.0.0...v11.0.2)

---
updated-dependencies:
- dependency-name: pulldown-cmark-to-cmark
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-02 11:30:44 +01:00
dependabot[bot] d3b1bd412e Bump percent-encoding from 2.3.0 to 2.3.1
Bumps [percent-encoding](https://github.com/servo/rust-url) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/servo/rust-url/releases)
- [Commits](https://github.com/servo/rust-url/compare/v2.3.0...v2.3.1)

---
updated-dependencies:
- dependency-name: percent-encoding
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-02 11:30:31 +01:00
Martin Heuschober 018c9606a6
Implement frontmatter based filtering (#163)
This allows limiting the notes that will be exported using `--skip-tags` and `--only-tags`

---------

Co-authored-by: Martin Heuschober <martin.heuschober@posteo.net>
Co-authored-by: Nick Groenen <nick@groenen.me>
Co-authored-by: Martin Heuschober <martin_heuschober@trimble.com>
2023-12-02 11:29:29 +01:00
dependabot[bot] eb4c009207 Bump rustix from 0.38.14 to 0.38.19
Bumps [rustix](https://github.com/bytecodealliance/rustix) from 0.38.14 to 0.38.19.
- [Release notes](https://github.com/bytecodealliance/rustix/releases)
- [Commits](https://github.com/bytecodealliance/rustix/compare/v0.38.14...v0.38.19)

---
updated-dependencies:
- dependency-name: rustix
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-20 15:53:51 +02:00
dependabot[bot] 4e99f03a1f Bump regex from 1.9.6 to 1.10.2
Bumps [regex](https://github.com/rust-lang/regex) from 1.9.6 to 1.10.2.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.9.6...1.10.2)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-17 09:47:38 +02:00
dependabot[bot] a791273d12 Bump actions/setup-python from 3 to 4
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-06 16:49:13 +02:00
dependabot[bot] 97958f81c5 Bump regex from 1.9.5 to 1.9.6
Bumps [regex](https://github.com/rust-lang/regex) from 1.9.5 to 1.9.6.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.9.5...1.9.6)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-06 16:48:57 +02:00
Nick Groenen 8ace49ded3
Merge branch 'pre-commit' 2023-09-26 09:13:16 +02:00
Nick Groenen 4c74371b9e
Use /bin/bash when generating README
set -o pipefail is a bashism that not all shells support. Notably, this
fails with the default /bin/sh on GitHub Actions Linux runners
2023-09-26 09:08:56 +02:00
Nick Groenen 5985ad70d6
Run pre-commit on GitHub Actions 2023-09-26 09:06:19 +02:00
Nick Groenen 3d98d65403
Add additional common pre-commit-hooks
I have these hooks enabled on many of my projects, but for some reason
forgot them here which led to the issue described in
https://github.com/zoni/obsidian-export/pull/181

This should help prevent that from happening again.
2023-09-26 08:48:06 +02:00
Nick Groenen 06191eb66e
Regenerate README 2023-09-26 08:45:14 +02:00
Robert Sesek 43d90d7879 Rename docs/contibuting.md to docs/contribute.md
On case-insensitive filesystems, the part file conflicts with the
docs/CONTRIBUTING.md symlink.
2023-09-26 08:42:16 +02:00
Robert Sesek cd5dbf6c3b Add a lifetime annotation to the Postprocesor type
This lets the compiler reason about the lifetimes of objects used by the
postprocessor, if the callback captures variables.

See zoni/obsidian-export#175
2023-09-25 21:50:34 +02:00
Nick Groenen c27d7b96b6
Optimize GitHub Actions workflows
Most notably:

- Stop using unmaintained setup-rust action
- Cache cargo and target directories
- Use sccache (https://github.com/mozilla/sccache/)
2023-09-24 12:15:18 +02:00
Nick Groenen b38e4d53b5
Remove changelog from main README file 2023-09-24 12:14:47 +02:00
Nick Groenen b28e4913ee
Relicense to BSD-2-Clause Plus Patent License
This license achieves everything that dual-licensing under MIT + Apache
aims for, but without the weirdness of being under two licenses.

Having checked external contributions, I feel pretty confident that I
can unilaterally make this license change, as people have only
contributed a handful of one-line changes of no significance towards
copyrighted work up to this point.
2023-09-24 12:05:15 +02:00
Nick Groenen f72ef651c0
Update transient dependencies
crates.io index
    crossbeam-deque v0.8.1 -> v0.8.3
    crossbeam-epoch v0.9.5 -> v0.9.15
    crossbeam-utils v0.8.12 -> v0.8.16
    deunicode v0.4.3 -> v0.4.4
    diff v0.1.12 -> v0.1.13
    either v1.6.1 -> v1.9.0
    futures v0.3.25 -> v0.3.28
    futures-channel v0.3.25 -> v0.3.28
    futures-core v0.3.25 -> v0.3.28
    futures-executor v0.3.25 -> v0.3.28
    futures-io v0.3.25 -> v0.3.28
    futures-macro v0.3.25 -> v0.3.28
    futures-sink v0.3.25 -> v0.3.28
    futures-task v0.3.25 -> v0.3.28
    futures-util v0.3.25 -> v0.3.28
    heck v0.4.0 -> v0.4.1
    itoa v1.0.4 -> v1.0.9
    log v0.4.14 -> v0.4.20
    memoffset v0.6.5 -> v0.9.0
    once_cell v1.9.0 -> v1.18.0
    pin-project-lite v0.2.9 -> v0.2.13
    ryu v1.0.11 -> v1.0.15
    scopeguard v1.1.0 -> v1.2.0
    semver v1.0.14 -> v1.0.19
    serde v1.0.147 -> v1.0.188
    serde_derive v1.0.188
    slab v0.4.7 -> v0.4.9
    syn v1.0.104 -> v1.0.109
    thread_local v1.1.4 -> v1.1.7
    tinyvec_macros v0.1.0 -> v0.1.1
    unicase v2.6.0 -> v2.7.0
    unicode-ident v1.0.5 -> v1.0.12
    unicode-width v0.1.10 -> v0.1.11
    winapi-util v0.1.5 -> v0.1.6
2023-09-23 10:42:07 +02:00
dependabot[bot] 143f4fe1cd
Bump rayon from 1.6.0 to 1.8.0 (#174) 2023-09-23 08:23:09 +00:00
dependabot[bot] 33707d67a5
Bump walkdir from 2.3.2 to 2.4.0 (#173) 2023-09-23 08:22:38 +00:00
dependabot[bot] 88b2378862
Bump regex from 1.9.4 to 1.9.5 (#178)
Bumps [regex](https://github.com/rust-lang/regex) from 1.9.4 to 1.9.5.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.9.4...1.9.5)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-23 09:39:47 +02:00
dependabot[bot] 52d400ff01
Bump rstest from 0.17.0 to 0.18.2 (#179) 2023-09-23 07:39:37 +00:00
dependabot[bot] b67aef7cdc
Bump actions/checkout from 3 to 4 (#177) 2023-09-23 07:38:42 +00:00
dependabot[bot] d76bbdb3b7
Bump ignore from 0.4.18 to 0.4.20 (#145) 2023-09-22 09:59:06 +00:00
dependabot[bot] 0dd235279e
Bump pulldown-cmark from 0.9.2 to 0.9.3 (#165) 2023-09-22 09:46:48 +00:00
dependabot[bot] e197ac3408
Bump tempfile from 3.3.0 to 3.8.0 (#172) 2023-09-22 09:43:56 +00:00
dependabot[bot] 33c57f2322
Bump snafu from 0.7.3 to 0.7.5 (#164) 2023-09-22 09:43:30 +00:00
dependabot[bot] ae87431847
Bump pulldown-cmark-to-cmark from 10.0.4 to 11.0.0 (#168) 2023-09-22 09:42:21 +00:00
dependabot[bot] 942b954a48
Bump serde_yaml from 0.9.14 to 0.9.25 (#167) 2023-09-22 09:39:01 +00:00
dependabot[bot] 277e057191
Bump rstest from 0.16.0 to 0.17.0 (#166) 2023-09-22 09:35:03 +00:00
dependabot[bot] 90573cab3e
Bump regex from 1.7.0 to 1.9.4 (#170) 2023-09-22 09:32:44 +00:00
dependabot[bot] 29772f8f5c
Bump percent-encoding from 2.2.0 to 2.3.0 (#171) 2023-09-22 09:32:25 +00:00
dependabot[bot] 303e2053be
Bump pretty_assertions from 1.3.0 to 1.4.0 (#169) 2023-09-22 09:31:11 +00:00
Nick Groenen cb6abedcad
Fix code coverage CI failures 2023-09-22 11:20:32 +02:00
Nick Groenen 4b636c4402
Fix 4 new clippy lints 2023-09-22 11:16:29 +02:00
dependabot[bot] 80130260e9
Bump rstest from 0.15.0 to 0.16.0 (#135)
Bumps [rstest](https://github.com/la10736/rstest) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/la10736/rstest/releases)
- [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/la10736/rstest/compare/0.15.0...0.16.0)

---
updated-dependencies:
- dependency-name: rstest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-29 10:54:47 +01:00
dependabot[bot] 500f0fb86b
Bump rayon from 1.5.3 to 1.6.0 (#134)
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.5.3 to 1.6.0.
- [Release notes](https://github.com/rayon-rs/rayon/releases)
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/v1.5.3...rayon-core-v1.6.0)

---
updated-dependencies:
- dependency-name: rayon
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-29 10:54:28 +01:00
Nick Groenen 83ab69aedd
Release v22.11.0 2022-11-19 17:12:13 +01:00
Nick Groenen b5b2ea2c3b
New: apply unicode normalization while resolving notes
The unicode standard allows for certain (visually) identical characters to
be represented in different ways.

For example the character ä may be represented as a single combined
codepoint "Latin Small Letter A with Diaeresis" (U+00E4) or by the
combination of "Latin Small Letter A" (U+0061) followed by "Combining
Diaeresis" (U+0308).

When encoded with UTF-8, these are represented as respectively the two
bytes 0xC3 0xA4, and the three bytes 0x61 0xCC 0x88.

A user linking to notes with these characters in their titles would
expect these two variants to link to the same file, given they are
visually identical and have the exact same semantic meaning.

The unicode standard defines a method to deconstruct and normalize these
forms, so that a byte comparison on the normalized forms of these
variants ends up comparing the same thing. This is called Unicode
Normalization, defined in Unicode® Standard Annex #15
(http://www.unicode.org/reports/tr15/).

The W3C Working Group has written an excellent explanation of the
problems regarding string matching, and how unicode normalization helps
with this process: https://www.w3.org/TR/charmod-norm/#unicodeNormalization

With this change, obsidian-export will perform unicode normalization
(specifically the C (or NFC) normalization form) on all note titles
while looking up link references, ensuring visually identical links are
treated as being similar, even if they were encoded as different
variants.

A special thanks to Hans Raaf (@oderwat) for reporting and helping track
down this issue.

---

Closes #126
2022-11-19 16:58:48 +01:00