biomejs / biome

A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.
https://biomejs.dev
Apache License 2.0
15.65k stars 489 forks source link

☂️ Road to Biome v2.0 #3727

Open ematipico opened 3 months ago

ematipico commented 3 months ago

Tasks

We will use this issue to track all the necessary breaking changes and removal of deprecation we plan to do for the next major of Biome.

Biome related

Infrastructure and community related

These tasks are for the great Biome community and infrastrcture.

Developments

Engagements with this issue

If possible, please refrain from commenting on this issue unless you're involved with the developments. If you want to discuss a decision, please use the relative issue. If an issue doesn't exist, please use Discord, or wait for an issue to be open.

akkadaya commented 2 months ago

I'm new to the Biome project, I came here out of frustration from configuring ESLint in a mono-repo.

What does this mean? are trailingComma not allowed anymore?

Remove the deprecated trailingComma option

Again, I'm new and I haven't discovered everything about this project

ematipico commented 2 months ago

@akkadaya thank you for using Biome!

We have two options that have a very similar name, and we deprecated the one that doesn't follow the naming convention. It will be removed

nojaf commented 2 months ago

Enable .editorconfig support by default

It would be fantastic to have this enabled by default. It's unintuitive that this is set to false, requiring a biome.json file with the following content:

{
  "formatter": {
    "useEditorconfig": true
  }
}

to ensure my .editorconfig file is recognized.

nhedger commented 2 months ago

The v3 extension depends on rootPath, I'll have to check how this impacts the extension. I'll assign this task to myself.

https://github.com/biomejs/biome-vscode/blob/f9aa11226fd6a940f8dcbf0cb2ac951f894983b7/src/session.ts#L266-L269

ematipico commented 2 months ago

The v3 extension depends on rootPath, I'll have to check how this impacts the extension. I'll assign this task to myself.

biomejs/biome-vscode@f9aa112/src/session.ts#L266-L269

We could hold off on the change. The spec marks it as deprecated, but I have no idea if the editors out there are up to date.

nhedger commented 2 months ago

The v3 extension depends on rootPath, I'll have to check how this impacts the extension. I'll assign this task to myself. biomejs/biome-vscode@f9aa112/src/session.ts#L266-L269

We could hold off on the change. The spec marks it as deprecated, but I have no idea if the editors out there are up to date.

As far as I know, VS Code still uses it for their own extensions so I think we could indeed hold for a bit.

arendjr commented 2 days ago

Introduce a JSON formatter option that expands JSON object/array (aka lineWidth: 1)?

I think it's a good idea, but then I'd suggest the JS formatter should support the same option. It would give us another extra option compared to Prettier, but it would be a consistent way of handling this, I feel.

Something like expandLiterals: "always" | "followSource" | "onlyIfExceedingLineWidth", where followSource is our (and Prettier's) current behavior, "always" would be what many people request for JSON files. onlyIfExceedingLineWidth is just something I think makes sense to have as well :)