[jira] [Updated] (THRIFT-5781) implement full deprecation support

2024-05-13 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5781?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5781:
---
Attachment: 0001-THRIFT-5781-implement-full-deprecation-support-fix-u.patch

> implement full deprecation support
> --
>
> Key: THRIFT-5781
> URL: https://issues.apache.org/jira/browse/THRIFT-5781
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Fix For: 0.21.0
>
> Attachments: 
> 0001-THRIFT-5781-implement-full-deprecation-support-fix-u.patch, 
> deprecated.thrift
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Currently netstd only checks service methods for deprecation markers. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5782) implement full deprecation support

2024-05-02 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5782?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5782:
---
Attachment: 0001-THRIFT-5782-implement-full-deprecation-support.patch

> implement full deprecation support
> --
>
> Key: THRIFT-5782
> URL: https://issues.apache.org/jira/browse/THRIFT-5782
> Project: Thrift
>  Issue Type: Sub-task
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Fix For: 0.21.0
>
> Attachments: 0001-THRIFT-5782-implement-full-deprecation-support.patch
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> same as THRIFT-5781 for delphi (at least as much as possible :()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5783) drop net7 support

2024-05-02 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5783?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5783.

Fix Version/s: 0.21.0
   Resolution: Fixed

> drop net7 support
> -
>
> Key: THRIFT-5783
> URL: https://issues.apache.org/jira/browse/THRIFT-5783
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Version net70. will become EOL end of this year. Packages already start to 
> drop support for it, causing issues on nuget package upgrades
> {code:java}
> NU1202    Microsoft.AspNetCore.Components.Web 8.0.4 not compatible with 
> net7.0  {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5783) drop net7 support

2024-05-01 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5783:
--

 Summary: drop net7 support
 Key: THRIFT-5783
 URL: https://issues.apache.org/jira/browse/THRIFT-5783
 Project: Thrift
  Issue Type: Improvement
  Components: netstd - Library
Reporter: Jens Geyer
Assignee: Jens Geyer


Version net70. will become EOL end of this year. Certzainm püackages already 
dopped support for it, causing issues on nuget package upgrades


{code:java}
NU1202    Microsoft.AspNetCore.Components.Web 8.0.4 not compatible with net7.0  
{code}
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5783) drop net7 support

2024-05-01 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5783?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5783:
---
Description: 
Version net70. will become EOL end of this year. Packages already start to drop 
support for it, causing issues on nuget package upgrades
{code:java}
NU1202    Microsoft.AspNetCore.Components.Web 8.0.4 not compatible with net7.0  
{code}
 

  was:
Version net70. will become EOL end of this year. Certzainm püackages already 
dopped support for it, causing issues on nuget package upgrades


{code:java}
NU1202    Microsoft.AspNetCore.Components.Web 8.0.4 not compatible with net7.0  
{code}
 


> drop net7 support
> -
>
> Key: THRIFT-5783
> URL: https://issues.apache.org/jira/browse/THRIFT-5783
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
>
> Version net70. will become EOL end of this year. Packages already start to 
> drop support for it, causing issues on nuget package upgrades
> {code:java}
> NU1202    Microsoft.AspNetCore.Components.Web 8.0.4 not compatible with 
> net7.0  {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5778) Machine readable way to describe client-side service bindings

2024-04-27 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5778:
---
Description: 
Describing the endpoint specifics for a Thrift API today is a purely 
text-adventure like exercise, which leaves the client end with the task to set 
up and stack together a proper protocol/transport stack. That sometimes even 
leads to headaches, e.g. if the server requires e.g. framed protocol which 
might not be obvious. 

The use of a generally accepted, machine-readable and extensible format to 
describe client bindings could streamline that process.

 

  was:
Describing the endpoint specifics for a Thrift API today is a purely 
text-adventure like exercise, which leaves the client end with the task to set 
up and stack together a proper protocol/transport stack. That sometimes even 
leads to headaches, e.g. if the server requires e.g. framed protocol which 
might not be obvious. The use of a generally accepted, machine-readable and 
extensible Thrift URI format to describe client bindings could streamline that 
process.
   
 Details (work in progress) at 
https://github.com/Jens-G/thrift/blob/thrift-uri/doc/specs/thrift-uri.md


> Machine readable way to describe client-side service bindings
> -
>
> Key: THRIFT-5778
> URL: https://issues.apache.org/jira/browse/THRIFT-5778
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Jens Geyer
>Priority: Major
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Describing the endpoint specifics for a Thrift API today is a purely 
> text-adventure like exercise, which leaves the client end with the task to 
> set up and stack together a proper protocol/transport stack. That sometimes 
> even leads to headaches, e.g. if the server requires e.g. framed protocol 
> which might not be obvious. 
> The use of a generally accepted, machine-readable and extensible format to 
> describe client bindings could streamline that process.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5778) Machine readable way to describe client-side service bindings

2024-04-27 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17841420#comment-17841420
 ] 

Jens Geyer commented on THRIFT-5778:


Thrift URI proposal (work in progress) at 
[https://github.com/Jens-G/thrift/blob/thrift-uri/doc/specs/thrift-uri.md]

> Machine readable way to describe client-side service bindings
> -
>
> Key: THRIFT-5778
> URL: https://issues.apache.org/jira/browse/THRIFT-5778
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Jens Geyer
>Priority: Major
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Describing the endpoint specifics for a Thrift API today is a purely 
> text-adventure like exercise, which leaves the client end with the task to 
> set up and stack together a proper protocol/transport stack. That sometimes 
> even leads to headaches, e.g. if the server requires e.g. framed protocol 
> which might not be obvious. 
> The use of a generally accepted, machine-readable and extensible format to 
> describe client bindings could streamline that process.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5778) Machine readable way to describe client-side service bindings

2024-04-27 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5778:
---
Summary: Machine readable way to describe client-side service bindings  
(was: Thrift URIs: A machine readable way to describe client-side service 
bindings)

> Machine readable way to describe client-side service bindings
> -
>
> Key: THRIFT-5778
> URL: https://issues.apache.org/jira/browse/THRIFT-5778
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Jens Geyer
>Priority: Major
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Describing the endpoint specifics for a Thrift API today is a purely 
> text-adventure like exercise, which leaves the client end with the task to 
> set up and stack together a proper protocol/transport stack. That sometimes 
> even leads to headaches, e.g. if the server requires e.g. framed protocol 
> which might not be obvious. The use of a generally accepted, machine-readable 
> and extensible Thrift URI format to describe client bindings could streamline 
> that process.
>
>  Details (work in progress) at 
> https://github.com/Jens-G/thrift/blob/thrift-uri/doc/specs/thrift-uri.md



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5782) implement full deprecation support

2024-04-26 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5782?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5782.

Fix Version/s: 0.21.0
   Resolution: Fixed

> implement full deprecation support
> --
>
> Key: THRIFT-5782
> URL: https://issues.apache.org/jira/browse/THRIFT-5782
> Project: Thrift
>  Issue Type: Sub-task
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Fix For: 0.21.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> same as THRIFT-5781 for delphi (at least as much as possible :()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5782) implement full deprecation support

2024-04-26 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5782:
--

 Summary: implement full deprecation support
 Key: THRIFT-5782
 URL: https://issues.apache.org/jira/browse/THRIFT-5782
 Project: Thrift
  Issue Type: Sub-task
  Components: Delphi - Compiler
Reporter: Jens Geyer
Assignee: Jens Geyer


same as THRIFT-5781 for delphi (at least as much as possible :()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5781) implement full deprecation support

2024-04-25 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5781?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5781.

Fix Version/s: 0.21.0
   Resolution: Fixed

> implement full deprecation support
> --
>
> Key: THRIFT-5781
> URL: https://issues.apache.org/jira/browse/THRIFT-5781
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Fix For: 0.21.0
>
> Attachments: deprecated.thrift
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Currently netstd only checks service methods for deprecation markers. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5781) implement full deprecation support

2024-04-25 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5781?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5781:
---
Attachment: deprecated.thrift

> implement full deprecation support
> --
>
> Key: THRIFT-5781
> URL: https://issues.apache.org/jira/browse/THRIFT-5781
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Attachments: deprecated.thrift
>
>
> Currently netstd only checks service methods for deprecation markers. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5781) implement full deprecation support

2024-04-25 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5781:
--

 Summary: implement full deprecation support
 Key: THRIFT-5781
 URL: https://issues.apache.org/jira/browse/THRIFT-5781
 Project: Thrift
  Issue Type: Improvement
  Components: netstd - Compiler
Reporter: Jens Geyer
Assignee: Jens Geyer


Currently netstd only checks service methods for deprecation markers. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-640) Support deprecation

2024-04-25 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-640?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17840810#comment-17840810
 ] 

Jens Geyer commented on THRIFT-640:
---

[Example of how it works can be found in 
optional_required_default.thrift|https://github.com/apache/thrift/blob/master/lib/netstd/Tests/Thrift.PublicInterfaces.Compile.Tests/optional_required_default.thrift]

> Support deprecation
> ---
>
> Key: THRIFT-640
> URL: https://issues.apache.org/jira/browse/THRIFT-640
> Project: Thrift
>  Issue Type: New Feature
>  Components: Java - Compiler
>Reporter: Nathan Marz
>Assignee: Daniel Wolf
>Priority: Minor
> Fix For: 0.10.0
>
> Attachments: thrift-640-java-deprecation.patch
>
>
> Sometimes we do schema migrations and it would be cool to be able to have 
> deprecation functionality from Thrift. At the most basic level, we should be 
> able to annotate a field as deprecated and have the compiler generate 
> "@Deprecated" annotations in the Java code.
> Sometimes though, you may want creators of structs to be forced to use new 
> fields, but you still want to be able to read the old fields until you have 
> everything migrated over. In this case you could mark a field as 
> "strong-deprecated" and just not generate any setters for those fields (only 
> getters). This would force all users of the struct to migrate to new schema, 
> since the code won't compile otherwise.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5780) Prevent certain warnings related to net8

2024-04-24 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5780?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5780.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Prevent certain warnings related to net8
> 
>
> Key: THRIFT-5780
> URL: https://issues.apache.org/jira/browse/THRIFT-5780
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Fix For: 0.21.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> * IDE0301 Use collection expression for empty collections
> * CA1041: Provide ObsoleteAttribute message



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5780) Prevent certain warnings related to net8

2024-04-24 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5780?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5780:
---
Summary: Prevent certain warnings related to net8  (was: Prevent certain 
warnings in related to net8)

> Prevent certain warnings related to net8
> 
>
> Key: THRIFT-5780
> URL: https://issues.apache.org/jira/browse/THRIFT-5780
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
>
> * IDE0301 Use collection expression for empty collections
> * CA1041: Provide ObsoleteAttribute message



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5780) Prevent certain warnings in related to net8

2024-04-24 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5780:
--

 Summary: Prevent certain warnings in related to net8
 Key: THRIFT-5780
 URL: https://issues.apache.org/jira/browse/THRIFT-5780
 Project: Thrift
  Issue Type: Improvement
  Components: netstd - Compiler
Reporter: Jens Geyer
Assignee: Jens Geyer


* IDE0301 Use collection expression for empty collections
* CA1041: Provide ObsoleteAttribute message



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5654) LNK4042 and LNK2019 in go_validator_generator.cc

2024-04-23 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5654?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17840072#comment-17840072
 ] 

Jens Geyer edited comment on THRIFT-5654 at 4/23/24 11:54 AM:
--

If we don't have it we should resolve the problem? Are you sure? And how is 
that related to this ticket at all?

https://www.cvedetails.com/vulnerability-list/vendor_id-45/product_id-38295/Apache-Thrift.html


was (Author: jensg):
If we don't have it we should resolve the problem? Are you sure? And how is 
that related to this ticket at all?

> LNK4042 and LNK2019 in go_validator_generator.cc
> 
>
> Key: THRIFT-5654
> URL: https://issues.apache.org/jira/browse/THRIFT-5654
> Project: Thrift
>  Issue Type: Bug
>  Components: Go - Compiler
> Environment: Visual Studio 2022
>Reporter: Jens Geyer
>Priority: Critical
>
> With VS2022  I get "warning LNK4042: object specified more than once; extras 
> ignored" in go_validator_generator.obj.
> Also I had to comment out this to get rid of some fatal LNK2019: unresolved 
> external symbol:
> //go_validator_generator(this).generate_struct_validator(f_types_, tstruct); 
> Extra info:
> https://stackoverflow.com/questions/3695174/visual-studio-2010s-strange-warning-lnk4042



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5654) LNK4042 and LNK2019 in go_validator_generator.cc

2024-04-23 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5654?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17840072#comment-17840072
 ] 

Jens Geyer commented on THRIFT-5654:


If we don't have it we should resolve the problem? Are you sure? And how is 
that related to this ticket at all?

> LNK4042 and LNK2019 in go_validator_generator.cc
> 
>
> Key: THRIFT-5654
> URL: https://issues.apache.org/jira/browse/THRIFT-5654
> Project: Thrift
>  Issue Type: Bug
>  Components: Go - Compiler
> Environment: Visual Studio 2022
>Reporter: Jens Geyer
>Priority: Critical
>
> With VS2022  I get "warning LNK4042: object specified more than once; extras 
> ignored" in go_validator_generator.obj.
> Also I had to comment out this to get rid of some fatal LNK2019: unresolved 
> external symbol:
> //go_validator_generator(this).generate_struct_validator(f_types_, tstruct); 
> Extra info:
> https://stackoverflow.com/questions/3695174/visual-studio-2010s-strange-warning-lnk4042



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5778) Thrift URIs: A machine readable way to describe client-side service bindings

2024-04-22 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5778:
---
Description: 
Describing the endpoint specifics for a Thrift API today is a purely 
text-adventure like exercise, which leaves the client end with the task to set 
up and stack together a proper protocol/transport stack. That sometimes even 
leads to headaches, e.g. if the server requires e.g. framed protocol which 
might not be obvious. The use of a generally accepted, machine-readable and 
extensible Thrift URI format to describe client bindings could streamline that 
process.
   
 Details (work in progress) at 
https://github.com/Jens-G/thrift/blob/thrift-uri/doc/specs/thrift-uri.md

  was:
Describing the endpoint specifics for a Thrift API today is a purely textual 
exercise, which leaves the client end with the task to set up and stack 
together a proper protocol/transport stack. That sometimes even leads to 
headaches, e.g. if the server requires e.g. framed protocol which might not be 
obvious. The use of a generally accepted, machine-readable and extensible 
Thrift URI format to describe client bindings could streamline that process.
   
 Details (work in progress) at 
https://github.com/Jens-G/thrift/blob/thrift-uri/doc/specs/thrift-uri.md


