[jira] [Commented] (THRIFT-4532) Avoid updating Thrift compiler generated code if the output has not changed

2018-04-18 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on THRIFT-4532:


bgedik commented on issue #1541: THRIFT-4532: Do not update previously 
generated output files if the contents have not changed
URL: https://github.com/apache/thrift/pull/1541#issuecomment-382522041
 
 
   In that case, this will break binary compatibility. Because, in C++, 
changing the type of a function parameter in a shared library API will require 
a recompilation of the dependent applications. Here is a good list of do's and 
don'ts for binary compatibility: 
https://community.kde.org/Policies/Binary_Compatibility_Issues_With_C%2B%2B
   
   It says 'changing any of the types of the arguments in the parameter list, 
including changing the const/volatile qualifiers of the existing parameters 
(instead, add a new method)' is among the things that break binary 
compatibility.
   
   @jeking3 If this is really a concern,  there is a simple solution to it. In 
``t_oop_generator`` we can keep the old versions as additional overload, 
forwarding them to the new versions. You' are in a better position to judge. My 
thinking is that it is better to document this in the release notes only.



This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Avoid updating Thrift compiler generated code if the output has not changed
> ---
>
> Key: THRIFT-4532
> URL: https://issues.apache.org/jira/browse/THRIFT-4532
> Project: Thrift
>  Issue Type: Improvement
>  Components: Compiler (General)
>Affects Versions: 0.11.0
>Reporter: Buğra Gedik
>Priority: Minor
> Fix For: 0.12.0
>
>
> We would like to contribute an improvement to the Thrift compiler that would 
> avoid regenerating target file(s) if they are going to be exactly the same as 
> the ones already present in the same place. This will help when running the 
> Thrift compiler in our build, especially in recursive mode.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (THRIFT-4532) Avoid updating Thrift compiler generated code if the output has not changed

2018-04-18 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on THRIFT-4532:


bgedik commented on issue #1541: THRIFT-4532: Do not update previously 
generated output files if the contents have not changed
URL: https://github.com/apache/thrift/pull/1541#issuecomment-382522041
 
 
   In that case, this will break binary compatibility. Because, in C++, 
changing the type of a function parameter in a shared library API will require 
a recompilation of the dependent applications. Here is a good list of do's and 
don'ts for binary compatibility: 
https://community.kde.org/Policies/Binary_Compatibility_Issues_With_C%2B%2B
   
   It says 'changing any of the types of the arguments in the parameter list, 
including changing the const/volatile qualifiers of the existing parameters 
(instead, add a new method)'
   
   @jeking3 If this is really a concern,  there is a simple solution to this. 
In ``t_oop_generator`` you can keep the old versions as overload, forwarding 
the calls to the new versions.



This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Avoid updating Thrift compiler generated code if the output has not changed
> ---
>
> Key: THRIFT-4532
> URL: https://issues.apache.org/jira/browse/THRIFT-4532
> Project: Thrift
>  Issue Type: Improvement
>  Components: Compiler (General)
>Affects Versions: 0.11.0
>Reporter: Buğra Gedik
>Priority: Minor
> Fix For: 0.12.0
>
>
> We would like to contribute an improvement to the Thrift compiler that would 
> avoid regenerating target file(s) if they are going to be exactly the same as 
> the ones already present in the same place. This will help when running the 
> Thrift compiler in our build, especially in recursive mode.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (THRIFT-4532) Avoid updating Thrift compiler generated code if the output has not changed

2018-04-18 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on THRIFT-4532:


bgedik commented on issue #1541: THRIFT-4532: Do not update previously 
generated output files if the contents have not changed
URL: https://github.com/apache/thrift/pull/1541#issuecomment-382522041
 
 
   In that case, this will break binary compatibility. Because, in C++, 
changing the type of a function parameter in a shared library API will require 
a recompilation of the dependent applications. Here is a good list of do's and 
don'ts for binary compatibility: 
https://community.kde.org/Policies/Binary_Compatibility_Issues_With_C%2B%2B
   
   It says 'changing any of the types of the arguments in the parameter list, 
