Giter Site home page Giter Site logo

elisunger / libpalaso Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sillsdev/libpalaso

0.0 0.0 0.0 31.29 MB

Palaso Library: A set of .Net libraries useful for developers of Language Software.

License: MIT License

C# 98.36% Shell 0.02% XSLT 0.74% HTML 0.66% Python 0.11% Makefile 0.01% Batchfile 0.11%

libpalaso's Introduction

Palaso Library

The Palaso repo is a collection of shared libraries that are used in SIL .NET applications. The libraries are mostly cross-platform compatible. All non-test assemblies have a corresponding nuget package.

The Palaso library adheres to Semantic Versioning and keeps a Changelog to record noteworthy changes.

Documentation

Binaries

Every commit creates a nuget package that is available on nuget.org.

Source Code

To get the source code, you'll need Git. Then from a command line, give this command:

git clone https://github.com/sillsdev/libpalaso

Development

Dependencies

Windows

  • Building libpalaso requires .NET 5. You might want to install Visual Studio 2019 >= 16.8, or JetBrains Rider.

Ubuntu Linux

  • Add access to packages.microsoft.com repo for dotnet sdk:

    cd $(mktemp -d) &&
    curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg &&
    sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/ &&
    (source /etc/os-release && wget -q https://packages.microsoft.com/config/${ID}/${VERSION_ID}/prod.list -O prod.list) &&
    sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list &&
    sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.gpg /etc/apt/sources.list.d/microsoft-prod.list &&
    sudo chmod 644 /etc/apt/trusted.gpg.d/microsoft.gpg /etc/apt/sources.list.d/microsoft-prod.list
  • Add access to download.mono-project.com for mono 6 by following instructions at https://www.mono-project.com/download/stable.

  • Install package dependencies:

    sudo apt update
    sudo apt install libicu-dev dotnet-sdk-5 mono-complete

Develop

  • Create a local topic branch:

    git fetch
    git checkout -b my-work origin/master
  • Build:

    Windows

    Open Palaso.sln in Visual Studio and build.

    Linux

    Open and build Palaso.sln in JetBrains Rider. Or use the commandline. environ is not needed if you installed mono-complete version 6.

    build/build
  • Verify that there were no new unit test failures:

    Windows

    build\TestBuild Debug Test

    Linux

    build/TestBuild Debug Test
  • Test in client projects (as applicable):

    • Set an enviroment variable LOCAL_NUGET_REPO with the path to a folder on your computer (or local network) to publish locally-built packages
    • See these instructions to enable local package sources
    • build /t:pack will pack nuget packages and publish them to LOCAL_NUGET_REPO

Further instructions at https://github.com/sillsdev/libpalaso/wiki/Developing-with-locally-modified-nuget-packages

Contribute

API Policy

The palaso library follows semantic versioning. For APIs this means:

  • public APIs that become deprecated will be marked as obsolete.
  • The API and its obsolete tag will remain through the beta versions and at least one more stable version.
  • The API will be removed in one of the next stable versions.

libpalaso's People

Contributors

hatton avatar ermshiperete avatar paxerit avatar cambell-prince avatar tombogle avatar ddaspit avatar stephenmcconnel avatar andrew-polk avatar johnthomson avatar phillip-hopper avatar jasonleenaylor avatar regnrand avatar darcywong00 avatar glasseyes avatar megahirt avatar papeh avatar chrisvire avatar foolrunning avatar gmartin7 avatar hindlemail avatar gtryus avatar jwickberg avatar marksvc avatar davylsdev avatar jsubloom avatar rmunn avatar jamesprabu avatar davidmoore1 avatar raymondluong3 avatar mikelothers avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.