Product SiteDocumentation Site

5. Veranderingen in Fedora voor ontwikkelaars

5.1. Ontwikkelgereedschappen

5.1.1. Ada

Ada is een moderne programmeertaal ontworpen voor grote, langdurig in gebruik zijnde toepassingen – en embedded systemen in het bijzonder – waar betrouwbaarheid en efficiëntie essentieel zijn. Het werd oorspronkelijk ontworpen in de vroege 80er jaren (deze versie is algemeen beken als Ada 83) door een team onder leiding van Dr. Jean Ichbiah bij CII-Honeywell-Bull in Frankrijk. De taal werd herzien en verbeterd op een upward-compatibele manier in de vroege 90er jaren onder leiding van Mr. Tucker Taft van Intermetrics in de V.S. De resulterende taal, Ada 95, was de eerste internationaal gestandaardiseerde (ISO) Object-Oriented Language. Onder de auspiciën van ISO werd een (kleine) revisie gemaakt als toevoeging aan de standaard; deze versie van de staal staat bekend als Ada 2005. Op dit moment wordt gewerkt aan een paar extra functies (inclusief ondersteuning voor programma annotaties) welke naar verwachting in 2012 klaar zal zijn.
Fedora 16 bevat de nieuwste open bron Ada ontwikkelgereedschappen.
  • Fedora 16 bevat de volledige stack gereedschapen voor ADA ontwikkeling: compiler (gcc-gnat), project bouwer (gprbuild), IDE (GPS) en een aantal andere
  • Ada bindingen voor de meeste populaire gereedschappen zoals: GTK, Qt, zeromq, databases (PostgreSQL, MySQL en SQLite) enz.

5.1.2. autoconf-archive

Het GNU Autoconf archief is een verzameling van meer dan 450 macro's voor GNU Autoconf die als vrije software aangeleverd zijn door vriendelijke ondersteuners van het goede doel over het hele Internet. Versie 2011.04.12 is nu onderdeel van Fedora 16. Refereer naar http://www.gnu.org/software/autoconf-archive/index.html voor de project details.

5.1.3. be

Bugs Everywhere is een “verspreide bug volger”, ontworpen voor het complementeren van verspreide revisie controle systemen. Met het gebruik van verspreide revisie controle als een backend voor bug status, verkrijgen we verschillende nuttige eigenschappen:
  • Bugs en code die zich bevinden op een tak worden tegelijk gevolgd—als een tak samengevoegd wordt, worden zowel de code veranderingen als bug veranderingen van die tak naast elkaar samengevoegd. We hoeven er ons geen zorgen meer over te maken of een reparatie die toegepast is op de ontwikkeltak maar nog niet aanwezig in de productie tak nu wel of niet "gerepareerd" is.
  • Gebruikers kunnen de bug status offline volledig veranderen, dit in tegenstelling tot vele gecentraliseerde bug volgers.
  • Als een gebruiker jouw bron code uitcheckt, krijgt deze de huidige bug status mee.
  • We kunnen nog steeds toegang met een vriendelijke web interface voor gebruikers bieden—in dit model wordt een web interface gewoon een andere client de samenvoegt met de hoofd repository.
Fedora 16 bevat versie 1.0.1.

5.1.4. btparser

btparser is een backtrace ontleder en analysator, die werkt met backtraces gemaakt door de GNU Project debugger. Het kan een tekstbestand met een backtrace ontleden naar een boom van C structuren, wat de ontwikkelaar de threads en frames van de backtrace laat analyseren en hiermee te werken. De trac van het project kan gevonden worden op https://fedorahosted.org/btparser/.

5.1.5. caribou-devel

Caribou is een tekst ingang en UI navigatie toepassing ontwikkelt als een alternatief voor de Gnome On-screen Keyboard. Het hoofddoel van Caribou is het maken van een bruikbare oplossing als de primaire manier van toegang tot een computer een switch apparaat is.
Het initiële doel is het maken van een in-place on-screen toetsenbord geschikt voor mensen die wel een muis kunnen gebruiken maar geen hardware toetsenbord. Dit on-screen toetsenbord kan ook nuttig zijn voor aanraakscherm en tablet gebruikers. http://live.gnome.org/Caribou.

5.1.6. cddlib-static

cddlib is een C bibliotheek die de Double Description methode van Motzkin en anderen implementeert voor het genereren van alle vertices (d.w.z. extreme punten) en extreme stralen van een algemene convex polynoom. http://www.ifor.math.ethz.ch/~fukuda/cdd_home/.

5.1.7. D2

De D2 programmeertaal is beschikbaar in Fedora 16. D is een moderne taal met een hoge performance dichtbij C/C++ met een gemakkelijke syntax. C/C++ en Java ontwikkelaars kunnen gemakkelijk naar D migreren.
Meer details zijn beschikbaar op de Feature Pagina. Informatie over de D taal kan gevonden worden op http://www.digitalmars.com/d/2.0/index.html.

5.1.8. emacs-ecb

