Fehlerverfolger

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Tracker and the translation is 71% complete.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎svenska • ‎русский • ‎中文 • ‎中文(中国大陆)‎ • ‎日本語
Arrow-left.svg Lizenz Vorherige:
Nächste: Fehlersichtung Arrow-right.svg
link=https://freecadweb.org/tracker/MantisBT ist das von FreeCAD verwendete Fehlerverfolger Rahmenstruktur

Der FreeCAD FehlerVerfolger ist der Ort umː Fehler zu melden, Funktionsanfragen zu übermitteln, Änderungssätze einzureichen oder deine Verzweigung zusammenführen zu können, wenn du etwas unter Verwendung von Git entwickelt hast. Der Verfolger ist in 'Arbeitsbereiche' unterteilt, also sei bitte präzise und reiche deine Anfrage in dem entsprechenden Unterabschnitt ein. Im Zweifelsfall belasse sie im Abschnitt "FreeCAD".


Empfohlener Arbeitsablauf

Bugreport-workflow.png

Wie im obigen Flussdiagramm dargestellt, durchsuche bitte vor dem Erstellen von Tickets immer zuerst die Foren und den Fehlerverfolger, um herauszufinden, ob dein Problem ein bekanntes Problem ist. Dies erspart Entwicklern und Freiwilligen eine Menge Zeit/Arbeit, die diese Zeit damit verbringen könnte, FreeCAD noch fantastischer zu machen.

Fehler melden

Wenn du glaubst, einen Fehler gefunden zu haben, kannst du ihn gerne melden, solange du unsere Schritt-für-Schritt-Richtlinien befolgt hast.

  • Make sure you're using the most up to date version of FreeCAD. NOTEː your bug may be fixed in the Development (unstable) version. The average user runs the stable version of FC.
  • Make sure your bug is really a bug, that is, something that should be working but isn't. Make sure the same bug hasn't been reported before by first searching the bugtracker and forum.
    • Rememberː if you aren't sure, please don't hesitate to explain your problem/bug in the Help forum and ask what to do.
    • Noteː before posting to the forum please read the Forum Guidelines.
  • Describe as clearly as possible the problem, and how it can be reproduced. If we can not verify the bug, we might not be able to fix it.
    • This means reporting in a clear, well-formatted, step-by-step fashion so even an amateur user could reproduce.
    • Recommendedː Screenshots of the bug are also very helpful to include. Windows users: please do not attach screen captures in Word or PDF format. Use the Windows Snipping tool to save your capture as a PNG image.
    • Recommendedː Even better, an Animated gif or Screencast would also increase the likelihood of reproducing the issue.
  • Add an example FreeCAD file (.FCStd file) so devs/testers can quickly reproduce the bug.
    • Please don't zip your *.FCStd file, it is already zipped.
    • File attachments are limited in size. If your *.FCStd file is too big to attach, you can use an online storage service (many are free like Google Drive, Microsoft OneDrive, Dropbox).
  • Include all the information from the "Copy to Clipboard" button in the Help (menu) -> About FreeCAD dialogue. Make sure your data includes your OCC or OCE version.
  • Please file one separate report for each bug.
  • If your bug causes a crash in FreeCAD and you're on a system that supports it you can try running a debug backtrace and attach said trace to the ticket. This can save devs a lot of time pinpointing the source of the crash. See Debugging for more details.

Anfordern von Funktionen

Wenn du möchtest, dass etwas in FreeCAD erscheint, das noch nicht implementiert ist, es handelt sich nicht um einen Fehler, sondern um eine Funktionsanfrage.

  1. WICHTIGː Bevor ein potentielle Funktionsanfrage gestellt wird, stelle bitte sicher, dass du der erstebist, der dies tut, indem du die Foren und den Fehlerverfolger durchsuchst. Wenn du zu dem Schluss gekommen bist, dass es keine bereits existierenden Tickets / Diskussionen gibt, ist der nächste Schrittː
  2. Starte einen Forumsbeitrag, um deinen Funktionsanfrage mit der Gemeinschaft über das Diskussionsforum öffnen zu diskutieren.
  3. Sobald die Gemeinschaft damit einverstanden ist, dass es sich um ein gültige Funktion handelt, kannst du ein Ticket auf dem Fehlerverfolger öffnen (legen es unter Funktionsanfrage statt Fehler ab).
  • ANMERKUNG #1 Um die Dinge in Ordnung zu halten, denke bitte daran, die URL des Forumsbeitrag in das Ticket und die Ticketnummer (als Verknüpfung) in den Forumbeitrag zu verknüpfen.
  • Beachte bitte, dass es keine Garantien gibt, dass dein Wunsch erfüllt wird.
FreeCAD Fehlerverfolger-Berichtsseite - verwende die Auswahlliste, um korrekt zu bestimmen, was das Ticket ist

Einreichen von Änderungssätzen

Falls du eine Fehlerbehebung, eine Erweiterung oder etwas anderes programmiert hast, das in FreeCAD von öffentlichem Nutzen sein kann, erstelle einen Änderungssatz mit dem Git diff Werkzeug und sende ihn auf demselben Fehlerverfolger (Datei als Patch ablegen).

Addendumː FreeCAD development has switched to the GitHub development model so the workflow for submitting patches has been greatly enhanced/streamlined by submitting Pull Requests.

  • Open a forum thread in the Developer subforum to announce and discuss your patch.
  • Submit your PR to the FreeCAD GitHub repo. Be sure to link the forum thread in to the git commit summary.
  • Paste the PR link in to the forum thread for the devs/testers to test.
  • Be present for the discussion so that your code can potentially be merged more effectively.