> Thrift URIs: A machine readable way to describe client-side service bindings
> 
>
> Key: THRIFT-5778
> URL: https://issues.apache.org/jira/browse/THRIFT-5778
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Jens Geyer
>Priority: Major
>
> Describing the endpoint specifics for a Thrift API today is a purely 
> text-adventure like exercise, which leaves the client end with the task to 
> set up and stack together a proper protocol/transport stack. That sometimes 
> even leads to headaches, e.g. if the server requires e.g. framed protocol 
> which might not be obvious. The use of a generally accepted, machine-readable 
> and extensible Thrift URI format to describe client bindings could streamline 
> that process.
>
>  Details (work in progress) at 
> https://github.com/Jens-G/thrift/blob/thrift-uri/doc/specs/thrift-uri.md



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5778) Thrift URIs: A machine readable way to describe client-side service bindings

2024-04-22 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5778:
--

 Summary: Thrift URIs: A machine readable way to describe 
client-side service bindings
 Key: THRIFT-5778
 URL: https://issues.apache.org/jira/browse/THRIFT-5778
 Project: Thrift
  Issue Type: New Feature
Reporter: Jens Geyer


Describing the endpoint specifics for a Thrift API today is a purely textual 
exercise, which leaves the client end with the task to set up and stack 
together a proper protocol/transport stack. That sometimes even leads to 
headaches, e.g. if the server requires e.g. framed protocol which might not be 
obvious. The use of a generally accepted, machine-readable and extensible 
Thrift URI format to describe client bindings could streamline that process.
   
 Details (work in progress) at 
https://github.com/Jens-G/thrift/blob/thrift-uri/doc/specs/thrift-uri.md



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5776) Cpp cross test fail

2024-04-22 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839588#comment-17839588
 ] 

Jens Geyer commented on THRIFT-5776:


Could it be related to THRIFT-5772 ?

> Cpp cross test fail
> ---
>
> Key: THRIFT-5776
> URL: https://issues.apache.org/jira/browse/THRIFT-5776
> Project: Thrift
>  Issue Type: Bug
>  Components: C++ - Library
>Reporter: Volodymyr Panivko
>Priority: Major
>
> When running cross test in docker I'm getting an error
> {code:java}
> ibs/ThriftTest_extras.o
> Benchmark.cpp: In function 'int main()':
> Benchmark.cpp:69:7: error: 'class thrift::test::debug::OneOfEach' has no 
> member named 'rfc4122_uuid'
>    69 |   ooe.rfc4122_uuid = "{5e2ab188-1726-4e75-a04f-1ed9a6a89c4c}";
>       |       ^~~~
> make[5]: *** [Makefile:1408: Benchmark.o] Error 1
>  {code}
> if i comment 69 line in Benchmark.cpp this error doe not appear but i'm 
> getting a new one THRIFT-5775



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5766) Replace std::endl with "\n"

