vigoo / bari Goto Github PK
View Code? Open in Web Editor NEWBari is an advanced build management tool for .NET projects.
Home Page: http://vigoo.github.io/bari/
License: Apache License 2.0
Bari is an advanced build management tool for .NET projects.
Home Page: http://vigoo.github.io/bari/
License: Apache License 2.0
I want a system testing plugin which is capable of running several tests using the fully built product. In bari's case this would be a large set of suites, running bari on them and verifying the generated output/built software.
If a csproj refers to another one using ProjectReference, and the solution file does not have any solution configuration specified for it, then msbuild does not use the solution dependent build output etc.
Possible solutions:
A reference alias is a set of references addressed by a single name:
Definition:
aliases:
ninject:
- nuget://Ninject
- nuget://Ninject.Extensions.Factory
- nuget://Castle.Core/3.0.0.4001
Then it can be used in reference lists with a simple reference URI:
alias://ninject
A project builder which can be implemented by the user as simple scripts.
Add access to the external tool acquiring system of bari from the scripts.
Example script in pseudocode:
localizer = get_tool("localizer-tool") for each (file in sourceset("loc"): run(localizer, file, targetdir)
And use it for NuGet, MSBuild, Gallio, etc.
A configurable resolver which copies dependencies from a shared network location based on name and version number.
More detailed requirements:
The URI syntax would look something like this:
fsrepo://dependency/version/something.dll
fsrepo://binreponame/dependency/version/something.dll
the first syntax is for cases when there is only one repo (probably the common case).
Give a more user friendly message, make suggestions etc.
Post processors are executed on the output of the project.
These dependencies are not referenced by the target assembly but must be copied to the target directory using the same dependency resolver as .NET dependencies.
this does not work:
E:\Workspace>d:\bari\target\full\bari.exe help
bari version 0.8.0.0
Goal 'debug' is invalid. Available goals: debug-x86, debug-x64, release-x86, release-x64
this does:
E:\Workspace>d:\bari\target\full\bari.exe --target debug-x86 help
bari version 0.8.0.0
The following commands can be used for this suite:
build - builds a project, module or product
clean - cleans that target dir and the bari cache
help - displays the available commands and their usage
info - shows all known information about the current suite
test - builds and runs the unit tests in the suite
vs - generates visual studio solution and projects for a module
For example
app.ico
X.vcxproj.filters
Example:
Successfully installed 'Castle.Core 3.1.0'.
Successfully installed 'Ninject 3.0.1.10'.
Attempting to resolve dependency 'Ninject (? 3.0.0.0 && < 3.1.0.0)'.
Attempting to resolve dependency 'Castle.Core (? 3.0.0.4001 && < 3.1.0.0)'.
Successfully installed 'Ninject 3.0.1.10'.
Successfully installed 'Castle.Core 3.0.0.4001'.
Successfully installed 'Ninject.Extensions.Factory 3.0.1.0'.
But only Castle 3.1.0 is really deployed
I think they are referred by a wrong path when adding to cache.
Files under the content source set would be simple copied to the target directory.
With the ability to refer the built lib from other C++ projects.
With optional aximp support
Post-build scripts should be definable for
and they should be executed after the given build entity is built, similarly how runtime references are deployed.
Unexpected CopyLocal flag
errors.
To reproduce:
bari clean
bari test
Workaround:
bari clean
bari vs full
bari test
most importantly, rebuild projects with changed dependencies/references.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.