* Produce 2 types of Nuget packages:
1. One managed package: Google.OrTools with the managed binary for Swig C# wrapper and Protobuf C# classes.
2. 3 unmanaged packages: Google.OrTools.runtime.{win-x64, linux-x64, osx-x64} with the native binaries for Swig C++ Wrapper and OrTools for each platform.
* Simplified/unified .net projects (csproj files).
* Added symbols (pdb) file to Nuget package for managed binaries.
* Added documentation (xml files) to Nuget package for managed binaries.
* Added target framework net452 in order to provide support for consumers using .net framework >= 4.5.2 (on windows only).
* Added build target for .net framework consumers that copies native binaries of OrTools to build output directory (in order to prevent "FileNotFoundException" for Google.OrTools.runtime.win-x64.dll).
* MakeFile: added explicit build and packaging arguments for "Release", "x64", "include-symbols".
* Removed producing of reference assembly approach.
* Removed Protobuf files (.proto) from nuget package in order to prevent copying them into Nuget consumers project.
Disable CS1591 "Missing XML comment for publicly visible type or member" (Swig doesn't generate documentation).
- Currently not implemented...
Add abseil patch
- Add patches/absl-config.cmake
Makefile: Add abseil-cpp on unix
- Force abseil-cpp SHA1 to 45221cc
note: Just before the PR #136 which break all CMake
Makefile: Add abseil-cpp on windows
- Force abseil-cpp SHA1 to 45221cc
note: Just before the PR #136 which break all CMake
CMake: Add abseil-cpp
- Force abseil-cpp SHA1 to 45221cc
note: Just before the PR #136 which break all CMake
port to absl: C++ Part
- Fix warning with the use of ABSL_MUST_USE_RESULT
> The macro must appear as the very first part of a function
declaration or definition:
...
Note: past advice was to place the macro after the argument list.
src: dependencies/sources/abseil-cpp-master/absl/base/attributes.h:418
- Rename enum after windows clash
- Remove non compact table constraints
- Change index type from int64 to int in routing library
- Fix file_nonport compilation on windows
- Fix another naming conflict with windows (NO_ERROR is a macro)
- Cleanup hash containers; work on sat internals
- Add optional_boolean sub-proto
Sync cpp examples with internal code
- reenable issue173 after reducing number of loops
port to absl: Python Part
- Add back cp_model.INT32_MIN|MAX for examples
Update Python examples
- Add random_tsp.py
- Run words_square example
- Run magic_square in python tests
port to absl: Java Part
- Fix compilation of the new routing parameters in java
- Protect some code from SWIG parsing
Update Java Examples
port to absl: .Net Part
Update .Net examples
work on sat internals; Add C++ CP-SAT CpModelBuilder API; update sample code and recipes to use the new API; sync with internal code
Remove VS 2015 in Appveyor-CI
- abseil-cpp does not support VS 2015...
improve tables
upgrade C++ sat examples to use the new API; work on sat internals
update license dates
rewrite jobshop_ft06_distance.py to use the CP-SAT solver
rename last example
revert last commit
more work on SAT internals
fix
Change runtime.{rid}.Google.OrTools -> Google.OrTools.runtime.{rid}
note: nuget support team didn't want to give us runtime.{rid}.Google* reserved prefix
beside the fact they use this naming convention in the dotnetframework and give it to
"quamotion" company too
- Create native project runtime.{rid}.Google.OrTools
- follow the microsoft convention e.g.:
https://www.nuget.org/packages/Microsoft.NETCore.App/https://www.nuget.org/packages/runtime.linux-x64.Microsoft.NETCore.App/
- Target `make_dotnet` targets local nupkg instead of dll.
- Use 4096 RSA key for or-tools.snk
- Clean nuget cache in `clean_dotnet` recipe
Refactor:
- Move cs files to ortools/*/csharp
- Move dotnet project to ortools/dotnet/Google.OrTools
- Move example generation to temp_dotnet
- Avoid to mess the `BIN_DIR`
- Rework Google.OrTools.FSharp
Cleanup:
- Remove deps to netfx.props since we only support:
netstandard2.0 TFM and netcoreapp2.1 Runtime TFM
- Remove OrTools.nuspec.in
-> use newly added properties to .csproj format
- Remove of ortools/dotnet/OrTools project
- replaced by ortools/dotnet/Google.OrTools
- Remove provided protobuf.dll.
- Automatically retrieved from nuget.org
Misc:
- Add **/*.csproj to gitignore
- Add **/runtime.json to gitignore
- dotnet: Makefile windows fix
- make.exe doesn't support `else ifeq`