You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I propose an enhancement to the Deno configuration system that introduces two options for configuration management:
Support for TypeScript Configuration Files: Allow users to define their Deno configuration in a TypeScript file (deno.config.ts), enabling the use of module imports for shared configurations.
Extending JSON Configuration Files: Enable deno.json to reference and extend configurations from other JSON files, reducing redundancy and improving maintainability.
Motivation:
Avoiding Redundancy: Currently, when configuring properties like fmt, users must rewrite all properties in deno.json. This can lead to duplication and increased maintenance overhead. By allowing configuration files to extend other files, users can manage shared settings more efficiently.
Modular Configuration: Using a TypeScript configuration file allows developers to import shared configurations as modules. This promotes code reuse and makes it easier to manage complex configurations across multiple projects.
Improved Developer Experience: Both options would enhance the developer experience by simplifying configuration management and reducing the likelihood of errors due to duplication.
Support for TypeScript Configuration Files: Allow users to define their Deno configuration in a TypeScript file (deno.config.ts), enabling the use of module imports for shared configurations.
This was discussed when initially adding a configuration file to Deno and it was rejected because it will greatly negatively impact startup performance.
Extending JSON Configuration Files: Enable deno.json to reference and extend configurations from other JSON files, reducing redundancy and improving maintainability.
I propose an enhancement to the Deno configuration system that introduces two options for configuration management:
Support for TypeScript Configuration Files: Allow users to define their Deno configuration in a TypeScript file (
deno.config.ts
), enabling the use of module imports for shared configurations.Extending JSON Configuration Files: Enable
deno.json
to reference and extend configurations from other JSON files, reducing redundancy and improving maintainability.Motivation:
Avoiding Redundancy: Currently, when configuring properties like
fmt
, users must rewrite all properties indeno.json
. This can lead to duplication and increased maintenance overhead. By allowing configuration files to extend other files, users can manage shared settings more efficiently.Modular Configuration: Using a TypeScript configuration file allows developers to import shared configurations as modules. This promotes code reuse and makes it easier to manage complex configurations across multiple projects.
Improved Developer Experience: Both options would enhance the developer experience by simplifying configuration management and reducing the likelihood of errors due to duplication.
Proposed Implementation:
TypeScript Configuration:
Extending JSON Configuration:
The text was updated successfully, but these errors were encountered: