Comments (2)
I'm willing to open a PR for this, I want to make sure I have the right idea because I didn't spend enough time in the project to understand what this code does. Here's my idea:
The trait MakeRx looks like this (without the doc comments):
pub trait MakeRx {
type Rx: MakeUnrx;
#[cfg(debug_assertions)]
const HSR_IGNORE: bool = false;
fn make_rx(self) -> Self::Rx;
}
Meaning HSR_IGNORE
is available on types that implement the MakeRx
trait only on debug builds.
But the functions get_frozen_state_and_register
and get_frozen_global_state_and_register
both have this condition:
if *is_hsr && S::HSR_IGNORE {
return Ok(None);
}
Which has no guard to not be compiled in non-debug builds.
I would propose to simply guard either the full condition, or split it in order to prevent the compiler from tying to find HSR_IGNORE on non-debug builds.
Or perhaps HSR_IGNORE should be defined on all builds and in this case we would just remove it from the trait definition.
Please let me know, I'm willing to open a PR if it is a simple change (again because of my light understanding of what is actually going on there) or feel free to fix it quickly.
PS; I'm surprised something like this would not be picked up while trying to build the library in release mode, I haven't tried though.
from perseus.
Oh I'm an idiot, thank you very much, you're absolutely right. PR would be great! (I'll also check up on the CLI tests, which should have caught this...)
from perseus.
Related Issues (20)
- Incremental generation is broken for a template named index in the beta.19 HOT 4
- Build state function with non-`Clone` state results in suboptimal compiler error HOT 3
- Using the translation feature as well as having global build state causes an error when the user navigates directly to the root page (or any valid page) when not including the locale in the path. HOT 1
- Failed to run `cargo install perseus-cli` without the `--locked` flag HOT 4
- Using the builder pattern `input().bind_value(...)` perseus panics HOT 5
- Using global state in a Capsule as well as a Template leads to unreachable code being reached at build-time HOT 2
- Vectors do not work in `ReactiveState` HOT 4
- [Router] [Bug] When using `.incremental_generation()`, you cannot navigate to a new route on the same page. HOT 3
- When trying to run a perseus app with docker, it gets: `Error: asset './dist/render_conf.json' not found in store` HOT 2
- Fail proceed 'perseus build' after upgraded to v0.4.1 HOT 3
- Build-time state can be user or "segment" specific, and it's actually easy to setup HOT 3
- Missing </body></html> HOT 1
- perseus-cli/0.4.2 crate is missing the tests folder HOT 3
- console_error_panic_hook HOT 2
- State amalgamation with different types HOT 1
- The command `Perseus serve -w` is very slow when listening to a large number of files. HOT 1
- Bootstrap scrollspy support HOT 4
- Cli will report "Couldn't find cargo" when it can't find powershell HOT 12
- Unable to Fetch Data from API Container Using Sockets in Perseus Container HOT 1
- Connection refused on custom dflt_server on GET and POST HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from perseus.