yesod/yesod-core
Isaac van Bakel b9fbdb3950 Add idempotent versions of setDescription API
`setDescription` and `setDescriptionI` present a similar API to
`setTitle` and `setTitleI`, but unlike those functions the description
functions are not idempotent - so calling them multiple times inserts
multiple `<meta/>` tags in HTML `<head/>`.

This adds explicitly idempotent versions of those functions which are
handled in a similar way to the title, so that calling them multiple
times has the effect of taking the final value specified.

Because the non-idempotent behaviour of setDescription is not obvious,
this also adds warnings for that behaviour to make it clear what the
effect of multiple calls will be. Unfortunately, setDescriptionIdemp
can't be made a drop-in replacement because developers may have defined
their own layouts which need to take pageDescription into account.
2022-04-20 12:54:23 +01:00
..
attic Added pong.hs 2013-03-17 12:48:11 +02:00
bench Cleanup warnings 2018-01-15 15:09:07 +02:00
src/Yesod Add idempotent versions of setDescription API 2022-04-20 12:54:23 +01:00
static Add 'yesod-core/' from commit '982d6185bee75b078bee92bd8a2e8743707f1922' 2011-07-22 08:59:56 +03:00
test Add idempotent versions of setDescription API 2022-04-20 12:54:23 +01:00
.gitignore Add 'yesod-core/' from commit '982d6185bee75b078bee92bd8a2e8743707f1922' 2011-07-22 08:59:56 +03:00
bench.sh Remove a painful slowdown from randomIV 2011-11-25 15:11:15 +02:00
ChangeLog.md update changelog 2022-03-25 07:51:57 -04:00
helloworld.hs MonadHandler/MonadWidget 2013-03-17 10:10:39 +02:00
LICENSE Update license with MIT license 2012-04-29 09:38:45 +03:00
README.md README.md 2014-11-23 12:18:41 +02:00
Setup.lhs Add 'yesod-core/' from commit '982d6185bee75b078bee92bd8a2e8743707f1922' 2011-07-22 08:59:56 +03:00
yesod-core.cabal Add test of setDescription idempotency 2022-04-20 12:01:34 +01:00

yesod-core

This is the main package for Yesod, providing all core functionality on which other packages can be built. It provides dispatch, handler functions, widgets, etc.

Yesod is well documented on its website.