2024-04-15 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5766?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5766.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Replace std::endl with "\n"
> ---
>
> Key: THRIFT-5766
> URL: https://issues.apache.org/jira/browse/THRIFT-5766
> Project: Thrift
>  Issue Type: Improvement
>  Components: Compiler (General)
>Affects Versions: 0.19.0
>Reporter: Carel
>Assignee: Carel
>Priority: Minor
> Fix For: 0.21.0
>
>  Time Spent: 4h
>  Remaining Estimate: 0h
>
> Remove the usage of {{std::endl}} to force new lines for {{std::ostream}}
> Rationale
>  * Using `std::endl` for linebreaks is bad practice since {{std::endl}} also 
> forces a stream flush.
>  * A past Ticket THRIFT-1815 identified the flush component as a problem and 
> the behavior of {{std::endl}} was replaced with a custom constant that only 
> did the new line to minimize code changes.
>  * This enforces bad practice and changes expected behaviour
>  * The [C++ Core Guidelines 
> SL.io.50|https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#slio50-avoid-endl]
>  also suggest that {{std::endl}} should be avoided
> I propose (by PR) to remove the usage of {{endl}} and instead use {{\n}} 
> directly to avoid building on the bad practice.
> See: [https://github.com/apache/thrift/pull/2943]
>  * Replace the usage of {{endl}} with "\n" in all genertors
>  * Replace the usage in most test files and examples
>  * Keep the usage in {{std::cerr}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5772) Add UUID support for C++

2024-04-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5772:
---
Component/s: C++ - Compiler

> Add UUID support for C++
> 
>
> Key: THRIFT-5772
> URL: https://issues.apache.org/jira/browse/THRIFT-5772
> Project: Thrift
>  Issue Type: New Feature
>  Components: C++ - Compiler
>Reporter: Carel
>Assignee: Carel
>Priority: Minor
> Fix For: 0.21.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Starting the discussion to add UUID support for C++.
> I have started with an implementation (See PR linked soon)
> Open points for discussion: 
> # Is there perhaps a need to add a wrapper class for UUID?
> ## I started off with {{std::string}} for ease-of-use
> ## 'ease-of-use' has the drawback of ease of miss-use... 
> ## Something lightweight as a strong wrapper to wrap a `{{uint8_t data[16];}}`
> ### A wrapper gives us the ability to add utility functions, like 
> `to_string()` and `from_string()`
> ### Can use {{boost::uuids::uuid}} in the implementation, hidden from users 
> (see current implementation)
> ## I will see if I can't implement something while this PR is looked at.
> # Can someone help with some cross tests
> ## With the absence of working dockers I am really struggling to get other 
> languages compiled.
> ## I don't have enough experience with other languages to effectively do this
> ## I will probably be able to add Java tests if there is something to build 
> on (pointers needed)
> # How important is the JSON side? 
> ## I did add the support but I see only go has some support for it. 
> # (edit) How important is the HOST vs Network order on the UUID?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5772) Add UUID support for C++

2024-04-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5772.

Fix Version/s: 0.21.0
 Assignee: Carel
   Resolution: Fixed

> Add UUID support for C++
> 
>
> Key: THRIFT-5772
> URL: https://issues.apache.org/jira/browse/THRIFT-5772
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Carel
>Assignee: Carel
>Priority: Minor
> Fix For: 0.21.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Starting the discussion to add UUID support for C++.
> I have started with an implementation (See PR linked soon)
> Open points for discussion: 
> # Is there perhaps a need to add a wrapper class for UUID?
> ## I started off with {{std::string}} for ease-of-use
> ## 'ease-of-use' has the drawback of ease of miss-use... 
> ## Something lightweight as a strong wrapper to wrap a `{{uint8_t data[16];}}`
> ### A wrapper gives us the ability to add utility functions, like 
> `to_string()` and `from_string()`
> ### Can use {{boost::uuids::uuid}} in the implementation, hidden from users 
> (see current implementation)
> ## I will see if I can't implement something while this PR is looked at.
> # Can someone help with some cross tests
> ## With the absence of working dockers I am really struggling to get other 
> languages compiled.
> ## I don't have enough experience with other languages to effectively do this
> ## I will probably be able to add Java tests if there is something to build 
> on (pointers needed)
> # How important is the JSON side? 
> ## I did add the support but I see only go has some support for it. 
> # (edit) How important is the HOST vs Network order on the UUID?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5772) Add UUID support for C++

2024-04-04 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5772?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17834070#comment-17834070
 ] 

Jens Geyer edited comment on THRIFT-5772 at 4/4/24 11:40 PM:
-

The following is solely about {*}binary wire format representation{*}. What you 
do internally, in your own memory, is a whole other story - typically whatever 
fits best.

A well-defined byte order is important to be able to exchange uuid bytes across 
platforms. Problem here is that there are in fact several implementations from 
different vendors doing inconsistent stuff (see links below). And there is 
RFC4122 that suggests network order but not everybody follows this.

That's why the docs linked from THRIFT-5587 state explicitly that {*}Thrift 
uses "network" order{*}, which is also consistent with our general integer 
serialisation scheme. Furthermore, there are also [test 
cases|https://github.com/apache/thrift/blob/master/lib/delphi/src/Thrift.Utils.pas#L380]
 intended [to test 
|https://github.com/apache/thrift/blob/master/lib/netstd/Thrift/Protocol/Utilities/TGuidExtensions.cs#L50]
 exactly this. 

Some helpful and/or amusing links (depends on how you look at it):
 - [https://www.ietf.org/rfc/rfc4122.txt]
 - 
[https://stackoverflow.com/questions/10850075/guid-uuid-compatibility-issue-between-net-and-linux]
 - [https://lists.gnu.org/archive/html/bug-parted/2002-01/msg00099.html]


was (Author: jensg):
A well-defined byte order is important to be able to exchange uuid bytes across 
platforms. Problem here is that there are in fact several implementations from 
different vendors doing inconsistent stuff (see links below). And there is 
RFC4122 that suggests network order but not everybody follows this.

That's why the docs linked from THRIFT-5587 state explicitly that {*}Thrift 
uses "network" order{*}, which is also consistent with our general integer 
serialisation scheme. Furthermore, there are also [test 
cases|https://github.com/apache/thrift/blob/master/lib/delphi/src/Thrift.Utils.pas#L380]
 intended [to test 
|https://github.com/apache/thrift/blob/master/lib/netstd/Thrift/Protocol/Utilities/TGuidExtensions.cs#L50]
 exactly this. 

Some helpful and/or amusing links (depends on how you look at it):
 - [https://www.ietf.org/rfc/rfc4122.txt]
 - 
[https://stackoverflow.com/questions/10850075/guid-uuid-compatibility-issue-between-net-and-linux]
 - [https://lists.gnu.org/archive/html/bug-parted/2002-01/msg00099.html]

> Add UUID support for C++
> 
>
> Key: THRIFT-5772
> URL: https://issues.apache.org/jira/browse/THRIFT-5772
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Carel
>Priority: Minor
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Starting the discussion to add UUID support for C++.
> I have started with an implementation (See PR linked soon)
> Open points for discussion: 
> # Is there perhaps a need to add a wrapper class for UUID?
> ## I started off with {{std::string}} for ease-of-use
> ## 'ease-of-use' has the drawback of ease of miss-use... 
> ## Something lightweight as a strong wrapper to wrap a `{{uint8_t data[16];}}`
> ### A wrapper gives us the ability to add utility functions, like 
> `to_string()` and `from_string()`
> ### Can use {{boost::uuids::uuid}} in the implementation, hidden from users 
> (see current implementation)
> ## I will see if I can't implement something while this PR is looked at.
> # Can someone help with some cross tests
> ## With the absence of working dockers I am really struggling to get other 
> languages compiled.
> ## I don't have enough experience with other languages to effectively do this
> ## I will probably be able to add Java tests if there is something to build 
> on (pointers needed)
> # How important is the JSON side? 
> ## I did add the support but I see only go has some support for it. 
> # (edit) How important is the HOST vs Network order on the UUID?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5772) Add UUID support for C++

2024-04-04 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5772?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17834070#comment-17834070
 ] 

Jens Geyer edited comment on THRIFT-5772 at 4/4/24 8:14 PM:


A well-defined byte order is important to be able to exchange uuid bytes across 
platforms. Problem here is that there are in fact several implementations from 
different vendors doing inconsistent stuff (see links below). And there is 
RFC4122 that suggests network order but not everybody follows this.

That's why the docs linked from THRIFT-5587 state explicitly that {*}Thrift 
uses "network" order{*}, which is also consistent with our general integer 
serialisation scheme. Furthermore, there are also [test 
cases|https://github.com/apache/thrift/blob/master/lib/delphi/src/Thrift.Utils.pas#L380]
 intended [to test 
|https://github.com/apache/thrift/blob/master/lib/netstd/Thrift/Protocol/Utilities/TGuidExtensions.cs#L50]
 exactly this. 

Some helpful and/or amusing links (depends on how you look at it):
 - [https://www.ietf.org/rfc/rfc4122.txt]
 - 
[https://stackoverflow.com/questions/10850075/guid-uuid-compatibility-issue-between-net-and-linux]
 - [https://lists.gnu.org/archive/html/bug-parted/2002-01/msg00099.html]


was (Author: jensg):
A well-defined byte order is important to be able to exchange uuid bytes across 
platforms. Problem here is that there are in fact several implementations from 
different vendors doing inconsistent stuff (see links below). And there is 
RFC4122 that suggests network order but not everybody follows this.

That's why the docs linked from THRIFT-5587 state explicitly that {*}Thrift 
uses "network" order{*}, which is also consistent with our general integer 
serialisation scheme. Furthermore, there are also test cases intended to test 
exactly this. 

Some helpful and/or amusing links (depends on how you look at it):
 - [https://www.ietf.org/rfc/rfc4122.txt]
 - 
[https://stackoverflow.com/questions/10850075/guid-uuid-compatibility-issue-between-net-and-linux]
 - [https://lists.gnu.org/archive/html/bug-parted/2002-01/msg00099.html]

> Add UUID support for C++
> 
>
> Key: THRIFT-5772
> URL: https://issues.apache.org/jira/browse/THRIFT-5772
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Carel
>Priority: Minor
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Starting the discussion to add UUID support for C++.
> I have started with an implementation (See PR linked soon)
> Open points for discussion: 
> # Is there perhaps a need to add a wrapper class for UUID?
> ## I started off with {{std::string}} for ease-of-use
> ## 'ease-of-use' has the drawback of ease of miss-use... 
> ## Something lightweight as a strong wrapper to wrap a `{{uint8_t data[16];}}`
> ### A wrapper gives us the ability to add utility functions, like 
> `to_string()` and `from_string()`
> ### Can use {{boost::uuids::uuid}} in the implementation, hidden from users 
> (see current implementation)
> ## I will see if I can't implement something while this PR is looked at.
> # Can someone help with some cross tests
> ## With the absence of working dockers I am really struggling to get other 
> languages compiled.
> ## I don't have enough experience with other languages to effectively do this
> ## I will probably be able to add Java tests if there is something to build 
> on (pointers needed)
> # How important is the JSON side? 
> ## I did add the support but I see only go has some support for it. 
> # (edit) How important is the HOST vs Network order on the UUID?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5772) Add UUID support for C++

2024-04-04 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5772?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17834070#comment-17834070
 ] 

Jens Geyer commented on THRIFT-5772:


A well-defined byte order is important to be able to exchange uuid bytes across 
platforms. Problem here is that there are in fact several implementations from 
different vendors doing inconsistent stuff (see links below). And there is 
RFC4122 that suggests network order but not everybody follows this.

That's why the docs linked from THRIFT-5587 state explicitly that {*}Thrift 
uses "network" order{*}, which is also consistent with our general integer 
serialisation scheme. Furthermore, there are also test cases intended to test 
exactly this. 

Some helpful and/or amusing links (depends on how you look at it):
 - [https://www.ietf.org/rfc/rfc4122.txt]
 - 
[https://stackoverflow.com/questions/10850075/guid-uuid-compatibility-issue-between-net-and-linux]
 - [https://lists.gnu.org/archive/html/bug-parted/2002-01/msg00099.html]

> Add UUID support for C++
> 
>
> Key: THRIFT-5772
> URL: https://issues.apache.org/jira/browse/THRIFT-5772
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Carel
>Priority: Minor
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Starting the discussion to add UUID support for C++.
> I have started with an implementation (See PR linked soon)
> Open points for discussion: 
> # Is there perhaps a need to add a wrapper class for UUID?
> ## I started off with {{std::string}} for ease-of-use
> ## 'ease-of-use' has the drawback of ease of miss-use... 
> ## Something lightweight as a strong wrapper to wrap a `{{uint8_t data[16];}}`
> ### A wrapper gives us the ability to add utility functions, like 
> `to_string()` and `from_string()`
> ### Can use {{boost::uuids::uuid}} in the implementation, hidden from users 
> (see current implementation)
> ## I will see if I can't implement something while this PR is looked at.
> # Can someone help with some cross tests
> ## With the absence of working dockers I am really struggling to get other 
> languages compiled.
> ## I don't have enough experience with other languages to effectively do this
> ## I will probably be able to add Java tests if there is something to build 
> on (pointers needed)
> # How important is the JSON side? 
> ## I did add the support but I see only go has some support for it. 
> # (edit) How important is the HOST vs Network order on the UUID?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5755) Docker image build fail

2024-04-02 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5755?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5755:
---
Component/s: Build Process
 (was: Compiler (General))

> Docker image build fail
> ---
>
> Key: THRIFT-5755
> URL: https://issues.apache.org/jira/browse/THRIFT-5755
> Project: Thrift
>  Issue Type: Bug
>  Components: Build Process
> Environment: Ubuntu 22.04
>Reporter: Volodymyr Panivko
>Assignee: Thomas Bruggink
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 5h 20m
>  Remaining Estimate: 0h
>
> When I'm trying to build an docker image and run command
> {code:java}
> docker build -t thrift build/docker/ubuntu-bionic{code}
> I get such error
>  
> {code:java}
>  
>  => ERROR [13/35] RUN apt-get install -y --no-install-recommends       `# 
> dotnet core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0           1.3s
> --
>  > [13/35] RUN apt-get install -y --no-install-recommends       `# dotnet 
> core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0:
> 0.350 Reading package lists...
> 1.113 Building dependency tree...
> 1.216 Reading state information...
> 1.311 E: Unable to locate package dotnet-sdk-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-sdk-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-sdk-8.0'
> 1.311 E: Unable to locate package dotnet-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-runtime-8.0'
> 1.311 E: Unable to locate package aspnetcore-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'aspnetcore-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'aspnetcore-runtime-8.0'
> 1.311 E: Unable to locate package dotnet-apphost-pack-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-apphost-pack-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-apphost-pack-8.0'
> --
> Dockerfile:134
> 
>  133 |     
>  134 | >>> RUN apt-get install -y --no-install-recommends \
>  135 | >>>       `# dotnet core dependencies` \
>  136 | >>>       dotnet-sdk-8.0 \
>  137 | >>>       dotnet-runtime-8.0 \
>  138 | >>>       aspnetcore-runtime-8.0 \
>  139 | >>>       dotnet-apphost-pack-8.0
>  140 |     
> 
> ERROR: failed to solve: process "/bin/sh -c apt-get install -y 
> --no-install-recommends       `# dotnet core dependencies`       
> dotnet-sdk-8.0       dotnet-runtime-8.0       aspnetcore-runtime-8.0       
> dotnet-apphost-pack-8.0" did not complete successfully: exit code: 100
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5755) Docker image build fail

2024-04-02 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5755?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5755.

Fix Version/s: 0.21.0
 Assignee: Thomas Bruggink
   Resolution: Fixed

> Docker image build fail
> ---
>
> Key: THRIFT-5755
> URL: https://issues.apache.org/jira/browse/THRIFT-5755
> Project: Thrift
>  Issue Type: Bug
> Environment: Ubuntu 22.04
>Reporter: Volodymyr Panivko
>Assignee: Thomas Bruggink
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 5h 20m
>  Remaining Estimate: 0h
>
> When I'm trying to build an docker image and run command
> {code:java}
> docker build -t thrift build/docker/ubuntu-bionic{code}
> I get such error
>  
> {code:java}
>  
>  => ERROR [13/35] RUN apt-get install -y --no-install-recommends       `# 
> dotnet core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0           1.3s
> --
>  > [13/35] RUN apt-get install -y --no-install-recommends       `# dotnet 
> core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0:
> 0.350 Reading package lists...
> 1.113 Building dependency tree...
> 1.216 Reading state information...
> 1.311 E: Unable to locate package dotnet-sdk-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-sdk-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-sdk-8.0'
> 1.311 E: Unable to locate package dotnet-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-runtime-8.0'
> 1.311 E: Unable to locate package aspnetcore-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'aspnetcore-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'aspnetcore-runtime-8.0'
> 1.311 E: Unable to locate package dotnet-apphost-pack-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-apphost-pack-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-apphost-pack-8.0'
> --
> Dockerfile:134
> 
>  133 |     
>  134 | >>> RUN apt-get install -y --no-install-recommends \
>  135 | >>>       `# dotnet core dependencies` \
>  136 | >>>       dotnet-sdk-8.0 \
>  137 | >>>       dotnet-runtime-8.0 \
>  138 | >>>       aspnetcore-runtime-8.0 \
>  139 | >>>       dotnet-apphost-pack-8.0
>  140 |     
> 
> ERROR: failed to solve: process "/bin/sh -c apt-get install -y 
> --no-install-recommends       `# dotnet core dependencies`       
> dotnet-sdk-8.0       dotnet-runtime-8.0       aspnetcore-runtime-8.0       
> dotnet-apphost-pack-8.0" did not complete successfully: exit code: 100
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5755) Docker image build fail

2024-04-02 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5755?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5755:
---
Component/s: Compiler (General)

> Docker image build fail
> ---
>
> Key: THRIFT-5755
> URL: https://issues.apache.org/jira/browse/THRIFT-5755
> Project: Thrift
>  Issue Type: Bug
>  Components: Compiler (General)
> Environment: Ubuntu 22.04
>Reporter: Volodymyr Panivko
>Assignee: Thomas Bruggink
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 5h 20m
>  Remaining Estimate: 0h
>
> When I'm trying to build an docker image and run command
> {code:java}
> docker build -t thrift build/docker/ubuntu-bionic{code}
> I get such error
>  
> {code:java}
>  
>  => ERROR [13/35] RUN apt-get install -y --no-install-recommends       `# 
> dotnet core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0           1.3s
> --
>  > [13/35] RUN apt-get install -y --no-install-recommends       `# dotnet 
> core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0:
> 0.350 Reading package lists...
> 1.113 Building dependency tree...
> 1.216 Reading state information...
> 1.311 E: Unable to locate package dotnet-sdk-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-sdk-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-sdk-8.0'
> 1.311 E: Unable to locate package dotnet-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-runtime-8.0'
> 1.311 E: Unable to locate package aspnetcore-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'aspnetcore-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'aspnetcore-runtime-8.0'
> 1.311 E: Unable to locate package dotnet-apphost-pack-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-apphost-pack-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-apphost-pack-8.0'
> --
> Dockerfile:134
> 
>  133 |     
>  134 | >>> RUN apt-get install -y --no-install-recommends \
>  135 | >>>       `# dotnet core dependencies` \
>  136 | >>>       dotnet-sdk-8.0 \
>  137 | >>>       dotnet-runtime-8.0 \
>  138 | >>>       aspnetcore-runtime-8.0 \
>  139 | >>>       dotnet-apphost-pack-8.0
>  140 |     
> 
> ERROR: failed to solve: process "/bin/sh -c apt-get install -y 
> --no-install-recommends       `# dotnet core dependencies`       
> dotnet-sdk-8.0       dotnet-runtime-8.0       aspnetcore-runtime-8.0       
> dotnet-apphost-pack-8.0" did not complete successfully: exit code: 100
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5750) Remove "ansistr_binary_" option

2024-04-02 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5750?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5750.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Remove "ansistr_binary_" option
> ---
>
> Key: THRIFT-5750
> URL: https://issues.apache.org/jira/browse/THRIFT-5750
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Fix For: 0.21.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> That option was introduced earlier for some rather exotic use case which a) 
> is not really relevant anymore and b) should not be part of a general library 
> anymore.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5757) Unit tests for php lib

2024-03-23 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5757:
---
Fix Version/s: (was: 0.21.0)

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 12h 20m
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Reopened] (THRIFT-5757) Unit tests for php lib

2024-03-23 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer reopened THRIFT-5757:


> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Fix For: 0.21.0
>
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 12h 20m
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5769) Large messages crash Node.js client when using TFramedTransport

2024-03-18 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5769?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5769.

Fix Version/s: 0.21.0
 Assignee: Tuomo Jokimies
   Resolution: Fixed

> Large messages crash Node.js client when using TFramedTransport
> ---
>
> Key: THRIFT-5769
> URL: https://issues.apache.org/jira/browse/THRIFT-5769
> Project: Thrift
>  Issue Type: Bug
>  Components: Node.js - Library
>Affects Versions: 0.19.0
>Reporter: Tuomo Jokimies
>Assignee: Tuomo Jokimies
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Large messages cause Thrift client to crash when using TFramedTransport.
> Crash is caused by array overflow of residual variable in receiver function.
>  
> *Stack trace for Node.js v21.7.1*
> (pinpoints the cause as it is using new version of V8)
> {code:java}
> /thrift/lib/nodejs/lib/thrift/framed_transport.js:43
>   residual.push(data[i])
>^
> RangeError: Invalid array length
> at Array.push ()
> at /thrift/lib/nodejs/lib/thrift/framed_transport.js:43:16
> {code}
>  
> *Stack trace for Node.js LTS v20.11.1*
> {code:java}
> #
> # Fatal error in , line 0
> # Fatal JavaScript invalid size error 169220804 (see crbug.com/1201626)
> #
> #
> #
> #FailureMessage Object: 0x16f48a0f8
> - Native stack trace -
> 1: 0x100aad340 node::NodePlatform::GetStackTracePrinter()::$_3::__invoke() 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 2: 0x101b309ac V8_Fatal(char const*, ) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 3: 0x100d71334 
> v8::internal::FactoryBase::NewFixedArrayWithFiller(v8::internal::Handle,
>  int, v8::internal::Handle, 
> v8::internal::AllocationType) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 4: 0x100f0cf68 v8::internal::(anonymous 
> namespace)::ElementsAccessorBase namespace)::FastPackedSmiElementsAccessor, v8::internal::(anonymous 
> namespace)::ElementsKindTraits<(v8::internal::ElementsKind)0>>::GrowCapacity(v8::internal::Handle,
>  unsigned int) [/.nvm/versions/node/v20.11.1/bin/node]
> 5: 0x101158600 v8::internal::Runtime_GrowArrayElements(int, unsigned long*, 
> v8::internal::Isolate*) [/.nvm/versions/node/v20.11.1/bin/node]
> 6: 0x1014c4c44 Builtins_CEntry_Return1_ArgvOnStack_NoBuiltinExit 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 7: 0x1064cfe9c
> 8: 0x1064aac88
> 9: 0x10143c3e4 Builtins_InterpreterEntryTrampoline 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 10: 0x1064aac88
> 11: 0x10143c3e4 Builtins_InterpreterEntryTrampoline 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 12: 0x10143c3e4 Builtins_InterpreterEntryTrampoline 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 13: 0x10143a50c Builtins_JSEntryTrampoline 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 14: 0x10143a1f4 Builtins_JSEntry 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 15: 0x100d104f8 v8::internal::(anonymous 
> namespace)::Invoke(v8::internal::Isolate*, v8::internal::(anonymous 
> namespace)::InvokeParams const&) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 16: 0x100d0f944 v8::internal::Execution::Call(v8::internal::Isolate*, 
> v8::internal::Handle, 
> v8::internal::Handle, int, 
> v8::internal::Handle*) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 17: 0x100bea214 v8::Function::Call(v8::Local, 
> v8::Local, int, v8::Local*) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 18: 0x100978fd8 node::InternalMakeCallback(node::Environment*, 
> v8::Local, v8::Local, v8::Local, int, 
> v8::Local*, node::async_context) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 19: 0x100979304 node::MakeCallback(v8::Isolate*, v8::Local, 
> v8::Local, int, v8::Local*, node::async_context) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 20: 0x1009ee554 node::Environment::CheckImmediate(uv_check_s*) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 21: 0x1014209e0 uv__run_check 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 22: 0x10141a700 uv_run [/.nvm/versions/node/v20.11.1/bin/node]
> 23: 0x100979754 node::SpinEventLoopInternal(node::Environment*) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 24: 0x100a89c6c node::NodeMainInstance::Run(node::ExitCode*, 
> node::Environment*) [/.nvm/versions/node/v20.11.1/bin/node]
> 25: 0x100a89a08 node::NodeMainInstance::Run() 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 26: 0x100a13718 node::Start(int, char**) 
> [/.nvm/versions/node/v20.11.1/bin/node]
> 27: 0x1a61dff28 start [/usr/lib/dyld]{code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5682) UB in generated C++ code, stops compiling with C++20

2024-03-13 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5682?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5682.

Fix Version/s: 0.21.0
 Assignee: Lukas Barth
   Resolution: Fixed

Thanks!

> UB in generated C++ code, stops compiling with C++20
> 
>
> Key: THRIFT-5682
> URL: https://issues.apache.org/jira/browse/THRIFT-5682
> Project: Thrift
>  Issue Type: Bug
>  Components: C++ - Compiler
>Affects Versions: 0.17.0
>Reporter: Lukas Barth
>Assignee: Lukas Barth
>Priority: Major
>  Labels: pull-request-available
> Fix For: 0.21.0
>
>  Time Spent: 4h 10m
>  Remaining Estimate: 0h
>
> The C++ compiler of Thrift 0.17.0 produces C++ code with undefined behavior, 
> which stops compiling on Clang 15 in C++20 mode.
> For a generated class, both the default constructor and {{operator==}} 
> implementations reference certain member functions of the class' members. As 
> an example, the default constructor references (i.e., "uses") the default 
> constructors of its members.
> If a class contains a {{{}std::vector{}}}, and {{Foo}} has only been 
> _forward_ declared (which happens often in Thrift-generated code), this 
> creates undefined behavior: The {{std::vector}} specification states that as 
> long as {{Foo}} is an incomplete type, it is fine to reference 
> {{{}std::vector{}}}, but not any members (such as its default 
> constructor).
> Thus, we must defer our default constructor's implementation (which 
> references the default constructor of std::vector) to a point where Foo is a 
> complete type. That is the case in the .cpp file.
> The same holds for operator==.Example
> Take this very simple Thrift file:
> {{struct StructA {}}
> {{  1:required list myBs}}
> {{}}}
> {{struct StructB}}
> {
> {{  1:required string someString}}
> {{}}}
> If I compile this using {{thrift --gen cpp:no_skeleton -o out ./file.thrift}} 
> I get a header file that contains the following:
> {{class StructA;}}
> {{class StructB;}}
> {{class StructA : …}}
> {{public:}}
> {{  …}}
> {{{}  StructA() noexcept {{
> {{  …}}
> {{  std::vector myBs;}}
> {{  …}}
> {{};}}
> {{…}}
> {{class StructB : …}}
> { … };
>  
> In this case, the default constructor for {{StructA}} references the default 
> constructor of {{std::vector}} while {{StructB}} is still an 
> incomplete type. *This is undefined behavior.* It did apparently compile with 
> all big compilers until recently, but with C++20, Clang 15 stops accepting 
> this kind of construct, as you can see here at CompilerExplorer: 
> [https://godbolt.org/z/xcc4av6cb]
> {{ }}
> h2. Proposed Solution
> I propose to move the definitions of the default constructor and 
> {{operator==}} from the {{foobar_types.h}} into the {{foobar_types.cpp}} 
> file. That way, when the definition is seen (and therefore the methods of 
> {{std::vector}} referenced), Foo already is a complete type and 
> everything works out.
> The only alternative Solution (and which only works if Thrift does not allow 
> circular dependencies - does it?) that I can see would be to compute a DAG of 
> dependencies between the structures and then output them in topological 
> order. That would not be a minor change.
> I guess that the reason for the definitions being in the header file is that 
> this allows better inlining of these two methods. Nowadays, most 
> compilers/linkers perform link-time optimization, which allows for inlining 
> to happen at link time, so my feeling is that moving the definitions into 
> their own translation unit inside the CPP file should not cause significant 
> performance loss.
>  
> I have created a Pull Request for my proposed solution here: 
> [https://github.com/apache/thrift/pull/2755]
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (THRIFT-5766) Replace std::endl with "\n"

2024-03-13 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5766?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer reassigned THRIFT-5766:
--

Assignee: Carel

> Replace std::endl with "\n"
> ---
>
> Key: THRIFT-5766
> URL: https://issues.apache.org/jira/browse/THRIFT-5766
> Project: Thrift
>  Issue Type: Improvement
>  Components: Compiler (General)
>Affects Versions: 0.19.0
>Reporter: Carel
>Assignee: Carel
>Priority: Minor
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Remove the usage of {{std::endl}} to force new lines for {{std::ostream}}
> Rationale
>  * Using `std::endl` for linebreaks is bad practice since {{std::endl}} also 
> forces a stream flush.
>  * A past Ticket THRIFT-1815 identified the flush component as a problem and 
> the behavior of {{std::endl}} was replaced with a custom constant that only 
> did the new line to minimize code changes.
>  * This enforces bad practice and changes expected behaviour
>  * The [C++ Core Guidelines 
> SL.io.50|https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#slio50-avoid-endl]
>  also suggest that {{std::endl}} should be avoided
> I propose (by PR) to remove the usage of {{endl}} and instead use {{\n}} 
> directly to avoid building on the bad practice.
> See: [https://github.com/apache/thrift/pull/2943]
>  * Replace the usage of {{endl}} with "\n" in all genertors
>  * Replace the usage in most test files and examples
>  * Keep the usage in {{std::cerr}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5766) Replace std::endl with "\n"

2024-03-13 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5766?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5766:
---
Description: 
Remove the usage of {{std::endl}} to force new lines for {{std::ostream}}

Rationale
 * Using `std::endl` for linebreaks is bad practice since {{std::endl}} also 
forces a stream flush.
 * A past Ticket THRIFT-1815 identified the flush component as a problem and 
the behavior of {{std::endl}} was replaced with a custom constant that only did 
the new line to minimize code changes.
 * This enforces bad practice and changes expected behaviour
 * The [C++ Core Guidelines 
SL.io.50|https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#slio50-avoid-endl]
 also suggest that {{std::endl}} should be avoided

I propose (by PR) to remove the usage of {{endl}} and instead use {{\n}} 
directly to avoid building on the bad practice.

See: [https://github.com/apache/thrift/pull/2943]
 * Replace the usage of {{endl}} with "\n" in all genertors
 * Replace the usage in most test files and examples
 * Keep the usage in {{std::cerr}}

  was:
Remove the usage of {{std::endl}} to force new lines for {{std::ostream}}
 
Rationale
 * Using `std::endl` for linebreaks is bad practice since {{std::endl}} also 
forces a stream flush.
 * A past Ticket THRIFT-1815 identified the flush component as a problem and 
instead of a proper fix the behavior of {{std::endl}} was replaced with a 
custom constant that only did the new line.
 * This enforces bad practice and changes expected behaviour
 * The [C++ Core Guidelines 
SL.io.50|https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#slio50-avoid-endl]
 also suggest that {{std::endl}} should be avoided
 

I propose (by PR) to remove the usage of {{endl}} and instead use {{\n}} 
directly to avoid building on the bad practice. 

See: https://github.com/apache/thrift/pull/2943
* Replace the usage of {{endl}} with "\n" in all genertors
* Replace the usage in most test files and examples
* Keep the usage in {{std::cerr}}


> Replace std::endl with "\n"
> ---
>
> Key: THRIFT-5766
> URL: https://issues.apache.org/jira/browse/THRIFT-5766
> Project: Thrift
>  Issue Type: Improvement
>  Components: Compiler (General)
>Affects Versions: 0.19.0
>Reporter: Carel
>Priority: Minor
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Remove the usage of {{std::endl}} to force new lines for {{std::ostream}}
> Rationale
>  * Using `std::endl` for linebreaks is bad practice since {{std::endl}} also 
> forces a stream flush.
>  * A past Ticket THRIFT-1815 identified the flush component as a problem and 
> the behavior of {{std::endl}} was replaced with a custom constant that only 
> did the new line to minimize code changes.
>  * This enforces bad practice and changes expected behaviour
>  * The [C++ Core Guidelines 
> SL.io.50|https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#slio50-avoid-endl]
>  also suggest that {{std::endl}} should be avoided
> I propose (by PR) to remove the usage of {{endl}} and instead use {{\n}} 
> directly to avoid building on the bad practice.
> See: [https://github.com/apache/thrift/pull/2943]
>  * Replace the usage of {{endl}} with "\n" in all genertors
>  * Replace the usage in most test files and examples
>  * Keep the usage in {{std::cerr}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5744) Proposal: Switch all go logging in the library to slog

2024-03-12 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5744.

Fix Version/s: 0.20.0
   Resolution: Fixed

> Proposal: Switch all go logging in the library to slog
> --
>
> Key: THRIFT-5744
> URL: https://issues.apache.org/jira/browse/THRIFT-5744
> Project: Thrift
>  Issue Type: Task
>  Components: Go - Library
>Reporter: Yuxuan Wang
>Assignee: Yuxuan Wang
>Priority: Major
> Fix For: 0.20.0
>
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> In the go library, we used to use the stdlib [log|https://pkg.go.dev/log] 
> library to do logging. Then in THRIFT-4985 we added a simple wrapper 
> interface, Logger, to replace all the logging usage in the library code.
> This Proposal is that we switch all internal logging to stdlib 
> [slog|https://pkg.go.dev/log/slog] (after go 1.22 release so our minimal 
> supported go version is at least 1.21 and has slog in stdlib), and 
> deprecate/remove the Logger wrapper interface.
> In the current go library code, there are 2 places logging is used:
> # TDebugProtocol: with this proposal we should switch them to 
> slog.DebugContext
> # TSimpleServer: we log errors from processRequests, so with this proposel we 
> should switch them to slog.ErrorContext, and also add a SetBaseContext api to 
> TSimpleServer so a base context can be set to be used in that logging
> The original, stdlib log approach, didn't work out well because the API of it 
> is too limited (no log level, no context, no structured logging/kv pair 
> ability, etc.), resulting in a lot of third-party logging library 
> implementations cannot be adapted to the stdlib log api (even when some of 
> them, for example zap, provided a way to replace the default log logger to be 
> zap backend, because of the limitation of the api a lot of the features like 
> log level and kv pairs are still unusable with log api), resulting in mixed 
> logging in applications.
> The Logger wrapper interface resolved the mixed logging issue, but its API is 
> still very limited (it's a common denominator approach), so it still have 
> issues like lack of fine grain control of the logging, and performance (see 
> THRIFT-5539, because the lack of log level we cannot skip the Sprintf used by 
> TDebugProtocol when we don't need the logging, resulting in us forking out 
> TDuplicateToProtocol).
> The new slog stdlib is go team's answer to the fragmentation of logging 
> library issue in the go ecosystem, and it does have a really good chance to 
> really unite all the logging libraries once and for all:
> * The context in logging calls provides the ability to: 1) attach context kv 
> pairs automatically (trace id, etc.); 2) control minimal log level (you can 
> provide a ctx before calling thrift code that could do potential logging to 
> raise/lower minimal log level as needed); 3) or even do additional log 
> suppressing logic based on the context
> * Even if some developers still prefer zap/zerolog/etc. for their performance 
> (zap still claims to be faster than slog, for example), there are wrapper 
> libraries to set the default slog handler to a zap/zerolog/etc. 
> implementation so they still have uniformed logging, and the new API from 
> slog means that they can still preserve the majority of the features from 
> those third party logging libraries.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5745) go: Implement slog.LogValuer for exceptions and/or structs

2024-03-12 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5745.

Fix Version/s: 0.20.0
   Resolution: Fixed

> go: Implement slog.LogValuer for exceptions and/or structs
> --
>
> Key: THRIFT-5745
> URL: https://issues.apache.org/jira/browse/THRIFT-5745
> Project: Thrift
>  Issue Type: Task
>  Components: Go - Compiler
>Reporter: Yuxuan Wang
>Assignee: Yuxuan Wang
>Priority: Major
> Fix For: 0.20.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> To follow up on THRIFT-5744, implement 
> [slog.LogValuer|https://pkg.go.dev/log/slog#LogValuer] on compiler generated 
> exceptions, and maybe also structs.
> The current problem is that when logging an exception, the Stringer 
> implementation will be used, but that usually gives you quite unhelpful 
> string, especially when optional fields are used.
> For example we have [this exception 
> defined|https://github.com/reddit/baseplate.py/blob/8c446337dab6a1692900decf9cd01f3f4e39d764/baseplate/thrift/baseplate.thrift#L197]:
> {code:java}
> exception Error {
> 1: optional i32 code
> 2: optional string message
> 3: optional map details
> 4: optional bool retryable
> }
> {code}
> When you create an instance of it:
> {code:go}
> return {
>   Code: thrift.Int32Ptr(404),
>   Message: thrift.Pointer("no such id"),
> }
> {code}
> And then log that error, instead of getting something useful with the code 
> (404) and message ("no such id") in it, you get something like this instead 
> because this is how we implemented fmt.Stringer from the compiler:
> {code:go}
> Error({Code:0xc000426648 Message:0xc00041ca10 Details:map[] Retryable:})
> {code}
> The compiler generates implementation for json.Marshaler for all exceptions, 
> which will be much more helpful. The marshaled json for such error would be:
> {code:json}
> {"code":400,"message":"no such id"}
> {code}
> They are also much more expensive, so probably not suitable to replace the 
> current Stringer implementation, but when logging them, it's probably worth 
> it to implement slog.LogValuer so we can log something more useful, probably 
> like this:
> {code:go}
> func (p *Error) LogValue() slog.Value{
>   var sb strings.Builder
>   sb.WriteString("baseplate.Error")
>   bytes, err := json.Marshal(p)
>   if err != nil {
> // should not happen
> return slog.StringValue(fmt.Sprintf("baseplate.Error.LogValue: failed to 
> marshal json: %v", err))
>   }
>   sb.Write(bytes)
>   return slog.StringValue(sb.String())
> }
> {code}
> Which will make the error logged show as:
> {code:json}
> baseplate.Error{"code":400,"message":"no such id"}
> {code}
> Some open questions:
> # Is this also useful for structs?
> # Do we want to make this optional (e.g. only generate LogValue function when 
> a compiler flag is passed in)?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5688) Publish python package to pypi for recent releases

2024-03-12 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5688?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5688.

Fix Version/s: 0.20.0
   Resolution: Fixed

> Publish python package to pypi for recent releases
> --
>
> Key: THRIFT-5688
> URL: https://issues.apache.org/jira/browse/THRIFT-5688
> Project: Thrift
>  Issue Type: Bug
>  Components: Python - Library
>Affects Versions: 0.17.0, 0.18.0, 0.18.1
>Reporter: Yuxuan Wang
>Assignee: Yuxuan Wang
>Priority: Major
> Fix For: 0.20.0
>
>  Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> Currently the latest version published to pypi is 0.16.0: 
> https://pypi.org/project/thrift/#history
> We probably should update the release runbook regarding this step, and also 
> publish 0.17.0, 0.18.0 and 0.18.1 to pypi.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5765) Extra override for WriteBinary() to avoid unnecessary memory allocations when using COM types

2024-03-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5765.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Extra override for WriteBinary() to avoid unnecessary memory allocations when 
> using COM types
> -
>
> Key: THRIFT-5765
> URL: https://issues.apache.org/jira/browse/THRIFT-5765
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Fix For: 0.21.0
>
> Attachments: 
> 0001-THRIFT-5765-Extra-override-for-WriteBinary-to-avoid-.patch
>
>
> The IThriftBytes implementation allocates another TBytes array for the only 
> purpose to send the data down the tranport/protocol stack. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5765) Extra override for WriteBinary() to avoid unnecessary memory allocations when using COM types

2024-03-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5765:
---
Attachment: 0001-THRIFT-5765-Extra-override-for-WriteBinary-to-avoid-.patch

> Extra override for WriteBinary() to avoid unnecessary memory allocations when 
> using COM types
> -
>
> Key: THRIFT-5765
> URL: https://issues.apache.org/jira/browse/THRIFT-5765
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
> Attachments: 
> 0001-THRIFT-5765-Extra-override-for-WriteBinary-to-avoid-.patch
>
>
> The IThriftBytes implementation allocates another TBytes array for the only 
> purpose to send the data down the tranport/protocol stack. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5765) Extra override for WriteBinary() to avoid unnecessary memory allocations when using COM types

2024-03-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5765:
---
Summary: Extra override for WriteBinary() to avoid unnecessary memory 
allocations when using COM types  (was: Extra override for WriteBinary() to 
avoid unnecessary memory allocations when using COM types.)

> Extra override for WriteBinary() to avoid unnecessary memory allocations when 
> using COM types
> -
>
> Key: THRIFT-5765
> URL: https://issues.apache.org/jira/browse/THRIFT-5765
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
>
> The IThriftBytes implementation allocates another TBytes array for the only 
> purpose to send the data down the tranport/protocol stack. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5765) Extra override for WriteBinary() to avoid unnecessary memory allocations when using COM types.

2024-03-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5765:
---
Summary: Extra override for WriteBinary() to avoid unnecessary memory 
allocations when using COM types.  (was: Extra override for WriteBinary() to 
avoid unnecessary memory allocations when using COM types. )

> Extra override for WriteBinary() to avoid unnecessary memory allocations when 
> using COM types.
> --
>
> Key: THRIFT-5765
> URL: https://issues.apache.org/jira/browse/THRIFT-5765
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
>
> The IThriftBytes implementation allocates another TBytes array for the only 
> purpose to send the data down the tranport/protocol stack. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (THRIFT-5765) Extra override for WriteBinary() to avoid unnecessary memory allocations when using COM types. 

2024-03-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer reassigned THRIFT-5765:
--

Assignee: Jens Geyer

> Extra override for WriteBinary() to avoid unnecessary memory allocations when 
> using COM types. 
> ---
>
> Key: THRIFT-5765
> URL: https://issues.apache.org/jira/browse/THRIFT-5765
> Project: Thrift
>  Issue Type: Improvement
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
>
> The IThriftBytes implementation allocates another TBytes array for the only 
> purpose to send the data down the tranport/protocol stack. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5765) Extra override for WriteBinary() to avoid unnecessary memory allocations when using COM types. 

2024-03-07 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5765:
--

 Summary: Extra override for WriteBinary() to avoid unnecessary 
memory allocations when using COM types. 
 Key: THRIFT-5765
 URL: https://issues.apache.org/jira/browse/THRIFT-5765
 Project: Thrift
  Issue Type: Improvement
Reporter: Jens Geyer


The IThriftBytes implementation allocates another TBytes array for the only 
purpose to send the data down the tranport/protocol stack. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5765) Extra override for WriteBinary() to avoid unnecessary memory allocations when using COM types. 

2024-03-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5765:
---
Component/s: Delphi - Library

> Extra override for WriteBinary() to avoid unnecessary memory allocations when 
> using COM types. 
> ---
>
> Key: THRIFT-5765
> URL: https://issues.apache.org/jira/browse/THRIFT-5765
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
>
> The IThriftBytes implementation allocates another TBytes array for the only 
> purpose to send the data down the tranport/protocol stack. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5764) Extra CTOR for TThriftBytesImpl

2024-03-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5764?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5764.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Extra CTOR for TThriftBytesImpl
> ---
>
> Key: THRIFT-5764
> URL: https://issues.apache.org/jira/browse/THRIFT-5764
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Trivial
> Fix For: 0.21.0
>
> Attachments: 0001-THRIFT-5764-Extra-CTOR-for-TThriftBytesImpl.patch
>
>
> Currently TThriftBytesImpl only offers CTORs that accept TBytes.
> While this is a rather safe approach, in some use cases an extra "comfort" 
> CTOR that directly accepts pointer and size removes the need to write 
> potentially error prone code and/or the need for extra memory allocation.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5764) Extra CTOR for TThriftBytesImpl

2024-03-07 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5764?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5764:
---
Attachment: 0001-THRIFT-5764-Extra-CTOR-for-TThriftBytesImpl.patch

> Extra CTOR for TThriftBytesImpl
> ---
>
> Key: THRIFT-5764
> URL: https://issues.apache.org/jira/browse/THRIFT-5764
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Trivial
> Attachments: 0001-THRIFT-5764-Extra-CTOR-for-TThriftBytesImpl.patch
>
>
> Currently TThriftBytesImpl only offers CTORs that accept TBytes.
> While this is a rather safe approach, in some use cases an extra "comfort" 
> CTOR that directly accepts pointer and size removes the need to write 
> potentially error prone code and/or the need for extra memory allocation.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5764) Extra CTOR for TThriftBytesImpl

2024-03-07 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5764:
--

 Summary: Extra CTOR for TThriftBytesImpl
 Key: THRIFT-5764
 URL: https://issues.apache.org/jira/browse/THRIFT-5764
 Project: Thrift
  Issue Type: Improvement
  Components: Delphi - Library
Reporter: Jens Geyer
Assignee: Jens Geyer


Currently TThriftBytesImpl only offers CTORs that accept TBytes.

While this is a rather safe approach, in some use cases an extra "comfort" CTOR 
that directly accepts pointer and size removes the need to write potentially 
error prone code and/or the need for extra memory allocation.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5762) Expose service result objects in Java

2024-03-05 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5762?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5762:
---
Component/s: Java - Compiler

> Expose service result objects in Java
> -
>
> Key: THRIFT-5762
> URL: https://issues.apache.org/jira/browse/THRIFT-5762
> Project: Thrift
>  Issue Type: New Feature
>  Components: Java - Compiler
>Reporter: Thomas Bruggink
>Assignee: Thomas Bruggink
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Some libraries want to bypass the TServer class and handle the full
> service startup manually. For example when building a service that hosts
> multiple thrift services where the IFace type is unknown when handling a
> request.
> For example when you host multiple services on top of netty and through
> an HTTP path you want to route to the correct thrift service. In this
> situation you treat can treat an IFace as an Object and use the
> `getProcessMapView()` method to parse a byte array into a thrift message
> and pass let the `AsyncProcessFunction` handle the invocation.
> To return a correct thrift response it's necessary to write the
> `{service_name}_result` that contains the response args.
> While it is possible to get an incoming args object from the
> (Async)ProcessFunction its unfortunately not possible to get
> a result object without using reflection.
> This PR extends the (Async)ProcessFunction by adding a
> `getEmptyResultInstance` method that returns a new generic `A` (answer)
> that matches the `{service_name}_result` object.
> This allows thrift users to write the following processing code:
> {code:java}
>  void handleRequest(
> TProtocol in,
> TProtocol out,
> TBaseAsyncProcessor processor,
> I asyncIface
> ) throws TException {
> final Map, TBase, 
> TBase>> processMap = (Map) processor.getProcessMapView();
> final var msg = in.readMessageBegin();
> final var fn = processMap.get(msg.name);
> final var args = fn.getEmptyArgsInstance();
> args.read(in);
> in.readMessageEnd();
> if (fn.isOneway()) {
> return;
> }
> fn.start(asyncIface, args, new AsyncMethodCallback<>() {
> @Override
> public void onComplete(TBase o) {
> try {
> out.writeMessageBegin(new TMessage(fn.getMethodName(), 
> TMessageType.REPLY, msg.getSeqid()));
> final var response_result = fn.getEmptyResultInstance();
> final var success_field = 
> response_result.fieldForId(SUCCESS_ID);
> ((TBase) response_result).setFieldValue(success_field, o);
> response_result.write(out);
> out.writeMessageEnd();
> out.getTransport().flush();
> } catch (TException e) {
> throw new RuntimeException(e);
> }
> }
> @Override
> public void onError(Exception e) {
> try {
> out.writeMessageBegin(new TMessage(fn.getMethodName(), 
> TMessageType.EXCEPTION, msg.getSeqid()));
> ((TApplicationException) e).write(out);
> out.writeMessageEnd();
> out.getTransport().flush();
> } catch (TException ex) {
> throw new RuntimeException(ex);
> }
> }
> });
> }
> {code}
> The above example code doesn't need any reference to the original types
> and can dynamically create the correct objects to return a correct
> response.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5762) Expose service result objects in Java

2024-03-05 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5762?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5762.

Fix Version/s: 0.21.0
 Assignee: Thomas Bruggink
   Resolution: Fixed

> Expose service result objects in Java
> -
>
> Key: THRIFT-5762
> URL: https://issues.apache.org/jira/browse/THRIFT-5762
> Project: Thrift
>  Issue Type: New Feature
>Reporter: Thomas Bruggink
>Assignee: Thomas Bruggink
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Some libraries want to bypass the TServer class and handle the full
> service startup manually. For example when building a service that hosts
> multiple thrift services where the IFace type is unknown when handling a
> request.
> For example when you host multiple services on top of netty and through
> an HTTP path you want to route to the correct thrift service. In this
> situation you treat can treat an IFace as an Object and use the
> `getProcessMapView()` method to parse a byte array into a thrift message
> and pass let the `AsyncProcessFunction` handle the invocation.
> To return a correct thrift response it's necessary to write the
> `{service_name}_result` that contains the response args.
> While it is possible to get an incoming args object from the
> (Async)ProcessFunction its unfortunately not possible to get
> a result object without using reflection.
> This PR extends the (Async)ProcessFunction by adding a
> `getEmptyResultInstance` method that returns a new generic `A` (answer)
> that matches the `{service_name}_result` object.
> This allows thrift users to write the following processing code:
> {code:java}
>  void handleRequest(
> TProtocol in,
> TProtocol out,
> TBaseAsyncProcessor processor,
> I asyncIface
> ) throws TException {
> final Map, TBase, 
> TBase>> processMap = (Map) processor.getProcessMapView();
> final var msg = in.readMessageBegin();
> final var fn = processMap.get(msg.name);
> final var args = fn.getEmptyArgsInstance();
> args.read(in);
> in.readMessageEnd();
> if (fn.isOneway()) {
> return;
> }
> fn.start(asyncIface, args, new AsyncMethodCallback<>() {
> @Override
> public void onComplete(TBase o) {
> try {
> out.writeMessageBegin(new TMessage(fn.getMethodName(), 
> TMessageType.REPLY, msg.getSeqid()));
> final var response_result = fn.getEmptyResultInstance();
> final var success_field = 
> response_result.fieldForId(SUCCESS_ID);
> ((TBase) response_result).setFieldValue(success_field, o);
> response_result.write(out);
> out.writeMessageEnd();
> out.getTransport().flush();
> } catch (TException e) {
> throw new RuntimeException(e);
> }
> }
> @Override
> public void onError(Exception e) {
> try {
> out.writeMessageBegin(new TMessage(fn.getMethodName(), 
> TMessageType.EXCEPTION, msg.getSeqid()));
> ((TApplicationException) e).write(out);
> out.writeMessageEnd();
> out.getTransport().flush();
> } catch (TException ex) {
> throw new RuntimeException(ex);
> }
> }
> });
> }
> {code}
> The above example code doesn't need any reference to the original types
> and can dynamically create the correct objects to return a correct
> response.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5757) Unit tests for php lib

2024-02-25 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5757.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Fix For: 0.21.0
>
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5761) Lib/json tests fail

2024-02-25 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5761.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Lib/json tests fail
> ---
>
> Key: THRIFT-5761
> URL: https://issues.apache.org/jira/browse/THRIFT-5761
> Project: Thrift
>  Issue Type: Bug
>  Components: JSON - Library
>Reporter: Thomas Bruggink
>Assignee: Thomas Bruggink
>Priority: Minor
> Fix For: 0.21.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Running `ant validate-generated-json` fails with the following error:
> {code:java}
> validate-generated-json:
>  [java] --- BEGIN 
> /thrift/src/lib/json/test/build/gen-json/ThriftTest.json---
>  [java] validation: FAILURE
>  [java] [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/constant"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "allOf",
>  [java]   "message" : "instance failed to match all required schemas 
> (matched only 2 out of 3)",
>  [java]   "matched" : 2,
>  [java]   "nrSchemas" : 3,
>  [java]   "reports" : {
>  [java] "/definitions/constant/allOf/0" : [ ],
>  [java] "/definitions/constant/allOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/type-desc"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "allOf",
>  [java]   "message" : "instance failed to match all required schemas 
> (matched only 1 out of 2)",
>  [java]   "matched" : 1,
>  [java]   "nrSchemas" : 2,
>  [java]   "reports" : {
>  [java] "/definitions/type-desc/allOf/0" : [ ],
>  [java] "/definitions/type-desc/allOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/type-desc/allOf/1"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "oneOf",
>  [java]   "message" : "instance failed to match exactly one 
> schema (matched 0 out of 4)",
>  [java]   "matched" : 0,
>  [java]   "nrSchemas" : 4,
>  [java]   "reports" : {
>  [java] "/definitions/type-desc/allOf/1/oneOf/0" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : 
> "/definitions/base-type/properties/typeId"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0/typeId"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "enum",
>  [java]   "message" : "instance value (\"enum\") not found in 
> enum (possible values: 
> [\"void\",\"string\",\"bool\",\"byte\",\"i8\",\"i16\",\"i32\",\"i64\",\"double\",\"binary\",\"uuid\"])",
>  [java]   "value" : "enum",
>  [java]   "enum" : [ "void", "string", "bool", "byte", "i8", 
> "i16", "i32", "i64", "double", "binary", "uuid" ]
>  [java] } ],
>  [java] "/definitions/type-desc/allOf/1/oneOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/list-type"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "required",
>  [java]   "message" : "object has missing required properties 
> ([\"elemTypeId\"])",
>  [java]   "required" : [ "elemTypeId", "typeId" ],
>  [java]   "missing" : [ "elemTypeId" ]
>  [java] }, {
>  

[jira] [Updated] (THRIFT-5761) Lib/json tests fail

2024-02-25 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5761:
---
Component/s: JSON - Library

> Lib/json tests fail
> ---
>
> Key: THRIFT-5761
> URL: https://issues.apache.org/jira/browse/THRIFT-5761
> Project: Thrift
>  Issue Type: Bug
>  Components: JSON - Library
>Reporter: Thomas Bruggink
>Assignee: Thomas Bruggink
>Priority: Minor
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Running `ant validate-generated-json` fails with the following error:
> {code:java}
> validate-generated-json:
>  [java] --- BEGIN 
> /thrift/src/lib/json/test/build/gen-json/ThriftTest.json---
>  [java] validation: FAILURE
>  [java] [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/constant"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "allOf",
>  [java]   "message" : "instance failed to match all required schemas 
> (matched only 2 out of 3)",
>  [java]   "matched" : 2,
>  [java]   "nrSchemas" : 3,
>  [java]   "reports" : {
>  [java] "/definitions/constant/allOf/0" : [ ],
>  [java] "/definitions/constant/allOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/type-desc"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "allOf",
>  [java]   "message" : "instance failed to match all required schemas 
> (matched only 1 out of 2)",
>  [java]   "matched" : 1,
>  [java]   "nrSchemas" : 2,
>  [java]   "reports" : {
>  [java] "/definitions/type-desc/allOf/0" : [ ],
>  [java] "/definitions/type-desc/allOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/type-desc/allOf/1"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "oneOf",
>  [java]   "message" : "instance failed to match exactly one 
> schema (matched 0 out of 4)",
>  [java]   "matched" : 0,
>  [java]   "nrSchemas" : 4,
>  [java]   "reports" : {
>  [java] "/definitions/type-desc/allOf/1/oneOf/0" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : 
> "/definitions/base-type/properties/typeId"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0/typeId"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "enum",
>  [java]   "message" : "instance value (\"enum\") not found in 
> enum (possible values: 
> [\"void\",\"string\",\"bool\",\"byte\",\"i8\",\"i16\",\"i32\",\"i64\",\"double\",\"binary\",\"uuid\"])",
>  [java]   "value" : "enum",
>  [java]   "enum" : [ "void", "string", "bool", "byte", "i8", 
> "i16", "i32", "i64", "double", "binary", "uuid" ]
>  [java] } ],
>  [java] "/definitions/type-desc/allOf/1/oneOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/list-type"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "required",
>  [java]   "message" : "object has missing required properties 
> ([\"elemTypeId\"])",
>  [java]   "required" : [ "elemTypeId", "typeId" ],
>  [java]   "missing" : [ "elemTypeId" ]
>  [java] }, {
>  [java]   "level" : "error",
>  [java]  

[jira] [Assigned] (THRIFT-5761) Lib/json tests fail

2024-02-25 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer reassigned THRIFT-5761:
--

Assignee: Thomas Bruggink

> Lib/json tests fail
> ---
>
> Key: THRIFT-5761
> URL: https://issues.apache.org/jira/browse/THRIFT-5761
> Project: Thrift
>  Issue Type: Bug
>Reporter: Thomas Bruggink
>Assignee: Thomas Bruggink
>Priority: Minor
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Running `ant validate-generated-json` fails with the following error:
> {code:java}
> validate-generated-json:
>  [java] --- BEGIN 
> /thrift/src/lib/json/test/build/gen-json/ThriftTest.json---
>  [java] validation: FAILURE
>  [java] [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/constant"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "allOf",
>  [java]   "message" : "instance failed to match all required schemas 
> (matched only 2 out of 3)",
>  [java]   "matched" : 2,
>  [java]   "nrSchemas" : 3,
>  [java]   "reports" : {
>  [java] "/definitions/constant/allOf/0" : [ ],
>  [java] "/definitions/constant/allOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/type-desc"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "allOf",
>  [java]   "message" : "instance failed to match all required schemas 
> (matched only 1 out of 2)",
>  [java]   "matched" : 1,
>  [java]   "nrSchemas" : 2,
>  [java]   "reports" : {
>  [java] "/definitions/type-desc/allOf/0" : [ ],
>  [java] "/definitions/type-desc/allOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/type-desc/allOf/1"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "oneOf",
>  [java]   "message" : "instance failed to match exactly one 
> schema (matched 0 out of 4)",
>  [java]   "matched" : 0,
>  [java]   "nrSchemas" : 4,
>  [java]   "reports" : {
>  [java] "/definitions/type-desc/allOf/1/oneOf/0" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : 
> "/definitions/base-type/properties/typeId"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0/typeId"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "enum",
>  [java]   "message" : "instance value (\"enum\") not found in 
> enum (possible values: 
> [\"void\",\"string\",\"bool\",\"byte\",\"i8\",\"i16\",\"i32\",\"i64\",\"double\",\"binary\",\"uuid\"])",
>  [java]   "value" : "enum",
>  [java]   "enum" : [ "void", "string", "bool", "byte", "i8", 
> "i16", "i32", "i64", "double", "binary", "uuid" ]
>  [java] } ],
>  [java] "/definitions/type-desc/allOf/1/oneOf/1" : [ {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  [java] "loadingURI" : 
> "file:/thrift/src/lib/json/schema.json#",
>  [java] "pointer" : "/definitions/list-type"
>  [java]   },
>  [java]   "instance" : {
>  [java] "pointer" : "/constants/0"
>  [java]   },
>  [java]   "domain" : "validation",
>  [java]   "keyword" : "required",
>  [java]   "message" : "object has missing required properties 
> ([\"elemTypeId\"])",
>  [java]   "required" : [ "elemTypeId", "typeId" ],
>  [java]   "missing" : [ "elemTypeId" ]
>  [java] }, {
>  [java]   "level" : "error",
>  [java]   "schema" : {
>  

[jira] [Resolved] (THRIFT-5758) PHP 8.2 Deprecate dynamic properties

2024-02-25 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5758.

Fix Version/s: 0.21.0
   Resolution: Fixed

> PHP 8.2 Deprecate dynamic properties
> 
>
> Key: THRIFT-5758
> URL: https://issues.apache.org/jira/browse/THRIFT-5758
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> In php 8.2 dynamic properties will generate a deprecation
> [https://www.php.net/releases/8.2/en.php#deprecate_dynamic_properties]
>  
> In Tbase and TException dynamic properties is used.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5760) Update minimal version of php

2024-02-25 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5760?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5760.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Update minimal version of php
> -
>
> Key: THRIFT-5760
> URL: https://issues.apache.org/jira/browse/THRIFT-5760
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
>  Labels: breaking_change
> Fix For: 0.21.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Update minimal version of php to 7.1
> I know that currently 8.* is main version, but current code has to much 
> dependencies on version 5, so let's move step by step.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5755) Docker image build fail

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820301#comment-17820301
 ] 

Jens Geyer commented on THRIFT-5755:


I'm not aware of anything in old being used. Why the heck do we have a folder 
named "old" at all?

{quote}what about the original problem, i cannot build container due to the 
error, who can help with it?{quote}
Have a look at the ReleaseMgmt doc I linked. there is a command line that also 
has a volume reference.  Did you try that?

{code}
$ docker run -v $(pwd):/thrift/src:rw -it thrift/thrift-build:ubuntu-bionic 
/bin/bash
root@8b4101188aa2:/thrift/src# ./bootstrap.sh && ./configure && make dist
{code}


> Docker image build fail
> ---
>
> Key: THRIFT-5755
> URL: https://issues.apache.org/jira/browse/THRIFT-5755
> Project: Thrift
>  Issue Type: Bug
> Environment: Ubuntu 22.04
>Reporter: Volodymyr Panivko
>Priority: Major
>
> When I'm trying to build an docker image and run command
> {code:java}
> docker build -t thrift build/docker/ubuntu-bionic{code}
> I get such error
>  
> {code:java}
>  
>  => ERROR [13/35] RUN apt-get install -y --no-install-recommends       `# 
> dotnet core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0           1.3s
> --
>  > [13/35] RUN apt-get install -y --no-install-recommends       `# dotnet 
> core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0:
> 0.350 Reading package lists...
> 1.113 Building dependency tree...
> 1.216 Reading state information...
> 1.311 E: Unable to locate package dotnet-sdk-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-sdk-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-sdk-8.0'
> 1.311 E: Unable to locate package dotnet-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-runtime-8.0'
> 1.311 E: Unable to locate package aspnetcore-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'aspnetcore-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'aspnetcore-runtime-8.0'
> 1.311 E: Unable to locate package dotnet-apphost-pack-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-apphost-pack-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-apphost-pack-8.0'
> --
> Dockerfile:134
> 
>  133 |     
>  134 | >>> RUN apt-get install -y --no-install-recommends \
>  135 | >>>       `# dotnet core dependencies` \
>  136 | >>>       dotnet-sdk-8.0 \
>  137 | >>>       dotnet-runtime-8.0 \
>  138 | >>>       aspnetcore-runtime-8.0 \
>  139 | >>>       dotnet-apphost-pack-8.0
>  140 |     
> 
> ERROR: failed to solve: process "/bin/sh -c apt-get install -y 
> --no-install-recommends       `# dotnet core dependencies`       
> dotnet-sdk-8.0       dotnet-runtime-8.0       aspnetcore-runtime-8.0       
> dotnet-apphost-pack-8.0" did not complete successfully: exit code: 100
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5757) Unit tests for php lib

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820300#comment-17820300
 ] 

Jens Geyer edited comment on THRIFT-5757 at 2/24/24 9:55 AM:
-

{quote}I'm subscribed, and already write a letter the list, but i does not 
appear in it.{quote}

 

Could you try to contact INFRA about this? 


was (Author: jensg):
??I'm subscribed, and already write a letter the list, but i does not appear in 
it.\{quote}??

 

Could you try to contact INFRA about this? 

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5757) Unit tests for php lib

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820300#comment-17820300
 ] 

Jens Geyer edited comment on THRIFT-5757 at 2/24/24 9:54 AM:
-

??I'm subscribed, and already write a letter the list, but i does not appear in 
it.\{quote}??

 

Could you try to contact INFRA about this? 


was (Author: jensg):
{quote}I'm subscribed, and already write a letter the list, but i does not 
appear in it.\{quote}

Could you try to contact INFRA about this? 

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5757) Unit tests for php lib

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820300#comment-17820300
 ] 

Jens Geyer commented on THRIFT-5757:


{quote}I'm subscribed, and already write a letter the list, but i does not 
appear in it.\{quote}

Could you try to contact INFRA about this? 

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5757) Unit tests for php lib

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820299#comment-17820299
 ] 

Jens Geyer commented on THRIFT-5757:


Whatever makes most sense,

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5757) Unit tests for php lib

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820296#comment-17820296
 ] 

Jens Geyer edited comment on THRIFT-5757 at 2/24/24 9:51 AM:
-

{quote}PHP Lib in Thrift project currently supports many PHP versions, which is 
EOL, it gives many troubles, because in the new PHP version many changes are 
provided and many old possibilities become deprecated.
{quote}
If it is EOL and makes problems why don't we drop support for it from current 
development branch?

EDIT: Just found this [https://www.php.net/supported-versions.php]
The 7 version is not even listed there ... however if it is still widely used 
and does not cause too many additional troubles to support, why not? I'm fine 
with it.

I just would recommend to check the efforts needed and if it gets too clumsy 
and troublesome to maintain any outdated version I personally would decide to 
cut it off and go with what is officially supported at the moment. 

Just to make an example: When net6 (LTS) [gets EOL in 
October|https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core] 
this year, net6 and net7 support will be the next thing I throw out.


was (Author: jensg):
{quote}
PHP Lib in Thrift project currently supports many PHP versions, which is EOL, 
it gives many troubles, because in the new PHP version many changes are 
provided and many old possibilities become deprecated. 
{quote}

If it is EOL and makes problems why don't we drop support for it from current 
development branch?

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5757) Unit tests for php lib

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820296#comment-17820296
 ] 

Jens Geyer commented on THRIFT-5757:


{quote}
PHP Lib in Thrift project currently supports many PHP versions, which is EOL, 
it gives many troubles, because in the new PHP version many changes are 
provided and many old possibilities become deprecated. 
{quote}

If it is EOL and makes problems why don't we drop support for it from current 
development branch?

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Attachments: image-2024-02-24-10-41-37-836.png
>
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5757) Unit tests for php lib

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820295#comment-17820295
 ] 

Jens Geyer edited comment on THRIFT-5757 at 2/24/24 9:40 AM:
-

You have no rights to write to dev list? How can that happen? Its a public 
mailing list.

Maybe you need to subscribe first (I'm not 100% sure about that)
https://thrift.apache.org/mailing


was (Author: jensg):
You have no rights to write to dev list? How can that happen? Its a public 
mailing list.

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5757) Unit tests for php lib

2024-02-24 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17820295#comment-17820295
 ] 

Jens Geyer commented on THRIFT-5757:


You have no rights to write to dev list? How can that happen? Its a public 
mailing list.

> Unit tests for php lib
> --
>
> Key: THRIFT-5757
> URL: https://issues.apache.org/jira/browse/THRIFT-5757
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> After running PHP unit tests for each pull request THRIFT-5756
> Next step is writing test for php lib.
> It will be several pull request for this task.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5756) Run php tests in github actions

2024-02-21 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5756?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5756.

Fix Version/s: 0.21.0
   Resolution: Fixed

> Run php tests in github actions
> ---
>
> Key: THRIFT-5756
> URL: https://issues.apache.org/jira/browse/THRIFT-5756
> Project: Thrift
>  Issue Type: New Feature
>  Components: PHP - Library
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Major
> Fix For: 0.21.0
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> Before updating minimum version of php to 7.4 or 8.0 we should start running 
> php tests on every pull request.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5755) Docker image build fail

2024-02-19 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17818578#comment-17818578
 ] 

Jens Geyer edited comment on THRIFT-5755 at 2/19/24 9:23 PM:
-

{quote}The Dockerfiles under build/docker are no longer used and maintained, we 
probably should remove them from the repository.\{quote}

The images are used in the release process. Although they were actually built a 
while ago, removing them may cause more problems in the future.
 * [https://hub.docker.com/r/thrift/thrift-build/tags]
 * [https://github.com/apache/thrift/blob/master/doc/ReleaseManagement.md]

 


was (Author: jensg):
The images are used in the release process. Although they were actually built a 
while ago, removing them may cause more problems in the future.


 * [https://hub.docker.com/r/thrift/thrift-build/tags]
 * [https://github.com/apache/thrift/blob/master/doc/ReleaseManagement.md]

 

> Docker image build fail
> ---
>
> Key: THRIFT-5755
> URL: https://issues.apache.org/jira/browse/THRIFT-5755
> Project: Thrift
>  Issue Type: Bug
> Environment: Ubuntu 22.04
>Reporter: Volodymyr Panivko
>Priority: Major
>
> When I'm trying to build an docker image and run command
> {code:java}
> docker build -t thrift build/docker/ubuntu-bionic{code}
> I get such error
>  
> {code:java}
>  
>  => ERROR [13/35] RUN apt-get install -y --no-install-recommends       `# 
> dotnet core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0           1.3s
> --
>  > [13/35] RUN apt-get install -y --no-install-recommends       `# dotnet 
> core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0:
> 0.350 Reading package lists...
> 1.113 Building dependency tree...
> 1.216 Reading state information...
> 1.311 E: Unable to locate package dotnet-sdk-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-sdk-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-sdk-8.0'
> 1.311 E: Unable to locate package dotnet-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-runtime-8.0'
> 1.311 E: Unable to locate package aspnetcore-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'aspnetcore-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'aspnetcore-runtime-8.0'
> 1.311 E: Unable to locate package dotnet-apphost-pack-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-apphost-pack-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-apphost-pack-8.0'
> --
> Dockerfile:134
> 
>  133 |     
>  134 | >>> RUN apt-get install -y --no-install-recommends \
>  135 | >>>       `# dotnet core dependencies` \
>  136 | >>>       dotnet-sdk-8.0 \
>  137 | >>>       dotnet-runtime-8.0 \
>  138 | >>>       aspnetcore-runtime-8.0 \
>  139 | >>>       dotnet-apphost-pack-8.0
>  140 |     
> 
> ERROR: failed to solve: process "/bin/sh -c apt-get install -y 
> --no-install-recommends       `# dotnet core dependencies`       
> dotnet-sdk-8.0       dotnet-runtime-8.0       aspnetcore-runtime-8.0       
> dotnet-apphost-pack-8.0" did not complete successfully: exit code: 100
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5755) Docker image build fail

2024-02-19 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17818578#comment-17818578
 ] 

Jens Geyer edited comment on THRIFT-5755 at 2/19/24 9:23 PM:
-

{quote}The Dockerfiles under build/docker are no longer used and maintained, we 
probably should remove them from the repository.\{quote}
{quote}
 

The images are used in the release process. Although they were actually built a 
while ago, removing them may cause more problems in the future.
 * [https://hub.docker.com/r/thrift/thrift-build/tags]
 * [https://github.com/apache/thrift/blob/master/doc/ReleaseManagement.md]

 


was (Author: jensg):
{quote}The Dockerfiles under build/docker are no longer used and maintained, we 
probably should remove them from the repository.\{quote}

The images are used in the release process. Although they were actually built a 
while ago, removing them may cause more problems in the future.
 * [https://hub.docker.com/r/thrift/thrift-build/tags]
 * [https://github.com/apache/thrift/blob/master/doc/ReleaseManagement.md]

 

> Docker image build fail
> ---
>
> Key: THRIFT-5755
> URL: https://issues.apache.org/jira/browse/THRIFT-5755
> Project: Thrift
>  Issue Type: Bug
> Environment: Ubuntu 22.04
>Reporter: Volodymyr Panivko
>Priority: Major
>
> When I'm trying to build an docker image and run command
> {code:java}
> docker build -t thrift build/docker/ubuntu-bionic{code}
> I get such error
>  
> {code:java}
>  
>  => ERROR [13/35] RUN apt-get install -y --no-install-recommends       `# 
> dotnet core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0           1.3s
> --
>  > [13/35] RUN apt-get install -y --no-install-recommends       `# dotnet 
> core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0:
> 0.350 Reading package lists...
> 1.113 Building dependency tree...
> 1.216 Reading state information...
> 1.311 E: Unable to locate package dotnet-sdk-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-sdk-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-sdk-8.0'
> 1.311 E: Unable to locate package dotnet-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-runtime-8.0'
> 1.311 E: Unable to locate package aspnetcore-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'aspnetcore-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'aspnetcore-runtime-8.0'
> 1.311 E: Unable to locate package dotnet-apphost-pack-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-apphost-pack-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-apphost-pack-8.0'
> --
> Dockerfile:134
> 
>  133 |     
>  134 | >>> RUN apt-get install -y --no-install-recommends \
>  135 | >>>       `# dotnet core dependencies` \
>  136 | >>>       dotnet-sdk-8.0 \
>  137 | >>>       dotnet-runtime-8.0 \
>  138 | >>>       aspnetcore-runtime-8.0 \
>  139 | >>>       dotnet-apphost-pack-8.0
>  140 |     
> 
> ERROR: failed to solve: process "/bin/sh -c apt-get install -y 
> --no-install-recommends       `# dotnet core dependencies`       
> dotnet-sdk-8.0       dotnet-runtime-8.0       aspnetcore-runtime-8.0       
> dotnet-apphost-pack-8.0" did not complete successfully: exit code: 100
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5755) Docker image build fail

2024-02-19 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17818578#comment-17818578
 ] 

Jens Geyer commented on THRIFT-5755:


The images are used in the release process. Although they were actually built a 
while ago, removing them may cause more problems in the future.


 * [https://hub.docker.com/r/thrift/thrift-build/tags]
 * [https://github.com/apache/thrift/blob/master/doc/ReleaseManagement.md]

 

> Docker image build fail
> ---
>
> Key: THRIFT-5755
> URL: https://issues.apache.org/jira/browse/THRIFT-5755
> Project: Thrift
>  Issue Type: Bug
> Environment: Ubuntu 22.04
>Reporter: Volodymyr Panivko
>Priority: Major
>
> When I'm trying to build an docker image and run command
> {code:java}
> docker build -t thrift build/docker/ubuntu-bionic{code}
> I get such error
>  
> {code:java}
>  
>  => ERROR [13/35] RUN apt-get install -y --no-install-recommends       `# 
> dotnet core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0           1.3s
> --
>  > [13/35] RUN apt-get install -y --no-install-recommends       `# dotnet 
> core dependencies`       dotnet-sdk-8.0       dotnet-runtime-8.0       
> aspnetcore-runtime-8.0       dotnet-apphost-pack-8.0:
> 0.350 Reading package lists...
> 1.113 Building dependency tree...
> 1.216 Reading state information...
> 1.311 E: Unable to locate package dotnet-sdk-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-sdk-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-sdk-8.0'
> 1.311 E: Unable to locate package dotnet-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-runtime-8.0'
> 1.311 E: Unable to locate package aspnetcore-runtime-8.0
> 1.311 E: Couldn't find any package by glob 'aspnetcore-runtime-8.0'
> 1.311 E: Couldn't find any package by regex 'aspnetcore-runtime-8.0'
> 1.311 E: Unable to locate package dotnet-apphost-pack-8.0
> 1.311 E: Couldn't find any package by glob 'dotnet-apphost-pack-8.0'
> 1.311 E: Couldn't find any package by regex 'dotnet-apphost-pack-8.0'
> --
> Dockerfile:134
> 
>  133 |     
>  134 | >>> RUN apt-get install -y --no-install-recommends \
>  135 | >>>       `# dotnet core dependencies` \
>  136 | >>>       dotnet-sdk-8.0 \
>  137 | >>>       dotnet-runtime-8.0 \
>  138 | >>>       aspnetcore-runtime-8.0 \
>  139 | >>>       dotnet-apphost-pack-8.0
>  140 |     
> 
> ERROR: failed to solve: process "/bin/sh -c apt-get install -y 
> --no-install-recommends       `# dotnet core dependencies`       
> dotnet-sdk-8.0       dotnet-runtime-8.0       aspnetcore-runtime-8.0       
> dotnet-apphost-pack-8.0" did not complete successfully: exit code: 100
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5688) Publish python package to pypi for recent releases

2024-02-12 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17816790#comment-17816790
 ] 

Jens Geyer commented on THRIFT-5688:


No need to argue with me, since I do not make the rules, I only point out they 
exist, in order to make everybody around aware of it.

Somewhere in that document there is also some details about what a release is 
and how to make test packages available (and what to avoid). 

I personally would agree with TestPyPi being perfect for any kind of unapproved 
builds.

> Publish python package to pypi for recent releases
> --
>
> Key: THRIFT-5688
> URL: https://issues.apache.org/jira/browse/THRIFT-5688
> Project: Thrift
>  Issue Type: Bug
>  Components: Python - Library
>Affects Versions: 0.17.0, 0.18.0, 0.18.1
>Reporter: Yuxuan Wang
>Assignee: Yuxuan Wang
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Currently the latest version published to pypi is 0.16.0: 
> https://pypi.org/project/thrift/#history
> We probably should update the release runbook regarding this step, and also 
> publish 0.17.0, 0.18.0 and 0.18.1 to pypi.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5688) Publish python package to pypi for recent releases

2024-02-11 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17816396#comment-17816396
 ] 

Jens Geyer edited comment on THRIFT-5688 at 2/11/24 11:55 AM:
--

> thrift-test 0.21.0

To prevent conflicts I want to emphasize this

[https://www.apache.org/legal/release-policy.html#policy] 


was (Author: jensg):
> thrift-test 0.21.0

Top prevent conflicts I want to emphasize this

[https://www.apache.org/legal/release-policy.html#policy] 

> Publish python package to pypi for recent releases
> --
>
> Key: THRIFT-5688
> URL: https://issues.apache.org/jira/browse/THRIFT-5688
> Project: Thrift
>  Issue Type: Bug
>  Components: Python - Library
>Affects Versions: 0.17.0, 0.18.0, 0.18.1
>Reporter: Yuxuan Wang
>Assignee: Yuxuan Wang
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Currently the latest version published to pypi is 0.16.0: 
> https://pypi.org/project/thrift/#history
> We probably should update the release runbook regarding this step, and also 
> publish 0.17.0, 0.18.0 and 0.18.1 to pypi.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5688) Publish python package to pypi for recent releases

2024-02-11 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17816396#comment-17816396
 ] 

Jens Geyer commented on THRIFT-5688:


> thrift-test 0.21.0

Top prevent conflicts I want to emphasize this

[https://www.apache.org/legal/release-policy.html#policy] 

> Publish python package to pypi for recent releases
> --
>
> Key: THRIFT-5688
> URL: https://issues.apache.org/jira/browse/THRIFT-5688
> Project: Thrift
>  Issue Type: Bug
>  Components: Python - Library
>Affects Versions: 0.17.0, 0.18.0, 0.18.1
>Reporter: Yuxuan Wang
>Assignee: Yuxuan Wang
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Currently the latest version published to pypi is 0.16.0: 
> https://pypi.org/project/thrift/#history
> We probably should update the release runbook regarding this step, and also 
> publish 0.17.0, 0.18.0 and 0.18.1 to pypi.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5736) Support Http2 for thrift lib java

2024-02-04 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5736?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5736:
---
Component/s: Java - Library

> Support Http2 for thrift lib java
> -
>
> Key: THRIFT-5736
> URL: https://issues.apache.org/jira/browse/THRIFT-5736
> Project: Thrift
>  Issue Type: Improvement
>  Components: Java - Library
>Reporter: nicole Wang
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> add new Transport to support http2 for thrift lib java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5712) Add Dart 3 compatibility

2024-01-28 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5712?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17811673#comment-17811673
 ] 

Jens Geyer commented on THRIFT-5712:


{quote}

Add an __isset struct like in the cpp generator but it will only contain 
required fields.

{quote}

__isset is usually used for *optional* or *default* requiredness only. 

Required fields do not need an __isset, because they {*}must be set by 
definition{*}. 

 

> Add Dart 3 compatibility
> 
>
> Key: THRIFT-5712
> URL: https://issues.apache.org/jira/browse/THRIFT-5712
> Project: Thrift
>  Issue Type: Improvement
>  Components: Dart - Compiler
>Affects Versions: 0.18.1
>Reporter: Vlad Koronnov
>Priority: Major
>
> Dart project generated by thrift has constraints in pubspec.yaml
>  
> {code:java}
> name: dart_client
> version: 0.0.1
> description: Autogenerated by Thrift Compiler
> environment:
>   sdk: '>=2.12.0 <3.0.0' {code}
>  
>  
> And generated code uses uninitialized variables, which can't be used with 
> sound null safety, required by Dart 3.0



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5750) deprecate "ansistr_binary_" option

2024-01-21 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17809285#comment-17809285
 ] 

Jens Geyer commented on THRIFT-5750:


Deprecation notice via commit 
[7d4c7fa|https://github.com/apache/thrift/commit/7d4c7fa69b8a8fcb6d013141edeaae85182a28d7]

> deprecate "ansistr_binary_" option
> --
>
> Key: THRIFT-5750
> URL: https://issues.apache.org/jira/browse/THRIFT-5750
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> That option was introduced earlier for some rather exotic use case which a) 
> is not really relevant anymore and b) should not be part of a general library 
> anymore.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5750) Remove "ansistr_binary_" option

2024-01-21 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5750?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5750:
---
Summary: Remove "ansistr_binary_" option  (was: deprecate "ansistr_binary_" 
option)

> Remove "ansistr_binary_" option
> ---
>
> Key: THRIFT-5750
> URL: https://issues.apache.org/jira/browse/THRIFT-5750
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> That option was introduced earlier for some rather exotic use case which a) 
> is not really relevant anymore and b) should not be part of a general library 
> anymore.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5753) PHP 8.1 deprecated warning about return type in jsonSerialize functions

2024-01-19 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5753?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5753.

Fix Version/s: 0.20.0
 Assignee: Pavel Kvach
   Resolution: Fixed

> PHP 8.1 deprecated warning about return type in jsonSerialize functions
> ---
>
> Key: THRIFT-5753
> URL: https://issues.apache.org/jira/browse/THRIFT-5753
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Reporter: Pavel Kvach
>Assignee: Pavel Kvach
>Priority: Minor
> Fix For: 0.20.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> In PHP 8.1 a "mixed" return type was added to the 
> "JsonSerializable::jsonSerialize()" method.
> This triggers a deprecation warning for generated PHP classes:
> {code:java}
> Return type of TestClass::jsonSerialize() should either be compatible with 
> JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] 
> attribute should be used to temporarily suppress the notice in ...{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5754) Fix PHP 8.1 deprecates passing null to non-nullable internal function parameters

2024-01-18 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5754?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5754.

Fix Version/s: 0.20.0
 Assignee: Pavel Kvach
   Resolution: Fixed

> Fix PHP 8.1 deprecates passing null to non-nullable internal function 
> parameters
> 
>
> Key: THRIFT-5754
> URL: https://issues.apache.org/jira/browse/THRIFT-5754
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Reporter: Pavel Kvach
>Assignee: Pavel Kvach
>Priority: Minor
> Fix For: 0.20.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> PHP 8.1 has deprecated passing null values to non-nullable internal function 
> parameters:
> [https://wiki.php.net/rfc/deprecate_null_to_scalar_internal_arg]
> This can lead to deprecation warnings and potential errors in future versions.
> Example of a deprecation warning:
> {code:java}
> PHP Deprecated: strlen(): Passing null to parameter #1 ($string) of type 
> string is deprecated in Thrift/StringFunc/Core.php on line 38 {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5688) Publish python package to pypi for recent releases

2024-01-12 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17806197#comment-17806197
 ] 

Jens Geyer commented on THRIFT-5688:


[https://lists.apache.org/thread/xcxlxpzjp81nk1rkf91fjhyxz33wkxlb]

 

> Publish python package to pypi for recent releases
> --
>
> Key: THRIFT-5688
> URL: https://issues.apache.org/jira/browse/THRIFT-5688
> Project: Thrift
>  Issue Type: Bug
>  Components: Python - Library
>Affects Versions: 0.17.0, 0.18.0, 0.18.1
>Reporter: Yuxuan Wang
>Assignee: James E. King III
>Priority: Major
>
> Currently the latest version published to pypi is 0.16.0: 
> https://pypi.org/project/thrift/#history
> We probably should update the release runbook regarding this step, and also 
> publish 0.17.0, 0.18.0 and 0.18.1 to pypi.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5753) PHP 8.1 deprecated warning about return type in jsonSerialize functions

2024-01-11 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17805778#comment-17805778
 ] 

Jens Geyer commented on THRIFT-5753:


Maybe this helps. 
[https://stitcher.io/blog/php-version-stats-january-2023]

I personally have no opinion in this regard.

> PHP 8.1 deprecated warning about return type in jsonSerialize functions
> ---
>
> Key: THRIFT-5753
> URL: https://issues.apache.org/jira/browse/THRIFT-5753
> Project: Thrift
>  Issue Type: Bug
>  Components: PHP - Library
>Reporter: Pavel Kvach
>Priority: Minor
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> In PHP 8.1 a "mixed" return type was added to the 
> "JsonSerializable::jsonSerialize()" method.
> This triggers a deprecation warning for generated PHP classes:
> {code:java}
> Return type of TestClass::jsonSerialize() should either be compatible with 
> JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] 
> attribute should be used to temporarily suppress the notice in ...{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5752) Add TTransportFactoryInterface

2024-01-09 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5752.

Fix Version/s: 0.20.0
   Resolution: Fixed

> Add TTransportFactoryInterface
> --
>
> Key: THRIFT-5752
> URL: https://issues.apache.org/jira/browse/THRIFT-5752
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Library
>Affects Versions: 0.19.0
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Trivial
>  Labels: php
> Fix For: 0.20.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> I'm offer to add TTransportFactoryInterface for having a possibility to use 
> own implementation of TTransportFactory in TServer.
> I have a problem when I'm tried to make a TSimpleServer for client who used a 
> TFramedTransport. Current realization of TTransportFactory does not give me a 
> possibility to add a TFramedTransport as  a decorator for use TTransport



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5752) Add TTransportFactoryInterface

2024-01-06 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5752:
---
Fix Version/s: (was: 0.20.0)

> Add TTransportFactoryInterface
> --
>
> Key: THRIFT-5752
> URL: https://issues.apache.org/jira/browse/THRIFT-5752
> Project: Thrift
>  Issue Type: Improvement
>  Components: PHP - Library
>Affects Versions: 0.19.0
>Reporter: Volodymyr Panivko
>Assignee: Volodymyr Panivko
>Priority: Trivial
>  Labels: php
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> I'm offer to add TTransportFactoryInterface for having a possibility to use 
> own implementation of TTransportFactory in TServer.
> I have a problem when I'm tried to make a TSimpleServer for client who used a 
> TFramedTransport. Current realization of TTransportFactory does not give me a 
> possibility to add a TFramedTransport as  a decorator for use TTransport



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5749) Option to enable RTTI info

