Difference between revisions of "Free Software Directory:Backlog Admin Group"

From Free Software Directory
Jump to: navigation, search
(Restructure page.)
m
(29 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The '''Backlog Admin Group''' ('''BAG''') is a dedicated group to work on our [[Free_Software_Directory:Backlog|Backlog]].
+
<onlyinclude>The '''Backlog Admin Group''' ('''BAG''') is a dedicated group to work on technical issues of our [[Free_Software_Directory:Backlog|Backlog]].</onlyinclude>
  
{{#ask:
+
'''Team Captain''': [[User:David_Hedlund|David Hedlund]]
    [[Member of team::{{FULLPAGENAME}}]]
+
 
    |?TZ database time zone name
+
{{#ask:[[Member of team::{{FULLPAGENAME}}]]
    |limit=0
+
  |?TZ database time zone name
    |searchlabel=Table with team members and their time zones.
+
  |?IRC Freenode nick
 +
  |offset=0
 +
  |limit=500
 
}}
 
}}
  
 
For internal meetings, the column about [[Property:TZ database time zone name]] from the above link can be used to display what would be the members' local time when the meeting start, given  this example: <code>TZ="MEMBER_TIME_ZONE" date --date='TZ="America/New_York" 12:00 this Fri'</code>.
 
For internal meetings, the column about [[Property:TZ database time zone name]] from the above link can be used to display what would be the members' local time when the meeting start, given  this example: <code>TZ="MEMBER_TIME_ZONE" date --date='TZ="America/New_York" 12:00 this Fri'</code>.
 +
 +
== Pages ==
 +
{{Special:PrefixIndex/Free Software Directory:Backlog Admin Group/|stripprefix=yes}}
 +
 +
== We need more members ==
 +
People at [irc://chat.freenode.net/#mediawiki Freenode#mediawiki] and [irc://chat.freenode.net/#semantic-mediawiki Freenode#semantic-mediawiki] should be skilled in MediaWiki. We could gently ask if someone in those IRC channels wants to candidate to be a member of our team so we can solve more complex tasks in our [[Free_Software_Directory:Backlog_active|Backlog]] faster.
 +
:Example of a generic participation request:
 +
::Hi <i>$firstName</i>,<br><br>I am an <i>$senderRole</i> of the Free Software Directory (FSD: <https://$currentDirectoryDomain/>), an ever-growing and user-editable web catalog of free software. We are searching for free software enthusiasts who are willing to dedicate their time and skills into volunteering for our project, with the ultimate aim of promoting free software and assisting end users. Your help is needed to translate or create the pages and/or, if you have computer science expertise, in verifying the existing pages and improving the functionalities of the FSD's infrastructure.<br>We await for your contributions during the weekly IRC meetings of the Free Software Foundation, don't miss out! (guide: <https://$currentDirectoryDomain/wiki/Free_Software_Directory:Participate>)<br><br>Best regards,<br><i>%senderName</i>
  
 
== Membership policy ==
 
== Membership policy ==
Line 17: Line 27:
  
 
* We'll schedule meetings every year or so to actually operate in group activity.
 
* We'll schedule meetings every year or so to actually operate in group activity.
 +
 +
== Guidelines ==
 +
 +
* Specially when doing layouts and designs, pay attention to [[FSD:Website guidelines]].
  
 
== Testing instance ==
 
== Testing instance ==
Line 27: Line 41:
  
 
I think we should keep these permissions for two reasons 1) the FSF will get gratis sysadmin work 2) the members in BAG will learn to work with the backend. For the moment only saper is a skilled MW admin but other group members would like learn how to maintain MW.
 
I think we should keep these permissions for two reasons 1) the FSF will get gratis sysadmin work 2) the members in BAG will learn to work with the backend. For the moment only saper is a skilled MW admin but other group members would like learn how to maintain MW.
 
== Candidates for membership ==
 
 
* People at irc://chat.freenode.net/#mediawiki and irc://chat.freenode.net/#semantic-mediawiki at <code>chat.freenode.net</code> if full of people that are skilled with ParserFunctions, we should gently ask if someone want to be part of our team.
 
  
 
== Testing pages in the main instance ==
 
== Testing pages in the main instance ==
Line 40: Line 50:
 
First read the [[FSD:Hack|hacking section]]. After this pick an aspect to modify.
 
First read the [[FSD:Hack|hacking section]]. After this pick an aspect to modify.
  
