Jarek Kowalski
a8e4d50600
build(deps): upgraded linter to v1.55.2, fixed warnings ( #3611 )
...
* build(deps): upgraded linter to v1.55.2, fixed warnings
* removed unsafe hacks with better equivalents
* test fixes
2024-02-02 23:34:34 -08:00
Jarek Kowalski
c8d1b221e2
refactor(repository): added fs.DirectoryIterator ( #3365 )
...
* refactor(repository): added fs.DirectoryIterator
This significantly reduces number of small allocations while
taking snapshots of lots of files, which leads to faster snapshots.
```
$ runbench --kopia-exe ~/go/bin/kopia \
--compare-to-exe ~/go/bin/kopia-baseline --min-duration 30s \
./snapshot-linux-parallel-4.sh
DIFF duration: current:5.1 baseline:5.8 change:-13.0 %
DIFF repo_size: current:1081614127.6 baseline:1081615302.8 change:-0.0 %
DIFF num_files: current:60.0 baseline:60.0 change:0%
DIFF avg_heap_objects: current:4802666.0 baseline:4905741.8 change:-2.1 %
DIFF avg_heap_bytes: current:737397275.2 baseline:715263289.6 change:+3.1 %
DIFF avg_ram: current:215.0 baseline:211.5 change:+1.6 %
DIFF max_ram: current:294.8 baseline:311.4 change:-5.3 %
DIFF avg_cpu: current:167.3 baseline:145.3 change:+15.1 %
DIFF max_cpu: current:227.2 baseline:251.0 change:-9.5 %
```
* changed `Next()` API
* mechanical move of the iterator to its own file
* clarified comment
* pr feedback
* mechanical move of all localfs dependencies on os.FileInfo to a separate file
* Update fs/entry.go
Co-authored-by: ashmrtn <3891298+ashmrtn@users.noreply.github.com >
* Update fs/entry_dir_iterator.go
Co-authored-by: Julio Lopez <1953782+julio-lopez@users.noreply.github.com >
* doc: clarified valid results from Next()
---------
Co-authored-by: ashmrtn <3891298+ashmrtn@users.noreply.github.com >
Co-authored-by: Julio Lopez <1953782+julio-lopez@users.noreply.github.com >
2023-10-05 02:45:44 +00:00
Jarek Kowalski
cbc66f936d
chore(ci): upgraded linter to 1.53.3 ( #3079 )
...
* chore(ci): upgraded linter to 1.53.3
This flagged a bunch of unused parameters, so the PR is larger than
usual, but 99% mechanical.
* separate lint CI task
* run Lint in separate CI
2023-06-18 13:26:01 -07:00
Denis Voytyuk
5d8e1134c1
test(general): added unit tests for diff ( #2931 )
2023-04-14 19:05:54 -07:00