NOTEː the FreeCAD community recommends to first discuss any large revision to the source code in advance to save everyone time.

Zusammenführen anfragen

(Dieselben Richtlinien wie Einreichen von Änderungssätzen)

If you have created a git branch containing changes that you would like to see merged into the FreeCAD code, you can ask there to have your branch reviewed and merged if the FreeCAD developers are OK with it. You must first publish your branch to a public git repository (github, gitlab, bitbucket, sourceforge etc...) and then give the URL of your branch in your merge request.

MantisBT Tips und Tricks

MantisBT Markup

MantisBT (Mantis Bug Tracker) has it's own unique markup.

  • @mention - works just like on GitHub where if you prepend '@' to someone's username they will receive an email that they have been 'mentioned' in a ticket thread
Mantisbt-mention-example.jpg
  • #1234 - By adding a hash tag in front of a number a shortcut to link to another ticket within MantisBT will present.
    Note: if you hover over a ticket it will show you the summary + if the ticket is closed, it will be struck-through like #1234.
Mantisbt-ticket-shortcut-example.jpg
  • ~5678 - a shortcut that links to a bug note within a ticket. This can be used to reference someone's response within the thread. Each person that posts will show a unique ~#### number next to their username. If you look at the image in the example, you see that the shortcut is referencing the ticket number:comment number of said ticket
Mantisbt-comment-shortcut-example.jpg
  • <del></del> - Using these tags will strikeout text.
Mantisbt-strikeout-text-example.jpg
  • <code></code> - To present a line or block of code, use this tag and it will colorize and differentiate it elegantly.
Mantisbt-colorized-code-example.jpg

MantisBT BBCode

In addition to the above MantisBT Markup one also has the possibility to use BBCode format. For a comprehensive list see the BBCode plus plugin page. Here is a list of supported BBCode tagsː
[img][/img] - Images
[url][/url] - Links
[email][/email] - Email addresses
[color=red][/color] - Colored text
[highlight=yellow][/highlight] - Highlighted text
[size][/size] - Font size
[list][/list] - Lists
[list=1][/list] - Numbered lists (number is starting number)
[*] - List items
[b][/b] - Bold
[u][/u] - underline
[i][/i] - Italic
[s][/s] - Strikethrough
[left][/left] - Left align
[center][/center] - Center
[right][/right] - Right align
[justify][/justify] - Justify
[hr] - Horizontal rule
[sub][/sub] - Subscript
[sup][/sup] - Superscript
[table][/table] - Table
[table=1][/table] - Table with border of specified width
[tr][/tr] - Table row
[td][/td] - Table column
[code][/code] - Code block
[code=sql][/code] - Code block with language definition
[code start=3][/code] - Code block with line numbers starting at number
[quote][/quote] - Quote by *someone* (no name)
[quote=name][/quote] - Quote by *name*

MantisBT <=> GitHub Markup

Below are special MantisBT Source-Integration plugin keywords which will link to the FreeCAD GitHub repo. See Tracker#GitHub_and_MantisBT.

  • c:FreeCAD:git commit hash: - c stands for 'commit'. FreeCAD stands for the FreeCAD GitHub repo. 'git commit hash' is the specific git commit hash to reference. Note: the trailing colon is necessary. Exampleː cːFreeCADː709d2f325db0490016807b8fa6f49d1c867b6bd8ː
  • d:FreeCAD:git commit hash: - similar to the above, d stands for 'diff' which will provide a Diff view of the commit. Exampleː dːFreeCADː709d2f325db0490016807b8fa6f49d1c867b6bd8ː
  • p:FreeCAD:pullrequest: - similar to the above, p stands for Pull Request. Exampleː pːFreeCADː498ː
Mantisbt-source-integration-markup.jpg


GitHub und MantisBT

Der FreeCAD Fehlerverfolger verfügt über ein ZUsatzprogramm namens Quellintegration, das im Wesentlichen sowohl das FreeCAD GitHub Repo als auch unseren MantisBT Fehlerverolger verbindet. Es macht es einfacher, Git Verpflichtungen zu verfolgen und mit ihren jeweiligen MantisBT Tickets zu verknüpfen. Das Quellintegrationszusatzprogramm durchsucht die Git Verpflichtungsnachrichten nach bestimmten Schlüsselwörtern, um die folgenden Aktionen auszuführen:

Hinweis Die folgenden Schlüsselwörter müssen in der git commit message und nicht im PR Thema hinzugefügt werden

Remotely referencing a ticket

Using this pattern will automagically associate a git commit to a ticket (Note: this will not close the ticket.) The format MantisBT will recognize:

  • bug #1234
  • bugs #1234, #5678
  • issue #1234
  • issues #1234, #5678
  • report #1234
  • reports #1234, #5678

For the inquisitive here is the regex MantisBT uses for this operation:
/(?:bugs?|issues?|reports?)+\s*:?\s+(?:#(?:\d+)[,\.\s]*)+/i

Remotely resolving a ticket

The format MantisBT will recognize:

  • fix #1234
  • fixed #1234
  • fixes #1234
  • fixed #1234, #5678
  • fixes #1234, #5678
  • resolve #1234
  • resolved #1234
  • resolves #1234
  • resolved #1234, #5678
  • resolves #1234, #5678

For the inquisitive here is the regex MantisBT uses for this operation:
/(?:fixe?d?s?|resolved?s?)+\s*:?\s+(?:#(?:\d+)[,\.\s]*)+/i

Verwandtes

Arrow-left.svg Lizenz Vorherige:
Nächste: Fehlersichtung Arrow-right.svg