Null-ls IS BEING ARCHIVED | Prime Reacts

Sdílet
Vložit
  • čas přidán 11. 07. 2023
  • Recorded live on twitch, GET IN
    / theprimeagen
    TJ: / teej_dv
    twitch: / teej_dv
    Article: github.com/jose-elias-alvarez...
    MY MAIN YT CHANNEL: Has well edited engineering videos
    / theprimeagen
    Discord
    / discord
    Have something for me to read or react to?: / theprimeagenreact
  • Věda a technologie

Komentáře • 145

  • @dasten123
    @dasten123 Před 11 měsíci +227

    I thought it was "null-is" and it was an NPM package that checks if something is null or not

  • @tabiasgeehuman
    @tabiasgeehuman Před 11 měsíci +261

    rest in peace null-ls. What an absolute beast of a plugin.

  • @otek_
    @otek_ Před 11 měsíci +79

    Damn, saddened to hear this. Thanks for all your hard work mr. Alvarez!!

  • @wondays654
    @wondays654 Před 11 měsíci +51

    Holy shit, I've been using null-ls for 8 months. I started my neovim journey with it. Now I'm gonna have to change my config file, I was looking forward to going a month without changing it.

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  Před 11 měsíci +33

      you wont have to change for some time
      but there will be a point you will have to, plus there is a community edition i am sure coming out shortly, but they will probably invert the process and make it easier

  • @skwtf
    @skwtf Před 11 měsíci +19

    I literally found out about it today when trying to configure prettier. Being happy to find a solution, I spend at least an hour on understanding what it does and putting it my config.
    Fuck my life

  • @Zeioth
    @Zeioth Před 10 měsíci +1

    I never expected such a wide coverage on a niche topic like this. Awesome job!!

  • @davidjohnston4240
    @davidjohnston4240 Před 11 měsíci +100

    If I remain ignorant of what null-ls does, I will be able to continue not to care. I assume null-ls is like ls, but it doesn't print out anything. Sounds great.

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  Před 11 měsíci +51

      it integrates all the different linters / formatters for neovim into a singular lsp

    • @davidjohnston4240
      @davidjohnston4240 Před 11 měsíci +43

      ​@@ThePrimeTimeagen That sounds like difficult programming. I will crawl back to the github hole and play with my statistics algorithms.

    • @Vampirat3
      @Vampirat3 Před 11 měsíci +3

      ​​@@ThePrimeTimeagen Sounds like a much larger and more useful tool than what it sounds like.
      i just thought it was just a primitive declaration on acid. did something with null.
      That seems like a critical thing to need if one uses it.
      edit.......
      sounds like too much of a time / work investment for a small unknown codebase - later

    • @TheMrKeksLp
      @TheMrKeksLp Před 11 měsíci +4

      Gigachad

  • @robertotonino2916
    @robertotonino2916 Před 11 měsíci +24

    Very sad to hear. Honestly always wondered how such plug-in could exist, just crazy. Hope the maintainer will take some time for himself and his family.
    Let’s hope this will be an opportunity to improve some of the issues mentioned by the author and create something even greater!

  • @s4ecki
    @s4ecki Před 11 měsíci +15

    I absolutely agree, as the author of crates.nvim, which supports code actions via null-ls, the one thing I would appreciate would be a builtin `vim.actions` api like `vim.diagnostics`. It could be lazy like lsp actions, where the source registers a callback and then the client asks for actions at a position in the code, instead of the source preemptively pushing actions like in null-ls.

  • @michaelmueller9635
    @michaelmueller9635 Před 11 měsíci +15

    The community doesn't show too much love ...sometimes.

    • @smallfox8623
      @smallfox8623 Před 11 měsíci +2

      Almost always this is an inherent problem with open source software

  • @rafaelbordoni516
    @rafaelbordoni516 Před 11 měsíci +11

    How dos VSCode handles it? Since it's like one plugin per language I'm assuming each plugin handles everything from downloading the LSP to using it for auto complete, actions, formatting, linting and diagnostics. Why do we make it different in Neovim? Why do we try to make a general plugin that tries to work with all languages and their free-for-all actions? Can't we just install a plugin per language too?

    • @infastin3795
      @infastin3795 Před 11 měsíci +3

      "Oh no, i have to install multiple plugins instead of one"

  • @remrevo3944
    @remrevo3944 Před 11 měsíci +4

    On the last comment about haskell: Technically even computation is a side effect, so unless you're driving haskell's system somehow it would not even compute/heat the room.

    • @perigord6281
      @perigord6281 Před 11 měsíci

      Not if the computation creates a new reality

  • @johnychinese
    @johnychinese Před 11 měsíci +3

    Yes keep dropping them bangers
    The bangeragen 🔥

  • @Ataraxia_Atom
    @Ataraxia_Atom Před 11 měsíci +10

    This really reminds me of Rich talking about svelte. Everyone has great ideas but you really have to just say no

  • @a_maxed_out_handle_of_30_chars
    @a_maxed_out_handle_of_30_chars Před 11 měsíci +16

    wooh, i thought this was clickbait for a moment 😭

  • @Sw3d15h_F1s4
    @Sw3d15h_F1s4 Před 11 měsíci +13

    Let Tom re-write Neovim LSP in JDSL, hes a super genius!

  • @erlendtryti
    @erlendtryti Před 11 měsíci +14

    Poor Haskell didn't deserve that.
    Haskell has never done anybody wrong, in fact, it's never done anything ever.

    • @perigord6281
      @perigord6281 Před 11 měsíci +3

      Just wait a bit, It's quite lazy.

  • @jeezusjr
    @jeezusjr Před 11 měsíci +4

    AI Teej makes an appearance! Also super sad about losing null-ls. :(

  • @samsu9678
    @samsu9678 Před 11 měsíci +5

    I think the underlying issue is that despite how good LSP is, it is not a ‘complete’ tool and not IDE enough. Therefore you have to incorporate multiple tools to get a complete IDE experience. So as always, blame Microsoft😂

  • @Kane0123
    @Kane0123 Před 11 měsíci +1

    What an outstanding guy.

  • @avi7278
    @avi7278 Před 11 měsíci +11

    LazyVim is by FAR the best distro. I've built upwards of 10 of my own configs, tried Lunar, Evo, Chad (almost all of them). Lazy first of all is the only one that had keymappings that were a) expected and b) very close to my own personal config. Further TJ mentioned it but the problem with most distros is that they feel very "proprietary" in terms of how they extended / customized. It's like learning a whole other thing than nvim. LazyVim on the other hand feels very much the same approach I would take just building my own configuration and extending nvim. I don't think I will ever maintain my own base config again. LazyVim is what I would have done anyway if I was more versed in neovim. It's very good. Only small neg is the documentation is sparse in places.

    • @antoineleduc7611
      @antoineleduc7611 Před 11 měsíci

      There is like 2 file in LazyVim (util/init.lua, and core/lazy.lua) which kinda seems like magic -> We know what they do mostly but lots of small details i wouldnt be able to implement on my own setup
      Apart from that i agree it reads very well, and the import of plugins to overwrite the one in lazyvim/plugins + the keymaps make absolute sense
      But i keep having stuff that break even on fresh install (notify.nvim is basically red everytime i telescope anything or try to use leap.nvim..) so i think ill just end up dropping it and make like my own config heavily inspired by lazyvim plugin configs, one plugin a day, little by little rebuilding the wheel for the most part
      debugging issues right after you clone and expect everything to work out the box is painful

    • @FolkeLemaitre
      @FolkeLemaitre Před 11 měsíci

      @@antoineleduc7611 I've never heard about an issue with notify.nvim. Would be great if you could report an issue to the LazyVim repo with more details

  • @XDarkGreyX
    @XDarkGreyX Před 11 měsíci +2

    I missed one of the "(l|i)s" and for a split-second I was like: what, the primitive is getting removed?

  • @pabloandresrojasrivera2912
    @pabloandresrojasrivera2912 Před 11 měsíci

    Amazing conversation

  • @ricardomarliere
    @ricardomarliere Před 11 měsíci +2

    if not neovim, what is he using??? 😅

  • @EvitaStenqvist
    @EvitaStenqvist Před 9 měsíci

    soo what was the editor he switched to?

  • @Jmcgee1125
    @Jmcgee1125 Před 11 měsíci +1

    Dang. Null-ls was great, I'll miss it.

  • @andrewc8125
    @andrewc8125 Před 11 měsíci +7

    This made me so sad that I open the VSC for 5s.

  • @Gunzy83
    @Gunzy83 Před 11 měsíci +2

    TJ says "like" counter: 10^26

  • @porky1118
    @porky1118 Před 10 měsíci

    4:40 Is it really so special to build an editor? I could write one in a few weeks and it would be better than nano, right?
    Maybe I would just fork an existing minimalistic Editor in Rust and add new features into it, when I need some.

  • @vnshngpnt
    @vnshngpnt Před 11 měsíci +5

    "Especially since I'm not using Neovim as my primary editor" Based and enlightened pilled

  • @MarcelRobitaille
    @MarcelRobitaille Před 11 měsíci

    Welp, I finally got around to setting up null-ls Last week...

  • @rasib101
    @rasib101 Před 11 měsíci

    interesting never heard of kickstart.

  • @theblckbird
    @theblckbird Před 5 měsíci +1

    none-ls is here!

  • @DaminGamerMC
    @DaminGamerMC Před 11 měsíci +1

    im not a neovim guy, what did the plugin do?

    • @Aaku13
      @Aaku13 Před 11 měsíci +1

      null-ls made it super easy to install new language servers, like you're in a lua file and you can quickly install a lua language server (kinda like the bottom right prompt in vs code saying "do you wanna install lua plugin x for this file?").

    • @thepaulcraft957
      @thepaulcraft957 Před 11 měsíci +1

      ​@@Aaku13no it didn't. Null LS made it possible to use extern linters and stuff like there were LSPs

  • @MaryTheTankGirl
    @MaryTheTankGirl Před 11 měsíci

    Damn I really need to watch a mason tutorial. I still only use the lsp.

  • @stevenhe3462
    @stevenhe3462 Před 11 měsíci

    Man, just look at the issues and PRs below the announcement that references this and the amount of issues about switching away.

  • @cariyaputta
    @cariyaputta Před 11 měsíci

    Time to migrate from null-ls, this situation sucks. I can try running raw Mason, but sometimes it doesn't work at all for certain code actions or linters.

  • @cchance
    @cchance Před 11 měsíci

    For the priority issue instead of the z-index issue wouldn't you just implement a graph tree like say the render pipeline from bevy, where a plugin can just say "before-X" and allow transition events etc

  • @Kartoflaszman
    @Kartoflaszman Před 11 měsíci +2

    i use haskell btw

  • @daltonyon
    @daltonyon Před 11 měsíci

    Lets contributing!!

  • @soumen_pradhan
    @soumen_pradhan Před 11 měsíci +29

    Why does Teej sound like an AI trained on Valley Girl accent.

    • @teej_dv
      @teej_dv Před 11 měsíci +9

      wut

    • @SimonBuchanNz
      @SimonBuchanNz Před 11 měsíci

      You are aware that "valley girl accent" is just the California accent, right?

    • @teej_dv
      @teej_dv Před 11 měsíci +1

      @@SimonBuchanNz yeah, but I'm from the Midwest and live there still haha

    • @SimonBuchanNz
      @SimonBuchanNz Před 11 měsíci

      @@teej_dv that's the AI part, I assume

    • @soumen_pradhan
      @soumen_pradhan Před 11 měsíci

      @@SimonBuchanNz Maybe it's my non-American ears that convert all American accents to Cali one.

  • @hkupty
    @hkupty Před 11 měsíci +1

    In point 2, I have the same problems with iron.nvim and I'm actually considering the same route, deprecating and archiving it.

  • @follantic
    @follantic Před 9 měsíci

    null-is: module.exports = require("is-null")
    Come on, sombody's gotta do it!

  • @LadyTink
    @LadyTink Před 10 měsíci +1

    Primes face be like
    ¦->{

  • @sm0kyJoe
    @sm0kyJoe Před 11 měsíci

    Oh no don’t tell me I’ll have to move to emacs

  • @willadams6217
    @willadams6217 Před 11 měsíci

    I've personally haven't found a use for null-ls in a while, I see a lot of the distros use it though. I did look at using it in the early days to get eslint working, but there is a lsp for that now. For formatting there is formatter.nvim which works great.

  • @drevan1138
    @drevan1138 Před 8 měsíci

    I’m going to fork it and rename it undefined-ls or undefined-ls-la.

  • @cezarygrzanka4229
    @cezarygrzanka4229 Před 11 měsíci +2

    16:00 You can easily override the default cmd in mason, the only thing to keep in mind it's propably that you have to use absolute path. Anyway, you can call mason_lspconfig.setup_handlres and there define handler for each server even if it's autoinstalled

    • @cezarygrzanka4229
      @cezarygrzanka4229 Před 11 měsíci +3

      Also, if you do not install formatter via Mason, it fallback to global path. I had to check this once rustfmt was labeled as installed via rustup

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  Před 11 měsíci +2

      i'll have to find this :)

    • @_Ricoello
      @_Ricoello Před 11 měsíci

      ​@@ThePrimeTimeagen I actually ran into this with ocaml AND rust. I'm using lazyvim and it lets me set `mason = false` for each lsp server, and then lspconfig will just use the one from path. But for `mason-lspconfig` you should be able to do `automatic_installation = { exclude = { "ocamllsp" } }`

  • @AScribblingTurtle
    @AScribblingTurtle Před 11 měsíci +3

    I don't use Null-ls , but I can understand TJs Point.
    At some point, there must be a line. Vim has so many configurations (I would say almost as many, as there are users).
    The more automation you provide to the user, the less they will understand why some things simply don't work.
    Vim Distros like NvChad and LunaVim make it even worse, because now they bring in people who don't even know how to configure it.
    (In a Sence they abstract away the configuration, etc...)
    Having a config to jump of off, is nice, but simply providing a repo with a base configuration is not helping to much IMO
    I honestly love your "Zero to LSP" VIdeo and have recommended it to a lot of people, who asked "How do I use Vim as my main editor".
    It:
    - Is quick
    - easy to follow
    - gives a base understanding on how NeoVim is configured
    - shows how to migrate old VimRC configs to Lua
    - shows all the essential plugins a developer needs to get started
    We need more means to educate users on how to configure it, instead of doing the configuration for people.

  • @fulconandroadcone9488
    @fulconandroadcone9488 Před 10 měsíci

    I was so happy that null is being retired just to turn sad instead. Man should I do more sleep.

  • @robolist2277
    @robolist2277 Před 11 měsíci

    NOOOO

  • @caduhidalgo4996
    @caduhidalgo4996 Před 11 měsíci

    lmao TheHaskellLOLagen 🤣🤣🤣

  • @adama7752
    @adama7752 Před 11 měsíci +3

    Sound Level > /dev/null

  • @aquepaique
    @aquepaique Před 11 měsíci

    I hope folke takes charge in the next gen null-ls

    • @dolvur
      @dolvur Před 11 měsíci +2

      That would be really awesome. Knowing folke the implementation would be very good
      He's already maintaining so many repos/plugins though, so I'm worried he would burn out

  • @aarondanen3150
    @aarondanen3150 Před 11 měsíci

    I wonder what he uses instead of nvim

    • @darukutsu
      @darukutsu Před 11 měsíci +1

      Probably emacs since there isn't better option.

    • @aarondanen3150
      @aarondanen3150 Před 11 měsíci

      @@darukutsu eMacs > nvim?

    • @darukutsu
      @darukutsu Před 11 měsíci

      @@aarondanen3150 no :D i meant that apart from nvim and emacs there isn't better option

    • @aarondanen3150
      @aarondanen3150 Před 11 měsíci +1

      @@darukutsu bet homie uses ed

  • @AbdoAzmy2005
    @AbdoAzmy2005 Před 11 měsíci +1

    Are you related to dr Disrespect

  • @hansmaulwurf8027
    @hansmaulwurf8027 Před 3 měsíci

    You were supposed to pivot and your hand would still be ok.

  • @LITRLG0D
    @LITRLG0D Před 10 měsíci

    TJ's skin looks so nice! Prime's mustache looks so manly! Two handsome gents for sure!

  • @darukutsu
    @darukutsu Před 11 měsíci

    It's so sad that null-ls died of ligma

  • @ER-oj8mo
    @ER-oj8mo Před 11 měsíci

    Lol I installed null-Ls on Monday

  • @josegabrielgruber
    @josegabrielgruber Před 11 měsíci

    Roseh

  • @Tobsson
    @Tobsson Před 11 měsíci +1

    I respect PDE instead of an IDE, but I use nvim because its so low on resources. Would be nice if any of these IDEs ambitions of neovim were really good.
    Kickstart is the only one I've tried that's actually the closest to just work out of the box, good custom motions and only need a little tinkering. All the others always gives one little error once you do this specific little thing. They all want to be vscode instead of making a really good vim experience.
    Sadly I often get overwhelmed trying to learn what nvim can do and how to do it do become one of those PDE masters.

  • @Danielo515
    @Danielo515 Před 11 měsíci +1

    I’m so tired of neovim (an plugin) updates. I’m happy with the current feature set, please stop breaking my editor

  • @edgarsilva8030
    @edgarsilva8030 Před 11 měsíci +2

    Firstagen

  • @jonforhan9196
    @jonforhan9196 Před 11 měsíci +1

    we need neovim as a service

    • @Slashx92
      @Slashx92 Před 11 měsíci

      I just need someway to integrate it into my iAss solution

    • @sck3570
      @sck3570 Před 11 měsíci

      you mean naas

  • @bigl9527
    @bigl9527 Před 11 měsíci

    So that's why my null-ls failed to config

    • @darukutsu
      @darukutsu Před 11 měsíci

      Probably not, it's still working for me. Probably ~/.local/ holds something on my system... Mason-null-ls doing the hard job for me :D

    • @bigl9527
      @bigl9527 Před 11 měsíci

      @@darukutsu still can't figure out how to configure null-ls. For some reason it just won't work

    • @darukutsu
      @darukutsu Před 11 měsíci

      @@bigl9527 i had problems with python formatters some like black, blue don't work but bash and autopep8 do. I use LSP in programming languages.

  • @browniesbigdawgz
    @browniesbigdawgz Před 11 měsíci

    Still trying to understand what made null-ls great. Not a light. Just geniune ignorance. Is it ease of integrating autoformat? I don't mind doing the autocmd stuff

    • @browniesbigdawgz
      @browniesbigdawgz Před 11 měsíci

      Not a slight*
      Just saying because I think I am definitely missing something here. Obvious noob

    • @thepaulcraft957
      @thepaulcraft957 Před 11 měsíci

      It connected many tools to the built-in LSP api stuff

  • @bitskit3476
    @bitskit3476 Před 11 měsíci +2

    I just can't get used to vim as an editor. I make too many typos, and constantly having to switch modes does far more damage to my productivity than anything vim does to improve it.

    • @SimonBuchanNz
      @SimonBuchanNz Před 11 měsíci +1

      The main problem is just that escape is too far away on modern keyboards. On the keyboard vi was created on, escape was where modern keyboards put caps lock, so if you can swap those it's a lot nicer to use.

    • @bitskit3476
      @bitskit3476 Před 11 měsíci

      @@SimonBuchanNz I use caps lock a lot though.

    • @MichaelLeonard
      @MichaelLeonard Před 11 měsíci

      @@bitskit3476why

    • @bitskit3476
      @bitskit3476 Před 11 měsíci

      @@MichaelLeonard when coding, I use it for enums, literals and macros. But outside of that, I also use it when I'm trying to emphasize something or when I'm typing in my password and want to be certain that I'm not going to mess up the capitalization.

    • @MichaelLeonard
      @MichaelLeonard Před 11 měsíci

      @@bitskit3476 I mean I know what caps lock does, but shift does essentially the same thing while giving you more precise control.
      I've had caps lock mapped to the control key for years, always a fun surprise when I hit caps lock on someone else's computer.
      If typos are common and you regularly use caps lock instead of shift I'm going to take a guess that your typing skills are not at a point where Vim would be any sort of advantage. I don't mean that as a dig or anything.
      You might instead get more benefit in focused improvement of your typing accuracy and speed before worrying too much about what editor you are using.
      IMO it's just an annoyance to have to take my hand off the keyboard to use the mouse, after using Vim for a while you shouldn't even have to consciously think about what mode it is in (hint: it should always be in normal mode unless you are actively typing) or how to best move the cursor from one spot to another. But if you're still struggling with touch typing, you are fighting an uphill battle.

  • @cheako91155
    @cheako91155 Před 11 měsíci

    I've had plenty of issues where project A says it's an issue for project B and they say it's for project C and they say it's for project B then they say it's for project A and everyone insists they won't work on it. Projects need to take ownership of anything and everything reported to them and facilitate a three-way or four-way call, passing(a hot transfer) the user along so that a solution can be reached.

    • @cheako91155
      @cheako91155 Před 11 měsíci +1

      We also need to standardize the way issues are reported, it's no good to have to super search several issue databases looking for an existing issue.

  • @gokukakarot6323
    @gokukakarot6323 Před 11 měsíci

    How to become like TJ , rather like what sort of exeperience goes into building something like this.
    The more I spend time writing APIs and buliding systems, the more bored I get, because after sometime its like being really good at finding points of failure.
    Something like czcams.com/video/MZytZW_k-9Y/video.html
    And I want to be able to know what I don't know about building such things. Like I have build super simple text editor 1 time. And I was exhausted without much proper guidelines.
    I would love to work on neovim core. Atleast in the begging I could do this all day :D

  • @rumplstiltztinkerstein
    @rumplstiltztinkerstein Před 11 měsíci +2

    We understand it was an accident Prime...
    Blink twice if you need help

  • @VACatholic
    @VACatholic Před 11 měsíci

    The jannies do it for free!

  • @PurpleLibRight
    @PurpleLibRight Před 11 měsíci

    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

  • @blacksundarkskies
    @blacksundarkskies Před 3 měsíci

    going foss is a mistake for any developer , am not doing shit if am not getting paid for it

  • @0xMukesh
    @0xMukesh Před 11 měsíci +1

    first

  • @paracelsus_rose6934
    @paracelsus_rose6934 Před 11 měsíci

    Give folke 3 days. When lazy format.

  • @oumardicko5593
    @oumardicko5593 Před 11 měsíci +5

    I use Vscode, by the way XD

  • @redhawk3385
    @redhawk3385 Před 11 měsíci +1

    docs exist to not be read 💀

  • @Guilherme-qk9so
    @Guilherme-qk9so Před 11 měsíci

    if you're being a victim of home abuse and are too afraid to come out and say it, lick your keyboard /s

  • @thingsiplay
    @thingsiplay Před 11 měsíci

    The Neovim config is so try hard. I prefer standard Vim config.

  • @perfectloser
    @perfectloser Před 11 měsíci

    Honestly, I hate to see a project like null-ls getting sunset like this but thank you and TJ for pointing me to kickstart.nvim