Commit Graph

939 Commits

Author SHA1 Message Date
Ahson Khan
bd8336f8a2
Removed Azure::Core::Http::InvalidHeaderException and throw std::invalid_argument if the user provides invalid header arguments. (#1871) 2021-03-11 13:42:33 -08:00
Ahson Khan
6a1afb9cbe
Moved the Base64Encode() and Base64Decode() functions to be static members of a Convert class within the Azure::Core namespace. (#1870)
* Moved the `Base64Encode()` and `Base64Decode()` functions to be static members of a `Convert` class within the `Azure::Core` namespace.

* Add the class name in the source file for posix.
2021-03-11 12:39:51 -08:00
Rick Winter
7c862e1a51
Switch to return the RawResponse const& (#1852)
* Operation returns a RawResposne const&
2021-03-11 10:59:33 -08:00
Anton Kolesnyk
64c0af3f67
Fix build on VS2017 (#1864) 2021-03-11 18:43:27 +00:00
Ahson Khan
ec1c92f2ea
Fix to call the instance method on bodystream from recent tests. (#1866) 2021-03-11 17:57:06 +00:00
Ahson Khan
12475350b2
Changed the static methods 'BodyStream::ReadToCount()' and 'BodyStream::ReadToEnd()' into instance methods. (#1863)
Usability studies found that static methods are generally not as user-friendly as instance methods. Folks new to the SDK have harder time discovering the APIs, they reverse the flow of typing, and the calling code ends up a bit more verbose because you have to spell out the whole namespace and type name when there aren't any using directives.

There doesn't seem to be a strong benefit or feasibility reason to keep these method statics which are typically harder to use and discover.

cc @kyle-patterson
2021-03-11 11:58:33 +00:00
Ahson Khan
84df3cefbc
Make FileBodyStream easy to construct by accepting a file name, and create an internal ParallelFileBodyStream. (#1830)
Alternative to https://github.com/Azure/azure-sdk-for-cpp/pull/1730 which avoids accepting and breaking the `FILE*` abstraction.
2021-03-11 08:39:52 +00:00
Victor Vazquez
c0ce9688d6
fix regression on contex value implementation for Storage (#1862) 2021-03-11 07:53:33 +00:00
Victor Vazquez
23b698f2c6
Move URL to CORE (#1840)
* move url from Core::Http to Core::
2021-03-10 23:29:35 -08:00
Ahson Khan
55fe99a1b1
Revert checked-in connection strings and delete resources. (#1854) 2021-03-10 21:32:03 -08:00
Victor Vazquez
a9c0637e46
Moving Nullable<T> to Azure namespace (#1847)
* Moving Nullable<T> to Azure namespace

* changelog
2021-03-10 18:56:11 -08:00
Victor Vazquez
c7ba56f837
Move http policies to Azure::Core::Http::Policies (#1844)
* Move http policies to Azure::Core::Http::Policies

* update to latest master
2021-03-10 18:55:56 -08:00
Victor Vazquez
33c95b09e9
make curl transport adapter to request new connection if sending fails (#1721)
* make curl transport adapter to request new connection if sending fails
2021-03-10 18:02:04 -08:00
Anton Kolesnyk
de0cb8a720
Azure::Core::Diagnostics (#1851)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2021-03-10 17:20:45 -08:00
Ahson Khan
f1773636c2
Consolidate the changelog entry for bodystream changes. (#1843) 2021-03-10 17:11:07 -08:00
Anton Kolesnyk
698fac6f19
DefaultAllowedHttpHeaders: Make static default const (#1849)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2021-03-10 16:40:34 -08:00
Anton Kolesnyk
865f707532
Azure::Core::Credentials (#1846)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2021-03-10 16:22:10 -08:00
Ahson Khan
2a1ea1f890
Rename the Range type to HttpRange within the Azure::Core::Http namespace. (#1835)
Part of https://github.com/Azure/azure-sdk-for-cpp/issues/1789

> We shouldn't have Method, StatusCode, or Range. The way to reason about this is chances of collision and ease of documentation/discover-ability in SEO. RawResponse is specific enough that it doesn't need Http prefix, that's how I would draw the line.
2021-03-10 23:26:36 +00:00
Rick Winter
ec24f659c4
Simplify the Context structure (#1824)
* Simplify the Context structure
* Move Azure::Core::GetApplicationContext() to Azure::Core::Context::GetApplicationContext()
2021-03-10 23:19:23 +00:00
Anton Kolesnyk
48258f8f81
Azure::*::_detail::Version => Azure::*::PackageVersion (#1839)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2021-03-10 15:15:28 -08:00
Anton Kolesnyk
76870c4414
Azure::Core::DateTime => Azure::DateTime (#1836)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2021-03-10 22:44:09 +00:00
Victor Vazquez
7fca169d25
Create StringExtensions in azure core internal (#1837) 2021-03-10 14:13:51 -08:00
Anton Kolesnyk
2562df6682
_internal::Json => Json::_internal (#1834)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2021-03-10 14:05:35 -08:00
Ahson Khan
3d6cd38658
Move Azure::IO types like BodyStream to Azure::Core::IO. (#1833)
Part of https://github.com/Azure/azure-sdk-for-cpp/issues/1789

From Jeff:
> BodyStream is only exposed to users when uploading/downloading bytes. Except for Storage almost no services do this at all; they read the stream and deserialize into a structure and the customer gets the structure - not the stream. Azure::Core:IO is a fine namespace.
2021-03-10 21:36:29 +00:00
Azure SDK Bot
8dcea0f47f
Sort changelogs by date then version (#1832)
Fixes #1389

Co-authored-by: Heath Stewart <heaths@microsoft.com>
2021-03-10 11:57:49 -08:00
Victor Vazquez
8bf8ebb53c
fix msvc static checks (#1829) 2021-03-10 07:07:01 +00:00
Ahson Khan
2213991d52
Remove BUILD_ENV_LOGGER cmake option and always honor AZURE_LOG_LEVEL env var, if set. (#1827) 2021-03-09 23:05:00 -08:00
Victor Vazquez
a4110e44e2
throw when rawResponse was extracted (#1825)
* throw when rawResponse was extracted
2021-03-09 21:50:08 -08:00
Anton Kolesnyk
bc564dbddd
Namespaces renamed: Details => _detail, Internal => _internal (#1823) 2021-03-09 18:05:47 -08:00
Azure SDK Bot
7a93457f42
Use latest pipeline generator. (#1817)
Co-authored-by: Mitch Denny <midenn@microsoft.com>
2021-03-09 15:43:04 -08:00
Victor Vazquez
931cb76e82
update tests from core to run together (#1818) 2021-03-09 22:42:15 +00:00
Ahson Khan
dd3c79c9b4
Make sure DateTime.ToString() works without requiring additional parameters by choosing RFC 3339 as the default. (#1812)
* Make sure DateTime.ToString() works without requiring additional parameters by choosing RFC 3339 as the default.

* Address naming feedback and add some tests.

* Fix test warning by using static cast.
2021-03-09 13:29:20 -08:00
Victor Vazquez
6582d3a6dc
moving pipeline from azure core internal to azure core http internal (#1821) 2021-03-09 12:02:44 -08:00
Azure SDK Bot
37454b68ef
Sync eng/common directory with azure-sdk-tools for PR 1452 (#1814)
* Use sparse checkout for generate matrix job

* Add repository parameter

Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
2021-03-08 18:07:54 -08:00
Victor Vazquez
e4b5b806d0
Move Azure::MatchConditions and Azure::ModifiedConditions (#1810)
Move `Azure::MatchConditions` and `Azure::ModifiedConditions` (#1810)
2021-03-09 01:45:22 +00:00
Daniel Jurek
90cd888a63
Refactor vcpkg PR step (also, use CHANGELOG.md entry in commit message) (#1791)
* Validate publishing before parameter refactor

Fix release yaml syntax

Environment variable naming

Remove flag

Remove checkout step

Reset the commit

Cleanup Update-VcpkgPort.ps1, mostly git reset HEAD^. Attempt to check out branch in remote.

Try putting CHANGELOG entry into commit message

Include common.ps1 for changelog operations

Correct path for common.ps1

Include the scripts folder as well

Quotes

Refactor to use release artifacts, perform the commit in Update-VcpkgPort.ps1, set parameters and variables needed to complete PR with the commit step already finished

* Add PR body

* Add newline
2021-03-08 16:18:47 -08:00
Victor Vazquez
a70be6a49c
Moving ETag to ::Azure (#1801)
etag rename
2021-03-08 16:05:18 -08:00
Daniel Jurek
272c229071
Add timeoutInMinutes: 10 to Vcpkg Cache (#1792)
* Add timeoutInMinutes: 10 to Vcpkg Cache

* Add comment about Vcpkg Cache timeout
2021-03-08 15:46:38 -08:00
Ahson Khan
41a3b4c429
Fixing ci yml be making sure the comment starts with # (#1813)
Fixes typo from https://github.com/Azure/azure-sdk-for-cpp/pull/1800#discussion_r589725726
2021-03-08 22:17:23 +00:00
Victor Vazquez
04d8508e07
Move Response<T> to Azure:: (#1800)
* Move Response<T> to Azure
2021-03-08 21:19:17 +00:00
Casey Carter
32314ac993
Typo in "associated" (#1811) 2021-03-08 12:05:45 -08:00
Rick Winter
e7e2ea8bb5
Move Version out of the Details namespace (#1809)
* Move Version out of the Details namespace
SDKVersion strings for each package are not a detail and can be used by customers.

* Add changelog
2021-03-08 10:21:25 -08:00
Anton Kolesnyk
6b83c85154
Fix build on VS2017 (#1808)
* VS2017 is right, we should be including `<iterator>`, if we use `std::inserter`. It fails to compile on VS2017 without that include.
Why if fails on 2017 and not 2019? Some of the other stdlib headers we include must be including `<iterator>` indirectly in 2019. But we should not be relying on that. Standard says, you use `std::inserter` - include `<iterator>`, if it works without that, that's a coincidence which may break beween versions of stdlib/compilers.

* VS 2017 does not fail because we don't include `<type_taits>` here, but formally we should include it too, because we use 
`std::remove_reference` and `std::remove_const`. It just happens that `log.hpp` includes it, but we should not be relying on that.

This was found during local vcpkg verification - I happen to have it configured targeting VS2017. It does not mean it will fail in vcpkg CI, or would affect many customers, but some for sure. Verification on vcpkg CI looks good - https://github.com/microsoft/vcpkg/pull/16578 (it is based on our master as of Sat 3/6 + this fix).
I verified locally that it builds successfully on `x64-windows`, `x64-windows-static`, and `arm-uwp`.

We should run verification once again, once we have all the renames/moves in master.
2021-03-07 02:04:25 +00:00
JinmingHu
45055dc9ef
use new HttpPipeline builder (#1784) 2021-03-07 10:03:08 +08:00
JinmingHu
01ae3714f1
return rawresponse for copy operation (#1807)
* return rawresponse for copy operation

* also for file copy

* remove noexcept
2021-03-06 08:26:34 +00:00
Rick Winter
9dedcb0d4c
Operations need to provide the RawResponse (#1803)
* Operations should expose the RawResposne
Added the pure virtual method
2021-03-05 20:33:14 -08:00
Azure SDK Bot
3b88c7bb83
move SetTestPipeline into its own template (#1799)
Co-authored-by: Chidozie Ononiwu <chononiw@microsoft.com>
2021-03-05 17:10:40 -08:00
Victor Vazquez
401dbfe448
Fix context for unique (#1796)
* fix for Context to support unique ptr
2021-03-05 16:09:04 -08:00
Ahson Khan
11a533a6fd
For consistency within the SDK, move Azure::Core::Context to be the last parameter for various Azure::Core APIs. (#1779)
* For consistency within the SDK, move Azure::Core::Context to be the last
parameter for various Azure::Core APIs.

* Fix merge conflict due to log policy file change.

* Update new client options tests
2021-03-05 14:39:57 -08:00
Azure SDK Bot
b96f42481c
Fix logic in SetTestPipelineVersionInEngCommon (#1794)
Co-authored-by: Chidozie Ononiwu <chononiw@microsoft.com>
2021-03-05 13:49:38 -08:00