Comments (2)
TypeScript frequently forbids code that would be valid according to specification. The question to ask is: Would people consider it a potential bug in their code if they pass in null
? I'd say yes.
from typescript.
In library-authored code, I would agree, but it's of a native API we are talking about. And, as I pointed out, the official wiki recommends not to check for null on resource creation because the API is meant to support null values in place of resources.
You should really only get null from these functions if the context is lost and in that case thereβs no reason to check. WebGL is designed so that for the most part everything just runs as normal even when a program or shader is null.
khronos.org --- https://www.khronos.org/webgl/wiki/HandlingContextLost#Don%E2%80%99t_check_for_null_on_creation
So because the type definitions from lib.dom
don't include null
for the methods accepting resources or null (in the example shaderSource
, compileShader
, typescript raises errors on code which is recommended on the official doc.
from typescript.
Related Issues (20)
- Default import from an ESM package into a CommonJS project with esModuleInterop is faulty HOT 3
- Watch cannot handle large amount of file changes HOT 1
- generator next type should be inferred as union (instead of intersection) of yields' types OR just unknown
- Elementwise elaboration fails to be found for properties mixed with incompatible index signatures using intersections
- Error when accessing properties on `globalThis` with the same name of a global variable
- [NewErrors] 5.5.0-dev.20240428 vs 5.4.5 HOT 49
- Private class properties prevent `Readonly` type inference HOT 2
- [ServerErrors][TypeScript] 5.5.0-dev.20240428 HOT 12
- [ServerErrors][JavaScript] 5.5.0-dev.20240428 HOT 9
- Strange runtime caching bug involving `as const` and `const T` generic HOT 1
- When relatively importing a `.d.ts` file in a declaration file, TypeScript loads a `.ts` file instead HOT 7
- Calling decorators with @ loses type safety with function as argument HOT 1
- Include error maps in the typescript libraries for web apis to give developers easy access to potential thrown exceptions HOT 2
- jsdoc @type does not resolve a type
- Removing `node_modules`, running `npm ci` leaves diagnostics behind in ts and tsconfig files
- Module resolution: typeRoots key conflict in cache
- JSDoc @import not detecting use in @callback HOT 2
- Segmentation fault on Node.js 22 HOT 26
- Constraint in generic type forgotten in assignability check
- tsc crash with "TypeError: Cannot read properties of undefined (reading 'flags')" HOT 3
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 typescript.