Tracker

From FreeCAD Documentation
Jump to: navigation, search
This page is a translated version of the page Tracker and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎日本語 • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎русский • ‎svenska • ‎Türkçe • ‎中文 • ‎中文(中国大陆)‎
Arrow-left.svg Licencja poprzedni:
link=https://freecadweb.org/tracker/MantisBT jest frameworkiem bugtrackerów, z którego korzystają użytkownicy FreeCAD

FreeCAD BugTracker jest miejscem, na którym to możnaː zgłaszać błędy, przesyłać prośby o funkcje, poprawki lub prośby o połączenie oddziału, jeśli opracowałeś coś przy użyciu Gita. Tracker jest podzielony na Środowiska pracy, więc proszę być konkretnym i złożyć wniosek w odpowiedniej podsekcji. W razie wątpliwości należy pozostawić go w sekcji FreeCAD.


Zalecany przepływ pracy

Bugreport-workflow.png

Jak pokazano na powyższym schemacie, przed utworzeniem zgłoszenia należy zawsze najpierw przeszukać forum i bugtracker, aby dowiedzieć się, czy Twój problem jest znany. Oszczędza to mnóstwo czasu/ pracy dla programistów i wolontariuszy, którzy mogliby poświęcić ten czas czyniąc FreeCAD jeszcze bardziej niesamowitym.

Zgłaszanie błędów

Jeśli uważasz, że mogłeś znaleźć błąd, możesz go zgłosić, pod warunkiem, że postępowałeś zgodnie z naszymi zasadami krok po krokuː

  • Upewnij się, że używasz najbardziej aktualnej wersji FreeCAD. UWAGAː. Twój błąd może zostać naprawiony w wersji rozwojowej (niestabilnej). Zwykle użytkownicy korzystają z wersji stabilnej FC.
  • Upewnij się, że twój błąd jest naprawdę błędem, to znaczy czymś, co powinno działać, ale nie działa. Upewnij się, że ten sam błąd nie został wcześniej zgłoszony, poprzez wstępne przeszukanie bugtrackera i forum.
    • Pamiętaj, żeː jeśli nie jesteś pewien, nie wahaj się wyjaśnić swojego problemu/błędu na Forum Pomocy i zapytaj co robić.
    • Uwagaː przed wysłaniem postu na forum proszę przeczytać Przewodnik po forum.
  • Opisuj jak najdokładniej problem, i jak można go odtworzyć. Jeśli nie możemy zweryfikować błędu, możemy nie być w stanie go naprawić.
    • Oznacza to zgłaszanie w sposób jasny, dobrze sformatowany, krok po kroku, aby nawet użytkownik amator mógł go odtworzyć.
    • Zalecamyː załączać Zrzuty ekranu błędu, są również bardzo pomocne. Użytkownicy Windows: proszę nie dołączać zrzutów ekranu w formacie Word lub PDF. Użyj narzędzia Windows Snipping do zapisania zrzutu jako obrazu PNG.
    • Zalecamyː Jeszcze lepszym będzie, "Animowany gif lub Screencast" zwiększyłby prawdopodobieństwo udanego powielenia problemu.
  • Dodaj przykładowy plik FreeCAD (.FCStd), aby programiści/testerzy mogli szybko odtworzyć błąd.
    • Proszę nie pakować pliku *.FCStd, jest już skompresowany.
    • Załączniki są ograniczone rozmiarem. Jeśli Twój plik *.FCStd jest zbyt duży, aby go załączyć, możesz skorzystać z usługi dysku online (wiele z nich jest darmowych jak Google Drive, Microsoft OneDrive, Dropbox).
  • Dołącz wszystkie informacje zawarte w oknie dialogowym Pomoc (menu) -> O programie FreeCAD, używając w przycisku Kopiuj do schowka. Upewnij się, że twoje dane zawierają używaną wersję OCC lub OCE.
  • Proszę złożyć jeden osobny raport dla każdego błędu.
  • Jeśli twój błąd powoduje awarię programu FreeCAD i jesteś w systemie, który go obsługuje, możesz spróbować uruchomić debug backtrace i dołączyć ten ślad do zgłoszenia. To może zaoszczędzić programistom dużo czasu przez wskazywanie źródła błędu. Zobacz Debugging po więcej szczegółów.

Oczekiwane funkcje

