Cakephp : intl extension missing - cakephp-3.7

I am trying to install CakePHP 3.8 in my mac ( macos high sierra version 10.13.6), but i had this problem since yesterday tell me that extension intl is missing from your system
User-iMac:TEST zakaria$ composer create-project --prefer-dist
cakephp/app my_app_name
Installing cakephp/app (3.8.0)
- Installing cakephp/app (3.8.0): Loading from cache
Created project in my_app_name
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of
packages.
Problem 1
- cakephp/cakephp 3.8.1 requires ext-intl * -> the requested PHP
extension intl is missing from your system.
- cakephp/cakephp 3.8.0 requires ext-intl * -> the requested PHP
extension intl is missing from your system.
- Installation request for cakephp/cakephp 3.8.* -> satisfiable
by
cakephp/cakephp[3.8.0, 3.8.1].
To enable extensions, verify that they are enabled in your .ini
files:
- /etc/php.ini
You can also run `php --ini` inside terminal to see which files
are
used by PHP in CLI mode.
User-iMac:TEST User$
i tried to uncomment extension=php_intl.dll in php.ini
i tried to add extension=intl.so
And so many solutions out there but nothing seems to work

Unfortunately, Intl extension is missing on native instalation of PHP 7.1.24 on Mac OS high sierra.
Download PHP 7.1 from php.net, install XCode Command Line Tools, ICU (http://site.icu-project.org/), Autoconf, reinstall the developer tools header files, and finally install Intl extension using phpize.
Important: you'll have to disable SIP.

Related

RHEL ubi8 package A requires B but none of the providers can be installed

I have a dockerfile using registry.redhat.io/ubi8/ubi-minimal as base image. Installed git using microdnf, downloaded few packages, but while trying to remove using microdnf remove git, I get these errors.
microdnf --enablerepo=ubi-8-baseos --enablerepo=ubi-8-appstream install git
error: Could not depsolve transaction; 2 problems detected:
Problem 1: package git-core-2.27.0-1.el8.x86_64 requires less, but none of the providers can be installed
- conflicting requests
- problem with installed package git-core-2.27.0-1.el8.x86_64
Problem 2: package git-core-2.27.0-1.el8.x86_64 requires openssh-clients, but none of the providers can be installed
- package git-core-doc-2.27.0-1.el8.noarch requires git-core = 2.27.0-1.el8, but none of the providers can be installed
- conflicting requests
- problem with installed package git-core-doc-2.27.0-1.el8.noarch
Reordering the package dependencies helped to resolve the issue.
microdnf remove libedit openssh openssh-clients git-core git-core-doc git less helped.
Wish microdnf also supported dnf's autoremove :(

unknown error: call function result missing 'value' for Selenium Send Keys even after chromedriver upgrade

I am getting the below error while sending keys.
Result Message:
System.InvalidOperationException : unknown error: call function result missing 'value'
(Session info: chrome=65.0.3325.146)
(Driver info: chromedriver=2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba81d9023f),platform=Windows NT 10.0.14393 x86_64)
I have updated the chrome driver to 2.36 but still my code search for 2.33?
Any idea ?
I've gotten the same error, please download the last ChromeDriver version and/or update chrome browser version and it will be working fine :)
https://chromedriver.storage.googleapis.com/index.html?path=2.36/
After updating the Google Chrome browser to Version 65.0.3325.146 (Official Build) (64-bit), I'm also encountered with the same error
while sending values to the input field, here's the error message...
selenium.common.exceptions.WebDriverException: Message: unknown error: call function result missing 'value'
using Chromedriver 2.32 and Google Chrome 65.0
As I did some research on the same, I found a recent commit on Google chrome v65 changelogs which help me to resolve the issue.
Solution:
Update Google Chrome to latest stable version (in my case it's v65 on 9/mar/2018)
Download and configure latest chromedriver (v2.36).
For configuring chromedriver (on Ubuntu) follow these steps...
Extract the downloaded zip file.
Copy the extracted chromedriver file to /usr/local/bin or to the location where you usually store the executable binaries.
Add the same path (where you place the chromedriver file) to environment variable PATH as
export PATH=$PATH:/usr/local/bin
For testing the installation, restart the terminal and type this command
chromedriver --version
it would show the version of chromedriver that you just installed.
Note: If the chromedriver already installed and configured then just replace the existing driver file and If you don't know where the Chromedriver binaries already stored then try to find the file using following command
sudo find -H / -type f -iname chromedriver
It is because of the update of chrome browser version from 64.xx to 65.xx
Now you have 2 options to run your tests successfully.
Downgrade your chrome browser to previous version and with the old chromedriver which you have now.
Upgrade your Chromedriver to 2.36 version with the updated Chrome browser.
visit https://chromedriver.storage.googleapis.com/index.html?path=2.36 and download the new chromedriver.
Option 2 is better.
Replace your ChromeDriver.exe with latest version.. Same can be downloaded from Google easily.
Also its better to get it done automatically by using webDriver manager as explained below -
1. Add Mvn dependency to your project POM:
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>${webdrivermanager.version}</version>
<scope>test</scope>
</dependency>
Now in your Browser instantiation class instead of using traditional way to create driver i.e. by using System.setProperty(See belwo)...
System.setProperty("webdriver.chrome.driver","src/test/resources/drivers/chromedriver.exe");
Use below approach:
WebDriverManager.chromedriver().setup();
webDriver = new ChromeDriver(chromeOptions);
And that's all, you are done!
Use below links for your reference-
What is Browser Binary Manager how to use it for Selenium
or chkout git project for same-
https://github.com/bonigarcia/webdrivermanager#webdrivermanager-as-java-dependency
Need to update chromedriver :
In console, run: chromedriver-update 2.36
The error says it all :
System.InvalidOperationException : unknown error: call function result missing 'value'
(Session info: chrome=65.0.3325.146)
(Driver info: chromedriver=2.33.506120
The error clearly complains about InvalidOperationException
Your main issue is the version compatibility between the binaries you are using as follows :
You are using chromedriver=2.33
Release Notes of chromedriver=2.33 clearly mentions the following :
Supports Chrome v60-62
You are using chrome=65.0
Release Notes of ChromeDriver v2.37 clearly mentions the following :
Supports Chrome v64-66
Your Selenium Client version is unknown to us.
So there is a clear mismatch between the ChromeDriver version (v2.33) and the Chrome Browser version (v65.0)
Solution
Upgrade Selenium to current levels Version 3.11.0.
Upgrade ChromeDriver to ChromeDriver v2.37 level.
Keep Chrome version in between Chrome v64.x-66.x levels. (as per ChromeDriver v2.37 release notes)
Clean your Project Workspace through your IDE and Rebuild your project with required dependencies only.
Use CCleaner tool to wipe off all the OS chores before and after the execution of your test Suite.
If your base Web Browser/Web Client version is too old, then uninstall it through Revo Uninstaller and install a recent GA and released version of Web Browser/Web Client.
Execute your #Test.
If you are on Mac:
brew upgrade selenium-server-standalone
brew upgrade chromedriver
if the above two are not installed:
brew install selenium-server-standalone
brew install chromedriver
I'm running Protractor and have encountered the same issue.
The solution in my case was rather simple.
$ npm update protractor -g
$ webdriver-manager update
If you are on the latest stable Google Chrome (e.g. 67) I recommend to:
brew uninstall chromedriver
brew tap homebrew/cask
brew cask install chromedriver
These set of commands will uninstall your current chromedriver, check for updates and install the latest found (e.g. 2.40).
Use xpaths instead of class names to locate elements
After updating chrome and its drivers it didn't helped me at all!!
I don't know how much it makes sense but it worked for me when i replaced class name with xpath. This is the xpath , i used to automate sending whatsapp message using python.
driver.find_element_by_xpath('//*[#id="main"]/footer/div[1]/div[2]/div')
previously i Was Using
driver.find_element_by_class_name('Some class Name Here')
In my case the team I'm on points selenium to a specific chromedriver file we had. In order to get Selenium to use the updated chromedriver, I first installed it with brew and then created a symbolic link to point where Selenium looks for it:
brew install chromedriver
ln -s /usr/local/Cellar/chromedriver/2.36/bin/chromedriver /path/where/selenium/expects/chromedriver
On the chance this might be helpful to someone I needed an additional step:
I am on MacOS X. I did
brew upgrade chromedriver
bundle exec chromedriver-upgrade
I have the chromedriver-helper gem installed, but it is stashed and requires the "bundle exec" prefix or the shell can't find the command.
The above fixed my problem.
As mentioned by others, the latest chromedriver did the trick for me. In case you downloaded the driver manually and want to tell appium to use the new chromedriver you can do so by this command:
appium --chromedriver-executable /path/to/driver/chromedriver ....
I'm running Protractor (webdriver-manager) with Selenium in a Windows environment, and I had to do the following:
webdriver-manager update --versions.chrome="2.36" (This downloaded the new Chromedriver to the right path but didn't enable it in protractor.)
Edit %userprofile%\AppData\Roaming\npm\node_modules\protractor\config.json and changed the chromedriver value from 2.32 to 2.36.
Delete my old chromedriver_2.32.exe from %userprofile%\AppData\Roaming\npm\node_modules\protractor\selenium for good measure (not sure if that was required.)
Or:
When another Chromedriver update became needed, I was no longer able to update this way. A configuration setting still expected the old path and filename, and I couldn't figure out where to change that setting. So I just renamed the latest chromedriver to "chromedriver.exe" and stuck it in C:\Windows\system32 (which is always referenced by PATH). Crude, but effective.
If you're using gulp-protractor plugin, make sure to update it as well.
I don't know if you're still on this, but I was receiving a similar error. I had the latest version of chromedriver in my PATH and Google Chrome was updated. I run Python 3.6 on windows 10 x64 bit. What I was getting trying to select a value from a dropdown menu on a webpage. The weird thing was, it would select the dropdown value correctly and the page would be updated nicely, but I'd receive that stupid error anyway and my script would freeze. So I just made an exception error handler for it, because like I said it selected the dropdown value correctly, so I just wanted to bypass that dumb error message:
# select by value
try:
select.select_by_value('100')
except:
pass
hopefully someone finds this helpful.
The issue is because of mismatch in chromedriver and chrome browser version.
Below link specifies the versions of chromedriver supporting the chrome browser's version.
http://chromedriver.chromium.org/downloads

Install specific version of Cordova CLI in Visual Studio 2017

I need to do some updates to a Cordova app created using Visual Studio 2017 Tools for Apache Cordova (TACO).
The Cordova CLI version listed in the config.xml file is 6.3.1 and the cordova-ios platform version is 4.2.0
When I try to build the project (using a Mac with XCode 8.3.3, I get this error
Build failed with error Remotebuild requires your projects to use
cordova-ios 4.3.0 or greater with XCode 8.3. Please update your
cordova-ios version.
I don't see any updates to TACO in VS2017 or instructions in the Microsoft documentation for Apache Cordova Tools.
Ideally, I'd like to make the most minor version update possible to get my build working with XCode 8.3.3.
I know there is a Cordova version 7.0.1, but I don't want to make that upgrade just yet because I'm under the gun time wise.
I don't see any updates to TACO in VS2017 or instructions in the Microsoft documentation for Apache Cordova Tools.
You can follow below steps to use the latest cordova-ios:
Open config.xml with designer
Toolset->Check the checkbox of Take latest patch(requires internet) on cordova-ios row.
Update:
If you don't see the checkbox in the designer page, you need to change it in the xml. Find the following tag in config.xml:
<engine name="ios" spec="4.2.0" />
and modify it to:
<engine name="ios" spec="~4.2.0" />
Update2:
If the version is still not update to the latest, please try the below steps to fix the issue:
Clear the cordova cache under: Tools->Options->Tools for Apache Cordova->Clear Cordova cache.
Open cmd of your project folder;
Type npm install -g cordova-ios to install globally the cordova-ios(requires node installed as pre-work);
Then cordova platform rm ios;
Type cordova platform add ios;
Run your project again
For iOS, please install iOS#4.3.1. This is the only version i found working with XCode 8.3.3
I had the same error, follow this steps :
1- If not installed yet, install Node
2- Install the latest version of cordova or anyother:
npm install -g cordova
3- Install taco-cli:
npm install -g taco-cli
4- Configure taco-cli :
taco remote add ios
(respond a few question, MAC IP, Port,etc...)
5- in your root project add or edit a file named "taco.json", add inside :
{
"cordova-cli": "7.1.0"
}
Where 7.1.0 correspond to your cordova version (cordova --v)
6- Try to emulate on your MAC:
taco emulate ios
You will maybe have an error about platform. Ignore it
7- Close then open Visual Studio
8- On Visual Studio open the config.xml UI EDITOR and change the toolset name with
Global cordova
9- Build using Visual Studio.
If it doesn't work, please let me know
I don't have the authority to add a comment to the answer above, so adding my updates here:
If the version is still not update to the latest, please try the below steps to fix the issue:
First, modify your project config.xml file using an editor, rather than through the tools. Not sure why it was necessary, but this was the key difference from the above instructions. I also found that 4.3.1 was best. Remove any ~ characters before the version.
Then:
Clear the cordova cache under: Tools->Options->Tools for Apache Cordova->Clear Cordova cache.
Open cmd of your project folder
Type npm install -g cordova-ios to install globally the cordova-ios(requires node installed as pre-work)
Then cordova platform rm ios
Type cordova platform add ios
Run your project again
If the cordova command in steps 4 and 5 doesn't work, add the cordova bin directory to you path. In my case
C:\ProgramData\Microsoft\VisualStudio\MDA\ad0a0856\taco-toolset-6.3.1\node_modules.bin\

Drupal 8 - Commerce Module - BC math PHP extension not found

I'm trying to install the commerce module in Drupal 8 however I get the error 'BC math PHP extension not found'.
I've searched for this problem and tried different things such as editing the PHP.ini by adding 'bcmath.scale=2' however I still get the error message.
Any help would be appreciated, thanks.
Just install bcmath plugin for your php version with no need to (re)build php as mentioned on accepted answer
# get php version
php -v
# install bcmath based on your version lets assume php 7.1
# for ubuntu
sudo apt install php7.1-bcmath
# for centos
yum install bcmath
# restart apache
sudo systemctl restart apache2
Above problem appears when installing commerce or commerce kickstart using composer
Update 2020
Please refer to #GiorgosK's answer for installing bcmath via a package manager if you are using a distribution that provides a bcmath package for PHP. I will ask the OP in comments to update the recommended answer, since that solution is probably what most people need.
Three years ago when I answered this question, I suggested that you have to rebuild PHP to get bcmath. That was incorrect. I was using an older distribution of Debian/Ubuntu that provided bcmath as a statically linked extension in the core php package. I determined at the time (incorrectly) that bcmath was a core extension that had to be enabled at build-time (like SPL and PCRE).
For those trying to troubleshoot a missing bcmath extension (such as those building/installing PHP themselves or nevertheless encountering issues), I've corrected and updated my original answer below. It explains in detail how to troubleshoot a missing PHP extension.
Original Answer (Corrected)
The error message indicates that PHP wasn't built with bcmath support or can't find the installed extension. PHP extensions are either built into PHP directly or they are loaded from an external dynamic library file at runtime.
Since PHP obviously doesn't have the extension built-in, it can't find the external library file that provides bcmath. This file on POSIX platforms will be called bcmath.so and php_bcmath.dll on Windows.
Extension files are installed under a directory indicated by the extension_dir property in php.ini. To determine the value of this property, run the following command:
php -r 'echo ini_get("extension_dir").PHP_EOL;'
The default value for this property is configured when PHP is built and may vary from distribution-to-distribution.
Once you verify the extension file is installed in this location, you can then check to see if the extension is enabled in php.ini. You should see a line that enables the extension like so:
# POSIX platforms
extension=bcmath.so
# Windows
extension=php_bcmath.dll
For Linux distributions like Ubuntu/Debian that install extensions via the package manager, the format is somewhat different since Debian employs a distributed configuration. Typically the package manager installs everything correctly, but you can check to see if an ini file exists for bcmath under the corresponding conf.d directory. These small ini files are snippets imported into the larger php.ini file, and they are typically symlinked to /etc/phpX/mods-available, allowing modules to be initially enabled for all PHP SAPIs such as CLI, CGI, Apache Mod PHP, ETC. Make sure a symlink exists for the PHP SAPI you need to use.
To ensure your PHP is loading the extension, run phpinfo(); in a test page and search for bcmath. You can also more easily do this with the CLI using a command like:
$ php -i | grep -i bcmath
# Success output: BCMath support => enabled
# (Another command that works well for checking extensions)
$ php -m | grep -i bcmath
# Success output: bcmath
In order for the CLI to show accurate results, it must target the same php.ini file. If it doesn't, then use the -c option to temporarily point the CLI at the correct php.ini (i.e. the one being used by your Drupal site).
Add BC MATH extension for PHP 7.2
If you are getting this (https://prnt.sc/sehmd5) error then, run below command using vagrant ssh
Run these command in root of vagrant ssh
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.2-bcmath
service apache2 restart
Then open php.ini and search for bcmath
If bcmath scale is 0, Change it to 2
Restart php
Restart Apache
Hard Reload website
Install required modules
Similarly for any version of PHP, you only need to change PHP version in 3rd command.

How to build WSO2 Identity Server

how to access to svn and build Identy server from sources?
The page http://docs.wso2.org/display/identity/Building+WSO2+Identity+Server+from+source is valid also for 3.2.3?
Installing Identity Server on Linux from Source Distribution [1] Guide.
When you extract the wso2is-3.2.3-src distribution execute mvn clean install from the root level OR if you need to build only 3.2.3 version go inside the /wso2is-3.2.0-src/patch-releases/ folder.
There you will find separate directories for 3.2.1, 3.2.2 and 3.2.3, To build 3.2.3 version, start building from 3.2.3 patch releases pom.xml (mvn clean install from /wso2is-3.2.0-src/patch-releases/3.2.3/ directory).
Please note, 3.2.0 branch needs to be built with maven2.
FYI: To build current trunk, use maven3.