Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
52ed1f9
Rebase: Support importing .one OneNote 2016 files
personalizedrefrigerator Oct 6, 2025
1eb0a60
README: Remove redundant section
personalizedrefrigerator Oct 6, 2025
a4f86d6
Clarify where information from OfficeDev/Interop-TestSuites was used
personalizedrefrigerator Oct 6, 2025
9c6005d
Fix note tag handling
personalizedrefrigerator Oct 6, 2025
dc501d5
Resolve build warnings
personalizedrefrigerator Oct 6, 2025
5c9a520
Reformat
personalizedrefrigerator Oct 6, 2025
58b8fa3
.eslintignore: Ignore auto-generated output
personalizedrefrigerator Oct 6, 2025
6535808
Fix test asset location
personalizedrefrigerator Oct 6, 2025
dd2d92e
Remove duplicate files created by merge
personalizedrefrigerator Oct 6, 2025
e599868
Remove duplicate file
personalizedrefrigerator Oct 6, 2025
68eb887
Partial support for parsing onetoc2 files in the new format
personalizedrefrigerator Oct 6, 2025
382f1c5
Fix typo
personalizedrefrigerator Oct 6, 2025
9625a4e
Update .eslintignore
personalizedrefrigerator Oct 6, 2025
6b52373
Fix convert.rs tests sometimes fail (running in parallel)
personalizedrefrigerator Oct 6, 2025
63b37f0
Fixing test
personalizedrefrigerator Oct 6, 2025
55afb4e
Documentaation
personalizedrefrigerator Oct 6, 2025
4465af2
Refactoring, code quality
personalizedrefrigerator Oct 6, 2025
de61485
Convert DataSignatureGroupDefinitionFND not implemented warning from …
personalizedrefrigerator Oct 6, 2025
06cd007
Code formatting: Run cargo fmt
personalizedrefrigerator Oct 6, 2025
33d6c27
Rust version: Use Rust 2024
personalizedrefrigerator Oct 6, 2025
acbcd85
Re-run cargo fmt after restoring Rust 2024
personalizedrefrigerator Oct 6, 2025
4b0de94
Revert "Re-run cargo fmt after restoring Rust 2024"
personalizedrefrigerator Oct 6, 2025
8c34d1b
Merge branch 'dev' into work/import-onenote-2016
personalizedrefrigerator Oct 7, 2025
fb5bd6d
Testing: Refactor test .one and onetoc2 files to a shared location, f…
personalizedrefrigerator Oct 7, 2025
93f5739
Add a OneNote 2016 test file
personalizedrefrigerator Oct 7, 2025
fe8c94a
Removing debug println!s
personalizedrefrigerator Oct 7, 2025
e627921
Add more logging to help debug "unexpected object type" issues
personalizedrefrigerator Oct 7, 2025
2aa73a0
Add renderer test using sample data
personalizedrefrigerator Oct 7, 2025
9462524
Removing debug logging
personalizedrefrigerator Oct 7, 2025
9939656
Error reporting: Include source file/line in "Unexpected object type"…
personalizedrefrigerator Oct 7, 2025
6186cb2
Add debug logic to warn if a root role is set multiple times
personalizedrefrigerator Oct 7, 2025
db20ded
Convert two todo! macros to "Not supported" warnings
personalizedrefrigerator Oct 7, 2025
f8aa9c2
Resolve TODO comment
personalizedrefrigerator Oct 7, 2025
1e39029
Improve documentation, commenting
personalizedrefrigerator Oct 9, 2025
dc151c3
Merge remote-tracking branch 'upstream/dev' into work/import-onenote-…
personalizedrefrigerator Oct 9, 2025
e76ffdb
WIP: Improve handing of metadata pointing to a version
personalizedrefrigerator Oct 13, 2025
75bd252
Clean up unused code
personalizedrefrigerator Oct 13, 2025
6c7d734
Applying "cargo clippy" suggestions to modified files
personalizedrefrigerator Oct 13, 2025
8ed7610
Remove failing test
personalizedrefrigerator Oct 13, 2025
5ea07ee
Improve debug output
personalizedrefrigerator Oct 13, 2025
1b84873
Improve ID resolution error message
personalizedrefrigerator Oct 13, 2025
b27ceb0
Apply cargo fmt to selected files
personalizedrefrigerator Oct 13, 2025
45996d5
Run the Rust-only tests in CI
personalizedrefrigerator Oct 13, 2025
dabbcab
Revert space-only changes to README.md
personalizedrefrigerator Oct 13, 2025
48a7ed7
Run cargo fmt on files previously changed by this pull request
personalizedrefrigerator Oct 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ plugin_types/
readme/
packages/react-native-vosk/lib/
packages/lib/countable/Countable.js
packages/onenote-converter/pkg/onenote_converter.js
packages/onenote-converter/renderer/pkg/*

# AUTO-GENERATED - EXCLUDED TYPESCRIPT BUILD
packages/app-cli/app/LinkSelector.js
Expand Down
2 changes: 1 addition & 1 deletion packages/onenote-converter/.gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/target
/output
/test-output
/*/test-output

