Sign in Join
Wiki copytemporary

How To Help Developing Lazarus/id: what changed

Revision 2 to 3. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11## Kebutuhan dasar untuk mengembangkan Lazarus
22
33Ada dua hal yang perlu diperhatikan:
44
55- Anda harus memiliki FreePascal Compiler (FPC) Keluaran terakhir atau versi SVN terkini (misalnya versi yang akan datang). Untuk mendapatkan FPC, lihat [FreePascal download](http://www.freepascal.org/download.html).
66- Anda **harus** memiliki Lazarus versi paling baru dari SVN. Untuk mendapatkannya, lihat [[Getting Lazarus/id|Mendapatkan Lazarus melalui SVN]].
77
88## Bagian pengembangan
99
1010Jadi sekarang anda telah memiliki Lazarus versi terkahir dan akan memulai memperbaikinya, tetapi anda bertanya pada diri sendiri "Bagian mana saya harus memulai?" Baiklah, Hal ini sangat tergantung pada hal-hal lain.
1111
1212### Kesalahan-kesalahan yang diketahui
1313
1414Bila anda tidak memiliki kesulitan yang berarti tentang Lazarus, tetapi sekedar ingin membantu, Maka saya akan mengusulkan agar anda melihat daftar kesalahan [Bug Tracker](http://www.lazarus.freepascal.org/mantis/main_page.php) Tentukan sebuah kesalahan yang menurut anda dapat anda perbaiki, lalu mulailah memperbaikinya. Tim Lazarus mementingkan Kesalahan - kesalahan terbuka dalam [[Road To 1.0/id|Perjalanan menuju 1.0]].
1515
1616### Dokumentasi
1717
1818Lazarus membutuhkan lebih banyak dokumentasi! Jika anda tidak ingin memperbaiki sebuah kesalahan, anda dapat membantu dengan menulis dokumentasi. Walaupun halaman ini terus berkembang. Bila anda memiliki informasi berguna untuk ditambahkan, silahkan perbaiki isi halaman ini sesuka hati.
1919
2020Lihat [[Lazarus Documentation Editor/id|Editor Dokumentasi Lazarus]] dan [[LCL Documentation Roadmap/id|Perjalanan Dokumentasi LCL]] untk beberapa bantuan tentang bagaimana dan daftar unit-unit yang harus didokumentasikan.
2121
2222Bantuan Online tentang IDE secara bertahap sedang dibuat sebagai bagian dari wiki. Akhir-akhir ini banyak sub-sub halaman dari dokumentasi [[Lazarus IDE/id|Lazarus IDE]] tentang jendela-jendela IDE telah ditambahkan. Saat bekerja dengan IDE, jika anda membutuhkan bantua, tekan F1. Anda akan ditampilkan halamana bantuan wiki (mungkin kosong atau belum lengkap). Kembangkan, Jika anda memiliki pengetahuan.
2323
2424### IDE
2525
2626Lihat tautan: [[Extending the IDE/id|Memperluas IDE]], [[Road To 1.0/id|Perjalanan menuju 1.0]].
2727
2828### Widgetset-Widgetset ("Antar muka")
2929
3030widgetset (WS) adalah "kode perekat" antara bagian kode LCL yang tidak tergantung pada Sistem Operasi (OS-Operating System) sasaran dan Sistem Operasi itu sendiri. Untuk setiap OS sasaran yang didukung, unit-unit WS yang berhubungan dapat ditemui pada salah satu sub-direktori di C:\Lazarus\lcl\interfaces\\.
3131
3232Dibawah ini adalah langkah-langkah secara umum yang harus dilakukan, untuk mengembangkan WS (penjelasan disediakan oleh Mattias Gärtner pada "mailing list" Lazarus tanggal 15-07-2006). Saat membuat perubahan-perubahan pada WS, tidak diperlukan membangun ulang seluruhnya (Lazarus termasuk IDE), dengan maksud mencoba efek dari perubahan - perubahan itu. Lakukan sesuai berikut:\
3333
34-`* Buat proyek Program_Percobaan anda (sebuah program yang mengandung `\
35-`  kode percobaan untuk perubahan-perubahan WS anda);`\
36-`* Set tombol pintas papan ketik untuk 'Build Lazars' dan 'Configure Build Lazarus' `\
37-`  (pada IDE, pilih Editor Options/Keymapping);`\
38-**`repeat`**\
39-` * Set "Build Lazarus" agar hanya membangun LCL`\
40-`  (pada IDE, pilihh Tools/Configure "Build Lazarus");`\
41-` `**`repeat`**\
42-`  * Buat pengembangan pada kode WS;`\
43-`  * Bangun Lazarus (pada IDE, pilih Tools/Build Lazarus `\
44-`    - Ini hanya akan membangun ulang LCL, yang juga akan membangun ulang WS yang dipilih);`\
45-`  * Sekarang compile Program_Percobaan anda;`\
46-`  * Run dan debug program anda;`\
47-` `**`until`**` tidak ada kesalahan-kesalahan yang ditemukan pada perubahan yang dilakukan;`\
48-` * Konfigurasi ulang "Build Lazarus" agar membangun segalanya`\
49-`   (pada IDE, pilih kembali Tools/Configure "Build Lazarus");`\
50-` * Bangun kembali Lazarus dan cek IDE;`\
51-**`until`**` tidak ada kesalahan/penurunan gradasi yang ditemukan di IDE `\
52-`      berhubungan dengan perubahan yang anda lakukan;`\
53-`* Buat sebuah tambalan (patch) dan kirimkan (lihat dibawah untuk lebih jelasnyas).`
34+``` pascal
35+* Buat proyek Program_Percobaan anda (sebuah program yang mengandung
36+ kode percobaan untuk perubahan-perubahan WS anda);
37+* Set tombol pintas papan ketik untuk 'Build Lazars' dan 'Configure Build Lazarus'
38+ (pada IDE, pilih Editor Options/Keymapping);
39+<u>repeat</u>
40+ * Set "Build Lazarus" agar hanya membangun LCL
41+ (pada IDE, pilihh Tools/Configure "Build Lazarus");
42+ <u>repeat</u>
43+ * Buat pengembangan pada kode WS;
44+ * Bangun Lazarus (pada IDE, pilih Tools/Build Lazarus
45+ - Ini hanya akan membangun ulang LCL, yang juga akan membangun ulang WS yang dipilih);
46+ * Sekarang compile Program_Percobaan anda;
47+ * Run dan debug program anda;
48+ <u>until</u> tidak ada kesalahan-kesalahan yang ditemukan pada perubahan yang dilakukan;
49+ * Konfigurasi ulang "Build Lazarus" agar membangun segalanya
50+ (pada IDE, pilih kembali Tools/Configure "Build Lazarus");
51+ * Bangun kembali Lazarus dan cek IDE;
52+<u>until</u> tidak ada kesalahan/penurunan gradasi yang ditemukan di IDE
53+ berhubungan dengan perubahan yang anda lakukan;
54+* Buat sebuah tambalan (patch) dan kirimkan (lihat dibawah untuk lebih jelasnyas).
55+```
5456
5557## Bagaimana mengajukan perubahan-perubahan anda?
5658
5759Anda harus membuat "patch" (lihat [[Membuat Patch]]). Cara pengajuan patch ke pengembang Lazarus yang disukai adalah dengan membuat pengumuman di pelacakan kesalahan (bug tracker) dan menyertakan patch-nya. Sebagai pilihan lain, anda dapat mengirimnya ke "mailing list" (ukuran maksimal 40 KiB) atau ke kotak surat untuk patch-patch <patch@lazarus.dommelstein.net>.
5860
5961## Dealing with regressions
6062
6163From time to time changes on the Lazarus source code might cause features which worked before stop working. In case there is no clue of what caused the break it may be useful to do a iteration method to determine exactly which revision caused the problem.
6264
6365This process is simple, althougth somewhat time consuming:
6466
6567Suppose it works with rev 1000 and not with 5000. Then test with 3000. Testing requires updating the svn code, rebuilding lcl for desired widgetset, rebuilding a test application which uses the feature and testing this application. If it works, repeat with 3000 and 5000 as extremes. If not, use 1000 and 3000 as extremes.
6668
6769After some time you should be able to isolate which revision broke it. This information makes fixing the problem much easier, so we encourage people helping to develop Lazarus to try this process and post this information on bug reports in case they are regressions with no clear clue of what went wrong.
6870
6971To check to which data each revision correspondes one can use the [Lazarus ViewCVS](http://svn.freepascal.org/cgi-bin/viewvc.cgi/?root=lazarus). After the interval of revisions was reduced to a relative small number, like 25 or so, it may be quicker to check the revisions with ViewCVS and check which are possible canditates for the break, to speed up the final part.
7072
7173One can obtein a particular revision using the command:
7274
73-`svn update -r <revision number>`
75+```text
76+svn update -r <revision number>
77+```
7478
7579## Need more help?
7680
7781If you have any question you can ask them on one of the following places:
7882
7983- The Lazarus Mailing list (see [Mailing list](http://www.lazarus.freepascal.org/modules.php?op=modload&name=StaticPage&file=index&sURL=maill))
8084- The \#lazarus-ide IRC channel on irc.freenode.net.
8185
8286---
8387*From the Free Pascal wiki, page "How To Help Developing Lazarus/id", as it stood on 2008-02-27 after a change by Swen, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history