DTEK0065 / DTEK8971 Ohjelmoinnin Laboratoriotyökurssi

Total Page:16

File Type:pdf, Size:1020Kb

DTEK0065 / DTEK8971 Ohjelmoinnin Laboratoriotyökurssi DTEK0065 / DTEK8971 Ohjelmoinnin laboratoriotyökurssi Ohjelmistokehityksen työkaluja Jari-Matti Mäkelä 8.3.2021 Tänään aiheina Ohjelmistokehityksen työkaluja Git 2 Ohjelmistokehityksen työkaluja Aloitetaanpa 2 Kaiken takana: iteratiivinen ohjelmistonkehitysprosessi PROJEKTIN ALOITUS MÄÄRITTELY VALMISTELU SUUNNITTELU ITERATIIVINEN OHJELMISTONITERATIIVINEN KEHITYS ARVIOINTI TOTEUTUS VERIFIOINTI KÄYTTÖÖNOTTO 3 Työkalutarjontaa Kuva 1: http://www.jamesbowman.me/post/continuous-delivery-tool-landscape/ 4 Työkalutarjontaa #2 Kuva 2: https://harness.io/2018/01/devops-tools-lifecycle-mesh-2018/ 5 Työkalutarjontaa #3 Kuva 3: agilegnostic.wordpress.com/2015/11/12/four-facets-of-agile-part-3-tools-and-technologies 6 Työkalutarjontaa #4 • Wikibooks - Introduction to Software Engineering • Programming tool - Wikipedia • https://hacker-tools.github.io/ • https://www.reddit.com/r/programmingtools/ • https://www.reddit.com/r/learnprogramming/wiki/tools • Online-kurssit: esim. https://mooc.fi/ - DevOps with Docker • yms. • Yleisemmin: Outline of software engineering 7 • Kommunikointivälineet • oleellista “ammatillisten artefaktien” (esim. koodi, assetit) välittäminen käyttökelpoisessa muodossa Yleiskatsaus työkaluihin • Integroitu kehitysympäristö (IDE) • koodin kirjoitus • koodin kääntäminen ja kokoaminen (ks. konfiguraationhallinta) • syntaksin ja semantiikan tarkistus (“lintteri”) • virheenjäljitys (“debuggaus”) • yksikkötestaus (ks. testaus) • ..ja muita rajapintoja • esimerkkejä: Eclipse, IntelliJ IDEA 8 Yleiskatsaus työkaluihin • Integroitu kehitysympäristö (IDE) • koodin kirjoitus • koodin kääntäminen ja kokoaminen (ks. konfiguraationhallinta) • syntaksin ja semantiikan tarkistus (“lintteri”) • virheenjäljitys (“debuggaus”) • yksikkötestaus (ks. testaus) • ..ja muita rajapintoja • esimerkkejä: Eclipse, IntelliJ IDEA • Kommunikointivälineet • oleellista “ammatillisten artefaktien” (esim. koodi, assetit) välittäminen käyttökelpoisessa muodossa 8 • Versionhallinta • hajautettu, samanaikainen kehitystyö • ominaisuuksien itsenäinen kehitys • ominaisuuksien integrointi • konfliktien hallinta • esimerkkejä: Git Yleiskatsaus työkaluihin #2 • DevOps-elinkaarityökalu • lähdekoodin varastointi (ks. versionhallinta) • bugiraportointi • CI/CD (ks. testaus & konfiguraationhallinta) • (alkeellinen) projektinhallinta • wiki ja dokumentaatio • ..ja muita rajapintoja • esimerkkejä: Gitlab, Github 9 Yleiskatsaus työkaluihin #2 • DevOps-elinkaarityökalu • lähdekoodin varastointi (ks. versionhallinta) • bugiraportointi • CI/CD (ks. testaus & konfiguraationhallinta) • (alkeellinen) projektinhallinta • wiki ja dokumentaatio • ..ja muita rajapintoja • esimerkkejä: Gitlab, Github • Versionhallinta • hajautettu, samanaikainen kehitystyö • ominaisuuksien itsenäinen kehitys • ominaisuuksien integrointi • konfliktien hallinta • esimerkkejä: Git 9 • Alustan virtualisointi • käyttöympäristön konfigurointi • komponenttien eristäminen ja uudelleenkäyttö • klusterointi ja skaalaus • esimerkkejä: Docker, Podman, LXD Yleiskatsaus työkaluihin #3 • Konfiguraationhallinta • projektin ja komponenttien määritys • kokoaminen • konfiguraatio • (ohj.komponenttien) versiointi • esimerkkejä: Maven, Gradle 10 Yleiskatsaus työkaluihin #3 • Konfiguraationhallinta • projektin ja komponenttien määritys • kokoaminen • konfiguraatio • (ohj.komponenttien) versiointi • esimerkkejä: Maven, Gradle • Alustan virtualisointi • käyttöympäristön konfigurointi • komponenttien eristäminen ja uudelleenkäyttö • klusterointi ja skaalaus • esimerkkejä: Docker, Podman, LXD 10 • Virheenjäljitys • komponenttien toiminta määrittelyn mukaista • tehokkuusaspektit • esimerkkejä: IDE:n integroitu debuggeri, VisualVM • Dokumentaation generointi • esimerkkejä: javadoc, doxygen Yleiskatsaus työkaluihin #4 • (Yksikkö)testaus • komponenttien toiminta määrittelyn mukaista • epäkelvon syötteen käsittely • tehokkuusaspektit • esimerkkejä: JUnit, JQwik 11 • Dokumentaation generointi • esimerkkejä: javadoc, doxygen Yleiskatsaus työkaluihin #4 • (Yksikkö)testaus • komponenttien toiminta määrittelyn mukaista • epäkelvon syötteen käsittely • tehokkuusaspektit • esimerkkejä: JUnit, JQwik • Virheenjäljitys • komponenttien toiminta määrittelyn mukaista • tehokkuusaspektit • esimerkkejä: IDE:n integroitu debuggeri, VisualVM 11 Yleiskatsaus työkaluihin #4 • (Yksikkö)testaus • komponenttien toiminta määrittelyn mukaista • epäkelvon syötteen käsittely • tehokkuusaspektit • esimerkkejä: JUnit, JQwik • Virheenjäljitys • komponenttien toiminta määrittelyn mukaista • tehokkuusaspektit • esimerkkejä: IDE:n integroitu debuggeri, VisualVM • Dokumentaation generointi • esimerkkejä: javadoc, doxygen 11 Kommunikointitekniikoista Nykyään monia tekniikoita, mistä valita… aim, allo, android messages, bbm, blackberry messenger, briar, chaton, confluence, diaspora, discord, duo, ebuddy, ekiga, email, facetime, fb, fb messenger, flowdock, gadu-gadu, gchat, gitter, hangouts, hike, hipchat, icq, imessage, imo, instagram, irc, jabber, jodel, kakaotalk, kik, line, linkedin, live messenger, lync, mailing lists, matrix, mattermost, myspaceim, periscope, qq, signal, skype, slack, sms ja mms., snapchat, socializer messenger, supesonic fun voice messenger, tamtam messenger, tango, teamspeak, telegram, threema, tinder, tiktok, tox, twitter, usenet news, ventrilo, viber, vk, voice, wechat, whatsapp, wickr me, wire, wispi, xfire, xmpp, yahoo messenger, yammer, zangi messenger, zoom, zulip, … 12 Esimerkki: IRC Yliopiston kommunikaatiopalveluita: linux.utu.fi (ssh), irc.utu.fi (irc) 13 Esimerkki: Mattermost https://mattermost.utu.fi/, https://mail.utu.fi/, yms 14 Esimerkki: Trello Projektin työtehtävien seurantaan palveluita: https://trello.com/ 15 • Ns. “pastebin-palvelut” • kannattaa tarkistaa sisällön lisensointipolitiikka, varsinkin NDA:n alaista työkoodia jakaessa !! • lähtökohtaisesti myös julkisia ja hakkereiden kiinnostuksen kohteita • osassa kommentointimahdollisuus, jopa koodin rivitasolla • Ohjelmankehitysalustat • edellyttää ensin projektin luomista (http://gitlab.utu.fi/) • esim. github gist, gitlab snippets, bitbucket snippets, jne. • Kysymysten kysymisestä • http://www.catb.org/~esr/faqs/smart-questions.html • https://jvns.ca/blog/good-questions/ Ohjelmakoodeista keskustelu • Edellä mainituissa keskustelualustoissa vaihteleva tuki 16 • Ohjelmankehitysalustat • edellyttää ensin projektin luomista (http://gitlab.utu.fi/) • esim. github gist, gitlab snippets, bitbucket snippets, jne. • Kysymysten kysymisestä • http://www.catb.org/~esr/faqs/smart-questions.html • https://jvns.ca/blog/good-questions/ Ohjelmakoodeista keskustelu • Edellä mainituissa keskustelualustoissa vaihteleva tuki • Ns. “pastebin-palvelut” • kannattaa tarkistaa sisällön lisensointipolitiikka, varsinkin NDA:n alaista työkoodia jakaessa !! • lähtökohtaisesti myös julkisia ja hakkereiden kiinnostuksen kohteita • osassa kommentointimahdollisuus, jopa koodin rivitasolla 16 • Kysymysten kysymisestä • http://www.catb.org/~esr/faqs/smart-questions.html • https://jvns.ca/blog/good-questions/ Ohjelmakoodeista keskustelu • Edellä mainituissa keskustelualustoissa vaihteleva tuki • Ns. “pastebin-palvelut” • kannattaa tarkistaa sisällön lisensointipolitiikka, varsinkin NDA:n alaista työkoodia jakaessa !! • lähtökohtaisesti myös julkisia ja hakkereiden kiinnostuksen kohteita • osassa kommentointimahdollisuus, jopa koodin rivitasolla • Ohjelmankehitysalustat • edellyttää ensin projektin luomista (http://gitlab.utu.fi/) • esim. github gist, gitlab snippets, bitbucket snippets, jne. 16 Ohjelmakoodeista keskustelu • Edellä mainituissa keskustelualustoissa vaihteleva tuki • Ns. “pastebin-palvelut” • kannattaa tarkistaa sisällön lisensointipolitiikka, varsinkin NDA:n alaista työkoodia jakaessa !! • lähtökohtaisesti myös julkisia ja hakkereiden kiinnostuksen kohteita • osassa kommentointimahdollisuus, jopa koodin rivitasolla • Ohjelmankehitysalustat • edellyttää ensin projektin luomista (http://gitlab.utu.fi/) • esim. github gist, gitlab snippets, bitbucket snippets, jne. • Kysymysten kysymisestä • http://www.catb.org/~esr/faqs/smart-questions.html • https://jvns.ca/blog/good-questions/ 16 Esimerkki: Ideone 17 Kuva 4: https://ideone.com/ Esimerkki: Gitlab snippet 18 Kuva 5: https://gitlab.utu.fi/ Esimerkki: Gitlab snippet #2 19 Esimerkki: Gitlab snippet #3 20 Avun kysyminen • Netissä lukuisia suosittuja ohjelmistoalan keskustelualustoja 1) interaktiiviset chat-huoneet 2) uutisten kommenttipalstat 3) kysymys/vastaus-tyyliset palstat • Suositeltavaa seurata jo yleisestä kiinnostuksesta alaa kohtaan • Lähes kaikille alalla tutuksi tulevia sivustoja ohjelmointiongelmien yms. tiimoilta: • Stackoverflow (3) • Quora (3) • Hacker News (2) • Reddit (/r/programming) (2) • Medium • Wikipedia 21 Esimerkki: stackoverflow.com 22 # Versionhallinta • Aiemmin: rcs, cvs, svn, … • Nykyään suosituimmat: git, hg, bzr, darcs, … • Ehkä tulossa: Pijul yms. tutkimusprojekteja • Versionhallinta seuraa tiedostojen historiaa • tiedoston sisältä: lisätyt/poistetyt/siirretyt/muutetut rivit • tiedostotasolla (nimi ja muu metadata) • muutoskokonaisuuksia (tiedostojoukot) • Tietokantamainen (lukitus ja atomisuus) • Eheys taattu kryptografisesti (esim. SHA-1) • Seurattavat & seurannan ulkopuoliset tiedostot Versionhallinta - pääperiaatteet • Automatisoi versionhallinnan työtehtäviä 23 • Versionhallinta seuraa tiedostojen historiaa • tiedoston sisältä: lisätyt/poistetyt/siirretyt/muutetut rivit • tiedostotasolla (nimi ja muu metadata) • muutoskokonaisuuksia (tiedostojoukot) • Tietokantamainen (lukitus ja atomisuus) • Eheys taattu
Recommended publications
  • Conteneurs Et Outils De Production De Code
    Conteneurs et outils de production de code https://etherpad.in2p3.fr/p/JDEV2015.T6.GT02 Johan Moreau IRCAD/IHU 2 juillet 2015 Johan Moreau (IRCAD/IHU) Conteneurs et outils de production de code 2 juillet 2015 1 / 11 Entre 1000 et 1 million de LOC Les petits : Annuaire de laboratoire en microservices, Conteneur de backup, Outil de gestion de m´edicaments pour animaux, ... Les gros : Logiciel de traitement d'image pour la mod´elisation anatomique Logiciel de suivi intra-op´eratoire de r´ealit´eaugment´ee, ... Probl´ematiques diff´erentes (performance, distribution, ...) et des choix diff´erents Johan Moreau (IRCAD/IHU) Conteneurs et outils de production de code 2 juillet 2015 2 / 11 Gestion de version VCS : CVS, Subversion, ... DVCS : Mercurial, Git, Bazaar, ... Forge/frontal pour les acc`es: GitHub, Bitbucket, GitLab, Kallithea, ... Redmine, Trac, Bugzilla, ... Quelle organisation de d´ep^otsen fonction de l'outil ? Quelle communication entre les d´ep^ots? Comment faire de la revue de code par rapport au VCS ? Johan Moreau (IRCAD/IHU) Conteneurs et outils de production de code 2 juillet 2015 3 / 11 Construction du job Build : CMake, Ant, Maven, NAnt, SCons, Gradle, Gulp, Grunt ... Compl´ementaire : DOxygen, Javadoc, Sphinx, ... XUnit, Checkstyle, Sonar, FindBugs, CppCheck, JDepend, Selenium, ... A quel point les rapports sont-ils utilis´es? Johan Moreau (IRCAD/IHU) Conteneurs et outils de production de code 2 juillet 2015 4 / 11 Int´egration continue Outils : Cruisecontrol, Jenkins, Buildbot, GitLab CI, ... Travis-ci, Heroku, Codeship, CircleCI, Drone.io, ... Combien de jobs par "target"? Quelle liaison avec la forge ou l'outil de tickets ? Comment lier cela `ala revue de code et `ala m´ethodologie ? Johan Moreau (IRCAD/IHU) Conteneurs et outils de production de code 2 juillet 2015 5 / 11 Conteneurs/VM - x86 Emulateurs, VM : QEMU, VMWare, HyperV, Xen, KVM, ..
    [Show full text]
  • Awesome Selfhosted - Software Development - Project Management
    Awesome Selfhosted - Software Development - Project Management Software Development - Project Management See also: awesome-sysadmin/Code Review Bonobo Git Server - Set up your own self hosted git server on IIS for Windows. Manage users and have full control over your repositories with a nice user friendly graphical interface. ( Source Code) MIT C# Fossil - Distributed version control system featuring wiki and bug tracker. BSD-2-Clause- FreeBSD C Goodwork - Self hosted project management and collaboration tool powered by Laravel & VueJS. (Demo, Source Code) MIT PHP Gitblit - Pure Java stack for managing, viewing, and serving Git repositories. (Source Code) Apache-2.0 Java gitbucket - Easily installable GitHub clone powered by Scala. (Source Code) Apache-2.0 Scala/Java Gitea - Community managed fork of Gogs, lightweight code hosting solution. (Demo, Source Code) MIT Go GitLab - Self Hosted Git repository management, code reviews, issue tracking, activity feeds and wikis. (Demo, Source Code) MIT Ruby Gitlist - Web-based git repository browser - GitList allows you to browse repositories using your favorite browser, viewing files under different revisions, commit history and diffs. ( Source Code) BSD-3-Clause PHP Gitolite - Gitolite allows you to setup git hosting on a central server, with fine-grained access control and many more powerful features. (Source Code) GPL-2.0 Perl GitPrep - Portable Github clone. (Demo, Source Code) Artistic-2.0 Perl Git WebUI - Standalone web based user interface for git repositories. Apache-2.0 Python Gogs - Painless self-hosted Git Service written in Go. (Demo, Source Code) MIT Go Kallithea - Source code management system that supports two leading version control systems, Mercurial and Git, with a web interface.
    [Show full text]
  • Code Review Quality
    Code Review Quality Defining a good code review Overview Introduction: A modern code review process The importance of reviews for QA Strength and weaknesses Tools to make (better) reviews VCS: Git - Keeping track of changes. Gerrit: State of the art for git VCS. Continuous inspection: SonarQube How to define „good“? Factors to assess review quality Case study: How Developers see it Improve Review Quality Current research Defining a good code review 2 What is a modern code review process INTRODUCTION Defining a good code review 3 Introduction A modern review process Defining a good code review 4 Introduction The review value - strengths Coding standards compliance . Code review helps to maintain consistent coding style across the company . Reviews find high level breaches of design rules and consistency issues. Finding subtile bugs and defects early . A person is able to find logical flaws and approach problems, that might be very hard to find with tests. when they are cheap to fix. (Before submitting) Teaching and sharing knowledge . During review team members gain better understanding of the code base and learn from each other Strengthens team cohesion . Review discussions save team members from isolation and bring them closer to each other. Defining a good code review 5 Introduction The review value - weaknesses Highly depends on reviewer's experience and code familiarity . Study showed that the ‘worst’ reviewer can be ten times less effective than the best reviewer. The defect coverage is hard to asses . They might find a lot of different sorts of issues while overlook some potentially serious ones. Has a frustration and conflict potential .
    [Show full text]
  • Statistics Survey 499767 'Alioth Replacement Survey'
    Quick statistics Survey 499767 'Alioth Replacement Survey' Results Survey 499767 Number of records in this query: 317 Total records in survey: 317 Percentage of total: 100.00% page 1 / 62 Quick statistics Survey 499767 'Alioth Replacement Survey' Field summary for Q00001 What is your relationship to the project? Answer Count Percentage Developer (SQ001) 193 61.27% Maintainer (SQ002) 99 31.43% Contributor (SQ003) 125 39.68% User (SQ004) 206 65.40% Package Maintainer (SQ005) 169 53.65% Other 12 3.81% ID Response 2 translator 10 upstream 88 Upstream 102 sysadmin 157 DSA 248 former alioth maintainer 366 Translator 434 Infrastructure Maintainer 443 Ex-developer 480 bug reporter/triager 483 consultant to commercial users 494 Delegate page 2 / 62 Quick statistics Survey 499767 'Alioth Replacement Survey' Field summary for Q00001 What is your relationship to the project? page 3 / 62 Quick statistics Survey 499767 'Alioth Replacement Survey' Field summary for Q00002(SQ001) Which services are you using from alioth. Please rate each service from 1 (never used it) to 5 (very important for my work). [Issue Tracker] Answer Count Percentage Sum 1 (1) 232 79.73% 86.60% 2 (2) 20 6.87% 3 (3) 11 3.78% 3.78% 4 (4) 13 4.47% 5 (5) 13 4.47% 8.93% No answer 26 8.20% Arithmetic mean 0 Standard deviation 0 Sum (Answers) 289 100.00% 100.00% Number of cases 0% page 4 / 62 Quick statistics Survey 499767 'Alioth Replacement Survey' Field summary for Q00002(SQ001) Which services are you using from alioth. Please rate each service from 1 (never used it) to 5 (very important for my work).
    [Show full text]
  • Kallithea Deployment Release 0.0
    Kallithea Deployment Release 0.0 Wolfgang Scherer Jan 10, 2020 Quickstart Local: • Deployment documentation: Kallithea deployment documentation • Deployment repository: Kallithea deployment repository • Installed instance: Kallithea installed instance Official: • Web-Site: Kallithea • Documentation: Kallithea Documentation • Repository: https://kallithea-scm.org/repos/kallithea • Bitbucket: conservancy / kallithea - Bitbucket (as long as it still works) Abstract CONTENTS List of Figures ii List of Tables iii List of Code Blocks iv 1 Installation 1 1.1 Get deployment package.......................................1 1.2 System packages...........................................1 1.3 Installation / update.........................................1 1.4 Initial setup..............................................2 1.5 Initialize repository defaults.....................................2 1.6 Setup repos/incoming........................................3 1.7 Create clone script..........................................3 1.8 Full text search............................................3 1.9 Install a language file for en .....................................3 2 Update 5 2.1 Database update...........................................5 3 Serve with gearbox 6 4 npm on Debian 7 5 Apache configuration 8 6 Kallithea deployment 10 6.1 Repositories............................................. 10 6.2 Documentation............................................ 10 7 LDAP 11 8 Bug: Logging re-initialized in make_app() 12 8.1 Paste Deploy WSGI app configuration...............................
    [Show full text]
  • Download Résumé
    seanfarley software engineer and mathematician contact experience [email protected] 2015–now Backend Bitbucket Developer Atlassian (209) SEANFAR • Improved Mercurial support at Bitbucket (732-6327) 04-09 2014 Facebook Contractor Mercurial Project San Francisco, CA • Designed and wrote namespaces API that allows any extension to cleanly operate with bookmarks, tag, and branches website • Created an extension using namespaces API to track remote branches http://farley.io and bookmarks 06-09 2013 Google Summer of Code Student Mercurial Project social • Cleaned up legacy code to provide clear reference points for file status fb://seanfarley • Augmented file-merging framework for in-memory changes google://+SeanFarley • Successful evaluation with over 127 patches accepted (average 20) linkedin://seanmfarley 2010–2013 Graduate Research Assistant Argonne National Laboratory • Published paper on BOUT++, a library for plasma nuclear fusion simulation code • Developed advanced algorithms for nonlinear problems (NGMRES) https://smf.io • Integrated robust time-stepping methods for PETSc (IMEX) bitbucket://seanfarley • Added framework for new mesh capabilities github://seanfarley 2006–2009 Graduate Assistant Louisiana State University • Implemented finite element code (푃1, 푃2) programming • Provided theoretical support for graduate analysis classes Python • Built and maintained a computing cluster for three years for a research C / C++ group using MPI D MPI opensource CUDA Lisp 2013–now Kallithea Cofounder Kallithea Project • Created an opensource Python
    [Show full text]
  • Kallithea Documentation Release 0.7.99
    Kallithea Documentation Release 0.7.99 Kallithea Developers May 27, 2021 Contents 1 Readme 3 2 Administrator guide 7 3 User guide 51 4 Developer guide 79 i ii Kallithea Documentation, Release 0.7.99 • genindex • search Contents 1 Kallithea Documentation, Release 0.7.99 2 Contents CHAPTER 1 Readme 1.1 Kallithea README 1.1.1 About Kallithea is a fast and powerful management tool for Mercurial and Git with a built-in push/pull server, full text search and code-review. It works on HTTP/HTTPS and SSH, has a built-in permission/authentication system with the ability to authenticate via LDAP or ActiveDirectory. Kallithea also provides simple API so it’s easy to integrate with existing external systems. Kallithea is similar in some respects to GitHub or Bitbucket, however Kallithea can be run as standalone hosted application on your own server. It is open-source and focuses more on providing a customised, self-administered interface for Mercurial and Git repositories. Kallithea works on Unix-like systems and Windows. Kallithea was forked from RhodeCode in July 2014 and has been heavily modified. 1.1.2 Installation Kallithea requires Python 3 and it is recommended to install it in a virtualenv. Official releases of Kallithea can be installed with: pip install kallithea The development repository is kept very stable and used in production by the developers – you can do the same. Please visit https://docs.kallithea-scm.org/en/latest/installation.html for more details. There is also an experimental Puppet module for installing and setting up Kallithea. Currently, only basic functionality is provided, but it is still enough to get up and running quickly, especially for people without Python background.
    [Show full text]
  • Kallithea Documentation Release 0.3.1
    Kallithea Documentation Release 0.3.1 Kallithea Developers Apr 12, 2017 Contents 1 Kallithea README 3 2 Installation overview 9 3 Installation on Unix/Linux 11 4 Installation and upgrade on Windows (7/Server 2008 R2 and newer) 15 5 Installation and upgrade on Windows (XP/Vista/Server 2003/Server 2008) 21 6 Installing Kallithea on Microsoft Internet Information Services (IIS) 27 7 Setup 29 8 Installation and setup using Puppet 41 9 General Kallithea usage 45 10 Version control systems support 49 11 Repository locking 51 12 Repository statistics 53 13 Email settings 55 14 Optimizing Kallithea performance 57 15 Backing up Kallithea 59 16 Debugging Kallithea 61 17 Troubleshooting 63 18 Contributing to Kallithea 65 19 Translations 69 20 Changelog 73 i 21 API 75 22 The models module 93 23 Other topics 99 Python Module Index 101 ii Kallithea Documentation, Release 0.3.1 Readme Contents 1 Kallithea Documentation, Release 0.3.1 2 Contents CHAPTER 1 Kallithea README About Kallithea is a fast and powerful management tool for Mercurial and Git with a built-in push/pull server, full text search and code-review. It works on http/https and has a built in permission/authentication system with the ability to authenticate via LDAP or ActiveDirectory. Kallithea also provides simple API so it’s easy to integrate with existing external systems. Kallithea is similar in some respects to GitHub or Bitbucket, however Kallithea can be run as standalone hosted application on your own server. It is open-source donationware and focuses more on providing a customised, self- administered interface for Mercurial and Git repositories.
    [Show full text]
  • Code Repository Software
    Code repository software There are various types of source code repository hosts available, deals in the world of code, GitHub looks to help developers build software. A source code repository is a file archive and web hosting facility where a large amount of source code, for software or for web pages, is kept, either publicly or ​General information · ​Features · ​Popularity · ​Specialized hosting facilities. We've also written a blog post about one of our staff member's experiences of choosing a code repository. It provides further information about which repository. Collaborate on code with inline comments and pull requests. Manage and share your Git repositories to build and ship software, as a team. A good source code repository host is especially useful for DevOps Kiln, from Frog Creek Software, is a paid source code host for Git and. Built for developers. GitHub is a development platform inspired by the way you work. From open source to business, you can host and review code, manage. A repository is a term used by most of the different source control tools If you're happy to have your source code in the cloud, git hub might be. While you are trying to find the best web-based hosting service for software development It seems to be today's Status Quo for source code repositories. Linux GUIs · Tarballs · Mac Build · Source Code Patches, suggestions and comments are welcome. Git is a member of Software Freedom Conservancy. Google Code was supposed to spread the open source religion. big money—by freely sharing software code with the world at large.
    [Show full text]
  • Current Member Projects
    About News Blog Membership Sponsors GPL Compliance NPOAcct Donate Become a Supporter! Members Projects Current Member Projects & Services Conservancy is currently home to thirty-three member projects. Current Member ArgoUML Projects Member Project Services ArgoUML is the leading open source UML modeling tool and includes support for all standard UML 1.4 diagrams. It runs on any Java platform and is available in ten languages. See the feature list for more Applying details. Bongo The Bongo Project is creating fun and simple mail, calendaring and contacts software: on top of a standards-based server stack; we're innovating fresh and interesting web user interfaces for managing personal communications. Bongo is providing an entirely free software solution which is less concerned with the corporate mail scenario and much more focused on how people want to organize their lives. Boost Boost provides free peer-reviewed portable C++ source libraries. Boost emphasizes libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a broad spectrum of applications. The Boost license encourages both commercial and non-commercial use. Boost aims to establish “existing practice” and provide reference implementations so that Boost libraries are suitable for eventual standardization. Ten Boost libraries are already included in the C++ Standards Committee's Library Technical Report (TR1) as a step toward becoming part of a future C++ Standard. More Boost libraries are proposed for the upcoming TR2. Buildbot Buildbot is a freely-licensed framework which enables software developers to automate software build, test, and release processes for their software projects.
    [Show full text]
  • Titre Sur 2-3 Lignes
    Rétrospective JDEV2015@Bordeaux rdatadev 13 oct 2015 * T1 Systèmes embarqués, réseaux de capteurs et objets communicants * T2 Modélisation et ingénierie * T3 Données massives scientifiques (Big data), recherche par les données * T4 Transfert marchand et non marchand * T5 Infrastructures et interopérabilité: Le cloud et les architectures orientées service (SOA) * T6 Les usines logicielles, le DevOps et la virtualisation * T7 Javascript (paradigmes et éco-systèmes) * T8 Logiciels scientifiques et simulations: nouveaux modèles et enjeux 1 DevOps kesako ? DevelopmentOperations Ma perception : au centre de tout ce qui est nécessaire pour mettre un service ou un outil à disposition. Wikipedia : « Devops est un mouvement visant à l'alignement de l'ensemble des équipes du système Mon souvenir des jdevs: d'information à commencer par les "devs" (chargés Un moyen de convergence entre les de faire évoluer le système d'information) et les "ops" ASR/Dev : (chargés d'exploiter les applications existantes). - les outils de gestion de source (utiles pour stocker les configuration) Ce que l'on pourrait résumer en travailler ensemble pour produire de la valeur pour l'entreprise. Dans la ( … et peut-être des outils d'automatisation ? ) majorité des entreprises, la valeur sera économique mais pour d'autres elle sera sociale ou morale. » T6.GT03 2 Usine logicielle – kesako ? Chaîne de production où les tâches répétitives seront automatisées comme le lancement régulier de la compilation, des tests unitaires, du déploiement. Une usine logicielle a pour objectif de fournir un support de travail collectif et aider à rendre la solution plus robuste (qualité). → Pour les fainéants ou ceux qui ont plusieurs milliers / millions de Lignes de code (LOC) ( « Nécessité » pour maintenir et faire face à la survie du prototype.
    [Show full text]
  • Case M.8994 - MICROSOFT / GITHUB
    EUROPEAN COMMISSION DG Competition Case M.8994 - MICROSOFT / GITHUB Only the English text is available and authentic. REGULATION (EC) No 139/2004 MERGER PROCEDURE Article 6(1)(b) NON-OPPOSITION Date: 19/10/2018 In electronic form on the EUR-Lex website under document number 32018M8994 EUROPEAN COMMISSION Brussels, 19.10.2018 C(2018) 7020 final In the published version of this decision, some information has been omitted pursuant to Article 17(2) of Council Regulation (EC) No 139/2004 concerning non-disclosure of business PUBLIC VERSION secrets and other confidential information. The omissions are shown thus […]. Where possible the information omitted has been replaced by ranges of figures or a general description. To the notifying party: Subject: Case M.8994 - Microsoft / GitHub Commission decision pursuant to Article 6(1)(b) of Council Regulation No 139/20041 and Article 57 of the Agreement on the European Economic Area2 Dear Sir or Madam, (2) On 14 September 2018, the European Commission ("Commission") received a notification of a proposed concentration pursuant to Article 4 of Council Regulation (EC) No 139/20043 by which Microsoft Corporation ("Microsoft" or the "Notifying Party", USA) acquires within the meaning of Article 3(1)(b) of the Merger Regulation control of the whole of GitHub Inc ("GitHub", USA) (the "Transaction"). Microsoft and GitHub are hereafter collectively referred to as the "Parties". 1. THE PARTIES (3) Microsoft is active in the design, development and supply of computer software (including various software development and operations ("DevOps") tools), hardware devices and related services, cloud-based solutions, online advertising, recruiting and professional social network services.
    [Show full text]