Jeśli chcesz, aby w FreeCAD pojawiło się coś, co nie jest jeszcze zaimplementowane, to nie jest błędem, ale żądaniem funkcji.

  1. WAŻNEː Przed złożeniem zapytania o potencjalną funkcję upewnij się, że jesteś pierwszy, przeszukując forum i bugtracker. Jeśli doszedłeś do wniosku, że nie istnieją wcześniejsze zgłoszenia lub dyskusje, następnym krokiem jest toː
  2. Utwórz wątek na forum, aby przedyskutować swoją prośbę o funkcje ze społecznością poprzez forum.
  3. Gdy społeczność zgodzi się, że jest to ważna funkcja, możesz otworzyć zgłoszenie na trackerze (wpisz je pod żądanie funkcji zamiast błąd).
  • UWAGA #1 Aby zachować porządek, należy pamiętać o umieszczeniu adresu URL zgłoszenia w wątku forum, oraz numeru zgłoszenia (jako linku).
  • UWAGA #2 Pamiętaj, że nie ma gwarancji, że twoje życzenie zostanie spełnione.
    Strona z raportem FreeCAD Bugtracker - użyj rozwijanego menu, aby poprawnie określić, czym jest zgłoszenie.

Przesyłanie łatek

Jeśli zaprogramowałeś poprawkę dotyczącą błędu, rozszerzenie lub coś innego, co może być użyteczne publicznie w programie FreeCADe, stwórz łatkę używając narzędzia Git diff i prześlij ją na tym samym trackerze (zapisz ją jako łatkę).

Uzupełnienieː Rozwijanie programu FreeCAD zostało oparte na modelu GitHub, więc przepływ pracy przy przesyłaniu łatek został znacznie ulepszony i uzupełniony poprzez przesyłanie Pull Requests.

  • Otwórz wątek na forum, w podforum dewelopera, aby ogłosić i omówić swój patch.
  • Wyślij swój PR do FreeCAD repozytorium GitHub. Upewnij się, że połączyłeś wątek forum z podsumowaniem git commit.
  • Wklej link PR do wątku forum dla testerów deweloperów.
  • Bądź obecny podczas dyskusji, aby Twój kod mógł być potencjalnie efektywniej połączony.

UWAGA:, społeczność FreeCAD zaleca, aby najpierw przedyskutować każdą dużą zmianę kodu źródłowego, w celu oszczędności czasu.

Wnioskowanie o połączenie

(Te same wytyczne co Przesyłanie łatek).

Jeśli stworzyłeś gałąź gita zawierającą zmiany, które chciałbyś zobaczyć w kodzie FreeCAD, możesz tam poprosić o recenzję i połączenie swojej gałęzi, jeśli deweloperzy FreeCAD są wobec niej zgodni. Musisz najpierw opublikować swoją gałąź w publicznym repozytorium git (github, gitlab, bitbucket, sourceforge itp...), a następnie podać adres URL Twojej gałęzi w swoim wniosku o połączenie.

Wskazówki i sztuczki MantisBT

Znacznik MantisBT

MantisBT (Mantis Bug Tracker) ma swój własny unikalny znacznik.

  • @ Wspomniany - działa tak jak na GitHubie, gdzie jeśli wyślesz @ na czyjąś nazwę użytkownika, osoba ta otrzyma powiadomienie email, że została wymieniona w wątku zgłoszenia.
Mantisbt-mention-example.jpg
  • #1234 - Poprzez dodanie znaku # przed numerem pojawi się skrót do połączenia z innym zgłoszeniem w MantisBT.
    Uwaga: jeśli najedziesz kursorem na zgłoszenie, wyświetli się podsumowanie + jeśli bilet jest zamknięty, zostanie przekreślony jak # 1234.
Mantisbt-ticket-shortcut-example.jpg
  • ~5678 - skrót, który łączy się z notatką o błędzie w zgłoszeniu. Może być użyty do odniesienia się do czyjejś odpowiedzi w obrębie wątku. Każda osoba, która umieściła zgłoszenie, będzie miała przy swojej nazwie użytkownika wyświetlony unikalny numer ~#####. Jeśli spojrzysz na obrazek w przykładzie, zobaczysz, że skrót odnosi się do numeru zgłoszenia:numeru komentarza tego zgłoszenia.
Mantisbt-comment-shortcut-example.jpg
  • <del> </del> - Te tagi będą przekreślać tekst.
