Compare commits

..

3 Commits

Author SHA1 Message Date
Archos 12e404c87a Use sed instead of patch for char limit 2026-03-25 19:46:40 +01:00
Archos ce388e1b09 Fix patch format 2026-03-25 19:46:39 +01:00
Archos d008dda95f Add character limit patch (2500 chars) 2026-03-25 19:46:31 +01:00
6 changed files with 3343 additions and 24 deletions
-10
View File
@@ -855,13 +855,3 @@
* Fix OpenStack Swift Keystone token rate limiting ([#​38145](https://github.com/tootsuite/mastodon/issues/38145) by [@​hugogameiro](https://github.com/hugogameiro))
* Fix poll expiration notification being re-triggered on implicit updates ([#​38078](https://github.com/tootsuite/mastodon/issues/38078) by [@​ClearlyClaire](https://github.com/ClearlyClaire))
[1.17.9]
* Update mastodon to 4.5.9
* [Full Changelog](https://github.com/mastodon/mastodon/releases/tag/v4.5.9)
* Insufficient verification of email addresses ([GHSA-5r37-qpwq-2jhh](https://github.com/mastodon/mastodon/security/advisories/GHSA-5r37-qpwq-2jhh))
* Updated dependencies
* Add trademark warning to `mastodon:setup` task ([#38548](https://github.com/tootsuite/mastodon/issues/38548) by [@ClearlyClaire](https://github.com/ClearlyClaire))
* Fix definition for `quote` in JSON-LD context ([#38686](https://github.com/tootsuite/mastodon/issues/38686) by [@ClearlyClaire](https://github.com/ClearlyClaire))
* Fix being unable to disable sound for quote update notification ([#38537](https://github.com/tootsuite/mastodon/issues/38537) by [@ClearlyClaire](https://github.com/ClearlyClaire))
* Fix being able to quote someone you blocked ([#38608](https://github.com/tootsuite/mastodon/issues/38608) by [@ClearlyClaire](https://github.com/ClearlyClaire))
+2 -2
View File
@@ -5,8 +5,8 @@
"description": "file://DESCRIPTION.md",
"changelog": "file://CHANGELOG",
"tagline": "Federated social network",
"version": "1.17.9",
"upstreamVersion": "4.5.9",
"version": "1.17.8",
"upstreamVersion": "4.5.8",
"healthCheckPath": "/about",
"httpPort": 8000,
"memoryLimit": 1610612736,
+1 -1
View File
@@ -68,7 +68,7 @@ RUN mkdir -p /app/code /app/pkg
WORKDIR /app/code
# renovate: datasource=github-releases depName=tootsuite/mastodon versioning=semver extractVersion=^v(?<version>.+)$
ARG MASTODON_VERSION=4.5.9
ARG MASTODON_VERSION=4.5.8
ENV RAILS_ENV production
ENV NODE_ENV production
+3305
View File
File diff suppressed because it is too large Load Diff
+19
View File
@@ -0,0 +1,19 @@
{
"name": "test",
"version": "1.0.0",
"description": "",
"main": "test.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"expect.js": "^0.3.1",
"mocha": "^11.7.5",
"selenium-webdriver": "^4.41.0"
},
"dependencies": {
"chromedriver": "^146.0.5"
}
}
+16 -11
View File
@@ -1,12 +1,6 @@
#!/usr/bin/env node
import { execSync } from 'node:child_process';
import assert from 'node:assert/strict';
import fs from 'node:fs';
import path from 'node:path';
import { Builder, By, until } from 'selenium-webdriver';
import { Options } from 'selenium-webdriver/chrome';
/* jshint esversion: 8 */
/* global describe */
/* global before */
/* global after */
@@ -14,6 +8,17 @@ import { Options } from 'selenium-webdriver/chrome';
/* global it */
/* global xit */
'use strict';
require('chromedriver');
const execSync = require('child_process').execSync,
expect = require('expect.js'),
fs = require('fs'),
path = require('path'),
{ Builder, By, until } = require('selenium-webdriver'),
{ Options } = require('selenium-webdriver/chrome');
if (!process.env.USERNAME || !process.env.PASSWORD) {
console.log('USERNAME and PASSWORD env vars need to be set');
process.exit(1);
@@ -24,7 +29,7 @@ describe('Application life cycle test', function () {
const LOCATION = process.env.LOCATION || 'test';
const TEST_TIMEOUT = parseInt(process.env.TIMEOUT) || 10000;
const EXEC_ARGS = { cwd: path.resolve(import.meta.dirname, '..'), stdio: 'inherit' };
const EXEC_ARGS = { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' };
let browser, app;
const username = process.env.USERNAME;
@@ -46,7 +51,7 @@ describe('Application life cycle test', function () {
const currentUrl = await browser.getCurrentUrl();
if (!currentUrl.includes(app.domain)) return;
assert.strictEqual(typeof this.currentTest.title, 'string');
expect(this.currentTest.title).to.be.a('string');
const screenshotData = await browser.takeScreenshot();
fs.writeFileSync(`./screenshots/${new Date().getTime()}-${this.currentTest.title.replaceAll(' ', '_')}.png`, screenshotData, 'base64');
@@ -120,7 +125,7 @@ describe('Application life cycle test', function () {
function getAppInfo() {
const inspect = JSON.parse(execSync('cloudron inspect'));
app = inspect.apps.filter(function (a) { return a.location === LOCATION || a.location === LOCATION + '2'; })[0];
assert.ok(app && typeof app === 'object');
expect(app).to.be.an('object');
}
xit('build app', function () { execSync('cloudron build', EXEC_ARGS); });
@@ -132,7 +137,7 @@ describe('Application life cycle test', function () {
it('has registration open', checkRegistration.bind(null, 'none'));
let testPassword;
it('create a user with CLI', function () {
const output = execSync('cloudron exec --app ' + LOCATION + ' -- bin/tootctl accounts create test --email=test@cloudron.io', { cwd: path.resolve(import.meta.dirname, '..'), encoding: 'utf8' });
const output = execSync('cloudron exec --app ' + LOCATION + ' -- bin/tootctl accounts create test --email=test@cloudron.io', { cwd: path.resolve(__dirname, '..'), encoding: 'utf8' });
console.log(output);
testPassword = output.slice(output.indexOf('New password: ') + 'New password: '.length).trim();
console.log(testPassword);