emacs-ecb is een Emacs gebaseerde code browser. Het geeft een aantal informatie vensters die eenvoudige bron code navigatie en overzicht mogelijk maken:
  • Een map boom,
  • een lijst bronbestanden in de huidige map (met volledige ondersteuning en tonen van de VC status),
  • een lijst functies/klassen/methodes/... in het huidige bestand, (ECB gebruikt de CEDET semantiek, of Imenu, of etags, om deze lijst te verkrijgen zodat alle talen die door een deze gereedschappen ondersteund worden ook automatisch door ECB ondersteund worden),
  • een geschiedenis van recent bezochte bestanden (te groepreren volgens diverse criteria),
  • een direct en een automatisch vernieuwd ecb venster voor de semantiek analysator voor enige intelligentie,
  • de Speed balk
  • output van compilatie (het compilatie venster) en andere modes zoals help, grep enz. of wat een gebruiker dan ook definieert om in dit venster te tonen.
Meer informatie kan gevonden worden op http://ecb.sourceforge.net/.

5.1.9. frama-c

frama-c is een C bron code analyse gereedschap welke alleenstaand of geïntegreerd met Emacs gebruikt kan worden. frama-c bevat een bron browser en kan eenvoudige metriek berekenen zoals sloc, aanroep diepte en cyclometrische complexiteit voor een project. Het kan ook eenvoudige aanroep grafieken genereren. Verschillende aannames over de code kunnen getest worden en de code code kan gevalideerd worden tegen een aantal theorema's. frama-c accepteert gebruiker geschreven plug-ins voor extra aangepaste analyses. Meer informatie over frama-c kan gevonden worden op http://frama-c.com/.

5.1.10. GCC Python plug-ins

GCC plug-ins voor het inbedden van Python 2 en Python 3 zijn nu beschikbaar, wat ontwikkelaars toestaat om gemakkelijker aan te haken in de inwendige werking van GCC (b.v. om nieuwe compiler waarschuwingen toe te voegen). Zie de Feature pagina voor meer details.

5.1.11. jruby

jruby is een Java implementatie van de Ruby taal, wat Ruby programmeurs de platform onafhankelijkheid van Java biedt. Versie 1.6.2 van jruby is new voor Fedora 16. De project pagina kan gevonden worden op http://jruby.org.

5.1.12. libpipeline

libpipelinebiedt een set functies voor het manipuleren van subproces pijplijnen op een flexibele en geschikte manier. http://libpipeline.nongnu.org/.

5.1.13. osm-gps-map-devel

osm-gps-map-devel, een Gtk+ widget (en Python koppeling) dat bij gegeven GPS coördinaten een GPS track en interessante punten op een bewegend kaart display tekent. Downloads kaartdata van een aantal websites, inclusief openstreetmap.org. http://nzjrs.github.com/osm-gps-map/.

5.1.14. Perl 5.14

Fedora 16 wordt geleverd met Perl 5.14, welke zich voorstaat op Unicode versie 6 compatibiliteit, meer betrouwbaar en consistent uitzonderingsafhandeling, verbeterde IPV6 ondersteuning en performance en geheugen afhandeling verbeteringen. Voor de volledige lijst van veranderingen (inclusief syntax veranderingen), refereer je naar de officiele Perl documentatie: http://perldoc.perl.org/perl5140delta.html.

5.1.15. qwtpolar-devel

qwtpolar-devel is een bibliotheek voor het plotten van polaire grafieken. http://qwtpolar.sourceforge.net/.

5.1.16. shunit2

shunit2 is een unit test raamwerk voor shell scripts vergelijkbaar met PyUnit of JUnit. http://code.google.com/p/shunit2/.

5.1.17. Statische analyse vanCPython extensies

Fedora wordt nu geleverd met een gcc-met-cpychecker variant van GCC, welke extra compile-tijd controles toevoegt aan Python extensie modules geschreven in C, wat verschillende algemene problemen detecteert (b.v. referentie tellingsfouten).

5.1.18. why-emacs

why-emacs is een Emacs toevoeging voor het Why software verificatie geredschap. http://why.lri.fr/. Why ondersteunt het bewijzen van een aantal theorema inclusief including Ergo, haRVey en Zenon, maar ook een aantal andere.

5.1.19. wso2

Het WSO2 Web Services Framework voor C++ is een C++ bibliotheek voor het aanbieden en verbruiken van Web services in C++ op zakelijk niveau. Dit pakket is nieuw voor Fedora en Fedora 16 bevat versie 2.1.0 of het raamwerk. Documentatie kan gevonden worden op http://wso2.org/project/wsf/cpp/2.0.0/docs/.

5.2. Haskell

5.2.1. GHC

ghc is vernieuwd naar 7.0.4 met een groot aantal foutreparaties.

5.2.2. Haskell platform

haskell-platform is vernieuwd naar de laatste stabiele 2011.2.0.1 vrijgave.

5.2.3. Nieuwe pakketten

Nieuwe pakketten zijn cabal-dev, leksah en verschillende nieuwe bibliotheken.