/.idea
*.iml
Expand Down
132 changes: 91 additions & 41 deletions packages/onenote-converter/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

45 changes: 3 additions & 42 deletions packages/onenote-converter/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,42 +1,3 @@
[package]
name = "onenote-converter"
version = "0.0.1"
authors = ["Pedro Luiz <pedrlz.frn@gmail.com>"]
edition = "2024"
description = "Convert Microsoft OneNote® notebooks to HTML"
license = "MPL-2.0-no-copyleft-exception"
repository = "https://github.com/laurent22/joplin"
keywords = ["onenote"]

[dependencies]
askama = "0.14.0"
color-eyre = "0.5"
log = "0.4.11"
mime_guess = "2.0.3"
once_cell = "1.4.1"
palette = "0.5.0"
percent-encoding = "2.1.0"
regex = "1"
sanitize-filename = "0.3.0"
structopt = "0.3"
console_error_panic_hook = "0.1.7"
bytes = "1.2.0"
encoding_rs = "0.8.31"
enum-primitive-derive = "0.2.2"
itertools = "0.10.3"
num-traits = "0.2"
paste = "1.0"
thiserror = "1.0"
uuid = "1.1.2"
widestring = "1.0.2"
wasm-bindgen = "0.2"
lazy_static = "1.4"

[dependencies.web-sys]
version = "0.3"
features = [
"console"
]

[lib]
crate-type = ["cdylib", "lib"]
[workspace]
resolver = "3"
members = ["renderer", "parser", "parser-utils", "parser-macros"]
26 changes: 26 additions & 0 deletions packages/onenote-converter/LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -390,3 +390,29 @@ Permission is hereby granted, free of charge, to any person obtaining a copy of
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

---

Parts of the OneNote converter are based on C# code (ported to Rust) from https://github.com/OfficeDev/Interop-TestSuites/blob/master/FileSyncandWOPI/. The original C# code has the following license:

The MIT License (MIT)

Copyright (c) 2015 Office

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
7 changes: 4 additions & 3 deletions packages/onenote-converter/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@
"version": "3.5.0",
"license": "MPL-2.0-no-copyleft-exception",
"repository": "https://github.com/laurent22/joplin/tree/dev/packages/onenote-converter",
"main": "./pkg/onenote_converter.js",
"main": "./renderer/pkg/renderer.js",
"scripts": {
"build": "node ./build.js --profile=release",
"buildDev": "node ./build.js --profile=dev"
"build": "node ./tools/build.js --profile=release",
"buildDev": "node ./tools/build.js --profile=dev",
"test": "node ./tools/test.js"
},
"devDependencies": {
"wasm-pack": "0.13.1",
Expand Down
12 changes: 12 additions & 0 deletions packages/onenote-converter/parser-macros/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[package]
name = "parser-macros"
version = "0.1.0"
edition = "2024"

[dependencies]
syn = "2.0.106"
quote = "1.0.41"
proc-macro2 = "1.0.101"

[lib]
proc-macro = true
Loading