2023-12-18 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5749.

Resolution: Fixed

> Option to enable RTTI info
> --
>
> Key: THRIFT-5749
> URL: https://issues.apache.org/jira/browse/THRIFT-5749
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
> Fix For: 0.20.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> In some cases it would be helpful to have RTTI info available for generated 
> API interfaces.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5749) Option to enable RTTI info

2023-12-18 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17798152#comment-17798152
 ] 

Jens Geyer edited comment on THRIFT-5749 at 12/18/23 11:49 AM:
---

Enabling RTTI comes with small, but necessary changes to the generated code.

*With RTTI enabled:*
 - the interfaces derive from {{IBaseWithTypeInfo}} which in turn derives from 
{{IBase}}.
 - binary translates to {{TThriftBytes}} instead of {{System.TBytes}} to 
prevent against {{E2134 "TBytes has no typinfo"}}.

{{TThriftBytes}} is assignment compatible to {{TBytes}} but it may require 
other code changes, e.g. when using {{Length()}}.

Implementing/querying {{IBaseWithTypeInfo}}  is not necessary/foreseen, its 
only purpose is to add typeinfo.

*Compatibilty note:*

There may cases where activating RTTI leads to uncompileable code, presenting 
{{E2134 "TMyEnum has no typinfo"}} where {{TMyEnum}} is an "irregular" enum 
like {{TNumberz}} from the test suite. This is a known limitation of the Delphi 
RTTI system [1] and *NOT* a bug in Thrift. At this time, you simply cannot use 
RTTI with such enums, unless Embarcadero finally does that stuff right.

[1] 
https://stackoverflow.com/questions/1420562/why-do-i-get-type-has-no-typeinfo-error-with-an-enum-type


was (Author: jensg):
Enabling RTTI comes with small, but necessary changes to the generated code.

*With RTTI enabled:*
 - the interfaces derive from {{IBaseWithTypeInfo}} which in turn derives from 
{{{}IBase{}}}.
 - binary translates to {{TThriftBytes}} instead of {{System.TBytes}} to 
prevent against {{{}E2134 "TBytes has no typinfo"{}}}.

{{TThriftBytes}} is assignment compatible to {{TBytes}} but it may require 
other code changes, e.g. when using {{{}Length(){}}}.

Implementing/querying {{IBaseWithTypeInfo}} is not necessary/foreseen, its only 
purpose is to add typeinfo.

*Compatibilty note:*

There may cases where activating RTTI leads to uncompileable code, presenting 
{{E2134 "TMyEnum has no typinfo"}} where {{TMyEnum}} is an "irregular" enum 
like {{TNumberz}} from the test suite. This is a [well-known limitation of the 
Delphi RTTI 
system|[http://example.com|https://stackoverflow.com/questions/1420562/why-do-i-get-type-has-no-typeinfo-error-with-an-enum-type]]
 and *NOT* a bug in Thrift. At this time, you simply cannot use RTTI with such 
enums, unless Embarcadero finally does that stuff right.

> Option to enable RTTI info
> --
>
> Key: THRIFT-5749
> URL: https://issues.apache.org/jira/browse/THRIFT-5749
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
> Fix For: 0.20.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> In some cases it would be helpful to have RTTI info available for generated 
> API interfaces.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5749) Option to enable RTTI info

2023-12-18 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17798152#comment-17798152
 ] 

