Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multisite rewrite #81

Merged
merged 314 commits into from
Aug 7, 2022
Merged

Multisite rewrite #81

merged 314 commits into from
Aug 7, 2022

Conversation

srid
Copy link
Owner

@srid srid commented Feb 8, 2022

For #75

@srid
Copy link
Owner Author

srid commented Feb 11, 2022

Gotta simplify the typeclass and rethink it more in order to be able to have composable sites in Ema.

This was linked to issues Feb 13, 2022
@srid srid changed the title Multi site prototype Multi site refacrtor Feb 13, 2022
@srid srid changed the title Multi site refacrtor Multi site refactor Feb 13, 2022
@srid
Copy link
Owner Author

srid commented Feb 13, 2022

Ex04_Multi.hs demonstrates how combining multiple sites would look.

Typeclass is no more; instead we have Site model route type, which also contains RouteEncoder model route. Composing these are straightforward than composing type classes. (Not applicable anymore due to generic deriving)

@srid srid self-assigned this Mar 10, 2022
srid and others added 15 commits July 17, 2022 15:11
* Update nixpkgs

* nix: use nixpkgs-unstable (advances +2 days)
* Rename allRoutes -> routeUniverse

Because, it is consistent with routeEncoder. All types/methods are now
prefixed with "route":

- RouteModel
- routeEncoder
- routeUniverse

* Drop RouteEncoder, exposing the underlying prism (albeist as Prism_ out of necessity)

* rename module names as well

* Even mkRoutePrism is redundant; use toPrism_

Especially it puts the model argument in the function argument itself,
just like routeUniverse.

* Drop applyRoutePrism (fromPrism_ is good enough)

* Extract eitherPrism

* Expose giso

* Drop singletonRoutePrism (this is just "only" from optics-core)

* Update docs
… IsRoute) (#120)

* Added type-errors-pretty dependency

* Implemented static verification of subroutes & submodels

* Introduce HasAnyT 

Co-authored-by: Sridhar Ratnakumar <srid@srid.ca>
* Rewrote tailwind css as inline vanilla css

* Explicitly set font-size, tab-size, line-height

* Add box-sizing + adjust width/height

This will subtract border and padding from the element width/height
making it consistent across different resolutions.

* Link to original version

* Add to changelog

Co-authored-by: Sridhar Ratnakumar <srid@srid.ca>
+ Added test-suite `test-type-errors`
+ Refactored default-extensions so they can be reused via import syntax

Co-authored-by: Sridhar Ratnakumar <srid@srid.ca>
@srid
Copy link
Owner Author

srid commented Aug 6, 2022

Documentation (./docs) is done. If anyone wants to improve documentation further, please open PRs!

#121 is the only task left I think for this PR.

@srid
Copy link
Owner Author

srid commented Aug 6, 2022

Here's the blog post draft: https://github.com/srid/srid/pull/1/files

Feedback is most welcome. I'd like to release it tomorrow possibly.

srid and others added 5 commits August 6, 2022 16:58
* Move indicator HTML to its own file

* move the shim too

* undo NeatInterpolation escapes

* Move the error message to its own file

* Have bin/run reload on ./www changes

* Update cabal file
@srid srid merged commit 6e618ae into master Aug 7, 2022
@srid
Copy link
Owner Author

srid commented Aug 7, 2022

Merged to master, and docs have been updated: https://ema.srid.ca/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Can't install on GHC 9 Route encoding isomorphism checks Multi site Log when main loop exits
4 participants