--------------------------
-[[!template id=gitbranch branch=smcv/transient-only author="[[smcv]]"]]
-[[!template id=gitbranch branch=smcv/transient-recentchanges author="[[smcv]]"]]
+[[!template id=gitbranch branch=smcv/ready/transient author="[[smcv]]"]]
+[[!template id=gitbranch branch=smcv/ready/transient-recentchanges author="[[smcv]]"]]
+[[!template id=gitbranch branch=smcv/ready/transient-tag author="[[smcv]]"]]
[[!tag patch]]
I think this branch is now enough to be useful. It adds the following:
I erred on the side of more plugins; I think it's "on the edge of the core",
like goto.
-Pages with the default extension in the transient underlay are automatically
+Pages in the transient underlay are automatically
deleted if a page of the same name is created in the srcdir (or an underlay
closer to the srcdir in stacking order).
-With the additional `transient-tag` branch,
+With the additional `ready/transient-tag` branch,
`tag` enables `transient`, and if `tag_autocreate_commit` is set to 0
(default 1), autocreated tags are written to the transient underlay.
There is a regression test.
With the additional `transient-autoindex` branch,
`autoindex` uses autofiles. It also enables `transient`, and if
`autoindex_commit` is set to 0 (default 1), autoindexes are written to
-the transient underlay. There is a regression test.
+the transient underlay. There is a regression test. However, this branch
+is blocked by working out what the desired behaviour is, on
+[[todo/autoindex_should_use_add__95__autofile]].
> I wonder why this needs to be configurable? I suppose that gets back to
> whether it makes sense to check these files in or not. The benefits of
> commit clutter is really worth it.
>> According to the last section of
->> [[todo/auto-create_tag_pages_according_to_a_template]], chrysn and
+>> [[todo/auto-create_tag_pages_according_to_a_template]], [[chrysn]] and
>> Eric both feel rather strongly that it should be possible to
->> not commit any tags. I made it configurable because, as you point out,
+>> not commit any tags; in [[plugins/autoindex/discussion]],
+>> lollipopman and [[JoeRayhawk]] both requested the same for autoindex.
+>> I made it configurable because, as you point out,
>> there are also reasons why it makes sense to check these
>> automatically-created files in. I'm neutral on this, personally.
>>
autoindex ignores pages in the transient underlay when deciding whether
to generate an index.
-With the additional `transient-recentchanges` branch, new recent changes
-go in the transient underlay; I tested this manually.
+With the additional `ready/transient-recentchanges` branch, new recent
+changes go in the transient underlay; I tested this manually.
Not done yet (in that branch, at least):
>> in the transient location. Ok, it only saves 1 syscall :)
>>> Is an unlink() really that expensive? But, OK, fixed in the
->>> `transient-recentchanges` branch. --s
+>>> `ready/transient-recentchanges` branch. --s
>> * Similarly it's a bit worrying for performance that it
>> needs to pull in and use `Cwd` on every ikiwiki startup now.
>>> The reason to make it absolute is that relative underlays
>>> are interpreted as relative to the base underlay directory,
->>> not the cwd.
+>>> not the cwd, by `add_underlay`.
>>>
->>> The updated `transient-only` branch only loads `Cwd` if
+>>> The updated `ready/transient-only` branch only loads `Cwd` if
>>> the path is relative; an extra commit on branch
>>> `smcv/transient-relative` goes behind `add_underlay`'s
>>> back to allow use of a cwd-relative underlay. Which direction
>> to use that pageext? Would it be better to look up the
>> complete source filename?
+>>> I've updated `ready/transient` to do a more thorough GC by
+>>> using File::Find on the transient directory. This does
+>>> require `File::Find` and `Cwd`, but only when pages change,
+>>> and `refresh` loads both of those in that situation anyway.
+>>>
>>> At the moment everything in the transientdir will either
>>> have the `default_pageext` or be internal, although I
>>> did wonder whether to make [[plugins/contrib/album]]
>>> viewer pages optionally be `html`, for better performance
->>> when there's a very large number of photos.
->>>
->>> A more thorough garbage-collection mechanism would be to
->>> use File::Find on the transient directory; I'll get there
->>> eventually. --s
+>>> when there's a very large number of photos. --s
--------------------------