Jens Geyer commented on THRIFT-5749:


Enabling RTTI comes with small, but necessary changes to the generated code.

*With RTTI enabled:*
 - the interfaces derive from {{IBaseWithTypeInfo}} which in turn derives from 
{{{}IBase{}}}.
 - binary translates to {{TThriftBytes}} instead of {{System.TBytes}} to 
prevent against {{{}E2134 "TBytes has no typinfo"{}}}.

{{TThriftBytes}} is assignment compatible to {{TBytes}} but it may require 
other code changes, e.g. when using {{{}Length(){}}}.

Implementing/querying {{IBaseWithTypeInfo}} is not necessary/foreseen, its only 
purpose is to add typeinfo.

*Compatibilty note:*

There may cases where activating RTTI leads to uncompileable code, presenting 
{{E2134 "TMyEnum has no typinfo"}} where {{TMyEnum}} is an "irregular" enum 
like {{TNumberz}} from the test suite. This is a [well-known limitation of the 
Delphi RTTI 
system|[http://example.com|https://stackoverflow.com/questions/1420562/why-do-i-get-type-has-no-typeinfo-error-with-an-enum-type]]
 and *NOT* a bug in Thrift. At this time, you simply cannot use RTTI with such 
enums, unless Embarcadero finally does that stuff right.

> Option to enable RTTI info
> --
>
> Key: THRIFT-5749
> URL: https://issues.apache.org/jira/browse/THRIFT-5749
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
> Fix For: 0.20.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> In some cases it would be helpful to have RTTI info available for generated 
> API interfaces.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5750) deprecate "ansistr_binary_" option

2023-12-18 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5750:
--

 Summary: deprecate "ansistr_binary_" option
 Key: THRIFT-5750
 URL: https://issues.apache.org/jira/browse/THRIFT-5750
 Project: Thrift
  Issue Type: Improvement
  Components: Delphi - Compiler
Reporter: Jens Geyer
Assignee: Jens Geyer


That option was introduced earlier for some rather exotic use case which a) is 
not really relevant anymore and b) should not be part of a general library 
anymore.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (THRIFT-5750) deprecate "ansistr_binary_" option

