Giter VIP home page Giter VIP logo

git-server's Introduction

git-server

A GitHub Protocol & API emulation.


Status

codecov CircleCI GitHub license GitHub issues Renovate enabled Language grade: JavaScript semantic-release

Description

git-server serves a hierarchy of local Git repositories to Git clients accessing the repository over http:// and https:// protocol.

git-server expects the local Git repositories (either cloned or created with git init) to be organized as follows in the local file system:

<repos_root_dir>/
├── <owner_1>/
│   └── <repo_1>
│   └── <repo_2>
├── <owner_2>/
│   └── <repo_1>
│   └── <repo_2>

Alternatively, a virtual repository mapping allows to 'mount' repositories independent of their location in the file system into a <owner>/<repo> hierarchy. A configuration example:

  virtualRepos: {
    owner1: {
      repo1: {
        path: './repo1',
      },
    },
    owner2: {
      repo2: {
        path: '/repos/repo2',
      },
    },
  },

Repositories exposed via git-server can be used just like any repository hosted on GitHub, i.e. you can clone them and push changes to. The repository contents can be accessed with the same url patterns you would use to request files managed on GitHub.

The following protocols and APIs are currently supported:

Installation

cd <checkout dir>
npm install

Getting started

git-server is configured via the config.js file which is expected to exist in the current working directory. Here's the default configuration:

{
  appTitle: 'Helix Git Server',
  repoRoot: './repos',
  // repository mapping. allows to 'mount' repositories outside the 'repoRoot' structure.
  virtualRepos: {
    demoOwner: {
      demoRepo: {
        path: './virtual/example',
      },
    },
  },
  listen: {
    http: {
      port: 5000,
      host: '0.0.0.0',
    },
    /*
    // https is optional
    https: {
      // cert: if no file is specfied a selfsigned certificate will be generated on-the-fly
      // cert: './localhost.crt',
      // key: if no file is specfied a key will be generated on-the-fly
      // key: './localhost.key',
      port: 5443,
      host: '0.0.0.0',
    },
    */
  },
  subdomainMapping: {
    // if enabled, <subdomain>.<baseDomain>/foo/bar/baz will be
    // resolved/mapped to 127.0.0.1/<subdomain>/foo/bar/baz
    enable: true,
    baseDomains: [
      // some wildcarded DNS domains resolving to 127.0.0.1
      'localtest.me',
      'lvh.me',
      'vcap.me',
      'lacolhost.com',
    ],
  },
  logs: {
    level: 'info', // fatal, error, warn, info, verbose, debug, trace
    logsDir: './logs',
    reqLogFormat: 'short', // used for morgan (request logging)
  },
}

git-server uses helix-log for logging. The log level (fatal, error, warn, info, verbose, debug, trace) can be set via the logs.level property in the config (see above). For more information please refer to the helix-log project.

1. Create a local Git repository

cd ./repos
# create org
mkdir helix && cd helix
# initialize new git repo
mkdir test && cd test && git init
# allow to remotely push to this repo
git config receive.denyCurrentBranch updateInstead
# add a README.md
echo '# test repo'>README.md
git add . && git commit -m '1st commit'
cd ../../..

2. Start server

npm start

3. Fetch raw content of file in Git repo over http

curl http://localhost:5000/raw/helix/test/main/README.md

Git Protocols and APIs

1. Git Raw Protocol

Serving content of a file in a git repo.

The requested file is specified by:

  • {owner}: GitHub organization or user
  • {repo}: repository name
  • {ref}: Git reference
    • branch name (e.g. main)
    • tag name (e.g. v1.0)
    • (full or shorthand) commit id (e.g. 7aeff3d)

GitHub URLs:

  • https://raw.githubusercontent.com/{owner}/{repo}/{ref}/path/to/file
  • https://github.com/{owner}/{repo}/raw/{ref}/path/to/file

Local git-server URLs:

  • http://localhost:{port}/raw/{owner}/{repo}/{ref}/path/to/file
  • http://localhost:{port}/{owner}/{repo}/raw/{ref}/path/to/file
  • http://raw.localtest.me:{port}/{owner}/{repo}/{ref}/path/to/file (using wildcarded DNS domain resolving to 127.0.0.1)

Remote examples:

  • https://raw.githubusercontent.com/adobe/git-server/main/README.md
  • https://github.com/adobe/git-server/raw/main/README.md

Local examples:

  • http://raw.localtest.me:5000/adobe/git-server/main/README.md
  • http://localhost:5000/adobe/git-server/raw/main/README.md
  • http://localhost:5000/raw/adobe/git-server/main/README.md

raw.githubusercontent.com serves certain file types (e.g. JavaScript, CSS, HTML) with incorrect Content-Type: text/plain header. 3rd party solutions like rawgit.com address this issue. git-server serves files with correct content type.

2. Git HTTP Transfer Protocols

Support for git clone, push, fetch

Documentation:

git push support

The served local repo needs to be either a bare repo (git clone --bare or git init --bare) or the following option needs to be set:

git config receive.denyCurrentBranch updateInstead

more information

3. GitHub API v3

Documentation: GitHub API v3

GitHub Endpoint: https://api.github.com/

Local endpoint: http://localhost:{port}/api or e.g. http://api.localtest.me:{port} (using wildcarded DNS domain resolving to 127.0.0.1)

Only a small subset of the GitHub API will be supported:

  • Get contents

    Note: The GitHub implementation supports files up to 1 megabyte in size.

  • Get blob

    Note: The GitHub implementation supports blobs up to 100 megabytes in size.

  • Get tree

  • Get commits

  • Get archive link

    Note: This method returns a 302 to a URL to download a tarball or zipball archive for a repository. git-server also supports an unofficial https://codeload.github.com endpoint that is not rate limited and that doesn't redirect:

    • https://codeload.github.com/{owner}/{repo}/[zip|tar.gz]/main

    Related issue/discussion: #5 Support codeload.github.com

Local examples:

  • http://api.localtest.me:5000/repos/adobe/git-server/contents/README.md?ref=main
  • http://api.localtest.me:5000/repos/adobe/project-helix/git/blobs/bf13fe66cbee379db6a3e4ebf0300b8bbc0f01b7
  • http://localhost:5000/api/repos/adobe/git-server/contents/README.md?ref=main
  • http://localhost:5000/api/repos/adobe/project-helix/git/blobs/bf13fe66cbee379db6a3e4ebf0300b8bbc0f01b7

4. GitHub-like Web Server

(not yet implemented)

Endpoint: https://github.com/

e.g.

https://github.com/{owner}/{repo}, https://github.com/{owner}/{repo}/blob/{branch}/path/to/file

git-server's People

Contributors

davidnuescheler avatar dependabot[bot] avatar dinraf avatar greenkeeper[bot] avatar koraa avatar kptdobe avatar mojavelinux avatar renovate-bot avatar renovate[bot] avatar rofe avatar semantic-release-bot avatar snyk-bot avatar stefan-guggisberg avatar trieloff avatar tripodsan 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

Watchers

 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

git-server's Issues

raw request on missing ignored files returns 500

Description
A raw request to a missing file that is also ignored by .gitignore returns a 500 instead of a 404.

To Reproduce
Add a new test to the server-tests that requests an ignored, non-existing file:

[30566] HTTP: listening on port 63119
Error: ENOENT: no such file or directory, open '/var/folders/rw/bhfm7fzn06n4vzz3vq5lpkq80000gn/T/tmp-30566-s8tkKEjk2JNf/owner1/repo1/ignored.txt'
http: server stopped.

AssertionError [ERR_ASSERTION]: 500 == 404
Expected :404
Actual   :500

Expected behavior
It should return a 404

Add support for a local-files only raw mode.

Is your feature request related to a problem? Please describe.
In many cases, serving the raw files from the git repository can lead to confusing results, for example when a file is missing in the local checkout, but present in the repository.

in those situations, it would be more transparent to only serve the files directly from disk and never from the repository.

one question is if the current branch should be respected or not. e.g. if the requested branch doesn't match the local checkout branch, it could either respond with a 404 or 400 or just ignore.

/cc @davidnuescheler

An in-range update of snyk is breaking the build 🚨

The dependency snyk was updated from 1.170.0 to 1.171.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

snyk is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • build: * build - Failed

Release Notes for v1.171.0

1.171.0 (2019-06-02)

Features

  • add branch and pkg name to monitor analytics (b91d2ae)
Commits

The new version differs by 6 commits.

  • 305ac09 Merge pull request #543 from snyk/feat/add_monitor_branch_pname_analytics
  • b91d2ae feat: add branch and pkg name to monitor analytics
  • 464b784 Merge pull request #544 from snyk/chore/delete-docker-promo
  • d82df40 chore: delete expired docker promo
  • 3d66ee6 Merge pull request #534 from snyk/chore/refactor-errors
  • 76b0565 chore: refactor snyk missing api token

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Dependency Dashboard

This issue provides visibility into Renovate updates and their statuses. Learn more

Awaiting Schedule

These updates are awaiting their schedule. Click on a checkbox to get an update now.

  • chore(deps): update external fixes (@semantic-release/github, isomorphic-git)
  • chore(deps): update dependency @semantic-release/changelog to v6

  • Check this box to trigger a request for Renovate to run again on this repository

Cut a release?

I think we should cut a proper release (maybe 0.1.0), so that petridish does not have to depend on snapshots anymore.

Server responds with 500 on paths with double slash

Raw requests that include a double slash in the path respond wit a 500, where as github serves the files correctly:

GET http://localhost:${state.httpPort}/raw/owner1/repo1/master/sub/sub//some_file.txt

RangeError: path should be a `path.relative()`d string, but got "/"
    at throwError (git-server/node_modules/ignore/index.js:354:9)
    at checkPath (git-server/node_modules/ignore/index.js:375:12)
    at Ignore._test (git-server/node_modules/ignore/index.js:483:5)
    at Ignore.ignores (git-server/node_modules/ignore/index.js:518:17)
    at Function.isIgnored (git-server/node_modules/isomorphic-git/dist/for-node/isomorphic-git/index.js:566:36)
    at <anonymous>
2019-05-31 09:11:44.177 info: HTTP: server stopped.

AssertionError [ERR_ASSERTION]: 500 == 200
Expected :200
Actual   :500

compare with:

https://raw.githubusercontent.com/adobe/git-server/master/test/specs//expected_readme.md

Expected Result

The server should behave the same as github and ignore the double slashes in the path, or at least respond with a 404.

Revert to official nodegit 0.2.22

while the forked nodegit addresses some security issues, it slows down development significantly, since we don't provide the pre-built binaries. some developers have even problems building nodegit at all.

Suggest

  • revert back to nodegit 0.2.22

Implement gracefull shutdown

When using the git-server via API, it is often useful to be able to shutdown the server. especially for testing.

suggest:

implement: server.stop()

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Error type: undefined. Note: this is a nested preset so please contact the preset author if you are unable to fix it yourself.

Server very slow for certain repositories

Description
the bigger a repository gets, the slower the server, even for files that are on disk.

example repository:

$ git-sizer --verbose
Processing blobs: 808
Processing trees: 1368
Processing commits: 483
Matching commits to trees: 483
Processing annotated tags: 0
Processing references: 15
| Name                         | Value     | Level of concern               |
| ---------------------------- | --------- | ------------------------------ |
| Overall repository size      |           |                                |
| * Commits                    |           |                                |
|   * Count                    |   483     |                                |
|   * Total size               |   194 KiB |                                |
| * Trees                      |           |                                |
|   * Count                    |  1.37 k   |                                |
|   * Total size               |   507 KiB |                                |
|   * Total tree entries       |  13.4 k   |                                |
| * Blobs                      |           |                                |
|   * Count                    |   808     |                                |
|   * Total size               |   124 MiB |                                |
| * Annotated tags             |           |                                |
|   * Count                    |     0     |                                |
| * References                 |           |                                |
|   * Count                    |    15     |                                |
|                              |           |                                |
| Biggest objects              |           |                                |
| * Commits                    |           |                                |
|   * Maximum size         [1] |  1.18 KiB |                                |
|   * Maximum parents      [2] |     2     |                                |
| * Trees                      |           |                                |
|   * Maximum entries      [3] |    53     |                                |
| * Blobs                      |           |                                |
|   * Maximum size         [4] |  13.5 MiB | *                              |
|                              |           |                                |
| History structure            |           |                                |
| * Maximum history depth      |   301     |                                |
| * Maximum tag depth          |     0     |                                |
|                              |           |                                |
| Biggest checkouts            |           |                                |
| * Number of directories  [5] |    58     |                                |
| * Maximum path depth     [6] |     5     |                                |
| * Maximum path length    [7] |    64 B   |                                |
| * Number of files        [8] |   231     |                                |
| * Total size of files    [9] |   104 MiB |                                |
| * Number of symlinks         |     0     |                                |
| * Number of submodules       |     0     |                                |
  • fetching a file that exists: about 1s
  • fetching a file that does not exist: about 300ms

another repository that is not that big:

$ git-sizer --verbose
Processing blobs: 1283
Processing trees: 1386
Processing commits: 963
Matching commits to trees: 963
Processing annotated tags: 0
Processing references: 34
| Name                         | Value     | Level of concern               |
| ---------------------------- | --------- | ------------------------------ |
| Overall repository size      |           |                                |
| * Commits                    |           |                                |
|   * Count                    |   963     |                                |
|   * Total size               |   372 KiB |                                |
| * Trees                      |           |                                |
|   * Count                    |  1.39 k   |                                |
|   * Total size               |  1.08 MiB |                                |
|   * Total tree entries       |  28.3 k   |                                |
| * Blobs                      |           |                                |
|   * Count                    |  1.28 k   |                                |
|   * Total size               |  41.2 MiB |                                |
| * Annotated tags             |           |                                |
|   * Count                    |     0     |                                |
| * References                 |           |                                |
|   * Count                    |    34     |                                |
|                              |           |                                |
| Biggest objects              |           |                                |
| * Commits                    |           |                                |
|   * Maximum size         [1] |  1.50 KiB |                                |
|   * Maximum parents      [2] |     2     |                                |
| * Trees                      |           |                                |
|   * Maximum entries      [3] |    57     |                                |
| * Blobs                      |           |                                |
|   * Maximum size         [4] |  1.22 MiB |                                |
|                              |           |                                |
| History structure            |           |                                |
| * Maximum history depth      |   638     |                                |
| * Maximum tag depth          |     0     |                                |
|                              |           |                                |
| Biggest checkouts            |           |                                |
| * Number of directories  [5] |    22     |                                |
| * Maximum path depth     [6] |     7     |                                |
| * Maximum path length    [5] |   164 B   | *                              |
| * Number of files        [7] |   120     |                                |
| * Total size of files    [8] |  5.72 MiB |                                |
| * Number of symlinks         |     0     |                                |
| * Number of submodules       |     0     |                                |
  • fetching non existent file: 20ms
  • fetching existent file: 30ms

An in-range update of snyk is breaking the build 🚨

The dependency snyk was updated from 1.97.0 to 1.97.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

snyk is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v1.97.1

1.97.1 (2018-09-23)

Bug Fixes

  • bump needle to ^2.2.4 to fix bug with node 8.12.0 (79a8992)
Commits

The new version differs by 2 commits.

  • 142379b Merge pull request #222 from snyk/fix/bump-needle
  • 79a8992 fix: bump needle to ^2.2.4 to fix bug with node 8.12.0

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

bump version to 0.9.0

scope of git-server's functionality has matured. version number should reflect this.

v3-api Get archive link with annotated tags didn't work

Hi,

thanks for publishing this great software! I started to work with it, but gets into the following bug:

Description
archive download from repos at an annotated tag results in an error. This is because the tag does not contain tree, but object (line lib/archiveHandler.js:180).

To Reproduce
Steps to reproduce the behavior:

  1. start server and get repo from https://github.com/dbrandes-welfenlab/rules_cc.git
  2. try wget http://localhost:5000/dbrandes-welfenlab/rules_cc/archive/v2020.10.01.zip works well (lightweight tag)
  3. try wget http://localhost:5000/dbrandes-welfenlab/rules_cc/archive/v2020.10.01a.zip did not work (Annotated tag)

Error:

MissingParameterError: The function requires a "oid" parameter but none was provided.
    at assertParameter (/source/git_server/node_modules/isomorphic-git/index.cjs:4227:11)
     at Object.readObject (/source/git_server/node_modules/isomorphic-git/index.cjs:10944:5)
     at getObject (/source/git_server/lib/git.js:218:14)
     at /source/git_server/lib/archiveHandler.js:180:37

and on the wget side:

--2020-10-04 18:16:24--  http://172.21.75.103:5000/dbrandes-welfenlab/rules_cc/archive/v2020.10.01.zip
Verbindungsaufbau zu 172.21.75.103:5000 … verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 302 Found
Platz: http://172.21.75.103:5000/codeload/dbrandes-welfenlab/rules_cc/zip/v2020.10.01 [folgend]
--2020-10-04 18:16:25--  http://172.21.75.103:5000/codeload/dbrandes-welfenlab/rules_cc/zip/v2020.10.01
Wiederverwendung der bestehenden Verbindung zu 172.21.75.103:5000.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 500 Internal Server Error
2020-10-04 18:16:25 FEHLER 500: Internal Server Error.

Expected behavior
gets a file with wget.

Environment
Specify your Node version and Operating System:
node:12 docker container.

best regards,

Daniel Brandes

server.stop() doesn't stop on linux with new helix-fetch based pipeline

the http-fetch pipeline probably keeps the connections open and hence the http server doesn't terminate. this is only a problem in tests, where they wait for termination of the gitserver.

a common solution is to keep track of the sockets and destroy them on server.stop(). since this is in the cli, we don't need to wait for http requests to complete.

I suggest to either implement this manually or use a library like http-terminator

also see: https://stackoverflow.com/questions/14626636/how-do-i-shutdown-a-node-js-https-server-immediately

