mirror of
https://git.cloudron.io/cloudron/syncthing-app
synced 2025-09-13 16:29:09 +00:00
Compare commits
21 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
748697ba51 | ||
|
d281fb8aef | ||
|
d72a041d67 | ||
|
88a47bcf1a | ||
|
6be20dbf5e | ||
|
eeabcd9b30 | ||
|
f56054506e | ||
|
de4b8ff977 | ||
|
8c74b83013 | ||
|
1f2ad16358 | ||
|
62b4fe40c1 | ||
|
c3533569c1 | ||
|
06a75583e8 | ||
|
b413b5d43a | ||
|
5377c0180c | ||
|
f3a6e7b69e | ||
|
7620eec7b6 | ||
|
2d4e328955 | ||
|
ef3a205467 | ||
|
9400c1a99f | ||
|
ff751142d4 |
39
CHANGELOG
39
CHANGELOG
@@ -18,3 +18,42 @@
|
||||
|
||||
[0.2.1]
|
||||
* Fixed description
|
||||
|
||||
[0.2.2]
|
||||
* Add to sync category in app store
|
||||
|
||||
[0.2.3]
|
||||
* Updated to version 0.14.30
|
||||
|
||||
[0.2.4]
|
||||
* Updated to version 0.14.31
|
||||
|
||||
[0.2.5]
|
||||
* Updated to version 0.14.32
|
||||
|
||||
[0.3.0]
|
||||
* Updated to version 0.14.33
|
||||
|
||||
[0.3.1]
|
||||
* Updated to version 0.14.35
|
||||
|
||||
[0.3.2]
|
||||
* Updated to version 0.14.36
|
||||
|
||||
[0.3.3]
|
||||
* Updated to version 0.14.37
|
||||
|
||||
[0.3.4]
|
||||
* Updated to version 0.14.38
|
||||
|
||||
[0.4.0]
|
||||
* Updated to version 0.14.39
|
||||
* #4357: Removing paused folders no longer triggers a crash.
|
||||
* #4360: Add further security related HTTP headers
|
||||
* #4375: Improve info level logging in some cases
|
||||
* #4377: Improve GUI tooltips in chromium based browsers
|
||||
* #4382: Hide temporary files on Windows
|
||||
* #4387: Add -device-id command line switch
|
||||
|
||||
[0.5.0]
|
||||
* Updated to version 0.14.40
|
||||
|
@@ -5,7 +5,7 @@
|
||||
"description": "file://DESCRIPTION.md",
|
||||
"changelog": "file://CHANGELOG",
|
||||
"tagline": "Decentralized file synchronization",
|
||||
"version": "0.2.1",
|
||||
"version": "0.5.0",
|
||||
"healthCheckPath": "/check",
|
||||
"httpPort": 8000,
|
||||
"addons": {
|
||||
@@ -25,7 +25,8 @@
|
||||
"contactEmail": "support@cloudron.io",
|
||||
"icon": "logo.png",
|
||||
"tags": [
|
||||
"storage"
|
||||
"storage",
|
||||
"sync"
|
||||
],
|
||||
"mediaLinks": [
|
||||
"https://git.cloudron.io/dswd/syncthing-app/raw/master/screenshots/1.jpg"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
This app packages Syncthing <upstream>v0.14.29</upstream>.
|
||||
This app packages Syncthing <upstream>v0.14.40</upstream>.
|
||||
|
||||
Syncthing replaces proprietary sync and cloud services with something open, trustworthy and decentralized. Your data is your data alone and you deserve to choose where it is stored, if it is shared with some third party and how it's transmitted over the Internet.
|
||||
|
||||
|
@@ -28,7 +28,7 @@ RUN ./configure \
|
||||
--build=cloudron-river
|
||||
RUN make install
|
||||
|
||||
ENV VERSION 0.14.29
|
||||
ENV VERSION 0.14.40
|
||||
|
||||
RUN mkdir -p /app/code \
|
||||
&& wget https://github.com/syncthing/syncthing/releases/download/v${VERSION}/syncthing-linux-amd64-v${VERSION}.tar.gz -O - \
|
||||
|
@@ -15,8 +15,8 @@
|
||||
"mocha": "^2.5.3",
|
||||
"rimraf": "^2.5.3",
|
||||
"selenium-server-standalone-jar": "^2.53.1",
|
||||
"selenium-webdriver": "^2.53.3",
|
||||
"selenium-webdriver": "^2.53.1",
|
||||
"superagent": "^1.4.0",
|
||||
"chromedriver": "^2.27.0"
|
||||
"chromedriver": "^2.31.0"
|
||||
}
|
||||
}
|
||||
|
72
test/test.js
72
test/test.js
@@ -62,47 +62,59 @@ describe('Application life cycle test', function () {
|
||||
}
|
||||
|
||||
function loadPage(callback) {
|
||||
browser.manage().deleteAllCookies();
|
||||
browser.get('https://' + username + ':' + password + '@' + app.fqdn);
|
||||
return pageLoaded().then(function() {
|
||||
browser.manage().deleteAllCookies().then(function () {
|
||||
return browser.get('https://' + username + ':' + encodeURIComponent(password) + '@' + app.fqdn).then(function () {
|
||||
return browser.get('https://' + app.fqdn);
|
||||
});
|
||||
}).then(function () {
|
||||
return pageLoaded();
|
||||
}).then(function () {
|
||||
callback();
|
||||
});
|
||||
}
|
||||
|
||||
function addFolder(callback) {
|
||||
return pageLoaded().then(function() {
|
||||
browser.findElement(by.css('[ng-click*=addFolder]')).click();
|
||||
return visible(by.id('folderPath')).then(function() {
|
||||
return browser.findElement(by.id('folderLabel')).sendKeys('test');
|
||||
}).then(function() {
|
||||
pageLoaded().then(function() {
|
||||
return browser.findElement(by.css('[ng-click*=addFolder]')).click();
|
||||
}).then(function () {
|
||||
return visible(by.id('folderPath'));
|
||||
}).then(function() {
|
||||
return browser.findElement(by.id('folderLabel')).sendKeys('test');
|
||||
}).then(function () {
|
||||
return browser.findElement(by.id('folderPath')).sendKeys('/app/data/test');
|
||||
}).then(function() {
|
||||
//Clear and re-enter the folder to avoid race with auto-completion
|
||||
return browser.findElement(by.id('folderPath')).clear();
|
||||
}).then(function() {
|
||||
}).then(function() {
|
||||
//Clear and re-enter the folder to avoid race with auto-completion
|
||||
return browser.findElement(by.id('folderPath')).clear();
|
||||
}).then(function() {
|
||||
return browser.findElement(by.id('folderPath')).sendKeys('/app/data/test');
|
||||
}).then(function() {
|
||||
return browser.findElement(by.css('[ng-click*=saveFolder]')).click();
|
||||
}).then(function() {
|
||||
return browser.wait(until.elementLocated(by.css('#folders .panel-status span[ng-switch-when=unshared]')), TEST_TIMEOUT);
|
||||
}).then(function() {
|
||||
callback();
|
||||
});
|
||||
}).then(function() {
|
||||
return browser.findElement(by.css('[ng-click*=saveFolder]')).click();
|
||||
}).then(function() {
|
||||
return browser.wait(until.elementLocated(by.css('#folders .panel-status span[ng-switch-when=unshared]')), TEST_TIMEOUT);
|
||||
}).then(function() {
|
||||
callback();
|
||||
});
|
||||
}
|
||||
|
||||
function removeFolder(callback) {
|
||||
browser.get('https://' + username + ':' + password + '@' + app.fqdn);
|
||||
return pageLoaded().then(function() {
|
||||
browser.findElement(by.css('#folders button')).click();
|
||||
setTimeout(function() {
|
||||
browser.findElement(by.css('#folder-0 button[ng-click*=editFolder]')).click();
|
||||
setTimeout(function() {
|
||||
browser.findElement(by.css('[ng-click*=deleteFolder]')).click().then(function() {
|
||||
setTimeout(callback, 1000); //This needs to run for some time
|
||||
});
|
||||
}, 1000); //No way to check for visibility of angular-js components
|
||||
}, 1000); //No way to check for visibility of angular-js components
|
||||
browser.get('https://' + username + ':' + encodeURIComponent(password) + '@' + app.fqdn).then(function () {
|
||||
return browser.get('https://' + app.fqdn);
|
||||
}).then(function () {
|
||||
return pageLoaded();
|
||||
}).then(function() {
|
||||
return browser.findElement(by.css('#folders button')).click();
|
||||
}).then(function () {
|
||||
return browser.sleep(1000); //No way to check for visibility of angular-js components
|
||||
}).then(function () {
|
||||
return browser.findElement(by.css('#folder-0 button[ng-click*=editFolder]')).click();
|
||||
}).then(function () {
|
||||
return browser.sleep(1000); //No way to check for visibility of angular-js components
|
||||
}).then(function () {
|
||||
return browser.findElement(by.css('[ng-click*=deleteFolder]')).click();
|
||||
}).then(function () {
|
||||
return browser.sleep(1000); //This needs to run for some time
|
||||
}).then(function () {
|
||||
callback();
|
||||
});
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user