Skip to content

Commit

Permalink
v0.10.0 release (#84)
Browse files Browse the repository at this point in the history
  • Loading branch information
thekaveman authored Oct 15, 2019
1 parent f031873 commit 166affe
Show file tree
Hide file tree
Showing 7 changed files with 87 additions and 69 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ Desktop.ini
*.suo
*.user
.vs/
.vscode/

# Build results
bin/[Dd]ebug/
Expand Down
8 changes: 4 additions & 4 deletions DEPLOYMENT.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Deploying a new release

Deployment is hard. There are too many manual steps. Let's at least enumerate
Deployment is hard. There are too many manual steps. Let's at least enumerate
them so everyone is on the same page.

Assuming all changes for the new release are commited, tests have been run and
Expand All @@ -9,11 +9,11 @@ are passing, and you're happy with the state of things...
1. Create a branch named `release`
1. Update [`ReleaseNotes.md`](ReleaseNotes.md), following the existing format
1. Bump the version number in [`Directory.build.props`](Directory.build.props) and [`appveyor.yml`](appveyor.yml)
1. Push the branch to GitHub and create a pull request
1. Create the NuGet packages (in the local solution root) for the new version: `dotnet pack --output .`
1. Test the NuGet packages! [How to install NuGet package locally](http://stackoverflow.com/questions/10240029/how-to-install-a-nuget-package-nupkg-file-locally)
1. Push the `release` branch to GitHub and create a pull request
1. If the build succeeds, accept the pull request
1. Create and push a tag from the new HEAD `git tag v#.#.#` and `git push --tags`
1. Create the NuGet packages (in the local solution root) for the new version: `dotnet pack --output ..\`
1. Test the NuGet packages! [How to install NuGet package locally](http://stackoverflow.com/questions/10240029/how-to-install-a-nuget-package-nupkg-file-locally)
1. [Create a new release](https://help.github.com/articles/creating-releases) using the tag
you just created and pasting in the release notes you just wrote up. Attach a copy of the latest `.nupkg` files generated above.
1. Push the new packages up to NuGet `dotnet nuget push`
6 changes: 5 additions & 1 deletion Directory.build.props
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@
<Product>SODA</Product>
<RepositoryUrl>https://github.com/CityofSantaMonica/SODA.NET</RepositoryUrl>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<Version>0.9.0</Version>
<PackageIcon>icon.gif</PackageIcon>
<Version>0.10.0</Version>
</PropertyGroup>
<ItemGroup>
<None Include="..\icon.gif" Pack="true" PackagePath="\"/>
</ItemGroup>
</Project>
50 changes: 27 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
# SODA.NET [![Build status](https://ci.appveyor.com/api/projects/status/yub6lyl79573lufv/branch/master?svg=true)](https://ci.appveyor.com/project/thekaveman/soda-net/branch/master)

A [Socrata Open Data API](http://dev.socrata.com) (SODA) client library targeting
.NET 4.5 and above.
A [Socrata Open Data API](https://dev.socrata.com) (SODA) client library targeting .NET 4.5 and above.

## Getting Started

SODA.NET is available as a [NuGet package](https://www.nuget.org/packages/CSM.SodaDotNet/).

Install-Package CSM.SodaDotNet
```console
dotnet add package CSM.SodaDotNet
```

## Usage examples

Expand Down Expand Up @@ -59,46 +60,49 @@ IEnumerable<MyClass> payload = GetPayloadData();
client.Upsert(payload, "1234-wxyz");
```

Note: This library supports writing directly to datasets with the Socrata Open Data API. For write operations that use
data transformations in the Socrata Data Management Experience (the user interface for creating datasets), use the Socrata
Data Management API. For more details on when to use SODA vs the Socrata Data Management API, see the [Data Management API documentation](https://socratapublishing.docs.apiary.io/#)
Note: This library supports writing directly to datasets with the Socrata Open Data API. For write operations that use
data transformations in the Socrata Data Management Experience (the user interface for creating datasets), use the Socrata
Data Management API. For more details on when to use SODA vs the Socrata Data Management API, see the
[Data Management API documentation](https://socratapublishing.docs.apiary.io/#)

## Build

Compilation can be done using
[Visual Studio Community Edition](https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx).

[NUnit](http://nunit.org/) was used to build and run the test projects. Check out the
[NUnit Test Adapter](https://visualstudiogallery.msdn.microsoft.com/6ab922d0-21c0-4f06-ab5f-4ecd1fe7175d)
to run tests from within Visual Studio.
You can also use the .NET CLI:

```console
git clone git@github.com:CityofSantaMonica/SODA.NET.git SODA.NET
cd SODA.NET
dotnet build
```

You can also use the `build.cmd` script, which assumes `msbuild` and `nuget` are available:
## Tests

git clone git@github.com:CityofSantaMonica/SODA.NET.git SODA.NET
cd SODA.NET
.\build.cmd
[NUnit](http://nunit.org/) was used to build and run the test projects.

To create the Nuget package artifacts, pass an extra parameter:
Run tests from the Visual Studio Test Explorer, or using the .NET CLI:

.\build.cmd CreatePackages
```console
dotnet test
```

## Contributing

Check out the
[Contributor Guidelines](https://github.com/CityOfSantaMonica/SODA.NET/blob/master/CONTRIBUTING.md)
Check out the [Contributor Guidelines](https://github.com/CityOfSantaMonica/SODA.NET/blob/master/CONTRIBUTING.md)
for more details.

## Copyright and License

Copyright 2017 City of Santa Monica, CA
Copyright 2019 City of Santa Monica, CA

Licensed under the
[MIT License](https://github.com/CityOfSantaMonica/SODA.NET/blob/master/LICENSE.txt)
Licensed under the [MIT License](https://github.com/CityOfSantaMonica/SODA.NET/blob/master/LICENSE.txt)

## Thank you

A tremendous amount of inspiration for this project came from the following projects. Thank you!

- [Octokit.net](https://github.com/octokit/octokit.net)
- [soda-java](https://github.com/socrata/soda-java/)
- [soda-dotnet](https://github.com/socrata/soda-dotnet) (defunct?)
- [Octokit.net](https://github.com/octokit/octokit.net)
- [soda-java](https://github.com/socrata/soda-java/)
- [soda-dotnet](https://github.com/socrata/soda-dotnet) (defunct?)
84 changes: 45 additions & 39 deletions ReleaseNotes.md
Original file line number Diff line number Diff line change
@@ -1,131 +1,137 @@
### New in 0.10.0 (Released 2019/10/15)

New features

- Support for .NET Core 3.0

### New in 0.9.0 (Released 2019/07/24)

New features

- Support for .NET Core 2.2
- Support for .NET Core 2.2

### New in 0.8.0 (Released 2017/12/06)

Bug fixes

- Remove discontinued field from `ResourceMetadata` that was causing serialization issues [#69](https://github.com/CityofSantaMonica/SODA.NET/issues/69)
- Remove discontinued field from `ResourceMetadata` that was causing serialization issues [#69](https://github.com/CityofSantaMonica/SODA.NET/issues/69)

New features

- `EwsClient` can be instantiated directly, add new implementation `Office365EwsClient` for connecting to Office 365 based accounts [#71](https://github.com/CityofSantaMonica/SODA.NET/pull/71)
- `EwsClient` can be instantiated directly, add new implementation `Office365EwsClient` for connecting to Office 365 based accounts [#71](https://github.com/CityofSantaMonica/SODA.NET/pull/71)

### New in 0.7.0 (Released 2017/01/12)

*It is highly recommended to update to this version, as it features improved security following Socrata's deprecation of TLS 1.0*

Security enhancements

- Disable security protocols lower than TLS 1.1 [#65](https://github.com/CityofSantaMonica/SODA.NET/issues/65)
- Disable security protocols lower than TLS 1.1 [#65](https://github.com/CityofSantaMonica/SODA.NET/issues/65)

Bug fixes

- `SoqlQuery` no longer inserts default query arguments [#59](https://github.com/CityofSantaMonica/SODA.NET/issues/59)
- `SoqlQuery` no longer inserts default query arguments [#59](https://github.com/CityofSantaMonica/SODA.NET/issues/59)

New features

- `SoqlQuery` supports the `$having` clause [#60](https://github.com/CityofSantaMonica/SODA.NET/issues/60)
- `SoqlQuery` supports the `$query` clause [#63](https://github.com/CityofSantaMonica/SODA.NET/issues/63)
- `SoqlQuery` supports the `$having` clause [#60](https://github.com/CityofSantaMonica/SODA.NET/issues/60)
- `SoqlQuery` supports the `$query` clause [#63](https://github.com/CityofSantaMonica/SODA.NET/issues/63)

### New in 0.6.0 (Released 2016/06/02)

Bug fixes

- `SodaClient` no longer requires an AppToken [#49](https://github.com/CityofSantaMonica/SODA.NET/issues/49)
- `Query` methods behave as advertised and return full result sets [#56](https://github.com/CityofSantaMonica/SODA.NET/issues/56)
- `SodaClient` no longer requires an AppToken [#49](https://github.com/CityofSantaMonica/SODA.NET/issues/49)
- `Query` methods behave as advertised and return full result sets [#56](https://github.com/CityofSantaMonica/SODA.NET/issues/56)

Deprecation Notices

- `ExcelOleDbHelper` in `SODA.Utilities` was deprecated in `v0.5.0` and has now been removed.
- `ExcelOleDbHelper` in `SODA.Utilities` was deprecated in `v0.5.0` and has now been removed.

New features

- `SodaClient` can issue queries directly [#54](https://github.com/CityofSantaMonica/SODA.NET/issues/54)
- `SodaClient` can issue queries directly [#54](https://github.com/CityofSantaMonica/SODA.NET/issues/54)

### New in 0.5.0 (Released 2015/08/12)

Dependency Updates

- `Newtonsoft.Json` upgraded to 7.0.1 [#43](https://github.com/CityofSantaMonica/SODA.NET/issues/43)
- `Newtonsoft.Json` upgraded to 7.0.1 [#43](https://github.com/CityofSantaMonica/SODA.NET/issues/43)

Deprecation Notices

- `ExcelOleDbHelper` in `SODA.Utilities` has been deprecated and replaced by `ExcelDataReaderHelper`. `ExcelOleDbHelper` will be removed in `v0.6.0`.
- `ExcelOleDbHelper` in `SODA.Utilities` has been deprecated and replaced by `ExcelDataReaderHelper`. `ExcelOleDbHelper` will be removed in `v0.6.0`.

New features

- `ExcelDataReaderHelper` for reading data from Excel documents [#46](https://github.com/CityofSantaMonica/SODA.NET/pull/46) via @allejo
- `Ews2010Sp2Client` for utilizing EWS against Exchange 2010 SP2
- `ExcelDataReaderHelper` for reading data from Excel documents [#46](https://github.com/CityofSantaMonica/SODA.NET/pull/46) via @allejo
- `Ews2010Sp2Client` for utilizing EWS against Exchange 2010 SP2

### New in 0.4.1 (Released 2015/06/11)

Bug fixes

- `SoqlQuery.MaximumLimit` increased to 50K [#39](https://github.com/CityofSantaMonica/SODA.NET/issues/39) via @chrismetcalf
- `SoqlQuery.MaximumLimit` increased to 50K [#39](https://github.com/CityofSantaMonica/SODA.NET/issues/39) via @chrismetcalf

### New in 0.4.0 (Released 2015/05/07)

Dependency Updates

- `Newtonsoft.Json` upgraded to 6.0.8
- `Newtonsoft.Json` upgraded to 6.0.8

New features

- Overload to skip header for `SeparatedValuesSerializer` [#31](https://github.com/CityofSantaMonica/SODA.NET/issues/31)
- Optional `RequestTimeout` property on `SodaClient` [#28](https://github.com/CityofSantaMonica/SODA.NET/issues/28)
- Overload to skip header for `SeparatedValuesSerializer` [#31](https://github.com/CityofSantaMonica/SODA.NET/issues/31)
- Optional `RequestTimeout` property on `SodaClient` [#28](https://github.com/CityofSantaMonica/SODA.NET/issues/28)

### New in 0.3.0 (Released 2015/01/08)

Dependency Updates

- `Newtonsoft.Json` upgraded to 6.0.7
- `NUnit` (for test projects) upgraded to 2.6.4
- `Newtonsoft.Json` upgraded to 6.0.7
- `NUnit` (for test projects) upgraded to 2.6.4

New features

- Implementation of SODA [`PhoneColumn`](https://support.socrata.com/hc/en-us/articles/202949918-Importing-Data-Types-and-You-) [#24](https://github.com/CityofSantaMonica/SODA.NET/pull/24) via @mickmorbitzer
- Added a Uri helper for Foundry-style API documentation pages [#22](https://github.com/CityofSantaMonica/SODA.NET/issues/22)
- Implementation of SODA [`PhoneColumn`](https://support.socrata.com/hc/en-us/articles/202949918-Importing-Data-Types-and-You-) [#24](https://github.com/CityofSantaMonica/SODA.NET/pull/24) via @mickmorbitzer
- Added a Uri helper for Foundry-style API documentation pages [#22](https://github.com/CityofSantaMonica/SODA.NET/issues/22)

### New in 0.2.1 (Released 2014/12/02)

Bug fixes
- Soql Limit and Offset throw exceptions for out of range values [#18](https://github.com/CityofSantaMonica/SODA.NET/issues/18)
- Fixed column aliasing bug using Soql As [#17](https://github.com/CityofSantaMonica/SODA.NET/issues/17)

- Soql Limit and Offset throw exceptions for out of range values [#18](https://github.com/CityofSantaMonica/SODA.NET/issues/18)
- Fixed column aliasing bug using Soql As [#17](https://github.com/CityofSantaMonica/SODA.NET/issues/17)

### New in 0.2.0 (Released 2014/11/03)

Dependency Updates

- `Newtonsoft.Json` upgraded to 6.0.6 [#15](https://github.com/CityofSantaMonica/SODA.NET/issues/15)
- `Newtonsoft.Json` upgraded to 6.0.6 [#15](https://github.com/CityofSantaMonica/SODA.NET/issues/15)

New features

- Convenience `Query` method on `Resource<TRow>` for results that are collections of `TRow` [#12](https://github.com/CityofSantaMonica/SODA.NET/issues/12)
- `SeparatedValuesSerializer` in `SODA.Utilities` can serialize entities to CSV/TSV strings in memory [#2](https://github.com/CityofSantaMonica/SODA.NET/issues/2)
- Convenience `Query` method on `Resource<TRow>` for results that are collections of `TRow` [#12](https://github.com/CityofSantaMonica/SODA.NET/issues/12)
- `SeparatedValuesSerializer` in `SODA.Utilities` can serialize entities to CSV/TSV strings in memory [#2](https://github.com/CityofSantaMonica/SODA.NET/issues/2)

### New in 0.1.2 (Released 2014/10/01)

Minor bug fixes and cleanup

- `SodaResult` members aren't publicly settable [#9](https://github.com/CityofSantaMonica/SODA.NET/issues/9)
- `unwrapExceptionMessage` moved to a public extension of `WebException` [#8](https://github.com/CityofSantaMonica/SODA.NET/issues/8)
- `Newtonsoft.Json` upgraded to 6.0.5 [#6](https://github.com/CityofSantaMonica/SODA.NET/issues/6)
- `SodaResult` correctly deserializes the `By RowIdentifier` value [#5](https://github.com/CityofSantaMonica/SODA.NET/issues/5)
- Some common assembly information [moved to a shared solution-level file](https://github.com/CityofSantaMonica/SODA.NET/commit/5cf686018b49fcd7883561b8a37ec214246d07e6). This will help with deployment
- `SodaResult` members aren't publicly settable [#9](https://github.com/CityofSantaMonica/SODA.NET/issues/9)
- `unwrapExceptionMessage` moved to a public extension of `WebException` [#8](https://github.com/CityofSantaMonica/SODA.NET/issues/8)
- `Newtonsoft.Json` upgraded to 6.0.5 [#6](https://github.com/CityofSantaMonica/SODA.NET/issues/6)
- `SodaResult` correctly deserializes the `By RowIdentifier` value [#5](https://github.com/CityofSantaMonica/SODA.NET/issues/5)
- Some common assembly information [moved to a shared solution-level file](https://github.com/CityofSantaMonica/SODA.NET/commit/5cf686018b49fcd7883561b8a37ec214246d07e6). This will help with deployment

### New in 0.1.1 (Released 2014/09/16)

Minor bug fixes and cleanup

- Replace with CSV correctly parses `SodaResult` [#4](https://github.com/CityofSantaMonica/SODA.NET/issues/4)
- Upsert with CSV correctly parses `SodaResult` [#3](https://github.com/CityofSantaMonica/SODA.NET/issues/3)
- Replace with CSV correctly parses `SodaResult` [#4](https://github.com/CityofSantaMonica/SODA.NET/issues/4)
- Upsert with CSV correctly parses `SodaResult` [#3](https://github.com/CityofSantaMonica/SODA.NET/issues/3)

### New in 0.1.0 (Released 2014/08/28)

- Initial release!
- This library is under active development. As such, pre-v1.0 versions may introduce breaking changes until things stabilize around v1.0. Every effort will be made to ensure that any breaking change is well documented and that appropriate workarounds are suggested.
- Initial release!
- This library is under active development. As such, pre-v1.0 versions may introduce breaking changes until things stabilize around v1.0. Every effort will be made to ensure that any breaking change is well documented and that appropriate workarounds are suggested.
7 changes: 5 additions & 2 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
version: 0.9.0-{build}
version: 0.10.0-{build}

image: Visual Studio 2017
image: Visual Studio 2019

pull_requests:
do_not_increment_build_number: true
Expand All @@ -15,3 +15,6 @@ build_script:

test_script:
- dotnet test

notifications:
- provider: GitHubPullRequest
Binary file added icon.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 166affe

Please sign in to comment.