This commit is contained in:
parent
88ae866b91
commit
10c862de59
3 changed files with 15 additions and 7 deletions
|
|
@ -289,7 +289,7 @@ impl DataValue {
|
||||||
pub fn as_number(&self) -> Option<i128> {
|
pub fn as_number(&self) -> Option<i128> {
|
||||||
match self {
|
match self {
|
||||||
DataValue::SignedNumber(n) => Some(*n),
|
DataValue::SignedNumber(n) => Some(*n),
|
||||||
DataValue::UnsignedNumber(n) => Some(*n as i128),
|
DataValue::UnsignedNumber(n) => i128::try_from(*n).ok(),
|
||||||
_ => None,
|
_ => None,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1232,6 +1232,18 @@ mod tests {
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn unsigned_number_conversion_rejects_i128_overflow() {
|
||||||
|
assert_eq!(
|
||||||
|
DataValue::UnsignedNumber(i128::MAX as u128).as_number(),
|
||||||
|
Some(i128::MAX)
|
||||||
|
);
|
||||||
|
assert_eq!(
|
||||||
|
DataValue::UnsignedNumber(i128::MAX as u128 + 1).as_number(),
|
||||||
|
None
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_empty_container_and_array_have_distinct_framing() {
|
fn test_empty_container_and_array_have_distinct_framing() {
|
||||||
let container = DataValue::Container(vec![])
|
let container = DataValue::Container(vec![])
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "mtp",
|
"name": "mtp",
|
||||||
"version": "0.2.0",
|
"version": "0.2.1",
|
||||||
"description": "MTP TypeScript SDK",
|
"description": "MTP TypeScript SDK",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"packageManager": "pnpm@11.8.0",
|
"packageManager": "pnpm@11.8.0",
|
||||||
|
|
|
||||||
|
|
@ -450,11 +450,7 @@ export function mtp(options: MTPVitePluginOptions): VitePlugin {
|
||||||
rebuildTimer = null;
|
rebuildTimer = null;
|
||||||
void (async () => {
|
void (async () => {
|
||||||
try {
|
try {
|
||||||
await buildIfNeeded(state, true);
|
await server.restart();
|
||||||
server.moduleGraph.invalidateAll();
|
|
||||||
if (server.ws) {
|
|
||||||
server.ws.send({ type: "full-reload" });
|
|
||||||
}
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
server.config.logger.error(
|
server.config.logger.error(
|
||||||
error instanceof Error ? error.message : String(error),
|
error instanceof Error ? error.message : String(error),
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue