15 Commits

Author SHA1 Message Date
840a965877 Added Settings Webui (view only), rewrite of API, Fixes #14, Fixes #2, now Testing 2018-02-20 21:51:49 -05:00
d4966f597b Fixes #15, started seperating Settings into their own package 2018-02-17 11:52:38 -05:00
ba0f076c66 cleaning up an issue with client config generation 2018-02-16 20:41:09 -05:00
3978be8a40 Adding ReverseProxy settings File 2018-02-15 22:55:47 -05:00
c5b86597cb File prio code added, API rewrite completed, some core features rewritten for clarity 2018-02-15 22:49:11 -05:00
b843cfc11b adding frontend authentication, starting file priority code 2018-02-10 09:53:02 -05:00
42f4ecc81b Reverse Proxy with SSL support, Generated client Configs, JWT client to server auth, closes #13 2018-02-07 21:42:35 -05:00
d6288f4aaa Reverse Proxy with SSL support, Generated client Configs, JWT client to server auth, closes #13 2018-02-07 21:41:00 -05:00
0abe1620c6 closes #9, closes #8, closes #3, closes #4, added new notification features, search torrents, change directory, force seed torrent, updated Readme 2018-02-03 14:22:21 -05:00
3ab66456a1 cleaning up old files 2018-01-31 22:29:51 -05:00
8db9a43b0f testing rate limiting, making API changes 2018-01-31 22:28:45 -05:00
6af49b317d Adding logic to change torrent storage path 2018-01-25 23:08:10 -05:00
f58ca5bb09 Finished Frontend notifications, added file prio (needs test), started Settings Button work 2018-01-23 23:22:25 -05:00
52e245d11f Finished Frontend notifications, added file prio (needs test), started Settings Button work 2018-01-23 23:21:25 -05:00
5856052f82 Started adding frontend notifications, fixing firefox file upload bug 2018-01-22 19:03:06 -05:00
2049 changed files with 95022 additions and 94354 deletions

4
.gitignore vendored
View File

@@ -1,8 +1,10 @@
downloads/
downloading/
downloaded/
uploadedTorrents/
storage.db.lock
storage.db
storage.db.old
.torrent.bolt.db.lock
.torrent.bolt.db
.idea/torrent-project.iml
@@ -17,4 +19,6 @@ logs/server.log
.goreleaser.yml
config.toml.backup
/public/static/js/kickwebsocket.js.backup
/public/static/js/kickwebsocket-generated.js
clientAuth.txt
dist

11
.vscode/settings.json vendored
View File

@@ -1,3 +1,12 @@
{
"git.ignoreLimitWarning": true
"git.ignoreLimitWarning": true,
"cSpell.words": [
"anacrolix",
"asdine",
"btih",
"gofeed",
"logrus",
"mmcdole",
"otiai"
]
}

6
.vscode/tasks.json vendored
View File