including changing the const/volatile qualifiers of the existing parameters 
(instead, add a new method)'
   
   @jeking3 If this is really a concern,  there is a simple solution to it. In 
``t_oop_generator`` we can keep the old versions as additional overload, 
forwarding them to the new versions.



This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Avoid updating Thrift compiler generated code if the output has not changed
> ---
>
> Key: THRIFT-4532
> URL: https://issues.apache.org/jira/browse/THRIFT-4532
> Project: Thrift
>  Issue Type: Improvement
>  Components: Compiler (General)
>Affects Versions: 0.11.0
>Reporter: Buğra Gedik
>Priority: Minor
> Fix For: 0.12.0
>
>
> We would like to contribute an improvement to the Thrift compiler that would 
> avoid regenerating target file(s) if they are going to be exactly the same as 
> the ones already present in the same place. This will help when running the 
> Thrift compiler in our build, especially in recursive mode.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (THRIFT-4551) Add prettier for consistent JS code formatting

2018-04-18 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on THRIFT-4551:


NameFILIP opened a new pull request #1548: THRIFT-4551: Run 'yarn prettier' to 
consistently format JS files
URL: https://github.com/apache/thrift/pull/1548
 
 
   It's possible to add configuration using `prettier.config.js` to format the 
code in a specific way, but first see these:
   [Prettier issue](https://github.com/prettier/prettier/issues/40)
   [Dan Abramov talk (at 15:40)](https://youtu.be/G39lKaONAlA?t=939)


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Add prettier for consistent JS code formatting
> --
>
> Key: THRIFT-4551
> URL: https://issues.apache.org/jira/browse/THRIFT-4551
> Project: Thrift
>  Issue Type: Improvement
>Reporter: Filip Spiridonov
>Assignee: James E. King, III
>Priority: Minor
> Fix For: 0.12.0
>
>
> [Prettier|https://prettier.io/] is awesome. See 
> [why|https://prettier.io/docs/en/why-prettier.html] you should use it.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


Composer install issues fixed

2018-04-18 Thread Jake Farrell
Due to the recent repository move PHP users had been experiencing an issue
with composer installation of the apache/thrift package. After fixing the
URL in packagist a caching issue was encountered and
https://github.com/composer/packagist/issues/899 was opened. This issue has
now been resolved and composer is working again without the need for any
additional repository additions as a workaround.

$ docker run -it --rm composer /bin/bash

bash-4.3# composer require apache/thrift 0.11.0

./composer.json has been created

Loading composer repositories with package information

Updating dependencies (including require-dev)

Package operations: 1 install, 0 updates, 0 removals

  - Installing apache/thrift (0.11.0): Downloading (100%)

Writing lock file

Generating autoload files

If anyone else is still encountering issues please file a Jira issue or
email the dev or user lists and we will try to address them as fast as
possible.

Thank you
-Jake


[jira] [Commented] (THRIFT-4548) Supporting TBinaryProtocolAccelerated protocol when using TMultiplexedProcessor in Python

2018-04-18 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on THRIFT-4548:


nijm commented on issue #1547: THRIFT-4548: python binary accelerated protocol 
with multiplexing via decoration
URL: https://github.com/apache/thrift/pull/1547#issuecomment-382412166
 
 
   I've cleared most of the cross-test failures. It looks like the remaining 
failures are SSL-related timeouts (if I've interpreted the logs correctly). I 
don't think they're related to this change, but please let me know if they are.


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Supporting TBinaryProtocolAccelerated protocol when using 
> TMultiplexedProcessor in Python
> -
>
> Key: THRIFT-4548
> URL: https://issues.apache.org/jira/browse/THRIFT-4548
> Project: Thrift
>  Issue Type: Bug
>Reporter: Balazs Kemenes
>Priority: Major
>
> Supporting TBinaryProtocolAccelerated protocol when using 
> TMultiplexedProcessor in Python



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (THRIFT-4532) Avoid updating Thrift compiler generated code if the output has not changed

2018-04-18 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on THRIFT-4532:


mustafa-cosar commented on issue #1541: THRIFT-4532: Do not update previously 
generated output files if the contents have not changed
URL: https://github.com/apache/thrift/pull/1541#issuecomment-382287932
 
 
   @bgedik I don't think @jeking3  was talking about the maven plugin. From 
what I understand people can write their own generators and use it to generate 
their code.
   
   I'm not too sure about how it works but I didn't make any changes to 
`t_generator` base class since it was already using `ostream` parameters.
   Though I changed some function signatures to use `ostream` instead of 
`ofstream` in `t_oop_generator` and others.


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Avoid updating Thrift compiler generated code if the output has not changed
> ---
>
> Key: THRIFT-4532
> URL: https://issues.apache.org/jira/browse/THRIFT-4532
> Project: Thrift
>  Issue Type: Improvement
>  Components: Compiler (General)
>Affects Versions: 0.11.0
>Reporter: Buğra Gedik
>Priority: Minor
> Fix For: 0.12.0
>
>
> We would like to contribute an improvement to the Thrift compiler that would 
> avoid regenerating target file(s) if they are going to be exactly the same as 
> the ones already present in the same place. This will help when running the 
> Thrift compiler in our build, especially in recursive mode.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (THRIFT-4557) use RWLock instead of Lock

2018-04-18 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on THRIFT-4557:


jiajunhuang closed pull request #1545: THRIFT-4557: use RWMutex for better 
concurrency performance
URL: https://github.com/apache/thrift/pull/1545
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/lib/go/thrift/simple_server.go b/lib/go/thrift/simple_server.go
index 6035802516..b659e3d84a 100644
--- a/lib/go/thrift/simple_server.go
+++ b/lib/go/thrift/simple_server.go
@@ -34,7 +34,7 @@ import (
 type TSimpleServer struct {
closed int32
wg sync.WaitGroup
-   mu sync.Mutex
+   mu sync.RWMutex
 
processorFactory   TProcessorFactory
serverTransportTServerTransport
@@ -127,8 +127,8 @@ func (p *TSimpleServer) Listen() error {
 
 func (p *TSimpleServer) innerAccept() (int32, error) {
client, err := p.serverTransport.Accept()
-   p.mu.Lock()
-   defer p.mu.Unlock()
+   p.mu.RLock()
+   defer p.mu.RUnlock()
closed := atomic.LoadInt32()
if closed != 0 {
return closed, nil


 


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> use RWLock instead of Lock
> --
>
> Key: THRIFT-4557
> URL: https://issues.apache.org/jira/browse/THRIFT-4557
> Project: Thrift
>  Issue Type: Improvement
>  Components: Go - Library
>Reporter: gansteed
>Priority: Major
>
> use Read-Write Lock to protect `p.closed`



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (THRIFT-4558) reserved Csharp keywords are not escaped in some cases

2018-04-18 Thread Pierre Mignolet (JIRA)

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

Pierre Mignolet commented on THRIFT-4558:
-

[~jensg] thanks for quick feedback. Do you think it could be possible to 
backport my fix into 0.9.3. ?

> reserved Csharp keywords are not escaped in some cases
> --
>
> Key: THRIFT-4558
> URL: https://issues.apache.org/jira/browse/THRIFT-4558
> Project: Thrift
>  Issue Type: Bug
>  Components: C# - Compiler
>Affects Versions: 0.9.3, 0.10.0, 0.11.0
>Reporter: Pierre Mignolet
>Assignee: Pierre Mignolet
>Priority: Major
> Fix For: 0.12.0
>
>
> {code:java}
> struct MeMessage {
>  1: optional string fixed
>  7: required string unchecked
> }{code}
> Here reserved fixed C# keyword is escaped via @ but unchecked is not escaped 
> in C# code so code is just not compilable
> 
> I had a look in t_csharp_generator.cc and keyword are present and method 
> normalize_name should make the escape



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)