Rails 6: some environment variables not loading via dotenv in console - ruby-on-rails-6

I'm creating a new application in Rails 6, and the workflow for keeping secrets in our other Rails apps (anywhere from 4.x and 5.2) was to create an .env file and import them through the dotenv gem, and then have config/secrets pull from the ENV hash.
However, when I run a console session in the R6 app and I try to access ENV, I see an old version where the variables I just added do not appear, while other variables I added last week are there. What's stranger is that if I run rails c -e test, ENV does include the new variables even though .env.test does not include them. (Meanwhile, ENV has all the variables when running through RSpec.)
Does anyone have ideas about this behavior? Should we consider using credentials instead?
EDIT: Well this is embarrassing: I rebooted my Macbook and now the ENV variables are updated.

Happened the same to me, annoying. Could this be related to a specific dotenv loading issue? or maybe related to the underlying OS (MacOS 10.15.7 in my case)?
Related issue: https://github.com/bkeepers/dotenv/issues/308
Update: Tried bin/spring stop as suggested here with no success

Restarting the system in macOS Ventura 13.1 with an Intel chip worked for me.

Related

How do I fix the CondaHTTPError [duplicate]

I'd like to install the pymongo library but I'm getting the following error:
(C:\Users\xxxxxxx\AppData\Local\Continuum\anaconda3) C:\Users\xxxxxxx>
conda install -c anaconda pymongo
Fetching package metadata ...
CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://conda.anaconda.org/a
naconda/win-64/repodata.json>
Elapsed: -
An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.
ConnectTimeout(MaxRetryError("HTTPSConnectionPool(host='conda.anaconda.org', por
t=443): Max retries exceeded with url: /anaconda/win-64/repodata.json (Caused by
ConnectTimeoutError(<urllib3.connection.VerifiedHTTPSConnection object at 0x000
00000054D6128>, 'Connection to conda.anaconda.org timed out. (connect timeout=9.
15)'))",),)
Steps taken to resolve:
1. Update C:\Users\\xxxxxxx\.condarc file with the following:
channels:
- defaults
ssl_verify: false
proxy_servers:
http: http://sproxy.fg.xxx.com:1000
https: https://sproxy.fg.xxx.com:1000
2. (C:\Users\xxxxxxx\AppData\Local\Continuum\anaconda3) C:\Users\xxxxxxx>
conda config --set ssl_verify False
Additional Info:
(C:\Users\xxxxxxx\AppData\Local\Continuum\anaconda3) C:\Users\xxxxxxx>
conda info
Current conda install:
platform : win-64
conda version : 4.3.27
conda is private : False
conda-env version : 4.3.27
conda-build version : 3.0.22
python version : 3.6.2.final.0
requests version : 2.18.4
config file : C:\Users\xxxxxxx\.condarc
netrc file : None
offline mode : False
user-agent : conda/4.3.27 requests/2.18.4 CPython/3.6.2 Windows/7 W
indows/6.1.7601
administrator : False
A number of posts online simply reinstalled Anaconda, any other options apart from a fresh install?
This works a charm:-
Just copy these:-
libcrypto-1_1-x64.dll
libssl-1_1-x64.dll
from D:\Anaconda3\Library\bin to D:\Anaconda3\DLLs.
Execute the following command in the cmd prompt/terminal:
conda config --set ssl_verify no
I try to create a virtual env with python 2.7 with anaconda, the base env is python 3.7. I encounter the exactly same problem. It turns out that there isn't such problem with other virtual envs with python 3.7 or 3.6.
This post works perfectly to solve my problem on win7 with anaconda prompt.
It basically says you need to add the following directories into your user environment path in windows (go to Start and type in: View Advanced System Settings, then select Environmental Variables: then select Path and click Edit: finally you can click New and add a path):
C:\your_directory_to_anaconda3\Anaconda3\Scripts
C:\your_directory_to_anaconda3\Anaconda3\
C:\your_directory_to_anaconda3\Anaconda3\Library\bin -- This is the directory for openssl
If you added conda to your PATH variables, remove it and use the "Anaconda Prompt". This solved the problem for me.
See: https://github.com/conda/conda/issues/8046#issuecomment-450582208
I faced this issue when I tried to create environment. I solved it by first activating conda base environment by using:
conda activate base
then I created the environment
conda create -n myenv python=3.7
Check the proxy URL
Verify .condarc file
For me, the problem was with the indentation in the .condarc file.
proxy_servers:
http: http://testproxy:8080
https: https://testproxy:8080
My authenticated proxy server is configured with a domain whitelist for massive and repeated downloads so root or local sudoer doesn't need to be authenticated.
Adding conda.anaconda.org is not enough as this repo redirect its traffic to amazonaws.com.
In my case, adding ".amazonaws.com" to the whitelist solved the issue.
The issue was resolved by adding a username and password to file C:\Users\xxxxx.condarc
channels:
- defaults
ssl_verify: false
proxy_servers:
http: http://xxxxx:password#sproxy.fg.abc.com:yyyy
https: https://xxxxx:password#sproxy.fg.abc.com:yyyy
I had the same problem on Windows 10-64 bit and intuitively installed the 64-bit version of miniconda. However, it results in exactly the same error above. Installing 32 bit conda installer has resolved the issue
Before installing some package (pydicom) the installation run just fine. After
it I tried to install matplotlib, but I got the same error as yours.
I tried conda config --set ssl_verify no but it didn't solve the problem so I set it again to true.
Fortunately, I had a virtual environment where I installed my packages. I closed all Anaconda prompts and tried in a new test environment. Magically, the install worked. I came back to my original virtual env and run the install again, and it worked!.
It might be that I just had to wait for some time before I could use conda install again.
One other thing I could do is remove the package that caused the problem, but I didn't have the chance to try it. If it has anything to do with some virtual environments not being affected, then one possible way to guard against this is to clone the environment before installing any new package.
Edit: I tried the same solution but It did not work. But instead of showing the error immediately, it asks me whether I want to proceed. I deactivated the env, and re-opened anaconda prompt, then did the same steps as above and worked again.
I also had the Same Issue, I resolved by installing 32 bit Anaconda Installer.
Which resolved the CondaHTTPError: HTTP 000 CONNECTION, on Windows 64 bit.
I faced this issues after "conda clean -a" on win-64.
Activating and deactivating existing conda env resolved the issue.
You might need to upgrade your openssl installation
You can download it here (Try the latest version):
https://slproweb.com/products/Win32OpenSSL.html
Source:
https://github.com/ContinuumIO/anaconda-issues/issues/6424#issuecomment-464660808
My issue was simply not running the conda init command prior to attempting to create an environment.
Came across the CondaHTTP Connection error after installing Anaconda environment on a new Windows 10 computer. I tried virtually all the recommendations above unsuccessfully! Looking up the Anaconda archives ( https://repo.continuum.io/archive/ ), I downloaded the immediate previous release .... and on installation and rebooting my PC, all is now wellscreenshot of release
In short - installing Microsoft Visual C++ Redistributable for Visual Studio solved my problem.
In more detail: upon trying a suggested solution of installing a new version of OpenSSL, the installation process told me I was missing a dependency - the Visual Studio Redistributable package. The installer led me to a direct download page of the 2017 version. I can't find that page now, but the official release of 2019 can be found here, and should work as well (found under Other Tools and Frameworks).
Uninstalling and reinstalling anaconda for all users (instead, of current user only, requires admin privileges) and activating the option to add Anaconda to PATH during the installation process, fixed the issues for me.
Thank you everyone for your responses. In my case, I found out that my Kaspersky Internet Security was blocking it the whole time. The moment I quit the application all applications were downloaded. Please check your firewall settings before trying all the above options.
I tried all of these solutions and none worked for me. After running the command
conda config --remove-key channels
in the Anaconda Prompt, everything started working for me on my next attempt.
Adding that I had the same problem on ubuntu on WSL. None of the solutions worked for me, until I realized I was working on WSL version 1 (I thought I'd already upgraded). Upgrading from WSL 1 to WSL 2 solved the problem for me.
Running following these two commands worked for me.
conda config --remove-key proxy_servers
conda clean --source-cache
I'd tried all of the advice on this and many other webpages.
In the end I broadcast a "help me Obiwan Kenobi, you're my only hope message" to a large group of people at work and one of them who used python all the time was able to help me
The trick was to set several windows environmental variables
CURL_CA_BUNDLE
REQUESTS_CA_BUNDLE
SSL_CERT_FILE
To my company's root certificate (a .cer or .crt) which I had downloaded to a spot on my disk
You may also need to add (in my case)
C:\Users\kdalbey\Anaconda3\Scripts
(or your particular \Anaconda3\Scripts) to your path.
And then I set proxies just for good measure
note I previously copied libcrypto-1_1-x64.dll, libcrypto-1_1-x64.pdb, libssl-1_1-x64.dll, libssl-1_1-x64.pdb from anaconda3\Library\bin to anaconda3\DLLs so that could be part of the secret sauce
and it didn't work until I killed and restarted anaconda-navigator
Two steps to deal with this error.
The Anaconda prompt configures the path, to include all the necessary executable files (for instance Library\bin - On Windows, launch it with admin permission). So that you need to use it to execute conda :
Update conda with conda update conda
Exit my proxy software which solved the issue.
I would like summarize some of the proposed answers in this post and propose my experience on that. As it can be understood from the error explanation, the error is related to the connection and I strongly believe that no need to uninstall and reinstall anything if the real cause of the problem be known. My problem gone away after the system powered off and powered on again one day later. So, some possible causes and their solutions (these solutions could be tested in order based on the written bulleted order) could be as follows:
Crash in anaconda prompt:
Probable solutions:
Deactivating and activating the environment, without removing all packages or …, or
Closing/reopening the prompt (Michael Heidelberg) or
Using cmd.exe instead, perhaps
Non-responsiveness of the anaconda site:
Massive site traffics related probable issues, that could be the reason of non-responsiveness or to temporary block some IPs
Probable solutions:
Retying as recommended in the error: HTTP errors are often intermittent, and a simple retry will get you on your way. It solves my problem sometimes. or
Activate or deactivate VPNs or Proxies (like use in .condarc; see: Github sroder, Nandhan Thiravia, Vinod Sangale, Peter Lucas, Sunding Wei).
Try after a while if you have time
System firewall block the site:
That might be happened by activating and deactivating of VPNs, repeatedly or by some other works
Probable solutions:
Finding the issue in system firewall and allowing the connection in the firewall settings (ScienceJedi, Github)
Reboot, perhaps
If the aforementioned ways didn't solve the problem, testing the related answers in the following order:
Add ...\Anaconda3\Scripts, ...\Anaconda3\, and ...\Anaconda3\Library\bin to the path (talentcat, skerjj, Victor Ochieng, jankap), perhaps need a reboot after (lightarrow)
Copying libcrypto-1_1-x64.dll and libssl-1_1-x64.dll from D:\Anaconda3\Library\bin into D:\Anaconda3\DLLs (Swapnil)
I think it could be used in the first step because It is unlikely to be cause of any other problem. The reason I didn't mention this at the beginning is that the developers could placed these files in that directory during installation, too, in default, but they didn't; perhaps it had some reasons (Github).
Note: these files are for Python >3, and I didn't find them for Python 2. Perhaps they have another names.
It must be said that my problem didn't solve by this solution.
Keep your SSL stack up-to-date (kamal dua, Anaconda troubleshooting, update openssl, Abdulrahman Bres, Update to openssl 1.1.1)
I didn't recommend it at first because Its not a good idea to unset ssl verification unless you know what you are doing (Pratyush comment) and somewhere I read that it couldn't return to True again.
It must be said that my problem didn't solve by this solution, too.
conda config --set ssl_verify false
conda update openssl ca-certificates certifi

meteor build command faild with message "killedking"

meteor create cool
cd cool
meteor build /root/cool/production --directory --server=wdksw.com:3030
Killedking \
There is no production directory appear. How to use this command?
I knows its 6 1/2 years later, but just in case it helps anyone...
It was "Killed" by the OS, but appeared over another console message being displayed at the time which ended "......king". maybe something to do with linking.
And it will probably have been killed because the OS ran out of memory, try setting NODE_OPTIONS and/or TOOL_NODE_FLAGS environmental variables, eg on Linux
export NODE_OPTIONS=--max_old_space_size=16384
export TOOL_NODE_FLAGS=--max_old_space_size=16384
meteor build ...

Where is Meteor installed on Windows?

Hi I've just installed Meteor on Windows 7. Using the command prompt I was hoping I'd just type meteor but that's not working (not recognized). Do I need to set PATH?
Thanks
Simon
C:\Users\yourUserName\AppData\Local\.meteor\
You can also set that in your PATH when it is missing there.
On windows its installed here
C:\Users\<username>\AppData\Local\.meteor
but meteor command does not work sometime. To make meteor command working you need to modify path variables as follows.
Automatically set Path (after installation)
C:\Users\<username>\AppData\Local\.meteor\
Modification (remove backslash)
C:\Users\<username>\AppData\Local\.meteor

Architect / StatET: Launching R Console was cancelled because R engine failed

I recently upgraded to Architect version 0.9.7 on my Win 7 machine. However, after starting Architect, the RJ console wouldn't launch and I got the error message:
‘Launching the R Console was cancelled, because It seems starting the R engine failed.”
Please make sure that R package 'rj' (2.0 or compatible) is installed and
that the R library paths are set correctly for the R environment
configuration 'Embedded R Server'.
I installed the packages ‘rj’ and ‘rj.gd’ through the RTerm run console (which does happen to work) within Architect using the command suggested on www.walware.de:
install.packages(c("rj", "rj.gd"), repos="http://download.walware.de/rj-2.0")
Then, I restarted windows, and restarted Architect. Same error message. I zoomed in on the details of the error message and noticed the following line:
SEVERE: Path to rj package not found. Use R_LIBS or java property
'de.walware.rj.rpkg.path' to specify the location.
So I opened an RTerm run console to check whether any of my .libPaths() locations contains the directories ‘rj’ or ‘rj.gd’. Oddly enough, they do. My first .libPaths path contains both packages. So that doesn’t seem to be the reason.
How could this be fixed?
I received prompt and helpful feedback from Open Analytics (thanks!), who informed me that the problem is due to changes in Java 8. With Java 7, Architect works fine. The next release of Architect will incorporate the changes in Java 8.
In order to get it work with Java 7, enforce the use of a specific Java Runtime, by using the -vm argument in the architect.ini file as follows:
-vm
C:\Program Files\Java\jre7\bin\javaw.exe
(mind the line break, which is required)
This is particularly useful if you have several Java versions on your system where the default Java is not suitable for use with Architect. The architect.ini file is found directly at the top level of the installation folder of Architect. You can find out where this is by looking at the Properties of the Architect shortcut on your desktop.
N.B. the -vm argument should be put before the -vmargs argument otherwise it is simply ignored!
N.B. examples of -vm specification on GNU/Linux and Mac OS X:
http://wiki.eclipse.org/Eclipse.ini#-vm_value:_Linux_Example
http://wiki.eclipse.org/Eclipse.ini#-vm_value:_Mac_OS_X_Example

PHPUnit Problems When Installing phpUnderControl On Windows

having problems here getting phpUnderControl running on my Windows 7 machine, been searching all over the net for answers but documentation to many of the problems is just really bad...
(a.) Cruise Control is installed as a Windows service and up & running
--> location: C:\Program Files (x86)\CruiseControl
(b.) phpUnderControl is installed via Pear
--> Pear location is C:\wamp\bin\php\PEAR
(c.) Configured CruiseControl for phpUnderControl
phpuc install "C:\Program Files (x86)\CruiseControl"
(d.) now when I try to create the phpUnderControl example via:
phpuc example "C:\Program Files (x86)\CruiseControl"
I get the following error message: Missing cli tool 'phpunit', check the PATH variable
Here's what I tried to solve this problem:
(1.) I included the path to the pear PHPUnit installation in the Windows SYSTEM path variable.
--> did not help
(2.) I thought maybe phpUnit was not properly installed, so I ran:
pear install -alldeps phpunit/PHPUnit
which gave me this error:
Console_Getopt: unrecognized option -- d
I tried to re-install Console_Getopt but it is correctly installed and the current version
Can anybody help me with this ?
I don't see any way to specify allowed options for Console_Getopt and I don't even know which php script it is running to set -- d as an allowed argument...
Btw, when I run the phpUnderControl example with the -n flag (no PHPUnit support), it is working, so there is a problem with PHPUnit.
This is in response to your comment, but it will be too long to put into a comment. It doesn't answer your original question.
We started with phpUnderControl a year ago. The biggest problem is that it merges files into Cruise Control which makes updating either difficult. And we had to fix a lot of the stylesheets for our setup which would make updating even worse. This worked well enough for the past year, though there were still bugs we didn't take time to fix. The most annoying is that when you clicked on a test failure on the summary page, it wouldn't take you to the correct failure on the long list of all tests.
Anyway, I finally had enough and pushed to be given the time to migrate to Jenkins. Luckily, Manuel Pichler (PHPMD, phpUnderControl) and Sebastian Bergmann (PHPUnit) had created Template for Jenkins Jobs for PHP Projects. I was able to use my highly customized Ant script from phpuc with a few modifications with Jenkins.
It works very well. The coolest part is that it tracks the detailed results from build to build, so you can see when a test started failing and for how long. It's just really awesome. :)
I believe you mistyped the command. Try:
pear install --alldeps phpunit/PHPUnit
I solved my original problem:
I had to clear my pear cache and then run the install command again to re-install PHPUnit.
Also, it is important to either set a Windows environment variable called PHPBIN (--> /path/to/php) or to make sure the pear configuration PHP settings are correct...
--> pear config-show
Otherwise (some) packages will install and HARDCODE an incorrect php bin path into the .bat file, and if it doesn't find the PHPBIN variable it will use that... and therefore not work...
Another way to deal with this is to configure pear settings correctly and then force re-install the package, e.g.:
pear install -f --alldeps
M

Resources