Mantisbt-strikeout-text-example.jpg
  • <code> </code> - Aby przedstawić linię lub blok kodu, użyj tego znacznika, a on pokoloruje i elegancko go wyróżni.
Mantisbt-colorized-code-example.jpg

MantisBT BBCode

Oprócz powyższego Znaczniki MantisBT istnieje również możliwość korzystania z formatu BBCode. Pełna lista znajduje się na stronie BBCode plus strona z pluginami. Poniżej znajduje się lista obsługiwanych formatów BBCodeː
[img][/img] - obrazek
[url][/url] - odnośnik internetowy
[email][/email] - adres Email
[color=red][/color] - kolorowy tekst
[highlight=yellow][/highlight] - Podświetlony tekst
[size][/size] - wielkość Fonta
[list][/list] - lista
[list=1][/list] - lista numerowana (cyfra jest numerem początkowym)
[*] - pozycje z listy
[b][/b] - pogrubiony
[u][/u] - podkreślony
[i][/i] - ukośny
[s][/s] - przekreślony
[left][/left] - wyrównany do lewej
[center][/center] - wyrównany do środka
[right][/right] - wyrównany do prawej
[justify][/justify] - wyjustowany
[hr] - reguła pozioma
[sub][/sub] - indeks dolny
[sup][/sup] - index górny
[table][/table] - tabela
[table=1][/table] - tabela z ramką o określonej szerokości
[tr][/tr] - wiersz tabeli
[td][/td] - kolumna tabeli
[code][/code] - blok z kodem
[code=sql][/code] - blok kodu z definicją języka
[code start=3][/code] - blok kodu z numerami linii zaczynającymi się od cyfry
[quote][/quote] - Cytat *ktoś* (bez imienia)
[quote=name][/quote] - Cytat według *nazwa*

MantisBT <=> znaczniki GitHub

Poniżej znajdują się specjalne słowa kluczowe pluginu MantisBT Source-Integration, który łączy się z repo FreeCAD GitHub. Zobacz Tracker#GitHub_and_MantisBT.

  • c:FreeCAD:git commit hash: - c oznacza commit. FreeCAD oznacza GitHub FreeCAD repo. git commit hash to konkretny skrót git commit, do którego nastąpiło odwołanie. Uwaga: konieczne jest użycie dwukropka wskazującego. Przykładː cːFreeCADː709d2f325db0490016807b8fa6f49d1c867b6bd8ː
  • d:FreeCAD:git commit hash: - podobny do powyższego, d oznacza "diff", co zapewni odmienny pogląd na temat danego zobowiązania. Przykładː dːFreeCADː709d2f325db0490016807b8fa6f49d1c867b6bd8ː
  • p:FreeCAD:pullrequest: - podobny do powyższego, p oznacza Pull Request. Przykładː pːFreeCADː498ː
Mantisbt-source-integration-markup.jpg


GitHub oraz MantisBT

FreeCAD bugtracker posiada wtyczkę o nazwie Source Integration, która zasadniczo wiąże oba FreeCAD GitHub repo z naszym trackerem MantisBT. Ułatwia to śledzenie i kojarzenie zgłoszeń git z ich odpowiednimi zgłoszeniami do MantisBT. Plugin Source Integration skanuje komunikaty git commit w poszukiwaniu konkretnych słów kluczowych w celu wykonania następujących działań:.

Uwaga Poniższe słowa kluczowe muszą być dodane w git commit message, a nie w temacie PR.

Zdalne odwoływanie się do zgłoszenia.

Użycie tego wzorca automatycznie połączy git commit do zgłoszenia (Uwaga: to nie zamknie zgłoszenia). Format MantisBT rozpozna:

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

Dla dociekliwych tutaj jest wyrażenie regularne, którego używa MantisBT do tej operacji:
/(?:bugs?|issues?|reports?)+\s*:?\s+(?:#(?:\d+)[,\.\s]*)+/i

Rozwiązywanie zdalnie zgłoszeń

Interfejs MantisBT rozpoznaje format:

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

Dla dociekliwych: mamy tu zastosowanie wyrażenia regularnego MantisBT do tej operacji:
/(?:fixe?d?s?|resolved?s?)+\s*:?\s+(?:#(?:\d+)[,\.\s]*)+/i

Powiązane

Arrow-left.svg Licencja poprzedni: