Flyspray

This is the Bug Tracking System for the Flyspray project. This is not a demo!

2021-04-23: Flyspray 1.0-rc10 released See https://github.com/Flyspray/flyspray/releases

If you are upgrading from older version, please wait for 1.0-rc11.

2021-11-23: New user registration and password forgotten currently not working on bugs.flyspray.org due email server problems. peterdd

ID Category Task Type Severity Summary Status  desc Progress Assigned To Due In Version Opened Last Edited
2601Public RelationsFeature RequestMediumhttp -> https missing redirection (19-04-09)Assigned
10%
Floelejudas_iscariote321.04.202025.09.2020 Task Description

From: https://groups.google.com/forum/?hl=en#!topic/flyspray/rAnks5y_uLk

19-04-09 // More one year ago.

There are not http → https redirections.

Only one example:
- http://www.flyspray.org/docs/download/ is not redirected to https://www.flyspray.org/docs/download/

Note: It is better to have the main website in https://flyspray.org/.

http://www.flyspray.org/ + https://www.flyspray.org/ + http://www.flyspray.org/ must be redirected to https://flyspray.org/

2657EmailBug ReportCriticalcurrently new registration emails are not received by u...Assigned
0%
Floelejudas_iscariote24.11.202124.11.2021 Task Description

Regardless if a gmail.com or other address (tested with my gmail and also other email address)

So this is probably a mail server problem. I try to reach server admin.

I can see my “unfinished registrations” tests in the admin→checks area, but received no emails (waited and checking spam folders too)

2636Installer and UpgraderBug ReportHighFailure to upgrade 1.0-rc9 to 1.0-rc10 (mariadb 10.4.18...Assigned
50%
peterdd1.0-rc11729.04.202123.07.2021 Task Description

I administer a moderate-sized (~14K ticket) 1.0-rc9 instance running on a Fedora 32 host (php 7.4.16, mariadb 10.4.18) Following the upgrade instructions (ie transfer attachments, avatars, flyspray.conf.php) the setup/upgrade tool loads, and prompts me to upgrade.

It churns a while before refreshing the screen, claiming a successful 1.0-rc10 upgrade. However, the upgrade seems to not actually “stick”, because clicking on the “return” button I’m dropped back into the upgrader, which is once again claiming I’m running 1.0-rc9 and prompting me to perform the -rc10 upgrade.

According to Flyspray’s admin ‘checks’ tab:

* PHP 7.4.16
* MariaDB 10.4.18
* default_charset: utf8mb4
* default_collation: utf8mb4_unicode_ci
* All tables are ‘InnoDB’

There are no errors logged that I can find, but the upgrade is clearly not working. If I revert to the -rc9 php files, everything continues along as if nothing was done.

Any suggestions?

2637Installer and UpgraderBug ReportHighFailure to upgrade 1.0-rc9 to 1.0-rc10 (postgresql 12.6...Assigned
50%
peterdd1.0-rc11729.04.202105.05.2021 Task Description

I administer a small personal (<1K ticket) 1.0-rc9 instance running on a Fedora 32 host (php 7.4.16, postgresql 12.6) Following the upgrade instructions (ie transfer attachments, avatars, flyspray.conf.php) the setup/upgrade tool loads, and prompts me to upgrade.

Unfortunately, the upgrade fails spectacularly, with a reported SQL error that belies what’s actually wrong. Here’s a snippet from the postgresql logs where the upgrade is failing:

2021-04-28 10:33:07.190 EDT [2032049] ERROR: column “attachment_id” of relation “flyspray_attachments” already exists
2021-04-28 10:33:07.190 EDT [2032049] STATEMENT: ALTER TABLE flyspray_attachments ADD COLUMN attachment_id SERIAL
2021-04-28 10:33:07.194 EDT [2032049] ERROR: current transaction is aborted, commands ignored until end of transaction block
2021-04-28 10:33:07.194 EDT [2032049] STATEMENT: ALTER TABLE flyspray_attachments ADD COLUMN task_id INTEGER
[…and everything else fails because the transaction aborted…]

It appears that the upgrade script is blindly trying to create columns that already exist in the -rc9 database, and postgresql is treating this as a failure. Because the entire upgrade happens within one transaction, this means the entire upgrade fails at the outset and won’t ever succeed.

The way past this specific problem is to make these ALTER TABLE operations conditional (eg “ALTER TABLE flyspray_attachments ADD COLUMN IF NOT EXISTS task_id INTEGER”).

2598User InterfaceBug ReportLowuser registration in admin area: "username taken" but t...Assigned
0%
peterdd1.0320.03.202014.04.2021 Task Description

Trying to add a new user having the same email address as an another user in the do=admin&area=newuser section results in

“That username is already taken. You will need to choose another one.”

instead of

“Email address has already been taken”

(I’ve stumbled on this issue because I have an older disabled user with the same email address)

1958User InterfaceFeature RequestLowPreselect values for event log viewNew
0%
09.03.201509.03.2015 Task Description

Most (or even all?) of the selectable events should be preselected in the selection list.

1960Backend/CoreBug ReportMediumforeign key relations between versions and tasksNew
0%
209.03.201513.08.2015 Task Description

It seem that when deleting a version entry in a project, that tasks that have this version assigned are still connected to this deleted version. For example FS#1222 (on 2015-03-09).

There are several options to solve such things:

  • Deny deletion of version as long as tasks assigned to this project version.
    • Either by doing a testing SQL query to check this case coded in PHP. Take care to keep this centralized, must also be respected by an eventually later added Flyspray API (XMLRPC or whatever).
    • add SQL foreign key constraints with ON DELETE RESTRICT
      • Pro: some business logic can be directly enforced by SQL.
      • Cons: higher requirements for hosting, if using mysql innodb tables must be available on the hosting
  • Move the tasks of this version to a default fallback version before deleting the version tag.
    • Either doing one transaction doing : 1. move the tasks to its fallback version, 2. delete the version
    • add SQL foreing key constraint with ON DELETE SET $fallbackversionid. Some pros & cons like on the the denying option.

The same for other assignments for tasks.

This issue is similiar to the massop issue: (https://github.com/Flyspray/flyspray/issues/130)

1961User InterfaceFeature RequestLowshow new notifications in flysprayNew
0%
11.03.201511.03.2015 Task Description

similiar to facebook.com or github.com show new unread notifications on the topbar.

1962Backend/CoreFeature RequestLowSMS notification - sending notifications via sms same a...New
0%
211.03.201502.12.2015 Task Description

moved from  FS#1697  into a separate task.

1964DocumentationFeature RequestLowOn page documentationNew
0%
11.03.201511.03.2015 Task Description

This is a parent task for all small helping or explaining tooltips that can be maybe added where approriate.

Many people don't like reading external documentations, which sometimes often is also not up to date with the current used version.

If you are doing something in Flyspray and you don't know exactly how it works or have to be done rigth and you must look at documentation, it breaks your workflow.

The best case is if its all perfect intuitive and you don't have to read any help texts. But in the case of more complex operations or things that do many things behind the scene a helping tooltip or explanation can give you a mental map and more trust into what the tool is doing.

1971Backend/CoreFeature RequestLowa field like challenge level or doom levelNew
0%
12.03.201512.03.2015 Task Description

We have severity field.
We have priority field.
We have estimated effort field.

But we don't have a fíeld to see how hard a task is to solve. Something like in doom 3d shooter a face from normal/easy to angry/bloody/very hard.

Imaging you have some people in a company, some base educated, some high educated, some are experts in their field, some do repeating easy tasks.

By adding the ability to set a 'doom level' on tasks this can complete the view over a project in addition to severity,priority,effort.

1985Database QueriesFeature RequestVery LowFor developers - testing with huge flyspray data setsNew
0%
224.03.201516.03.2016 Task Description

Here I will put some sql examples for the current developers to have a base for testings:

Starting with a default installation with its 1 example project and 1 example task:

I hope we can put all this into valuable phpunit tests for automatic testing with travis-ci.

Still TODO, do not use:
After fresh Flyspray install, add some more projects:

INSERT INTO flyspray_projects (project_title,project_is_active,others_view,anon_open) VALUES('Inactive Project', 0, 1, 1);
INSERT INTO flyspray_projects (project_title,project_is_active,others_view,anon_open) VALUES('Active Project Anonymous Reporting', 1, 1, 1);
INSERT INTO flyspray_projects (project_title,project_is_active,others_view,anon_open) VALUES('Deleted Project', 1, 1, 1);
DELETE FROM flyspray_projects WHERE project_title LIKE 'Deleted Project'; -- delete to have an id gap
INSERT INTO flyspray_projects (project_title,project_is_active,others_view,anon_open) VALUES('Active Project NO Others View', 1, 0, 0);
-- There should now be 4 projects with ids (1,2,3,5).
-- Now lets add some extra roles for a few projects
INSERT INTO flyspray_groups (group_name,project_id,manage_project,view_tasks,open_new_tasks,modify_own_tasks,view_own_tasks,view_groups_tasks) VALUES('Project3 Manager', 3, 1, 1, 1, 1, 1, 1 );
INSERT INTO flyspray_groups (group_name,project_id,manage_project,view_tasks,open_new_tasks,modify_own_tasks,view_own_tasks,view_groups_tasks) VALUES('Project3 Reporter', 3, 0, 1, 0, 1, 1, 1 );
INSERT INTO flyspray_groups (group_name,project_id,manage_project,view_tasks,open_new_tasks,modify_own_tasks,view_own_tasks,view_groups_tasks) VALUES('Project5 Developer', 5, 0, 1, 1, 1, 1, 1 );
-- TODO
-- Then create some more users:
INSERT INTO flyspray_users(user_name,real_name,email_address,account_enabled,tasks_perpage,lang_code) VALUES('tester1','T1Developer','tester1@example.com',1,100,'en');
INSERT INTO flyspray_users(user_name,real_name,email_address,account_enabled,tasks_perpage,lang_code) VALUES('tester2','T2Reporter_P3Manager','tester2@example.com',1,100,'de');
INSERT INTO flyspray_users(user_name,real_name,email_address,account_enabled,tasks_perpage,lang_code) VALUES('tester3','T3Basic_P3Reporter_P5Developer','tester3@example.com',1,100,'fr');
-- And put them into a global group and a few into project roles too:
INSERT INTO flyspray_users_in_groups(user_id,group_id) VALUES(2,2);
INSERT INTO flyspray_users_in_groups(user_id,group_id) VALUES(3,3);
INSERT INTO flyspray_users_in_groups(user_id,group_id) VALUES(3,8);
INSERT INTO flyspray_users_in_groups(user_id,group_id) VALUES(4,4);
INSERT INTO flyspray_users_in_groups(user_id,group_id) VALUES(4,9);
INSERT INTO flyspray_users_in_groups(user_id,group_id) VALUES(4,10);
-- And lets fill the Database with 10 different configured task to simulate different cases:
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(1,1,1,0); -- id2 in first project
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(2,1,1,0); -- id3 in inactive project
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(2,1,1,3); -- id4 in inactive project
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(3,1,0,6); -- id5 status 0,supertask_id6
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(3,1,0,0); -- id6
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(3,1,1,6); -- id7
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(5,1,1,0); -- id8
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(5,1,1,8); -- id9
INSERT INTO flyspray_tasks(project_id,task_type,item_status,supertask_id) VALUES(5,1,1,9); -- id10
-- TODO
-- And now lets fill the database with many task referencing the 10 base tasks (10k or more rows) by repeating the following until enough (grows exponential x**2 !
INSERT INTO flyspray_tasks (project_id,task_type,item_status, supertask_id, item_summary) SELECT 3,1,1,FLOOR(RAND()*11),RAND() FROM flyspray_tasks;

These Examples can be used for finding bottle necks or problems on huge installations.


	
1991User InterfaceFeature RequestMediumAbillity to drill into progress graph from toplevel vie...New
0%
17.04.201524.04.2015 Task Description

From the overview view for a project the progress charts should be large and show dates so can have a better sense for absolute progress and then when click it should see it full size going back to start of project and showing dates.

1999XMPP/JabberFeature RequestMediumjabber xmpp configurationNew
0%
8122.06.201511.02.2017 Task Description

There should be some help at the configuration sections for setting up jabber/xmpp notifications.

How someone can test it?

Must the admin setup his own jabber/xmpp server or are there recommended servers?

I registered with psi+ instant messager as peterdd@ubuntu-jabber.de at ubuntu-jabber.de for testing
and configured it here in my account too, but got no jabber messages.

Email notifications works and I set up both sending.

2002User InterfaceFeature RequestLowshow user role on autocomplete for verificationNew
0%
122.06.201517.10.2019 Task Description

When adding peoples with the autocompleter the name itself is not always enough, especially with a growing number of registered users.

We now have the avatar icon as helper, but for quick verification it would be easier to see also the role of the user in the current project to identify the right user account.

( The red rectangle at peterdd autocomplete row is from a broken avatar upload, ignore it for this task, see  FS#1979  instead .. )

2007Backend/CoreBug ReportLowtime on project overview activity timelinesNew
0%
18.07.201518.07.2015 Task Description

I find it irritating to have the oldest activity on the right side and newest activity on the left side of the small activity bars.

There is also no time scale description. This could be added by showin it on :hover to keep the simple appearance.

A complete new feature would be to replace the image generation by rendering the bars in the html in the same request, e.g by inline svg or canvas element. This would enable adding some interactivity with the activity bars..
A related feature request is FS#1991 (project progress)

2008User InterfaceTODOLowdifference between related tasks and related linksNew
0%
18.07.201518.07.2015 Task Description

It should be made clear to the user what related links are in the
"new task" and "edit task" form and what a user should input in these fields.

2023NotificationsFeature RequestLowInform users if reminder is disabled in system settingsNew
0%
04.08.201504.08.2015 Task Description

There are 5 possible cases that IMHO should be handled more user friendly:

  1. There is no cronjob for the reminder (schedule.php) setup → Reminders are never sent
  2. Reminding is disabled in the global settings → Reminders are never sent
  3. Reminder setting 'email' only → Reminders are only sent to users who set their notification setting to 'email' or 'both' and setup an email address
  4. Reminder setting 'jabber' only → Reminders are only sent to users who set their notification setting to 'jabber' or 'both' and setup a jabber address
  5. Project notification setting not set → ??? (research...)
  • If notification is disabled (1. or 2.), the notification tab on 'task details page' should adapt to that I think. (by css style or message or tooltip)
  • If notification is restricted to only one notification channel, the current user should be informed on notification tab on 'task details page' if he would receive notifications with his current notification settings.
2029Backend/CoreFeature RequestLowpossibility to let a user describe himselfNew
0%
112.08.201518.01.2018 Task Description

This could be done by a textarea field (like comment text or task description) on the myprofile page and stored in a new field (of type text for instance) in the user table.

This allows the user to introduce himself to the other users.

Should be restrictive, for instance only simple text allowed, no html or tags.

2030User InterfaceFeature RequestLowshow votes of a user on user pageNew
0%
12.08.201515.01.2017 Task Description

On the user page

/index.php?do=user&area=users&id=*
or
/index.php?do=user&area=users&id=*&project=1
or
/index.php?do=user&area=users&id=*&switch=1 (project switch select)

an info could be shown how many votes a user has given.

Maybe show the tasks on mouse hover (:hover) if permission to view them exists.

Needs to be considered:

  • Show count only for current project or all projects? (project param is optional on user page)
  • counts of hidden, closed or restricted projects (user permission)
  • How to handle votes of private tasks?
  • Show votes of closed tasks too? (votes on closed tasks should don’t count for max votes per project)
  • When personal “max votes per project” (open tasks) is active, this is of more value.


2032User InterfaceFeature RequestLowreplace hardcoded ... 'ellipsis'New
0%
1112.08.201512.08.2015 Task Description
Thomasz wrote:
The other thing that I cannot find how to make the text to be visible in the whole column (as with the summary I get the ... at some point of the text).

The root of this is found in scripts/index.php in function tpl_draw_cell():

case 'summary':
            $value = tpl_tasklink($task, utf8_substr($task['item_summary'], 0, 55));
            if (utf8_strlen($task['item_summary']) > 55) {
                $value .= '...';
            }
            break;

We live in a world now, where the view port ranges from 320 pixel width mobile screens up to 4k+ wide tv screens, the amount of columns is configurable from minimal to all available fields of a task. We currently let the browser automatic decide how wide he renders each column depending on table content and available window size.

Well, that ellipsis problem can be handled at different levels:

  • motivate the task creators to use short task summary if possible (e.g. show a hint/tooltip when typing the summary gets over a limit, in our case the hardcoded limit is 55. ). Short task topic/summaries are easier to read/scan for the users.
  • replace the hard ellipsis by a pure css solution, that adapts to users browserwindow size/space in in the columns for summary
  • drop the ellipsis thing complete, task summary always shown full length, table rows adapt in height automatically.

Possible CSS solution:

2034User InterfaceFeature RequestLowreduced extended search form when applicableNew
0%
17.08.201517.08.2015 Task Description

If a project has no versions defined yet and there are also no 'global' versions defined,
there is not need for displaying the version selects.

Same for categories. If no categories in project and no global categories then no need for displaying a cat select.

Maybe a tooltip/hint in the extended search form to inform the user that the fields were hidden for that reason.

2036Backend/CoreBug ReportVery Lowsession timeoutNew
0%
2121.08.201512.01.2016 Task Description

Got "wrong token" on creating a task whose form were open for a while in browser tab.

That means probably the session timed out on bugs.flyspray.org, so the anti csrf token doesn't existed anymore on the webserver.

It would'nt be a big problem if the browser backbutton works showing the ready written form again, but it was empty.

One solution would be temporarly storing it offline in the browser storages which are available with html5. But open for other simpler solutions..

2038Backend/CoreBug ReportLowJscalendar must be replaced with something elseNew
0%
223.08.201524.08.2015 Task Description

It's old. There has been a newer version 2.0. Even that one is not supported anymore, although some documents still remain available. The calendar component relies on its language translations files to be complete, or it breaks. Unfortunately, as I found out a few weeks ago, they are not, after switching the default language from english to my native one. Without having a good replacement for it, some of the translations for flyspray itself we've been getting lately are half-way unusable. Not for an ordinary user, but for anyone actually having to edit a task and its due date.

2057Backend/CoreBug ReportLowDo not resubmit forms on browser reload button or F5New
0%
122.09.201523.09.2015 Task Description

On some forms, when the user presses the reload button of this browser, the POST submit can be resubmitted.

Browsers can warn about this (Chromium, Firefox, Konqueror tested and they show a warning dialog) before executing the second POST.
But people on Flyspray mailing list wrote they experienced double comments.

Simple solution is just HTTP GET redirects after a successful POST. (HTTP 303 or HTTP 302)
But maybe there is a better method than a second roundtrip always needed?

Success, Error, or Warn-messages to the user are stored in the $_SESSION variable for displaying on the second GET request.
But I think that this is a bit ... mmh... not perfect.

For example, I would like to have in the direct response at which position in a form an input error is, not just the message bar in the top center as it is currently that just dissappear after a few seconds.

Also take care the browser back button still works as expected for the user.

2058Backend/CoreBug ReportLowClosing of github.com 'Issues' featureNew
0%
24.09.201524.09.2015
2059Backend/CoreFeature RequestLowusage of github automated/webhook notificationsNew
0%
24.09.201524.09.2015
2062User InterfaceTODOLowreview do=admin&area=editallusersNew
30%
329.09.201515.04.2020
2063Backend/CoreFeature RequestVery Lowshow closed/open usage count on do=pm&area=XXXNew
10%
peterdd129.09.201525.03.2021
2073Backend/CoreBug ReportLowCouldn't edit comment of anonymous reporterNew
0%
17.10.201517.10.2015
2104Backend/CoreBug ReportLowfiltering by one user on tasks with multiple assignees ...New
0%
226.02.201615.06.2020
2105Backend/CoreFeature RequestMediumcountermeasures for 'add task anonymous' spamNew
0%
127.02.201627.02.2016
2114TranslationsTODOMediumStandardize the priority meaning across flyspray transl...New
0%
207.04.201626.03.2018
2127User InterfaceFeature RequestLowoverhaul task detail page layoutNew
0%
120.05.201625.05.2016
2137Backend/CoreBug ReportLowfeature accesskey bad implemented by web browsersNew
0%
15.06.201615.06.2016
2138User InterfaceFeature RequestVery LowOverhaul dokuwiki editor buttonbarNew
0%
17.06.201617.06.2016
2188Backend/CoreBug ReportVery LowIt should not possible to relate a task to itselfNew
0%
01.08.201601.08.2016
2193User InterfaceFeature RequestLowEdit a comment while seeing task details and other comm...New
0%
07.08.201608.08.2016
2215Text RenderingBug ReportLowwrong output of Geshi syntax highlighting for xml codeNew
0%
117.10.201631.12.2017
2308User InterfaceFeature RequestLowimprove user management for adminsNew
30%
227.10.201610.02.2021
2322User InterfaceFeature RequestMediumMention SystemNew
10%
7107.12.201619.10.2019
2325User InterfaceFeature RequestLowbig image attachments: fit to browser window width in L...New
0%
310.01.201711.01.2017
2332Backend/CoreBug ReportMediumCSV export filename filteringNew
0%
224.01.201724.01.2017
2337DocumentationInformationLowFlyspray ThemesNew
0%
402.02.201716.02.2017
2436Backend/CoreBug ReportLowdokuwiki renderer creates nonunique html-id for h1,h2,h...New
0%
202.08.201702.08.2017
2439Backend/CoreFeature RequestLowClone a ProjectNew
0%
15.09.201715.09.2017
2441Backend/CoreBug ReportMediumrefactor dokuwiki image tagsNew
0%
15.09.201715.09.2017
2444Installer and UpgraderInformationLowcomposer hits memory limitsNew
0%
04.10.201704.10.2017
2454Backend/CoreBug ReportLowPHP warning in admin edit user areaNew
0%
15.01.201815.01.2018
2531TranslationsFeature RequestLowdetect usage of translation keywordsNew
0%
110.01.201919.03.2019
Showing tasks 101 - 150 of 315 Page 3 of 7

Available keyboard shortcuts

Tasklist

Task Details

Task Editing