2023-12-18 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5750?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-5750:
---
Priority: Minor  (was: Major)

> deprecate "ansistr_binary_" option
> --
>
> Key: THRIFT-5750
> URL: https://issues.apache.org/jira/browse/THRIFT-5750
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Minor
>
> That option was introduced earlier for some rather exotic use case which a) 
> is not really relevant anymore and b) should not be part of a general library 
> anymore.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Reopened] (THRIFT-5749) Option to enable RTTI info

2023-12-18 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer reopened THRIFT-5749:


Unfortunately the solution may break existing code which is not intended.

> Option to enable RTTI info
> --
>
> Key: THRIFT-5749
> URL: https://issues.apache.org/jira/browse/THRIFT-5749
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
> Fix For: 0.20.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> In some cases it would be helpful to have RTTI info available for generated 
> API interfaces.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5749) Option to enable RTTI info

2023-12-15 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5749.

Fix Version/s: 0.20.0
   Resolution: Fixed

> Option to enable RTTI info
> --
>
> Key: THRIFT-5749
> URL: https://issues.apache.org/jira/browse/THRIFT-5749
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
> Fix For: 0.20.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> In some cases it would be helpful to have RTTI info available for generated 
> API interfaces.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5749) Option to enable RTTI info

2023-12-15 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17797221#comment-17797221
 ] 

