Giter Site home page Giter Site logo

gpm's People

Contributors

jmlx42 avatar jpx avatar nicozet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gpm's Issues

add message error instead utf8 panic error when running the update command

Hello,

i try to use gpm and i fail on the command gpm update.

I get this error :

λ gpm update
 INFO  gpm::gpm::command::update > running the "update" command
Updating all repositories
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Custom { kind: InvalidData, error: "stream did not contain valid UTF-8" }', src\gpm\command\update.rs:39:42

I see in update.rs source that the file causing the error is source.list. I convert it to utf 8 and everything was OK.

Maybe can you add an error message instead letting rust panic ?

Thanks for your job and sorry for my english ;)

Jonathan

[help] Can you publish packages to a branch other than master?

As the title says.
I can successfully push and install packages to my master branch. But I want to have my application on the master branch and the packages on a deploy branch. It does not work for me, the package is not found when I push it to any other branch other than master.

Is this supposed to work? Am I doing something wrong or is this not possible?

I would think it should work, because the tag seems to point directly to a commit and is not really branch dependent...

Add Path Functionality

Hello,

Could you please add the functionality to supply path functionality, to manage packages in a location of the user's choosing? It'd would be VERY helpful.

Unable to install specific version, only latest

GPM: 0.15.0
OS: macOS
Package Repo: GitHub (private)

I am unable to install a specific package version, only the latest. Following the example in the docs:

gpm install hello-world/0.1.0 --prefix ~/

I get an error:

johnmorrell@MacBook-Pro gpm % gpm install ssh://github.com/[redacted]/packages.git#[redacted]/0.1.17 --prefix /usr/local/bin --force

Installing package [redacted]/0.1.17
[1/3] Resolving package
 ERROR gpm > GPM command error: no matching version for package [redacted]/0.1.17

Using an @ rather than / identifies the specified version but installs the latest:

johnmorrell@MacBook-Pro gpm % gpm install ssh://github.com/[redacted]/packages.git#[redacted]@0.1.17 --prefix /usr/local/bin --force

Installing package [redacted]0.1.17
[1/3] Resolving package
  Found:
    [redacted].tar.gz
  in:
    ssh://github.com/[redacted]/packages.git
  at refspec:
    refs/tags/[redacted]/0.1.18
  tagged as:
    [redacted]/0.1.18
[2/3] Downloading package
  [00:00:04] [##############################] 517.94KB/517.94KB (0s)
[3/3] Extracting package in "/usr/local/bin"
  [00:00:00] Archive decompressed
  [00:00:00] 1/1 extracted file(s)
Done!

Thank you for sharing your work and looking in to these issues!

request to copy / to extract ssh.rs

Hi,

I started a small crate that provide a git2's credential function git2_credentials. And you did an useful work about git's credentials.
Can I copy (and adapt) your code ssh.rs to include it into git2_credentials ?

Thanks.

[Feature Request] upgrade (all), search, list installed?

Hi @aerys ,
I found your awesome package manager and really like it! It works with a ~2MB small binary and supports multiple repositories.
What's about features like

  • upgrade (all) package(s)
  • search for packages
  • list installed packages
  • package info (version, description, ...)

Not all features are really needed, but would be interesting if planned or possible with a still small binary?

Front End Integration?

I have a visual tool and I'd like to use GPM in the background to download/update/show a list of the packages in the GUI (sort of like Visual Studio's Nuget). I know there may be several ways to do that. But do you know of one way I could show and manage a visual package list from GPM, without digging into other methods I'm thinking of (such as parsing the command line)? I just found GPM yesterday, so I'l haven't investigated thoroughly.

Great software by the way; just what I was looking for!

Failing install/download requiring user-agent

Built on: macOS (10.15.7)

When attempting to download or install, I get the following error:

ERROR gpm > GPM command error: Git LFS error ERROR gpm > caused by: LFS server error 403 Forbidden: Request forbidden by administrative rules. Please make sure your request has a User-Agent header (http://developer.github.com/v3/#user-agent-required). Check https://developer.github.com for other possible causes.

This is resolved by adding:

.header(header::USER_AGENT, "gpm")

Along with the two AUTHORIZATION headers in lib.rs

Installation Doesn't Work?

I downloaded the .exe for Windows file and gpm wasn't recognized as a command.
Is it just missing from my machine's path variables?

Custom package extension?

Would it possible to change the package extension from *.tar.gz for example to *.gpm?
Maybe as option or with a config file?

Minor documentation issue

I notice a small issue in docs I think:

mkdir -p ~/.gpm/sources.list
echo "ssh://path.to/my/package-repository.git" >> ~/.gpm/sources.list

should be:

mkdir -p ~/.gpm
echo "ssh://path.to/my/package-repository.git" >> ~/.gpm/sources.list

Support for other version controls?

What do you think about add support for CVS, SVN, SCCS, CSSC RCS, Mercurial, Bazaar, SRC, etc...? Or at least for mercurial cuz large companies like Mozilla, Facebook (though they may have moved to a Mercurial fork called Eden), Google (as part of a custom VC codebase called Piper), Nokia, and Jane Street have used Mercurial.

Specify main or master branch

Hello,

i'm trying again the update command and i get this error :

gpm update
 INFO  gpm::gpm::command::update > running the "update" command
Updating all repositories
 INFO  gpm::gpm::command::update > updating repository https://gitlab.com/Johjo/ytreza-dev-package.git
⠁ [00:00:00] [------------------------------] 0/1 updating https://gitlab.com/Johjo/ytreza-dev-package.git
 TRACE gpm::gpm::git             > setup git credentials callback
 DEBUG gpm::gpm::git             > start cloning repository https://gitlab.com/Johjo/ytreza-dev-package.git in C:\Users\Jonathan\.gpm\cache\2c109486d14db5425962eac13191eb2d44f8f31b96f6572aa6947d0927c61847
 ERROR gpm::gpm::git             > Error { code: -3, klass: 4, message: "reference \'refs/remotes/origin/master\' not found" }
[src\gpm\git.rs:131] &e = Error {
    code: -3,
    klass: 4,
    message: "reference \'refs/remotes/origin/master\' not found",
}
  [00:00:00] [##############################] 1/1 updated repositories
 INFO  gpm::gpm::command::update > updated 0/1 repository
 ERROR gpm::gpm::command::update > package repositories have not been updated, check the logs for warnings/errors

The problem come from the branch name 'master'. Now, the default branch name on gitlab is 'main'. I create a branch master and everything was OK.

Could you send a specific error message or allow to specify the branch name ?

Thanks again for your job and sorry for my english ;)

Jonathan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.