Getting a list of packages updated by `pipenv update` - pipenv

If I do a pipenv update I like to list all the packages and versions that were updated in the git commit. e.g.:
Packages updated:
bleach 3.1.4 to 3.1.5
boto3 1.12.39 to 1.13.1
botocore 1.15.39 to 1.16.1
etc...
Is there any way to generate a list like this automatically from pipenv, before, during or after doing an update? The closest I can think of is to do pipenv update --outdated first and use that, which I guess will be similar?
Just wondering if I'm missing anything else before I write something to parse the output of git diff Pipfile.lock to generate the list myself.

Related

Sypder: missing dependeny (parso version)

When I fire up Spyder, I recently get the following pop up:
error message parso dependency
However, the versions seems to correspond.
(base) C:\Users\ma.kofler>conda list parso
# packages in environment at C:\Users\ma.xxxxx\Miniconda3:
#
# Name Version Build Channel parso 0.5.2 pypi_0 pypi
Could anyone help me out?
Many thanks in advance
(Spyder maintainer here) To fix this problem you need to open the Anaconda Prompt and run there
conda install parso=0.7.0

How to install cudnn.torch?

Their page contains Installation section but it is not understandable by one, who does not know torch and lua (like me): section enumerates prerequisites installtion, but has no word about cudnn.torch itself.
Repository contains bunch of lua files. What to do with them to "install"?
You have to install cuda first (https://developer.nvidia.com/cuda-downloads), then download the cudnn bindings (https://developer.nvidia.com/cuda-downloads).
Then if you have already installed torch, luarocks install cudnn should be enough.
For a full installation, you can have a look at this tuto.
You need to install from the github repo:
git clone https://github.com/soumith/cudnn.torch
cd cudnn.torch
luarocks make
Depending on your installed version of CUDA you may need to specify a specific branch of the repo, e.g. git clone https://github.com/soumith/cudnn.torch.git -b R7

How to get list of installed first-level bower packages w/out checking for newer versions?

bower list lists all my installed packages, but also lists sub-dependencies and checks for newer versions.
I don't want to see sub-deps, and I don't want to check for newer versions (I want this to run super fast, no waiting on the network!).
How can I do this?
There's a global --offline option that's not listed under bower list --help. So, just run:
bower list --offline
You can try parsing the results of
bower list --offline --json
to filter out the sub-deps if you like.

How to search for Bower packages that depend on another package?

I would like to do a search for bower packages that depend on another bower package. For example, I might want to search for bower packages related to "json directive" that depend on the angular package. How can this be done if at all?
If you only need to search in locally installed packages
go to your local bower_components (the place you install bower packages)
and run:
grep -Hnri '"<package name>":' ./**/bower.json
for example:
➜ bower_components# grep -Hnri '"font-roboto":' ./**/bower.json
./paper-styles/bower.json:25: "font-roboto": "PolymerElements/font-roboto#^1.0.1",
If you would like to do it for all bower packages in http://bower.herokuapp.com/packages
then you need to write code that will
download bower.json
from repository of every component and all versions of this component
and search it for package that you are looking for
(it will take a lot of time)
you could also try something faster and play with github search:
https://github.com/search?utf8=%E2%9C%93&q=font-roboto+language%3AJSON&type=Code&ref=searchresults

Installing a dependency with Bower from URL and specify version

I am trying to install a dependency with Bower using a URL. As of Bower documentation:
Bower offers several ways to install packages:
# Using the dependencies listed in the current directory's bower.json
bower install
# Using a local or remote package
bower install <package>
# Using a specific version of a package
bower install <package>#<version>
# Using a different name and a specific version of a package
bower install <name>=<package>#<version>
Where <package> can be any one of the following:
A name that maps to a package registered with Bower, e.g, jquery.
A remote Git endpoint, e.g., git://github.com/someone/some-package.git.
Can be public or private.
A local endpoint, i.e., a folder that's a Git repository.
A shorthand endpoint, e.g., someone/some-package
(defaults to GitHub).
A URL to a file, including zip and tar files.
Its contents will be extracted.
However, then it says, that all the types except the URL allow to specify a version.
How do I specify a version for a URL downloaded dependency?
Use a git endpoint instead of a package name:
bower install https://github.com/jquery/jquery.git#2.0.3
If you use bower.json file to specify your dependencies:
{
"dependencies": {
...
"photo-swipe": "git#github.com:dimsemenov/PhotoSwipe.git#v3.0.x",
#bower 1.4 (tested with that version) can read repositorios with uri format
"photo-swipe": "git://github.com/dimsemenov/PhotoSwipe.git#v3.0.x",
}
}
Just remember bower also searches for released versions and tags so you can point to almost everything, and can interprate basic query patterns like previous example. that will fetch latest minor update of version 3.0 (tested from bower 1.3.5)
Update, as the question description also mention using only a URL and no mention of a github repository.
Another example is to execute this command using the desired url, like:
bower install gmap3MarkerWithLabel=http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerwithlabel/1.0/src/markerwithlabel.js -S
that command downloads your js library puts in {your destination path}/gmap3MarkerWithLabel/index.js and automatically creates an entry in your bower.json file called gmap3MarkerWithLabel: "..." After that, you can only execute bower update gmap3MarkerWithLabel if needed.
Funny thing if you do the process backwars (add manually the entry in bower.json, an then bower install entryName) it doesn't work, you get a
bower ENOTFOUND Package
gmapV3MarkerWithLabel not found
Targeting a specific commit
Remote (github)
When using github, note that you can also target a specific commit (for example, of a fork you've made and updated) by appending its commit hash to the end of its clone url. For example:
"dependencies": {
"example": "https://github.com/owner_name/repo_name.git#9203e6166b343d7d8b3bb638775b41fe5de3524c"
}
Locally (filesystem)
Or you can target a git commit in your local file system if you use your project's .git directory, like so (on Windows; note the forward slashes):
"dependencies": {
"example": "file://C:/Projects/my-project/.git#9203e6166b343d7d8b3bb638775b41fe5de3524c"
}
This is one way of testing library code you've committed locally but not yet pushed to the repo.
Use the following:
bower install --save git://github.com/USER/REPOS_NAME.git
More here:
http://bower.io/#getting-started
Just an update.
Now if it's a github repository then using just a github shorthand is enough if you do not mind the version of course.
GitHub shorthand
$ bower install desandro/masonry
Here's a handy short-hand way to install a specific tag or commit from GitHub via bower.json.
{
"dependencies": {
"your-library-name": "<GITHUB-USERNAME>/<REPOSITORY-NAME>#<TAG-OR-COMMIT>"
}
}
For example:
{
"dependencies": {
"custom-jquery": "jquery/jquery#2.0.3"
}
}
Just specifying the uri endpoint worked for me, bower 1.3.9
"dependencies": {
"jquery.cookie": "latest",
"everestjs": "http://www.everestjs.net/static/st.v2.js"
}
Running bower install, I received following output:
bower new version for http://www.everestjs.net/static/st.v2.js#*
bower resolve http://www.everestjs.net/static/st.v2.js#*
bower download http://www.everestjs.net/static/st.v2.js
You could also try updating bower
npm update -g bower
According to documentation: the following types of urls are supported:
http://example.com/script.js
http://example.com/style.css
http://example.com/package.zip (contents will be extracted)
http://example.com/package.tar (contents will be extracted)
I believe that specifying version works only for git-endpoints. And not for folder/zip ones. As when you point bower to a js-file/folder/zip you already specified package and version (except for js indeed). Because a package has bower.json with version in it.
Specifying a version in 'bower install' makes sense when you're pointing bower to a repository which can have many versions of a package. It can be only git I think.
Try bower install git://github.com/urin/jquery.balloon.js.git#1.0.3 --save where 1.0.3 is the tag number which you can get by reading tag under releases. Also for URL replace by git:// in order for system to connect.
Installs package from git and save to your bower.json dependency block.
bower register package-name git-endpoint#version
install package-name --save
(--save will save the package name version in the bower.json file inside the dependency block).
Reference

Resources