release 3.18.2

This commit is contained in:
Callum Alpass 2025-08-11 10:34:55 +10:00
parent 89f27650c5
commit 4447491207
6 changed files with 288 additions and 209 deletions

45
copy-files.mjs Normal file
View file

@ -0,0 +1,45 @@
#!/usr/bin/env node
import { copyFile, mkdir, access, constants } from 'fs/promises';
import { join, resolve } from 'path';
// Default copy destination - can be overridden with OBSIDIAN_PLUGIN_PATH environment variable
const defaultPath = '/mnt/c/Users/Admin/Documents/testvault/test/.obsidian/plugins/tasknotes';
const copyPath = process.env.OBSIDIAN_PLUGIN_PATH || defaultPath;
// Files to copy after build
const files = ['main.js', 'styles.css', 'manifest.json'];
async function copyFiles() {
try {
// Resolve the destination path
const destPath = resolve(copyPath);
// Create the directory if it doesn't exist
// Check each file exists before copying
const copyPromises = files.map(async (file) => {
try {
await access(file, constants.F_OK);
const destFile = join(destPath, file);
await copyFile(file, destFile);
console.log(`✅ Copied ${file}`);
} catch (err) {
if (err.code === 'ENOENT') {
console.warn(`⚠️ Warning: ${file} not found, skipping`);
} else {
throw new Error(`Failed to copy ${file}: ${err.message}`);
}
}
});
await Promise.all(copyPromises);
console.log(`✅ Files copied to: ${destPath}`);
} catch (error) {
console.error('❌ Failed to copy files:', error.message);
process.exit(1);
}
}
copyFiles();

View file

@ -6,6 +6,10 @@ Welcome to the TaskNotes release notes. Here you can find detailed information a
### Version 3.x (Current)
- [3.18.2](releases/3.18.2.md)
- [3.18.1](releases/3.18.1.md)
- [3.18.0](releases/3.18.0.md)
- [3.17.1](releases/3.17.1.md)
- [3.17.0](releases/3.17.0.md)
- [3.16.4](releases/3.16.4.md)
- [3.16.3](releases/3.16.3.md)

46
docs/releases/3.18.2.md Normal file
View file

@ -0,0 +1,46 @@
# TaskNotes 3.18.2
## Bug Fixes
### Timeblock Date Shift Issue (#368)
Fixed timeblocks appearing one day earlier than expected by implementing the UTC Anchor pattern throughout the timeblocking feature. The previous implementation used problematic millisecond-based date iteration that caused timezone-dependent date shift bugs.
Timeblocks now appear on the correct calendar day regardless of user timezone or DST transitions.
*Thanks to @zolotyh-dk for reporting this issue with detailed screenshots and system information.*
### Performance Issues with Task Views
Eliminated typing lag that occurred when Task, Agenda, and Kanban views were open in large vaults. The plugin was triggering unnecessary view updates during text editing.
## New Features
### Enhanced Filename Template Variables (#370)
Added new timestamp variables for filename templates to support ISO 8601 formats and Google Keep compatibility:
- `{milliseconds}`, `{ms}` - 3-digit milliseconds (000-999)
- `{timezone}`, `{utcOffset}` - UTC offset in ±HH:MM format
- `{timezoneShort}`, `{utcOffsetShort}` - UTC offset in ±HHMM format
*Thanks to @mnipritom for requesting these variables*.
### Boolean Property Identification
Enhanced property-based task identification to handle boolean values correctly. Tasks can now be identified using boolean properties in frontmatter.
*A big thanks to @renatomen for contributing the boolean property identification implementation, documentation, and test coverage*
### Boolean Status Field Support (#108)
Added automatic boolean conversion for status values to support Obsidian's checkbox property format. The status field now handles boolean true/false values:
- String "true" → boolean true (in frontmatter)
- String "false" → boolean false (in frontmatter)
- Boolean true → string "true" (when read back)
- Boolean false → string "false" (when read back)
- Other status values remain unchanged as strings
*Thanks to @arminta7 for reporting the checkbox property compatibility issue and @imed-ghomari for contributing to the discussion on status field handling.*
*And thanks again to @renatomen--the boolean property identification fix inspired this change!*

View file

@ -1,7 +1,7 @@
{
"id": "tasknotes",
"name": "TaskNotes",
"version": "3.18.1",
"version": "3.18.2",
"minAppVersion": "1.0.0",
"description": "Note-based task management with calendar, pomodoro and time-tracking integration.",
"author": "Callum Alpass",

View file

@ -1,6 +1,6 @@
{
"name": "tasknotes",
"version": "3.18.1",
"version": "3.18.2",
"description": "Note-based task management with calendar, pomodoro and time-tracking integration.",
"main": "main.js",
"scripts": {

File diff suppressed because it is too large Load diff