Jens Geyer commented on THRIFT-5749:


{code}-gen delphi:rtti{code}

> Option to enable RTTI info
> --
>
> Key: THRIFT-5749
> URL: https://issues.apache.org/jira/browse/THRIFT-5749
> Project: Thrift
>  Issue Type: Improvement
>  Components: Delphi - Compiler
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
>
> In some cases it would be helpful to have RTTI info available for generated 
> API interfaces.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (THRIFT-5749) Option to enable RTTI info

2023-12-15 Thread Jens Geyer (Jira)
Jens Geyer created THRIFT-5749:
--

 Summary: Option to enable RTTI info
 Key: THRIFT-5749
 URL: https://issues.apache.org/jira/browse/THRIFT-5749
 Project: Thrift
  Issue Type: Improvement
  Components: Delphi - Compiler
Reporter: Jens Geyer
Assignee: Jens Geyer


In some cases it would be helpful to have RTTI info available for generated API 
interfaces.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (THRIFT-5748) Microsoft.AspNetCore.Http.Abstractions is deprecated

2023-11-30 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5748?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17791847#comment-17791847
 ] 

Jens Geyer edited comment on THRIFT-5748 at 12/1/23 12:14 AM:
--

I tried a few things I found at the Microsoft docs and on SO. Neither one 
really worked fully, I always ended up with some loose ends and more trouble 
than that deprecation mark. The only way to get rid of it at least for net5+ 
(and maybe also for netstandard2.1 - not 100% sure yet) would be to physically 
split the assemblies again. That would reduce the deprecation warnings to the 
minimum possible extent. I don't see any way to get rid of it for all targets 
though.

Right now I'm out of ideas with this.  The *.csproj is already plastered with 
Conditions in 0.19.0.

Since I may for sure overlook something, I am absolutely open to input or 
proposals.  

PS: Thanks to MS for breaking your own "we do not change a thing in 
netstandard" rule.

 

 


was (Author: jensg):
I tried a few things I found at the Microsoft docs and on SO. Neither one 
really worked fully, I always ended up with some loose ends and more trouble 
than that deprecation mark. The only way to get rid of it at least for net5+ 
(and maybe also for netstandard2.1 - not 100% sure yet) would be to physically 
split the assemblies again. That would reduce the deprecation warnings to the 
minimum possible extent. I don't see any way to get rid of it for all targets 
though.

Right now I'm out of ideas with this.  The *.csproj is already plastered with 
Conditions in 0.19.0.

Since I may for sure overlook something, I am absolutely open to input or 
proposals.  

 

 

> Microsoft.AspNetCore.Http.Abstractions is deprecated
> 
>
> Key: THRIFT-5748
> URL: https://issues.apache.org/jira/browse/THRIFT-5748
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
>
> Microsoft.AspNetCore.Http.Abstractions 2.2.0 is deprecated



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (THRIFT-5748) Microsoft.AspNetCore.Http.Abstractions is deprecated

2023-11-30 Thread Jens Geyer (Jira)


[ 
https://issues.apache.org/jira/browse/THRIFT-5748?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17791847#comment-17791847
 ] 

Jens Geyer commented on THRIFT-5748:


I tried a few things I found at the Microsoft docs and on SO. Neither one 
really worked fully, I always ended up with some loose ends and more trouble 
than that deprecation mark. The only way to get rid of it at least for net5+ 
(and maybe also for netstandard2.1 - not 100% sure yet) would be to physically 
split the assemblies again. That would reduce the deprecation warnings to the 
minimum possible extent. I don't see any way to get rid of it for all targets 
though.

Right now I'm out of ideas with this.  The *.csproj is already plastered with 
Conditions in 0.19.0.

Since I may for sure overlook something, I am absolutely open to input or 
proposals.  

 

 

> Microsoft.AspNetCore.Http.Abstractions is deprecated
> 
>
> Key: THRIFT-5748
> URL: https://issues.apache.org/jira/browse/THRIFT-5748
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
>
> Microsoft.AspNetCore.Http.Abstractions 2.2.0 is deprecated



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5176) Apache Thrift 0.13.0.1 error when used with .NET Core 2.1.

2023-11-27 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5176.

Resolution: Duplicate

> Apache Thrift 0.13.0.1 error when used with .NET Core 2.1.
> --
>
> Key: THRIFT-5176
> URL: https://issues.apache.org/jira/browse/THRIFT-5176
> Project: Thrift
>  Issue Type: Bug
>  Components: netstd - Library
>Reporter: Mikel Blanchard
>Assignee: Jens Geyer
>Priority: Major
>
> We are using ApacheThrift 0.13.0.1 via the NuGet library in a project 
> targeting .NET Standard 2.0 & 2.1 in order to send telemetry data at Jaeger. 
> A user opened this issue: 
> [https://github.com/open-telemetry/opentelemetry-dotnet/issues/605]
> The 0.13.0.1 netstandard2.0 Thrift dll is targeting 
> Microsoft.AspNetCore.Http.Abstractions 2.2.0 which works for .NET Core 2.2+ 
> applications.
> We would like to target .NET Core 2+ in our library.
> We tried to use the 0.12.0.1 package but it isn't signed with a strong name.
> Would it be possible to downgrade that reference to 2.0.0 in the 0.13.0.1 
> package or re-publish 0.12.0.1 with a strong name?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (THRIFT-5176) Apache Thrift 0.13.0.1 error when used with .NET Core 2.1.

2023-11-27 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer resolved THRIFT-5176.

Resolution: Fixed

> Apache Thrift 0.13.0.1 error when used with .NET Core 2.1.
> --
>
> Key: THRIFT-5176
> URL: https://issues.apache.org/jira/browse/THRIFT-5176
> Project: Thrift
>  Issue Type: Bug
>  Components: netstd - Library
>Reporter: Mikel Blanchard
>Assignee: Jens Geyer
>Priority: Major
>
> We are using ApacheThrift 0.13.0.1 via the NuGet library in a project 
> targeting .NET Standard 2.0 & 2.1 in order to send telemetry data at Jaeger. 
> A user opened this issue: 
> [https://github.com/open-telemetry/opentelemetry-dotnet/issues/605]
> The 0.13.0.1 netstandard2.0 Thrift dll is targeting 
> Microsoft.AspNetCore.Http.Abstractions 2.2.0 which works for .NET Core 2.2+ 
> applications.
> We would like to target .NET Core 2+ in our library.
> We tried to use the 0.12.0.1 package but it isn't signed with a strong name.
> Would it be possible to downgrade that reference to 2.0.0 in the 0.13.0.1 
> package or re-publish 0.12.0.1 with a strong name?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Reopened] (THRIFT-5176) Apache Thrift 0.13.0.1 error when used with .NET Core 2.1.

2023-11-27 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer reopened THRIFT-5176:


> Apache Thrift 0.13.0.1 error when used with .NET Core 2.1.
> --
>
> Key: THRIFT-5176
> URL: https://issues.apache.org/jira/browse/THRIFT-5176
> Project: Thrift
>  Issue Type: Bug
>  Components: netstd - Library
>Reporter: Mikel Blanchard
>Assignee: Jens Geyer
>Priority: Major
>
> We are using ApacheThrift 0.13.0.1 via the NuGet library in a project 
> targeting .NET Standard 2.0 & 2.1 in order to send telemetry data at Jaeger. 
> A user opened this issue: 
> [https://github.com/open-telemetry/opentelemetry-dotnet/issues/605]
> The 0.13.0.1 netstandard2.0 Thrift dll is targeting 
> Microsoft.AspNetCore.Http.Abstractions 2.2.0 which works for .NET Core 2.2+ 
> applications.
> We would like to target .NET Core 2+ in our library.
> We tried to use the 0.12.0.1 package but it isn't signed with a strong name.
> Would it be possible to downgrade that reference to 2.0.0 in the 0.13.0.1 
> package or re-publish 0.12.0.1 with a strong name?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Reopened] (THRIFT-5748) Microsoft.AspNetCore.Http.Abstractions is deprecated

2023-11-27 Thread Jens Geyer (Jira)


 [ 
https://issues.apache.org/jira/browse/THRIFT-5748?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer reopened THRIFT-5748:


> Microsoft.AspNetCore.Http.Abstractions is deprecated
> 
>
> Key: THRIFT-5748
> URL: https://issues.apache.org/jira/browse/THRIFT-5748
> Project: Thrift
>  Issue Type: Improvement
>  Components: netstd - Library
>Reporter: Jens Geyer
>Assignee: Jens Geyer
>Priority: Major
>
> Microsoft.AspNetCore.Http.Abstractions 2.2.0 is deprecated



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


  1   2   3   4   5   6   7   8   9   10   >