Comments (13)
Switched to uvu/assert
everywhere!
from micromark.
The reason to use power-assert was that vite and webpack were not able to use assert: #87
from micromark.
I would be happy to create a types package with type assertions for any package that you would like to use. Looks like uvu/assert
declares their own types though so not sure how long it would take to get that merged.
from micromark.
Thanks!
from micromark.
Just noting our build started breaking too because of this issue.
from micromark.
how did it work before?
from micromark.
Apparently, it previously picked up the actual npm assert
package, which "simply" worked. Our monorepo package.json
explicitly installs this package, so it was always there.
from micromark.
I’m thinking of either reversing the change and just documenting that folks need to configure their bundlers (by installing assert
, by using https://github.com/unassert-js/rollup-plugin-unassert or https://github.com/unassert-js/webpack-unassert-loader, or by configuring their bundler to polyfill assert
). Or, alternatively, to create a new mini-assert
and get unassert
to use it.
from micromark.
Since it's just simple assertions, that would be a really short function to implement. I'd even consider inlining it.
also, from a quick search in npm (searched for "tiny assert") there's https://www.npmjs.com/package/nanoassert
from micromark.
One important addition is TypeScript, which that package doesn’t have. I was also thinking of uvu/assert
, but it doesn’t have typescript assertions either,.
I'd even consider inlining it.
That prevents the assertions from being removed. micromark does not include assertions in production code. That would add assertions to production code.
from micromark.
I see. I don't think having it inline vs external package should affect the ability to disable / tree shake it in production mode. I'm not sure of micromark's current build process though, so I could be mistaken...
from micromark.
At least one assertion also does type narrowing in uvu https://github.com/lukeed/uvu/blob/d56753ec20928da1c22ff093cb07ce3c67613706/src/assert.d.ts#L4
But that and several other type fixes are unreleased, having happened after https://github.com/lukeed/uvu/releases/tag/v0.5.1
from micromark.
Hi! This was closed. Team: If this was fixed, please add phase/solved
. Otherwise, please add one of the no/*
labels.
from micromark.
Related Issues (20)
- 3.0.8 seems to introduce a module level dependency on document HOT 9
- `index.d.ts` is missing in `micromark-util-encode` published files HOT 3
- HTML with excess whitespace is not parsed correctly HOT 2
- List items wrapped in <p> tags due to trailing space HOT 3
- hard break at the end of a paragraph is not properly parsed HOT 3
- Make `definitions` available to extensions HOT 2
- Custom extensions break in development mode, despite working in production HOT 6
- & in image url will be encode to html entity HOT 2
- Configure collapsing newlines into a single paragraph HOT 3
- TokenizeContext.sliceSerialize throws in sliceChunks if first chunk of token is Code instead of string HOT 20
- Reduce execution time by ~11% with a simple reimplementation of TokenizeContext.now HOT 3
- nested ordered lists not starting with 1. are not detected HOT 4
- `TokenizeContext.sliceSerialize` for `Token.type` of `setextHeading` includes non-heading content from outside the range of [`startLine`, `endLine`] HOT 1
- `micromark-util-symbol` can not be imported by typescript HOT 9
- Strings ending with `\n-` are compiled into a level 2 heading HOT 3
- Error - [webpack] 'dist': ./node_modules/micromark-util-decode-numeric-character-reference/index.js 23:11 Module parse failed: Identifier directly after number HOT 12
- control character and puntuation cause extra emphasis to appear HOT 3
- ES5 Compatibility HOT 6
- uvu shouldn't be set in dependencies HOT 2
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 micromark.