From 0d3aa8bf4ebd0e036ae130126d73e29c7e357db6 Mon Sep 17 00:00:00 2001 From: Evgeniy Kulikov Date: Mon, 3 Feb 2020 11:39:03 +0300 Subject: [PATCH 1/4] Update README --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index a6662c3..d9a97b8 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# NeoFS-proto +# NeoFS API -NeoFS-proto repository contains implementation of core NeoFS structures that +NeoFS API repository contains implementation of core NeoFS structures that can be used for integration with NeoFS. ## Description @@ -107,7 +107,7 @@ State package defines: ## How to use -NeoFS-proto packages contain godoc documentation. Examples of using most of +NeoFS API packages contain godoc documentation. Examples of using most of these packages can be found in NeoFS-CLI repository. CLI implements and demonstrates all basic interactions with NeoFS: container, object, storage group, and accounting operations. From d75a56f92e2861985de366275607e99a3cf665cf Mon Sep 17 00:00:00 2001 From: Evgeniy Kulikov Date: Mon, 3 Feb 2020 12:36:37 +0300 Subject: [PATCH 2/4] Update Object.Search, stream --- docs/object.md | 2 +- object/service.pb.go | Bin 122373 -> 122795 bytes object/service.proto | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/object.md b/docs/object.md index e749b98..dbdd6dc 100644 --- a/docs/object.md +++ b/docs/object.md @@ -63,7 +63,7 @@ rpc Get(GetRequest) returns (stream GetResponse); rpc Put(stream PutRequest) returns (PutResponse); rpc Delete(DeleteRequest) returns (DeleteResponse); rpc Head(HeadRequest) returns (HeadResponse); -rpc Search(SearchRequest) returns (SearchResponse); +rpc Search(SearchRequest) returns (stream SearchResponse); rpc GetRange(GetRangeRequest) returns (GetRangeResponse); rpc GetRangeHash(GetRangeHashRequest) returns (GetRangeHashResponse); diff --git a/object/service.pb.go b/object/service.pb.go index 43013fe8fcc677238bc0f49e0b5d71e33f081a11..05e7c4b370689e275c5b1a56b1029b1b432003f8 100644 GIT binary patch delta 4891 zcmZ9POK4qH6ov_?N%}yvp=!|@EfiY=J@>q?uSqAOBG_Q3<(|jIYFo`s8t&{2r0A&7 z?mB4c$Oi}sBBWH&gz7{T+PNS~r$X^Dbfjzl-@YYwayVz7z1QPk|9b3mo6~DIroa4V zX)1T$E?u9i>V^4eTsQtX$o#WvT{n92@Qztq$n{gtBK7atz(13of2Mktwfk{Y%=qn< z{dCjI#~PIQX7@Q=29l!e$(Zuf8l_OJy+kN&xmkW@Aqz?4n zl;MCN5ex&l9)lNP2$)g_G8vg^y^(%QZCY7`ILQIXLYCIC2dx_yoa4Xj&LyvvB)m#w z_Ye;SWG2~t`Bv*W)TvzBYCR1L@4}Ff%fnckdQzEt5ncFQ>O`bXk!0u6nQFb&vypWi zjwC3R593A}N*!(m5@CpRAd-1~xf8(x>F@cS-575{xDcu!G60JdYRUCPGB}WGE6gAO zm5i)p7-6VoS6|u^9F+dPM2jBXIPOV9qd)L4A<)uR>b;e=So|y%DyUQ-72mW6KO2Gy zs|JJt1wysbyAMET$*7N%C~dP6>j8Zr46zZMhtk#(Px3F5AWUr)!$QxV4imS&R!W&y znLC+fy{zQNP+Liyfixr%T09y{}I6Ynx4ef$(nS5v^BdXG&@+c7TCapg zBx`B`UAW)JPjom6B*q5M;zX#Ua|ku1Kh`rq#$R9B?@Gh z3Z9W-o77rTD;YTu-lR!P8cRc@{e|ozKBQ(y$5t8|9f)PdK!I+x!eJm3=-s$SC4@x+ zCdPkhgL~-5!yydl$p_HO6ov$X=vb=vzK|cvib$dYXjHBCk=si7)KDit3{ zur8I)i5%$*yaE!(GB1%J+-W2tfuy$8^!wg6X^+sAq#Y~P_H4ZZNr|W{`9R+z zb8*z-V_RV_qDu)i?%DcKrczy6dpG?wIEYRd=wpV}1f^(9?}8ba2QZecCe<>~nI!p@$oCvU9>sPO@@z{tcHqDQ-E1PRGKB=@!7>XX+` z0GL$pmO4#aj_`pdM5nR@@y8^CvK;!DR>-kj?_n$wc!bS(V`r(*R+_wigTecNqmYP^ z$R|iN?h9_R4v4AyeQBs<3)z*Cjq;Feq{thn0!aZ#v=6UjUp5@wT7lm=Q|N3HJ*A7&@+FLXSvN!&5Qj3nf3*zh3PKzp}9P=ctt zOhNQLT%Z$hKMN~5+cAeTJ3u08la+U`fiWXMsS`|F6mST|J3J&*c+Q2wTCv&4l?7?c zp9Z8U=)w&#)Ou+^Qmag3N@u_+w8Axs{H?`aT1x2hA_jws?{DS;(J8>bKDD#=wFo2pg#nfU1STVp=TyB6EQsDA6{sgv!Q6?fy~Pd9!(KfBZad4NCe>V?Ir*!^{3ZkmOs-5Xb8_uR$Z zlMSz2{BH7k`-8drkG1vcGw!#```nA}z}+7o<$JbkIy67owtwoh`}gu=?iaVT@x_(f z)6X7e-?4V-Y`eU&Fu&N2R!`RL36}j=J32Jqjz;f}+zaQgZq%Rrao@pFyEK3A!R68F zJ%`=*pB>$}_4&+BcW3>8dv$Hr9lN&Ay|eb3yLD~)q0Rd#?X;|Hkpn)hYM()?T-3^HKNI=6?73 Q*5mKr-1_R~)>MD~KTBN;rvLx| delta 4739 zcmZ9QyNg{_6vi3QWF{dRgkUsEF4!bti0A#VvCu*U6%+&7BsyaKKkXmB{>$N?AMI|W z?(y#Z7y4*>7A^D6Ka<8?pPxQwZ%wg%WGh;Bg^2mg+QarEz9;l5bBypg!C7H7Ac#4ly~P)bl1`;`0{av{@cjLCGmke){F#Db^QdZS~ljO=AR>$Tns?QA4%kd0O56->)Y-y3}| z^xg~lUXn`bY1ht;Yb&XCR;B!u6}haaq@gA(qeNHwkZV&S7kUrLwB&Ov7$R+og%v*3 z0tVI;lA6fI7|rrw*-AsCI9JkOstx*5h5_TltS@CuDSskhm0`8~iR5i6 z7)GS(ImjXi(8w+*k>^q{Na?5#1;kD)hzOl9p{$@Z0@e{I zaZyh~7Qk9#T_=ch_t*0EDW_y;zXi@am&!79j^wP6No5iV+GtO#b#Ma)$W_Ye7;hyZ zS3IrWcm?FLAfA@ByoNag)Wk!brXI#bT~ZrKN@Q@SJ-IYsbrDF6w=yr6sewK^48?no zf)xenhs7Wq%ZlKS^q`-W(pO|F)H0GX+DaQmb6n#AR3c3x1+Ru5fZ?s1mhpc-LiHce zK)EC-AV`2g+K6GVkhFrK)N>G2xtyXxg;Ww2xX^_>G+-<#$bM|ClsN!^q!{!Fx1cuTm^AV1A#1zI1-Hv&*fL`=ThR@0woiTVnyLK)FI)jyL|YksEFs<}PQf3Jbk zNv*}vQCkyOg294>UPsxlDSif|>8I3Tmz;$xG6?&AhP@&`rHG}&XEx$nckfI@ETxat#r&KkMbXM>KIuMqfsE0Q4zanMI;nW zGu7EVm4-;htJ^P`7vUr|78=l^=)qkk{mf0ot(RAf5S45xB($l~Ailx&2Ie#5%R@EDPzUidj@WN(3v+7TU#BLnk707~#+v`UhcE2DY*b&5UPE z*k-9$06cK0nq+GyS_PEI97#$9E{G9~z*5nQP|;+u&hpl400s(CFGzX`C4C4|AqDXy zNtvvt*P#cWp;CyIut*34rxP(YOvZA7@iF6D#lnhEtF%euD3ATp6_n}h; z1V{i^fd&$~1;v*#(Q6NpWIQDgkw6uvy<2#^0?0K1E=7h;U^g102DG9dkjtaiGd;nO zHiD(0)at8MBd>vkf~%=`O8|JM)lFn*ra;4bD%2?4+5^zdqD%;L(Xuk-HE``AO2mzK zSVH0?5=23vrH2*4Ig!!SsYYaAdOYw!Vc-KZO0E?$imJ@K%`6m%#-v7RAdq@e6DVSK z)?BdpOZL$hY4(GN11EdY6saMUwb?L_KqleCYGBoqfee~VzkluFO@jIEj{Oy)|`*y#2dhgG}r@Jec7sGOK z{vG~q&p5O5@vwV!*juh($ diff --git a/object/service.proto b/object/service.proto index 12f9741..4487a49 100644 --- a/object/service.proto +++ b/object/service.proto @@ -40,7 +40,7 @@ service Service { // Search objects in container. Version of query language format SHOULD BE // set to 1. Search query represented in serialized format (see query // package). - rpc Search(SearchRequest) returns (SearchResponse); + rpc Search(SearchRequest) returns (stream SearchResponse); // GetRange of data payload. Ranges are set of pairs (offset, length). // Fragments order in response corresponds to ranges order in request. From 124666a1426246011f9b8c054ce846e649232134 Mon Sep 17 00:00:00 2001 From: alexvanin Date: Tue, 4 Feb 2020 13:29:31 +0300 Subject: [PATCH 3/4] object: Add default filename user header key for third party apps --- object/utils.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/object/utils.go b/object/utils.go index baaed0f..329f287 100644 --- a/object/utils.go +++ b/object/utils.go @@ -8,6 +8,11 @@ import ( "github.com/pkg/errors" ) +// FilenameHeader is a user header key for names of files, stored by third +// party apps. We recommend to use this header to be compatible with neofs +// http gate, neofs minio gate and neofs-dropper application. +const FilenameHeader = "filename" + // ByteSize used to format bytes type ByteSize uint64 From 3f82b41a62718f8a25e5f9ffd4c38696f669cf8f Mon Sep 17 00:00:00 2001 From: Evgeniy Kulikov Date: Tue, 4 Feb 2020 13:52:57 +0300 Subject: [PATCH 4/4] CHANGELOG --- CHANGELOG.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 281bedc..f4d4864 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,17 @@ # Changelog This is the changelog for NeoFS Proto +## [0.2.14] - 2020-02-04 + +### Fixed +- Readme + +### Added +- Filename header + +### Updated +- Object.Search now uses streams + ## [0.2.13] - 2020-02-03 ### Fixed @@ -134,3 +145,4 @@ Initial public release [0.2.11]: https://github.com/nspcc-dev/neofs-api/compare/v0.2.10...v0.2.11 [0.2.12]: https://github.com/nspcc-dev/neofs-api/compare/v0.2.11...v0.2.12 [0.2.13]: https://github.com/nspcc-dev/neofs-api/compare/v0.2.12...v0.2.13 +[0.2.14]: https://github.com/nspcc-dev/neofs-api/compare/v0.2.13...v0.2.14