[Pkg-electronics-devel] Bug#1127368: kicad: KiCad changes files without reason or authorization

Carsten Schoenert c.schoenert at t-online.de
Sun Mar 15 08:21:11 GMT 2026


Hello Matthias,

Am 07.02.26 um 14:28 schrieb Matthias Brennwald:
> KiCad changes files without reason or authorization.
> 
> Steps to reproduce:
> * Open a KiCad file
> * Double click on an element to see details
> * Close the file
> * --> KiCad asks if the changes should be saved, although nothing was 
> changed.
> * --> User clicks "Discard" to prevent changing the file anyway.
> * --> The file gets changed (new timestamp), although KiCad was told to not
> change it.

Has the content of the file changed? I guess no.

If not than the behavior isn't issue and a normal thing that is happen 
due how filesystems do work.

An example.
Given we create a new file 'testfile.txt' and we look at the low level 
file properties which are created by the tool stat.

> $ echo -e "Current time: $(date '+%F %H:%M:%S.%N')\n" && echo "test data" > testfile.txt && LANG= stat testfile.txt
> Current time: 2026-03-15 10:04:20.999735307  <--- The output of the date call.
> 
>   File: testfile.txt   <--- The output of the stat command.
>   Size: 10        	Blocks: 8          IO Block: 4096   regular file
> Device: 259,3	Inode: 1713991     Links: 1
> Access: (0664/-rw-rw-r--)  Uid: ( 1000/ carsten)   Gid: ( 1000/ carsten)
> Access: 2026-03-15 10:04:20.997852751 +0200
> Modify: 2026-03-15 10:04:20.997852751 +0200
> Change: 2026-03-15 10:04:20.997852751 +0200
>  Birth: 2026-03-15 10:04:20.997852751 +0200

You can see the file is created with four dedicated values about 
different times. As the file was just created all the parameters have 
the same timestamp!

Now do just using the cat command, means we will read the file.

> $ echo -e "Current time: $(date '+%F %H:%M:%S.%N')\n" && cat testfile.txt && LANG= stat testfile.txt
> Current time: 2026-03-15 10:04:49.073065930
> 
> test data
>   File: testfile.txt
>   Size: 10        	Blocks: 8          IO Block: 4096   regular file
> Device: 259,3	Inode: 1713991     Links: 1
> Access: (0664/-rw-rw-r--)  Uid: ( 1000/ carsten)   Gid: ( 1000/ carsten)
> Access: 2026-03-15 10:04:49.071198334 +0200  <-----
> Modify: 2026-03-15 10:04:20.997852751 +0200
> Change: 2026-03-15 10:04:20.997852751 +0200
>  Birth: 2026-03-15 10:04:20.997852751 +0200

The timestamp has only changed for the Access entry as it was a read 
only access.

Now open the file in a editor, change nothing but save the file while 
closing.

> $ echo -e "Current time: $(date '+%F %H:%M:%S.%N')\n" && LANG= stat testfile.txt
> Current time: 2026-03-15 10:07:46.117659114
> 
>   File: testfile.txt
>   Size: 10        	Blocks: 8          IO Block: 4096   regular file
> Device: 259,3	Inode: 1713991     Links: 1
> Access: (0664/-rw-rw-r--)  Uid: ( 1000/ carsten)   Gid: ( 1000/ carsten)
> Access: 2026-03-15 10:05:07.320072273 +0200  <-----
> Modify: 2026-03-15 10:05:05.683993944 +0200  <-----
> Change: 2026-03-15 10:05:05.687994136 +0200  <-----
>  Birth: 2026-03-15 10:04:20.997852751 +0200

Now it is visible that the timestamp for the Access, Modify and Change 
has been changed. But the content is still the same.

If you still think the behavior is a bug you will need to address this 
issue upstream, Debian is not doing any special things, we do just 
package the upstream data with just some minor modifications about the 
apptsream data and the string of the Release version.

Further information can be found also here.
https://linuxconfig.org/check-file-access-and-modification-time-in-linux

-- 
Regards
Carsten



More information about the Pkg-electronics-devel mailing list