(note, the trick with sending the extra close event with emit('close') doesn't help, as the node-process has connections open.)

Logging is hard to tune

I've been evaluating using this library in a test suite for an application that performs git operations. In that context, I don't want and logging output from the git server because it clutters the output of the test framework. Thus, I'd like to be able to silence the logger (or at least disable anything less than error messages). However, I've been unable to figure out how to do that short of modifying the global logger object.

This could be a docs issue, or it could go deeper. At the very least, I'd be interested in being able to completely disable logging with a switch. But just knowing how to replace the logger with a custom one would be helpful.

virtualRepos not mapped in xferHandler

It seems like the virtualRepos feature doesn't work for xfer-related operations like clone. The problem seems to be that the xrefHandler doesn't use the resolveRepositoryPath method, which is what encapsulates support for the virtual repos.

Support codeload.github.com

For adobe/project-helix#101 I need to get full snapshots of the Git Repository at a certain revision.

I assume that downloading the tarball from GitHub will be faster than cloning the entire repository (especially given that I will discard the download afterwards), which means we need to reverse-engineer the "Download ZIP" functionality.

For instance, clicking "Download ZIP" will open this URL https://github.com/adobe/parcel-plugin-htl/archive/master.zip which then 302s to https://codeload.github.com/adobe/parcel-plugin-htl/zip/master

master can in both cases be replaced with a ref identifier.

Server serves files wrongly on case insensitive filesystems

running on a case insensitive filesystem, the git-server serves files wrongly, if their path only differs in case.

for example:

http://localhost:${state.httpPort}/raw/owner1/repo1/master/readme.md

responds with the contents of the README.md,

but a similar request on github doesn't:

https://raw.githubusercontent.com/adobe/git-server/master/readme.md

An in-range update of eslint-plugin-jsx-a11y is breaking the build 🚨

The devDependency eslint-plugin-jsx-a11y was updated from 6.2.1 to 6.2.2.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

eslint-plugin-jsx-a11y is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • build: * build - Failed

Commits

The new version differs by 102 commits.

  • 057fb27 6.2.2
  • fc56208 Merge pull request #615 from evcohen/changelog--v6.2.2
  • 8c5f964 Changelog for v6.2.2
  • f82fbcb Merge pull request #614 from evcohen/update--jsx-ast-utils
  • 1c3e63a Update jsx-ast-utils to v2.2.1
  • c571293 Merge pull request #613 from evcohen/add-babel-to-dev-deps
  • c398d3a Add @babel/cli to the dev dependencies
  • 13b370c Merge pull request #610 from evcohen/greenkeeper/flow-bin-0.102.0
  • e28b81a Merge branch 'master' into greenkeeper/flow-bin-0.102.0
  • e3163e3 Merge pull request #603 from evcohen/another-attempt-at-eslint-v6
  • f121a78 Merge branch 'master' into another-attempt-at-eslint-v6
  • f3de162 Merge pull request #611 from evcohen/update-jsx-ast-utils
  • 91f17be Update ESLint to v6
  • 1eb9f19 Update jsx-ast-utils to 2.2.0
  • 313bc03 chore(package): update flow-bin to version 0.102.0

There are 102 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of snyk is breaking the build 🚨

The dependency snyk was updated from 1.110.2 to 1.111.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

snyk is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • build: * build - Failed

Release Notes for v1.111.0

1.111.0 (2018-11-28)

Features

  • test plugin dep-trees as graphs via new /test-dep-graph API (b23d9cc)
Commits

The new version differs by 2 commits.

  • 38f8ab4 Merge pull request #272 from snyk/feat/send-test-plugin-payload-as-graph
  • b23d9cc feat: test plugin dep-trees as graphs via new /test-dep-graph API

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Listen to random port if not configured

for local development together with petridish, the git-server should be transparent to the developer. in order to avoid potential conflicts it would be good to start the server on a random port.

suggest

  • if port(s) are configured with 0, the server chooses a random port (which is the default behaviour for server.listen)
  • the returned promise from start() should contain the port information. eg: { port: 1234, portSsl: 1235}

An in-range update of snyk is breaking the build 🚨

The dependency snyk was updated from 1.143.0 to 1.143.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

snyk is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • build: * build - Failed

Release Notes for v1.143.1

1.143.1 (2019-03-22)

Bug Fixes

  • correct scanning when targeting Gradle subprojects (635380d)
Commits

The new version differs by 2 commits.

  • 1827ef0 Merge pull request #405 from snyk/fix/gradle-subproject-scanning
  • 635380d fix: correct scanning when targeting Gradle subprojects

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

tests fail on windows

using node 10.6.0 on windows produces:

  Server Test
Initialized empty Git repository in C:/Users/tripod/AppData/Local/Temp/tmp-7988Nwimiu2a7f4E/owner1/repo1/.git/
The syntax of the command is incorrect.
    1) "before all" hook for "Starts http server on default port"
    2) "after all" hook for "repository info"

  Testing utils.js
    √ case-sensitive path existence


  1 passing (15s)
  2 failing

  1) Server Test
       "before all" hook for "Starts http server on default port":
     ShellJSInternalError: ENOENT: no such file or directory, open 'sub/sub/some_file.txt'
      at Object.openSync (fs.js:443:3)
      at touchFile (node_modules\shelljs\src\touch.js:68:19)
      at C:\Users\tripod\codez\git-server\node_modules\shelljs\src\touch.js:47:5
      at Array.forEach (<anonymous>)
      at Object._touch (node_modules\shelljs\src\touch.js:46:9)
      at Object.touch (node_modules\shelljs\src\common.js:384:25)
      at initRepository (test\server_tests.js:62:9)
      at Context.before (test\server_tests.js:98:11)

  2) Server Test
       "after all" hook for "repository info":
     Error: EBUSY: resource busy or locked, rmdir 'C:\Users\tripod\AppData\Local\Temp\tmp-7988Nwimiu2a7f4E\owner1\repo1'

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.