Comments (6)
This issue will now track effort on the PowerShell profile implementation. Things like automatic activation of the virtual environment, populating PYTHONSTARTUP
with tooling\.pythonrc.py
, and more.
from copier-python.
Maybe I can minimally touch the user's profile by asking them to run Set-PsEnv
if a .env
file exists. This keeps the barrier between profile-specific matters and project-specific matters. Then we can ship a .env
in the template that touches the relevant environment variables.
from copier-python.
These two are roughly equivalent:
In the $PROFILE
for pwsh
:
# If there is an `.env` file in the PWD, load environment variables from it
Set-PsEnv
In .bashrc
#* Import dotenv aka .env environment variables if it is found
if [ -f ./.env ] ; then
set -o allexport # enable shell option to export all created variables
source ./.env # now this will export all vars instead of just one
set +o allexport # disable shell option to export all created variables
fi
from copier-python.
Even though we aren't bundling a PowerShell profile or .bashrc
, the manual first-time setup for a user will need to be documented. For security reasons, this cannot be automated, and instead we will tell the user what to do and why its needed.
from copier-python.
PowerShell profile tinkering is automatically done in typer
w/ shellingham
as a way to check which terminal the user has. So maybe it's reasonable to do this, but have a manual "echo text to terminal for you to copy instead" option as well.
from copier-python.
This is completed in scripts/Initialize-Shell.ps1
, which is manually invoked wherever needed to set environment variables and activate the environment.
from copier-python.
Related Issues (20)
- Fix some `repo-review` things
- Produce an output `requirements.txt` with all requirements
- Restructure lock metadata HOT 1
- Specify automation profile
- Fix `powershell` invocation for paths containing spaces
- Fix `sync.py` for `lock.json` existing but empty
- Rename first-time setup invocation to `Initialize-Repo.ps1` HOT 1
- Fix splatting in Windows install script in contributing guide
- Automate testing of the template creation procedure
- Mitigate CVE-2024-37891 by setting `urllib3>=2.2.2`
- Add changelog entry step to contribution flow
- Add changelog entry guidance to contribution guide
- Add changelog entry generation to pull request template checklist
- Document how we safely handle CodeQL alert: Arbitrary file write during tarfile extraction
- Fix All Contributors icons HOT 1
- Fix Codecov integration HOT 1
- Require docs build to pass before updating lock
- Only run coverage in task and CI, not in VSCode test runner (breaks debugging)
- Figure out issue working with Git submodules directly and `core.bare` thing HOT 1
- Cache `uv` in allowable folder (not `..`), but don't break Codecov flow
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 copier-python.