For properties, one could do like this:
+
If you don't know the property name that you want to work on, go to [[Form:Entry]] (or the <code>Submit a new entry</code> link in the navigation menu), then click on '''Edit'''. This is the form that appears for editing both new and existing entries, and to do so it uses many templates, all of which are responsible for actually setting the properties for each entry (look for lines with <code>{{{for template</code>). When done, [[Form:Entry]] automatically makes or updates a page which uses {{Tl|Entry}}, that is to be discussed later in this section.
  
* Property:<custom name>
+
Following along with the templates used by [[Form:Entry]], as an example, {{Tl|Project license}} sets [[Property:License]], and the form itself restricts it so that each usage [https://directory.fsf.org/wiki/Special:AllPages?from=&to=&namespace=502 must refer to an existing page in the License namespace]. In summary this is an example of a restriction/constraint defined inside the form.
* [[Form:Entry]] (click on Edit)
 
* [[Property:Has resource kind]]
 
* [[Property:License]]
 
* [[Property:Resource kind]]
 
* [[Template:Entry]]
 
* [[Template:Print entry]]
 
* [[Template:Print software category]]
 
* [[Template:Show]]
 
  
To manage possible properties for an entry and its templates, go to any entry and "Edit" it (without the form), in the bottom you will see a list of all templates it currently uses. All templates go like this:
+
When a page is being viewed by a visitor/guest, {{Tl|Entry}} calls {{Tl|Show}}, which in turn makes use of a series of other templates, all responsible for printing not only the properties set by {{Tl|Entry}} but by many other templates. On {{Tl|Show}}, look for <code>#ask:</code> and <code>#show:</code> Semantic MediaWiki queries.
  
* {{Tl|Entry}} is the property-setter, and is the one used by [[Form:Entry]], so {{Tl|Entry}} doesn't display anything to the pages by itself.
+
Now that you know the property name, in order to edit it as well as its type and other constraints, look at <code>Property:<Property name></code>. For example, [[Property:License]], is of type {{#show: Property:License |?Has type }}. This is an example of a restriction/constraint set inside the property's page (visit [[Property:License]] and click '''Edit''').
* {{Tl|Print entry}} is a intermediary --- it prints somethings but only if called.
 
* {{Tl|Show}} calls {{Tl|Print entry}} and other intermediary templates in order to display things.
 
* The first thing that {{Tl|Entry}} does is to call {{Tl|Show}}, then it proceeds to do all the property settings.
 
  
[[Form:Entry]] or (the <code>Submit a new entry</code> link in the navigation menu) is used to display editable things that can be found in "Edit with form". When done, [[Form:Entry]] automatically makes a page which uses {{Tl|Entry}}.
+
Some times, form constraints conflict with ones on the property's page, so templates might need to make intermediary changes.
  
 
== How to add file upload to form edit ==
 
== How to add file upload to form edit ==
Line 78: Line 77:
 
* Use (Main) as name space.
 
* Use (Main) as name space.
 
* Set "NAMESPACE:<title>" in the title wpNewTitleMain text form, example: "Draft:Main page"
 
* Set "NAMESPACE:<title>" in the title wpNewTitleMain text form, example: "Draft:Main page"
 
== Issues ==
 
 
=== Assigned ===
 
 
* [[FSD:Backlog active#Show changes (TOP_PRIORITY)]]: Adfeno
 
 
=== Not assigned ===
 
 
==== Set empty default values ====
 
 
This is a Semantic MediaWiki issue.
 
 
I find that most of my problems concerning empty or missing properties in a template are helped by setting default template values. You might need to poke runJobs.php. Then you can query on the default value. So you might have Template:Software looking like:
 
 
Software license: [[SoftwareLicense::{{{LICENSE|None}}}]]
 
 
Then you can pick out the pages with undeclared software license by ask'ing on [[SoftwareLicense::None]] to get the ones that aren't declared.
 
 
==== Homepage shouldn't be required ====
 
 
* The "Homepage" field should not mandatory to fill in entries. For [[Icedove]] doesn't have any homepage and it shouldn't be set to the Thunderbird homepage because it's not free due to trade mark issues.
 
* [[FSD:Backlog#Donald]]. <!-- always keep that link here -->
 
 
==== Non-official compiled/non-source releases ====
 
 
Should we add to [[FSD:Requirements]] that we only permit data related to official releases? For example, the current Windows download link for [[IceCat]] is unofficial, but it's made by jenslody@fedoraproject.org
 
(20:43:02) David_Hedlund: But it's still a unofficial release. I think we should discuss this policy.
 
  
 
== External links ==
 
== External links ==
  
 
* [https://www.mediawiki.org/wiki/Help:Magic_words Magic words]
 
* [https://www.mediawiki.org/wiki/Help:Magic_words Magic words]
 +
* [https://www.mediawiki.org/wiki/ResourceLoader/Core_modules MediaWiki's ResourceLoader Core Modules], which exposes many things that can be used for example, on [[MediaWiki:Common.js]] and similar JavaScript files.
  
 
[[Category:Project Team]]
 
[[Category:Project Team]]

Revision as of 09:19, 26 July 2021

The Backlog Admin Group (BAG) is a dedicated group to work on technical issues of our Backlog.

Team Captain: David Hedlund

 TZ database time zone nameIRC Freenode nick
Marcin CieślakEurope/Warsawsaper
Michael McMahonAmerica/New_Yorkthomzane

For internal meetings, the column about Property:TZ database time zone name from the above link can be used to display what would be the members' local time when the meeting start, given this example: TZ="MEMBER_TIME_ZONE" date --date='TZ="America/New_York" 12:00 this Fri'.

Pages

We need more members

People at Freenode#mediawiki and Freenode#semantic-mediawiki should be skilled in MediaWiki. We could gently ask if someone in those IRC channels wants to candidate to be a member of our team so we can solve more complex tasks in our Backlog faster.

Example of a generic participation request:
Hi $firstName,

I am an $senderRole of the Free Software Directory (FSD: <https://$currentDirectoryDomain/>), an ever-growing and user-editable web catalog of free software. We are searching for free software enthusiasts who are willing to dedicate their time and skills into volunteering for our project, with the ultimate aim of promoting free software and assisting end users. Your help is needed to translate or create the pages and/or, if you have computer science expertise, in verifying the existing pages and improving the functionalities of the FSD's infrastructure.
We await for your contributions during the weekly IRC meetings of the Free Software Foundation, don't miss out! (guide: <https://$currentDirectoryDomain/wiki/Free_Software_Directory:Participate>)

Best regards,
%senderName

Membership policy

  • The Backlog Admin Group only accept volunteers with Administrator privileges.

Schedule

  • We'll schedule meetings every year or so to actually operate in group activity.

Guidelines

Testing instance

During David's internship: The BAG members got full access to a fresh copy of the main server to investigate setting files etc:

The FSF will consider if we will keep it after David's internship.

I think we should keep these permissions for two reasons 1) the FSF will get gratis sysadmin work 2) the members in BAG will learn to work with the backend. For the moment only saper is a skilled MW admin but other group members would like learn how to maintain MW.

Testing pages in the main instance

See the test category.

How to modify Form:Entry

First read the hacking section. After this pick an aspect to modify.

If you don't know the property name that you want to work on, go to Form:Entry (or the Submit a new entry link in the navigation menu), then click on Edit. This is the form that appears for editing both new and existing entries, and to do so it uses many templates, all of which are responsible for actually setting the properties for each entry (look for lines with {{{for template). When done, Form:Entry automatically makes or updates a page which uses {{Entry}}, that is to be discussed later in this section.

Following along with the templates used by Form:Entry, as an example, {{Project license}} sets Property:License, and the form itself restricts it so that each usage must refer to an existing page in the License namespace. In summary this is an example of a restriction/constraint defined inside the form.

When a page is being viewed by a visitor/guest, {{Entry}} calls {{Show}}, which in turn makes use of a series of other templates, all responsible for printing not only the properties set by {{Entry}} but by many other templates. On {{Show}}, look for #ask: and #show: Semantic MediaWiki queries.

Now that you know the property name, in order to edit it as well as its type and other constraints, look at Property:<Property name>. For example, Property:License, is of type Page. This is an example of a restriction/constraint set inside the property's page (visit Property:License and click Edit).

Some times, form constraints conflict with ones on the property's page, so templates might need to make intermediary changes.

How to add file upload to form edit

To do.

Special pages not found in Special:SpecialPages

Special workarounds

Unlisted name spaces

  • Move the page
  • Use (Main) as name space.
  • Set "NAMESPACE:<title>" in the title wpNewTitleMain text form, example: "Draft:Main page"

External links



Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.