GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Correctly handle null value for `ropeFolder` config by osiewicz · Pull Request #604 · python-lsp/python-lsp-server

Conversation

@osiewicz

@osiewicz osiewicz commented Dec 1, 2024

Copy link
Copy Markdown
Contributor

In Zed we've tweaked defaults of pylsp for rope as we do not want it to create any files in users projects by default; we've happily passed null as an initialization option for ropeFolder only to find out that it is not handled correctly by plugin shim on pylsp side.

The faulty logic lies in the fact that dict.get returns None by default when a value is not present in dictionary, whereas it is also a valid user-provided value. Thus, when we check whether there's an user-supplied ropeFolder, we end up falling back to ropes default when said user provided value is null.

This PR fixes this issue by explicitly checking whether there's an user-provided ropeFolder and using that (regardless of it's value) if it's set.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

merrkry and Impelon reacted with thumbs up emoji
All reactions
  • 👍 2 reactions
@osiewicz osiewicz mentioned this pull request Dec 11, 2024
.ropeproject directories are a bit annoying python-rope/pylsp-rope#19
Open
@ccordoba12 ccordoba12 changed the title rope: correctly handle null value for ropeFolder config Correctly handle null value for ropeFolder config Feb 6, 2025
@ccordoba12 ccordoba12 added the bug Something isn't working label Feb 6, 2025
@ccordoba12 ccordoba12 added this to the v1.12.1 milestone Feb 6, 2025
@osiewicz @ccordoba12
rope: correctly handle null value for ropeFolder config
2aea31e
In Zed we've tweaked defaults of pylsp for rope as we do not want it to create any files in users projects by default; we've happily passed null as an initialization option for ropeFolder only to find out that it is not handled correctly by plugin shim on pylsp side.

The faulty logic lies in the fact that dict.get returns None by default when a value is not present in dictionary, whereas it is also a valid user-provided value. Thus, when we check whether there's an user-supplied ropeFolder, we end up falling back to ropes default when said user provided value is null.
@ccordoba12
ccordoba12 force-pushed the rope_allow_null_values branch from bdd6c84 to 2aea31e Compare February 6, 2025 16:41
ccordoba12
ccordoba12 approved these changes Feb 6, 2025
View reviewed changes

@ccordoba12 ccordoba12 left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your contribution @osiewicz!

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@ccordoba12
ccordoba12 merged commit 0508463 into python-lsp:develop Feb 6, 2025
@ccordoba12 ccordoba12 mentioned this pull request Jul 30, 2025
Prevent creating empty .ropeproject with null conf #664
Open
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@ccordoba12 ccordoba12 ccordoba12 approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

bug Something isn't working

Projects

None yet

Milestone

v1.12.1

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@osiewicz @ccordoba12
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.