All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
0.4.3 (2024-07-19)
- add support for brotli compression (#300) (8016599)
- cli: added openssl/vendored feature (#287) (663389b)
- cli: added pre-flight shell check (76a38f3), closes #314
- perseus-cli: add 'node_modules' to watch exclusions (#313) (3f04e40)
- added format ignore to problematic macro (276a0c1)
- cli: used
tag_name
rather thanname
to get tool versions (fa45801), closes #329 - fixed bad error condition (9018463)
- fixed overzealous formatting (926022f)
- fixed readme link (#298) (ed1048b)
- improved error message for minification errors (43887b3)
- updated
rocket
to stable (0150962)
- cli: removed shell dependency (0b98318)
- added
cd
step to website start example (#302) (800003c) - added embedded example for linking css file (#299) (1d5f859)
- clarify intl feature flags (#323) (47e99bd)
- fixed broken link and typo (#297) (1de991d)
- fixed dead link (51c8ee6)
- fixed mistakes in capsules intro (#289) (2409edd)
- fixed typo (#296) (b1da160)
- fixed typo (#310) (94cc497)
- fixed typo (#311) (2d2aa14)
- fixed typo (#327) (cf5ad2a)
- fixed typos and broken example inclusions (#308) (9b8fcb5)
- fixed typos in core-principles.md (#316) (eeccf81)
- improve quickstart guide (#294) (ba1608a)
0.4.2 (2023-05-17)
0.4.1 (2023-05-12)
- cli: fixed aarch64 downloads on m2 macs (#286) (cbc6faf)
- prevented global state caching on engine-side (23e6deb), closes #280
- removed
dbg!
statement (9f885a9)
- added
--locked
flag for v0.3.x installation (#274) (2708508) - fixed several typos (#272) (2fb434b)
- fixed typo (#271) (4993025)
- updated all references to v0.4 being in beta (6763c0c)
0.4.0 (2023-04-09)
- fixed semantically invalid html in website and added faq about it (e69431e)
- updated docs to v0.4.0 (5512a30)
0.4.0-rc.1 (2023-04-09)
-
removed localized global state (global state functions should no longer take a locale)
-
fix: transmitted global state in locale redirection pages
- added rocket integration (#266) (25bd115)
- added support for broader error types across state generation (9aa079b), closes #264
- remove localized global state (#268) (2017f69), closes #267
- cleaned up rocket integration (5c8e50d)
- cli: fixed help tests (0800311)
- fixed bad version in rocket integration (6bd2ca0)
0.4.0-beta.22 (2023-03-12)
- updated
cargo_toml
to v0.15 (68ef993)
- added docs on using perseus in a workspace (b0653dc)
0.4.0-beta.21 (2023-03-01)
0.4.0-beta.20 (2023-02-26)
- cli: fixed cli tests to test bleeding-edge core (27442d5), closes #259
- fixed crash handling system (b085888)
- fixed hsr ignore deployment issues (#260) (e9c6239)
- fixed nested static aliases in exporting (c15624e), closes #258
- fixed static content tests (88cad92)
- removed unused import (febdbaf)
0.4.0-beta.19 (2023-02-18)
- implicit
new
method removed from intermediate reactive types
- added hsr ignoring feature applied by default to unreactive state (6768f4e)
- fixed two broken tests (ed5b5ad)
- removed
new
implementation on reactive types (60a60f0)
- added docs on rx_collection iteration (d297af1)
0.4.0-beta.18 (2023-02-10)
- removed
RouterLoadState::ErrorLoaded
entirely (you should now rely solely on error views, which will be able to poll the last router state, which probably contributed to/caused the error)
- added automatic conversion methods for reactive types (#252) (bb36a4c)
- cli: added
--verbose
for easier logging (10cd48b) - cli: added
.cargo/config.toml
to defaultinit
/new
templates (a8afc7d) - cli: added support for eatch exclusions with
--custom-watch !my-path
(6f57d4a) - greatly improved default error views (2199da6)
- added
target/
to generated.gitignore
(#254) (9b7b99d) - cli: fixed deployment with revalidation (#256) (89e864a)
- error_views: fixed positioning of default error views (efcfec5)
- fixed bad inequality in default error views (b485a30)
- fixed cause of perseus hydration bugs (6d38da6)
- fixed hanging servers on test errors (2ad8bea)
- fixed outdated macro reference in compile error (c5dc4a6)
- fixed panic handler issues (07ab6c6)
- perseus-axum: fixed snippet hosting (5f54722)
- re-enabled minification (9512df0)
- removed debug message (803123b)
- simplified error router states (6252f6a)
- split testing scripts into
core
andcli
(0a2d2df) - tests: unified testing infrastructure for
perseus-cli
(5b18efd)
- added all missing links to the docs (c3c575b)
- added docs on watch exclusions (8f9936a)
- added note on
snoop
to dev cycle docs (fa62ebe) - added note on hanging servers from testing (ade5137)
- covered
Cargo.toml
in more depth (adc3c34) - fixed broken link (2d28862)
- removed outdated warnings about styling quirks (a8704a2)
- wrote docs on capsules v components (fb8563a)
0.4.0-beta.17 (2023-01-18)
- cli: added automatic js minification on deployment (d516f0a)
- implemented
PartialEq + Eq
on all rx collections (56ee370)
- capsules: fixed capsules with exporting (b6e0916)
- capsules: fixed further issues with capsule exporting (e9c5f4d)
- capsules: fixed initial widget caching with i18n (e3b49e1)
- fixed bad delaayed widgets transmute (0701ff8)
- hsr: fixed hsr (a897b4e)
- made
ThawPrefs
locale-agnostic (108b754) - removed premature freezing API change (2a9bfde)
- added clear example of
.capsule_ref()
(f23fcfa) - added notes on nested state and rx collections (a4c1dfb)
- added some missing lang declarations (c3f2a02)
- edited core principles and introductory docs (7dd032f)
- edited migration guide (96d895d)
- fixed missing codeblock lang declarations (962a9fb)
- removed old docs and refactored substantially (0c8a9be)
- tempered a line in the migration docs (ea3d76c)
- updated faqs (0b5fecb)
- wrote further docs (9b7fd5d)
- wrote introductory capsules docs (0b48598)
- wrote new docs on manually implementing state types (e430cf6)
0.4.0-beta.16 (2023-01-13)
0.4.0-beta.15 (2023-01-13)
- removed
FetchError::PreloadNotFound
- i18n:
cx
now comes first int!
andlink!
invocations (following Sycamore convention)
- added simple error views example to basic example (520eebf)
- cli: added support for
cargo
colors (513b1cf) - cli: added support for watching
snoop
andbuild
commands (c9808fb) - cli: made
perseus test
actually run tests (bc7582a) - docs: made
perseus
client-side documentable (bfe34c5) - i18n: created
switch_locale
function on reactor (6bbd3cb) - made rx collections support extension (7185ef6)
- cli: fixed serve/test numbering issues (99e13be)
- docs.rs: made client-side items documentable on docs.rs (9420cb7)
- docs: fixed broken docs links (ee56bc4)
- docs: made documentation work fully for
#[cfg(client)]
items (f22f05d) - fixed
.base
example (cbc74b6) - i18n: fixed
t!
macro with multiple interpolations (f2aa96e) - website: fixed scrolling issues (7c63355)
- added missing language declarations (e08ce5a)
- fixed broken example link (6fca6a8)
- fixed missing language declarations (7b9d2df)
- removed note on
cargo-clif
issues (2572357) - wrote docs on
PerseusApp
(2b39064) - wrote first app tutorial (149a521)
- wrote further fundamental docs (5bb9bd3)
- wrote hydration docs (a82ee5c)
- wrote js interop docs (be9dbc9)
- wrote more docs (6c5f6a7)
- wrote new testing docs (36b3792)
0.4.0-beta.14 (2023-01-02)
- cli: added missing
RUSTFLAGS
(0735b8c), closes #249 - cli: made
cargo metadata
invocation use given cargo path (1784909) - docs.rs: added proper metadata config for docs.rs (55861ac)
- fixed typo in docs.rs settings (b2b3e92)
0.4.0-beta.13 (2023-01-02)
- docs.rs: added
rustdocflags
(f06eb48) - fixed broken tribble link in contributing docs (#247) (f6717fb)
- fixed deployment paths (0f8127c), closes #63
- fixed double error page display (2454205)
- fixed error view deployment bugs (f57f7f1)
- temporarily disabled website checking (a63a1a9)
- typo in
perseus new
Cargo.toml (#248) (71bfaa1)
- added extra migration step for
.head_with_state()
(ae93d77) - added further migration notes (1e9fc70)
- added some more migration tips (16cd9d5)
- updated all old links (c1f613c)
0.4.0-beta.12 (2023-01-01)
- all target-gates should switch to
#[cfg(engine)]
and#[cfg(client)]
, rather than usingtarget_arch
- removed nnow obsolete
#[perseus::engine]
and#[perseus::browser]
macros - plugins can no longer add templates (provide the functions to the user for them to manually add)
G
parameter removed entirely from plugins- you must now call
.build()
after creating a template/capsule with::new(..)
and setting your various functions - header setting functions now take a
Scope
as their first argument - removed several outdated
checkpoint
s (see book for details) - global state is now built per-locale, and build state
functions therefore take a
locale: String
argument now - functional plugin actions for failing global state have been removed due to alternate generation systems (you should hook into failed builds instead)
- all plugin actions must now return
Result<T, Box<dyn std::error::Error>>
(return some arbitrary error and then use.into()
) - all plugin actions that previously took
Rc<perseus::errors::EngineError>
now takeRc<perseus::errors::Error>
.template()
and.error_pages()
onPerseusApp
now take actual values, rather than functions that return those values- any functions that took
path
andlocale
now takeStateGeneratorInfo
, which includes those as fields - all macros on state generator functions (e.g.
#[build_state]
) are replaced by the single macro#[engine_only_fn]
- templates that take reactive state must have the
#[template]
annotation and be specified with.template_with_state()
- templates that take unreactive state must have no macro annotation, and be specified wijth
.template_with_unreactive_state()
- templates that take no state must not have a
#[template]
annotation define_app!
has been completely removed in favor ofPerseusApp
#[make_rx(MyRxTypeName)]
must be changed to#[derive(Serialize, Deserialize, ReactiveState)]
, followed by#[rx(alias = "MyRxTypeName")]
- renamed
#[template_rx]
to#[template]
(unreactive templates should now use#[template(unreactive)]
)
- added more reactive collections (04e1629)
- added support for wasm engines (f6568e9)
- added suspended interactivity system (5efcad4)
- added suspended state and request-time/amalgamated global state (#242) (c174a69), closes /github.com/framesurge/perseus/issues/150#issuecomment-1329785198
- cli: made cli symlink exported content instead of copying it (c54d884)
- created capsules system and rewrote just about everything (#224) (a4c59f2)
- created version of
blame_err!
that doesn't return (628405d) - improved global state system (#223) (85d7f4a)
- made
#[template_rx]
support unreactive state (43fdf11) - made plugin actions return
Result
(42f0d99), closes #234 - removed all redundant macros! 🎉 (#238) (dccb7a5)
- removed unnecessary panics and added custom panic handler system (c232aed)
- 'fixed' hydration issues (182f72b)
- allowed statenames other than
state
(c80e647) - fixed
perseus new
(659b911) - fixed js-interop example (2928bb7)
- made tool windows installations resilient against paths with whitespace (#228) (0d3717f), closes #227
- updated website examples (6410f22)
- website: fixed index example sourcing (88c29cd)
- cleaned up some things (4df987e)
- improved ergonomics of
PerseusApp
(9c3444a) - turn
#[make_rx]
into#[derive(ReactiveState)]
(#237) (8ec2d6f) - use child scopes for pages (#230) (6af8191)
- alerted users to #229 (a825cec)
- clarified warning (0696e48)
- fixed readme links (75dd5ce)
- removed old installation instruction (bd06110)
- removed readme warning about #229 (195078a)
- updated v0.4.x docs and documented migration (8a81a3e)
0.4.0-beta.12 (2023-01-01)
- all target-gates should switch to
#[cfg(engine)]
and#[cfg(client)]
, rather than usingtarget_arch
- removed nnow obsolete
#[perseus::engine]
and#[perseus::browser]
macros - plugins can no longer add templates (provide the functions to the user for them to manually add)
G
parameter removed entirely from plugins- you must now call
.build()
after creating a template/capsule with::new(..)
and setting your various functions - header setting functions now take a
Scope
as their first argument - removed several outdated
checkpoint
s (see book for details) - global state is now built per-locale, and build state
functions therefore take a
locale: String
argument now - functional plugin actions for failing global state have been removed due to alternate generation systems (you should hook into failed builds instead)
- all plugin actions must now return
Result<T, Box<dyn std::error::Error>>
(return some arbitrary error and then use.into()
) - all plugin actions that previously took
Rc<perseus::errors::EngineError>
now takeRc<perseus::errors::Error>
.template()
and.error_pages()
onPerseusApp
now take actual values, rather than functions that return those values- any functions that took
path
andlocale
now takeStateGeneratorInfo
, which includes those as fields - all macros on state generator functions (e.g.
#[build_state]
) are replaced by the single macro#[engine_only_fn]
- templates that take reactive state must have the
#[template]
annotation and be specified with.template_with_state()
- templates that take unreactive state must have no macro annotation, and be specified wijth
.template_with_unreactive_state()
- templates that take no state must not have a
#[template]
annotation define_app!
has been completely removed in favor ofPerseusApp
#[make_rx(MyRxTypeName)]
must be changed to#[derive(Serialize, Deserialize, ReactiveState)]
, followed by#[rx(alias = "MyRxTypeName")]
- renamed
#[template_rx]
to#[template]
(unreactive templates should now use#[template(unreactive)]
)
- added more reactive collections (04e1629)
- added support for wasm engines (f6568e9)
- added suspended interactivity system (5efcad4)
- added suspended state and request-time/amalgamated global state (#242) (c174a69), closes /github.com/framesurge/perseus/issues/150#issuecomment-1329785198
- cli: made cli symlink exported content instead of copying it (c54d884)
- created capsules system and rewrote just about everything (#224) (a4c59f2)
- created version of
blame_err!
that doesn't return (628405d) - improved global state system (#223) (85d7f4a)
- made
#[template_rx]
support unreactive state (43fdf11) - made plugin actions return
Result
(42f0d99), closes #234 - removed all redundant macros! 🎉 (#238) (dccb7a5)
- removed unnecessary panics and added custom panic handler system (c232aed)
- 'fixed' hydration issues (182f72b)
- allowed statenames other than
state
(c80e647) - fixed
perseus new
(659b911) - fixed js-interop example (2928bb7)
- made tool windows installations resilient against paths with whitespace (#228) (0d3717f), closes #227
- updated website examples (6410f22)
- website: fixed index example sourcing (88c29cd)
- cleaned up some things (4df987e)
- improved ergonomics of
PerseusApp
(9c3444a) - turn
#[make_rx]
into#[derive(ReactiveState)]
(#237) (8ec2d6f) - use child scopes for pages (#230) (6af8191)
- alerted users to #229 (a825cec)
- clarified warning (0696e48)
- fixed readme links (75dd5ce)
- removed old installation instruction (bd06110)
- removed readme warning about #229 (195078a)
- updated v0.4.x docs and documented migration (8a81a3e)
0.4.0-beta.12 (2023-01-01)
- all target-gates should switch to
#[cfg(engine)]
and#[cfg(client)]
, rather than usingtarget_arch
- removed nnow obsolete
#[perseus::engine]
and#[perseus::browser]
macros - plugins can no longer add templates (provide the functions to the user for them to manually add)
G
parameter removed entirely from plugins- you must now call
.build()
after creating a template/capsule with::new(..)
and setting your various functions - header setting functions now take a
Scope
as their first argument - removed several outdated
checkpoint
s (see book for details) - global state is now built per-locale, and build state
functions therefore take a
locale: String
argument now - functional plugin actions for failing global state have been removed due to alternate generation systems (you should hook into failed builds instead)
- all plugin actions must now return
Result<T, Box<dyn std::error::Error>>
(return some arbitrary error and then use.into()
) - all plugin actions that previously took
Rc<perseus::errors::EngineError>
now takeRc<perseus::errors::Error>
.template()
and.error_pages()
onPerseusApp
now take actual values, rather than functions that return those values- any functions that took
path
andlocale
now takeStateGeneratorInfo
, which includes those as fields - all macros on state generator functions (e.g.
#[build_state]
) are replaced by the single macro#[engine_only_fn]
- templates that take reactive state must have the
#[template]
annotation and be specified with.template_with_state()
- templates that take unreactive state must have no macro annotation, and be specified wijth
.template_with_unreactive_state()
- templates that take no state must not have a
#[template]
annotation define_app!
has been completely removed in favor ofPerseusApp
#[make_rx(MyRxTypeName)]
must be changed to#[derive(Serialize, Deserialize, ReactiveState)]
, followed by#[rx(alias = "MyRxTypeName")]
- renamed
#[template_rx]
to#[template]
(unreactive templates should now use#[template(unreactive)]
)
- added more reactive collections (04e1629)
- added support for wasm engines (f6568e9)
- added suspended interactivity system (5efcad4)
- added suspended state and request-time/amalgamated global state (#242) (c174a69), closes /github.com/framesurge/perseus/issues/150#issuecomment-1329785198
- cli: made cli symlink exported content instead of copying it (c54d884)
- created capsules system and rewrote just about everything (#224) (a4c59f2)
- created version of
blame_err!
that doesn't return (628405d) - improved global state system (#223) (85d7f4a)
- made
#[template_rx]
support unreactive state (43fdf11) - made plugin actions return
Result
(42f0d99), closes #234 - removed all redundant macros! 🎉 (#238) (dccb7a5)
- removed unnecessary panics and added custom panic handler system (c232aed)
- 'fixed' hydration issues (182f72b)
- allowed statenames other than
state
(c80e647) - fixed
perseus new
(659b911) - fixed js-interop example (2928bb7)
- made tool windows installations resilient against paths with whitespace (#228) (0d3717f), closes #227
- updated website examples (6410f22)
- website: fixed index example sourcing (88c29cd)
- cleaned up some things (4df987e)
- improved ergonomics of
PerseusApp
(9c3444a) - turn
#[make_rx]
into#[derive(ReactiveState)]
(#237) (8ec2d6f) - use child scopes for pages (#230) (6af8191)
- alerted users to #229 (a825cec)
- clarified warning (0696e48)
- fixed readme links (75dd5ce)
- removed old installation instruction (bd06110)
- removed readme warning about #229 (195078a)
- updated v0.4.x docs and documented migration (8a81a3e)
0.4.0-beta.11 (2022-11-06)
- added greater control over minification (5385f12)
- added page state store caching, preloading, and memory management (#204) (0c4fa6b)
- fixed quotation marks in rneder cfg interpolation (6a9c9c7)
- fixed serving bug with index page (8a1efb5)
- fixed subsequent loads of pages with special characters (c112b58)
- fixed support for paths with url encodings (a329952)
- made build paths possible on index page (18bd1bf)
- website: added langauge declarations to som badly formatted codeblocks (3f5b8cf)
- website: made scrollbars obey dark theme (5f0c704)
- website: updated
#[component]
annotations (430d4a2)
- add instruction to replace perseus_integration (#197) (8612c9e)
- clarified tokio issues in v0.3.x in docs (ff36ff2)
- perseus-macro: readability fixups (#194) (f74b400)
- src: readability improvements (#193) (2309c5c)
- website: added some nicer padding on docs pages (b152a2e)
- website: made codeblocks slightly lighter in light mode (264b65f)
0.4.0-beta.10 (2022-09-21)
- created new website! 🎉 (#181) (b7ace94)
- exporting: made export server serve 404 automatically (cb4c5b1)
- added
prelude
module to simplify imports (60557af)
- fixed relative path hosting (8a01244)
- examples/core: readability improvements (#191) (653ca85)
- perseus-cli: readability improvements (#192) (4f301ab)
next
docs readability improvements (#189) (a91bc2c)- 0.4.x readability improvements (#188) (e385e21)
0.4.0-beta.9 (2022-09-11)
- cli: added
perseus check
for faster validation (5a1be87)
- merged 0.4.x with next docs (4be9e5b)
- noted incremental generation/revalidation quirks in examples (8fd19c8)
- updated migration docs for current project status (9e985ce)
0.4.0-beta.8 (2022-09-04)
- added support for error page heads (#179) (41590b1)
- removed final wrapper
<div>
(e4106f6) - removed wrapper
<div>
inside root (3198558)
- fixed non-hydration rendering (ae934bf)
- website: pinned to sycamore v0.8.0-beta.7 for now (af6c017)
- website: tmp fix for build (21c608b)
- made head replacement only target dynamic elements (73aa387), closes #182
- enabled hydration in
plugins
example (64cff9f)
0.4.0-beta.7 (2022-08-20)
-
- Added
ErrorLoaded { path }
case toRouterLoadState
(which must now be matched)
- Added
- Removed
page_visible testing
checkpoint (usepage_interactive
instead) router_entry checkpoint
is now only fired on subsequent loads
- cli: added support for automatically updating tools from lockfile (52ab3f1), closes #169
- redesigned app shell with support for hydration (#177) (d407727)
- fixed response caching functions (e29e5d2)
- removed unnecessary content pre-rendering from server render process (e1c9ad3)
0.4.0-beta.6 (2022-08-13)
- cli: fixed
perseus new
/perseus init
package versions (22dac34) - website: added necessary images back (8e6707c)
- fixed runtime panics in app shell (cb39dc1)
0.4.0-beta.5 (2022-07-18)
[lib]
/[[bin]]
settings no longer required inCargo.toml
, andlib.rs
should be renamed tomain.rs
(everything is a binary now)
- made cli auto-install needed tools and use global flags for config (#160) (4682b9d)
- i18n: added lightweight translator (b5bb075)
- cli: made system tools cache XDG-compliant (085cd9b)
- fixed typo in new project template (#163) (1d7cc9f)
0.4.0-beta.4 (2022-07-14)
- passed path, locale, and request to logic-based revalidation
- header setting functions now take either a usual state
argument or no state (no more
Option<T>
s) - state amalgamation functions now take
path
,locale
,build_state
, andrequest_state
;States
is private - restructured exports significantly
- cli: added
perseus new
andperseus init
(0bf879b), closes #128 - passed path, locale, and request to logic-based revalidation (5473683)
- removed
Option<T>
weirdness on header setting (869000b) - cli: added support for watching custom files (723d4ca)
- added further target directory separation (b2d7e16)
- added proper state mgmt to amalgamation (ceaf7b2)
- added type-safety to time-based revalidation (7b3ff88)
- fixed
perseus deploy
target binary name on Windows (#156) (32a6f24) - fixed warp js snippets handling (dab7e72)
- fixed wasm issues with
ComputedDuration
(247caff)
- split target directories for engine/server (651349d)
- restructured exports significantly (70d425b)
- fixed typos in readme (9ba6947)
- fixed typos in tiny example readme (8ab3afd)
- rewrote advanced docs (191d8c9)
- scaffolded out FDT (ca12e03)
- updated docs for
perseus new
and co (8810c23) - examples: updated example writing docs and base example (0c1b578)
- substantially improved code-level docs (6ec4852)
- updated js interop example readme (11ed444)
- examples: added js interop example (766dd44)
- finished updates to code-level docs (76ef81c)
- updated docs for cranelift and wasm-opt (7829c74)
- updated signature docs (2e008d4)
- wrote second app tutorial (55751aa)
- wrote state generation docs (eb7e8ee)
0.4.0-beta.3 (2022-07-04)
- Made custom servers take
ServerProps
and(String, u16)
for the host and port. - Changed delimiter in
t!
macro variable interpolation from:
to=
to solve compiler misinterpretation errors
- made custom servers easier and added example (d450a81)
- website: added auto-versioning to docs.rs shorthand links (e727121)
- website: added shorthand for docs.rs links (ee379a1)
- added size optimizations support into cli (b083173)
- fixed actix web integration (6b538d3)
- fixed cast issues with
t!
interpolation (2cae13a) - fixed data setup for actix web integration (6a129a1)
- fixed live reloading (1b924af)
- fixed size optimizations on website (4e320c8)
- fixed up website (946e326)
- removed bad default feature from actix integration (4612e01)
- website: added opts back (4b25d46)
- website: fixed latest stable version warning link (a32f1ee)
- website: updated
opt-level
toz
(2b49591)
- added live reloading/hsr docs (bd8a702)
- clarified
perseus-integration
crate purpose (73dc11a) - clarified items in changelog (2d0cc1b)
- copied
next
to0.4.x
for improved UX (3fd6834) - updated optimizations docs (51ad962)
- wrote some sections of the docs (c7a9f09)
0.4.0-beta.2 (2022-06-27)
- Changed multiple APIs for functional plugin actions related to the builder (they all take the new EngineError type now)
- Restructured exports related to engine functionality (this will get progressively worse as this PR develops!)
- Removed the HOST and PORT environment variables for configuring the server (these are replaced with
PERSEUS_HOST
andPERSEUS_PORT
) - Substantially refactored exports from Perseus
- Divided client-side and server-side exports (many functions will now need to be target-gated)
- Replaced
#[autoserde(...)]
macro with macros for each state function (#[build_state]
,#[build_paths]
, etc.) - The #[build_paths] macro must now be applied to all build paths functions (for client/server functionality division)
- #[perseus::main] now takes an argument as the default server to use (server integrations should now be imported and used)
- Made state functions automatically target-gated as
#[cfg(not(feature = "wasm32"))]
- The
#[should_revalidate]
macro must now be applied to all revalidation determination functions (for client/server functionality division) - WARNING: any filesystem paths in app building are now relative to the root of the app, not
.perseus/
(may require changes)
- add axum integration (#146) (dbe8207), closes #137 #137
- removed
.perseus/
(#151) (14f415a) - updated fetching example for async reqwest (ea98465)
- create based scaffold for new docs (39e7c83)
- fixed misnomer in second app tutorial (873562c), closes #147
- fixed some broken links (5a0e107), closes #149
- removed erroneous code example in hello world tutorial (51f2b2f)
- updated server communication docs (c4c7ed2)
- updated tiny example in readme (3642a4b)
0.4.0-beta.1 (2022-05-30)
- added notes about hydration bugs (2aef79c)
- fix typo in
basic
example readme (#141) (35ff172) - updated docs for index view with example (eccf137)
0.3.5 (2022-04-20)
- removed hydration ids from
.index_view()
(41ab625)
0.3.4 (2022-04-19)
- fixed empty link (8bd6a8f)
0.3.4-rc.6 (2022-04-17)
- removed cyclical dependency (ef307cc)
0.3.4-rc.5 (2022-04-14)
0.3.4-rc.4 (2022-04-14)
0.3.4-rc.3 (2022-04-13)
- fixed versioning for
perseus-macro
dependencies (e46c3ca)
0.3.4-rc.2 (2022-04-13)
0.3.4-rc.1 (2022-04-13)
- examples: added auth example and docs (e02088c)
- added
.make_unrx()
(b974576) - added better errors when no state generation functions are provided (e565632)
- added component name inference to
template_rx
(d1ba2ef) - added examples for and finalized idb wrapper (362d5ca)
- added global and reactive state (90288f6), closes #103
- added global state (a5fcc56), closes #119
- added global state rehydration (10634fb)
- added hot state reloading (9805a7b), closes #121
- added idb wrapper for state freezing (9d2a729)
- added lazy global state instantiation (82430db)
- added live reloading (2e33424), closes #122
- added macro to enable fine-grained reactive state (e12d15c)
- added page state store rehydration (d95e355)
- added proper error handling to hsr (469732a)
- added proper state thawing (ea545a9)
- added reloading server (1f37700)
- added route rehydration (101f92a)
- added router state (#115) (9ee6904)
- added same-page reloading (6e32c8f), closes #120
- added state freezing (891f3bb)
- added support for
#[make_rx(...)]
on unitstruct
s (cb2f49d) - added support for templates that take only global state (c60af8a)
- added support for wasm2js (ce07134)
- improved
template2
ergonomics (c238df9) - made
web_log!
cross-platform and only needing perseus (b7e8389) - passed reload server info to client (27880a5)
- set up functional plugin actions for global state (6aa45aa)
- typed options system (#130) (ccd4c43)
- a11y: added route announcer (76c0930), closes #124
- cli: added custom engines support (b31855e), closes #59
- plugins: added functional actions for exporting error pages (36abcc1)
- added
Debug
forTranslationArgs
(51422ed) - added utf-8 encoding to default html shell (fce0db8)
- fixed active/global state fallbacks (193f733)
- fixed cli in development for watching (2941f77)
- fixed clippy lint issues with
wasm-bindgen
(b2f67e6), closes rustwasm/wasm-bindgen#2774 - fixed exporting with typed options system (18f54a9)
- fixed hsr in deployment (ec52b1c)
- fixed includes in docs (89b420d)
- fixed margin errors in website (59525b4)
- fixed router (2260885)
- fixed some trait scoping (d8416e2)
- fixed typo (48e194b)
- fixed up tests (6f979eb)
- fixed warp integration (93be5de)
- made hsr self-clearing (1936b62)
- made i18n example use the right locales function (6a05c63)
- made logging work again (47fbef5)
- made page state store work with multiple pages in single template (4c9c1be)
- typo in default index view (#132) (1f1522a)
- i18n: added experimental wasm caching (2d1ca2d)
- added
Debug
implementations to everything (2392daa) - broke out some fn args into separate
struct
s (1e0ed5c) - changed default live reloading port to 3100 (a355157)
- cleaned up (ee29ba1)
- cleaned up from last refactor (33f439c)
- fixed clippy lints (2f37374)
- improved html shell readability (#109) (69e9f72)
- made basic examples use reactive state (1570e5d)
- made examples use typed options system (02c3c03)
- made live reloading have access to render context (b9b608a), closes #121
- minor code improvements (#110) (2c0d344)
- moved header setting and static content examples into own (0449fea)
- moved html shell into one struct (832e269)
- moved router into core (b1c4746)
- moved showcase example into state generation example (25b9808)
- partitioned examples and moved in tests (33887ab)
- reduced allocations in engine server (3422949)
- renamed
template_with_rx_state
totemplate2
(2956009) - renamed
template2
totemplate_rx
(2d99a9a) - renamed global state to page state store (3b2401b), closes #119
- restructed files (1700dcb)
- restructured logic revalidation example to show types clearly (cbf2629)
- updated to typed options system in example basis (7a7dd6c)
- examples: split
rx_state
into multiple examples (d58dd29) - restructured tests/examples (14b4b46)
- added docs for examples (16c63ef)
- added section on how to build bleeding-edge cli (0e6eb5d)
- edited hsr blog post (57913b4)
- fix broken link, typos and add 0.3.3 as stable version (#129) (9f3d5a2)
- fixed readme links (82dda10)
- fixed the last bad link in the readme (5b575cb)
- removed outdated text in the readme (301cfd3)
- updated docs for typed options system (bd0710d)
- updated template macro docs for no args (c0c30b6)
- updated the readme (8b6e142)
- updated upgrade guide (286a29c)
- blog: added first draft of hsr post (78fef13)
- book: added route announcer docs (30d0839)
- book: clarified dark mode with global state (261ab84)
- book: documented idb state system (68a467c)
- book: documented wasm/js sizing differences (578b08b)
- book: fixed examples inclusions and partioned version (55c21eb)
- book: rewrote fetching docs (cba35e6)
- book: updated debugging docs (7adf684)
- book: updated state/state generation docs for new examples layout (13c1f20)
- book: updated tutorials for new examples layout (28f1af1)
- book: wrote docs on custom engines (4741b67)
- book: wrote docs on live reloading and hsr (4cf292f)
- book: wrote docs on reactive state (f5a7fbd)
- book: wrote docs on state thawing (2d67a40)
- contrib: finalized shift to tribble (09af5c6)
- contrib: hid old contributing docs in details block (6f850c2)
- examples: added some new examples and a template for more (07289f6)
- website: added comparison note for sycamore and perseus (bc4f821)
- added contrib docs with tribble (bc8fc3d)
- added example to styling docs (606f635)
- added missing link to wasm website (#117) (a0dad42)
- finalized contributing repo docs (6aece16)
- fixed link to discord in issue creation links (2c14352)
- merged
next
with0.3.x
(487ce2b) - miscellaneous fixes to tribble docs (c0b5f55)
- restructured and wrote core principles docs (9ee419e)
- contrib: fixed broken link (9e5c9b3)
- tribble: cleaned up section/endpoint naming (891cd44)
- tribble: fixed minor copy-paste error (b638d25)
0.3.3 (2022-02-15)
0.3.2 (2022-01-11)
- added ability to export error pages (624034b), closes #94
- added external request caching (3ecad15)
- modernized host/port setting for
perseus serve
(19bd87e), closes #107
- website: fixed formatting errors (4139df9)
- updated docs to reflect host/port setting changes (a930ae2)
0.3.1 (2022-01-02)
- website: added highlighting for dockerfiles (81e2066)
- re-exported
spawn_local
for convenience (184381f) - cli: added basic hot reloading (b4c93f0)
- cli: added hot reloading (61696b3)
- cli: added support for wasm profiling builds (c2de025)
- add tokio (#102) (150fda8)
- made static generation errors display causes (ab7742a), closes #101
- cli: added inbuilt server for exported apps (8274678)
- cli: made watcher ignore
.git/
as well (1a7f6ed) - website: made github button transition work (efcf16f)
- added missing cli argument docs (7c9fb4a)
- cli: used
--dev
by default withwasm-pack
(55cc681) - deps: locked
indicatif
tov0.17.0-beta.1
(5b979bb) - engine: fixed incomplete error messages (e445e56)
- added cargo corruption to common pitfalls (9fe2b27)
- added docker deployment docs (#98) (93f2c4b)
- added docs for cli watching (4a250e9)
- added new example for fetching data (6b08ffe), closes #96
- added preliminary
define_app!
advanced docs (69721a6) - fixed code in docker docs (ac5aaf9)
- made changelog more readable (12ecc92)
- merged
0.3.0
andnext
(9f17624) - merged last changes into
next
(5ab9903) - updated contrib docs for new site command (9246c12)
0.3.0 (2021-12-21)
- removed beta warning (4e4cc18)
v0.3.0 Beta Versions
0.3.0-rc.1 (2021-12-21)
- updated to reflect that no hydration doesn't change Lighthouse scores (aabc247)
0.3.0-beta.26 (2021-12-21)
- switched default server integration (eed2cc0)
0.3.0-beta.25 (2021-12-21)
- website: fixed version issues (85d8236)
- made hydration opt-in (4fd38a6)
- website: fixed tailwind not purging (bd58daa)
- disabled hydration on website (3f2d110)
- pinned website version to beta 22 (5141cec)
- properly disabled hydration on website (65009fa)
- documented hydration (c22a5f5)
- removed
path_prefix
fromFsTranslationsManager
(ed48f3d)
0.3.0-beta.24 (2021-12-17)
- made hydration the default (00258dd)
0.3.0-beta.23 (2021-12-14)
0.3.0-beta.22 (2021-12-13)
- upgraded to Sycamore v0.7.0 (see their changelog)
- cli: added flag to set server integration to use (b71fa41)
- removed
PERSEUS_STANDALONE
(d178f5a), closes #87 - upgraded to sycamore v0.7.0 (3989241)
- added missing
cfg
macro line (006523a) - fixed error page duplication without hydration (7b3e62f)
- deps: upgraded to
actix-web
v4.0.0-beta.14 (139d309)
- added a few more known bugs (6bae07c)
- cleaned up and added page on publishing plugins (37acece)
- merged
next
and0.3.x
(dbb47fb) - updated docs for sycamore v0.7.0 (e840734)
0.3.0-beta.21 (2021-12-12)
- switched to using
warp-fix-171
(f3f0a43)
0.3.0-beta.20 (2021-12-12)
- made cli update local dependencies properly (3067071)
0.3.0-beta.19 (2021-12-12)
-
Options
renamed toServerOptions
for all integrations -
feat: made templates and error pages thread-safe
This involved adding an atomic types system. Also added basics for a Warp integration (which needs this thread-safety).
- feat: made more things thread-safe and made warp integration nearly work
The problem is Rc<Translator>
s, so some refactoring needs to be done.
- feat: added nearly all handlers to warp integration
BREAKING_CHANGE: ServerOptions
now only accepts one static content directory
-
fix: made
DummyTranslator
Clone
able -
feat: added support for static aliases in the warp integration
None of this has been tested yet, so there will likely be bugs. We now depend on my fork of Warp until this is merged.
- fix: pinned
clap
version
0.3.0-beta.18 (2021-11-28)
- website: made docs sidebar nicer (107b9d3)
- added
perseus snoop
and docs for common pitfalls (3c1a919) - i18n: added fallback non-wasm locale redirection (589ac1b)
- website: added plugins registry (de1c217)
- cli: 🐛 printed
stdout
and well asstderr
if a stage fails (ea1f1f1), closes #74 - exporting: 🐛 fixed #73 (a3f879c)
- i18n: fixed fallback locale redirection with relative paths (5095388)
- website: added more comparisons (d4dabaf)
- made markdown styles more readable and fixed tldr link (a74b285)
- book: fixed dependency versions in docs (2171e9c), closes #79
- readme: updated contact links (5f74b07), closes #77
- ✏️ fixed typos in contributing guidelines (#76) (5dfedc1)
0.3.0-beta.17 (2021-11-07)
- website: ♻️ refactored website to use new ergonomics macros (bb879c6)
0.3.0-beta.16 (2021-11-04)
- templates: ✨ added
autoserde
macro to improve ergonomics (eb21299), closes #57 - templates: ✨ added
blame_err!
convenience macro (6ab178a) - templates: ✨ added
head
ergonomics macro (fb17e03), closes #57 - templates: ✨ added
template
macro to automate template fn creation (810ae1b), closes #57 - website: ✨ re-added size optimizations plugin to website (4364d99)
- cli: 🐛 removed distribution artifacts from cli subcrates (ebca95c)
- examples: 🐛 fixed type mismatch in
showcase
example (7a3dd63)
- book: 🐛 fixed broken amalgamation page link (1966fd1)
- book: 📝 added docs for new ergonomics macros (0c4f3b2)
- book: 📝 updated
next
from0.3.x
(7f8e2f2)
0.3.0-beta.15 (2021-10-30)
- plugins: ✨ added client privileged plugins (686f369)
- website: 👽️ updated website for 0.3.0-beta.14 (71b6f42)
- book: 📝 updated docs for plugins system changes (a85f150)
0.3.0-beta.14 (2021-10-28)
-
exports now majorly restructured, some exports may be in different places, please check docs.rs
-
refactor: ♻️ refactored to remove unnecessary dependencies
-
fs_extra
errors now accepted asString
s for all relevant plugin actions -
fix(engine): 🐛 removed engine workspace to allow server or client optimizations
Otherwise client size optimizations also affect the server (which reduces its speed).
-
feat(i18n): ✨ added dummy translator to use by default
-
the
translator-fluent
flag is now required to use i18n -
feat(engine): ✨ added tinker-only plugins and split engine to reduce bundle sizes
The engine is now composed of a server, a builder (new), and a browser client.
-
perf(templates): ⚡️ feature-gated templates to decrease bundle sizes
-
docs(book): 📝 added docs for tinker-only plugins
- ✨ trim bundle sizes with feature-gating (#68) (ffea205)
- website: ✨ added size optimizations plugin to website (60e2658), closes #66
- i18n: ♻️ fixed clippy warnings and removed an unused import (c831fe1)
- book: 📝 updated docs for size optimizations plugin (7b2ff84)
0.3.0-beta.13 (2021-10-18)
- 🚑️ upgraded clap to fix compile errors (aed12bc)
0.3.0-beta.12 (2021-10-17)
- plugins: 🐛 fixed
perseus tinker
deleting.perseus/
without recreating it (0e9bed5)
0.3.0-beta.11 (2021-10-16)
0.3.0-beta.10 (2021-10-16)
-
build_app
/export_app
now take a&TemplateMap
(get_templates_vec
abolished) -
feat(plugins): ✨ added
tinker
action and command -
feat(examples): ✨ added
plugins
example and removed plugins code from other examples
This includes tests.
- fix(plugins): 🐛 fixed plugin data system
Note that PluginData
is now replaced by Any
.
-
docs(book): ✏️ fixed missing link to lighthouse in book intro
-
refactor(plugins): ♻️ removed plugin type system
Any plugin can now take functional or control actions. Docs still need updating.
- refactor(plugins): 🔥 removed old
get_immutable_store
actions
These are replaced by the set_immutable_store
settings action
-
fix(exporting): 🐛 fixed engine crate name change bug in exporting
-
docs(book): 📝 added docs for plugins
- book: 📝 merged
next
docs with 0.3.x docs for plugins (c1e8033)
0.3.0-beta.9 (2021-10-12)
Rc
s are eliminated and done behind the scenes
- ✨ removed
Rc
s completely (d02189b) - website: ✨ added comparisons page (#56) (61dac01)
- website: ✨ added proper docs links parsing system (cfa2d60)
- i18n: 🐛 fixed
link!
macro with base path (d676471) - i18n: 🐛 fixed locale redirection
//
(488a9a0) - website: 🐛 fetched examples from git so they don't go obsolete in older versions (5608a6a), closes #60
- website: 🐛 fixed links in docs version warnings (295b875)
- website: 🚑️ pinned website to sycamore v0.6.1 to prevent base path problems (71a142d), closes #60
- 📝 removed warning about #60 from readme (4ed3783)
- book: 📝 merged 0.3.x and next versions of docs (9a4a956)
- book: 📝 updated docs and added new information on a few things (8169153), closes #46
- book: 📝 updated links in docs (c5398a3)
- 📝 removed warning about book being down (1cb9ec6)
- website: 📝 mention
browser-sync
as dependency for working with website (#55) (a97c325)
0.3.0-beta.8 (2021-10-08)
- i18n: 🐛 fixed path prefixing with locale redirection (241741f)
- i18n: 🐛 made locale redirection work without trailing forward slash (90b3a99)
- templates: 🐛 inserted
<base>
element at top of<head>
(25959d7) - website: 🐛 fixed absolute path links in website (221fa24)
- website: 🐛 fixed index page styling on non-firefox browsers (#54) (aced234)
- website: 🐛 fixed website links (54de491)
- website: 💄 made github button same size as get started button on index page (c472e04), closes #54
- website: ⚡️ added size optimizations on website (31fb1f8)
- website: ♻️ updated website routes for path prefixing (28bba42)
0.3.0-beta.7 (2021-10-06)
- routing: multiple internal function signatures accept exxtra parameter for path prefix
- routing: ✨ added support for relative path hosting with
PERSEUS_BASE_PATH
environment variable (b7d6eb6), closes #48 - ✨ added website (#47) (45a0f6c), closes #46
- book: 📝 added docs for relative path deployment (1ecc94f)
0.3.0-beta.6 (2021-10-02)
- exporting: 🚑 fixed partial flattening in exporting (bdbdc56)
0.3.0-beta.5 (2021-10-02)
- 🚑 fixed page encodings (6d2b7e6)
0.3.0-beta.4 (2021-10-02)
0.3.0-beta.3 (2021-10-02)
- i18n: build/request state now take locale as second parameter (request state takes request as third now)
- book: 📝 updated migration guide for beta (643e51e)
0.3.0-beta.2 (2021-10-01)
0.3.0-beta.1 (2021-09-30)
-
removed
ConfigManager
in favor ofImmutableStore
, replacedconfig_manager
withdist_path
indefine_app!
-
feat: ✨ created
MutableStore
for mutable build artifacts
This replaces ConfigManager
fully.
-
many function signatures now include
MutableStore
, changes todist/
structure,mutable_store
now indefine_app!
,RouteInfo
includeswas_incremental_match
-
docs(book): 📝 added docs for new stores system
-
refactor(examples): ♻️ refactored perseus idioms to make more sense
Specifically, template functions are now defined inside the get_template
function.
-
docs(book): 📝 updated docs for current state of features
-
fix: 🐛 fixed inconsistencies in paths given to build paths vs incremental
Build paths used to get locale as well in path, not anymore.
-
chore: 🙈 ignored testing deployments
-
fix: 🐛 fixed content being interpolated in head in production
Just a missing .head.html
rather than .html
.
-
StringResult
/StringResultWithCause
are replaced byRenderFnResult
/RenderFnResultWithCause
-
fix: 🐛 fixed newlines/tabs in initial state causing serialization errors
We're now using JS raw strings, escaping as necessary, and then escaping control characters in the shell.
- docs(book): 📝 updated docs fro new error systems
0.2.3 (2021-09-26)
- templates: ✨ added context to templates if they're beeing rendered on the server or client (7600c95), closes #26
- ✨ made initial content container invisible for errors as well (0150c8d)
- ✨ made initial content container invisible once content has loaded (4daa8c2)
- ✨ renamed
__perseus_content
to__perseus_content_initial
and made__perseus_content
a class (7242d74)
- 🚑 changed browser-checking logic to not use context (4cd06c5)
- i18n: 🐛 used absolute paths in translation macros (a413e85)
- 🐛 changed
__perseus_content_rx
to useid
instead ofclass
(e504f6d)
0.2.2 (2021-09-25)
- templates: ✨ added ability to set http headers for templates (#25) (058d625)
- ✨ added static exporting (#23) (4838ba4), closes #22
- 📝 removed duplication in changelog (0ba3e2c)
- book: 📝 added docs on header modification (bca6430)
- 📝 added badges to readme (0441f80)
- 📝 removed unnecessary readme links (295a7b5)
0.2.1 (2021-09-23)
- routing: ♻️ refactored to eliminate only remaining js (dc21490)
0.2.0 (2021-09-21)
- renamed
incremental_path_rendering
toincremental_generation
, and the corresponding template function no longer takes a value - actix web integration now takes
static_dirs
andstatic_aliases
options js_init
no longer an option in actix web integrationerror_pages
now comes aftertemplates
andno_i18n
apps should not definelocales
at all- error pages use
Rc
s now, new options for actix web integration, app root must be of<div>
form - routing:
define_app!
no longer takes routing paths, just templates - i18n: templates no longer take translator (access via context instead)
- routing:
define_app!
redesigned, special meaning forindex
template name, app shell takes full templates,Locales
has new property - all
Arc<T>
s are nowRc<T>
s - i18n:
Translator
no longerSerialize
/Deserialize
- i18n:
FsTranslationsManager
now takes a vector of locales to initially cache - i18n: common locales no longer exist
- all user-facing interfaces take new i18n parameters
- book: ✨ added versions for book (bbdcea2)
- cli: ✨ added
eject
command (b747152), closes #14 - routing: ✨ moved subsequent load head generation to server-side (1e02ca4), closes #15
- ✨ added initial load control (7335418), closes #2
- ✨ added metadata modification systems (bb847aa), closes #2 #13
- ✨ added support for static content and aliases (7f38ea7)
- ✨ improved
define_app!
macro (8bf6dd5) - cli: ✨ added single-threaded mode for the CLI (5cb465a), closes #11
- cli: ✨ parallelized cli stages and removed rollup (7693ebf), closes #7 #9
- i18n: ✨ added dummy translator to support not using i18n (803b4f6)
- i18n: ✨ added fn on translations manager to get string translations (649a65d)
- i18n: ✨ added i18n to error pages and integrated fluent (89fa00e)
- i18n: ✨ added locale detection (b7ad607)
- i18n: ✨ added macros for translation and moved translator into context (cbfe50c)
- i18n: ✨ added method to get url in same locale as user currently in (fc8eeaf)
- i18n: ✨ added server-side translations caching (06b5fa4)
- i18n: ✨ feature-gated translators (a123f0d)
- i18n: ✨ removed concept of common locales (95b476f)
- routing: ✨ added perseus routing systems and simplified app definition (49aa2b9)
- routing: ✨ switched to template-based routing (78688c1), closes #12
- ✨ added build artifact purging to cli (ef0cf76)
- ✨ added i18n (a4402c0)
- ✨ made cli preserve relative paths in development (d79f029)
- 🐛 added
$crate
to invocation ofdefine_app!
(c2a4560) - 🐛 handled page rendering errors properly at initial load (3a9f44a)
- 🐛 removed deliberately inserted error for debugging (a1fec62)
- 🔒 disallowed
static_aliases
outside current directory (08971ca) - cli: 🐛 fixed cli
--no-build
option (9890457) - routing: 🐛 fixed #8 (5a787c4)
- routing: 🐛 fixed error duplication on initial load (53058ba)
- routing: 🐛 fixed link handling errors in #8 (197956b)
- ✏️ fixed displayed number of steps in cli serving (4 -> 5) (d1a6bb8)
- ✏️ updated all instances of WASM to Wasm (f7ec1aa)
- 🐛 used absolute paths in
web_log!
macro (945bd2a)
- ⚡️ inlined wasm load script to reduce full requests (6cfe8e1)
- cli: ⚡️ created workspace in cli subcrates (3e11ecd)
- i18n: ⚡️ removed needless translations fetch if not using i18n (7c6f697)
- ⚡️ switched to
Rc<ErrorPages>
to avoid producing unnecessaryErrorPages
(6786ff4) - ⚡️ switched to
Rc<T>
s instead ofArc<T>
s (8d70599)
- ♻️ cleaned up macros (30345f0)
- ♻️ renamed
incremental_path_rendering
toincremental_generation
and improved interface (cb60be0) - ♻️ rewrote
showcase
example to use cli (c2f1091) - 🎨 cleaned a few things up (0ab791f)
- 🔥 removed unnecessary
X-UA-Compatible
headers (73643b8) - i18n: 🚚 refactored to prepare for future multi-translator support (24f4362)
- book: 📝 added docs on migrating from 0.1.x (056fb58)
- book: 📝 added full intro to perseus (424e3f4)
- book: 📝 added hello world and second app tutorials to book (58eb92d)
- book: 📝 finished docs for v0.2.x (c7d3ea2)
- book: 📝 fixed relative paths in docs and added docs about
StringResultWithCause<T>
(39b3ce1) - book: 📝 wrote advanced docs on routing (31497ab)
- book: 📝 wrote book initial reference sections (f7f7892)
- book: 📝 wrote cli docs (e321c38)
- book: 📝 wrote docs for i18n, error pages, and static content (0375f01)
- book: 📝 wrote large parts of advanced docs and some other pages (d8fd43f)
- book: 🔖 released v0.2.x docs (3cd80d0)
- ✏️ fixed some typos and clarified things in readmes (5c59ae6)
- 💡 removed duplicate link typo in comment (379d549)
- 💡 removed entirely useless comment in showcase example (2105f5a)
- 📝 added explanation for 0.1% js to readme (6f0bd08)
- 📝 cleaned up docs (b6a6b72)
- book: 🚑 updated versions of sycamore in book (e41d3e5)
- examples: ✨ added new
tiny
example and updated readme with it (2c2d06b) - examples: 🚚 merged basic/cli examples and cleaned up examples (db6fbdd)
- 📝 updated roadmap in readme (c3ad018)
- 📝 wrote tutorial on building first app (19f0458)
0.1.4 (2021-09-11)
- 🐛 updated
basic
example perseus version (1d8d895) - 🚑 allowed env var specification of command paths in building/serving (5a2e494)
0.1.3 (2021-09-11)
0.1.2 (2021-09-03)
- 🐛 fixed cli executable name (573fc2f)
- 📝 added crate docs for
perseus-actix-web
(f5036e7) - 📝 added crate docs for
perseus
package (61ca6c0) - 📝 added crate documentation for
perseus-cli
and fixed doc typos (b3ec9ac) - 📝 updated readme with contact links (a2bc5f2)
0.1.1 (2021-09-03)
- ✨ added access to request data in ssr (02ce425)
- ✨ added actix-web integration (0e0f2f1)
- ✨ added basic cli (5e7a867)
- ✨ added basic sycamore ssg systems (c8530cf)
- ✨ added build command to cli (66dc282)
- ✨ added isr (5baf9bf)
- ✨ added page path matching logic (734f9df)
- ✨ added request conversion logic for actix web (71a5445)
- ✨ added revalidation and refactored a fully modular rendering system (c9df616)
- ✨ added serving systems to cli (335ff5d)
- ✨ added ssr (ac79996)
- ✨ added template method to define function for amalgamating states (1cb4356)
- ✨ allowed user render functions to return errors (fa50d4c)
- ✨ built subcrate tro underlie cli functionality (1e7e355)
- ✨ made config managers async (5e03cad)
- ✨ made rendering functions asynchronous (5b403b2)
- ✨ props now passed around as strings (7a334cf)
- ✨ re-exported sycamore
GenericNode
(8b79be8) - ✨ refactored examples and created preparation system in cli (8aa3d0f)
- ✨ set up cli systems for preparation and directory cleaning (36660f8)
- 🎉 added readme and license (0306a10)
- 🥅 set up proper error handling (7ea3ec0)
- 🐛 allowed build state to return
ErrorCause
for incremental generation (dd4d60f) - 🐛 fixed inconsistent path prefixing in
build_state
calls (96066d0) - 🐛 fixed recursive extraction and excluded subcrates from workspaces (c745cf2)
- 🐛 removed old debug log (ed4f43a)
- 🐛 used config manager instead of raw fs in
get_render_cfg()
(e75de5a)
- ♻️ changed
define_app!
'srouter
to use curly brackets (d5519b9) - ♻️ created sane library interface (51284a8)
- ♻️ moved logic into core package from example (b2e9a68)
- ♻️ removed useless render options system (1af26dc)
- 🚚 moved everything into packages (dcbabc0)
- 🚚 renamed pages to templates for clarity (7c9e433)
- 💡 removed old todos (9464ee5)
- 📝 added docs for cli (e4f9cce)
- 📝 added documentation for actix-web integration (1877c13)
- 📝 added example of state amalgamation (cd93fdc)
- 📝 added link to percy in readme (2072b9b)
- 📝 added repo docs (043b65f)
- 📝 added scaffold for basic tutorial docs (23fd0a6)
- 📝 fixed syntax highlighting in cli docs (3242409)
- 📝 updated docs for v0.1.0 (bf931e4)
- 📝 updated readme for significant dependency changes (1d424b5)
- 📝 wrote large sections of the book (a548531)