Skip to content

Commit

Permalink
News and bump
Browse files Browse the repository at this point in the history
  • Loading branch information
Eliot McIntire committed Jan 14, 2025
1 parent 3e49968 commit 5006a18
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 2 deletions.
4 changes: 2 additions & 2 deletions DESCRIPTION
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ SystemRequirements: 'unrar' (Linux/macOS) or '7-Zip' (Windows) to work with '.ra
URL:
https://reproducible.predictiveecology.org,
https://github.com/PredictiveEcology/reproducible
Date: 2025-01-11
Version: 2.1.2.9003
Date: 2025-01-13
Version: 2.1.2.9004
Authors@R:
c(person(given = "Eliot J B",
family = "McIntire",
Expand Down
24 changes: 24 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,27 @@
# reproducible 3.0.0

* many edge cases were found that were not correctly Cached. This resulted in 2 major changes: rewrite of `Cache`
and modified `digest` of the arguments. These changes are not backwards compatible. Details next.
* near complete rewrite of `Cache` so it is simpler and more robust.
The main function is now 130 lines, instead of almost 700.
* In addition to full rewrites, numerous simplifications throughout code that is still being used;
* Fixes to several ongoing "edge cases" that were difficult to address, mostly focused around deeply nested objects
that are file-backed with pointers, such `terra::SpatRaster` class;
* `digest` changes include the following fixes:
- lists would be digested without their top-level names; thus two lists with
exactly the same elements but with and without names would have the same digest
- file-backed objects were not correctly unique in the cache as they did not have
the `cacheId` in the filename; now they will have the
`cacheId` prefixed on the file (so they sort alongside the main cache file). This
`cacheId` prefix is removed on recovery from the cache, overwriting
any files with the same name.
- extracting the functionName from a function had several edge cases did not work; these now work
* `useMemoise` would work with file-backed objects, but only if the file-backed object
did not change after the caching (the pointer to the file was intact, but the file changed).
Now, memoising will copy file-backed information from disk
each time it "retrieves a file-backed object from memeory". This will result in slower
memoising than previously. However, it will be robust to downstream changes to the file.

# reproducible 2.1.2

* remove `PackedStatExtent` class, releasing it for `terra`; `reproducible`
Expand Down

0 comments on commit 5006a18

Please sign in to comment.