@@ -1,7 +1,7 @@
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"version": "2.0.0",
"tasks": [
{
"taskName": "Run Program",
@@ -12,9 +12,9 @@
]
},
{
"taskName": "Build GopherJS",
"taskName": "goReleaser Snapshot",
"type": "shell",
"command": "C:/Users/deranjer/go/bin/gopherjs.exe build C:/Users/deranjer/GoglandProjects/torrent-project/public/static/js/frontend-websocket.go",
"command": "C:/Users/deranjer/go/bin/goreleaser.exe -rm-dist -snapshot",
"problemMatcher": [
"$go"
]

View File

@@ -26,11 +26,25 @@ Image of the frontend UI
- Automatic stop after seeding ratio reached
- Pushbullet notification on torrent complete
- Automatic move of completed torrent to new directory (leave symlink behind for seeding)
- Doesn't work on Windows yet, have to copy file for now
- Symlinks don't work on Windows yet, have to copy file for now
## Roadmap
- Early-Mid 2018
- [X] Ability to modify storage path of torrent after it has been added
- [X] Backend to frontend notification messages
- [X] Global Rate Limiting for Upload/Download Speed
- [X] Add torrents from watch folder (cron job every 5 minutes)
- [X] Authentication from client to server (done via JWT, will add functionality for 3rd party clients later)
- [X] Reverse Proxy Support with SSL upgrade added (with provided config for nginx)
- [X] Mostly generated client config from toml.config on first run
- [ ] Unit testing completed for a large portion of the package
- [ ] Stability/bug fixing/Optimization rewrite of some of the core structures of the WebUI and base server
@@ -40,8 +54,7 @@ Image of the frontend UI
- [ ] Ability to set priority for individual files (just added to anacrolix/torrent so coming soon, already added to my UI)
- [ ] Ability to view TOML settings from WebUI (and perhaps change a few as well)
- [ ] Ability to modify storage path of torrent after it has been added
- Late 2018
@@ -96,6 +109,12 @@ The `config.toml` file contains all of the settings for the server part of the a
SeedRatioStop = 1.50 #automatically stops the torrent after it reaches this seeding ratio
#Relative or absolute path accepted, the server will convert any relative path to an absolute path.
DefaultMoveFolder = 'downloaded' #default path that a finished torrent is symlinked to after completion. Torrents added via RSS will default here
TorrentWatchFolder = 'torrentUpload' #folder path that is watched for .torrent files and adds them automatically every 5 minutes
#Limits your upload and download speed globally, all are averages and not burst protected (usually burst on start).
#Low = ~.05MB/s, Medium = ~.5MB/s, High = ~1.5MB/s
UploadRateLimit = "Unlimited" #Options are "Low", "Medium", "High", "Unlimited" #Unlimited is default
DownloadRateLimit = "Unlimited"
[notifications]

View File

@@ -1,20 +1,37 @@
[serverConfig]
ServerPort = ":8000" #leave format as is it expects a string with colon
ServerAddr = "" #blank will bind to default IP address, usually fine to leave be
LogLevel = "Warn" # Options = Debug, Info, Warn, Error, Fatal, Panic
LogOutput = "file" #Options = file, stdout #file will print it to logs/server.log
LogLevel = "Info" # Options = Debug, Info, Warn, Error, Fatal, Panic
LogOutput = "stdout" #Options = file, stdout #file will print it to logs/server.log
SeedRatioStop = 1.50 #automatically stops the torrent after it reaches this seeding ratio
#Relative or absolute path accepted, the server will convert any relative path to an absolute path.
DefaultMoveFolder = 'downloaded' #default path that a finished torrent is symlinked to after completion. Torrents added via RSS will default here
DefaultMoveFolder = 'Z:\downloads' #default path that a finished torrent is symlinked to after completion. Torrents added via RSS will default here
TorrentWatchFolder = 'torrentUpload' #folder path that is watched for .torrent files and adds them automatically every 5 minutes
#Limits your upload and download speed globally, all are averages and not burst protected (usually burst on start).
#Low = ~.05MB/s, Medium = ~.5MB/s, High = ~1.5MB/s
UploadRateLimit = "Unlimited" #Options are "Low", "Medium", "High", "Unlimited" #Unlimited is default
DownloadRateLimit = "Unlimited"
[goTorrentWebUI]
#Basic goTorrentWebUI authentication (not terribly secure, implemented in JS, password is hashed to SHA256, not salted, basically don't depend on this if you require very good security)
WebUIAuth = false # bool, if false no authentication is required for the webUI
WebUIUser = "admin"
WebUIPassword = "Password1"
[notifications]
PushBulletToken = "" #add your pushbullet api token here to notify of torrent completion to pushbullet
PushBulletToken = "o.8sUHemPkTCaty3u7KnyvEBN19EkeT63g" #add your pushbullet api token here to notify of torrent completion to pushbullet
[reverseProxy]
#This is for setting up goTorrent behind a reverse Proxy (with SSL, reverse proxy with no SSL will require editing the WSS connection to a WS connection manually)
ProxyEnabled = true #bool, either false or true
#URL is CASE SENSITIVE
BaseURL = "derajnet.duckdns.org/gopher/" # MUST be in the format (if you have a subdomain, and must have trailing slash) "yoursubdomain.domain.org/subroute/"
[EncryptionPolicy]
@@ -22,7 +39,6 @@
ForceEncryption = false
PreferNoEncryption = true
[torrentClientConfig]
DownloadDir = 'downloading' #the full OR relative path where the torrent server stores in-progress torrents
@@ -31,6 +47,9 @@
# Never send chunks to peers.
NoUpload = false #boolean
#User-provided Client peer ID. If not present, one is generated automatically.
PeerID = "" #string
#The address to listen for new uTP and TCP bittorrent protocol connections. DHT shares a UDP socket with uTP unless configured otherwise.
ListenAddr = "" #Leave Blank for default, syntax "HOST:PORT"
@@ -42,16 +61,6 @@
# Don't create a DHT.
NoDHT = false #boolean
# Events are data bytes sent in pieces. The burst must be large enough to fit a whole chunk.
UploadRateLimiter = "" #*rate.Limiter
#The events are bytes read from connections. The burst must be biggerthan the largest Read performed on a Conn minus one. This is likely to
#be the larger of the main read loop buffer (~4096), and the requested chunk size (~16KiB).
DownloadRateLimiter = "" #*rate.Limiter
#User-provided Client peer ID. If not present, one is generated automatically.
PeerID = "" #string
#For the bittorrent protocol.
DisableUTP = false #bool

View File

@@ -0,0 +1,12 @@
location ^~ /gotorrent/ {
proxy_pass http://192.168.1.100:8000/;
proxy_redirect http:// https://;
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $http_address;
proxy_set_header X-Scheme $scheme;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 KiB

After

Width:  |  Height:  |  Size: 63 KiB

View File

@@ -9,16 +9,21 @@ import (
//All the message types are first, first the server handling messages from the client
//Message contains the JSON messages from the client, we first unmarshal to get the messagetype, then each module unmarshalls the actual message once we know the type
//Message contains the JSON messages from the client, we first unmarshal to get the messagetype, then pass it on to each module
type Message struct {
MessageType string
MessageDetail string `json:",omitempty"`
MessageDetailTwo string `json:",omitempty"`
Payload []string
MessageType string
Payload interface{}
}
//Next are the messages the server sends to the client
//ServerPushMessage is information (usually logs and status messages) that the server pushes to the client
type ServerPushMessage struct {
MessageType string
MessageLevel string //can be "success", "error", "warn", "info"
Payload string //the actual message
}
//RSSJSONList is a slice of gofeed.Feeds sent to the client
type RSSJSONList struct {
MessageType string
@@ -33,7 +38,7 @@ type RSSFeedsNames struct {
}
//TorrentList struct contains the torrent list that is sent to the client
type TorrentList struct { //helps create the JSON structure that react expects to recieve
type TorrentList struct { //helps create the JSON structure that react expects to receive
MessageType string `json:"MessageType"`
Totaltorrents int `json:"total"`
ClientDBstruct []ClientDB `json:"data"`
@@ -48,48 +53,48 @@ type TorrentFileList struct {
//PeerFileList returns a slice of peers
type PeerFileList struct {
MessageType string `json:"MessageType"`
TotalPeers int `json:"TotalPeers"`
PeerList []torrent.Peer `json:"PeerList"`
MessageType string
TotalPeers int
PeerList []torrent.Peer
}
//TorrentFile describes a single file that a torrent client is downloading for a single torrent
type TorrentFile struct {
TorrentHashString string //Used to tie the file to a torrent //TODO not sure if neededs
FileName string
FilePath string
FileSize string
FilePercent string
FilePriority string
TorrentHashString string //Used to tie the file to a torrent //TODO not sure if needed
FileName string //The name of the file
FilePath string //The relative filepath to the file
FileSize string //Humanized file size display
FilePercent string //String value of percent of individual file percent done
FilePriority string //Currently "High", "Normal", or "Cancel"
}
//ClientDB struct contains the struct that is used to compose the torrentlist
type ClientDB struct { //TODO maybe seperate out the internal bits into another client struct
TorrentHashString string `json:"TorrentHashString"` //Passed to client for displaying hash and is used to uniquly identify all torrents
TorrentName string `json:"TorrentName"`
DownloadedSize string `json:"DownloadedSize"` //how much the client has downloaded total
Size string `json:"Size"` //total size of the torrent
DownloadSpeed string `json:"DownloadSpeed"` //the dl speed of the torrent
Status string `json:"Status"` //Passed to client for display
PercentDone string `json:"PercentDone"` //Passed to client to show percent done
ActivePeers string `json:"ActivePeers"` //passed to client
UploadSpeed string `json:"UploadSpeed"` //passed to client to show Uploadspeed
StoragePath string `json:"StoragePath"` //Passed to client (and stored in stormdb)
type ClientDB struct { //TODO maybe separate out the internal bits into another client struct
TorrentHashString string //Passed to client for displaying hash and is used to uniquely identify all torrents
TorrentName string //String of the name of the torrent
DownloadedSize string //how much the client has downloaded total
Size string //total size of the torrent
DownloadSpeed string //the dl speed of the torrent
Status string //Passed to client for display
PercentDone string //Passed to client to show percent done
ActivePeers string //passed to client
UploadSpeed string //passed to client to show Uploadspeed
StoragePath string //Passed to client (and stored in stormdb)
DateAdded string //Passed to client (and stored in stormdb)
ETA string `json:"ETA"` //Passed to client
Label string //Passed to client and stored in stormdb
SourceType string `json:"SourceType"` //Stores whether the torrent came from a torrent file or a magnet link
ETA string //Passed to client
TorrentLabel string //Passed to client and stored in stormdb
SourceType string //Stores whether the torrent came from a torrent file or a magnet link
KnownSwarm []torrent.Peer //Passed to client for Peer Tab
UploadRatio string //Passed to client, stores the string for uploadratio stored in stormdb
TotalUploadedSize string //Humanized version of TotalUploadedBytes to pass to the client
TotalUploadedBytes int64 //includes bytes that happened before reboot (from stormdb)
TotalUploadedBytes int64 `json:"-"` //includes bytes that happened before reboot (from stormdb)
downloadSpeedInt int64 //Internal used for calculating dl speed
BytesCompleted int64 //Internal used for calculating the dl speed
DataBytesWritten int64 //Internal used for calculating dl speed
DataBytesRead int64 //Internal used for calculating dl speed
UpdatedAt time.Time //Internal used for calculating speeds of upload and download
TorrentHash metainfo.Hash //Used to create string for TorrentHashString... not sure why I have it... make that a TODO I guess
NumberofFiles int
NumberofPieces int
MaxConnections int //Used to stop the torrent by limiting the max allowed connections
BytesCompleted int64 `json:"-"` //Internal used for calculating the dl speed
DataBytesWritten int64 `json:"-"` //Internal used for calculating dl speed
DataBytesRead int64 `json:"-"` //Internal used for calculating dl speed
UpdatedAt time.Time `json:"-"` //Internal used for calculating speeds of upload and download
TorrentHash metainfo.Hash `json:"-"` //Used to create string for TorrentHashString... not sure why I have it... make that a TODO I guess
NumberofFiles int //Number of files in the torrent
NumberofPieces int //Total number of pieces in the torrent (Not currently used)
MaxConnections int //Used to stop the torrent by limiting the max allowed connections
}

View File

@@ -1,6 +1,10 @@
package engine
import (
"io/ioutil"
"os"
"path/filepath"
"github.com/anacrolix/torrent"
"github.com/asdine/storm"
Storage "github.com/deranjer/goTorrent/storage"
@@ -9,9 +13,6 @@ import (
"github.com/sirupsen/logrus"
)
//Logger is the global variable pulled in from main.go
var Logger *logrus.Logger
//InitializeCronEngine initializes and starts the cron engine so we can add tasks as needed, returns pointer to the engine
func InitializeCronEngine() *cron.Cron {
c := cron.New()
@@ -19,8 +20,44 @@ func InitializeCronEngine() *cron.Cron {
return c
}
//CheckTorrentWatchFolder adds torrents from a watch folder //TODO see if you can use filepath.Abs instead of changing directory
func CheckTorrentWatchFolder(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrentLocalStorage Storage.TorrentLocal, config FullClientSettings) {
c.AddFunc("@every 5m", func() {
Logger.WithFields(logrus.Fields{"Watch Folder": config.TorrentWatchFolder}).Info("Running the watch folder cron job")
torrentFiles, err := ioutil.ReadDir(config.TorrentWatchFolder)
if err != nil {
Logger.WithFields(logrus.Fields{"Folder": config.TorrentWatchFolder, "Error": err}).Error("Unable to read from the torrent upload folder")
return
}
for _, file := range torrentFiles {
if filepath.Ext(file.Name()) != ".torrent" {
Logger.WithFields(logrus.Fields{"File": file.Name(), "error": err}).Error("Not a torrent file..")
continue
} else {
fullFilePath := filepath.Join(config.TorrentWatchFolder, file.Name())
fullFilePathAbs, err := filepath.Abs(fullFilePath)
fullNewFilePath := filepath.Join(config.TFileUploadFolder, file.Name())
fullNewFilePathAbs, err := filepath.Abs(fullNewFilePath)
Logger.WithFields(logrus.Fields{"Name": file.Name(), "FullFilePath": fullFilePathAbs, "newFullFilePath": fullNewFilePathAbs}).Info("Attempting to add the following file... and copy to")
CopyFile(fullFilePathAbs, fullNewFilePathAbs)
clientTorrent, err := tclient.AddTorrentFromFile(fullNewFilePathAbs)
if err != nil {
Logger.WithFields(logrus.Fields{"err": err, "Torrent": file.Name()}).Warn("Unable to add torrent to torrent client!")
continue
}
os.Remove(fullFilePathAbs) //delete the torrent after adding it and copying it over
Logger.WithFields(logrus.Fields{"Source Folder": fullFilePathAbs, "Destination Folder": fullNewFilePathAbs, "Torrent": file.Name()}).Info("Added torrent from watch folder, and moved torrent file")
StartTorrent(clientTorrent, torrentLocalStorage, db, "file", fullNewFilePathAbs, config.DefaultMoveFolder, "default", config)
}
}
})
}
//RefreshRSSCron refreshes all of the RSS feeds on an hourly basis
func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrentLocalStorage Storage.TorrentLocal, dataDir string) {
func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrentLocalStorage Storage.TorrentLocal, config FullClientSettings) {
c.AddFunc("@hourly", func() {
torrentHashHistory := Storage.FetchHashHistory(db)
RSSFeedStore := Storage.FetchRSSFeeds(db)
@@ -48,7 +85,7 @@ func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrent
Logger.WithFields(logrus.Fields{"err": err, "Torrent": RSSTorrent.Title}).Warn("Unable to add torrent to torrent client!")
break //break out of the loop entirely for this message since we hit an error
}
StartTorrent(clientTorrent, torrentLocalStorage, db, dataDir, "magnet", "", dataDir) //TODO let user specify torrent default storage location and let change on fly
StartTorrent(clientTorrent, torrentLocalStorage, db, "magnet", "", config.DefaultMoveFolder, "RSS", config) //TODO let user specify torrent default storage location and let change on fly
singleFeed.Torrents = append(singleFeed.Torrents, singleRSSTorrent)
}

View File

@@ -1,12 +1,10 @@
package engine
import (
"io"
"os"
"path/filepath"
"runtime"
"github.com/anacrolix/torrent"
"github.com/asdine/storm"
Storage "github.com/deranjer/goTorrent/storage"
pushbullet "github.com/mitsuse/pushbullet-go"
@@ -16,12 +14,31 @@ import (
)
//MoveAndLeaveSymlink takes the file from the default download dir and moves it to the user specified directory and then leaves a symlink behind.
func MoveAndLeaveSymlink(config FullClientSettings, singleTorrent *torrent.Torrent, db *storm.DB) {
Logger.WithFields(logrus.Fields{"Torrent Name": singleTorrent.Name()}).Info("Move and Create symlink started for torrent")
tStorage := Storage.FetchTorrentFromStorage(db, singleTorrent.InfoHash().String())
oldFilePath := filepath.Join(config.TorrentConfig.DataDir, singleTorrent.Name())
newFilePath := filepath.Join(tStorage.StoragePath, singleTorrent.Name())
_, err := os.Stat(tStorage.StoragePath)
func MoveAndLeaveSymlink(config FullClientSettings, tHash string, db *storm.DB, moveDone bool, oldPath string) { //moveDone and oldPath are for moving a completed torrent
tStorage := Storage.FetchTorrentFromStorage(db, tHash)
Logger.WithFields(logrus.Fields{"Torrent Name": tStorage.TorrentName}).Info("Move and Create symlink started for torrent")
var oldFilePath string
if moveDone { //only occurs on manual move
oldFilePathTemp := filepath.Join(oldPath, tStorage.TorrentName)
var err error
oldFilePath, err = filepath.Abs(oldFilePathTemp)
if err != nil {
Logger.WithFields(logrus.Fields{"Torrent Name": tStorage.TorrentName, "Filepath": oldFilePath}).Error("Cannot create absolute file path!")
}
} else {
oldFilePathTemp := filepath.Join(config.TorrentConfig.DataDir, tStorage.TorrentName)
var err error
oldFilePath, err = filepath.Abs(oldFilePathTemp)
if err != nil {
Logger.WithFields(logrus.Fields{"Torrent Name": tStorage.TorrentName, "Filepath": oldFilePath}).Error("Cannot create absolute file path!")
}
}
newFilePathTemp := filepath.Join(tStorage.StoragePath, tStorage.TorrentName)
newFilePath, err := filepath.Abs(newFilePathTemp)
if err != nil {
Logger.WithFields(logrus.Fields{"Torrent Name": tStorage.TorrentName, "Filepath": newFilePath}).Error("Cannot create absolute file path for new file path!")
}
_, err = os.Stat(tStorage.StoragePath)
if os.IsNotExist(err) {
err := os.MkdirAll(tStorage.StoragePath, 0755)
if err != nil {
@@ -30,74 +47,52 @@ func MoveAndLeaveSymlink(config FullClientSettings, singleTorrent *torrent.Torre
}
oldFileInfo, err := os.Stat(oldFilePath)
if err != nil {
Logger.WithFields(logrus.Fields{"Old File info": oldFileInfo, "error": err}).Error("Cannot find the old file to copy/symlink!")
Logger.WithFields(logrus.Fields{"Old File info": oldFileInfo, "Old File Path": oldFilePath, "error": err}).Error("Cannot find the old file to copy/symlink!")
return
}
if oldFilePath != newFilePath {
if runtime.GOOS == "windows" { //TODO the windows symlink is broken on windows 10 creator edition, so doing a copy for now until Go 1.11
if oldFileInfo.IsDir() {
os.Mkdir(newFilePath, 0755)
folderCopy.Copy(oldFilePath, newFilePath) //copy the folder to the new location
os.Chmod(newFilePath, 0777)
notifyUser(tStorage, config, singleTorrent, db)
return
}
srcFile, err := os.Open(oldFilePath)
defer srcFile.Close()
if err != nil {
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "error": err}).Error("Windows: Cannot open old file for copy")
return
}
destFile, err := os.Create(newFilePath)
defer destFile.Close()
if err != nil {
Logger.WithFields(logrus.Fields{"New File Path": newFilePath, "error": err}).Error("Windows: Cannot open new file for copying into")
return
}
bytesWritten, err := io.Copy(destFile, srcFile)
if err != nil {
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Windows: Cannot copy old file into new")
return
}
err = destFile.Sync()
if err != nil {
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Windows: Error syncing new file to disk")
}
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "bytesWritten": bytesWritten}).Info("Windows Torrent Copy Completed")
notifyUser(tStorage, config, singleTorrent, db)
} else {
folderCopy.Copy(oldFilePath, newFilePath)
os.Chmod(newFilePath, 0777) //changing permissions on the new file to be permissive
newFilePathDir := filepath.Dir(newFilePath)
os.Mkdir(newFilePathDir, 0755)
err := folderCopy.Copy(oldFilePath, newFilePath) //copy the folder to the new location
if err != nil {
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Error Copying Folder!")
}
os.Chmod(newFilePath, 0777)
if runtime.GOOS != "windows" { //TODO the windows symlink is broken on windows 10 creator edition, so on the other platforms create symlink (windows will copy) until Go1.11
os.RemoveAll(oldFilePath)
err := os.Symlink(newFilePath, oldFilePath) //For all other OS's create a symlink
err = os.Symlink(newFilePath, oldFilePath)
if err != nil {
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Error creating symlink")
return
}
notifyUser(tStorage, config, singleTorrent, db)
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath}).Info("Moving completed torrent")
}
if moveDone == false {
tStorage.TorrentMoved = true //TODO error handling instead of just saying torrent was moved when it was not
notifyUser(tStorage, config, db) //Only notify if we haven't moved yet, don't want to push notify user every time user uses change storage button
}
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath}).Info("Moving completed torrent")
tStorage.StoragePath = filepath.Dir(newFilePath)
Storage.UpdateStorageTick(db, tStorage)
}
}
func notifyUser(tStorage Storage.TorrentLocal, config FullClientSettings, singleTorrent *torrent.Torrent, db *storm.DB) {
Logger.WithFields(logrus.Fields{"New File Path": tStorage.StoragePath, "Torrent Name": singleTorrent.Name()}).Info("Attempting to notify user..")
func notifyUser(tStorage Storage.TorrentLocal, config FullClientSettings, db *storm.DB) {
Logger.WithFields(logrus.Fields{"New File Path": tStorage.StoragePath, "Torrent Name": tStorage.TorrentName}).Info("Attempting to notify user..")
tStorage.TorrentMoved = true
Storage.AddTorrentLocalStorage(db, tStorage) //Updating the fact that we moved the torrent
//Storage.AddTorrentLocalStorage(db, tStorage) //Updating the fact that we moved the torrent
Storage.UpdateStorageTick(db, tStorage)
if config.PushBulletToken != "" {
pb := pushbullet.New(config.PushBulletToken)
n := requests.NewNote()
n.Title = singleTorrent.Name()
n.Title = tStorage.TorrentName
n.Body = "Completed and moved to " + tStorage.StoragePath
if _, err := pb.PostPushesNote(n); err != nil {
Logger.WithFields(logrus.Fields{"Torrent": singleTorrent.Name(), "New File Path": tStorage.StoragePath, "error": err}).Error("Error pushing PushBullet Note")
Logger.WithFields(logrus.Fields{"Torrent": tStorage.TorrentName, "New File Path": tStorage.StoragePath, "error": err}).Error("Error pushing PushBullet Note")
return
}
Logger.WithFields(logrus.Fields{"Torrent": singleTorrent.Name(), "New File Path": tStorage.StoragePath}).Info("Pushbullet note sent")
Logger.WithFields(logrus.Fields{"Torrent": tStorage.TorrentName, "New File Path": tStorage.StoragePath}).Info("Pushbullet note sent")
} else {
Logger.WithFields(logrus.Fields{"New File Path": tStorage.StoragePath, "Torrent Name": singleTorrent.Name()}).Info("No pushbullet API key set, not notifying")
Logger.WithFields(logrus.Fields{"New File Path": tStorage.StoragePath, "Torrent Name": tStorage.TorrentName}).Info("No pushbullet API key set, not notifying")
}
}

View File

@@ -0,0 +1,46 @@
package engine
import (
"testing"
"github.com/asdine/storm"
Storage "github.com/deranjer/goTorrent/storage"
)
func TestMoveAndLeaveSymlink(t *testing.T) {
type args struct {
config FullClientSettings
tStorage Storage.TorrentLocal
db *storm.DB
}
tests := []struct {
name string
args args
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
MoveAndLeaveSymlink(tt.args.config, tt.args.tStorage, tt.args.db)
})
}
}
func Test_notifyUser(t *testing.T) {
type args struct {
tStorage Storage.TorrentLocal
config FullClientSettings
db *storm.DB
}
tests := []struct {
name string
args args
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
notifyUser(tt.args.tStorage, tt.args.config, tt.args.db)
})
}
}

View File

@@ -12,10 +12,22 @@ import (
"github.com/anacrolix/torrent/metainfo"
"github.com/asdine/storm"
Storage "github.com/deranjer/goTorrent/storage"
"github.com/gorilla/websocket"
"github.com/mmcdole/gofeed"
"github.com/sirupsen/logrus"
)
//Logger is the injected variable for global logger
var Logger *logrus.Logger
//Conn is the injected variable for the websocket connection
var Conn *websocket.Conn
//CreateServerPushMessage Pushes a message from the server to the client
func CreateServerPushMessage(message ServerPushMessage, conn *websocket.Conn) {
conn.WriteJSON(message)
}
//RefreshSingleRSSFeed refreshing a single RSS feed to send to the client (so no updating database) mainly by updating the torrent list to display any changes
func RefreshSingleRSSFeed(db *storm.DB, RSSFeed Storage.SingleRSSFeed) Storage.SingleRSSFeed { //Todo.. duplicate as cron job... any way to merge these to reduce duplication?
singleRSSFeed := Storage.SingleRSSFeed{URL: RSSFeed.URL, Name: RSSFeed.Name}
@@ -24,6 +36,7 @@ func RefreshSingleRSSFeed(db *storm.DB, RSSFeed Storage.SingleRSSFeed) Storage.S
feed, err := fp.ParseURL(RSSFeed.URL)
if err != nil {
Logger.WithFields(logrus.Fields{"RSSFeedURL": RSSFeed.URL, "error": err}).Error("Unable to parse URL")
CreateServerPushMessage(ServerPushMessage{MessageType: "serverPushMessage", MessageLevel: "error", Payload: "Unable to add Storage Path"}, Conn)
}
for _, RSSTorrent := range feed.Items {
singleRSSTorrent.Link = RSSTorrent.Link
@@ -45,7 +58,8 @@ func ForceRSSRefresh(db *storm.DB, RSSFeedStore Storage.RSSFeedStore) { //Todo..
for _, singleFeed := range RSSFeedStore.RSSFeeds {
feed, err := fp.ParseURL(singleFeed.URL)
if err != nil {
Logger.WithFields(logrus.Fields{"RSSFeedURL": singleFeed.URL, "error": err}).Error("Unable to parse URL")
Logger.WithFields(logrus.Fields{"RSSFeedURL": singleFeed.URL, "error": err}).Error("Unable to parse RSS URL")
CreateServerPushMessage(ServerPushMessage{MessageType: "serverPushMessage", MessageLevel: "error", Payload: "Unable to parse RSS URL"}, Conn)
}
for _, RSSTorrent := range feed.Items {
singleRSSTorrent.Link = RSSTorrent.Link
@@ -69,26 +83,29 @@ func timeOutInfo(clientTorrent *torrent.Torrent, seconds time.Duration) (deleted
}()
select {
case <-clientTorrent.GotInfo(): //attempting to retrieve info for torrent
Logger.WithFields(logrus.Fields{"clientTorrentName": clientTorrent.Name()}).Debug("Recieved torrent info for torrent")
Logger.WithFields(logrus.Fields{"clientTorrentName": clientTorrent.Name()}).Debug("Received torrent info for torrent")
clientTorrent.DownloadAll()
return false
case <-timeout: // getting info for torrent has timed out so purging the torrent
Logger.WithFields(logrus.Fields{"clientTorrentName": clientTorrent.Name()}).Error("Forced to drop torrent from timeout waiting for info")
CreateServerPushMessage(ServerPushMessage{MessageType: "serverPushMessage", MessageLevel: "error", Payload: "Timout waiting for torrent info... dropping"}, Conn)
clientTorrent.Drop()
return true
}
}
func readTorrentFileFromDB(element *Storage.TorrentLocal, tclient *torrent.Client, db *storm.DB) (singleTorrent *torrent.Torrent) {
func readTorrentFileFromDB(element *Storage.TorrentLocal, tclient *torrent.Client, db *storm.DB) (singleTorrent *torrent.Torrent, err error) {
tempFile, err := ioutil.TempFile("", "TorrentFileTemp")
if err != nil {
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to create tempfile")
return nil, err
}
//defer tempFile.Close() //Todo.. if we remove this do we need to close it?
defer os.Remove(tempFile.Name())
if _, err := tempFile.Write(element.TorrentFile); err != nil { //writing out out the entire file back into the temp dir from boltdb
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to write to tempfile")
return nil, err
}
if err := tempFile.Close(); err != nil { //close the tempfile so that we can add it back into the torrent client
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to close tempfile")
@@ -96,18 +113,22 @@ func readTorrentFileFromDB(element *Storage.TorrentLocal, tclient *torrent.Clien
_, err = os.Stat(element.TorrentFileName) //if we CAN find the torrent, add it
if err != nil {
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to find file")
Storage.DelTorrentLocalStorage(db, element.Hash) //purge the torrent
return nil, err
}
singleTorrent, err = tclient.AddTorrentFromFile(element.TorrentFileName)
if err != nil {
Logger.WithFields(logrus.Fields{"tempfile": element.TorrentFileName, "err": err}).Error("Unable to add Torrent from file!")
CreateServerPushMessage(ServerPushMessage{MessageType: "serverPushMessage", MessageLevel: "error", Payload: "Unable to add Torrent from file!"}, Conn)
Storage.DelTorrentLocalStorage(db, element.Hash) //purge the torrent
return nil, err
}
return singleTorrent
return singleTorrent, nil
}
//StartTorrent creates the storage.db entry and starts A NEW TORRENT and adds to the running torrent array
func StartTorrent(clientTorrent *torrent.Torrent, torrentLocalStorage Storage.TorrentLocal, torrentDbStorage *storm.DB, dataDir string, torrentType string, torrentFileName string, torrentStoragePath string) {
timedOut := timeOutInfo(clientTorrent, 45) //seeing if adding the torrrent times out (giving 45 seconds)
func StartTorrent(clientTorrent *torrent.Torrent, torrentLocalStorage Storage.TorrentLocal, torrentDbStorage *storm.DB, torrentType, torrentFilePathAbs, torrentStoragePath, labelValue string, config FullClientSettings) {
timedOut := timeOutInfo(clientTorrent, 45) //seeing if adding the torrent times out (giving 45 seconds)
if timedOut { //if we fail to add the torrent return
return
}
@@ -122,14 +143,19 @@ func StartTorrent(clientTorrent *torrent.Torrent, torrentLocalStorage Storage.To
}
torrentLocalStorage.Hash = TempHash.String() // we will store the infohash to add it back later on client restart (if needed)
torrentLocalStorage.InfoBytes = clientTorrent.Metainfo().InfoBytes
torrentLocalStorage.Label = labelValue
torrentLocalStorage.DateAdded = time.Now().Format("Jan _2 2006")
torrentLocalStorage.StoragePath = torrentStoragePath
torrentLocalStorage.TempStoragePath = config.TorrentConfig.DataDir
torrentLocalStorage.TorrentName = clientTorrent.Name()
torrentLocalStorage.TorrentStatus = "Running" //by default start all the torrents as downloading.
torrentLocalStorage.TorrentType = torrentType //either "file" or "magnet" maybe more in the future
if torrentType == "file" { //if it is a file read the entire file into the database for us to spit out later
torrentLocalStorage.TorrentFileName = torrentFileName
torrentfile, err := ioutil.ReadFile(torrentFileName)
torrentLocalStorage.TorrentUploadLimit = true //by default all of the torrents will stop uploading after the global rate is set.
torrentLocalStorage.TorrentMoved = false //by default the torrent has no been moved.
torrentLocalStorage.TorrentStatus = "Running" //by default start all the torrents as downloading.
torrentLocalStorage.TorrentType = torrentType //either "file" or "magnet" maybe more in the future
torrentLocalStorage.TorrentSize = clientTorrent.Length() //Length will change as we cancel files so store it in DB
if torrentType == "file" { //if it is a file read the entire file into the database for us to spit out later
torrentfile, err := ioutil.ReadFile(torrentFilePathAbs)
torrentLocalStorage.TorrentFileName = torrentFilePathAbs
if err != nil {
Logger.WithFields(logrus.Fields{"torrentFile": torrentfile, "error": err}).Error("Unable to read the torrent file")
}
@@ -142,13 +168,14 @@ func StartTorrent(clientTorrent *torrent.Torrent, torrentLocalStorage Storage.To
var torrentFilePriority = Storage.TorrentFilePriority{}
torrentFilePriority.TorrentFilePath = singleFile.DisplayPath()
torrentFilePriority.TorrentFilePriority = "Normal"
torrentFilePriority.TorrentFileSize = singleFile.Length()
TorrentFilePriorityArray = append(TorrentFilePriorityArray, torrentFilePriority)
}
torrentLocalStorage.TorrentFilePriority = TorrentFilePriorityArray
Storage.AddTorrentLocalStorage(torrentDbStorage, torrentLocalStorage) //writing all of the data to the database
clientTorrent.DownloadAll() //starting the download
CreateServerPushMessage(ServerPushMessage{MessageType: "serverPushMessage", MessageLevel: "success", Payload: "Torrent added!"}, Conn)
}
//CreateRunningTorrentArray creates the entire torrent list to pass to client
@@ -163,7 +190,11 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
//singleTorrentStorageInfo := Storage.FetchTorrentFromStorage(db, TempHash.String()) //pulling the single torrent info from storage ()
if singleTorrentFromStorage.TorrentType == "file" { //if it is a file pull it from the uploaded torrent folder
singleTorrent = readTorrentFileFromDB(singleTorrentFromStorage, tclient, db)
var err error
singleTorrent, err = readTorrentFileFromDB(singleTorrentFromStorage, tclient, db)
if err != nil {
continue
}
fullClientDB.SourceType = "Torrent File"
} else {
singleTorrentFromStorageMagnet := "magnet:?xt=urn:btih:" + singleTorrentFromStorage.Hash //For magnet links just need to prepend the magnet part to the hash to readd
@@ -172,7 +203,7 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
}
if len(singleTorrentFromStorage.InfoBytes) == 0 { //TODO.. kind of a fringe scenario.. not sure if needed since the db should always have the infobytes
timeOut := timeOutInfo(singleTorrent, 45)
if timeOut == true { // if we did timeout then drop the torrent from the boltdb database
if timeOut == true { // if we did timeout then drop the torrent from the bolt.db database
Storage.DelTorrentLocalStorage(db, singleTorrentFromStorage.Hash) //purging torrent from the local database
continue
}
@@ -183,62 +214,58 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
if err != nil {
Logger.WithFields(logrus.Fields{"torrentFile": singleTorrent.Name(), "error": err}).Error("Unable to add infobytes to the torrent!")
}
//Logger.WithFields(logrus.Fields{"singleTorrent": singleTorrentFromStorage.TorrentName}).Info("Generating infohash")
calculatedTotalSize := CalculateDownloadSize(singleTorrentFromStorage, singleTorrent)
calculatedCompletedSize := CalculateCompletedSize(singleTorrentFromStorage, singleTorrent)
TempHash = singleTorrent.InfoHash()
if (singleTorrent.BytesCompleted() == singleTorrent.Length()) && (singleTorrentFromStorage.TorrentMoved == false) { //if we are done downloading and havent moved torrent yet
MoveAndLeaveSymlink(config, singleTorrent, db) //can take some time to move file so running this in another thread TODO make this a goroutine and skip this block if the routine is still running
if (calculatedCompletedSize == singleTorrentFromStorage.TorrentSize) && (singleTorrentFromStorage.TorrentMoved == false) { //if we are done downloading and haven't moved torrent yet
Logger.WithFields(logrus.Fields{"singleTorrent": singleTorrentFromStorage.TorrentName}).Info("Torrent Completed, moving...")
MoveAndLeaveSymlink(config, singleTorrent.InfoHash().String(), db, false, "") //can take some time to move file so running this in another thread TODO make this a goroutine and skip this block if the routine is still running
}
fullStruct := singleTorrent.Stats()
activePeersString := strconv.Itoa(fullStruct.ActivePeers) //converting to strings
totalPeersString := fmt.Sprintf("%v", fullStruct.TotalPeers)
//fetching all the info from the database
fullClientDB.StoragePath = singleTorrentFromStorage.StoragePath
fullClientDB.StoragePath = singleTorrentFromStorage.StoragePath //grabbed from database
downloadedSizeHumanized := HumanizeBytes(float32(calculatedCompletedSize)) //convert size to GB if needed
totalSizeHumanized := HumanizeBytes(float32(calculatedTotalSize))
downloadedSizeHumanized := HumanizeBytes(float32(singleTorrent.BytesCompleted())) //convert size to GB if needed
totalSizeHumanized := HumanizeBytes(float32(singleTorrent.Length()))
//Logger.WithFields(logrus.Fields{"singleTorrent": singleTorrentFromStorage.TorrentName}).Info("Generated infohash")
//grabbed from torrent client
fullClientDB.DownloadedSize = downloadedSizeHumanized
fullClientDB.Size = totalSizeHumanized
PercentDone := fmt.Sprintf("%.2f", float32(singleTorrent.BytesCompleted())/float32(singleTorrent.Length()))
PercentDone := fmt.Sprintf("%.2f", float32(calculatedCompletedSize)/float32(calculatedTotalSize))
fullClientDB.TorrentHash = TempHash
fullClientDB.PercentDone = PercentDone
fullClientDB.DataBytesRead = fullStruct.ConnStats.DataBytesRead //used for calculations not passed to client calculating up/down speed
fullClientDB.DataBytesWritten = fullStruct.ConnStats.DataBytesWritten //used for calculations not passed to client calculating up/down speed
fullClientDB.DataBytesRead = fullStruct.ConnStats.BytesReadData //used for calculations not passed to client calculating up/down speed
fullClientDB.DataBytesWritten = fullStruct.ConnStats.BytesWrittenData //used for calculations not passed to client calculating up/down speed
fullClientDB.ActivePeers = activePeersString + " / (" + totalPeersString + ")"
fullClientDB.TorrentHashString = TempHash.String()
fullClientDB.StoragePath = singleTorrentFromStorage.StoragePath
fullClientDB.TorrentName = singleTorrentFromStorage.TorrentName
fullClientDB.DateAdded = singleTorrentFromStorage.DateAdded
fullClientDB.BytesCompleted = singleTorrent.BytesCompleted()
fullClientDB.TorrentLabel = singleTorrentFromStorage.Label
fullClientDB.BytesCompleted = calculatedCompletedSize
fullClientDB.NumberofFiles = len(singleTorrent.Files())
//ranging over the previous torrent array to calculate the speed for each torrent
if len(PreviousTorrentArray) > 0 { //if we actually have a previous array
if len(PreviousTorrentArray) > 0 { //if we actually have a previous array //ranging over the previous torrent array to calculate the speed for each torrent
for _, previousElement := range PreviousTorrentArray {
TempHash := singleTorrent.InfoHash()
if previousElement.TorrentHashString == TempHash.String() { //matching previous to new
CalculateTorrentSpeed(singleTorrent, fullClientDB, previousElement)
fullClientDB.TotalUploadedBytes = singleTorrentFromStorage.UploadedBytes + (fullStruct.ConnStats.DataBytesWritten - previousElement.DataBytesWritten)
fullClientDB.TotalUploadedBytes = singleTorrentFromStorage.UploadedBytes + (fullStruct.ConnStats.BytesWrittenData - previousElement.DataBytesWritten)
}
}
}
CalculateTorrentETA(singleTorrent, fullClientDB) //needs to be here since we need the speed calcuated before we can estimate the eta.
CalculateTorrentETA(singleTorrentFromStorage.TorrentSize, calculatedCompletedSize, fullClientDB) //needs to be here since we need the speed calculated before we can estimate the eta.
fullClientDB.TotalUploadedSize = HumanizeBytes(float32(fullClientDB.TotalUploadedBytes))
fullClientDB.UploadRatio = CalculateUploadRatio(singleTorrent, fullClientDB) //calculate the upload ratio
CalculateTorrentStatus(singleTorrent, fullClientDB, config, singleTorrentFromStorage)
CalculateTorrentStatus(singleTorrent, fullClientDB, config, singleTorrentFromStorage, calculatedCompletedSize, calculatedTotalSize)
tickUpdateStruct.UploadRatio = fullClientDB.UploadRatio
tickUpdateStruct.UploadedBytes = fullClientDB.TotalUploadedBytes
tickUpdateStruct.TorrentStatus = fullClientDB.Status
tickUpdateStruct.Hash = fullClientDB.TorrentHashString //needed for index
Storage.UpdateStorageTick(db, tickUpdateStruct)
RunningTorrentArray = append(RunningTorrentArray, *fullClientDB)
@@ -247,8 +274,9 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
}
//CreateFileListArray creates a file list for a single torrent that is selected and sent to the server
func CreateFileListArray(tclient *torrent.Client, selectedHash string) TorrentFileList {
func CreateFileListArray(tclient *torrent.Client, selectedHash string, db *storm.DB, config FullClientSettings) TorrentFileList {
runningTorrents := tclient.Torrents() //don't need running torrent array since we aren't adding or deleting from storage
torrentFileListStorage := Storage.FetchTorrentFromStorage(db, selectedHash)
TorrentFileListSelected := TorrentFileList{}
TorrentFileStruct := TorrentFile{}
for _, singleTorrent := range runningTorrents {
@@ -268,7 +296,12 @@ func CreateFileListArray(tclient *torrent.Client, selectedHash string) TorrentFi
}
}
TorrentFileStruct.FilePercent = fmt.Sprintf("%.2f", float32(downloadedBytes)/float32(singleFile.Length()))
TorrentFileStruct.FilePriority = "Normal" //TODO, figure out how to store this per file in storage and also tie a priority to a file
for i, specificFile := range torrentFileListStorage.TorrentFilePriority { //searching for that specific file in storage
if specificFile.TorrentFilePath == singleFile.DisplayPath() {
TorrentFileStruct.FilePriority = torrentFileListStorage.TorrentFilePriority[i].TorrentFilePriority
}
}
TorrentFileStruct.FileSize = HumanizeBytes(float32(singleFile.Length()))
TorrentFileListSelected.FileList = append(TorrentFileListSelected.FileList, TorrentFileStruct)
}

View File

@@ -2,10 +2,14 @@ package engine
import (
"fmt"
"io"
"os"
"time"
"github.com/anacrolix/torrent"
"github.com/deranjer/goTorrent/storage"
Storage "github.com/deranjer/goTorrent/storage"
"github.com/sirupsen/logrus"
)
func secondsToMinutes(inSeconds int64) string {
@@ -35,19 +39,38 @@ func HumanizeBytes(bytes float32) string {
return pBytes
}
//CopyFile takes a source file string and a destination file string and copies the file
func CopyFile(srcFile string, destFile string) { //TODO move this to our imported copy repo
fileContents, err := os.Open(srcFile)
defer fileContents.Close()
if err != nil {
Logger.WithFields(logrus.Fields{"File": srcFile, "Error": err}).Error("Cannot open source file")
}
outfileContents, err := os.Create(destFile)
defer outfileContents.Close()
if err != nil {
Logger.WithFields(logrus.Fields{"File": destFile, "Error": err}).Error("Cannot open destination file")
}
_, err = io.Copy(outfileContents, fileContents)
if err != nil {
Logger.WithFields(logrus.Fields{"Source File": srcFile, "Destination File": destFile, "Error": err}).Error("Cannot write contents to destination file")
}
}
//CalculateTorrentSpeed is used to calculate the torrent upload and download speed over time c is current clientdb, oc is last client db to calculate speed over time
func CalculateTorrentSpeed(t *torrent.Torrent, c *ClientDB, oc ClientDB) {
now := time.Now()
bytes := t.BytesCompleted()
bytesUpload := t.Stats().DataBytesWritten
bytesUpload := t.Stats().BytesWrittenData
dt := float32(now.Sub(oc.UpdatedAt)) // get the delta time length between now and last updated
db := float32(bytes - oc.BytesCompleted) //getting the delta bytes
rate := db * (float32(time.Second) / dt) // converting into seconds
dbU := float32(bytesUpload - oc.DataBytesWritten)
rateUpload := dbU * (float32(time.Second) / dt)
if rate >= 0 {
rate = rate / 1024 / 1024 //creating integer to calculate ETA
c.DownloadSpeed = fmt.Sprintf("%.2f", rate)
rateMB := rate / 1024 / 1024 //creating MB to calculate ETA
c.DownloadSpeed = fmt.Sprintf("%.2f", rateMB)
c.DownloadSpeed = c.DownloadSpeed + " MB/s"
c.downloadSpeedInt = int64(rate)
}
@@ -60,16 +83,46 @@ func CalculateTorrentSpeed(t *torrent.Torrent, c *ClientDB, oc ClientDB) {
c.UpdatedAt = now
}
//CalculateDownloadSize will calculate the download size once file priorities are sorted out
func CalculateDownloadSize(tFromStorage *Storage.TorrentLocal, activeTorrent *torrent.Torrent) int64 {
var totalLength int64
for _, file := range tFromStorage.TorrentFilePriority {
if file.TorrentFilePriority != "Cancel" {
totalLength = totalLength + file.TorrentFileSize
}
}
return totalLength
}
//CalculateCompletedSize will be used to calculate how much of the actual torrent we have completed minus the canceled files (even if they have been partially downloaded)
func CalculateCompletedSize(tFromStorage *Storage.TorrentLocal, activeTorrent *torrent.Torrent) int64 {
var discardByteLength int64
for _, storageFile := range tFromStorage.TorrentFilePriority {
if storageFile.TorrentFilePriority == "Cancel" { //If the file is canceled don't count it as downloaded
for _, activeFile := range activeTorrent.Files() {
if activeFile.DisplayPath() == storageFile.TorrentFilePath { //match the file from storage to active
for _, piece := range activeFile.State() {
if piece.Partial || piece.Complete {
discardByteLength = discardByteLength + piece.Bytes
}
}
}
}
}
}
downloadedLength := activeTorrent.BytesCompleted() - discardByteLength
return downloadedLength
}
//CalculateTorrentETA is used to estimate the remaining dl time of the torrent based on the speed that the MB are being downloaded
func CalculateTorrentETA(t *torrent.Torrent, c *ClientDB) {
missingBytes := t.Length() - t.BytesCompleted()
missingMB := missingBytes / 1024 / 1024
if missingMB == 0 {
func CalculateTorrentETA(tSize int64, tBytesCompleted int64, c *ClientDB) {
missingBytes := tSize - tBytesCompleted
if missingBytes == 0 {
c.ETA = "Done"
} else if c.downloadSpeedInt == 0 {
c.ETA = "N/A"
} else {
ETASeconds := missingMB / c.downloadSpeedInt
ETASeconds := missingBytes / c.downloadSpeedInt
str := secondsToMinutes(ETASeconds) //converting seconds to minutes + seconds
c.ETA = str
}
@@ -86,22 +139,23 @@ func CalculateUploadRatio(t *torrent.Torrent, c *ClientDB) string {
}
//CalculateTorrentStatus is used to determine what the STATUS column of the frontend will display ll2
func CalculateTorrentStatus(t *torrent.Torrent, c *ClientDB, config FullClientSettings, tFromStorage *storage.TorrentLocal) { //TODO redo all of this to allow for stopped torrents
if (tFromStorage.TorrentStatus == "Stopped") || (float64(c.TotalUploadedBytes)/float64(t.BytesCompleted()) >= config.SeedRatioStop) {
func CalculateTorrentStatus(t *torrent.Torrent, c *ClientDB, config FullClientSettings, tFromStorage *storage.TorrentLocal, bytesCompleted int64, totalSize int64) {
if (tFromStorage.TorrentStatus == "Stopped") || (float64(c.TotalUploadedBytes)/float64(bytesCompleted) >= config.SeedRatioStop && tFromStorage.TorrentUploadLimit == true) { //If storage shows torrent stopped or if it is over the seeding ratio AND is under the global limit
c.Status = "Stopped"
c.MaxConnections = 0
t.SetMaxEstablishedConns(0)
} else { //Only has 2 states in storage, stopped or running, so we know it should be running, and the websocket request handled updating the database with connections and status
bytesMissing := totalSize - bytesCompleted
c.MaxConnections = 80
t.SetMaxEstablishedConns(80) //TODO this should not be needed but apparently is needed
t.DownloadAll() //ensure that we are setting the torrent to download
if t.Seeding() && t.Stats().ActivePeers > 0 && t.BytesMissing() == 0 {
if t.Seeding() && t.Stats().ActivePeers > 0 && bytesMissing == 0 {
c.Status = "Seeding"
} else if t.Stats().ActivePeers > 0 && t.BytesMissing() > 0 {
} else if t.Stats().ActivePeers > 0 && bytesMissing > 0 {
c.Status = "Downloading"
} else if t.Stats().ActivePeers == 0 && t.BytesMissing() == 0 {
} else if t.Stats().ActivePeers == 0 && bytesMissing == 0 {
c.Status = "Completed"
} else if t.Stats().ActivePeers == 0 && t.BytesMissing() > 0 {
} else if t.Stats().ActivePeers == 0 && bytesMissing > 0 {
c.Status = "Awaiting Peers"
} else {
c.Status = "Unknown"

View File

@@ -1,164 +0,0 @@
package engine
import (
"fmt"
"path/filepath"
"github.com/anacrolix/dht"
"github.com/anacrolix/torrent"
"github.com/sirupsen/logrus"
"github.com/spf13/viper"
"golang.org/x/time/rate"
)
//FullClientSettings contains all of the settings for our entire application
type FullClientSettings struct {
LoggingLevel logrus.Level
LoggingOutput string
HTTPAddr string
Version int
TorrentConfig torrent.Config
TFileUploadFolder string
SeedRatioStop float64
PushBulletToken string
DefaultMoveFolder string
}
//default is called if there is a parsing error
func defaultConfig() FullClientSettings {
var Config FullClientSettings
Config.Version = 1.0
Config.LoggingLevel = 3 //Warn level
Config.TorrentConfig.DataDir = "downloads" //the absolute or relative path of the default download directory for torrents
Config.TFileUploadFolder = "uploadedTorrents"
Config.TorrentConfig.Seed = true
Config.HTTPAddr = ":8000"
Config.SeedRatioStop = 1.50
Config.TorrentConfig.DHTConfig = dht.ServerConfig{
StartingNodes: dht.GlobalBootstrapAddrs,
}
return Config
}
func dhtServerSettings(dhtConfig dht.ServerConfig) dht.ServerConfig {
viper.UnmarshalKey("DHTConfig", &dhtConfig)
Logger.WithFields(logrus.Fields{"dhtConfig": dhtConfig}).Info("Displaying DHT Config")
return dhtConfig
}
//FullClientSettingsNew creates a new set of setting from config.toml
func FullClientSettingsNew() FullClientSettings {
viper.SetConfigName("config")
viper.AddConfigPath("./")
err := viper.ReadInConfig()
if err != nil {
fmt.Println("Error reading in config, using defaults", err)
FullClientSettings := defaultConfig()
return FullClientSettings
}
var httpAddr string
httpAddrIP := viper.GetString("serverConfig.ServerAddr")
httpAddrPort := viper.GetString("serverConfig.ServerPort")
seedRatioStop := viper.GetFloat64("serverConfig.SeedRatioStop")
httpAddr = httpAddrIP + httpAddrPort
pushBulletToken := viper.GetString("notifications.PushBulletToken")
defaultMoveFolder := filepath.ToSlash(viper.GetString("serverConfig.DefaultMoveFolder")) //Converting the string literal into a filepath
defaultMoveFolderAbs, err := filepath.Abs(defaultMoveFolder)
if err != nil {
fmt.Println("Failed creating absolute path for defaultMoveFolder", err)
}
dataDir := filepath.ToSlash(viper.GetString("torrentClientConfig.DownloadDir")) //Converting the string literal into a filepath
dataDirAbs, err := filepath.Abs(dataDir) //Converting to an absolute file path
if err != nil {
fmt.Println("Failed creating absolute path for dataDir", err)
}
listenAddr := viper.GetString("torrentClientConfig.ListenAddr")
disablePex := viper.GetBool("torrentClientConfig.DisablePEX")
noDHT := viper.GetBool("torrentClientConfig.NoDHT")
noUpload := viper.GetBool("torrentClientConfig.NoUpload")
seed := viper.GetBool("torrentClientConfig.Seed")
peerID := viper.GetString("torrentClientConfig.PeerID")
disableUTP := viper.GetBool("torrentClientConfig.DisableUTP")
disableTCP := viper.GetBool("torrentClientConfig.DisableTCP")
disableIPv6 := viper.GetBool("torrentClientConfig.DisableIPv6")
debug := viper.GetBool("torrentClientConfig.Debug")
logLevelString := viper.GetString("serverConfig.LogLevel")
logOutput := viper.GetString("serverConfig.LogOutput")
var logLevel logrus.Level
switch logLevelString { //Options = Debug 5, Info 4, Warn 3, Error 2, Fatal 1, Panic 0
case "Panic":
logLevel = 0
case "Fatal":
logLevel = 1
case "Error":
logLevel = 2
case "Warn":
logLevel = 3
case "Info":
logLevel = 4
case "Debug":
logLevel = 5
default:
logLevel = 3
}
dhtServerConfig := dht.ServerConfig{
StartingNodes: dht.GlobalBootstrapAddrs,
}
if viper.IsSet("DHTConfig") {
fmt.Println("Reading in custom DHT config")
dhtServerConfig = dhtServerSettings(dhtServerConfig)
}
uploadRateLimiter := new(rate.Limiter)
viper.UnmarshalKey("UploadRateLimiter", &uploadRateLimiter)
downloadRateLimiter := new(rate.Limiter)
viper.UnmarshalKey("DownloadRateLimiter", &downloadRateLimiter)
encryptionPolicy := torrent.EncryptionPolicy{
DisableEncryption: viper.GetBool("EncryptionPolicy.DisableEncryption"),
ForceEncryption: viper.GetBool("EncryptionPolicy.ForceEncryption"),
PreferNoEncryption: viper.GetBool("EncryptionPolicy.PreferNoEncryption"),
}
tConfig := torrent.Config{
DataDir: dataDirAbs,
ListenAddr: listenAddr,
DisablePEX: disablePex,
NoDHT: noDHT,
DHTConfig: dhtServerConfig,
NoUpload: noUpload,
Seed: seed,
//UploadRateLimiter: uploadRateLimiter,
//DownloadRateLimiter: downloadRateLimiter,
PeerID: peerID,
DisableUTP: disableUTP,
DisableTCP: disableTCP,
DisableIPv6: disableIPv6,
Debug: debug,
EncryptionPolicy: encryptionPolicy,
}
Config := FullClientSettings{
LoggingLevel: logLevel,
LoggingOutput: logOutput,
SeedRatioStop: seedRatioStop,
HTTPAddr: httpAddr,
TorrentConfig: tConfig,
TFileUploadFolder: "uploadedTorrents",
PushBulletToken: pushBulletToken,
DefaultMoveFolder: defaultMoveFolderAbs,
}
return Config
}

View File

@@ -52,7 +52,7 @@ var RSSList = [];
var RSSTorrentList = [];
var torrentListRequest = {
messageType: "torrentListRequest"
MessageType: "torrentListRequest"
//websocket is started in kickwebsocket.js and is picked up here so "ws" is already defined 22
};ws.onmessage = function (evt) {
@@ -128,7 +128,7 @@ var torrentListRequest = {
console.log("Logger data requested");
break;
case "rssListRequest":
case "rssList":
console.log("RSSListRequest recieved", evt.data);
RSSList = [];
for (var i = 0; i < serverMessage.TotalRSSFeeds; i++) {
@@ -191,7 +191,7 @@ var BackendSocket = function (_React$Component) {
case 1:
var peerListHashes = {
MessageType: "torrentPeerListRequest",
Payload: selectionHashes
Payload: {"PeerListHash": selectionHashes}
};
console.log("Peers tab information requested", peerListHashes);
ws.send(JSON.stringify(peerListHashes));
@@ -199,7 +199,7 @@ var BackendSocket = function (_React$Component) {
case 2:
var fileListHashes = {
MessageType: "torrentFileListRequest",
Payload: selectionHashes
Payload: {"FileListHash": selectionHashes[0]}
};
console.log("Files tab information requested", fileListHashes);
ws.send(JSON.stringify(fileListHashes));
@@ -256,7 +256,7 @@ var BackendSocket = function (_React$Component) {
case 1:
var peerListHashes = {
MessageType: "torrentPeerListRequest",
Payload: this.props.selectionHashes
Payload: {"PeerListHash": this.props.selectionHashes}
};
ws.send(JSON.stringify(peerListHashes));
this.props.newPeerList(peerList);
@@ -264,7 +264,7 @@ var BackendSocket = function (_React$Component) {
case 2:
var fileListHashes = {
MessageType: "torrentFileListRequest",
Payload: this.props.selectionHashes
Payload: {"FileListHash": this.props.selectionHashes[0]}
};
ws.send(JSON.stringify(fileListHashes));
this.props.newFileList(fileList);

View File

@@ -116,9 +116,9 @@ var addTorrentFilePopup = function (_React$Component) {
console.log("Base64", base64data);
var torrentFileMessage = {
messageType: "torrentFileSubmit",
messageDetail: _this.state.torrentFileName,
messageDetailTwo: _this.state.storageValue,
MessageType: "torrentFileSubmit",
MessageDetail: this.state.torrentFileName,
MessageDetailTwo: this.state.storageValue,
Payload: [base64data]
};
console.log("Sending magnet link: ", torrentFileMessage);

View File

@@ -22,8 +22,7 @@
"fetchSpec": "1.1.0"
},
"_requiredBy": [
"/",
"/react-dropzone"
"/"
],
"_resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-1.1.0.tgz",
"_spec": "1.1.0",

View File

@@ -1,55 +1,23 @@
{
"_args": [
[
"anymatch@1.3.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "anymatch",
"version": "1.3.2",
"description": "Matches strings against configurable strings, globs, regular expressions, and/or functions",
"files": [
"index.js"
],
"_development": true,
"_from": "anymatch@1.3.2",
"_id": "anymatch@1.3.2",
"_inBundle": false,
"_integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
"_location": "/babel-cli/anymatch",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "anymatch@1.3.2",
"name": "anymatch",
"escapedName": "anymatch",
"rawSpec": "1.3.2",
"saveSpec": null,
"fetchSpec": "1.3.2"
},
"_requiredBy": [
"/babel-cli/chokidar"
],
"_resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
"_spec": "1.3.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Elan Shanker",
"url": "http://github.com/es128"
},
"license": "ISC",
"homepage": "https://github.com/es128/anymatch",
"repository": {
"type": "git",
"url": "https://github.com/es128/anymatch"
},
"bugs": {
"url": "https://github.com/es128/anymatch/issues"
},
"dependencies": {
"micromatch": "^2.1.5",
"normalize-path": "^2.0.0"
},
"description": "Matches strings against configurable strings, globs, regular expressions, and/or functions",
"devDependencies": {
"coveralls": "^2.11.2",
"istanbul": "^0.3.13",
"mocha": "^2.2.4"
},
"files": [
"index.js"
],
"homepage": "https://github.com/es128/anymatch",
"keywords": [
"match",
"any",
@@ -64,14 +32,16 @@
"expression",
"function"
],
"license": "ISC",
"name": "anymatch",
"repository": {
"type": "git",
"url": "git+https://github.com/es128/anymatch.git"
},
"scripts": {
"test": "istanbul cover _mocha && cat ./coverage/lcov.info | coveralls"
},
"version": "1.3.2"
"dependencies": {
"micromatch": "^2.1.5",
"normalize-path": "^2.0.0"
},
"devDependencies": {
"coveralls": "^2.11.2",
"istanbul": "^0.3.13",
"mocha": "^2.2.4"
}
}

View File

@@ -1,51 +1,15 @@
{
"_args": [
[
"babel-code-frame@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-code-frame@6.26.0",
"_id": "babel-code-frame@6.26.0",
"_inBundle": false,
"_integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
"_location": "/babel-cli/babel-code-frame",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-code-frame@6.26.0",
"name": "babel-code-frame",
"escapedName": "babel-code-frame",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli/babel-core",
"/babel-cli/babel-traverse"
],
"_resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"name": "babel-code-frame",
"version": "6.26.0",
"description": "Generate errors that contain a code frame that point to source locations.",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-code-frame",
"main": "lib/index.js",
"dependencies": {
"chalk": "^1.1.3",
"esutils": "^2.0.2",
"js-tokens": "^3.0.2"
},
"description": "Generate errors that contain a code frame that point to source locations.",
"homepage": "https://babeljs.io/",
"license": "MIT",
"main": "lib/index.js",
"name": "babel-code-frame",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-code-frame"
},
"version": "6.26.0"
}
}

View File

@@ -1,37 +1,29 @@
{
"_args": [
[
"babel-core@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "babel-core",
"version": "6.26.0",
"description": "Babel compiler core.",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-core",
"keywords": [
"6to5",
"babel",
"classes",
"const",
"es6",
"harmony",
"let",
"modules",
"transpile",
"transpiler",
"var",
"babel-core",
"compiler"
],
"_development": true,
"_from": "babel-core@6.26.0",
"_id": "babel-core@6.26.0",
"_inBundle": false,
"_integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=",
"_location": "/babel-cli/babel-core",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-core@6.26.0",
"name": "babel-core",
"escapedName": "babel-core",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli",
"/babel-cli/babel-register"
],
"_resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
"scripts": {
"bench": "make bench",
"test": "make test"
},
"dependencies": {
"babel-code-frame": "^6.26.0",
@@ -54,37 +46,9 @@
"slash": "^1.0.0",
"source-map": "^0.5.6"
},
"description": "Babel compiler core.",
"devDependencies": {
"babel-helper-fixtures": "^6.26.0",
"babel-helper-transform-fixture-test-runner": "^6.26.0",
"babel-polyfill": "^6.26.0"
},
"homepage": "https://babeljs.io/",
"keywords": [
"6to5",
"babel",
"classes",
"const",
"es6",
"harmony",
"let",
"modules",
"transpile",
"transpiler",
"var",
"babel-core",
"compiler"
],
"license": "MIT",
"name": "babel-core",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-core"
},
"scripts": {
"bench": "make bench",
"test": "make test"
},
"version": "6.26.0"
}
}

View File

@@ -1,37 +1,15 @@
{
"_args": [
[
"babel-generator@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "babel-generator",
"version": "6.26.0",
"description": "Turns an AST into code.",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-generator",
"main": "lib/index.js",
"files": [
"lib"
],
"_development": true,
"_from": "babel-generator@6.26.0",
"_id": "babel-generator@6.26.0",
"_inBundle": false,
"_integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=",
"_location": "/babel-cli/babel-generator",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-generator@6.26.0",
"name": "babel-generator",
"escapedName": "babel-generator",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli/babel-core"
],
"_resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"dependencies": {
"babel-messages": "^6.23.0",
"babel-runtime": "^6.26.0",
@@ -42,21 +20,8 @@
"source-map": "^0.5.6",
"trim-right": "^1.0.1"
},
"description": "Turns an AST into code.",
"devDependencies": {
"babel-helper-fixtures": "^6.26.0",
"babylon": "^6.18.0"
},
"files": [
"lib"
],
"homepage": "https://babeljs.io/",
"license": "MIT",
"main": "lib/index.js",
"name": "babel-generator",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-generator"
},
"version": "6.26.0"
}
}

View File

@@ -1,49 +1,14 @@
{
"_args": [
[
"babel-helpers@6.24.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-helpers@6.24.1",
"_id": "babel-helpers@6.24.1",
"_inBundle": false,
"_integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=",
"_location": "/babel-cli/babel-helpers",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-helpers@6.24.1",
"name": "babel-helpers",
"escapedName": "babel-helpers",
"rawSpec": "6.24.1",
"saveSpec": null,
"fetchSpec": "6.24.1"
},
"_requiredBy": [
"/babel-cli/babel-core"
],
"_resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
"_spec": "6.24.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"name": "babel-helpers",
"version": "6.24.1",
"description": "Collection of helper functions used by Babel transforms.",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-helpers",
"main": "lib/index.js",
"dependencies": {
"babel-runtime": "^6.22.0",
"babel-template": "^6.24.1"
},
"description": "Collection of helper functions used by Babel transforms.",
"homepage": "https://babeljs.io/",
"license": "MIT",
"main": "lib/index.js",
"name": "babel-helpers",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-helpers"
},
"version": "6.24.1"
}
}

View File

@@ -1,50 +1,13 @@
{
"_args": [
[
"babel-messages@6.23.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-messages@6.23.0",
"_id": "babel-messages@6.23.0",
"_inBundle": false,
"_integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
"_location": "/babel-cli/babel-messages",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-messages@6.23.0",
"name": "babel-messages",
"escapedName": "babel-messages",
"rawSpec": "6.23.0",
"saveSpec": null,
"fetchSpec": "6.23.0"
},
"_requiredBy": [
"/babel-cli/babel-core",
"/babel-cli/babel-generator",
"/babel-cli/babel-traverse"
],
"_resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
"_spec": "6.23.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"dependencies": {
"babel-runtime": "^6.22.0"
},
"name": "babel-messages",
"version": "6.23.0",
"description": "Collection of debug messages used by Babel.",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-messages",
"main": "lib/index.js",
"name": "babel-messages",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-messages"
},
"version": "6.23.0"
"dependencies": {
"babel-runtime": "^6.22.0"
}
}

View File

@@ -1,50 +1,15 @@
{
"_args": [
[
"babel-polyfill@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-polyfill@6.26.0",
"_id": "babel-polyfill@6.26.0",
"_inBundle": false,
"_integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=",
"_location": "/babel-cli/babel-polyfill",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-polyfill@6.26.0",
"name": "babel-polyfill",
"escapedName": "babel-polyfill",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli"
],
"_resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"name": "babel-polyfill",
"version": "6.26.0",
"description": "Provides polyfills necessary for a full ES2015+ environment",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-polyfill",
"main": "lib/index.js",
"dependencies": {
"babel-runtime": "^6.26.0",
"core-js": "^2.5.0",
"regenerator-runtime": "^0.10.5"
},
"description": "Provides polyfills necessary for a full ES2015+ environment",
"homepage": "https://babeljs.io/",
"license": "MIT",
"main": "lib/index.js",
"name": "babel-polyfill",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-polyfill"
},
"version": "6.26.0"
}
}

View File

@@ -1,38 +1,11 @@
{
"_args": [
[
"babel-register@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-register@6.26.0",
"_id": "babel-register@6.26.0",
"_inBundle": false,
"_integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=",
"_location": "/babel-cli/babel-register",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-register@6.26.0",
"name": "babel-register",
"escapedName": "babel-register",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli",
"/babel-cli/babel-core"
],
"_resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"name": "babel-register",
"version": "6.26.0",
"description": "babel require hook",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-register",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"main": "lib/node.js",
"browser": "lib/browser.js",
"dependencies": {
"babel-core": "^6.26.0",
@@ -43,16 +16,7 @@
"mkdirp": "^0.5.1",
"source-map-support": "^0.4.15"
},
"description": "babel require hook",
"devDependencies": {
"decache": "^4.1.0"
},
"license": "MIT",
"main": "lib/node.js",
"name": "babel-register",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-register"
},
"version": "6.26.0"
}
}

View File

@@ -1,60 +1,16 @@
{
"_args": [
[
"babel-runtime@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-runtime@6.26.0",
"_id": "babel-runtime@6.26.0",
"_inBundle": false,
"_integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
"_location": "/babel-cli/babel-runtime",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-runtime@6.26.0",
"name": "babel-runtime",
"escapedName": "babel-runtime",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli",
"/babel-cli/babel-core",
"/babel-cli/babel-generator",
"/babel-cli/babel-helpers",
"/babel-cli/babel-messages",
"/babel-cli/babel-polyfill",
"/babel-cli/babel-register",
"/babel-cli/babel-template",
"/babel-cli/babel-traverse",
"/babel-cli/babel-types"
],
"_resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"name": "babel-runtime",
"version": "6.26.0",
"description": "babel selfContained runtime",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-runtime",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"dependencies": {
"core-js": "^2.4.0",
"regenerator-runtime": "^0.11.0"
},
"description": "babel selfContained runtime",
"devDependencies": {
"babel-helpers": "^6.22.0",
"babel-plugin-transform-runtime": "^6.23.0"
},
"license": "MIT",
"name": "babel-runtime",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-runtime"
},
"version": "6.26.0"
}
}

View File

@@ -1,53 +1,17 @@
{
"_args": [
[
"babel-template@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-template@6.26.0",
"_id": "babel-template@6.26.0",
"_inBundle": false,
"_integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=",
"_location": "/babel-cli/babel-template",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-template@6.26.0",
"name": "babel-template",
"escapedName": "babel-template",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli/babel-core",
"/babel-cli/babel-helpers"
],
"_resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"name": "babel-template",
"version": "6.26.0",
"description": "Generate an AST from a string template.",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-template",
"main": "lib/index.js",
"dependencies": {
"babel-runtime": "^6.26.0",
"babel-traverse": "^6.26.0",
"babel-types": "^6.26.0",
"babylon": "^6.18.0",
"lodash": "^4.17.4"
},
"description": "Generate an AST from a string template.",
"homepage": "https://babeljs.io/",
"license": "MIT",
"main": "lib/index.js",
"name": "babel-template",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-template"
},
"version": "6.26.0"
}
}

View File

@@ -1,38 +1,12 @@
{
"_args": [
[
"babel-traverse@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-traverse@6.26.0",
"_id": "babel-traverse@6.26.0",
"_inBundle": false,
"_integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
"_location": "/babel-cli/babel-traverse",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-traverse@6.26.0",
"name": "babel-traverse",
"escapedName": "babel-traverse",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli/babel-core",
"/babel-cli/babel-template"
],
"_resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"name": "babel-traverse",
"version": "6.26.0",
"description": "The Babel Traverse module maintains the overall tree state, and is responsible for replacing, removing, and adding nodes",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-traverse",
"main": "lib/index.js",
"dependencies": {
"babel-code-frame": "^6.26.0",
"babel-messages": "^6.23.0",
@@ -44,17 +18,7 @@
"invariant": "^2.2.2",
"lodash": "^4.17.4"
},
"description": "The Babel Traverse module maintains the overall tree state, and is responsible for replacing, removing, and adding nodes",
"devDependencies": {
"babel-generator": "^6.26.0"
},
"homepage": "https://babeljs.io/",
"license": "MIT",
"main": "lib/index.js",
"name": "babel-traverse",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-traverse"
},
"version": "6.26.0"
}
}

View File

@@ -1,58 +1,20 @@
{
"_args": [
[
"babel-types@6.26.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "babel-types@6.26.0",
"_id": "babel-types@6.26.0",
"_inBundle": false,
"_integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
"_location": "/babel-cli/babel-types",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "babel-types@6.26.0",
"name": "babel-types",
"escapedName": "babel-types",
"rawSpec": "6.26.0",
"saveSpec": null,
"fetchSpec": "6.26.0"
},
"_requiredBy": [
"/babel-cli/babel-core",
"/babel-cli/babel-generator",
"/babel-cli/babel-template",
"/babel-cli/babel-traverse"
],
"_resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
"_spec": "6.26.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sebastian McKenzie",
"email": "sebmck@gmail.com"
},
"name": "babel-types",
"version": "6.26.0",
"description": "Babel Types is a Lodash-esque utility library for AST nodes",
"author": "Sebastian McKenzie <sebmck@gmail.com>",
"homepage": "https://babeljs.io/",
"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-types",
"main": "lib/index.js",
"dependencies": {
"babel-runtime": "^6.26.0",
"esutils": "^2.0.2",
"lodash": "^4.17.4",
"to-fast-properties": "^1.0.3"
},
"description": "Babel Types is a Lodash-esque utility library for AST nodes",
"devDependencies": {
"babel-generator": "^6.26.0",
"babylon": "^6.18.0"
},
"homepage": "https://babeljs.io/",
"license": "MIT",
"main": "lib/index.js",
"name": "babel-types",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-types"
},
"version": "6.26.0"
}
}

View File

@@ -1,47 +1,29 @@
{
"_args": [
[
"braces@1.8.5",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "braces@1.8.5",
"_id": "braces@1.8.5",
"_inBundle": false,
"_integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
"_location": "/babel-cli/braces",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "braces@1.8.5",
"name": "braces",
"escapedName": "braces",
"rawSpec": "1.8.5",
"saveSpec": null,
"fetchSpec": "1.8.5"
},
"_requiredBy": [
"/babel-cli/micromatch"
],
"_resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
"_spec": "1.8.5",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"name": "braces",
"description": "Fastest brace expansion for node.js, with the most complete support for the Bash 4.3 braces specification.",
"version": "1.8.5",
"homepage": "https://github.com/jonschlinkert/braces",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"repository": "jonschlinkert/braces",
"bugs": {
"url": "https://github.com/jonschlinkert/braces/issues"
},
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha"
},
"dependencies": {
"expand-range": "^1.8.1",
"preserve": "^0.2.0",
"repeat-element": "^1.1.2"
},
"description": "Fastest brace expansion for node.js, with the most complete support for the Bash 4.3 braces specification.",
"devDependencies": {
"benchmarked": "^0.1.5",
"brace-expansion": "^1.1.3",
@@ -52,13 +34,6 @@
"mocha": "^2.4.5",
"should": "^8.3.1"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/braces",
"keywords": [
"alpha",
"alphabetical",
@@ -82,16 +57,6 @@
"ranges",
"sh"
],
"license": "MIT",
"main": "index.js",
"name": "braces",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/braces.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"plugins": [
"gulp-format-md"
@@ -114,6 +79,5 @@
"fill-range"
]
}
},
"version": "1.8.5"
}
}

View File

@@ -1,61 +1,26 @@
{
"_args": [
[
"chalk@1.1.3",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "chalk@1.1.3",
"_id": "chalk@1.1.3",
"_inBundle": false,
"_integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"_location": "/babel-cli/chalk",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "chalk@1.1.3",
"name": "chalk",
"escapedName": "chalk",
"rawSpec": "1.1.3",
"saveSpec": null,
"fetchSpec": "1.1.3"
},
"_requiredBy": [
"/babel-cli/babel-code-frame"
],
"_resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"_spec": "1.1.3",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"bugs": {
"url": "https://github.com/chalk/chalk/issues"
},
"dependencies": {
"ansi-styles": "^2.2.1",
"escape-string-regexp": "^1.0.2",
"has-ansi": "^2.0.0",
"strip-ansi": "^3.0.0",
"supports-color": "^2.0.0"
},
"name": "chalk",
"version": "1.1.3",
"description": "Terminal string styling done right. Much color.",
"devDependencies": {
"coveralls": "^2.11.2",
"matcha": "^0.6.0",
"mocha": "*",
"nyc": "^3.0.0",
"require-uncached": "^1.0.2",
"resolve-from": "^1.0.0",
"semver": "^4.3.3",
"xo": "*"
},
"license": "MIT",
"repository": "chalk/chalk",
"maintainers": [
"Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)",
"Joshua Appelman <jappelman@xebia.com> (jbnicolai.com)",
"JD Ballard <i.am.qix@gmail.com> (github.com/qix-)"
],
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "xo && mocha",
"bench": "matcha benchmark.js",
"coverage": "nyc npm test && nyc report",
"coveralls": "nyc npm test && nyc report --reporter=text-lcov | coveralls"
},
"files": [
"index.js"
],
"homepage": "https://github.com/chalk/chalk#readme",
"keywords": [
"color",
"colour",
@@ -79,36 +44,23 @@
"command-line",
"text"
],
"license": "MIT",
"maintainers": [
{
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
{
"name": "Joshua Appelman",
"email": "jappelman@xebia.com",
"url": "jbnicolai.com"
},
{
"name": "JD Ballard",
"email": "i.am.qix@gmail.com",
"url": "github.com/qix-"
}
],
"name": "chalk",
"repository": {
"type": "git",
"url": "git+https://github.com/chalk/chalk.git"
"dependencies": {
"ansi-styles": "^2.2.1",
"escape-string-regexp": "^1.0.2",
"has-ansi": "^2.0.0",
"strip-ansi": "^3.0.0",
"supports-color": "^2.0.0"
},
"scripts": {
"bench": "matcha benchmark.js",
"coverage": "nyc npm test && nyc report",
"coveralls": "nyc npm test && nyc report --reporter=text-lcov | coveralls",
"test": "xo && mocha"
"devDependencies": {
"coveralls": "^2.11.2",
"matcha": "^0.6.0",
"mocha": "*",
"nyc": "^3.0.0",
"require-uncached": "^1.0.2",
"resolve-from": "^1.0.0",
"semver": "^4.3.3",
"xo": "*"
},
"version": "1.1.3",
"xo": {
"envs": [
"node",

View File

@@ -1,53 +1,34 @@
{
"_args": [
[
"chokidar@1.7.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "chokidar",
"description": "A neat wrapper around node.js fs.watch / fs.watchFile / fsevents.",
"version": "1.7.0",
"keywords": [
"fs",
"watch",
"watchFile",
"watcher",
"watching",
"file",
"fsevents"
],
"_development": true,
"_from": "chokidar@1.7.0",
"_id": "chokidar@1.7.0",
"_inBundle": false,
"_integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
"_location": "/babel-cli/chokidar",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "chokidar@1.7.0",
"name": "chokidar",
"escapedName": "chokidar",
"rawSpec": "1.7.0",
"saveSpec": null,
"fetchSpec": "1.7.0"
},
"_requiredBy": [
"/babel-cli"
],
"_resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
"_spec": "1.7.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Paul Miller",
"url": "http://paulmillr.com"
"homepage": "https://github.com/paulmillr/chokidar",
"author": "Paul Miller (http://paulmillr.com), Elan Shanker",
"repository": {
"type": "git",
"url": "https://github.com/paulmillr/chokidar.git"
},
"bugs": {
"url": "http://github.com/paulmillr/chokidar/issues"
},
"dependencies": {
"anymatch": "^1.3.0",
"async-each": "^1.0.0",
"fsevents": "^1.0.0",
"glob-parent": "^2.0.0",
"inherits": "^2.0.1",
"is-binary-path": "^1.0.0",
"is-glob": "^2.0.0",
"path-is-absolute": "^1.0.0",
"readdirp": "^2.0.0"
"license": "MIT",
"scripts": {
"test": "istanbul test node_modules/mocha/bin/_mocha",
"ci-test": "istanbul cover _mocha && cat ./coverage/lcov.info | coveralls"
},
"description": "A neat wrapper around node.js fs.watch / fs.watchFile / fsevents.",
"files": [
"index.js",
"lib/"
],
"devDependencies": {
"chai": "^3.2.0",
"coveralls": "^2.11.2",
@@ -58,32 +39,17 @@
"sinon": "^1.10.3",
"sinon-chai": "^2.6.0"
},
"files": [
"index.js",
"lib/"
],
"homepage": "https://github.com/paulmillr/chokidar",
"keywords": [
"fs",
"watch",
"watchFile",
"watcher",
"watching",
"file",
"fsevents"
],
"license": "MIT",
"name": "chokidar",
"optionalDependencies": {
"fsevents": "^1.0.0"
},
"repository": {
"type": "git",
"url": "git+https://github.com/paulmillr/chokidar.git"
},
"scripts": {
"ci-test": "istanbul cover _mocha && cat ./coverage/lcov.info | coveralls",
"test": "istanbul test node_modules/mocha/bin/_mocha"
},
"version": "1.7.0"
"dependencies": {
"anymatch": "^1.3.0",
"async-each": "^1.0.0",
"glob-parent": "^2.0.0",
"inherits": "^2.0.1",
"is-binary-path": "^1.0.0",
"is-glob": "^2.0.0",
"path-is-absolute": "^1.0.0",
"readdirp": "^2.0.0"
}
}

View File

@@ -1,63 +1,25 @@
{
"_args": [
[
"debug@2.6.9",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "debug",
"version": "2.6.9",
"repository": {
"type": "git",
"url": "git://github.com/visionmedia/debug.git"
},
"description": "small debugging utility",
"keywords": [
"debug",
"log",
"debugger"
],
"_development": true,
"_from": "debug@2.6.9",
"_id": "debug@2.6.9",
"_inBundle": false,
"_integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"_location": "/babel-cli/debug",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "debug@2.6.9",
"name": "debug",
"escapedName": "debug",
"rawSpec": "2.6.9",
"saveSpec": null,
"fetchSpec": "2.6.9"
},
"_requiredBy": [
"/babel-cli/babel-core",
"/babel-cli/babel-traverse"
],
"_resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"_spec": "2.6.9",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "TJ Holowaychuk",
"email": "tj@vision-media.ca"
},
"browser": "./src/browser.js",
"bugs": {
"url": "https://github.com/visionmedia/debug/issues"
},
"component": {
"scripts": {
"debug/index.js": "browser.js",
"debug/debug.js": "debug.js"
}
},
"author": "TJ Holowaychuk <tj@vision-media.ca>",
"contributors": [
{
"name": "Nathan Rajlich",
"email": "nathan@tootallnate.net",
"url": "http://n8.io"
},
{
"name": "Andrew Rhyne",
"email": "rhyneandrew@gmail.com"
}
"Nathan Rajlich <nathan@tootallnate.net> (http://n8.io)",
"Andrew Rhyne <rhyneandrew@gmail.com>"
],
"license": "MIT",
"dependencies": {
"ms": "2.0.0"
},
"description": "small debugging utility",
"devDependencies": {
"browserify": "9.0.3",
"chai": "^3.5.0",
@@ -76,18 +38,12 @@
"sinon": "^1.17.6",
"sinon-chai": "^2.8.0"
},
"homepage": "https://github.com/visionmedia/debug#readme",
"keywords": [
"debug",
"log",
"debugger"
],
"license": "MIT",
"main": "./src/index.js",
"name": "debug",
"repository": {
"type": "git",
"url": "git://github.com/visionmedia/debug.git"
},
"version": "2.6.9"
"browser": "./src/browser.js",
"component": {
"scripts": {
"debug/index.js": "browser.js",
"debug/debug.js": "debug.js"
}
}
}

View File

@@ -1,56 +1,23 @@
{
"_args": [
[
"detect-indent@4.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "detect-indent@4.0.0",
"_id": "detect-indent@4.0.0",
"_inBundle": false,
"_integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=",
"_location": "/babel-cli/detect-indent",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "detect-indent@4.0.0",
"name": "detect-indent",
"escapedName": "detect-indent",
"rawSpec": "4.0.0",
"saveSpec": null,
"fetchSpec": "4.0.0"
},
"_requiredBy": [
"/babel-cli/babel-generator"
],
"_resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
"_spec": "4.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "detect-indent",
"version": "4.0.0",
"description": "Detect the indentation of code",
"license": "MIT",
"repository": "sindresorhus/detect-indent",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/detect-indent/issues"
},
"dependencies": {
"repeating": "^2.0.0"
},
"description": "Detect the indentation of code",
"devDependencies": {
"ava": "*",
"xo": "*"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/detect-indent#readme",
"keywords": [
"indent",
"indentation",
@@ -64,16 +31,13 @@
"space",
"tab"
],
"license": "MIT",
"name": "detect-indent",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/detect-indent.git"
"dependencies": {
"repeating": "^2.0.0"
},
"scripts": {
"test": "xo && ava"
"devDependencies": {
"ava": "*",
"xo": "*"
},
"version": "4.0.0",
"xo": {
"ignores": [
"fixture/**"

View File

@@ -1,45 +1,27 @@
{
"_args": [
[
"expand-range@1.8.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "expand-range@1.8.2",
"_id": "expand-range@1.8.2",
"_inBundle": false,
"_integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
"_location": "/babel-cli/expand-range",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "expand-range@1.8.2",
"name": "expand-range",
"escapedName": "expand-range",
"rawSpec": "1.8.2",
"saveSpec": null,
"fetchSpec": "1.8.2"
},
"_requiredBy": [
"/babel-cli/braces"
],
"_resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
"_spec": "1.8.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"name": "expand-range",
"description": "Fast, bash-like range expansion. Expand a range of numbers or letters, uppercase or lowercase. See the benchmarks. Used by micromatch.",
"version": "1.8.2",
"homepage": "https://github.com/jonschlinkert/expand-range",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"repository": "jonschlinkert/expand-range",
"bugs": {
"url": "https://github.com/jonschlinkert/expand-range/issues"
},
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha"
},
"dependencies": {
"fill-range": "^2.1.0"
},
"description": "Fast, bash-like range expansion. Expand a range of numbers or letters, uppercase or lowercase. See the benchmarks. Used by micromatch.",
"devDependencies": {
"benchmarked": "^0.2.4",
"brace-expansion": "^1.1.4",
@@ -48,13 +30,6 @@
"minimatch": "^3.0.0",
"mocha": "^2.4.5"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/expand-range",
"keywords": [
"alpha",
"alphabetical",
@@ -72,16 +47,6 @@
"ranges",
"sh"
],
"license": "MIT",
"main": "index.js",
"name": "expand-range",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/expand-range.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"plugins": [
"gulp-format-md"
@@ -104,6 +69,5 @@
"braces"
]
}
},
"version": "1.8.2"
}
}

View File

@@ -1,41 +1,24 @@
{
"_args": [
[
"fill-range@2.2.3",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "fill-range@2.2.3",
"_id": "fill-range@2.2.3",
"_inBundle": false,
"_integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
"_location": "/babel-cli/fill-range",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "fill-range@2.2.3",
"name": "fill-range",
"escapedName": "fill-range",
"rawSpec": "2.2.3",
"saveSpec": null,
"fetchSpec": "2.2.3"
},
"_requiredBy": [
"/babel-cli/expand-range"
],
"_resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
"_spec": "2.2.3",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"name": "fill-range",
"description": "Fill in a range of numbers or letters, optionally passing an increment or multiplier to use.",
"version": "2.2.3",
"homepage": "https://github.com/jonschlinkert/fill-range",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"repository": "jonschlinkert/fill-range",
"bugs": {
"url": "https://github.com/jonschlinkert/fill-range/issues"
},
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha"
},
"dependencies": {
"is-number": "^2.1.0",
"isobject": "^2.0.0",
@@ -43,19 +26,11 @@
"repeat-element": "^1.1.2",
"repeat-string": "^1.5.2"
},
"description": "Fill in a range of numbers or letters, optionally passing an increment or multiplier to use.",
"devDependencies": {
"benchmarked": "^0.1.3",
"chalk": "^0.5.1",
"should": "*"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/fill-range",
"keywords": [
"alpha",
"alphabetical",
@@ -73,16 +48,6 @@
"ranges",
"sh"
],
"license": "MIT",
"main": "index.js",
"name": "fill-range",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/fill-range.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"related": {
"list": [
@@ -92,6 +57,5 @@
"is-glob"
]
}
},
"version": "2.2.3"
}
}

View File

@@ -1,40 +1,20 @@
{
"_args": [
[
"glob@7.1.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "glob@7.1.2",
"_id": "glob@7.1.2",
"_inBundle": false,
"_integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"_location": "/babel-cli/glob",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "glob@7.1.2",
"name": "glob",
"escapedName": "glob",
"rawSpec": "7.1.2",
"saveSpec": null,
"fetchSpec": "7.1.2"
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
"name": "glob",
"description": "a little globber",
"version": "7.1.2",
"repository": {
"type": "git",
"url": "git://github.com/isaacs/node-glob.git"
},
"_requiredBy": [
"/babel-cli"
"main": "glob.js",
"files": [
"glob.js",
"sync.js",
"common.js"
],
"_resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"_spec": "7.1.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Isaac Z. Schlueter",
"email": "i@izs.me",
"url": "http://blog.izs.me/"
},
"bugs": {
"url": "https://github.com/isaacs/node-glob/issues"
"engines": {
"node": "*"
},
"dependencies": {
"fs.realpath": "^1.0.0",
@@ -44,37 +24,20 @@
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
},
"description": "a little globber",
"devDependencies": {
"mkdirp": "0",
"rimraf": "^2.2.8",
"tap": "^7.1.2",
"tick": "0.0.6"
},
"engines": {
"node": "*"
},
"files": [
"glob.js",
"sync.js",
"common.js"
],
"homepage": "https://github.com/isaacs/node-glob#readme",
"license": "ISC",
"main": "glob.js",
"name": "glob",
"repository": {
"type": "git",
"url": "git://github.com/isaacs/node-glob.git"
},
"scripts": {
"bench": "bash benchmark.sh",
"benchclean": "node benchclean.js",
"prepublish": "npm run benchclean",
"prof": "bash prof.sh && cat profile.txt",
"profclean": "rm -f v8.log profile.txt",
"test": "tap test/*.js --cov",
"test-regen": "npm run profclean && TEST_REGEN=1 node test/00-setup.js"
"test-regen": "npm run profclean && TEST_REGEN=1 node test/00-setup.js",
"bench": "bash benchmark.sh",
"prof": "bash prof.sh && cat profile.txt",
"benchclean": "node benchclean.js"
},
"version": "7.1.2"
"license": "ISC"
}

View File

@@ -1,56 +1,23 @@
{
"_args": [
[
"home-or-tmp@2.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "home-or-tmp@2.0.0",
"_id": "home-or-tmp@2.0.0",
"_inBundle": false,
"_integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=",
"_location": "/babel-cli/home-or-tmp",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "home-or-tmp@2.0.0",
"name": "home-or-tmp",
"escapedName": "home-or-tmp",
"rawSpec": "2.0.0",
"saveSpec": null,
"fetchSpec": "2.0.0"
},
"_requiredBy": [
"/babel-cli/babel-register"
],
"_resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
"_spec": "2.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "home-or-tmp",
"version": "2.0.0",
"description": "Get the user home directory with fallback to the system temp directory",
"license": "MIT",
"repository": "sindresorhus/home-or-tmp",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/home-or-tmp/issues"
},
"dependencies": {
"os-homedir": "^1.0.0",
"os-tmpdir": "^1.0.1"
},
"description": "Get the user home directory with fallback to the system temp directory",
"devDependencies": {
"ava": "0.0.4"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "node test.js"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/home-or-tmp#readme",
"keywords": [
"user",
"home",
@@ -66,14 +33,11 @@
"graceful",
"userprofile"
],
"license": "MIT",
"name": "home-or-tmp",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/home-or-tmp.git"
"dependencies": {
"os-homedir": "^1.0.0",
"os-tmpdir": "^1.0.1"
},
"scripts": {
"test": "node test.js"
},
"version": "2.0.0"
"devDependencies": {
"ava": "0.0.4"
}
}

View File

@@ -1,62 +1,29 @@
{
"_args": [
[
"inflight@1.0.6",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "inflight",
"version": "1.0.6",
"description": "Add callbacks to requests in flight to avoid async duplication",
"main": "inflight.js",
"files": [
"inflight.js"
],
"_development": true,
"_from": "inflight@1.0.6",
"_id": "inflight@1.0.6",
"_inBundle": false,
"_integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
"_location": "/babel-cli/inflight",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "inflight@1.0.6",
"name": "inflight",
"escapedName": "inflight",
"rawSpec": "1.0.6",
"saveSpec": null,
"fetchSpec": "1.0.6"
},
"_requiredBy": [
"/babel-cli/glob"
],
"_resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"_spec": "1.0.6",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Isaac Z. Schlueter",
"email": "i@izs.me",
"url": "http://blog.izs.me/"
},
"bugs": {
"url": "https://github.com/isaacs/inflight/issues"
},
"dependencies": {
"once": "^1.3.0",
"wrappy": "1"
},
"description": "Add callbacks to requests in flight to avoid async duplication",
"devDependencies": {
"tap": "^7.1.2"
},
"files": [
"inflight.js"
],
"homepage": "https://github.com/isaacs/inflight",
"license": "ISC",
"main": "inflight.js",
"name": "inflight",
"repository": {
"type": "git",
"url": "git+https://github.com/npm/inflight.git"
},
"scripts": {
"test": "tap test.js --100"
},
"version": "1.0.6"
"repository": {
"type": "git",
"url": "https://github.com/npm/inflight.git"
},
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
"bugs": {
"url": "https://github.com/isaacs/inflight/issues"
},
"homepage": "https://github.com/isaacs/inflight",
"license": "ISC"
}

View File

@@ -1,55 +1,23 @@
{
"_args": [
[
"is-finite@1.0.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "is-finite@1.0.2",
"_id": "is-finite@1.0.2",
"_inBundle": false,
"_integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
"_location": "/babel-cli/is-finite",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "is-finite@1.0.2",
"name": "is-finite",
"escapedName": "is-finite",
"rawSpec": "1.0.2",
"saveSpec": null,
"fetchSpec": "1.0.2"
},
"_requiredBy": [
"/babel-cli/repeating"
],
"_resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
"_spec": "1.0.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "is-finite",
"version": "1.0.2",
"description": "ES2015 Number.isFinite() ponyfill",
"license": "MIT",
"repository": "sindresorhus/is-finite",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/is-finite/issues"
},
"dependencies": {
"number-is-nan": "^1.0.0"
},
"description": "ES2015 Number.isFinite() ponyfill",
"devDependencies": {
"ava": "*"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/is-finite#readme",
"keywords": [
"es2015",
"ponyfill",
@@ -59,14 +27,10 @@
"finite",
"is"
],
"license": "MIT",
"name": "is-finite",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/is-finite.git"
"dependencies": {
"number-is-nan": "^1.0.0"
},
"scripts": {
"test": "ava"
},
"version": "1.0.2"
"devDependencies": {
"ava": "*"
}
}

View File

@@ -1,41 +1,25 @@
{
"_args": [
[
"micromatch@2.3.11",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "micromatch@2.3.11",
"_id": "micromatch@2.3.11",
"_inBundle": false,
"_integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
"_location": "/babel-cli/micromatch",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "micromatch@2.3.11",
"name": "micromatch",
"escapedName": "micromatch",
"rawSpec": "2.3.11",
"saveSpec": null,
"fetchSpec": "2.3.11"
},
"_requiredBy": [
"/babel-cli/anymatch"
],
"_resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
"_spec": "2.3.11",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"name": "micromatch",
"description": "Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch.",
"version": "2.3.11",
"homepage": "https://github.com/jonschlinkert/micromatch",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"repository": "jonschlinkert/micromatch",
"bugs": {
"url": "https://github.com/jonschlinkert/micromatch/issues"
},
"license": "MIT",
"files": [
"index.js",
"lib"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha"
},
"dependencies": {
"arr-diff": "^2.0.0",
"array-unique": "^0.2.1",
@@ -51,7 +35,6 @@
"parse-glob": "^3.0.4",
"regex-cache": "^0.4.2"
},
"description": "Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch.",
"devDependencies": {
"benchmarked": "^0.1.4",
"chalk": "^1.1.1",
@@ -67,14 +50,6 @@
"should": "^8",
"write": "^0.2.1"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js",
"lib"
],
"homepage": "https://github.com/jonschlinkert/micromatch",
"keywords": [
"bash",
"expand",
@@ -103,16 +78,6 @@
"shell",
"wildcard"
],
"license": "MIT",
"main": "index.js",
"name": "micromatch",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/micromatch.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"related": {
"list": [
@@ -145,6 +110,5 @@
"lint": {
"reflinks": true
}
},
"version": "2.3.11"
}
}

View File

@@ -1,69 +1,30 @@
{
"_args": [
[
"minimatch@3.0.4",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "minimatch@3.0.4",
"_id": "minimatch@3.0.4",
"_inBundle": false,
"_integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"_location": "/babel-cli/minimatch",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "minimatch@3.0.4",
"name": "minimatch",
"escapedName": "minimatch",
"rawSpec": "3.0.4",
"saveSpec": null,
"fetchSpec": "3.0.4"
},
"_requiredBy": [
"/babel-cli/babel-core",
"/babel-cli/glob",
"/babel-cli/readdirp"
],
"_resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"_spec": "3.0.4",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Isaac Z. Schlueter",
"email": "i@izs.me",
"url": "http://blog.izs.me"
},
"bugs": {
"url": "https://github.com/isaacs/minimatch/issues"
},
"dependencies": {
"brace-expansion": "^1.1.7"
},
"description": "a glob matcher in javascript",
"devDependencies": {
"tap": "^10.3.2"
},
"engines": {
"node": "*"
},
"files": [
"minimatch.js"
],
"homepage": "https://github.com/isaacs/minimatch#readme",
"license": "ISC",
"main": "minimatch.js",
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me)",
"name": "minimatch",
"description": "a glob matcher in javascript",
"version": "3.0.4",
"repository": {
"type": "git",
"url": "git://github.com/isaacs/minimatch.git"
},
"main": "minimatch.js",
"scripts": {
"postpublish": "git push origin --all; git push origin --tags",
"postversion": "npm publish",
"test": "tap test/*.js --cov",
"preversion": "npm test",
"test": "tap test/*.js --cov"
"postversion": "npm publish",
"postpublish": "git push origin --all; git push origin --tags"
},
"version": "3.0.4"
"engines": {
"node": "*"
},
"dependencies": {
"brace-expansion": "^1.1.7"
},
"devDependencies": {
"tap": "^10.3.2"
},
"license": "ISC",
"files": [
"minimatch.js"
]
}

View File

@@ -1,75 +1,40 @@
{
"_args": [
[
"minimist@0.0.8",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "minimist@0.0.8",
"_id": "minimist@0.0.8",
"_inBundle": false,
"_integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
"_location": "/babel-cli/minimist",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "minimist@0.0.8",
"name": "minimist",
"escapedName": "minimist",
"rawSpec": "0.0.8",
"saveSpec": null,
"fetchSpec": "0.0.8"
},
"_requiredBy": [
"/babel-cli/mkdirp"
],
"_resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"_spec": "0.0.8",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"bugs": {
"url": "https://github.com/substack/minimist/issues"
},
"description": "parse argument options",
"devDependencies": {
"tap": "~0.4.0",
"tape": "~1.0.4"
},
"homepage": "https://github.com/substack/minimist",
"keywords": [
"argv",
"getopt",
"parser",
"optimist"
],
"license": "MIT",
"main": "index.js",
"name": "minimist",
"repository": {
"type": "git",
"url": "git://github.com/substack/minimist.git"
},
"scripts": {
"test": "tap test/*.js"
},
"testling": {
"files": "test/*.js",
"browsers": [
"ie/6..latest",
"ff/5",
"firefox/latest",
"chrome/10",
"chrome/latest",
"safari/5.1",
"safari/latest",
"opera/12"
]
},
"version": "0.0.8"
"version": "0.0.8",
"description": "parse argument options",
"main": "index.js",
"devDependencies": {
"tape": "~1.0.4",
"tap": "~0.4.0"
},
"scripts": {
"test": "tap test/*.js"
},
"testling" : {
"files" : "test/*.js",
"browsers" : [
"ie/6..latest",
"ff/5", "firefox/latest",
"chrome/10", "chrome/latest",
"safari/5.1", "safari/latest",
"opera/12"
]
},
"repository": {
"type": "git",
"url": "git://github.com/substack/minimist.git"
},
"homepage": "https://github.com/substack/minimist",
"keywords": [
"argv",
"getopt",
"parser",
"optimist"
],
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"license": "MIT"
}

View File

@@ -1,67 +1,27 @@
{
"_args": [
[
"mkdirp@0.5.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "mkdirp@0.5.1",
"_id": "mkdirp@0.5.1",
"_inBundle": false,
"_integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"_location": "/babel-cli/mkdirp",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "mkdirp@0.5.1",
"name": "mkdirp",
"escapedName": "mkdirp",
"rawSpec": "0.5.1",
"saveSpec": null,
"fetchSpec": "0.5.1"
},
"_requiredBy": [
"/babel-cli/babel-register",
"/babel-cli/output-file-sync"
],
"_resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"_spec": "0.5.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"bin": {
"mkdirp": "bin/cmd.js"
},
"bugs": {
"url": "https://github.com/substack/node-mkdirp/issues"
},
"dependencies": {
"minimist": "0.0.8"
},
"name": "mkdirp",
"description": "Recursively mkdir, like `mkdir -p`",
"devDependencies": {
"mock-fs": "2 >=2.7.0",
"tap": "1"
},
"homepage": "https://github.com/substack/node-mkdirp#readme",
"version": "0.5.1",
"author": "James Halliday <mail@substack.net> (http://substack.net)",
"main": "index.js",
"keywords": [
"mkdir",
"directory"
],
"license": "MIT",
"main": "index.js",
"name": "mkdirp",
"repository": {
"type": "git",
"url": "git+https://github.com/substack/node-mkdirp.git"
"url": "https://github.com/substack/node-mkdirp.git"
},
"scripts": {
"test": "tap test/*.js"
},
"version": "0.5.1"
"dependencies": {
"minimist": "0.0.8"
},
"devDependencies": {
"tap": "1",
"mock-fs": "2 >=2.7.0"
},
"bin": "bin/cmd.js",
"license": "MIT"
}

View File

@@ -1,43 +1,16 @@
{
"_args": [
[
"ms@2.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "ms@2.0.0",
"_id": "ms@2.0.0",
"_inBundle": false,
"_integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
"_location": "/babel-cli/ms",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "ms@2.0.0",
"name": "ms",
"escapedName": "ms",
"rawSpec": "2.0.0",
"saveSpec": null,
"fetchSpec": "2.0.0"
},
"_requiredBy": [
"/babel-cli/debug"
],
"_resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"_spec": "2.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"bugs": {
"url": "https://github.com/zeit/ms/issues"
},
"name": "ms",
"version": "2.0.0",
"description": "Tiny milisecond conversion utility",
"devDependencies": {
"eslint": "3.19.0",
"expect.js": "0.3.1",
"husky": "0.13.3",
"lint-staged": "3.4.1",
"mocha": "3.4.1"
"repository": "zeit/ms",
"main": "./index",
"files": [
"index.js"
],
"scripts": {
"precommit": "lint-staged",
"lint": "eslint lib/* bin/*",
"test": "mocha tests.js"
},
"eslintConfig": {
"extends": "eslint:recommended",
@@ -46,11 +19,6 @@
"es6": true
}
},
"files": [
"index.js"
],
"homepage": "https://github.com/zeit/ms#readme",
"license": "MIT",
"lint-staged": {
"*.js": [
"npm run lint",
@@ -58,16 +26,12 @@
"git add"
]
},
"main": "./index",
"name": "ms",
"repository": {
"type": "git",
"url": "git+https://github.com/zeit/ms.git"
},
"scripts": {
"lint": "eslint lib/* bin/*",
"precommit": "lint-staged",
"test": "mocha tests.js"
},
"version": "2.0.0"
"license": "MIT",
"devDependencies": {
"eslint": "3.19.0",
"expect.js": "0.3.1",
"husky": "0.13.3",
"lint-staged": "3.4.1",
"mocha": "3.4.1"
}
}

View File

@@ -1,70 +1,37 @@
{
"_args": [
[
"normalize-path@2.1.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "normalize-path",
"description": "Normalize file path slashes to be unix-like forward slashes. Also condenses repeat slashes to a single slash and removes and trailing slashes unless disabled.",
"version": "2.1.1",
"homepage": "https://github.com/jonschlinkert/normalize-path",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"contributors": [
"Blaine Bublitz <blaine.bublitz@gmail.com> (https://twitter.com/BlaineBublitz)",
"Jon Schlinkert <jon.schlinkert@sellside.com> (http://twitter.com/jonschlinkert)"
],
"_development": true,
"_from": "normalize-path@2.1.1",
"_id": "normalize-path@2.1.1",
"_inBundle": false,
"_integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
"_location": "/babel-cli/normalize-path",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "normalize-path@2.1.1",
"name": "normalize-path",
"escapedName": "normalize-path",
"rawSpec": "2.1.1",
"saveSpec": null,
"fetchSpec": "2.1.1"
},
"_requiredBy": [
"/babel-cli/anymatch",
"/babel-cli/micromatch"
],
"_resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
"_spec": "2.1.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"repository": "jonschlinkert/normalize-path",
"bugs": {
"url": "https://github.com/jonschlinkert/normalize-path/issues"
},
"contributors": [
{
"name": "Blaine Bublitz",
"email": "blaine.bublitz@gmail.com",
"url": "https://twitter.com/BlaineBublitz"
},
{
"name": "Jon Schlinkert",
"email": "jon.schlinkert@sellside.com",
"url": "http://twitter.com/jonschlinkert"
}
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha"
},
"dependencies": {
"remove-trailing-separator": "^1.0.1"
},
"description": "Normalize file path slashes to be unix-like forward slashes. Also condenses repeat slashes to a single slash and removes and trailing slashes unless disabled.",
"devDependencies": {
"benchmarked": "^0.1.1",
"gulp-format-md": "^0.1.11",
"minimist": "^1.2.0",
"mocha": "*"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/normalize-path",
"keywords": [
"backslash",
"file",
@@ -81,16 +48,6 @@
"unix",
"urix"
],
"license": "MIT",
"main": "index.js",
"name": "normalize-path",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/normalize-path.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"related": {
"list": [
@@ -117,6 +74,5 @@
"lint": {
"reflinks": true
}
},
"version": "2.1.1"
}
}

View File

@@ -1,52 +1,23 @@
{
"_args": [
[
"number-is-nan@1.0.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "number-is-nan@1.0.1",
"_id": "number-is-nan@1.0.1",
"_inBundle": false,
"_integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
"_location": "/babel-cli/number-is-nan",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "number-is-nan@1.0.1",
"name": "number-is-nan",
"escapedName": "number-is-nan",
"rawSpec": "1.0.1",
"saveSpec": null,
"fetchSpec": "1.0.1"
},
"_requiredBy": [
"/babel-cli/is-finite"
],
"_resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
"_spec": "1.0.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "number-is-nan",
"version": "1.0.1",
"description": "ES2015 Number.isNaN() ponyfill",
"license": "MIT",
"repository": "sindresorhus/number-is-nan",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/number-is-nan/issues"
},
"description": "ES2015 Number.isNaN() ponyfill",
"devDependencies": {
"ava": "*"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/number-is-nan#readme",
"keywords": [
"es2015",
"ecmascript",
@@ -58,14 +29,7 @@
"nan",
"not"
],
"license": "MIT",
"name": "number-is-nan",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/number-is-nan.git"
},
"scripts": {
"test": "ava"
},
"version": "1.0.1"
"devDependencies": {
"ava": "*"
}
}

View File

@@ -1,55 +1,24 @@
{
"_args": [
[
"object-assign@4.1.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "object-assign@4.1.1",
"_id": "object-assign@4.1.1",
"_inBundle": false,
"_integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
"_location": "/babel-cli/object-assign",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "object-assign@4.1.1",
"name": "object-assign",
"escapedName": "object-assign",
"rawSpec": "4.1.1",
"saveSpec": null,
"fetchSpec": "4.1.1"
},
"_requiredBy": [
"/babel-cli/output-file-sync"
],
"_resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"_spec": "4.1.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "object-assign",
"version": "4.1.1",
"description": "ES2015 `Object.assign()` ponyfill",
"license": "MIT",
"repository": "sindresorhus/object-assign",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/object-assign/issues"
},
"description": "ES2015 `Object.assign()` ponyfill",
"devDependencies": {
"ava": "^0.16.0",
"lodash": "^4.16.4",
"matcha": "^0.7.0",
"xo": "^0.16.0"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "xo && ava",
"bench": "matcha bench.js"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/object-assign#readme",
"keywords": [
"object",
"assign",
@@ -64,15 +33,10 @@
"shim",
"browser"
],
"license": "MIT",
"name": "object-assign",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/object-assign.git"
},
"scripts": {
"bench": "matcha bench.js",
"test": "xo && ava"
},
"version": "4.1.1"
"devDependencies": {
"ava": "^0.16.0",
"lodash": "^4.16.4",
"matcha": "^0.7.0",
"xo": "^0.16.0"
}
}

View File

@@ -1,58 +1,33 @@
{
"_args": [
[
"object.omit@2.0.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "object.omit@2.0.1",
"_id": "object.omit@2.0.1",
"_inBundle": false,
"_integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=",
"_location": "/babel-cli/object.omit",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "object.omit@2.0.1",
"name": "object.omit",
"escapedName": "object.omit",
"rawSpec": "2.0.1",
"saveSpec": null,
"fetchSpec": "2.0.1"
},
"_requiredBy": [
"/babel-cli/micromatch"
],
"_resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
"_spec": "2.0.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"name": "object.omit",
"description": "Return a copy of an object excluding the given key, or array of keys. Also accepts an optional filter function as the last argument.",
"version": "2.0.1",
"homepage": "https://github.com/jonschlinkert/object.omit",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"repository": "jonschlinkert/object.omit",
"bugs": {
"url": "https://github.com/jonschlinkert/object.omit/issues"
},
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha"
},
"dependencies": {
"for-own": "^0.1.4",
"is-extendable": "^0.1.1"
},
"description": "Return a copy of an object excluding the given key, or array of keys. Also accepts an optional filter function as the last argument.",
"devDependencies": {
"gulp-format-md": "^0.1.11",
"mocha": "^3.1.2",
"should": "^11.1.1"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/object.omit",
"keywords": [
"clear",
"delete",
@@ -63,16 +38,6 @@
"remove",
"value"
],
"license": "MIT",
"main": "index.js",
"name": "object.omit",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/object.omit.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"related": {
"list": [
@@ -98,6 +63,5 @@
"verb",
"verb-generate-readme"
]
},
"version": "2.0.1"
}
}

View File

@@ -1,71 +1,33 @@
{
"_args": [
[
"once@1.4.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "once@1.4.0",
"_id": "once@1.4.0",
"_inBundle": false,
"_integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"_location": "/babel-cli/once",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "once@1.4.0",
"name": "once",
"escapedName": "once",
"rawSpec": "1.4.0",
"saveSpec": null,
"fetchSpec": "1.4.0"
},
"_requiredBy": [
"/babel-cli/glob",
"/babel-cli/inflight"
],
"_resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"_spec": "1.4.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Isaac Z. Schlueter",
"email": "i@izs.me",
"url": "http://blog.izs.me/"
},
"bugs": {
"url": "https://github.com/isaacs/once/issues"
"name": "once",
"version": "1.4.0",
"description": "Run a function exactly one time",
"main": "once.js",
"directories": {
"test": "test"
},
"dependencies": {
"wrappy": "1"
},
"description": "Run a function exactly one time",
"devDependencies": {
"tap": "^7.0.1"
},
"directories": {
"test": "test"
"scripts": {
"test": "tap test/*.js"
},
"files": [
"once.js"
],
"homepage": "https://github.com/isaacs/once#readme",
"repository": {
"type": "git",
"url": "git://github.com/isaacs/once"
},
"keywords": [
"once",
"function",
"one",
"single"
],
"license": "ISC",
"main": "once.js",
"name": "once",
"repository": {
"type": "git",
"url": "git://github.com/isaacs/once.git"
},
"scripts": {
"test": "tap test/*.js"
},
"version": "1.4.0"
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
"license": "ISC"
}

View File

@@ -1,54 +1,23 @@
{
"_args": [
[
"os-homedir@1.0.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "os-homedir@1.0.2",
"_id": "os-homedir@1.0.2",
"_inBundle": false,
"_integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
"_location": "/babel-cli/os-homedir",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "os-homedir@1.0.2",
"name": "os-homedir",
"escapedName": "os-homedir",
"rawSpec": "1.0.2",
"saveSpec": null,
"fetchSpec": "1.0.2"
},
"_requiredBy": [
"/babel-cli/home-or-tmp"
],
"_resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
"_spec": "1.0.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "os-homedir",
"version": "1.0.2",
"description": "Node.js 4 `os.homedir()` ponyfill",
"license": "MIT",
"repository": "sindresorhus/os-homedir",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/os-homedir/issues"
},
"description": "Node.js 4 `os.homedir()` ponyfill",
"devDependencies": {
"ava": "*",
"path-exists": "^2.0.0",
"xo": "^0.16.0"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/os-homedir#readme",
"keywords": [
"builtin",
"core",
@@ -64,14 +33,9 @@
"user",
"path"
],
"license": "MIT",
"name": "os-homedir",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/os-homedir.git"
},
"scripts": {
"test": "xo && ava"
},
"version": "1.0.2"
"devDependencies": {
"ava": "*",
"path-exists": "^2.0.0",
"xo": "^0.16.0"
}
}

View File

@@ -1,53 +1,23 @@
{
"_args": [
[
"os-tmpdir@1.0.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "os-tmpdir@1.0.2",
"_id": "os-tmpdir@1.0.2",
"_inBundle": false,
"_integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
"_location": "/babel-cli/os-tmpdir",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "os-tmpdir@1.0.2",
"name": "os-tmpdir",
"escapedName": "os-tmpdir",
"rawSpec": "1.0.2",
"saveSpec": null,
"fetchSpec": "1.0.2"
},
"_requiredBy": [
"/babel-cli/home-or-tmp"
],
"_resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
"_spec": "1.0.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "os-tmpdir",
"version": "1.0.2",
"description": "Node.js os.tmpdir() ponyfill",
"license": "MIT",
"repository": "sindresorhus/os-tmpdir",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/os-tmpdir/issues"
},
"description": "Node.js os.tmpdir() ponyfill",
"devDependencies": {
"ava": "*",
"xo": "^0.16.0"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/os-tmpdir#readme",
"keywords": [
"built-in",
"core",
@@ -64,14 +34,8 @@
"env",
"environment"
],
"license": "MIT",
"name": "os-tmpdir",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/os-tmpdir.git"
},
"scripts": {
"test": "xo && ava"
},
"version": "1.0.2"
"devDependencies": {
"ava": "*",
"xo": "^0.16.0"
}
}

View File

@@ -1,58 +1,18 @@
{
"_args": [
[
"output-file-sync@1.1.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "output-file-sync@1.1.2",
"_id": "output-file-sync@1.1.2",
"_inBundle": false,
"_integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=",
"_location": "/babel-cli/output-file-sync",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "output-file-sync@1.1.2",
"name": "output-file-sync",
"escapedName": "output-file-sync",
"rawSpec": "1.1.2",
"saveSpec": null,
"fetchSpec": "1.1.2"
},
"_requiredBy": [
"/babel-cli"
],
"_resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz",
"_spec": "1.1.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Shinnosuke Watanabe",
"url": "https://github.com/shinnn"
},
"bugs": {
"url": "https://github.com/shinnn/output-file-sync/issues"
},
"dependencies": {
"graceful-fs": "^4.1.4",
"mkdirp": "^0.5.1",
"object-assign": "^4.1.0"
},
"name": "output-file-sync",
"version": "1.1.2",
"description": "Synchronously write a file and create its ancestor directories if needed",
"devDependencies": {
"@shinnn/eslint-config-node-legacy": "^2.0.0",
"eslint": "^2.13.0",
"istanbul": "^0.4.3",
"read-remove-file": "^3.0.0",
"tap-spec": "^4.1.1",
"tape": "^4.5.1"
"repository": "shinnn/output-file-sync",
"author": "Shinnosuke Watanabe (https://github.com/shinnn)",
"scripts": {
"pretest": "eslint --fix --config @shinnn/node-legacy index.js test.js",
"test": "node --strong_mode --throw-deprecation --track-heap-objects test.js | tap-spec",
"coverage": "node --strong_mode --throw-deprecation --track-heap-objects node_modules/.bin/istanbul cover test.js"
},
"license": "MIT",
"files": [
"index.js"
],
"homepage": "https://github.com/shinnn/output-file-sync#readme",
"keywords": [
"fs",
"write",
@@ -64,16 +24,17 @@
"mkdir",
"mkdirp"
],
"license": "MIT",
"name": "output-file-sync",
"repository": {
"type": "git",
"url": "git+https://github.com/shinnn/output-file-sync.git"
"dependencies": {
"graceful-fs": "^4.1.4",
"mkdirp": "^0.5.1",
"object-assign": "^4.1.0"
},
"scripts": {
"coverage": "node --strong_mode --throw-deprecation --track-heap-objects node_modules/.bin/istanbul cover test.js",
"pretest": "eslint --fix --config @shinnn/node-legacy index.js test.js",
"test": "node --strong_mode --throw-deprecation --track-heap-objects test.js | tap-spec"
},
"version": "1.1.2"
"devDependencies": {
"@shinnn/eslint-config-node-legacy": "^2.0.0",
"eslint": "^2.13.0",
"istanbul": "^0.4.3",
"read-remove-file": "^3.0.0",
"tap-spec": "^4.1.1",
"tape": "^4.5.1"
}
}

View File

@@ -1,60 +1,36 @@
{
"_args": [
[
"parse-glob@3.0.4",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "parse-glob@3.0.4",
"_id": "parse-glob@3.0.4",
"_inBundle": false,
"_integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=",
"_location": "/babel-cli/parse-glob",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "parse-glob@3.0.4",
"name": "parse-glob",
"escapedName": "parse-glob",
"rawSpec": "3.0.4",
"saveSpec": null,
"fetchSpec": "3.0.4"
},
"_requiredBy": [
"/babel-cli/micromatch"
],
"_resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz",
"_spec": "3.0.4",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"name": "parse-glob",
"description": "Parse a glob pattern into an object of tokens.",
"version": "3.0.4",
"homepage": "https://github.com/jonschlinkert/parse-glob",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"repository": "jonschlinkert/parse-glob",
"bugs": {
"url": "https://github.com/jonschlinkert/parse-glob/issues"
},
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha",
"prepublish": "browserify -o browser.js -e index.js"
},
"dependencies": {
"glob-base": "^0.3.0",
"is-dotfile": "^1.0.0",
"is-extglob": "^1.0.0",
"is-glob": "^2.0.0"
},
"description": "Parse a glob pattern into an object of tokens.",
"devDependencies": {
"browserify": "^9.0.3",
"lodash": "^3.3.1",
"mocha": "*"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/parse-glob",
"keywords": [
"glob",
"match",
@@ -82,17 +58,5 @@
"regular",
"shell",
"wildcard"
],
"license": "MIT",
"main": "index.js",
"name": "parse-glob",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/parse-glob.git"
},
"scripts": {
"prepublish": "browserify -o browser.js -e index.js",
"test": "mocha"
},
"version": "3.0.4"
]
}

View File

@@ -1,55 +1,23 @@
{
"_args": [
[
"path-is-absolute@1.0.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "path-is-absolute@1.0.1",
"_id": "path-is-absolute@1.0.1",
"_inBundle": false,
"_integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
"_location": "/babel-cli/path-is-absolute",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "path-is-absolute@1.0.1",
"name": "path-is-absolute",
"escapedName": "path-is-absolute",
"rawSpec": "1.0.1",
"saveSpec": null,
"fetchSpec": "1.0.1"
},
"_requiredBy": [
"/babel-cli",
"/babel-cli/babel-core",
"/babel-cli/chokidar",
"/babel-cli/glob"
],
"_resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"_spec": "1.0.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "path-is-absolute",
"version": "1.0.1",
"description": "Node.js 0.12 path.isAbsolute() ponyfill",
"license": "MIT",
"repository": "sindresorhus/path-is-absolute",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/path-is-absolute/issues"
},
"description": "Node.js 0.12 path.isAbsolute() ponyfill",
"devDependencies": {
"xo": "^0.16.0"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "xo && node test.js"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/path-is-absolute#readme",
"keywords": [
"path",
"paths",
@@ -69,14 +37,7 @@
"detect",
"check"
],
"license": "MIT",
"name": "path-is-absolute",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/path-is-absolute.git"
},
"scripts": {
"test": "xo && node test.js"
},
"version": "1.0.1"
"devDependencies": {
"xo": "^0.16.0"
}
}

View File

@@ -1,42 +1,30 @@
{
"_args": [
[
"preserve@0.2.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "preserve@0.2.0",
"_id": "preserve@0.2.0",
"_inBundle": false,
"_integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=",
"_location": "/babel-cli/preserve",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "preserve@0.2.0",
"name": "preserve",
"escapedName": "preserve",
"rawSpec": "0.2.0",
"saveSpec": null,
"fetchSpec": "0.2.0"
},
"_requiredBy": [
"/babel-cli/braces"
],
"_resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz",
"_spec": "0.2.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "preserve",
"description": "Temporarily substitute tokens in the given `string` with placeholders, then put them back after transforming the string.",
"version": "0.2.0",
"homepage": "https://github.com/jonschlinkert/preserve",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"repository": {
"type": "git",
"url": "git://github.com/jonschlinkert/preserve.git"
},
"bugs": {
"url": "https://github.com/jonschlinkert/preserve/issues"
},
"description": "Temporarily substitute tokens in the given `string` with placeholders, then put them back after transforming the string.",
"license": {
"type": "MIT",
"url": "https://github.com/jonschlinkert/preserve/blob/master/LICENSE-MIT"
},
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha -R spec"
},
"devDependencies": {
"benchmarked": "^0.1.3",
"chalk": "^0.5.1",
@@ -44,10 +32,6 @@
"mocha": "*",
"should": "*"
},
"engines": {
"node": ">=0.10.0"
},
"homepage": "https://github.com/jonschlinkert/preserve",
"keywords": [
"escape",
"format",
@@ -60,19 +44,5 @@
"templates",
"token",
"tokens"
],
"license": {
"type": "MIT",
"url": "https://github.com/jonschlinkert/preserve/blob/master/LICENSE-MIT"
},
"main": "index.js",
"name": "preserve",
"repository": {
"type": "git",
"url": "git://github.com/jonschlinkert/preserve.git"
},
"scripts": {
"test": "mocha -R spec"
},
"version": "0.2.0"
}
]
}

View File

@@ -1,51 +1,10 @@
{
"_args": [
[
"private@0.1.8",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "private@0.1.8",
"_id": "private@0.1.8",
"_inBundle": false,
"_integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
"_location": "/babel-cli/private",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "private@0.1.8",
"name": "private",
"escapedName": "private",
"rawSpec": "0.1.8",
"saveSpec": null,
"fetchSpec": "0.1.8"
},
"_requiredBy": [
"/babel-cli/babel-core"
],
"_resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
"_spec": "0.1.8",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Ben Newman",
"email": "bn@cs.stanford.edu"
},
"bugs": {
"url": "https://github.com/benjamn/private/issues"
},
"name": "private",
"description": "Utility for associating truly private state with any JavaScript object",
"devDependencies": {
"mocha": "^4.0.1"
},
"engines": {
"node": ">= 0.6"
},
"files": [
"private.js"
],
"homepage": "http://github.com/benjamn/private",
"keywords": [
"private",
"access control",
@@ -57,15 +16,24 @@
"scope",
"es5"
],
"license": "MIT",
"main": "private.js",
"name": "private",
"version": "0.1.8",
"homepage": "http://github.com/benjamn/private",
"repository": {
"type": "git",
"url": "git://github.com/benjamn/private.git"
},
"license": "MIT",
"main": "private.js",
"files": [
"private.js"
],
"scripts": {
"test": "mocha --reporter spec --full-trace test/run.js"
},
"version": "0.1.8"
"engines": {
"node": ">= 0.6"
},
"devDependencies": {
"mocha": "^4.0.1"
}
}

View File

@@ -1,52 +1,22 @@
{
"_args": [
[
"process-nextick-args@1.0.7",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "process-nextick-args@1.0.7",
"_id": "process-nextick-args@1.0.7",
"_inBundle": false,
"_integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
"_location": "/babel-cli/process-nextick-args",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "process-nextick-args@1.0.7",
"name": "process-nextick-args",
"escapedName": "process-nextick-args",
"rawSpec": "1.0.7",
"saveSpec": null,
"fetchSpec": "1.0.7"
},
"_requiredBy": [
"/babel-cli/readable-stream"
],
"_resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
"_spec": "1.0.7",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": "",
"bugs": {
"url": "https://github.com/calvinmetcalf/process-nextick-args/issues"
},
"description": "process.nextTick but always with args",
"devDependencies": {
"tap": "~0.2.6"
},
"homepage": "https://github.com/calvinmetcalf/process-nextick-args",
"license": "MIT",
"main": "index.js",
"name": "process-nextick-args",
"repository": {
"type": "git",
"url": "git+https://github.com/calvinmetcalf/process-nextick-args.git"
},
"version": "1.0.7",
"description": "process.nextTick but always with args",
"main": "index.js",
"scripts": {
"test": "node test.js"
},
"version": "1.0.7"
"repository": {
"type": "git",
"url": "https://github.com/calvinmetcalf/process-nextick-args.git"
},
"author": "",
"license": "MIT",
"bugs": {
"url": "https://github.com/calvinmetcalf/process-nextick-args/issues"
},
"homepage": "https://github.com/calvinmetcalf/process-nextick-args",
"devDependencies": {
"tap": "~0.2.6"
}
}

View File

@@ -1,71 +1,36 @@
{
"_args": [
[
"kind-of@3.2.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "kind-of",
"description": "Get the native type of a value.",
"version": "3.2.2",
"homepage": "https://github.com/jonschlinkert/kind-of",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"contributors": [
"David Fox-Powell (https://dtothefp.github.io/me)",
"Jon Schlinkert (http://twitter.com/jonschlinkert)",
"Ken Sheedlo (kensheedlo.com)",
"laggingreflex (https://github.com/laggingreflex)",
"Miguel Mota (https://miguelmota.com)",
"Peter deHaan (http://about.me/peterdehaan)"
],
"_development": true,
"_from": "kind-of@3.2.2",
"_id": "kind-of@3.2.2",
"_inBundle": false,
"_integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"_location": "/babel-cli/randomatic/is-number/kind-of",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "kind-of@3.2.2",
"name": "kind-of",
"escapedName": "kind-of",
"rawSpec": "3.2.2",
"saveSpec": null,
"fetchSpec": "3.2.2"
},
"_requiredBy": [
"/babel-cli/randomatic/is-number"
],
"_resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"_spec": "3.2.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"repository": "jonschlinkert/kind-of",
"bugs": {
"url": "https://github.com/jonschlinkert/kind-of/issues"
},
"contributors": [
{
"name": "David Fox-Powell",
"url": "https://dtothefp.github.io/me"
},
{
"name": "Jon Schlinkert",
"url": "http://twitter.com/jonschlinkert"
},
{
"name": "Ken Sheedlo",
"url": "kensheedlo.com"
},
{
"name": "laggingreflex",
"url": "https://github.com/laggingreflex"
},
{
"name": "Miguel Mota",
"url": "https://miguelmota.com"
},
{
"name": "Peter deHaan",
"url": "http://about.me/peterdehaan"
}
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha",
"prepublish": "browserify -o browser.js -e index.js -s index --bare"
},
"dependencies": {
"is-buffer": "^1.1.5"
},
"description": "Get the native type of a value.",
"devDependencies": {
"ansi-bold": "^0.1.1",
"benchmarked": "^1.0.0",
@@ -76,13 +41,6 @@
"type-of": "^2.0.1",
"typeof": "^1.0.0"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/kind-of",
"keywords": [
"arguments",
"array",
@@ -106,17 +64,6 @@
"typeof",
"types"
],
"license": "MIT",
"main": "index.js",
"name": "kind-of",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/kind-of.git"
},
"scripts": {
"prepublish": "browserify -o browser.js -e index.js -s index --bare",
"test": "mocha"
},
"verb": {
"related": {
"list": [
@@ -139,6 +86,5 @@
"reflinks": [
"verb"
]
},
"version": "3.2.2"
}
}

View File

@@ -1,71 +1,37 @@
{
"_args": [
[
"is-number@3.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "is-number",
"description": "Returns true if the value is a number. comprehensive tests.",
"version": "3.0.0",
"homepage": "https://github.com/jonschlinkert/is-number",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"contributors": [
"Charlike Mike Reagent (http://www.tunnckocore.tk)",
"Jon Schlinkert <jon.schlinkert@sellside.com> (http://twitter.com/jonschlinkert)"
],
"_development": true,
"_from": "is-number@3.0.0",
"_id": "is-number@3.0.0",
"_inBundle": false,
"_integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
"_location": "/babel-cli/randomatic/is-number",
"_optional": true,
"_phantomChildren": {
"is-buffer": "1.1.6"
},
"_requested": {
"type": "version",
"registry": true,
"raw": "is-number@3.0.0",
"name": "is-number",
"escapedName": "is-number",
"rawSpec": "3.0.0",
"saveSpec": null,
"fetchSpec": "3.0.0"
},
"_requiredBy": [
"/babel-cli/randomatic"
],
"_resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
"_spec": "3.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"repository": "jonschlinkert/is-number",
"bugs": {
"url": "https://github.com/jonschlinkert/is-number/issues"
},
"contributors": [
{
"name": "Charlike Mike Reagent",
"url": "http://www.tunnckocore.tk"
},
{
"name": "Jon Schlinkert",
"email": "jon.schlinkert@sellside.com",
"url": "http://twitter.com/jonschlinkert"
}
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha"
},
"dependencies": {
"kind-of": "^3.0.2"
},
"description": "Returns true if the value is a number. comprehensive tests.",
"devDependencies": {
"benchmarked": "^0.2.5",
"chalk": "^1.1.3",
"gulp-format-md": "^0.1.10",
"mocha": "^3.0.2"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/is-number",
"keywords": [
"check",
"coerce",
@@ -87,16 +53,6 @@
"typeof",
"value"
],
"license": "MIT",
"main": "index.js",
"name": "is-number",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/is-number.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"related": {
"list": [
@@ -123,6 +79,5 @@
"verb",
"verb-generate-readme"
]
},
"version": "3.0.0"
}
}
}

View File

@@ -1,71 +1,36 @@
{
"_args": [
[
"kind-of@4.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "kind-of",
"description": "Get the native type of a value.",
"version": "4.0.0",
"homepage": "https://github.com/jonschlinkert/kind-of",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"contributors": [
"David Fox-Powell (https://dtothefp.github.io/me)",
"Jon Schlinkert (http://twitter.com/jonschlinkert)",
"Ken Sheedlo (kensheedlo.com)",
"laggingreflex (https://github.com/laggingreflex)",
"Miguel Mota (https://miguelmota.com)",
"Peter deHaan (http://about.me/peterdehaan)"
],
"_development": true,
"_from": "kind-of@4.0.0",
"_id": "kind-of@4.0.0",
"_inBundle": false,
"_integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
"_location": "/babel-cli/randomatic/kind-of",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "kind-of@4.0.0",
"name": "kind-of",
"escapedName": "kind-of",
"rawSpec": "4.0.0",
"saveSpec": null,
"fetchSpec": "4.0.0"
},
"_requiredBy": [
"/babel-cli/randomatic"
],
"_resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
"_spec": "4.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"repository": "jonschlinkert/kind-of",
"bugs": {
"url": "https://github.com/jonschlinkert/kind-of/issues"
},
"contributors": [
{
"name": "David Fox-Powell",
"url": "https://dtothefp.github.io/me"
},
{
"name": "Jon Schlinkert",
"url": "http://twitter.com/jonschlinkert"
},
{
"name": "Ken Sheedlo",
"url": "kensheedlo.com"
},
{
"name": "laggingreflex",
"url": "https://github.com/laggingreflex"
},
{
"name": "Miguel Mota",
"url": "https://miguelmota.com"
},
{
"name": "Peter deHaan",
"url": "http://about.me/peterdehaan"
}
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha",
"prepublish": "browserify -o browser.js -e index.js -s index --bare"
},
"dependencies": {
"is-buffer": "^1.1.5"
},
"description": "Get the native type of a value.",
"devDependencies": {
"ansi-bold": "^0.1.1",
"benchmarked": "^1.1.1",
@@ -76,13 +41,6 @@
"type-of": "^2.0.1",
"typeof": "^1.0.0"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/kind-of",
"keywords": [
"arguments",
"array",
@@ -106,17 +64,6 @@
"typeof",
"types"
],
"license": "MIT",
"main": "index.js",
"name": "kind-of",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/kind-of.git"
},
"scripts": {
"prepublish": "browserify -o browser.js -e index.js -s index --bare",
"test": "mocha"
},
"verb": {
"related": {
"list": [
@@ -139,6 +86,5 @@
"reflinks": [
"verb"
]
},
"version": "4.0.0"
}
}

View File

@@ -1,70 +1,35 @@
{
"_args": [
[
"randomatic@1.1.7",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "randomatic",
"description": "Generate randomized strings of a specified length, fast. Only the length is necessary, but you can optionally generate patterns using any combination of numeric, alpha-numeric, alphabetical, special or custom characters.",
"version": "1.1.7",
"homepage": "https://github.com/jonschlinkert/randomatic",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"contributors": [
"Bogdan Chadkin (https://github.com/TrySound)",
"Dragos Fotescu (http://dragosfotescu.com)",
"Jon Schlinkert (http://twitter.com/jonschlinkert)",
"Paul Miller (paulmillr.com)",
"Sun Knudsen (http://sunknudsen.com)"
],
"_development": true,
"_from": "randomatic@1.1.7",
"_id": "randomatic@1.1.7",
"_inBundle": false,
"_integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==",
"_location": "/babel-cli/randomatic",
"_optional": true,
"_phantomChildren": {
"is-buffer": "1.1.6"
},
"_requested": {
"type": "version",
"registry": true,
"raw": "randomatic@1.1.7",
"name": "randomatic",
"escapedName": "randomatic",
"rawSpec": "1.1.7",
"saveSpec": null,
"fetchSpec": "1.1.7"
},
"_requiredBy": [
"/babel-cli/fill-range"
],
"_resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz",
"_spec": "1.1.7",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"repository": "jonschlinkert/randomatic",
"bugs": {
"url": "https://github.com/jonschlinkert/randomatic/issues"
},
"contributors": [
{
"name": "Bogdan Chadkin",
"url": "https://github.com/TrySound"
},
{
"name": "Dragos Fotescu",
"url": "http://dragosfotescu.com"
},
{
"name": "Jon Schlinkert",
"url": "http://twitter.com/jonschlinkert"
},
{
"name": "Paul Miller",
"url": "paulmillr.com"
},
{
"name": "Sun Knudsen",
"url": "http://sunknudsen.com"
}
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">= 0.10.0"
},
"scripts": {
"test": "mocha"
},
"dependencies": {
"is-number": "^3.0.0",
"kind-of": "^4.0.0"
},
"description": "Generate randomized strings of a specified length, fast. Only the length is necessary, but you can optionally generate patterns using any combination of numeric, alpha-numeric, alphabetical, special or custom characters.",
"devDependencies": {
"ansi-bold": "^0.1.1",
"benchmarked": "^1.1.1",
@@ -73,13 +38,6 @@
"mocha": "^3.4.2",
"should": "^11.2.1"
},
"engines": {
"node": ">= 0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/randomatic",
"keywords": [
"alpha",
"alpha-numeric",
@@ -93,16 +51,6 @@
"randomize",
"randomized"
],
"license": "MIT",
"main": "index.js",
"name": "randomatic",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/randomatic.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"toc": false,
"layout": "default",
@@ -126,6 +74,5 @@
"verb",
"verb-generate-readme"
]
},
"version": "1.1.7"
}
}

View File

@@ -1,44 +1,8 @@
{
"_args": [
[
"readable-stream@2.3.3",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "readable-stream@2.3.3",
"_id": "readable-stream@2.3.3",
"_inBundle": false,
"_integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
"_location": "/babel-cli/readable-stream",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "readable-stream@2.3.3",
"name": "readable-stream",
"escapedName": "readable-stream",
"rawSpec": "2.3.3",
"saveSpec": null,
"fetchSpec": "2.3.3"
},
"_requiredBy": [
"/babel-cli/readdirp"
],
"_resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
"_spec": "2.3.3",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"browser": {
"util": false,
"./readable.js": "./readable-browser.js",
"./writable.js": "./writable-browser.js",
"./duplex.js": "./duplex-browser.js",
"./lib/internal/streams/stream.js": "./lib/internal/streams/stream-browser.js"
},
"bugs": {
"url": "https://github.com/nodejs/readable-stream/issues"
},
"name": "readable-stream",
"version": "2.3.3",
"description": "Streams3, a user-land copy of the stream library from Node.js",
"main": "readable.js",
"dependencies": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.3",
@@ -48,7 +12,6 @@
"string_decoder": "~1.0.3",
"util-deprecate": "~1.0.1"
},
"description": "Streams3, a user-land copy of the stream library from Node.js",
"devDependencies": {
"assert": "~1.4.0",
"babel-polyfill": "^6.9.1",
@@ -58,31 +21,34 @@
"tape": "~4.5.1",
"zuul": "~3.10.0"
},
"homepage": "https://github.com/nodejs/readable-stream#readme",
"scripts": {
"test": "tap test/parallel/*.js test/ours/*.js && node test/verify-dependencies.js",
"browser": "npm run write-zuul && zuul --browser-retries 2 -- test/browser.js",
"write-zuul": "printf \"ui: tape\nbrowsers:\n - name: $BROWSER_NAME\n version: $BROWSER_VERSION\n\">.zuul.yml",
"local": "zuul --local 3000 --no-coverage -- test/browser.js",
"cover": "nyc npm test",
"report": "nyc report --reporter=lcov"
},
"repository": {
"type": "git",
"url": "git://github.com/nodejs/readable-stream"
},
"keywords": [
"readable",
"stream",
"pipe"
],
"license": "MIT",
"main": "readable.js",
"name": "readable-stream",
"browser": {
"util": false,
"./readable.js": "./readable-browser.js",
"./writable.js": "./writable-browser.js",
"./duplex.js": "./duplex-browser.js",
"./lib/internal/streams/stream.js": "./lib/internal/streams/stream-browser.js"
},
"nyc": {
"include": [
"lib/**.js"
]
},
"repository": {
"type": "git",
"url": "git://github.com/nodejs/readable-stream.git"
},
"scripts": {
"browser": "npm run write-zuul && zuul --browser-retries 2 -- test/browser.js",
"cover": "nyc npm test",
"local": "zuul --local 3000 --no-coverage -- test/browser.js",
"report": "nyc report --reporter=lcov",
"test": "tap test/parallel/*.js test/ours/*.js && node test/verify-dependencies.js",
"write-zuul": "printf \"ui: tape\nbrowsers:\n - name: $BROWSER_NAME\n version: $BROWSER_VERSION\n\">.zuul.yml"
},
"version": "2.3.3"
"license": "MIT"
}

View File

@@ -1,59 +1,16 @@
{
"_args": [
[
"readdirp@2.1.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "readdirp@2.1.0",
"_id": "readdirp@2.1.0",
"_inBundle": false,
"_integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
"_location": "/babel-cli/readdirp",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "readdirp@2.1.0",
"name": "readdirp",
"escapedName": "readdirp",
"rawSpec": "2.1.0",
"saveSpec": null,
"fetchSpec": "2.1.0"
},
"_requiredBy": [
"/babel-cli/chokidar"
],
"_resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
"_spec": "2.1.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Thorsten Lorenz",
"email": "thlorenz@gmx.de",
"url": "thlorenz.com"
},
"bugs": {
"url": "https://github.com/thlorenz/readdirp/issues"
},
"dependencies": {
"graceful-fs": "^4.1.2",
"minimatch": "^3.0.2",
"readable-stream": "^2.0.2",
"set-immediate-shim": "^1.0.1"
},
"author": "Thorsten Lorenz <thlorenz@gmx.de> (thlorenz.com)",
"name": "readdirp",
"description": "Recursive version of fs.readdir with streaming api.",
"devDependencies": {
"nave": "^0.5.1",
"proxyquire": "^1.7.9",
"tap": "1.3.2",
"through2": "^2.0.0"
"version": "2.1.0",
"homepage": "https://github.com/thlorenz/readdirp",
"repository": {
"type": "git",
"url": "git://github.com/thlorenz/readdirp.git"
},
"engines": {
"node": ">=0.6"
},
"homepage": "https://github.com/thlorenz/readdirp",
"keywords": [
"recursive",
"fs",
@@ -64,21 +21,27 @@
"find",
"filter"
],
"license": "MIT",
"main": "readdirp.js",
"name": "readdirp",
"repository": {
"type": "git",
"url": "git://github.com/thlorenz/readdirp.git"
},
"scripts": {
"test": "if [ -e $TRAVIS ]; then npm run test-all; else npm run test-main; fi",
"test-main": "(cd test && set -e; for t in ./*.js; do node $t; done)",
"test-0.10": "nave use 0.10 npm run test-main",
"test-0.12": "nave use 0.12 npm run test-main",
"test-4": "nave use 4.4 npm run test-main",
"test-6": "nave use 6.2 npm run test-main",
"test-all": "npm run test-main && npm run test-0.10 && npm run test-0.12 && npm run test-4 && npm run test-6",
"test-main": "(cd test && set -e; for t in ./*.js; do node $t; done)"
"test": "if [ -e $TRAVIS ]; then npm run test-all; else npm run test-main; fi"
},
"version": "2.1.0"
"dependencies": {
"graceful-fs": "^4.1.2",
"minimatch": "^3.0.2",
"readable-stream": "^2.0.2",
"set-immediate-shim": "^1.0.1"
},
"devDependencies": {
"nave": "^0.5.1",
"proxyquire": "^1.7.9",
"tap": "1.3.2",
"through2": "^2.0.0"
},
"license": "MIT"
}

View File

@@ -1,50 +1,18 @@
{
"_args": [
[
"regenerator-runtime@0.11.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "regenerator-runtime@0.11.0",
"_id": "regenerator-runtime@0.11.0",
"_inBundle": false,
"_integrity": "sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A==",
"_location": "/babel-cli/regenerator-runtime",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "regenerator-runtime@0.11.0",
"name": "regenerator-runtime",
"escapedName": "regenerator-runtime",
"rawSpec": "0.11.0",
"saveSpec": null,
"fetchSpec": "0.11.0"
},
"_requiredBy": [
"/babel-cli/babel-runtime"
],
"_resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz",
"_spec": "0.11.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Ben Newman",
"email": "bn@cs.stanford.edu"
},
"name": "regenerator-runtime",
"author": "Ben Newman <bn@cs.stanford.edu>",
"description": "Runtime for Regenerator-compiled generator and async functions.",
"version": "0.11.0",
"main": "runtime-module.js",
"keywords": [
"regenerator",
"runtime",
"generator",
"async"
],
"license": "MIT",
"main": "runtime-module.js",
"name": "regenerator-runtime",
"repository": {
"type": "git",
"url": "https://github.com/facebook/regenerator/tree/master/packages/regenerator-runtime"
},
"version": "0.11.0"
"license": "MIT"
}

View File

@@ -1,55 +1,32 @@
{
"_args": [
[
"regex-cache@0.4.4",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "regex-cache",
"description": "Memoize the results of a call to the RegExp constructor, avoiding repetitious runtime compilation of the same string and options, resulting in surprising performance improvements.",
"version": "0.4.4",
"homepage": "https://github.com/jonschlinkert/regex-cache",
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
"contributors": [
"Jon Schlinkert (http://twitter.com/jonschlinkert)",
"Martin Kolárik (https://kolarik.sk)"
],
"_development": true,
"_from": "regex-cache@0.4.4",
"_id": "regex-cache@0.4.4",
"_inBundle": false,
"_integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==",
"_location": "/babel-cli/regex-cache",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "regex-cache@0.4.4",
"name": "regex-cache",
"escapedName": "regex-cache",
"rawSpec": "0.4.4",
"saveSpec": null,
"fetchSpec": "0.4.4"
},
"_requiredBy": [
"/babel-cli/micromatch"
],
"_resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz",
"_spec": "0.4.4",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"repository": "jonschlinkert/regex-cache",
"bugs": {
"url": "https://github.com/jonschlinkert/regex-cache/issues"
},
"contributors": [
{
"name": "Jon Schlinkert",
"url": "http://twitter.com/jonschlinkert"
},
{
"name": "Martin Kolárik",
"url": "https://kolarik.sk"
}
"license": "MIT",
"files": [
"index.js"
],
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha",
"benchmarks": "node benchmark"
},
"dependencies": {
"is-equal-shallow": "^0.1.3"
},
"description": "Memoize the results of a call to the RegExp constructor, avoiding repetitious runtime compilation of the same string and options, resulting in surprising performance improvements.",
"devDependencies": {
"ansi-bold": "^0.1.1",
"benchmarked": "^0.1.5",
@@ -57,13 +34,6 @@
"micromatch": "^2.3.7",
"should": "^8.3.0"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/regex-cache",
"keywords": [
"cache",
"expression",
@@ -74,17 +44,6 @@
"store",
"to-regex"
],
"license": "MIT",
"main": "index.js",
"name": "regex-cache",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/regex-cache.git"
},
"scripts": {
"benchmarks": "node benchmark",
"test": "mocha"
},
"verb": {
"run": true,
"toc": false,
@@ -101,6 +60,5 @@
"lint": {
"reflinks": true
}
},
"version": "0.4.4"
}
}

View File

@@ -1,68 +1,37 @@
{
"_args": [
[
"remove-trailing-separator@1.1.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "remove-trailing-separator@1.1.0",
"_id": "remove-trailing-separator@1.1.0",
"_inBundle": false,
"_integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
"_location": "/babel-cli/remove-trailing-separator",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "remove-trailing-separator@1.1.0",
"name": "remove-trailing-separator",
"escapedName": "remove-trailing-separator",
"rawSpec": "1.1.0",
"saveSpec": null,
"fetchSpec": "1.1.0"
},
"_requiredBy": [
"/babel-cli/normalize-path"
],
"_resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
"_spec": "1.1.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "darsain"
},
"bugs": {
"url": "https://github.com/darsain/remove-trailing-separator/issues"
},
"name": "remove-trailing-separator",
"version": "1.1.0",
"description": "Removes separators from the end of the string.",
"devDependencies": {
"ava": "^0.16.0",
"coveralls": "^2.11.14",
"nyc": "^8.3.0",
"xo": "^0.16.0"
},
"main": "index.js",
"files": [
"index.js"
],
"homepage": "https://github.com/darsain/remove-trailing-separator#readme",
"scripts": {
"lint": "xo",
"pretest": "npm run lint",
"test": "nyc ava",
"report": "nyc report --reporter=html"
},
"repository": {
"type": "git",
"url": "git+https://github.com/darsain/remove-trailing-separator.git"
},
"keywords": [
"remove",
"strip",
"trailing",
"separator"
],
"author": "darsain",
"license": "ISC",
"main": "index.js",
"name": "remove-trailing-separator",
"repository": {
"type": "git",
"url": "git+https://github.com/darsain/remove-trailing-separator.git"
"bugs": {
"url": "https://github.com/darsain/remove-trailing-separator/issues"
},
"scripts": {
"lint": "xo",
"pretest": "npm run lint",
"report": "nyc report --reporter=html",
"test": "nyc ava"
},
"version": "1.1.0"
"homepage": "https://github.com/darsain/remove-trailing-separator#readme",
"devDependencies": {
"ava": "^0.16.0",
"coveralls": "^2.11.14",
"nyc": "^8.3.0",
"xo": "^0.16.0"
}
}

View File

@@ -1,74 +1,44 @@
{
"_args": [
[
"repeat-element@1.1.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "repeat-element@1.1.2",
"_id": "repeat-element@1.1.2",
"_inBundle": false,
"_integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=",
"_location": "/babel-cli/repeat-element",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "repeat-element@1.1.2",
"name": "repeat-element",
"escapedName": "repeat-element",
"rawSpec": "1.1.2",
"saveSpec": null,
"fetchSpec": "1.1.2"
},
"_requiredBy": [
"/babel-cli/braces",
"/babel-cli/fill-range"
],
"_resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz",
"_spec": "1.1.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "repeat-element",
"description": "Create an array by repeating the given value n times.",
"version": "1.1.2",
"homepage": "https://github.com/jonschlinkert/repeat-element",
"author": {
"name": "Jon Schlinkert",
"url": "https://github.com/jonschlinkert"
},
"repository": {
"type": "git",
"url": "git://github.com/jonschlinkert/repeat-element.git"
},
"bugs": {
"url": "https://github.com/jonschlinkert/repeat-element/issues"
},
"description": "Create an array by repeating the given value n times.",
"devDependencies": {
"benchmarked": "^0.1.4",
"chalk": "^1.0.0",
"glob": "^5.0.5",
"minimist": "^1.1.1",
"mocha": "^2.2.4"
"license": {
"type": "MIT",
"url": "https://github.com/jonschlinkert/repeat-element/blob/master/LICENSE"
},
"main": "index.js",
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "mocha"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/repeat-element",
"keywords": [
"array",
"element",
"repeat",
"string"
],
"license": {
"type": "MIT",
"url": "https://github.com/jonschlinkert/repeat-element/blob/master/LICENSE"
},
"main": "index.js",
"name": "repeat-element",
"repository": {
"type": "git",
"url": "git://github.com/jonschlinkert/repeat-element.git"
},
"scripts": {
"test": "mocha"
},
"version": "1.1.2"
"devDependencies": {
"benchmarked": "^0.1.4",
"chalk": "^1.0.0",
"glob": "^5.0.5",
"minimist": "^1.1.1",
"mocha": "^2.2.4"
}
}

View File

@@ -1,69 +1,31 @@
{
"_args": [
[
"repeat-string@1.6.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
"name": "repeat-string",
"description": "Repeat the given string n times. Fastest implementation for repeating a string.",
"version": "1.6.1",
"homepage": "https://github.com/jonschlinkert/repeat-string",
"author": "Jon Schlinkert (http://github.com/jonschlinkert)",
"contributors": [
"Brian Woodward <brian.woodward@gmail.com> (https://github.com/doowb)",
"Jon Schlinkert <jon.schlinkert@sellside.com> (http://twitter.com/jonschlinkert)",
"Linus Unnebäck <linus@folkdatorn.se> (http://linus.unnebäck.se)",
"Thijs Busser <tbusser@gmail.com> (http://tbusser.net)",
"Titus <tituswormer@gmail.com> (wooorm.com)"
],
"_development": true,
"_from": "repeat-string@1.6.1",
"_id": "repeat-string@1.6.1",
"_inBundle": false,
"_integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
"_location": "/babel-cli/repeat-string",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "repeat-string@1.6.1",
"name": "repeat-string",
"escapedName": "repeat-string",
"rawSpec": "1.6.1",
"saveSpec": null,
"fetchSpec": "1.6.1"
},
"_requiredBy": [
"/babel-cli/fill-range"
],
"_resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
"_spec": "1.6.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Jon Schlinkert",
"url": "http://github.com/jonschlinkert"
},
"repository": "jonschlinkert/repeat-string",
"bugs": {
"url": "https://github.com/jonschlinkert/repeat-string/issues"
},
"contributors": [
{
"name": "Brian Woodward",
"email": "brian.woodward@gmail.com",
"url": "https://github.com/doowb"
},
{
"name": "Jon Schlinkert",
"email": "jon.schlinkert@sellside.com",
"url": "http://twitter.com/jonschlinkert"
},
{
"name": "Linus Unnebäck",
"email": "linus@folkdatorn.se",
"url": "http://linus.unnebäck.se"
},
{
"name": "Thijs Busser",
"email": "tbusser@gmail.com",
"url": "http://tbusser.net"
},
{
"name": "Titus",
"email": "tituswormer@gmail.com",
"url": "wooorm.com"
}
"license": "MIT",
"files": [
"index.js"
],
"description": "Repeat the given string n times. Fastest implementation for repeating a string.",
"main": "index.js",
"engines": {
"node": ">=0.10"
},
"scripts": {
"test": "mocha"
},
"devDependencies": {
"ansi-cyan": "^0.1.1",
"benchmarked": "^0.2.5",
@@ -74,13 +36,6 @@
"text-table": "^0.2.0",
"yargs-parser": "^4.0.2"
},
"engines": {
"node": ">=0.10"
},
"files": [
"index.js"
],
"homepage": "https://github.com/jonschlinkert/repeat-string",
"keywords": [
"fast",
"fastest",
@@ -98,16 +53,6 @@
"string",
"times"
],
"license": "MIT",
"main": "index.js",
"name": "repeat-string",
"repository": {
"type": "git",
"url": "git+https://github.com/jonschlinkert/repeat-string.git"
},
"scripts": {
"test": "mocha"
},
"verb": {
"toc": false,
"layout": "default",
@@ -128,6 +73,5 @@
"reflinks": [
"verb"
]
},
"version": "1.6.1"
}
}

View File

@@ -1,56 +1,23 @@
{
"_args": [
[
"repeating@2.0.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "repeating@2.0.1",
"_id": "repeating@2.0.1",
"_inBundle": false,
"_integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
"_location": "/babel-cli/repeating",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "repeating@2.0.1",
"name": "repeating",
"escapedName": "repeating",
"rawSpec": "2.0.1",
"saveSpec": null,
"fetchSpec": "2.0.1"
},
"_requiredBy": [
"/babel-cli/detect-indent"
],
"_resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
"_spec": "2.0.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "repeating",
"version": "2.0.1",
"description": "Repeat a string - fast",
"license": "MIT",
"repository": "sindresorhus/repeating",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/repeating/issues"
},
"dependencies": {
"is-finite": "^1.0.0"
},
"description": "Repeat a string - fast",
"devDependencies": {
"ava": "*",
"xo": "*"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/repeating#readme",
"keywords": [
"repeat",
"string",
@@ -60,14 +27,11 @@
"fill",
"pad"
],
"license": "MIT",
"name": "repeating",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/repeating.git"
"dependencies": {
"is-finite": "^1.0.0"
},
"scripts": {
"test": "xo && ava"
},
"version": "2.0.1"
"devDependencies": {
"ava": "*",
"xo": "*"
}
}

View File

@@ -1,34 +1,7 @@
{
"_args": [
[
"safe-buffer@5.1.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "safe-buffer@5.1.1",
"_id": "safe-buffer@5.1.1",
"_inBundle": false,
"_integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
"_location": "/babel-cli/safe-buffer",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "safe-buffer@5.1.1",
"name": "safe-buffer",
"escapedName": "safe-buffer",
"rawSpec": "5.1.1",
"saveSpec": null,
"fetchSpec": "5.1.1"
},
"_requiredBy": [
"/babel-cli/readable-stream",
"/babel-cli/string_decoder"
],
"_resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
"_spec": "5.1.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "safe-buffer",
"description": "Safer Node.js Buffer API",
"version": "5.1.1",
"author": {
"name": "Feross Aboukhadijeh",
"email": "feross@feross.org",
@@ -37,7 +10,6 @@
"bugs": {
"url": "https://github.com/feross/safe-buffer/issues"
},
"description": "Safer Node.js Buffer API",
"devDependencies": {
"standard": "*",
"tape": "^4.0.0",
@@ -55,13 +27,11 @@
],
"license": "MIT",
"main": "index.js",
"name": "safe-buffer",
"repository": {
"type": "git",
"url": "git://github.com/feross/safe-buffer.git"
},
"scripts": {
"test": "standard && tape test.js"
},
"version": "5.1.1"
}
}

View File

@@ -1,54 +1,23 @@
{
"_args": [
[
"set-immediate-shim@1.0.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "set-immediate-shim@1.0.1",
"_id": "set-immediate-shim@1.0.1",
"_inBundle": false,
"_integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
"_location": "/babel-cli/set-immediate-shim",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "set-immediate-shim@1.0.1",
"name": "set-immediate-shim",
"escapedName": "set-immediate-shim",
"rawSpec": "1.0.1",
"saveSpec": null,
"fetchSpec": "1.0.1"
},
"_requiredBy": [
"/babel-cli/readdirp"
],
"_resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
"_spec": "1.0.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "set-immediate-shim",
"version": "1.0.1",
"description": "Simple setImmediate shim",
"license": "MIT",
"repository": "sindresorhus/set-immediate-shim",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/set-immediate-shim/issues"
},
"description": "Simple setImmediate shim",
"devDependencies": {
"ava": "0.0.4",
"require-uncached": "^1.0.2"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "node test.js"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/set-immediate-shim#readme",
"keywords": [
"setImmediate",
"immediate",
@@ -58,14 +27,8 @@
"polyfill",
"ponyfill"
],
"license": "MIT",
"name": "set-immediate-shim",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/set-immediate-shim.git"
},
"scripts": {
"test": "node test.js"
},
"version": "1.0.1"
"devDependencies": {
"ava": "0.0.4",
"require-uncached": "^1.0.2"
}
}

View File

@@ -1,53 +1,7 @@
{
"_args": [
[
"slash@1.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "slash@1.0.0",
"_id": "slash@1.0.0",
"_inBundle": false,
"_integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
"_location": "/babel-cli/slash",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "slash@1.0.0",
"name": "slash",
"escapedName": "slash",
"rawSpec": "1.0.0",
"saveSpec": null,
"fetchSpec": "1.0.0"
},
"_requiredBy": [
"/babel-cli",
"/babel-cli/babel-core"
],
"_resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
"_spec": "1.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "http://sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/slash/issues"
},
"name": "slash",
"version": "1.0.0",
"description": "Convert Windows backslash paths to slash paths",
"devDependencies": {
"mocha": "*"
},
"engines": {
"node": ">=0.10.0"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/slash#readme",
"keywords": [
"path",
"seperator",
@@ -57,14 +11,23 @@
"windows",
"win"
],
"license": "MIT",
"name": "slash",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/slash.git"
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "http://sindresorhus.com"
},
"repository": "sindresorhus/slash",
"scripts": {
"test": "mocha"
},
"version": "1.0.0"
"devDependencies": {
"mocha": "*"
},
"engines": {
"node": ">=0.10.0"
},
"license": "MIT",
"files": [
"index.js"
]
}

View File

@@ -1,40 +1,17 @@
{
"_args": [
[
"source-map-support@0.4.18",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "source-map-support@0.4.18",
"_id": "source-map-support@0.4.18",
"_inBundle": false,
"_integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
"_location": "/babel-cli/source-map-support",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "source-map-support@0.4.18",
"name": "source-map-support",
"escapedName": "source-map-support",
"rawSpec": "0.4.18",
"saveSpec": null,
"fetchSpec": "0.4.18"
},
"_requiredBy": [
"/babel-cli/babel-register"
],
"_resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
"_spec": "0.4.18",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"bugs": {
"url": "https://github.com/evanw/node-source-map-support/issues"
"name": "source-map-support",
"description": "Fixes stack traces for files with source maps",
"version": "0.4.18",
"main": "./source-map-support.js",
"scripts": {
"build": "node build.js",
"serve-tests": "http-server -p 1336",
"prepublish": "npm run build",
"test": "mocha"
},
"dependencies": {
"source-map": "^0.5.6"
},
"description": "Fixes stack traces for files with source maps",
"devDependencies": {
"browserify": "3.44.2",
"coffee-script": "1.7.1",
@@ -42,19 +19,12 @@
"mocha": "1.18.2",
"webpack": "^1.13.3"
},
"homepage": "https://github.com/evanw/node-source-map-support#readme",
"license": "MIT",
"main": "./source-map-support.js",
"name": "source-map-support",
"repository": {
"type": "git",
"url": "git+https://github.com/evanw/node-source-map-support.git"
"url": "https://github.com/evanw/node-source-map-support"
},
"scripts": {
"build": "node build.js",
"prepublish": "npm run build",
"serve-tests": "http-server -p 1336",
"test": "mocha"
"bugs": {
"url": "https://github.com/evanw/node-source-map-support/issues"
},
"version": "0.4.18"
"license": "MIT"
}

View File

@@ -1,197 +1,52 @@
{
"_args": [
[
"source-map@0.5.7",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "source-map@0.5.7",
"_id": "source-map@0.5.7",
"_inBundle": false,
"_integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
"_location": "/babel-cli/source-map",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "source-map@0.5.7",
"name": "source-map",
"escapedName": "source-map",
"rawSpec": "0.5.7",
"saveSpec": null,
"fetchSpec": "0.5.7"
},
"_requiredBy": [
"/babel-cli",
"/babel-cli/babel-core",
"/babel-cli/babel-generator",
"/babel-cli/source-map-support"
],
"_resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
"_spec": "0.5.7",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Nick Fitzgerald",
"email": "nfitzgerald@mozilla.com"
},
"bugs": {
"url": "https://github.com/mozilla/source-map/issues"
},
"contributors": [
{
"name": "Tobias Koppers",
"email": "tobias.koppers@googlemail.com"
},
{
"name": "Duncan Beevers",
"email": "duncan@dweebd.com"
},
{
"name": "Stephen Crane",
"email": "scrane@mozilla.com"
},
{
"name": "Ryan Seddon",
"email": "seddon.ryan@gmail.com"
},
{
"name": "Miles Elam",
"email": "miles.elam@deem.com"
},
{
"name": "Mihai Bazon",
"email": "mihai.bazon@gmail.com"
},
{
"name": "Michael Ficarra",
"email": "github.public.email@michael.ficarra.me"
},
{
"name": "Todd Wolfson",
"email": "todd@twolfson.com"
},
{
"name": "Alexander Solovyov",
"email": "alexander@solovyov.net"
},
{
"name": "Felix Gnass",
"email": "fgnass@gmail.com"
},
{
"name": "Conrad Irwin",
"email": "conrad.irwin@gmail.com"
},
{
"name": "usrbincc",
"email": "usrbincc@yahoo.com"
},
{
"name": "David Glasser",
"email": "glasser@davidglasser.net"
},
{
"name": "Chase Douglas",
"email": "chase@newrelic.com"
},
{
"name": "Evan Wallace",
"email": "evan.exe@gmail.com"
},
{
"name": "Heather Arthur",
"email": "fayearthur@gmail.com"
},
{
"name": "Hugh Kennedy",
"email": "hughskennedy@gmail.com"
},
{
"name": "David Glasser",
"email": "glasser@davidglasser.net"
},
{
"name": "Simon Lydell",
"email": "simon.lydell@gmail.com"
},
{
"name": "Jmeas Smith",
"email": "jellyes2@gmail.com"
},
{
"name": "Michael Z Goddard",
"email": "mzgoddard@gmail.com"
},
{
"name": "azu",
"email": "azu@users.noreply.github.com"
},
{
"name": "John Gozde",
"email": "john@gozde.ca"
},
{
"name": "Adam Kirkton",
"email": "akirkton@truefitinnovation.com"
},
{
"name": "Chris Montgomery",
"email": "christopher.montgomery@dowjones.com"
},
{
"name": "J. Ryan Stinnett",
"email": "jryans@gmail.com"
},
{
"name": "Jack Herrington",
"email": "jherrington@walmartlabs.com"
},
{
"name": "Chris Truter",
"email": "jeffpalentine@gmail.com"
},
{
"name": "Daniel Espeset",
"email": "daniel@danielespeset.com"
},
{
"name": "Jamie Wong",
"email": "jamie.lf.wong@gmail.com"
},
{
"name": "Eddy Bruël",
"email": "ejpbruel@mozilla.com"
},
{
"name": "Hawken Rives",
"email": "hawkrives@gmail.com"
},
{
"name": "Gilad Peleg",
"email": "giladp007@gmail.com"
},
{
"name": "djchie",
"email": "djchie.dev@gmail.com"
},
{
"name": "Gary Ye",
"email": "garysye@gmail.com"
},
{
"name": "Nicolas Lalevée",
"email": "nicolas.lalevee@hibnet.org"
}
],
"name": "source-map",
"description": "Generates and consumes source maps",
"devDependencies": {
"doctoc": "^0.15.0",
"webpack": "^1.12.0"
},
"engines": {
"node": ">=0.10.0"
"version": "0.5.7",
"homepage": "https://github.com/mozilla/source-map",
"author": "Nick Fitzgerald <nfitzgerald@mozilla.com>",
"contributors": [
"Tobias Koppers <tobias.koppers@googlemail.com>",
"Duncan Beevers <duncan@dweebd.com>",
"Stephen Crane <scrane@mozilla.com>",
"Ryan Seddon <seddon.ryan@gmail.com>",
"Miles Elam <miles.elam@deem.com>",
"Mihai Bazon <mihai.bazon@gmail.com>",
"Michael Ficarra <github.public.email@michael.ficarra.me>",
"Todd Wolfson <todd@twolfson.com>",
"Alexander Solovyov <alexander@solovyov.net>",
"Felix Gnass <fgnass@gmail.com>",
"Conrad Irwin <conrad.irwin@gmail.com>",
"usrbincc <usrbincc@yahoo.com>",
"David Glasser <glasser@davidglasser.net>",
"Chase Douglas <chase@newrelic.com>",
"Evan Wallace <evan.exe@gmail.com>",
"Heather Arthur <fayearthur@gmail.com>",
"Hugh Kennedy <hughskennedy@gmail.com>",
"David Glasser <glasser@davidglasser.net>",
"Simon Lydell <simon.lydell@gmail.com>",
"Jmeas Smith <jellyes2@gmail.com>",
"Michael Z Goddard <mzgoddard@gmail.com>",
"azu <azu@users.noreply.github.com>",
"John Gozde <john@gozde.ca>",
"Adam Kirkton <akirkton@truefitinnovation.com>",
"Chris Montgomery <christopher.montgomery@dowjones.com>",
"J. Ryan Stinnett <jryans@gmail.com>",
"Jack Herrington <jherrington@walmartlabs.com>",
"Chris Truter <jeffpalentine@gmail.com>",
"Daniel Espeset <daniel@danielespeset.com>",
"Jamie Wong <jamie.lf.wong@gmail.com>",
"Eddy Bruël <ejpbruel@mozilla.com>",
"Hawken Rives <hawkrives@gmail.com>",
"Gilad Peleg <giladp007@gmail.com>",
"djchie <djchie.dev@gmail.com>",
"Gary Ye <garysye@gmail.com>",
"Nicolas Lalevée <nicolas.lalevee@hibnet.org>"
],
"repository": {
"type": "git",
"url": "http://github.com/mozilla/source-map.git"
},
"main": "./source-map.js",
"files": [
"source-map.js",
"lib/",
@@ -200,19 +55,18 @@
"dist/source-map.min.js",
"dist/source-map.min.js.map"
],
"homepage": "https://github.com/mozilla/source-map",
"license": "BSD-3-Clause",
"main": "./source-map.js",
"name": "source-map",
"repository": {
"type": "git",
"url": "git+ssh://git@github.com/mozilla/source-map.git"
"engines": {
"node": ">=0.10.0"
},
"license": "BSD-3-Clause",
"scripts": {
"build": "webpack --color",
"test": "npm run build && node test/run-tests.js",
"build": "webpack --color",
"toc": "doctoc --title '## Table of Contents' README.md && doctoc --title '## Table of Contents' CONTRIBUTING.md"
},
"typings": "source-map",
"version": "0.5.7"
"devDependencies": {
"doctoc": "^0.15.0",
"webpack": "^1.12.0"
},
"typings": "source-map"
}

View File

@@ -1,45 +1,22 @@
{
"_args": [
[
"string_decoder@1.0.3",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "string_decoder@1.0.3",
"_id": "string_decoder@1.0.3",
"_inBundle": false,
"_integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
"_location": "/babel-cli/string_decoder",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "string_decoder@1.0.3",
"name": "string_decoder",
"escapedName": "string_decoder",
"rawSpec": "1.0.3",
"saveSpec": null,
"fetchSpec": "1.0.3"
},
"_requiredBy": [
"/babel-cli/readable-stream"
],
"_resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
"_spec": "1.0.3",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"bugs": {
"url": "https://github.com/rvagg/string_decoder/issues"
},
"name": "string_decoder",
"version": "1.0.3",
"description": "The string_decoder module from Node core",
"main": "lib/string_decoder.js",
"dependencies": {
"safe-buffer": "~5.1.0"
},
"description": "The string_decoder module from Node core",
"devDependencies": {
"babel-polyfill": "^6.23.0",
"tap": "~0.4.8"
},
"scripts": {
"test": "tap test/parallel/*.js && node test/verify-dependencies"
},
"repository": {
"type": "git",
"url": "git://github.com/rvagg/string_decoder.git"
},
"homepage": "https://github.com/rvagg/string_decoder",
"keywords": [
"string",
@@ -47,15 +24,5 @@
"browser",
"browserify"
],
"license": "MIT",
"main": "lib/string_decoder.js",
"name": "string_decoder",
"repository": {
"type": "git",
"url": "git://github.com/rvagg/string_decoder.git"
},
"scripts": {
"test": "tap test/parallel/*.js && node test/verify-dependencies"
},
"version": "1.0.3"
"license": "MIT"
}

View File

@@ -1,56 +1,28 @@
{
"_args": [
[
"strip-ansi@3.0.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "strip-ansi@3.0.1",
"_id": "strip-ansi@3.0.1",
"_inBundle": false,
"_integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"_location": "/babel-cli/strip-ansi",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "strip-ansi@3.0.1",
"name": "strip-ansi",
"escapedName": "strip-ansi",
"rawSpec": "3.0.1",
"saveSpec": null,
"fetchSpec": "3.0.1"
},
"_requiredBy": [
"/babel-cli/chalk"
],
"_resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"_spec": "3.0.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "strip-ansi",
"version": "3.0.1",
"description": "Strip ANSI escape codes",
"license": "MIT",
"repository": "chalk/strip-ansi",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/chalk/strip-ansi/issues"
},
"dependencies": {
"ansi-regex": "^2.0.0"
},
"description": "Strip ANSI escape codes",
"devDependencies": {
"ava": "*",
"xo": "*"
},
"maintainers": [
"Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)",
"Joshua Boy Nicolai Appelman <joshua@jbna.nl> (jbna.nl)",
"JD Ballard <i.am.qix@gmail.com> (github.com/qix-)"
],
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/chalk/strip-ansi#readme",
"keywords": [
"strip",
"trim",
@@ -75,31 +47,11 @@
"command-line",
"text"
],
"license": "MIT",
"maintainers": [
{
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
{
"name": "Joshua Boy Nicolai Appelman",
"email": "joshua@jbna.nl",
"url": "jbna.nl"
},
{
"name": "JD Ballard",
"email": "i.am.qix@gmail.com",
"url": "github.com/qix-"
}
],
"name": "strip-ansi",
"repository": {
"type": "git",
"url": "git+https://github.com/chalk/strip-ansi.git"
"dependencies": {
"ansi-regex": "^2.0.0"
},
"scripts": {
"test": "xo && ava"
},
"version": "3.0.1"
"devDependencies": {
"ava": "*",
"xo": "*"
}
}

View File

@@ -1,53 +1,27 @@
{
"_args": [
[
"supports-color@2.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "supports-color@2.0.0",
"_id": "supports-color@2.0.0",
"_inBundle": false,
"_integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
"_location": "/babel-cli/supports-color",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "supports-color@2.0.0",
"name": "supports-color",
"escapedName": "supports-color",
"rawSpec": "2.0.0",
"saveSpec": null,
"fetchSpec": "2.0.0"
},
"_requiredBy": [
"/babel-cli/chalk"
],
"_resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
"_spec": "2.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "supports-color",
"version": "2.0.0",
"description": "Detect whether a terminal supports color",
"license": "MIT",
"repository": "chalk/supports-color",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/chalk/supports-color/issues"
},
"description": "Detect whether a terminal supports color",
"devDependencies": {
"mocha": "*",
"require-uncached": "^1.0.2"
},
"maintainers": [
"Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)",
"Joshua Appelman <jappelman@xebia.com> (jbnicolai.com)"
],
"engines": {
"node": ">=0.8.0"
},
"scripts": {
"test": "mocha"
},
"files": [
"index.js"
],
"homepage": "https://github.com/chalk/supports-color#readme",
"keywords": [
"color",
"colour",
@@ -68,26 +42,8 @@
"capability",
"detect"
],
"license": "MIT",
"maintainers": [
{
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
{
"name": "Joshua Appelman",
"email": "jappelman@xebia.com",
"url": "jbnicolai.com"
}
],
"name": "supports-color",
"repository": {
"type": "git",
"url": "git+https://github.com/chalk/supports-color.git"
},
"scripts": {
"test": "mocha"
},
"version": "2.0.0"
"devDependencies": {
"mocha": "*",
"require-uncached": "^1.0.2"
}
}

View File

@@ -1,52 +1,23 @@
{
"_args": [
[
"to-fast-properties@1.0.3",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "to-fast-properties@1.0.3",
"_id": "to-fast-properties@1.0.3",
"_inBundle": false,
"_integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=",
"_location": "/babel-cli/to-fast-properties",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "to-fast-properties@1.0.3",
"name": "to-fast-properties",
"escapedName": "to-fast-properties",
"rawSpec": "1.0.3",
"saveSpec": null,
"fetchSpec": "1.0.3"
},
"_requiredBy": [
"/babel-cli/babel-types"
],
"_resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
"_spec": "1.0.3",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "to-fast-properties",
"version": "1.0.3",
"description": "Force V8 to use fast properties for an object",
"license": "MIT",
"repository": "sindresorhus/to-fast-properties",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/to-fast-properties/issues"
},
"description": "Force V8 to use fast properties for an object",
"devDependencies": {
"ava": "0.0.4"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "node --allow-natives-syntax test.js"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/to-fast-properties#readme",
"keywords": [
"object",
"obj",
@@ -58,14 +29,7 @@
"convert",
"mode"
],
"license": "MIT",
"name": "to-fast-properties",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/to-fast-properties.git"
},
"scripts": {
"test": "node --allow-natives-syntax test.js"
},
"version": "1.0.3"
"devDependencies": {
"ava": "0.0.4"
}
}

View File

@@ -1,52 +1,23 @@
{
"_args": [
[
"trim-right@1.0.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "trim-right@1.0.1",
"_id": "trim-right@1.0.1",
"_inBundle": false,
"_integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=",
"_location": "/babel-cli/trim-right",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "trim-right@1.0.1",
"name": "trim-right",
"escapedName": "trim-right",
"rawSpec": "1.0.1",
"saveSpec": null,
"fetchSpec": "1.0.1"
},
"_requiredBy": [
"/babel-cli/babel-generator"
],
"_resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
"_spec": "1.0.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "trim-right",
"version": "1.0.1",
"description": "Similar to String#trim() but removes only whitespace on the right",
"license": "MIT",
"repository": "sindresorhus/trim-right",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/trim-right/issues"
},
"description": "Similar to String#trim() but removes only whitespace on the right",
"devDependencies": {
"ava": "0.0.4"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "node test.js"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/trim-right#readme",
"keywords": [
"trim",
"right",
@@ -60,14 +31,7 @@
"remove",
"delete"
],
"license": "MIT",
"name": "trim-right",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/trim-right.git"
},
"scripts": {
"test": "node test.js"
},
"version": "1.0.1"
"devDependencies": {
"ava": "0.0.4"
}
}

View File

@@ -1,56 +1,27 @@
{
"_args": [
[
"user-home@1.1.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "user-home@1.1.1",
"_id": "user-home@1.1.1",
"_inBundle": false,
"_integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=",
"_location": "/babel-cli/user-home",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "user-home@1.1.1",
"name": "user-home",
"escapedName": "user-home",
"rawSpec": "1.1.1",
"saveSpec": null,
"fetchSpec": "1.1.1"
"name": "user-home",
"version": "1.1.1",
"description": "Get the path to the user home directory",
"license": "MIT",
"repository": "sindresorhus/user-home",
"bin": {
"user-home": "cli.js"
},
"_requiredBy": [
"/babel-cli/v8flags"
],
"_resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
"_spec": "1.1.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "http://sindresorhus.com"
},
"bin": {
"user-home": "cli.js"
},
"bugs": {
"url": "https://github.com/sindresorhus/user-home/issues"
},
"description": "Get the path to the user home directory",
"devDependencies": {
"ava": "0.0.3"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "node test.js"
},
"files": [
"index.js",
"cli.js"
],
"homepage": "https://github.com/sindresorhus/user-home#readme",
"keywords": [
"cli",
"bin",
@@ -62,14 +33,7 @@
"folder",
"path"
],
"license": "MIT",
"name": "user-home",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/user-home.git"
},
"scripts": {
"test": "node test.js"
},
"version": "1.1.1"
"devDependencies": {
"ava": "0.0.3"
}
}

View File

@@ -1,45 +1,16 @@
{
"_args": [
[
"util-deprecate@1.0.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "util-deprecate@1.0.2",
"_id": "util-deprecate@1.0.2",
"_inBundle": false,
"_integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
"_location": "/babel-cli/util-deprecate",
"_optional": true,
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "util-deprecate@1.0.2",
"name": "util-deprecate",
"escapedName": "util-deprecate",
"rawSpec": "1.0.2",
"saveSpec": null,
"fetchSpec": "1.0.2"
},
"_requiredBy": [
"/babel-cli/readable-stream"
],
"_resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"_spec": "1.0.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Nathan Rajlich",
"email": "nathan@tootallnate.net",
"url": "http://n8.io/"
},
"browser": "browser.js",
"bugs": {
"url": "https://github.com/TooTallNate/util-deprecate/issues"
},
"name": "util-deprecate",
"version": "1.0.2",
"description": "The Node.js `util.deprecate()` function with browser support",
"homepage": "https://github.com/TooTallNate/util-deprecate",
"main": "node.js",
"browser": "browser.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "git://github.com/TooTallNate/util-deprecate.git"
},
"keywords": [
"util",
"deprecate",
@@ -47,15 +18,10 @@
"browser",
"node"
],
"author": "Nathan Rajlich <nathan@tootallnate.net> (http://n8.io/)",
"license": "MIT",
"main": "node.js",
"name": "util-deprecate",
"repository": {
"type": "git",
"url": "git://github.com/TooTallNate/util-deprecate.git"
"bugs": {
"url": "https://github.com/TooTallNate/util-deprecate/issues"
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"version": "1.0.2"
"homepage": "https://github.com/TooTallNate/util-deprecate"
}

View File

@@ -1,71 +1,42 @@
{
"_args": [
[
"v8flags@2.1.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "v8flags@2.1.1",
"_id": "v8flags@2.1.1",
"_inBundle": false,
"_integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=",
"_location": "/babel-cli/v8flags",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "v8flags@2.1.1",
"name": "v8flags",
"escapedName": "v8flags",
"rawSpec": "2.1.1",
"saveSpec": null,
"fetchSpec": "2.1.1"
},
"_requiredBy": [
"/babel-cli"
],
"_resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz",
"_spec": "2.1.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "v8flags",
"description": "Get available v8 flags.",
"version": "2.1.1",
"homepage": "https://github.com/tkellen/node-v8flags",
"author": {
"name": "Tyler Kellen",
"url": "http://goingslowly.com/"
},
"repository": {
"type": "git",
"url": "git://github.com/tkellen/node-v8flags.git"
},
"bugs": {
"url": "https://github.com/tkellen/node-v8flags/issues"
},
"dependencies": {
"user-home": "^1.1.1"
},
"description": "Get available v8 flags.",
"devDependencies": {
"async": "^0.9.0",
"chai": "~1.9.1",
"mocha": "~1.21.4"
},
"engines": {
"node": ">= 0.10.0"
},
"homepage": "https://github.com/tkellen/node-v8flags",
"keywords": [
"v8 flags",
"harmony flags"
],
"licenses": [
{
"type": "MIT",
"url": "https://github.com/tkellen/node-v8flags/blob/master/LICENSE"
}
],
"main": "index.js",
"name": "v8flags",
"repository": {
"type": "git",
"url": "git://github.com/tkellen/node-v8flags.git"
},
"scripts": {
"test": "_mocha -R spec test.js"
},
"version": "2.1.1"
"main": "index.js",
"engines": {
"node": ">= 0.10.0"
},
"keywords": [
"v8 flags",
"harmony flags"
],
"devDependencies": {
"async": "^0.9.0",
"chai": "~1.9.1",
"mocha": "~1.21.4"
},
"dependencies": {
"user-home": "^1.1.1"
}
}

View File

@@ -1,63 +1,29 @@
{
"_args": [
[
"wrappy@1.0.2",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_development": true,
"_from": "wrappy@1.0.2",
"_id": "wrappy@1.0.2",
"_inBundle": false,
"_integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"_location": "/babel-cli/wrappy",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "wrappy@1.0.2",
"name": "wrappy",
"escapedName": "wrappy",
"rawSpec": "1.0.2",
"saveSpec": null,
"fetchSpec": "1.0.2"
},
"_requiredBy": [
"/babel-cli/inflight",
"/babel-cli/once"
],
"_resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"_spec": "1.0.2",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Isaac Z. Schlueter",
"email": "i@izs.me",
"url": "http://blog.izs.me/"
},
"bugs": {
"url": "https://github.com/npm/wrappy/issues"
},
"dependencies": {},
"name": "wrappy",
"version": "1.0.2",
"description": "Callback wrapping utility",
"devDependencies": {
"tap": "^2.3.1"
},
"directories": {
"test": "test"
},
"main": "wrappy.js",
"files": [
"wrappy.js"
],
"homepage": "https://github.com/npm/wrappy",
"license": "ISC",
"main": "wrappy.js",
"name": "wrappy",
"repository": {
"type": "git",
"url": "git+https://github.com/npm/wrappy.git"
"directories": {
"test": "test"
},
"dependencies": {},
"devDependencies": {
"tap": "^2.3.1"
},
"scripts": {
"test": "tap --coverage test/*.js"
},
"version": "1.0.2"
"repository": {
"type": "git",
"url": "https://github.com/npm/wrappy"
},
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
"license": "ISC",
"bugs": {
"url": "https://github.com/npm/wrappy/issues"
},
"homepage": "https://github.com/npm/wrappy"
}

View File

@@ -1,48 +1,7 @@
{
"_args": [
[
"big.js@3.2.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "big.js@3.2.0",
"_id": "big.js@3.2.0",
"_inBundle": false,
"_integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
"_location": "/babel-loader/big.js",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "big.js@3.2.0",
"name": "big.js",
"escapedName": "big.js",
"rawSpec": "3.2.0",
"saveSpec": null,
"fetchSpec": "3.2.0"
},
"_requiredBy": [
"/babel-loader/loader-utils"
],
"_resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz",
"_spec": "3.2.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Michael Mclaughlin",
"email": "M8ch88l@gmail.com"
},
"bugs": {
"url": "https://github.com/MikeMcl/big.js/issues"
},
"name": "big.js",
"description": "A small, fast, easy-to-use library for arbitrary-precision decimal arithmetic",
"engines": {
"node": "*"
},
"files": [
"big.js",
"big.min.js"
],
"homepage": "https://github.com/MikeMcl/big.js#readme",
"version": "3.2.0",
"keywords": [
"arbitrary",
"precision",
@@ -57,16 +16,28 @@
"bigint",
"bignum"
],
"license": "MIT",
"main": "big.js",
"name": "big.js",
"repository": {
"repository" : {
"type": "git",
"url": "git+https://github.com/MikeMcl/big.js.git"
"url": "https://github.com/MikeMcl/big.js.git"
},
"main": "big.js",
"author": {
"name": "Michael Mclaughlin",
"email": "M8ch88l@gmail.com"
},
"bugs": {
"url": "https://github.com/MikeMcl/big.js/issues"
},
"engines": {
"node": "*"
},
"license": "MIT",
"scripts": {
"build": "uglifyjs big.js --source-map doc/big.js.map -c -m -o big.min.js --preamble \"/* big.js v3.2.0 https://github.com/MikeMcl/big.js/LICENCE */\"",
"test": "node ./test/every-test.js"
"test": "node ./test/every-test.js",
"build": "uglifyjs big.js --source-map doc/big.js.map -c -m -o big.min.js --preamble \"/* big.js v3.2.0 https://github.com/MikeMcl/big.js/LICENCE */\""
},
"version": "3.2.0"
"files": [
"big.js",
"big.min.js"
]
}

View File

@@ -1,49 +1,19 @@
{
"_args": [
[
"commondir@1.0.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "commondir@1.0.1",
"_id": "commondir@1.0.1",
"_inBundle": false,
"_integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
"_location": "/babel-loader/commondir",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "commondir@1.0.1",
"name": "commondir",
"escapedName": "commondir",
"rawSpec": "1.0.1",
"saveSpec": null,
"fetchSpec": "1.0.1"
},
"_requiredBy": [
"/babel-loader/find-cache-dir"
],
"_resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
"_spec": "1.0.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"bugs": {
"url": "https://github.com/substack/node-commondir/issues"
},
"dependencies": {},
"name": "commondir",
"version": "1.0.1",
"description": "compute the closest common parent for file paths",
"main": "index.js",
"dependencies": {},
"devDependencies": {
"tape": "^3.5.0"
},
"engine": {
"node": ">=0.4"
"scripts": {
"test": "tape test/*.js"
},
"repository": {
"type": "git",
"url": "http://github.com/substack/node-commondir.git"
},
"homepage": "https://github.com/substack/node-commondir#readme",
"keywords": [
"common",
"path",
@@ -52,15 +22,13 @@
"parent",
"root"
],
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"license": "MIT",
"main": "index.js",
"name": "commondir",
"repository": {
"type": "git",
"url": "git+ssh://git@github.com/substack/node-commondir.git"
},
"scripts": {
"test": "tape test/*.js"
},
"version": "1.0.1"
"engine": {
"node": ">=0.4"
}
}

View File

@@ -1,41 +1,28 @@
{
"_args": [
[
"emojis-list@2.1.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "emojis-list@2.1.0",
"_id": "emojis-list@2.1.0",
"_inBundle": false,
"_integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=",
"_location": "/babel-loader/emojis-list",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "emojis-list@2.1.0",
"name": "emojis-list",
"escapedName": "emojis-list",
"rawSpec": "2.1.0",
"saveSpec": null,
"fetchSpec": "2.1.0"
},
"_requiredBy": [
"/babel-loader/loader-utils"
],
"_resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
"_spec": "2.1.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "emojis-list",
"description": "Complete list of standard emojis.",
"homepage": "https://github.com/Kikobeats/emojis-list",
"version": "2.1.0",
"main": "./index.js",
"author": {
"name": "Kiko Beats",
"email": "josefrancisco.verdu@gmail.com",
"name": "Kiko Beats",
"url": "https://github.com/Kikobeats"
},
"repository": {
"type": "git",
"url": "git+https://github.com/kikobeats/emojis-list.git"
},
"bugs": {
"url": "https://github.com/Kikobeats/emojis-list/issues"
},
"description": "Complete list of standard emojis.",
"keywords": [
"archive",
"complete",
"emoji",
"list",
"standard"
],
"devDependencies": {
"acho": "latest",
"browserify": "latest",
@@ -55,25 +42,10 @@
"files": [
"index.js"
],
"homepage": "https://github.com/Kikobeats/emojis-list",
"keywords": [
"archive",
"complete",
"emoji",
"list",
"standard"
],
"license": "MIT",
"main": "./index.js",
"name": "emojis-list",
"repository": {
"type": "git",
"url": "git+https://github.com/kikobeats/emojis-list.git"
},
"scripts": {
"pretest": "standard update.js",
"test": "echo 'YOLO'",
"update": "node update"
},
"version": "2.1.0"
"license": "MIT"
}

View File

@@ -1,60 +1,23 @@
{
"_args": [
[
"find-cache-dir@1.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "find-cache-dir@1.0.0",
"_id": "find-cache-dir@1.0.0",
"_inBundle": false,
"_integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=",
"_location": "/babel-loader/find-cache-dir",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "find-cache-dir@1.0.0",
"name": "find-cache-dir",
"escapedName": "find-cache-dir",
"rawSpec": "1.0.0",
"saveSpec": null,
"fetchSpec": "1.0.0"
},
"_requiredBy": [
"/babel-loader"
],
"_resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz",
"_spec": "1.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "find-cache-dir",
"version": "1.0.0",
"description": "My well-made module",
"license": "MIT",
"repository": "avajs/find-cache-dir",
"author": {
"name": "James Talmage",
"email": "james@talmage.io",
"url": "github.com/jamestalmage"
},
"bugs": {
"url": "https://github.com/avajs/find-cache-dir/issues"
},
"dependencies": {
"commondir": "^1.0.1",
"make-dir": "^1.0.0",
"pkg-dir": "^2.0.0"
},
"description": "My well-made module",
"devDependencies": {
"ava": "^0.19.1",
"coveralls": "^2.11.6",
"del": "^2.2.2",
"nyc": "^10.3.2",
"xo": "^0.18.2"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && nyc ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/avajs/find-cache-dir#readme",
"keywords": [
"cache",
"directory",
@@ -63,20 +26,22 @@
"find",
"search"
],
"license": "MIT",
"name": "find-cache-dir",
"dependencies": {
"commondir": "^1.0.1",
"make-dir": "^1.0.0",
"pkg-dir": "^2.0.0"
},
"devDependencies": {
"ava": "^0.19.1",
"coveralls": "^2.11.6",
"del": "^2.2.2",
"nyc": "^10.3.2",
"xo": "^0.18.2"
},
"nyc": {
"reporter": [
"lcov",
"text"
]
},
"repository": {
"type": "git",
"url": "git+https://github.com/avajs/find-cache-dir.git"
},
"scripts": {
"test": "xo && nyc ava"
},
"version": "1.0.0"
}
}

View File

@@ -1,56 +1,23 @@
{
"_args": [
[
"find-up@2.1.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "find-up@2.1.0",
"_id": "find-up@2.1.0",
"_inBundle": false,
"_integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
"_location": "/babel-loader/find-up",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "find-up@2.1.0",
"name": "find-up",
"escapedName": "find-up",
"rawSpec": "2.1.0",
"saveSpec": null,
"fetchSpec": "2.1.0"
},
"_requiredBy": [
"/babel-loader/pkg-dir"
],
"_resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
"_spec": "2.1.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "find-up",
"version": "2.1.0",
"description": "Find a file by walking up parent directories",
"license": "MIT",
"repository": "sindresorhus/find-up",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/find-up/issues"
},
"dependencies": {
"locate-path": "^2.0.0"
},
"description": "Find a file by walking up parent directories",
"devDependencies": {
"ava": "*",
"tempfile": "^1.1.1",
"xo": "*"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/find-up#readme",
"keywords": [
"find",
"up",
@@ -72,16 +39,14 @@
"walking",
"path"
],
"license": "MIT",
"name": "find-up",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/find-up.git"
"dependencies": {
"locate-path": "^2.0.0"
},
"scripts": {
"test": "xo && ava"
"devDependencies": {
"ava": "*",
"tempfile": "^1.1.1",
"xo": "*"
},
"version": "2.1.0",
"xo": {
"esnext": true
}

View File

@@ -1,83 +1,38 @@
{
"_args": [
[
"json5@0.5.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "json5@0.5.1",
"_id": "json5@0.5.1",
"_inBundle": false,
"_integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
"_location": "/babel-loader/json5",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "json5@0.5.1",
"name": "json5",
"escapedName": "json5",
"rawSpec": "0.5.1",
"saveSpec": null,
"fetchSpec": "0.5.1"
},
"_requiredBy": [
"/babel-loader/loader-utils"
],
"_resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
"_spec": "0.5.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Aseem Kishore",
"email": "aseem.kishore@gmail.com"
},
"bin": {
"json5": "lib/cli.js"
},
"bugs": {
"url": "https://github.com/aseemk/json5/issues"
},
"contributors": [
{
"name": "Max Nanasy",
"email": "max.nanasy@gmail.com"
"version": "0.5.1",
"description": "JSON for the ES5 era.",
"keywords": [
"json",
"es5"
],
"author": "Aseem Kishore <aseem.kishore@gmail.com>",
"contributors": [
"Max Nanasy <max.nanasy@gmail.com>",
"Andrew Eisenberg <andrew@eisenberg.as>",
"Jordan Tucker <jordanbtucker@gmail.com>"
],
"main": "lib/json5.js",
"bin": "lib/cli.js",
"files": [
"lib/"
],
"dependencies": {},
"devDependencies": {
"gulp": "^3.9.1",
"gulp-jshint": "^2.0.1",
"jshint": "^2.9.3",
"jshint-stylish": "^2.2.1",
"mocha": "^3.1.0"
},
{
"name": "Andrew Eisenberg",
"email": "andrew@eisenberg.as"
"scripts": {
"build": "node ./lib/cli.js -c package.json5",
"test": "mocha --ui exports --reporter spec"
},
{
"name": "Jordan Tucker",
"email": "jordanbtucker@gmail.com"
"homepage": "http://json5.org/",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/aseemk/json5.git"
}
],
"dependencies": {},
"description": "JSON for the ES5 era.",
"devDependencies": {
"gulp": "^3.9.1",
"gulp-jshint": "^2.0.1",
"jshint": "^2.9.3",
"jshint-stylish": "^2.2.1",
"mocha": "^3.1.0"
},
"files": [
"lib/"
],
"homepage": "http://json5.org/",
"keywords": [
"json",
"es5"
],
"license": "MIT",
"main": "lib/json5.js",
"name": "json5",
"repository": {
"type": "git",
"url": "git+https://github.com/aseemk/json5.git"
},
"scripts": {
"build": "node ./lib/cli.js -c package.json5",
"test": "mocha --ui exports --reporter spec"
},
"version": "0.5.1"
}
}

View File

@@ -1,44 +1,29 @@
{
"_args": [
[
"loader-utils@1.1.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "loader-utils@1.1.0",
"_id": "loader-utils@1.1.0",
"_inBundle": false,
"_integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=",
"_location": "/babel-loader/loader-utils",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "loader-utils@1.1.0",
"name": "loader-utils",
"escapedName": "loader-utils",
"rawSpec": "1.1.0",
"saveSpec": null,
"fetchSpec": "1.1.0"
},
"_requiredBy": [
"/babel-loader"
],
"_resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz",
"_spec": "1.1.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Tobias Koppers @sokra"
},
"bugs": {
"url": "https://github.com/webpack/loader-utils/issues"
},
"name": "loader-utils",
"version": "1.1.0",
"author": "Tobias Koppers @sokra",
"description": "utils for webpack loaders",
"dependencies": {
"big.js": "^3.1.3",
"emojis-list": "^2.0.0",
"json5": "^0.5.0"
},
"description": "utils for webpack loaders",
"scripts": {
"test": "mocha",
"posttest": "npm run lint",
"lint": "eslint lib test",
"travis": "npm run cover -- --report lcovonly",
"cover": "istanbul cover -x *.runtime.js node_modules/mocha/bin/_mocha",
"release": "npm test && standard-version"
},
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/webpack/loader-utils.git"
},
"engines": {
"node": ">=4.0.0"
},
"devDependencies": {
"coveralls": "^2.11.2",
"eslint": "^3.15.0",
@@ -47,27 +32,8 @@
"mocha": "^1.21.4",
"standard-version": "^4.0.0"
},
"engines": {
"node": ">=4.0.0"
},
"main": "lib/index.js",
"files": [
"lib"
],
"homepage": "https://github.com/webpack/loader-utils#readme",
"license": "MIT",
"main": "lib/index.js",
"name": "loader-utils",
"repository": {
"type": "git",
"url": "git+https://github.com/webpack/loader-utils.git"
},
"scripts": {
"cover": "istanbul cover -x *.runtime.js node_modules/mocha/bin/_mocha",
"lint": "eslint lib test",
"posttest": "npm run lint",
"release": "npm test && standard-version",
"test": "mocha",
"travis": "npm run cover -- --report lcovonly"
},
"version": "1.1.0"
]
}

View File

@@ -1,56 +1,23 @@
{
"_args": [
[
"locate-path@2.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "locate-path@2.0.0",
"_id": "locate-path@2.0.0",
"_inBundle": false,
"_integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
"_location": "/babel-loader/locate-path",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "locate-path@2.0.0",
"name": "locate-path",
"escapedName": "locate-path",
"rawSpec": "2.0.0",
"saveSpec": null,
"fetchSpec": "2.0.0"
},
"_requiredBy": [
"/babel-loader/find-up"
],
"_resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
"_spec": "2.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "locate-path",
"version": "2.0.0",
"description": "Get the first path that exists on disk of multiple paths",
"license": "MIT",
"repository": "sindresorhus/locate-path",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/locate-path/issues"
},
"dependencies": {
"p-locate": "^2.0.0",
"path-exists": "^3.0.0"
},
"description": "Get the first path that exists on disk of multiple paths",
"devDependencies": {
"ava": "*",
"xo": "*"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/locate-path#readme",
"keywords": [
"locate",
"path",
@@ -66,16 +33,14 @@
"iterable",
"iterator"
],
"license": "MIT",
"name": "locate-path",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/locate-path.git"
"dependencies": {
"p-locate": "^2.0.0",
"path-exists": "^3.0.0"
},
"scripts": {
"test": "xo && ava"
"devDependencies": {
"ava": "*",
"xo": "*"
},
"version": "2.0.0",
"xo": {
"esnext": true
}

View File

@@ -1,89 +1,54 @@
{
"_args": [
[
"make-dir@1.1.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "make-dir@1.1.0",
"_id": "make-dir@1.1.0",
"_inBundle": false,
"_integrity": "sha512-0Pkui4wLJ7rxvmfUvs87skoEaxmu0hCUApF8nonzpl7q//FWp9zu8W61Scz4sd/kUiqDxvUhtoam2efDyiBzcA==",
"_location": "/babel-loader/make-dir",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "make-dir@1.1.0",
"name": "make-dir",
"escapedName": "make-dir",
"rawSpec": "1.1.0",
"saveSpec": null,
"fetchSpec": "1.1.0"
},
"_requiredBy": [
"/babel-loader/find-cache-dir"
],
"_resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz",
"_spec": "1.1.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/make-dir/issues"
},
"dependencies": {
"pify": "^3.0.0"
},
"description": "Make a directory and its parents if needed - Think `mkdir -p`",
"devDependencies": {
"ava": "*",
"codecov": "^2.1.0",
"graceful-fs": "^4.1.11",
"nyc": "^10.2.0",
"path-type": "^3.0.0",
"tempy": "^0.2.1",
"xo": "*"
},
"engines": {
"node": ">=4"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/make-dir#readme",
"keywords": [
"mkdir",
"mkdirp",
"make",
"directories",
"dir",
"dirs",
"folders",
"directory",
"folder",
"path",
"parent",
"parents",
"intermediate",
"recursively",
"recursive",
"create",
"fs",
"filesystem",
"file-system"
],
"license": "MIT",
"name": "make-dir",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/make-dir.git"
},
"scripts": {
"test": "xo && nyc ava"
},
"version": "1.1.0"
"name": "make-dir",
"version": "1.1.0",
"description": "Make a directory and its parents if needed - Think `mkdir -p`",
"license": "MIT",
"repository": "sindresorhus/make-dir",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && nyc ava"
},
"files": [
"index.js"
],
"keywords": [
"mkdir",
"mkdirp",
"make",
"directories",
"dir",
"dirs",
"folders",
"directory",
"folder",
"path",
"parent",
"parents",
"intermediate",
"recursively",
"recursive",
"create",
"fs",
"filesystem",
"file-system"
],
"dependencies": {
"pify": "^3.0.0"
},
"devDependencies": {
"ava": "*",
"codecov": "^2.1.0",
"graceful-fs": "^4.1.11",
"nyc": "^10.2.0",
"path-type": "^3.0.0",
"tempy": "^0.2.1",
"xo": "*"
}
}

View File

@@ -1,74 +1,40 @@
{
"_args": [
[
"minimist@0.0.8",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "minimist@0.0.8",
"_id": "minimist@0.0.8",
"_inBundle": false,
"_integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
"_location": "/babel-loader/minimist",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "minimist@0.0.8",
"name": "minimist",
"escapedName": "minimist",
"rawSpec": "0.0.8",
"saveSpec": null,
"fetchSpec": "0.0.8"
},
"_requiredBy": [
"/babel-loader/mkdirp"
],
"_resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"_spec": "0.0.8",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"bugs": {
"url": "https://github.com/substack/minimist/issues"
},
"description": "parse argument options",
"devDependencies": {
"tap": "~0.4.0",
"tape": "~1.0.4"
},
"homepage": "https://github.com/substack/minimist",
"keywords": [
"argv",
"getopt",
"parser",
"optimist"
],
"license": "MIT",
"main": "index.js",
"name": "minimist",
"repository": {
"type": "git",
"url": "git://github.com/substack/minimist.git"
},
"scripts": {
"test": "tap test/*.js"
},
"testling": {
"files": "test/*.js",
"browsers": [
"ie/6..latest",
"ff/5",
"firefox/latest",
"chrome/10",
"chrome/latest",
"safari/5.1",
"safari/latest",
"opera/12"
]
},
"version": "0.0.8"
"version": "0.0.8",
"description": "parse argument options",
"main": "index.js",
"devDependencies": {
"tape": "~1.0.4",
"tap": "~0.4.0"
},
"scripts": {
"test": "tap test/*.js"
},
"testling" : {
"files" : "test/*.js",
"browsers" : [
"ie/6..latest",
"ff/5", "firefox/latest",
"chrome/10", "chrome/latest",
"safari/5.1", "safari/latest",
"opera/12"
]
},
"repository": {
"type": "git",
"url": "git://github.com/substack/minimist.git"
},
"homepage": "https://github.com/substack/minimist",
"keywords": [
"argv",
"getopt",
"parser",
"optimist"
],
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"license": "MIT"
}

View File

@@ -1,65 +1,27 @@
{
"_args": [
[
"mkdirp@0.5.1",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "mkdirp@0.5.1",
"_id": "mkdirp@0.5.1",
"_inBundle": false,
"_integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"_location": "/babel-loader/mkdirp",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "mkdirp@0.5.1",
"name": "mkdirp",
"escapedName": "mkdirp",
"rawSpec": "0.5.1",
"saveSpec": null,
"fetchSpec": "0.5.1"
},
"_requiredBy": [
"/babel-loader"
],
"_resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"_spec": "0.5.1",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"bin": {
"mkdirp": "bin/cmd.js"
},
"bugs": {
"url": "https://github.com/substack/node-mkdirp/issues"
},
"dependencies": {
"minimist": "0.0.8"
},
"name": "mkdirp",
"description": "Recursively mkdir, like `mkdir -p`",
"devDependencies": {
"mock-fs": "2 >=2.7.0",
"tap": "1"
},
"homepage": "https://github.com/substack/node-mkdirp#readme",
"version": "0.5.1",
"author": "James Halliday <mail@substack.net> (http://substack.net)",
"main": "index.js",
"keywords": [
"mkdir",
"directory"
],
"license": "MIT",
"main": "index.js",
"name": "mkdirp",
"repository": {
"type": "git",
"url": "git+https://github.com/substack/node-mkdirp.git"
"url": "https://github.com/substack/node-mkdirp.git"
},
"scripts": {
"test": "tap test/*.js"
},
"version": "0.5.1"
"dependencies": {
"minimist": "0.0.8"
},
"devDependencies": {
"tap": "1",
"mock-fs": "2 >=2.7.0"
},
"bin": "bin/cmd.js",
"license": "MIT"
}

View File

@@ -1,56 +1,23 @@
{
"_args": [
[
"p-limit@1.1.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "p-limit@1.1.0",
"_id": "p-limit@1.1.0",
"_inBundle": false,
"_integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=",
"_location": "/babel-loader/p-limit",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "p-limit@1.1.0",
"name": "p-limit",
"escapedName": "p-limit",
"rawSpec": "1.1.0",
"saveSpec": null,
"fetchSpec": "1.1.0"
},
"_requiredBy": [
"/babel-loader/p-locate"
],
"_resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz",
"_spec": "1.1.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "p-limit",
"version": "1.1.0",
"description": "Run multiple promise-returning & async functions with limited concurrency",
"license": "MIT",
"repository": "sindresorhus/p-limit",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/p-limit/issues"
},
"description": "Run multiple promise-returning & async functions with limited concurrency",
"devDependencies": {
"ava": "*",
"delay": "^1.3.1",
"in-range": "^1.0.0",
"random-int": "^1.0.0",
"time-span": "^1.0.0",
"xo": "*"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/p-limit#readme",
"keywords": [
"promise",
"limit",
@@ -68,16 +35,14 @@
"promises",
"bluebird"
],
"license": "MIT",
"name": "p-limit",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/p-limit.git"
"devDependencies": {
"ava": "*",
"delay": "^1.3.1",
"in-range": "^1.0.0",
"random-int": "^1.0.0",
"time-span": "^1.0.0",
"xo": "*"
},
"scripts": {
"test": "xo && ava"
},
"version": "1.1.0",
"xo": {
"esnext": true
}

View File

@@ -1,58 +1,23 @@
{
"_args": [
[
"p-locate@2.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "p-locate@2.0.0",
"_id": "p-locate@2.0.0",
"_inBundle": false,
"_integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
"_location": "/babel-loader/p-locate",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "p-locate@2.0.0",
"name": "p-locate",
"escapedName": "p-locate",
"rawSpec": "2.0.0",
"saveSpec": null,
"fetchSpec": "2.0.0"
},
"_requiredBy": [
"/babel-loader/locate-path"
],
"_resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
"_spec": "2.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "p-locate",
"version": "2.0.0",
"description": "Get the first fulfilled promise that satisfies the provided testing function",
"license": "MIT",
"repository": "sindresorhus/p-locate",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/p-locate/issues"
},
"dependencies": {
"p-limit": "^1.1.0"
},
"description": "Get the first fulfilled promise that satisfies the provided testing function",
"devDependencies": {
"ava": "*",
"delay": "^1.3.1",
"in-range": "^1.0.0",
"time-span": "^1.0.0",
"xo": "*"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/p-locate#readme",
"keywords": [
"promise",
"locate",
@@ -73,16 +38,16 @@
"promises",
"bluebird"
],
"license": "MIT",
"name": "p-locate",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/p-locate.git"
"dependencies": {
"p-limit": "^1.1.0"
},
"scripts": {
"test": "xo && ava"
"devDependencies": {
"ava": "*",
"delay": "^1.3.1",
"in-range": "^1.0.0",
"time-span": "^1.0.0",
"xo": "*"
},
"version": "2.0.0",
"xo": {
"esnext": true
}

View File

@@ -1,52 +1,23 @@
{
"_args": [
[
"path-exists@3.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "path-exists@3.0.0",
"_id": "path-exists@3.0.0",
"_inBundle": false,
"_integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
"_location": "/babel-loader/path-exists",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "path-exists@3.0.0",
"name": "path-exists",
"escapedName": "path-exists",
"rawSpec": "3.0.0",
"saveSpec": null,
"fetchSpec": "3.0.0"
},
"_requiredBy": [
"/babel-loader/locate-path"
],
"_resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
"_spec": "3.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "path-exists",
"version": "3.0.0",
"description": "Check if a path exists",
"license": "MIT",
"repository": "sindresorhus/path-exists",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/path-exists/issues"
},
"description": "Check if a path exists",
"devDependencies": {
"ava": "*",
"xo": "*"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/path-exists#readme",
"keywords": [
"path",
"exists",
@@ -59,16 +30,10 @@
"access",
"stat"
],
"license": "MIT",
"name": "path-exists",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/path-exists.git"
"devDependencies": {
"ava": "*",
"xo": "*"
},
"scripts": {
"test": "xo && ava"
},
"version": "3.0.0",
"xo": {
"esnext": true
}

View File

@@ -1,54 +1,24 @@
{
"_args": [
[
"pify@3.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "pify@3.0.0",
"_id": "pify@3.0.0",
"_inBundle": false,
"_integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
"_location": "/babel-loader/pify",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "pify@3.0.0",
"name": "pify",
"escapedName": "pify",
"rawSpec": "3.0.0",
"saveSpec": null,
"fetchSpec": "3.0.0"
},
"_requiredBy": [
"/babel-loader/make-dir"
],
"_resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
"_spec": "3.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "pify",
"version": "3.0.0",
"description": "Promisify a callback-style function",
"license": "MIT",
"repository": "sindresorhus/pify",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/pify/issues"
},
"description": "Promisify a callback-style function",
"devDependencies": {
"ava": "*",
"pinkie-promise": "^2.0.0",
"v8-natives": "^1.0.0",
"xo": "*"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && ava && npm run optimization-test",
"optimization-test": "node --allow-natives-syntax optimization-test.js"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/pify#readme",
"keywords": [
"promise",
"promises",
@@ -72,15 +42,10 @@
"es2015",
"bluebird"
],
"license": "MIT",
"name": "pify",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/pify.git"
},
"scripts": {
"optimization-test": "node --allow-natives-syntax optimization-test.js",
"test": "xo && ava && npm run optimization-test"
},
"version": "3.0.0"
"devDependencies": {
"ava": "*",
"pinkie-promise": "^2.0.0",
"v8-natives": "^1.0.0",
"xo": "*"
}
}

View File

@@ -1,55 +1,23 @@
{
"_args": [
[
"pkg-dir@2.0.0",
"C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI"
]
],
"_from": "pkg-dir@2.0.0",
"_id": "pkg-dir@2.0.0",
"_inBundle": false,
"_integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=",
"_location": "/babel-loader/pkg-dir",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "pkg-dir@2.0.0",
"name": "pkg-dir",
"escapedName": "pkg-dir",
"rawSpec": "2.0.0",
"saveSpec": null,
"fetchSpec": "2.0.0"
},
"_requiredBy": [
"/babel-loader/find-cache-dir"
],
"_resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
"_spec": "2.0.0",
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI",
"name": "pkg-dir",
"version": "2.0.0",
"description": "Find the root directory of a Node.js project or npm package",
"license": "MIT",
"repository": "sindresorhus/pkg-dir",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "sindresorhus.com"
},
"bugs": {
"url": "https://github.com/sindresorhus/pkg-dir/issues"
},
"dependencies": {
"find-up": "^2.1.0"
},
"description": "Find the root directory of a Node.js project or npm package",
"devDependencies": {
"ava": "*",
"xo": "*"
},
"engines": {
"node": ">=4"
},
"scripts": {
"test": "xo && ava"
},
"files": [
"index.js"
],
"homepage": "https://github.com/sindresorhus/pkg-dir#readme",
"keywords": [
"package",
"json",
@@ -75,14 +43,11 @@
"walking",
"path"
],
"license": "MIT",
"name": "pkg-dir",
"repository": {
"type": "git",
"url": "git+https://github.com/sindresorhus/pkg-dir.git"
"dependencies": {
"find-up": "^2.1.0"
},
"scripts": {
"test": "xo && ava"
},
"version": "2.0.0"
"devDependencies": {
"ava": "*",
"xo": "*"
}
}

Some files were not shown because too many files have changed in this diff Show More