Comments (4)
Took a look at this one.
I think we can change the assertion into breaking the loop. I checked the history and it seems the assertion is there to make static analysis happy. Traced it back to this one eb3eab8
If I understand the code correctly, this variable is None
when we are the the top of the call stack. If we break the loop at that point we get reasonable guess for the path to start the lookup.
To be honest, I could not reproduce the issue with "typical" code.
I suspect introducing or not os.path.exists(frame.f_code.co_filename)
caused the problem.
With this assumption I could reproduce it in the following way on Ubuntu.
Create a test.py with the following content:
#!/usr/bin/env python3
import dotenv
import os
os.unlink('test2.py')
if path := dotenv.find_dotenv(raise_error_if_not_found=False):
print(path)
else:
print("no path")
Create a symbolic link with ln -s test.py test2.py
Run python test2.py
Now I guess this is not your use case @HonakerM , so could you share a little more details about your scenario?
How is the script called, what is your environment, and especially, does it involve scripts moving/deleting/any other operations that can make the code think the source file does not exist?
from python-dotenv.
Added a PR with my suggestion. I think we still need to understand what actually happens in your environment though.
You can test it with:
pip install python-dotenv@git+https://github.com/Bajron/python-dotenv@assertion-find-dotenv-for-upstream
You might need to uninstall the old version first as the version string is still the same and pip
might not apply the changes because of that.
from python-dotenv.
@HonakerM Would it possible for you test the fix by @Bajron and/or report more about your environment?
from python-dotenv.
@theskumar sorry for the delay I will try out the fix this weekend
from python-dotenv.
Related Issues (20)
- Two underscores w/ load_dotenv() == None HOT 3
- cli.py functions names collide with built-ins
- easily allow sourcing .env-file in bash HOT 2
- dotenv module not found in python 3.11 version HOT 2
- The .env file opens writable by default HOT 2
- How to get openai api_key from the local environment [if api_key is already set in the environment ] HOT 1
- OSS-Fuzz Integration HOT 3
- Consider MIT license HOT 1
- Consider allowing directory to search for in `find_dotenv` HOT 1
- Cannot import dotenv module when python file runs by java. HOT 1
- Connection string in .env-file not read or parsed properly HOT 17
- cannot use pipx installed python-dotenv on Mac HOT 7
- Support for dumping to a .env file?
- [Question] Any significant cost to calling load_dotenv() multiple times?
- Too many open files
- Configure `dotenv_values`'s search space
- How to disable python-dotenv
- Trying to get in touch regarding a security issue HOT 1
- Why does it parse comments in environment variables 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 python-dotenv.