{"push_id":2548502929,"size":28,"distinct_size":28,"ref":"refs/heads/4.1","head":"a0ed6ec06ca605ed39b601355daedace93828032","before":"0b690a991fb86903188e769763225ce9f3099b4c","commits":[{"sha":"0f34d887b78029aa9ebc3b5faf9c9f257960425c","author":{"name":"Norman Maurer","email":"475492d9e56d4e9f737fa652c1d3f22ec1130ed7@googlemail.com"},"message":"Only reset readIsPending if outboundBuffer is not empty. (#7874)\n\nMotivation:\r\n\r\nWe need to ensure we only reset readInProgress if the outboundBuffer is not empty as otherwise we may miss to call fireChannelRead(...) later on when using the LocalChannel.\r\n\r\nModifications:\r\n\r\nAlso check if the outboundBuffer is not empty before setting readInProgress to false again\r\n\r\nResult:\r\n\r\nFixes https://github.com/netty/netty/issues/7855","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/0f34d887b78029aa9ebc3b5faf9c9f257960425c"},{"sha":"3ec29455af9642f6b20d7a309d3b6fb19c49b819","author":{"name":"Norman Maurer","email":"475492d9e56d4e9f737fa652c1d3f22ec1130ed7@googlemail.com"},"message":"Fix eternal loop in Recycler.WeakOrderQueue.Head#run() that blocks ObjectCleaner thread (#7878)\n\nMotivation:\r\n\r\nWhen trying to cleanup WeakOrderQueue by the ObjectCleaner we end up in an endless loop which will cause the ObjectCleaner to be not able to cleanup any other resources anymore.This bug was introduced by 6eb9674bf5ded128cb230a31987f14816b7f1886.\r\n\r\nModifications:\r\n\r\nCorrectly update link while cleanup\r\n\r\nResult:\r\n\r\nFixes https://github.com/netty/netty/issues/7877","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/3ec29455af9642f6b20d7a309d3b6fb19c49b819"},{"sha":"4cd39cc4b36f14424a0e25219a49b37d78f93bd2","author":{"name":"Anuraag Agrawal","email":"bb5e24af042f1d35fa939ac33c42b329ab4b22f8@gmail.com"},"message":"Filter DNS results so they only contain the expected type when multiple types are present. (#7875)\n\nMotivation:\r\n\r\nCurrently, if a DNS server returns a non-preferred address type before the preferred one, then both will be returned as the result, and when only taking a single one, this usually ends up being the non-preferred type. However, the JDK requires lookups to only return the preferred type when possible to allow for backwards compatibility.\r\n\r\nTo allow a client to be able to resolve the appropriate address when running on a machine that does not support IPv6 but the DNS server returns IPv6 addresses before IPv4 addresses when querying.\r\n\r\nModification:\r\n\r\nFilter the returned records to the expected type when both types are present.\r\n\r\nResult:\r\n\r\nAllows a client to run on a machine with IPv6 disabled even when a server returns both IPv4 and IPv6 results. Netty-based code can be a drop-in replacement for JDK-based code in such circumstances.\r\n\r\nThis PR filters results before returning them to respect JDK expectations.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/4cd39cc4b36f14424a0e25219a49b37d78f93bd2"},{"sha":"04fac00c8c98ed26c5a75887c8e7e53b1e1b68d0","author":{"name":"Norman Maurer","email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com"},"message":"[maven-release-plugin] prepare release netty-4.1.24.Final","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/04fac00c8c98ed26c5a75887c8e7e53b1e1b68d0"},{"sha":"b75f44db9a0d5255815bff076fe54dec72176ca5","author":{"name":"Norman Maurer","email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com"},"message":"[maven-release-plugin] prepare for next development iteration","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/b75f44db9a0d5255815bff076fe54dec72176ca5"},{"sha":"f9604eeff5019219ea2895556309735bb27077fe","author":{"name":"Bryce Anderson","email":"a6cc2cef7d25f27847876bdb81651755fcebacf0@twitter.com"},"message":"Motivation: (#7848)\n\nIt is possible to create streams in the half-closed state where the\r\nstream state doesn't reflect that the request headers have been sent by\r\nthe client or the server hasn't received the request headers. This\r\nstate isn't possible in the H2 spec as a half closed stream must have\r\neither received a full request or have received the headers from a\r\npushed stream. In the current implementation, this can cause the stream\r\ncreated as part of an h2c upgrade request to be in this invalid state\r\nand result in the omission of RST frames as the client doesn't believe\r\nit has sent the request to begin with.\r\n\r\nModification:\r\n\r\nThe `DefaultHttp2Connection.activate` method checks the state and\r\nmodifies the status of the request headers as appropriate.\r\n\r\nResult:\r\n\r\nFixes #7847.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/f9604eeff5019219ea2895556309735bb27077fe"},{"sha":"48fe14402a98ed600fa14348984e688af725561c","author":{"name":"Trustin Lee","email":"8efd86fb78a56a5145ed7739dcb00c78581c5375@motd.kr"},"message":"Update os-maven-plugin to 1.6.0 (#7884)\n\nMotivation:\r\n\r\nA new version of os-maven-plugin has been released.\r\n\r\nModifications:\r\n\r\n- Update os-maven-plugin from 1.5.0 to 1.6.0\r\n\r\nResult:\r\n\r\n- No visible changes\r\n- Feels good","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/48fe14402a98ed600fa14348984e688af725561c"},{"sha":"1b1f7677acec6a5ae06a552adc4c046b2ce2490d","author":{"name":"Rikki Gibson","email":"1eae18db07d3092e87097fadc13b4f232593c91c@gmail.com"},"message":"Implement isWritable and ensureWritable on ReadOnlyByteBufferBuf (#7883)\n\nMotivation:\r\n\r\nIt should be possible to write a ReadOnlyByteBufferBuf to a channel without errors. However, ReadOnlyByteBufferBuf does not override isWritable and ensureWritable, which can cause some handlers to mistakenly assume they can write to the ReadOnlyByteBufferBuf, resulting in ReadOnlyBufferException.\r\n\r\nModification:\r\n\r\nAdded isWritable and ensureWritable method overrides on ReadOnlyByteBufferBuf to indicate that it is never writable. Added tests for these methods.\r\n\r\nResult:\r\n\r\nCan successfully write ReadOnlyByteBufferBuf to a channel with an SslHandler (or any other handler which may attempt to write to the ByteBuf it receives).","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/1b1f7677acec6a5ae06a552adc4c046b2ce2490d"},{"sha":"010dbe3c734aff7b400c7be8666e5f0c055fca62","author":{"name":"Robin Wang","email":"cbcad22bb9e0ad2bf870d852d6dee07fc795a3a8@gmail.com"},"message":"Optimize space usage of FastThreadLocal (#7861)\n\nMotivation:\r\nA FastThreadLocal instance currently occupies 2 slots of InternalThreadLocalMap of every thread. Actually for a FastThreadLocalThread, it does not need to store cleaner flags of FastThreadLocal instances. Besides, using BitSet to store cleaner flags is also better for space usage.\r\n\r\nModification:\r\nUse BitSet to optimize space usage of FastThreadLocal.\r\n\r\nResult:\r\nAvoid unnecessary slot occupancy. Cleaner flags are now stored into a BitSet.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/010dbe3c734aff7b400c7be8666e5f0c055fca62"},{"sha":"b47fb817991b42ec8808c7d26538f3f2464e1fa6","author":{"name":"Norman Maurer","email":"475492d9e56d4e9f737fa652c1d3f22ec1130ed7@googlemail.com"},"message":"EventLoop.schedule with big delay fails (#7402)\n\nMotivation:\r\n\r\nUsing a very huge delay when calling schedule(...) may cause an Selector error when calling select(...) later on. We should gaurd against such a big value.\r\n\r\nModifications:\r\n\r\n- Add guard against a very huge value.\r\n- Added tests.\r\n\r\nResult:\r\n\r\nFixes [#7365]","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/b47fb817991b42ec8808c7d26538f3f2464e1fa6"},{"sha":"eaf177133638b528a8d644b7d0bf3665cd90a18c","author":{"name":"Norman Maurer","email":"475492d9e56d4e9f737fa652c1d3f22ec1130ed7@googlemail.com"},"message":"Don't use VM.maxDirectMemory() on z/OS to retrieve direct memory limit. (#7886)\n\nMotivation:\r\n\r\nOn z/OS netty initializes this value with 64M, even the direct accessible memory is actually unbounded.\r\n\r\nModifications:\r\n\r\nSkip usage of VM.maxDirectMemory() on z/OS.\r\n\r\nResult:\r\n\r\nMore correct direct memory limit detection. Fixes https://github.com/netty/netty/issues/7654.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/eaf177133638b528a8d644b7d0bf3665cd90a18c"},{"sha":"f4d7e8de140048047299808bb7e707c15342b826","author":{"name":"Norman Maurer","email":"475492d9e56d4e9f737fa652c1d3f22ec1130ed7@googlemail.com"},"message":"Respect MAX_MESSAGES_PER_READ in LocalChannel / LocalServerChannel. (#7885)\n\nMotivation:\r\n\r\nLocalChannel / LocalServerChannel did not respect read limits and just always read all of the messages.\r\n\r\nModifications:\r\n\r\n- Correct respect MAX_MESSAGES_PER_READ settings\r\n- Add unit tests\r\n\r\nResult:\r\n\r\nFixes https://github.com/netty/netty/issues/7880.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/f4d7e8de140048047299808bb7e707c15342b826"},{"sha":"b818852cdb0ee56ce3cf939e2faa538d519baabd","author":{"name":"Devrim Şahin","email":"eadd3b64a329e2b17eea5803930ca22efc10d949@gmail.com"},"message":"Update DatagramPacket.recipient() to return the actual destination IP (#7879)\n\nMotivation:\r\n\r\nDatagramPacket.recipient() doesn't return the actual destination IP, but the IP the app is bound to.\r\n\r\nModification:\r\n\r\n- IP_RECVORIGDSTADDR option is enabled for UDP sockets, which allows retrieval of ancillary information containing the original recipient.\r\n- _recvFrom(...) function from transport-native-unix-common/src/main/c/netty_unix_socket.c is modified such that if IP_RECVORIGDSTADDR is set, recvmsg is used instead of recvfrom; enabling the retrieval of the original recipient.\r\n- DatagramSocketAddress also contains a 'local' address, representing the recipient.\r\n- EpollDatagramChannel is updated to return the retrieved recipient address instead of the address the channel is bound to.\r\n\r\nResult:\r\n\r\nFixes #4950.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/b818852cdb0ee56ce3cf939e2faa538d519baabd"},{"sha":"c0ae5e697c3c4fdf81f0cfc199d18aacd3b8ecba","author":{"name":"Alexey Kachayev","email":"6f01c95906f90f1a93fd08bb66da46cad029cf95@gmail.com"},"message":"DnsAddressResolverGroup to use pluggable DnsNameResolverBuilder (#7793)\n\nMotivation:\r\n\r\nRight now to customize DNS name resolver when using DnsAddressResolverGroup\r\none should subclass implementation and override newNameResolver method when\r\nin fact it's possible to collect all settings in a DnsNameResolverBuilder\r\ninstance. Described in #7749.\r\n\r\nModifications:\r\n\r\n- Added new constructor for DnsNameResolverBuilder in order to delay\r\n  EventLoop specification\r\n\r\n- Added copy() method to DnsNameResolverBuilder to provide an immutable\r\n  copy of the builder\r\n\r\n- Added new single-argument constructor for DnsAddressResolverGroup and\r\n  RoundRobinDnsAddressResolverGroup accepting DnsNameResolverBuilder\r\n  instance\r\n\r\n- DnsAddressResolverGroup to build a new resolver using DnsNameResolverBuilder\r\n  given instead of creating a new one\r\n\r\n- Test cases to check that changing channelFactory after the builder was passed\r\n  to create a DnsNameResolverGroup would not propagate to the name resolver\r\n\r\nResult:\r\n\r\nMuch easier to customize DNS settings w/o subclassing DnsAddressResolverGroup","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/c0ae5e697c3c4fdf81f0cfc199d18aacd3b8ecba"},{"sha":"dfeb4b15b587bf5298555e969a01378853efab8f","author":{"name":"Norman Maurer","email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com"},"message":"Fix IllegalReferenceCountException when using Http2MultiplexCodec and a DefaultHttp2GoAwayFrame with a non empty ByteBuffer is received. (#7894)\n\nMotivation:\r\n\r\nWe incorrectly called frame.release() in onHttp2GoAwayFrame which could lead to IllegalReferenceCountExceptions.  The call of release() is inappropriate because the fireChannelRead() in onHttp2Frame() will handle it.\r\n\r\nModifications:\r\n\r\n- Not call frame.release()\r\n- Add a unit test\r\n\r\nResult:\r\n\r\nFxies https://github.com/netty/netty/issues/7892.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/dfeb4b15b587bf5298555e969a01378853efab8f"},{"sha":"b5fde3e0cdddfa96d65e85c3699e7ac8f0fd3ebc","author":{"name":"Norman Maurer","email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com"},"message":"Add #ifdef statements so the compilation of the native code not fails on MacOS (#7895)\n\nMotivation:\r\n\r\nb818852cdb0ee56ce3cf939e2faa538d519baabd added support for IP_RECVORIGDSTADDR but did not include any #ifdef statements to ensure its usable at all (which is not the case on MacOS).\r\n\r\nModifications:\r\n\r\nAdd #ifdef statements to check for IP_RECVORIGDSTADDR.\r\n\r\nResult:\r\n\r\nCompilation works again on MacOS.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/b5fde3e0cdddfa96d65e85c3699e7ac8f0fd3ebc"},{"sha":"0261e0066216358b8acd390da96c85aaa8713b91","author":{"name":"Norman Maurer","email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com"},"message":"Allow to call AbstractDiskHttpData.setContent(Unpooled.EMPTY_BUFFER) multiple times. (#7890)\n\nMotivation:\r\n\r\nIt should be possible to call setContent(Unpooled.EMPTY_BUFFER) multiple times just like its possible to do the same with a non empty buffer.\r\n\r\nModifications:\r\n\r\n- Correctly reset underlying storage if called multiple times.\r\n- Add tests\r\n\r\nResult:\r\n\r\nFixes https://github.com/netty/netty/issues/6418","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/0261e0066216358b8acd390da96c85aaa8713b91"},{"sha":"bd800fa7e7065dd74125f34298b69bb279f4be8e","author":{"name":"Daniel Schobel","email":"afc5e40f7e0ce50d0caf1701580b337509dfc04f@gmail.com"},"message":"Add null-check to Htt2FrameCodec#consumeBytes. (#7899)\n\nMotivation:\r\n\r\nStreams can be deregistered so we can't assume their existence in the stream map.\r\n\r\nModifications:\r\n\r\nAdd a null-check in case a stream has been deregistered.\r\n\r\nResult:\r\n\r\nFixes #7898.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/bd800fa7e7065dd74125f34298b69bb279f4be8e"},{"sha":"c60263e8a3336aae182fdde2dd0202a667cba880","author":{"name":"Norman Maurer","email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com"},"message":"Correctly handle responses with status 205 and payload. (#7891)\n\nMotivation:\r\n\r\nHTTP responses with status of 205 should not contain a payload. We should enforce this.\r\n\r\nModifications:\r\n\r\nCorrectly handle responses with status 205 and payload by set Content-Length: 0 header and stripping out the content.\r\n\r\nResult:\r\n\r\nFixes https://github.com/netty/netty/issues/7888","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/c60263e8a3336aae182fdde2dd0202a667cba880"},{"sha":"095dadcbec7cd056ea1c0947d57d9084fae6d897","author":{"name":"Norman Maurer","email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com"},"message":"Fix race in ChannelReadHandler used during LocalChannel testing. (#7904)\n\nMotivation:\r\n\r\nChannelReadHandler is used in tests added via f4d7e8de140048047299808bb7e707c15342b826. In the handler we verify the number of messages we receive per read() call but missed to sometimes reset the counter which resulted in exceptions.\r\n\r\nModifications:\r\n\r\nCorrectly reset read counter in all cases.\r\n\r\nResult:\r\n\r\nNo more unexpected exceptions when running LocalChannel tests.","distinct":true,"url":"https://api.github.com/repos/violetagg/netty/commits/095dadcbec7cd056ea1c0947d57d9084fae6d897"}]}
{"actor":{"display_login":"violetagg"}}