implicit-fallthrough warnings while builing http-tests

Beast/v68
gcc 7.0.1 -std=c++17
boost 1.63
So many warnings, you can't see real errors...
In file included from /home/mike/workspace/Beast/include/beast/http/serializer.hpp:333:0,
                 from /home/mike/workspace/Beast/include/beast/http.hpp:24,
                 from /home/mike/workspace/Beast/include/beast.hpp:14,
                 from /home/mike/workspace/Beast/./example/doc/http_examples.hpp:8,
                 from /home/mike/workspace/Beast/test/http/doc_examples.cpp:8:
/home/mike/workspace/Beast/include/beast/http/impl/serializer.ipp: In member function ‘void beast::http::serializer<isRequest, Body, Fields, ChunkDecorator>::get(beast::error_code&, Visit&&) [with Visit = beast::http::detail::write_lambda<beast::test::pipe::stream>&; bool isRequest = false; Body = file_body; Fields = beast::http::basic_fields<std::allocator<char> >; ChunkDecorator = beast::http::no_chunk_decorator]’:
/home/mike/workspace/Beast/include/beast/http/impl/serializer.ipp:65:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
         s_ = do_init;
         ^~
/home/mike/workspace/Beast/include/beast/http/impl/serializer.ipp:69:5: note: here
     case do_init:
     ^~~~
/home/mike/workspace/Beast/include/beast/http/impl/serializer.ipp:89:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
         BOOST_FALLTHROUGH;
                          ^
/home/mike/workspace/Beast/include/beast/http/impl/serializer.ipp:92:5: note: here
     case do_header:
     ^~~~
/home/mike/workspace/Beast/include/beast/http/impl/serializer.ipp:98:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
         s_ = do_header_only;
         ^~
/home/mike/workspace/Beast/include/beast/http/impl/serializer.ipp:99:5: note: here
     case do_header_only:
     ^~~~
/home/mike/workspace/Beast/include/beast/http/impl/serializer.ipp:110:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
         s_ = do_body + 1;
         ^~

Is there a way to disable the warning? What do you suggest I do about this? I don't have gcc-7 in the Traivs matrix nor do I develop with it. I'm a good citizen and using BOOST_FALLTHROUGH in the right spots. So how do we fix it?

For me with boost 1.63 the macro is defined as:
#ifndef BOOST_FALLTHROUGH
#  define BOOST_FALLTHROUGH ((void)0)
#endif

That's not nice... For C++17 i would expect something like
#  define BOOST_FALLTHROUGH [[fallthrough]]

I tried this
        case do_deflate:
            BOOST_ASSERT(! d.ws.wr_block_);
            d.ws.wr_block_ = &d;
            [[fallthrough]];
//            BOOST_FALLTHROUGH;
        case do_deflate + 1:

and the warning for case do_deflate + 1 disappears.

I am not sure, that boost will fix it in near future.
Looked at
https://github.com/boostorg/config/blob/develop/include/boost/config/detail/suffix.hpp
It the same macro.

So the only way i see is to define our own macro using
BOOST_FALLTHROUGH
as default and
[[fallthrough]]
for gcc -std=c++17.

How do you detect C++17 using the preprocessor?

google says
__cplusplus >= 201500
could work.

This does not work, sorry.
Even this does not work too:
#if defined(__GNUC__) && (__GNUC__ >= 7)
# define BEAST_FALLTHROUGH [[fallthrough]]
#else
# define BEAST_FALLTHROUGH BOOST_FALLTHROUGH
#endif

and this does not work too:
# define BEAST_FALLTHROUGH [[fallthrough]]

So the next option is to disable the warning.
I think there are pragmas to do that...

And i think i was incorrect about my builds.
I use gcc 7 which has c++17 support.
But the makefiles generated by cmake will not use it, right?
Nevertheless. I will investigate later...

Nice article:
https://dzone.com/articles/implicit-fallthrough-in-gcc-7

I don't see any #pragma there. I can disable the warning in the CMakeLists.txt and Jamfile, but someone who is using Beast in their own project is still going to get the warning unless they also disable it.

No. The article was about fallthrough in general.
To disable warnings via pragmas in code:

https://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html
https://stackoverflow.com/questions/3378560/how-to-disable-gcc-warnings-for-a-few-lines-of-code

That are the pragmas i was talking about...
As i said, i will investigate after work.
Do you have a gcc-7 for testing?!

Do you have a gcc-7 for testing?!

Nope.

The pragmas seems to work:
At beginning of problematic file:
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"

and at end:
#pragma GCC diagnostic pop
Example:
#ifndef BEAST_HTTP_IMPL_SERIALIZER_IPP
#define BEAST_HTTP_IMPL_SERIALIZER_IPP

#include <beast/http/error.hpp>
#include <beast/http/status.hpp>
#include <beast/core/detail/config.hpp>
#include <boost/assert.hpp>
#include <ostream>

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"

namespace beast {
namespace http {

template<bool isRequest, class Body,
    class Fields, class ChunkDecorator>
void
serializer<isRequest, Body, Fields, ChunkDecorator>::
frdinit(std::true_type)
{
    frd_.emplace(m_, m_.version, m_.method());
}

...
    default:
        BOOST_ASSERT(false);
    case do_complete:
        break;

    go_complete:
        s_ = do_complete;
        break;
    }
}

} // http
} // beast

#pragma GCC diagnostic pop

#endif

How does clang and msvc handle these pragmas?!
What about gcc not knowing this warning to ignore?
So may be a hard switch for gcc >= 7 in cmake/bjam
-Wimplicit-fallthrough=0
is the better option?!

Try this:
#include <boost/config.hpp>

#if BOOST_WORKAROUND(BOOST_GCC, >= 70000)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
#endif

...

#if BOOST_WORKAROUND(BOOST_GCC, >= 70000)
#pragma GCC diagnostic pop
#endif

For C++ files it worked. Be aware! I had to change about 20 files! Mostly ipp files...
But there is a file
Beast/test/benchmarks/nodejs-parser/http_parser.c
which does not like the macros.

mike@workstation:~/workspace/Beast/bin$ git status
Auf Branch v69
Änderungen, die nicht zum Commit vorgemerkt sind:
  (benutzen Sie "git add <Datei>..."    You can set the compiler switch on that one, I'm not sure how to do it on just one target in both cmake and bjam:
https://github.com/vinniefalco/Beast/blob/master/test/benchmarks/CMakeLists.txt
https://github.com/vinniefalco/Beast/blob/master/test/benchmarks/Jamfile

Do you want to submit a pull request?

I replaced the usage of
BOOST_WORKAROUND
macro by using the guard
#if defined(__GNUC__) && (__GNUC__ >= 7)
Example:
#ifdef _MSC_VER
# pragma warning (push)
# pragma warning (disable: 4127) // conditional expression is constant
# pragma warning (disable: 4244) // integer conversion, possible loss of data
#endif

#if defined(__GNUC__) && (__GNUC__ >= 7)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
#endif

#include "nodejs-parser/http_parser.c"

#ifdef _MSC_VER
# pragma warning (pop)
#endif

#if defined(__GNUC__) && (__GNUC__ >= 7)
#pragma GCC diagnostic pop
#endif

As you can see:

no #include <boost/config.hpp> needed
works for c stuff too

So... no warnings at all :-)

Modified files:
	geändert:       ../example/common/detect_ssl.hpp
	geändert:       ../include/beast/core/impl/buffered_read_stream.ipp
	geändert:       ../include/beast/http/impl/basic_parser.ipp
	geändert:       ../include/beast/http/impl/read.ipp
	geändert:       ../include/beast/http/impl/serializer.ipp
	geändert:       ../include/beast/http/impl/write.ipp
	geändert:       ../include/beast/http/serializer.hpp
	geändert:       ../include/beast/websocket/detail/mask.hpp
	geändert:       ../include/beast/websocket/impl/close.ipp
	geändert:       ../include/beast/websocket/impl/ping.ipp
	geändert:       ../include/beast/websocket/impl/read.ipp
	geändert:       ../include/beast/websocket/impl/write.ipp
	geändert:       ../include/beast/zlib/detail/inflate_stream.hpp
	geändert:       ../test/benchmarks/nodejs_parser.cpp
	geändert:       ../test/websocket/websocket_async_echo_server.hpp

Boost libraries must use <boost/config.hpp> there are compilers which pretend to be GCC so __GNUC__ is unreliable.

Ouch!!

Actually upon re-reading your message, it looks like you are suggesting to use __GNUC__ only for nodejs_parser.cpp? Thats okay. We just have to use boost/config.hpp in header files in beast/include. If you submit a pull request, I'll merge it.

Added pull request
include/beast/http/serializer.hpp has conficts...
I think it's your change
# if BOOST_WORKAROUND(BOOST_GCC, < 50000) || BOOST_VERSION < 106400

==>
# if BOOST_WORKAROUND(BOOST_GCC, < 50000) && BOOST_VERSION < 106400

i missed

Resolved conflict using the "&&" variant.
Now: "This branch cannot be rebased due to conflicts"
It drives me crazy :D

Stop then. I have another approach

I rewrote the branch, I think this will solve the warnings once and for all:
https://github.com/vinniefalco/Beast/commits/v69

Nope.
#if BOOST_VERSION >= 106500 || ! defined(BOOST_GCC) || BOOST_GCC < 70000
# define BEAST_FALLTHROUGH BOOST_FALLTHROUGH
#else
# define BEAST_FALLTHROUGH _attribute__((fallthrough))
#endif

should be
#if BOOST_VERSION >= 106500 || ! defined(BOOST_GCC) || BOOST_GCC < 70000
# define BEAST_FALLTHROUGH BOOST_FALLTHROUGH
#else
# define BEAST_FALLTHROUGH __attribute__((fallthrough))
#endif

Note __attribute__ instead of _attribute__
I fixed it local. But all warnings are up agian :-(

LOL... g-d...

You said you're on "gcc 7.0.1"?
Can you repro this defect here?
https://wandbox.org/

#include <iostream>
#include <cstdlib>

#define BEAST_FALLTHROUGH [[fallthrough]]

void foo(int i)
{
    int n = 0;
    switch (i)
    {
        case 0:
            {
            ++n;
            BEAST_FALLTHROUGH;
            }
        case 1:
            ++n;
            break;
    }
}

int main()
{
    std::cout << "Hello, Wandbox!" << std::endl;
    foo(rand());
}

Works with gcc 7.1.0 and 8.0.0
And #define BEAST_FALLTHROUGH __attribute__((fallthrough)) works too.

Okay so what action is required?

I would like to update gcc!!

But 7.0.1 is the highest version in repository for Ubuntu 17.04 :-(

If you use bjam, you can add using gcc : : : <compileflags>-Wno-implicit-fallthrough ; to ~/user-config.jam.

Is this resolved by v69 then?

I am totally confused now. Tried to get bjam running.
So this works well with bjam:

using gcc : 7 : : <cxxflags>-march=native <cxxflags>-ftemplate-depth=256 <cxxflags>-std=c++17 ;
using gcc : 6 : : <cxxflags>-march=native <cxxflags>-ftemplate-depth=256 <cxxflags>-std=c++14 ;
using clang : 4 : : <cxxflags>-march=native <cxxflags>-std=c++1z ;

WTH was building with cmake generated Makefile?! Don't know...

Got 2 warnings with gcc 7:
test/core/static_string.cpp: In member function ‘void beast::static_string_test::testGeneral()’:
test/core/static_string.cpp:1394:32: warning: ‘*((void*)& s4 +8)’ may be used uninitialized in this function [-Wmaybe-uninitialized]
             BEAST_EXPECT(s4[0] == 'x');
                                ^~
test/core/static_string.cpp:1395:32: warning: ‘*((void*)& s4 +9)’ may be used uninitialized in this function [-Wmaybe-uninitialized]
             BEAST_EXPECT(s4[1] == 'y');
                                ^~

And this one with clang 4:
test/zlib/zlib-1.2.8/inflate.c:1507:61: warning: shifting a negative signed value is undefined [-Wshift-negative-value]
    if (strm == Z_NULL || strm->state == Z_NULL) return -1L << 16;
                                                        ~~~ ^

But implicit-fallthrough hell has gone... So i suggest closing this issue.

test/zlib/zlib-1.2.8/inflate.c:1507:61:

That's normal zlib. The static_string, no idea.

You should not need <cxxflags>-ftemplate-depth=256, is that still needed?

Is default in my site-config.jam
For other heavy stuff (e.g. boost spirit)

using gcc : : : <cxxflags>-march=native <cxxflags>-std=c++17 ;
works fine too ;-)


globally installed jest won't run tests not in tests dir

If a test file lives anywhere but _tests_ jest silently fails to run it even when passed the filename directly. This is extremely frustrating behavior. It took me ages to realize I had accidentally named my test folder _test_ (minus the s).
So, suggested changes to behavior:

jest will attempt to run any file it is passed directly

or

jest will display an error when it can't find a tests directory.

Either of these would have saved me about two hours of frustration.

@iandanforth do you think you can submit a pull request for this? :)

We added this for 0.9.0.


chore(deps): bump nodejs

Applied mkpr on undefined
sed s/14.18.[0-9]/14.18.3/

:tada: This PR is included in version 1.12.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Shader 3.0 - enum hints for uniforms

Godot 3.x
Would be great to have enums or something similar for uniforms in shader lang.
So it would be easier to add switchable functionality, instead documenting for user which int does what.

wont this encourage the use of If statements? branching is discouraged in shaders

@nunodonato
Hmmm I didn't though about it. Maybe.
It's waste of processing power, but 3.0 already supports if statements.
Question is, do we make it smarter than user. Or there is no need to make interface for it harder to use, when somebody decides to use it.
We can always write in new shader tutorial to be aware of using if. Usually it can be avoided using scripting. For example changing shader in node, not shader code in shader itself, although compiling multiple shaders also slows things down.

@n-pigeon actually, you can do a sort of branching in shaders, but you shouldn't use ifs. Usually you mix() 2 variables based on a 3rd one which is the "conditional".
Consider a splatmap, for example. Based on the color of the map, you paint different textures, but you never use IFs to decide.
I think @reduz said that the new shader language would also include a few helper functions to make comparing things easier.

@nunodonato
Thats how you mix shaders and there will also be na if.
if texMask:     col1 else:     col2
if texMask * cusotmBlend:     col1 else:     col2
if / enum would be more for changing shader behaviors more globally by Inspector.
Sometimes you have to use if, trick is to figure out how not to :P

Well there is (probably it's part of GLSL) mix() you can use it for blending. It also probably uses some sort of if (although probably )

Ups. Accidentally closed xD

kicking to 3.1, low priority

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!


help

please embedding a plugin named "quill image resize" plugin,  thanks.
when i use VUE3 and Vite build the project, i got a error....other plugin can't use

@ChinVision It is possible, but with some tweaks, because the plugin supports Quill v1. Please run https://vue-quilly.vercel.app/#tab=image-resize and see https://github.com/alekswebnet/vue-quilly/blob/main/demo/src/components/ImageResizeEditor.vue

it's work! thanks!

It's just a "quick fix" solution. It would be much better to upgrade quill-image-resize-module to make it compatible with Quill 2 https://github.com/kensnyder/quill-image-resize-module/issues/156


comparing SOAL XML response with REST JSON response

I am looking to compare SOAP XML response with REST JSON response. I tried xmlplath and xpath functions and it didn't work. wondering is there a function available in Karate to achieve this?

@Cpens please ask such questions on stack overflow. here is an example: https://stackoverflow.com/a/53474845/143475

Thank you so much for your response. I just saw the stack overflow.
However, I do have a question/clarification on what I am looking for is to compare soap xml response with JSON response.

I was thinking to convert the whole soap xml response to JSON and to compare it with the JSON. is this even possible or recommended idea to do using Karate?
I referred to xml.feature in your github, tried out and couldn't make it work the way i wanted to
wanted to check with you if whatever i am trying to do is the correct way to do it.
Ask is to compare two responses to perform api validations

Any suggestion is greatly appreciated
Thanks,
Cpens
.

yes you can convert xml to json and then compare. if you are not able to figure this out with the existing examples, please ask a question on stack overflow and be clear about what you tried, refer: https://stackoverflow.com/help/how-to-ask
all the best.

Hi Peter,
Thank you so much for your reply. I was able to make some progress related
to the previous post and  for that reason I didn't post any follow up
question to my previous email, However I am facing an issue now with using
karate.match with what I am trying now. This is what I am doing :

Once I have SOAP XML response vs REST JSON response, both responses do
have multi lists/arrays structure inside the both responses.
i created JS function to do the comparison of each XML Field and JSon
field comparison

In this context I am trying to use Karate.match (actual ==
expected) facing an error saying match is unidentified and not found with
standard Karate error

org.graalvm.polyglot.PolyglotException while comparing response
I am tried *, And, Def in front of the match keyword but none of
it works

looking how to call/use match option inside JS function.

Can you please suggest?
Thanks,
Chandra
On Sat, Feb 3, 2024 at 1:17 PM Peter Thomas @.***>
wrote:

yes you can convert xml to json and then compare. if you are not able to
figure this out with the existing examples, please ask a question on stack
overflow and be clear about what you tried, refer:
https://stackoverflow.com/help/how-to-ask
all the best.
—
Reply to this email directly, view it on GitHub
https://github.com/karatelabs/karate/issues/2495#issuecomment-1925433686,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFJVZ5GOW2QCJXDS5GF2OW3YR2ENJAVCNFSM6AAAAABCXZII3KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRVGQZTGNRYGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Thanks,
Chandrachood Penumalli.
Cell-<PHONE_NUMBER>

@Cpens sorry I can't suggest anything without a working example: https://stackoverflow.com/help/how-to-ask


Dart team ask me report this error

Dart SDK Version (dart --version)
Dart VM version: 2.2.0 (Tue Feb 26 15:04:32 2019 +0100) on "macos_x64"

Whether you are using Windows, MacOSX, or Linux (if applicable)
macOS Mojave 10.14.4

Whether you are using Chrome, Safari, Firefox, Edge (if applicable)
flutter run --enable-software-rendering
in Nexus 5X avd with Android 9.0 x86

Missing some or all of the above might make the issue take longer or be
impossible to act on.

I don't know if it's really an issue.

Compiler message:
Warning: Tried to initialize from a previous compilation (build/app.dill), but couldn't.
Error message was 'RangeError (index): Index out of range: no indices are valid: 0'.
Stacktrace included '#0      Uint8List.[] (dart:typed_data/runtime/libtyped_data_patch.dart:2177:7)
#1      BinaryBuilder.readByte (package:kernel/binary/ast_from_binary.dart:95:27)
#2      BinaryBuilder.readUint32 (package:kernel/binary/ast_from_binary.dart:115:13)
#3      BinaryBuilder.readComponent (package:kernel/binary/ast_from_binary.dart:426:17)
#4      IncrementalCompiler.initializeFromDill (package:front_end/src/fasta/incremental_compiler.dart:499:14)

#5      IncrementalCompiler.computeDelta. (package:front_end/src/fasta/incremental_compiler.dart:133:34)

#6      CompilerContext.runInContext.. (package:front_end/src/fasta/compiler_context.dart:122:46)
#7      new Future.sync (dart:async/future.dart:224:31)
#8      CompilerContext.runInContext. (package:front_end/src/fasta/compiler_context.dart:122:19)
#9      _rootRun (dart:async/zone.dart:1124:13)
#10     _CustomZone.run (dart:async/zone.dart:1021:19)
#11     _runZoned (dart:async/zone.dart:1516:10)
#12     runZoned (dart:async/zone.dart:1463:12)
#13     CompilerContext.runInContext (package:front_end/src/fasta/compiler_context.dart:121:12)
#14     IncrementalCompiler.computeDelta (package:front_end/src/fasta/incremental_compiler.dart:116:20)

#15     IncrementalCompiler.compile (package:vm/incremental_compiler.dart:50:44)

#16     FrontendCompiler.compile. (package:vm/frontend_server.dart:339:67)
#17     new Future. (dart:async/future.dart:176:37)
#18     _rootRun (dart:async/zone.dart:1120:38)
#19     _CustomZone.run (dart:async/zone.dart:1021:19)
#20     _CustomZone.runGuarded (dart:async/zone.dart:923:7)
#21     _CustomZone.bindCallbackGuarded. (dart:async/zone.dart:963:23)
#22     _rootRun (dart:async/zone.dart:1124:13)
#23     _CustomZone.run (dart:async/zone.dart:1021:19)
#24     _CustomZone.bindCallback. (dart:async/zone.dart:947:23)
#25     Timer._createTimer. (dart:async/runtime/libtimer_patch.dart:21:15)
#26     _Timer._runTimers (dart:isolate/runtime/libtimer_impl.dart:382:19)
#27     _Timer._handleMessage (dart:isolate/runtime/libtimer_impl.dart:416:5)
#28     _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)
'.
This might be a bug.
The Dart team would greatly appreciate it if you would take a moment to report this problem at http://dartbug.com/new.
If you are comfortable with it, it would improve the chances of fixing any bug if you included the file file:///var/folders/zb/jmv5h59n4tg_r6lb56yf1w480000gn/T/initialize_from.dillm9NSTX/initialize_from.dill.gz in your error report, but be aware that this file includes your source code.
Either way, you should probably delete the file so it doesn't use unnecessary disk space.

initialize_from.dill.gz

Thank you for reporting this.
This is caused by the file we try to initialize from being empty. This can happen if for instance launching several instances working on the same file (e.g. one instance is overwriting the file while the other is reading it). As long as it doesn't happen all the time it's nothing to worry about.
I recently landed d8739b582b5e7bcc84747cf37e925c3c79f29642 to make sure we don't even try to load when the file is empty, and this warning will thus be avoided.


operator datadog-operator-certified-rhmp (0.0.0)

Update operator datadog-operator-certified-rhmp (0.0.0).Pull request triggered by<EMAIL_ADDRESS>

/pipeline restart operator-hosted-pipeline


⚠ RPC server - Astar has degraded performance

In 87f508c, RPC server - Astar ($ASTAR_RPC_URL) experienced degraded performance:

HTTP code: 429
Response time: 263 ms

Resolved: RPC server - Astar performance has improved in 1be7297 after 10 minutes.


README.md references unknown anchor GetMany

https://github.com/tidwall/gjson/blob/6ee9f877d683381343bc998c137339c7ae908b86/README.md?plain=1#L57
Line 57 in README.md references a non-existent anchor.

Fixed. Thanks!


fix resource method names

Hi
i made this PR to solve the issue #31

This will creare routes names:
  GET|HEAD        users ............................................................. users › UsersController@index
  POST            users ....................................................... users.store › UsersController@store
  PUT|PATCH       users/{user} .............................................. users.update › UsersController@update
  DELETE          users/{user} ............................................ users.destroy › UsersController@destroy

Could you add a test to ensure that this works?

I had previously updated the test will register routes with the correct http verbs for resourceful methods by adding the route name.
Now I've also added the test will register routes with the correct names for resourceful methods without adding already existing name for uri to verify that when a URI is specified with the same name, the name is not duplicated. This is because to address this issue, the URI could be specified through Route uri, which would also generate the name. In this case, the name was being duplicated, but with this modification, it is filtered if it's duplicate at the end of the name.
The errors reported by phpstan are not caused by these PR and are also present in the main branch.

Thanks!


fields with boolean doesn't behave as expected

I'm using Chrome 44.
Upload.upload({
    ...,
    fields: {
        'description': $scope.description,
        'public': $scope.public
    },
    file: $scope.file,
    sendFieldsAs: 'json-blob'
})

This results in:
------WebKitFormBoundaryEbPaAvKBm7IlxkjB
Content-Disposition: form-data; name="description"

foo
------WebKitFormBoundaryEbPaAvKBm7IlxkjB
Content-Disposition: form-data; name="public"; filename="blob"
Content-Type: application/json

------WebKitFormBoundaryEbPaAvKBm7IlxkjB
Content-Disposition: form-data; name="file"; filename="test.jpg"
Content-Type: image/jpeg

------WebKitFormBoundaryEbPaAvKBm7IlxkjB--

As you can see: description got sent fine, but public got a filename and no visible content.
In my opinion this should be this:
------WebKitFormBoundaryEbPaAvKBm7IlxkjB
Content-Disposition: form-data; name="public"
Content-Type: application/json

true

Yes regular post and form data post are different. You could set those fields as data option and then on the server side get the data field and convert it from json string to object. There is no way to set the content-type of individual form data element unless they are blob.
You can also give sendFieldsAs:json-blob a try might work.

I already use sendFieldsAs:json-blob.


Feature/options allow body

Proposed changes
CORS Middleware don't send empty response when http method is OPTIONS
Linked with https://github.com/adonisjs/adonis-cors/issues/13
Types of changes

Edit handle middleware function
Fix test set all cors headers when request is options no more relevant with allowing body in response

Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

I'm not sure for breaking change, but I don't think so.
Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[X] I have read the CONTRIBUTING doc
[X] Lint and unit tests pass locally with my changes
[X] I have added tests that prove my fix is effective or that my feature works.
[ ] I have added necessary documentation (if appropriate)

Coverage decreased (-0.07%) to 95.726% when pulling 1abf5fa20d8ccc3a0383f6691d1199da656bd1a2 on tpoisseau:feature/options-allow-body into 4fdd74dafb3faa09d9b7cc6a42de0b3d4f092bfa on adonisjs:develop.


Password Validator

Password Validator
This script checks if a given password is strong based on the following criteria:

At least 8 characters long
Contains at least one uppercase letter
Contains at least one lowercase letter
Contains at least one digit
Contains at least one special character from the set !@#$%^&*(),.?":{}|<>

Functions

is_strong_password(password): Returns True if the password meets all the criteria, otherwise returns False.
main(): Prompts the user to enter a password and prints whether the password is strong or not.

How to run

Ensure you have Python installed on your system.
Save the script to a file, for example, password.py.
Open a terminal or command prompt.
Navigate to the directory where the script is saved.
Run the script using the command: python password.py.
Enter a password when prompted to check its strength.

Requirements

Python 3.x
No additional libraries are required.

Please review this and merge @sumanth-0


gitlab: 11.6.3 -> 11.7.3

Motivation for this change
New version with bugfixes.
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS

[X] Tested execution of all binary files (usually in ./result/bin/)
[X] Using in production with a ~15 user team.

@jslight90 can you update it to the latest version? There was a release just a while ago:
https://about.gitlab.com/2019/02/05/critical-security-release-gitlab-11-dot-7-dot-4-released/
@flokli how did the testing go?

bumped to 11.7.4, and tested locally on my sandbox instance.

backported to 18.09 in 12b1462924a6445537075003c0c8705ecbff3556.


fix a small nit

tag name in gh is case-sensitive, The previous link will return 404.

Codecov Report

Merging #13200 into master will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #13200   +/-   ##
=======================================
  Coverage   42.01%   42.02%
=======================================
  Files         683      683
  Lines       75215    75215
=======================================
+ Hits        31605    31606    +1
  Misses      38443    38443
+ Partials     5167     5166    -1

Impacted Files
Coverage Δ

modules/charset/charset.go
68.53% <0.00%> (-4.50%)
:arrow_down:

services/pull/pull.go
41.27% <0.00%> (+0.49%)
:arrow_up:

services/pull/check.go
52.55% <0.00%> (+0.72%)
:arrow_up:

modules/queue/unique_queue_disk_channel.go
55.38% <0.00%> (+1.53%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 25b7766...0bf3cb4. Read the comment docs.


Add support for MPIPL/FADUMP tests

Signed-off-by: Pridhiviraj Paidipeddi<EMAIL_ADDRESS>

retest this please

Looks like this has bitrotted a little, @pridhiviraj could you update this please?

Sam Mendoza-Jonas<EMAIL_ADDRESS>writes:

Looks like this has bitrotted a little, @pridhiviraj could you update
this please?

Since @pridhiviraj is no longer at IBM, we'll probably have to find
someone else to take over shepherding this into the tree
--
Stewart Smith
OPAL Architect, IBM.

Since @pridhiviraj is no longer at IBM, we'll probably have to find someone else to take over
shepherding this into the tree

@stewart, Yeah. I was hoping we will get someone to take over this. Worst case, I will sit someday and rework this patchset.
-Vasant

Picked this one, refracted, tested and have submitted PR @ #477

@stewart-ibm @sammj pls close this PR.
-Vasant

@stewart-ibm yes this can be closed. I am working on this in other PR pointed above.

Can one of the admins verify this patch?

This has been superceded by the PowerNVDump test.


Add Custom Annotations Block to Service

This is a follow up to https://github.com/localstack/helm-charts/pull/48/files. We are simply adding an annotations block to the service resource as we did in the ingress resource.

I have also opened a PR in the upstream repo: https://github.com/localstack/helm-charts/pull/52


update Configuring Transport Level Security docs

Step 1 in [1] (Enabling SSL protocols and ciphers in ThriftAuthenticationService) must be removed as it is not relevant now for 3.1 and later versions
[1] - https://apim.docs.wso2.com/en/3.1.0/install-and-setup/setup/security/configuring-transport-level-security/#enabling-ssl-protocols-and-ciphers-in-thriftauthenticationservice

@dushansilva , do we need to do a similar config in the deployment.toml ? If yes, what is the config?

No config needed for deployment.toml

Closing the issue since the PRs are merged for 3.x docs and already removed from 4.0.0 docs.


fix: add config for mainnet decentralized subgraph

Need to be careful about merging this as it's a breaking change. Will need to release SDK v2.0.0


Support PVs with object keys instead of buckets

/feature
Is your feature request related to a problem? Please describe.
I would like to use one bucket to provision multiple volumes (PVs), each of which is mapped into a folder in the S3 bucket. Creating a different S3 bucket for each volume is just not feasible
Describe the solution you'd like in detail
A clear and concise description of what you want to happen.
In the PV specs:
kind: PersistentVolume
metadata:
  name: s3-pv
spec:
  capacity:
    storage: 1200Gi # ignored, required
  accessModes:
    - ReadWriteMany # supported options: ReadWriteMany / ReadOnlyMany
  mountOptions:
    - allow-delete
    - region eu-central-1
  csi:
    driver: s3.csi.aws.com # required
    volumeHandle: my-volume
    volumeAttributes:
      bucketName: my-bucket
      directory: path/to/directory # optional

Describe alternatives you've considered
Using EFS, but handling files in the EFS volumes are not as easy.
Additional context
Add any other context or screenshots about the feature request here.

Hi @nash-3as. Mountpoint supports specifying a prefix for the bucket you want to mount (under mountOptions). That would look like this:
kind: PersistentVolume
metadata:
  name: s3-pv
spec:
  capacity:
    storage: 1200Gi # ignored, required
  accessModes:
    - ReadWriteMany # supported options: ReadWriteMany / ReadOnlyMany
  mountOptions:
    - allow-delete
    - region eu-central-1
    - prefix: prefix/in/my-bucket/ # must end in "/"
  csi:
    driver: s3.csi.aws.com # required
    volumeHandle: my-volume
    volumeAttributes:
      bucketName: my-bucket

Then you could configure multiple volumes with the same bucket but different prefixes.
Does that cover your use case?

I hope this covers your use case, @nabouzidan-3as.
We've also added a prefix to the static provisioning example:
https://github.com/awslabs/mountpoint-s3-csi-driver/blob/39c86e04c71d6d23771f34d15e2edc6141e6b89b/examples/kubernetes/static_provisioning/static_provisioning.yaml#L1-L18
Closing this as this is addressed and example added to documentation.


Using allOf: to define composite schemas

I would like to understand the extent of using the allOf: construct in OpenAPI; it may be different than what it is defined in JSON schema.
I would like to define a composite schema by re-using two or more independent schema definitions. It seems that once I add more than one definition to the allOf: array, then 1) the resulting object is not rendered in either Swagger Editor or Swagger UI the way I expect it to be, and 2) there are cascading syntax errors in the editor when defining additional OpenAPI objects.
I think the answer is this [for OpenAPI]:

the allOf: construct is limited to take only one schema reference; the "polymorphism examples" supply its best use.
the allOf: construct should not be used to define the schema of a response: use the oneOf: construct to select one schema from several alternatives.

It is #2 that is what I would like to do: to avoid defining intermediate schemas and just "compose" a response given re-useable schema definitions.
Here is an example:
openapi-13.txt

+1 for this feature.
Creating composite schemas would keep the definition DRY.

This feature introduces multiple inheritance which comes with the Diamond Problem.
Schema from original post:
Hypermedia:
  title: hypermedia
  type: object
  allOf:
    - $ref: #/components/schemas/MediaMetadata
    - $ref: #/components/schemas/Images
    - $ref: #/components/schemas/Video
    - $ref: #/components/schemas/Tags
    - $ref: #/components/schemas/Reviews

If any one of these referenced schemas contains the same properties we will run into issues.
This can be avoided by explicitly placing each of these references in their own sub-object, making a the Hypermedia class more explicitly a composition of these types.
Hypermedia:
  title: hypermedia
  type: object
    properties:
      mediaMetadata:
         $ref: #/components/schemas/MediaMetadata
      images:
         $ref: #/components/schemas/Images
      video:
         $ref: #/components/schemas/Video
      tags:
         $ref: #/components/schemas/Tags
      reviews:
         $ref: #/components/schemas/Reviews

I'm not voting against this feature with this comment, just making clear the problem that comes along with it. Perhaps having separate operators for composition and inheritance would satisfy more parties, maybe something like allOf and childOf, respectively.

OP is was satisfied with an answer, and the other requests mentioned should be directed to the JSON Schema project.


[4.x] Add SQL Bindings

@soninaren

I can't seem to build the bundle locally anymore (both here and in the 4.x-preview branch). I get this error :

Unhandled exception. System.IO.IOException: The file 'C:\src\azure-functions-extension-bundles\bin\NetCoreApp3_win_x8 6\bin_v3\win-x86\System.Configuration.ConfigurationManager.dll' already exists.
Which seems related to the changes you made a while back to fix the dependency issue. Do you know anything about this or how to fix it?

I noticed that this branch is currently copying over the ConfigurationManager DLL (which is good)

https://github.com/Azure/azure-functions-extension-bundles/blob/v4.x/build/BuildSteps.cs#L191
But it's not copying over the Permissions DLL the 4.x-preview branch is. This wasn't something we needed so should be fine for our case, but just wanted to make sure that was expected.

Closing the PR and creating a new one to resolve the permissions issue

@Charles-Gagnon, you need to open a PR from a branch on the repo. As PR from fork will fail as it would not have permissions.

Closed in favor of https://github.com/Azure/azure-functions-extension-bundles/pull/250


feat(wit): add WIT for email provider

Feature or Problem

A while back we did a hackathon where I developed this provider for sending external emails... Would be nice to upstream this and get some support in main for this prototype interface!
This commit adds the WIT interface for the wasmcloud:email provider, particularly the outgoing email sending functionality
Related Issues

Release Information

Consumer Impact

Testing

Unit Test(s)

Acceptance or Integration

Manual Verification

@vados-cosmonic Love this, but it is definitely making me think we need a standard pattern for creating and sharing things that don't quite feel like they belong in the monorepo. Let's do some brainstorming as a community and figure out what we want to do!

Hey @thomastaylor312 thanks! Yeah we should probably figure out where interfaces that aren't necessary in the monorepo go!


Parameterized type as body parameter results in incorrect generated JSON

Hi,
I'm using swagger annotations with JAX-RS and have an 'Pet' resource.  This allows me to use the same resource for Cats, Dogs, Platypuses, etc. while segregating out creation/modification from retrieval.
A typical endpoint looks like this (with Swagger annotations);
    @Path("/{id}")
    @Produces(MediaType.APPLICATION_JSON)
    @ApiOperation(value = "update a pet", response = GetPet.class)
    public GetPet update(
            @ApiParam(value = "pet ID", required = true)  @PathParam("id") final String petId,
            @ApiParam(type = "com.example.api.model.UpsertPet", value = "Pet to update", required = true) UpsertPet<Pet> upsertPet
    ) {
        return petService.updatePet(id, upsertPet);
    }

In the Swagger class ParameterProcessor on method applyAnnotations, I can see that BodyParameters are handled differently to say QueryParams or PathParams. The type, although defined in the annotation for the body param (see example above), is ignored by this method and not set at all (lines 219-275).
This results in swagger parsing the UpsertPet<Pet> parameter as UpsertPetPet. Using <? extends Pet> results in the same behavior and there doesn't seem to be a workaround other than manually editing the resulting JSON. As you will see in the JSON below, both UpsertPet and UpsertPetPet are produced. UpsertPet by looking at the heirarchy (UpsertCat, UpsertDog) and UpsertPetPet by looking at the resource.
I think this is missing from Swagger core and needs to be added, unless anyone can suggest how to get this to work while respecting the annotation. Removing the parameterized type <Pet> or <? extends Pet> is not really an option since it introduces unchecked casting which I'm looking to avoid.
Below is the JSON produced.
{
  "swagger": "2.0",
  "info": {
    "version": "1.0.2"
  },
  "host": "localhost:8180",
  "basePath": "/api/v1",
  "tags": [
    {
      "name": "hello"
    }
  ],
  "schemes": [
    "http"
  ],
  "paths": {
    "/api/v1/{id}": {
      "get": {
        "tags": [
          "hello"
        ],
        "summary": "get a cat",
        "description": "",
        "operationId": "getById",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "pet ID",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/GetPet"
            }
          }
        }
      },
      "put": {
        "tags": [
          "hello"
        ],
        "summary": "update a get-cat",
        "description": "",
        "operationId": "update",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "pet ID",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "body",
            "description": "Pet to update",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpsertPetPet"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/GetPet"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "hello"
        ],
        "summary": "get a get-cat",
        "description": "",
        "operationId": "delete",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "pet ID",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/GetPet"
            }
          }
        }
      }
    },
    "/api/v1": {
      "get": {
        "tags": [
          "hello"
        ],
        "summary": "get a cat collection",
        "description": "",
        "operationId": "getCollection",
        "produces": [
          "application/json"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/GetPet"
            }
          }
        }
      },
      "post": {
        "tags": [
          "hello"
        ],
        "summary": "create a get-cat",
        "description": "",
        "operationId": "create",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "pet ID",
            "required": true,
            "type": "string"
          },
          {
            "in": "body",
            "name": "body",
            "description": "Pet to update",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpsertPetPet"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/GetPet"
            }
          }
        }
      }
    },
    "/api/v1/world": {
      "get": {
        "tags": [
          "hello"
        ],
        "summary": "hello world",
        "description": "",
        "operationId": "test",
        "parameters": [],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "type": "string"
            }
          }
        }
      }
    }
  },
  "definitions": {
    "GetCat": {
      "allOf": [
        {
          "$ref": "#/definitions/GetPet"
        },
        {
          "type": "object",
          "properties": {
            "breed": {
              "type": "string",
              "description": "cat breed"
            }
          }
        }
      ]
    },
    "GetDog": {
      "allOf": [
        {
          "$ref": "#/definitions/GetPet"
        },
        {
          "type": "object",
          "properties": {
            "nickname": {
              "type": "string",
              "description": "dog nickname"
            }
          }
        }
      ]
    },
    "GetPet": {
      "type": "object",
      "discriminator": "type",
      "properties": {
        "name": {
          "type": "string",
          "description": "Pet Name"
        }
      }
    },
    "UpsertCat": {
      "allOf": [
        {
          "$ref": "#/definitions/UpsertPet"
        },
        {
          "type": "object",
          "properties": {
            "breed": {
              "type": "string",
              "description": "cat breed"
            }
          }
        }
      ]
    },
    "UpsertDog": {
      "allOf": [
        {
          "$ref": "#/definitions/UpsertPet"
        },
        {
          "type": "object",
          "properties": {
            "nickname": {
              "type": "string",
              "description": "dog nickname"
            }
          }
        }
      ]
    },
    "UpsertPet": {
      "type": "object",
      "discriminator": "type",
      "properties": {
        "name": {
          "type": "string",
          "description": "Pet Name"
        }
      }
    },
    "UpsertPetPet": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Pet Name"
        }
      }
    }
  }
}

What's wrong with the output? What's missing?

There's nothing missing. Its the way the endpoint method has been interpreted. Effectively there are duplicate descriptors generated;
"UpsertPet": {
      "type": "object",
      "discriminator": "type",
      "properties": {
        "name": {
          "type": "string",
          "description": "Pet Name"
        }
      }
    },
    "UpsertPetPet": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Pet Name"
        }
      }
    }

UpsertPet describes the hierarchy (i.e the parent class of UpsertCat and UpsertDog).
UpsertPetPet describes the body parameter of the update method on the pet endpoint.
Based on the annotation used I would expect it to be UpsertPet to describe the body parameter as well as the hierarchy (i.e. Body Parameters should also respect the type attribute of the annotation). Alternatively it could look at the type of the body parameter (in this case UpsertPet) realize it's a parameterized type and use UpsertPet as the raw class name.
I think respecting the annotation's type property is the better solution as it's already handled for PathParam/QueryParam/FormParam based parameters, just not Body parameters.
The problem here is when using Swagger CodeGen to process the JSON output and generate a Client stub, I end up with UpsertPet and UpsertPetPet. UpsertPet I can't do anything with in terms of interacting with the API, only UpsertPetPet is accepted on any endpoint. To fix it I have to manually edit the JSON by removing UpsertPetPet and changing any references to UpsertPetPet to UpsertPet.


feat: add kuraudo-io/pulumi-symbiosis

This PR is to hopefully get the kuraudo-io/pulumi-symbiosis Terraform bridge provider published.
I know there's stuff missing from this, so any input on what I'm missing is appreciated. :)

ive added a logo for when this lands
https://github.com/pulumi/pulumi-hugo/pull/2267

@susanev Thanks! :D

Hello @hbjydev To have your components published on the Pulumi Registry, you still have to do 2 things in this order:

add a docs folder in your repo here containing two files. These files provide the content for the Overview and Installation & Configuration tabs for your listing in the Pulumi Registry. See the Unifi example.

_index.md: general description of your package.
installation-configuration.md: any documentation on the providers you use for your components.

create a new release of your components. The Git tag should point to a revision containing the docs folder

Please notify us here when this is done and we will merge this PR.

@ringods That's all done now, so it should be sorted. I made the tag v0.1.5 and sdk/v0.1.5 as per the docs :)
All packages are published


[RFR] Fix more tests.

Purpose
Fix many API tests.

TestCollectionNodeLinkDetail: test_can_not_delete_collection_public_node_pointer_unauthorized

404 != 403

TestCollectionNodeLinkDetail: test_can_not_delete_collection_private_registration_link_unauthorized

404 != 403

TestCollectionNodeLinkDetail: test_delete_public_node_pointer_authorized

404 != 2** or 3**

LinkedRegistrationsList.get_queryset is filtering in python
TestCollectionBulkUpdate: test_bulk_update_collections_one_not_found

Trying to put an integer in a lowercasecharfield

TestCollectionLinksBulkCreate: test_bulk_creates_node_pointers_collection_to_non_contributing_node

Node has not attribute child, it’s getting a node instead of a NodeRelation

TestBulkDeleteCollectionNodeLinks: test_bulk_delete_link_that_is_not_linked_to_correct_node

AssertionError: u'Could not find all objects to delete.' != 'Node link does not belong to the requested node.’

TestBulkDeleteCollectionNodeLinks: test_bulk_delete_link_that_is_not_linked_to_correct_node

AssertionError: u’Could not find all objects to delete.’ != ‘Node link does not belong to the requested node.’

TestBulkDeleteCollectionNodeLinks: test_bulk_deletes_collection_node_pointers_fails_if_bad_auth

400 != 403

TestCollectionRelationshipNodeLinks: test_delete_with_put_empty_array

node link does not belong to the requested node

TestNodeFiltering: test_filtering_tags

FieldError: Unsupported lookup 'iexact' for CharField or join on the field not permitted.
api/nodes/views.py:348: in get_queryset return Node.find(query)

TestNodeRelationshipNodeLinks: test_delete_with_put_empty_array

ValueError: Node link does not belong to the requested node.

osf/models/mixins.py:332: in rm_node_link

TestNodeFilesList: test_returns_node_files_list

KeyError: 'etag'

osf/models/files.py:750: in update

TestRegistrationEmbeds: test_embed_children

AssertionError: 0 != 2

assert_equal(len(embeds['children']['data']), 2)

TestNodeLogList: test_log_create_on_private_project

TypeError: can't subtract offset-naive and offset-aware datetimes

tests/base.py:489: in assert_datetime_equal

TestNodeLogList: test_log_create_on_public_project

TypeError: can’t subtract offset-naive and offset-aware datetimes

tests/base.py:489: in assert_datetime_equal

TestNodeLogList: test_remove_addon

api_tests/nodes/views/test_node_logs.py:111: in test_remove_addon

TypeError: 'RelatedManager' object is not iterable

TestRegistrationForksList: test_authenticated_contributor_can_access_private_registration_forks_list

AttributeError: 'NoneType' object has no attribute '_id'
api_tests/registrations/views/test_registration_forks.py:114

TestNodeCreate: test_create_component_inherit_contributors_with_unregistered_contributor

TypeError: add_unregistered_contributor() got an unexpected keyword argument 'existing_user'
api/nodes/serializers.py:372: in create

TestWithdrawnRegistrations: test_withdrawn_registrations_display_limited_fields

AssertionError: '2016-11-11T19:23:12.717213Z' != u'2016-11-11T19:23:12.717213'

api_tests/registrations/views/test_withdrawn_registrations.py:123

Changes

Side effects

Ticket

@sloria If you want to have a look and merge I'm at a stopping point. There are still about 5 tests failing outside of search.

I've noted all the failing API tests and am fixing them in another branch. I'll make a WIP PR and reference it here.

The new PR is #6570

Pass finished.

I responded to this CR in #6570. Which also includes these commits, so I might just close this and merge the other one.

Sounds good to me


⚠ Bofrost.at has degraded performance

In 8d47812, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1737 ms

Resolved: Bofrost.at performance has improved in 92895db.


Vertex color does not support transparency

Setting a mesh's vertex colors to all RGBA(1, 1, 1, 0.5) results in a white opaque color with Transparent/Dither XSToon shader variants.
I'm not sure if this is unsupported or a bug, but it would be nice to have if it's not too much trouble

Discovered this is not supported in Unity, sorry for the false issue


Add Norfolk, VA

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: Restrict Police Funding, Invest in Norfolk Social Services
Message (Don't forget to replace the [x]'s with your information!)
My name is [YOUR NAME], and I am a resident of Norfolk. This past week, our nation has been gripped by protests calling for rapid and meaningful reevaluation of the role of policing in our communities and an end to institutionalized racism. Accordingly, it has come to my attention that the budget for 2021 is being decided as these protests continue.
Norfolk PD receives a disproportionate amount of our city's financial resources. In FY 2020, the Norfolk PD adopted $77,618,592 in total expenditures while the entire Norfolk Community Services Board's adopted expenditures totaled $25,078,661.  While we’ve been spending extraordinary amounts on policing, we have not seen significant improvements to safety, homelessness, mental health, or affordability in our city.
I call on you to meaningfully restrict the Norfolk PD budget and instead use those extraordinary resources towards solving homelessness, which is felt most by our Black neighbors and veterans. Social programs and education generally have been shown to be much more effective at promoting safety and social equity than policing and incarceration.
We can be a beacon for other cities to follow if only we have the courage to change.
Sincerely,
[YOUR NAME] [YOUR ADDRESS] [YOUR EMAIL] [YOUR PHONE NUMBER]

edits in bold:

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: [INSERT UNIQUE SUBJECT LINE]
Message (Don't forget to replace the [x]'s with your information!)
My name is [YOUR NAME], and I am a resident of Norfolk. This past week, our nation has been gripped by protests calling for rapid and meaningful reevaluation of the role of policing in our communities and an end to institutionalized racism. Accordingly, it has come to my attention that the budget for 2021 is being decided as these protests continue.
Norfolk PD receives a disproportionate amount of our city's financial resources. In FY 2020, the Norfolk PD adopted $77,618,592 in total expenditures while the entire Norfolk Community Services Board's adopted expenditures totaled $25,078,661. While we’ve been spending extraordinary amounts on policing, we have not seen significant improvements to safety, homelessness, mental health, or affordability in our city.
I call on you to meaningfully restrict the Norfolk PD budget and instead use those extraordinary resources towards solving homelessness, which is felt most by our Black neighbors and veterans. Social programs and education generally have been shown to be much more effective at promoting safety and social equity than policing and incarceration.
We can be a beacon for other cities to follow if only we have the courage to change.
Sincerely,
[YOUR NAME]
[YOUR ADDRESS]
[YOUR EMAIL]
[YOUR PHONE NUMBER]

Confirmed statistics from https://www.norfolk.gov/DocumentCenter/View/50347/FY-2020-Adopted-Budget-Document?bidId=
This email looks good, just updated some minor format issues.
@skullface @mahrer could someone please update this to ready for PR?

on it


Container exits with success code if no sedml is found

Example: https://run.biosimulations.dev/simulations/603d35ff5d7132300f9edd13#tab=log
The container exited successfully, resulting in the slurm job being successful as well. While true, the user might expect this to be a failure.

This seems to be caused by biosimulators_utils, which gives a warning in this case rather than an error.


[shardformer]Fix lm parallel.

📌 Checklist before creating the PR

[ ] I have created an issue for this PR for traceability
[ ] The title follows the standard format: [doc/gemini/tensor/...]: A concise description
[ ] I have added relevant tags if possible for us to better distinguish different PRs

🚨 Issue number

Link this PR to your issue with words like fixed to automatically close the linked issue upon merge
e.g. fixed #1234, closed #1234, resolved #1234

📝 What does this PR do?

Summarize your work here.
if you have any plots/diagrams/screenshots/tables, please attach them here.

Fix lm parallel.
💥 Checklist before requesting a review

[ ] I have linked my PR to an issue (instruction)
[ ] My issue clearly describes the problem/feature/proposal, with diagrams/charts/table/code if possible
[ ] I have performed a self-review of my code
[ ] I have added thorough tests.
[ ] I have added docstrings for all the functions/methods I implemented

⭐ Do you enjoy contributing to Colossal-AI?

[ ] 🌝 Yes, I do.
[ ] 🌚 No, I don't.

Tell us more if you don't enjoy contributing to Colossal-AI.

tests have passed.


WFLY-4562 Deprecate Infinispan container/cache start mode

Drop start="EAGER|LAZY" from 3.0 version of schema.
Drop support for start="EAGER" from 3.0.0 version of model.
https://issues.jboss.org/browse/WFLY-4562

Linux Build 6362 is now running using a merge of 3a008aaf2a05f7831ea13934abe7781a2c535744

Windows Build 1442 is now running using a merge of 3a008aaf2a05f7831ea13934abe7781a2c535744

Linux with security manager Build 1290 is now running using a merge of 3a008aaf2a05f7831ea13934abe7781a2c535744

Linux with security manager Build 1290 outcome was SUCCESS using a merge of 3a008aaf2a05f7831ea13934abe7781a2c535744
Summary: Tests passed: 826, ignored: 358 Build time: 0:05:21

Linux Build 6362 outcome was FAILURE using a merge of 3a008aaf2a05f7831ea13934abe7781a2c535744
Summary: Tests failed: 4 (4 new), passed: 2855, ignored: 414 Build time: 0:46:03
Build problems:
Failed tests detected
Failed tests
org.jboss.as.test.clustering.cluster.management.CacheTestCase(SYNC-tcp).testDistributedCache: <no details avaliable>

org.jboss.as.test.clustering.cluster.management.CacheTestCase(SYNC-tcp).testReplicatedCache: <no details avaliable>

org.jboss.as.test.clustering.cluster.management.CacheTestCase(SYNC-tcp).testLocalCache: <no details avaliable>

org.jboss.as.test.clustering.cluster.management.CacheTestCase(SYNC-tcp).testInvalidationCache: <no details avaliable>

Windows Build 1442 outcome was FAILURE using a merge of 3a008aaf2a05f7831ea13934abe7781a2c535744
Summary: Tests failed: 4 (4 new), passed: 2855, ignored: 414 Build time: 0:48:40
Build problems:
Failed tests detected
Failed tests
org.jboss.as.test.clustering.cluster.management.CacheTestCase(SYNC-tcp).testDistributedCache: <no details avaliable>

org.jboss.as.test.clustering.cluster.management.CacheTestCase(SYNC-tcp).testReplicatedCache: <no details avaliable>

org.jboss.as.test.clustering.cluster.management.CacheTestCase(SYNC-tcp).testLocalCache: <no details avaliable>

org.jboss.as.test.clustering.cluster.management.CacheTestCase(SYNC-tcp).testInvalidationCache: <no details avaliable>

Linux with security manager Build 1291 is now running using a merge of 5d6f63021417340c606a7b805bd0e78d9fa3ce54

Windows Build 1443 is now running using a merge of 5d6f63021417340c606a7b805bd0e78d9fa3ce54

Linux Build 6363 is now running using a merge of 5d6f63021417340c606a7b805bd0e78d9fa3ce54

Linux with security manager Build 1291 outcome was SUCCESS using a merge of 5d6f63021417340c606a7b805bd0e78d9fa3ce54
Summary: Tests passed: 826, ignored: 358 Build time: 0:04:57

Linux Build 6363 outcome was SUCCESS using a merge of 5d6f63021417340c606a7b805bd0e78d9fa3ce54
Summary: Tests passed: 2852, ignored: 414 Build time: 0:46:40

Windows Build 1443 outcome was SUCCESS using a merge of 5d6f63021417340c606a7b805bd0e78d9fa3ce54
Summary: Tests passed: 2851, ignored: 414, muted: 1 Build time: 0:48:54


Netherite spears are identical? to diamond spears

Good catch, thank you. I gave the Netherite spear +1 attack and +0.1 speed, which will be out in the next update.

Good catch, thank you. I gave the Netherite spear +1 attack and +0.1 speed, which will be out in the next update.


DSND-3021: Update events processing order

Remove compensatory transactions from insert, update, delete
Change logic to determine stale deltas
Change ResourceChangeApiClient to return exceptions on failures
Update tests

Describe the changes
Related Jira tickets
DSND-3021
Developer check list
General

[x] Is the PR as small as it can be?
[x] Has the Jira ticket been updated with any relevant comments?
[x] Is the README up to date?
[x] Has the POM been updated for the latest versions of dependencies?
[x] Has the code been double-checked against main?
[x] Does the code adhere standards in this repository, including SonarQube checks?

Testing

[x] Do the code changes have unit and integration tests with code coverage > 80%?
[x] Has the code been tested locally and/or passed the API Karate tests on Tilt?
[ ] Have mandatory manual test cases been run?
[ ] Are extra Karate tests required?
[x] Are all the test data resources up to date?

Release preparation
Where possible, add links to the respective Jira tickets when an item is checked

[x] Have these changes been included in a release ticket?
[ ] Are changes required to the docker-chs-development deployment or test data?
[ ] Are any changes required to the environment added to deployment repositories?

Notes to the tester
Add any testing hints or instructions here.

CI: No security warnings found

CI: No security warnings found

CI: No security warnings found


Catalog form tabs rewritten from jQuery UI to PatternFly

Reviewed, ACK.

@himdel please review the second commit too


Improve linting dev expirience

We have great linting presets which guide developers into the right direction and prevent human errors.
Unfortunately the amount of "disable-next-line" comments increased a lot in many projects where linters are used.
For me that is a symptom that something about our linters does not work the way we intended it.
In my opinion we should use "disable-next-line" similar to complex scss mixins and loops.
It's fine for abstract utils but should not be used in our day to day work.
I would like to discuss one lint rule as an example but it might also be true for other lint rules.
Many projects contain the following code:
console.log('debug', valueX); // eslint-disable-line

So if this rule has to be disabled so many times why do we have it in our defaults anyway?
The idea behind this rule is that we don't want to have console.log statements in our merged code.
In our projects we have the following four quality gates:

ide & dev build
precommit
git server received push
manual code review

For me it seems like that linting for console.log in step 1 causes issues for most developers so they disable it while fiddeling around with their code to find a good way to implement a feature or to debug a bug.
However disabling the linting rule moves it to step 4 which is a manual task of a second person.
What do you think about moving it to step 2 or step 3?
We might achieve that with two configs:
.eslintrc.json (for step 1) without the console.log rule or console.log as warning
.eslintrc.strict.json (for step 2 or step 3) which extends .eslintrc.json and adds the console.log rule as error

Implemented as @jantimon described.

The rules in .eslint.js are just for IDE. npm run lint and lint-staged using .eslint.strict.js

Awesome! Thank you 🔥

Really cool 👍


Non root user

This add the user-non-root for the following images :

adminserver
ui
jobservice
nodeclarity

As mentioned in https://github.com/vmware/harbor/issues/3061

Coverage decreased (-35.4%) to 19.494% when pulling 105ca1d802558fc1e93e0b4661ac527c388decc7 on worldline:non-root-user into 5cd55220c855bfdfd80a4b3e5e5eb9f06c81c765 on vmware:master.

This has to be pending because this change will requirement coordination when Harbor's integrated with other bits of vmware software.

@wdhif  we are in the middle of making update to all Dockerfiles, to avoid conflict, it would be helpful to make update to one Dockerfile in one PR, make sure things work and it will be merged.


Generic credentials for outlook 365 and route attachments from outlook 365 emails to a azure storage account

Currently , In one of our project we created a dashboard which is scripted in python and all the code is running in a local machine. In this dashboard, it consumes data from excel files which are shared as attachments in an outlook personal email.
For connecting to outlook emails and fetch attached excel files, we are using personal credentials which we wanted to avoid.
Can someone please help us if there is a way to create a generic outlook account with generic credentials and later route all the attachments to a azure storage blob for storing through python scripting. Appreciate your responses.

Thanks for the feedback, we'll investigate asap.

Hi @saikothakapu, thank you for opening an issue! The Storage team has been looped in to help you with anything on the SDK front, but it sounds like your question is mostly about creating a certain kind of Outlook account. To determine how we can best help, it would be great to know if you're having any Azure SDK-specific issues, or if this is Outlook-specific. It may be a good idea to contact support for Outlook or ask a forum question if you haven't already.

thanks @mccoyp , I have posted the question in outlook forum.


[0.10.0-nightly tsm1] influxd takes ~30 minutes to start up

Since starting to use tsm1, I've noticed that the startup time of influxd seems to be proportional to the size of the database. On one system, the DB is about 250 GB, containing around 30 measurements and about 600K series. Each shard is approximately 11 GB, and influxd takes a little over a minute to read each shard. Retention period is 21 days.
Log is attached. Version number in log says 0.9, but it's actually built from git commit 7ccbbecf0325098fc16ecf28b084763532b9b4ec. System has 16 cores, 32 GB RAM, running Debian Jessie amd64, kernel 4.3.3. During startup, the data partition has about 1K read IOPS, but is capable of delivering up to 2K read IOPS, limit enforced by cgroups.
influxd.txt

@dswarbrick Could you show me the output of ls -lah /srv/influxdb/data/perfdb/default/23/ and influx_inspect dumptsmdev -all /srv/influxdb/data/perfdb/default/23/000000377-000000005.tsm?

# ls -lah /srv/influxdb/data/perfdb/default/23/
total 11G
drwxr-xr-x  2 influxdb influxdb 4.0K Jan  7 10:18 .
drwx------ 25 influxdb influxdb 4.0K Jan  7 23:29 ..
-rw-r--r--  1 influxdb influxdb 2.2G Dec 18 05:55 000000189-000000004.tsm
-rw-r--r--  1 influxdb influxdb 493M Dec 18 05:56 000000189-000000005.tsm
-rw-r--r--  1 influxdb influxdb 2.2G Dec 18 11:44 000000377-000000004.tsm
-rw-r--r--  1 influxdb influxdb 483M Dec 18 11:45 000000377-000000005.tsm
-rw-r--r--  1 influxdb influxdb 2.2G Dec 18 17:34 000000566-000000004.tsm
-rw-r--r--  1 influxdb influxdb 491M Dec 18 17:35 000000566-000000005.tsm
-rw-r--r--  1 influxdb influxdb 2.2G Dec 18 23:24 000000755-000000004.tsm
-rw-r--r--  1 influxdb influxdb 488M Dec 18 23:25 000000755-000000005.tsm
-rw-r--r--  1 influxdb influxdb 478M Dec 21 02:39 000000780-000000003.tsm

@jwilder Output of influx_inspect is about 46 MB raw (4.8 MB .xz), and contains some sensitive information which I'd prefer not to attach to a public issue. What's the best way to get this information to you?

You can email to<EMAIL_ADDRESS>if that works.
On Thursday, January 7, 2016, Daniel Swarbrick<EMAIL_ADDRESS>wrote:

@jwilder https://github.com/jwilder Output of influx_inspect is about
46 MB raw (4.8 MB .xz), and contains some sensitive information which I'd
prefer not to attach to a public issue. What's the best way to get this
information to you?
—
Reply to this email directly or view it on GitHub
https://github.com/influxdata/influxdb/issues/5311#issuecomment-169847181
.

@dswarbrick Would you be able to test #5318 on your system since you are able to reproduce this slow restart more easily?

@jwilder I will test it after the 24h window is up on my current golang 1.4 build, which will be in about 7 hours, (unless the oom-kill strikes before that).

@dswarbrick Great.  Thanks!

@jwilder i'll pull this in on my 100GB datasets and let you know how it looks

@toddboom :+1:

@jwilder this seems to have made a huge difference. startups that previously took 7-10 minutes are now finishing in under a minute.
there may be a slight benefit from compactions that happened since the last time i ran the test (resulting in fewer tsm files), but the approximate size on disk is basically the same.
nice work!

i'll wait for @dswarbrick to comment with his results, but based on my observations, this issue can probably now be closed out by #5318.

@jwilder My startup time has reduced from over 30 minutes down to just 10 minutes. The majority of the shards load quite quickly, although there were a couple of outliers. What I mainly notice is that there periods of time during the startup lasting maybe 10s, during which only a single core is maxed out, whilst the others are idle. I am attaching the relevant portion of my influxd.log to show the timings.
The read IOPS were quite a lot lower also (no more than about 70 IOPS), apart from when it read the two or three most recent shards, and you can see in the log that those shards took noticeably longer to load. Read IOPS spiked to about 700 briefly, whilst reading those shards.
influxd.txt

@dswarbrick Seems like it has improved.  Shards are still loaded serially, but that will be changed in a future PR which should also help.  Some of the other slowness is related to loading the in-memory database index.  I'm looking into that as well.

@jwilder Great, I look forward to testing it :+1:

My 0.10 server starts for 3 hours with 9GB database. Should I describe diagnostics here or create a separate issue?

The v0.12.0 release has some fixes from #5372 to improve loading times. Closing this out since that plus the prior fixes should have things in a usable state now.


Handling JSON data within SQL Notebook

My request is related to working with JSON data in SQL Server.  When I write a query in a normal query window that returns JSON data I am able to click on that JSON in the results plane.  This causes another window to open showing the entire JSON message, well-formatted.  If I do the same action in a SQL Notebook, I am unable to click on or otherwise explode JSON data from a result.
My feature request is to see that possibility exists in a SQL Notebook.
I created a video that demonstrates this situation:  Video

This makes a lot of sense. Let's see if we can address this soon. @lucyzhang929 assigning to you when you have capacity

Hi @kentmaxwell, this feature should be available now in the latest Insiders build.
@chlafreniere We weren't passing the isJson field to the table before, but it's been added with my grid streaming changes.

Thanks @lucyzhang929! I'll close this issue then.


Fix some problems with multipart uploads.

This fixes two large issues with our s3 multipart upload support. The
first impacts correctness: previously, the file parts were put into
destination directory piece by piece, in separate commits, which could
trigger downstream jobs with partial states. Instead, we now build the
file incrementally in a uniquely named file in the multipart repo and
copy it into the destination in one go.
The second is a bit more nebulous. I have observed the aws cli client
making multiple concurrent CompleteMultipartUpload requests. The AWS
documentation isn't clear on this case, but the client seems like it
expects subsequent calls to succeed until one of them has finished. In
our system, this will just cause identical jobs, so I have attempted to
accommodate this behavior.

Agent Dale Georg linked Freshdesk ticket 292 for this issue.


Integrate Mayhem

I'm not sure why adding a package stage causes Mayhem to fail. Should I revert it?

I somehow missed that this was failing (latest run on your own account seems to be successful). I'm not sure either, but running locally doesn't show any problems. I'll look into this.

I also missed this. Strange - the run completes 56 test cases then fails.
I tried removing the package stage and it works fine. Let me know if there's anything more I should do.

Should be fine - https://github.com/mayhemheroes/szl/pull/2 succeeded so I think we're good here.


Concept Drift Distinction

[ ] hot to calculate model score
[ ] formal rules in natural language
[ ] formal rules in mathe

done


Autocomplete not working with paths aliases

VSCode Version: 1.20.1
OS Version: Linux (Ubuntu 16.04)

Steps to Reproduce:

Create a paths alias in the jsconfig.json like: "paths": { "modules/*": ["src/modules/*"] }
Import from the alias triggering intellisence after writing import {} from "modules/". This will not show any folder only files.

Does this issue occur when all extensions are disabled?: Yes

Tracked upstream by https://github.com/Microsoft/TypeScript/issues/21589


documentation for http status codes

documentation for http status codes
review please @rmglennon

Looks good, thanks! :+1:


Redis parser 'ReplyError: ERR wrong number of arguments for 'spop' command'

Hi guys,
I have been having a strange issue with Redis lately. My Redis cache works fine on my Mac (Node v 14.19.0 with npm v6.14.16 and redis 7.0.2)
However, when I revert to Windows with my project (I replicated the environment using node 14.19.0 running Redis on WSL Ubuntu version 7.0.2) - I come across this error when ever I attempt to run a command that attempts to fetch something from my cache:
ReplyError: ERR wrong number of arguments for 'spop' command     at parseError (C:\Users\Me\Documents\...\node_modules\redis-parser\lib\parser.js:179:12)     at parseType (C:\Users\Me\Documents\...\node_modules\redis-parser\lib\parser.js:302:14) [Nest] 20504  - 30/07/2022, 11:11:22 pm   ERROR [ExceptionsHandler] ERR wrong number of arguments for 'spop' command ReplyError: ERR wrong number of arguments for 'spop' command     at parseError (C:\Users\Me\Documents\...\redis-parser\lib\parser.js:179:12)     at parseType (C:\Users\Me\Documents\...\node_modules\redis-parser\lib\parser.js:302:14)
It doesn't appear when I run dbflush i.e. using an empty Redis db, but something is causing this strange behaviour on my Windows and I am unsure why. I've tried running the same Node, using Docker on my Windows to run Redis amongst other things which have not worked. Any help would be appreciated!

@luin Thanks for your response. Do you know exactly which redis versions support the spop parameters? I did try and go for the same major version but perhaps it also comes down to minor releases as well.

It was supported back in v3.2.0. https://redis.io/commands/spop/. Closing this.


Sync of Releases/2.0.x to master

Putting up this PR to see how GitHub deals with cherrypicking. Somewhat surprisingly it shows @ansell's fixes in the diff, despite the fact that both branch have these fixes already.

@ansell you have any idea why this would happen? I sort of assume that it doesn't see the merge-commit and the cherry-pick commit are "the same thing". Any dangers you see in merging this? Anything I could be doing differently in handling merging and cherry-picking that you know of?

I haven't had enough experience cherry-picking to know what issues there will be merging after cherry-picking the other way. Hopefully none but we won't know for sure until you hit the merge button. I have had some experience with Git intelligently knowing that a commit has already been done and avoiding committing it again, but I can't remember the exact circumstances.


T1490 BCDedit

The following detection analytic identifies the use of bcdedit.exe disabling automatic Windows recovery features by modifying boot configuration data - bcdedit.exe /set {default} bootstatuspolicy ignoreallfailures & bcdedit /set {default} recoveryenabled no
This was tested with Atomic Red Team T1490-4.

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
BCDEdit Failure Recovery Modification :white_check_mark:

diskUsage: 434176
runDuration: 1.577s
scanCount: 580

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
BCDEdit Failure Recovery Modification :white_check_mark:

diskUsage: 434176
runDuration: 1.577s
scanCount: 580

Great work

Great work


Auto generate projections for all referenced winmd files

This is to solve #780.
This PR allows generating projections for all referenced WinRT projects, without any manual editing of the csproj file. Just add a reference to CsWinRT, add one or more references to C++/WinRT component projects, and you are ready to compile. All projections are generated and compiled. This should make dev's lives easier (and also simplify documentation for the most common case).
Tested with the sample project, and also with multiple WinRT references.

/azp run

It would be pretty cool to have this functionality built into cs/winRT. Having to manually create nuget packages as part of the development and debugging loop is a nightmare.

There might be some cases where the namespaces don't match the file name though.

True. But in the vast majority of cases, the .winmd filename will be the root namespace of a project. It that is not the case, it's always possible to manually specify CsWinRTIncludes. I am just setting this to a sensible default, which should work for most cases.

I think the pattern coming from uwp is to have the namespace match the file name, so I'd say the cases in which it does not match are very few and far in between.

/azp run

Hi @lukasf , there seems to be something with this change that is affecting the CsWinRT Embedded support. I am taking a look into this now.

Hi @j0shuams, thank you for looking into it. I wonder how this could affect embedded support...

@lukasf, I think a better option (maybe?) is to modify the cswinrt.exe generator to generate everything not excluded by default?

@dongle-the-gadget That might be even better, since it would work without namespace restrictions.
I just peeked over the code a bit. It seems that it's the winmd::reader::filter class which decides if a member is to be included or not (in the prive includes method). The filter class is used in cswinrt::settings.
We'd still need to respect the excludes (which get added by default), so we cannot just omit using the filter. Instead we need to modify the filter class. Which in turn means, we'd first need a PR in the winmd repo before we can solve this in cswinrt.
My idea would be this: We extend the filter class constructor with an additional, optional boolean parameter. This parameter allows to specify the default choice if no mathing filter is found (see last line of the includes method). It defaults to "false", so existing code continues to work. But in cswinrt.exe, we would check the length of the includes before creating the filter. If we have zero includes specified, then we override the default to "true", so any class or namespace that is not explicitly excluded will be generated.
What do you think about this approach @dongle-the-gadget? Franky, I only had a short peek over the code, so I am not 100% sure about this. But to me it looks like this could be pretty easy to solve, if we can get a PR into the winmd repo.

For the WinMD code, I would say that how about we add an optional parameter for the initializer?

Yes, that's what I meant

You probably want to check $(CsWinRTIncludesPrivate) as well and make sure it's empty.


SEGV due to memory corruption

I really wish I could give you more, but the stack traces I get on crash mostly indicate some form of memory corruption rather than an easily reproduced issue (sorry). I have an app which creates and destroys pcap instances many times. The release of the pcap object (after it's been closed) will cause my application to SEGV at some point afterward. Sometimes, but no always, this is while the Node GC is running. The only thing I've been able to do to stop the crashes is to hang on to a reference to the binding.PcapSession internal object after I close and remove other references (this is perhaps not a surprise). Obviously having lots of those hanging about is undesirable.
Mostly filing this issue in case others are seeing this and we might compare notes.
Here's a typical crash trace:
*** Error in `node': double free or corruption (out): 0x00000000039bd960 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x70bfb)[0x7fd347972bfb]
/lib/x86_64-linux-gnu/libc.so.6(+0x76fc6)[0x7fd347978fc6]
/lib/x86_64-linux-gnu/libc.so.6(+0x7780e)[0x7fd34797980e]
node(_ZN2v88internal4Heap8ScavengeEv+0x1e3a)[0xf43dba]
node(_ZN2v88internal4Heap24PerformGarbageCollectionENS0_16GarbageCollectorENS_15GCCallbackFlagsE+0x3e4)[0xf49314]
node(_ZN2v88internal4Heap14CollectGarbageENS0_15AllocationSpaceENS0_23GarbageCollectionReasonENS_15GCCallbackFlagsE+0x3ab)[0xf4a18b]
node(_ZN2v88internal4Heap26AllocateRawWithRetryOrFailEiNS0_15AllocationSpaceENS0_19AllocationAlignmentE+0x41)[0xf4cec1]
node(_ZN2v88internal7Factory30CopyJSObjectWithAllocationSiteENS0_6HandleINS0_8JSObjectEEENS2_INS0_14AllocationSiteEEE+0x95)[0xf29875]
node[0x11d89c4]
node[0x11de450]
node(_ZN2v88internal27Runtime_CreateObjectLiteralEiPPNS0_6ObjectEPNS0_7IsolateE+0xbe)[0x11e045e]
[0x3417226cfc5d]

Update: While not a fix as such, I'm now using a fork of this code which reuses the native pcap objects and this seems to work great. Worst case is I have N of these hanging around (where N is the number of captures I'm running in parallel).


pull request for e2e test at 01/05/2017 03:56:14

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


cluster/gce/coreos: Add metadata-service in node.yaml

/cc @dchen1107 @vmarmol @jonboulle @bakins
Actually I found the metadata service is already started in old node.yaml, just updated with more specific service/socket files.
This saves us from start metadata service manually in #7465

Also this one uses the 0.5.4 version rkt metadata service

lgtm

LGTM, any reason to run them this way instead of how we did before?

@vmarmol One is we were not running the new version of rkt metadata service. Two is I think named service is more manageable. And Three is it's now socket activated.

Did you get a chance to test btw? While we wait for Travis

@vmarmol Yes, I will run e2e

More than anything that the CoreOS cluster comes up :) @dchen1107 had the instructions in her PR

e2e agains gce/debian passed:

Ran 36 of 41 Specs in 1086.721 seconds
SUCCESS! -- 36 Passed | 0 Failed | 1 Pending | 4 Skipped I0429 16:19:02.608573   18082 driver.go:96] All tests pass
2015/04/29 16:19:02 Running: teardown
Starting cluster using os distro: debian
Project: coreos-gce-testing
Zone: us-central1-b
Shutting down test cluster in background.

build/push-devel-build.sh passed:

TOTAL: 30 objects, 692900767 bytes (660.8 MiB)

Running e2e agains gce/coreos

FWIW, don't worry too much about the push-devel-build part. I was merely pointing that out in her PR because of a breaking issue in the release flow I noticed there. In typical changes (i.e. not renaming a cluster/* file), it's not something you need to run.

@zmerlynn Sounds good! Thanks!

@vmarmol I can't pass e2e on coreos cluster yet, I think that's not related to this PR.
cc @bakins We haven't yet successfully passed e2e on coreos cluster yet, right?

Yeah I don't think we have :) there are some tests that are Docker-specific so I wouldn't expect them to pass just yet.
I think we're good with this PR, will merge. Thanks @yifan-gu!

Thanks @vmarmol !


Limit reformer_crime_and_punishment and flaubert_MRPC packaging version

Type of Change
feature or bug fix or documentation or validation or others
API changed or not
Description
packaging.version.InvalidVersion: Invalid version: '0.10.1,<0.11'
Expected Behavior & Potential Risk
the expected behavior that triggered by this PR
How has this PR been tested?
how to reproduce the test (including hardware information)
Dependency Change?
any library dependency introduced or removed

Please update correct PR description.

https://inteltf-jenk.sh.intel.com/view/lpot-validation/job/intel-lpot-validation-top-mr-extension/3751/


Make extension clients public to enable mocking for extension methods

Fixes https://github.com/Azure/autorest.csharp/issues/3493
Description
This is a simplified version of #3175
This PR enables a general way for our customer to mock the extension methods.
In general, to mock an extension method in out .Net mgmt SDK takes several unified steps of mocking:

Identify the type that the extension method is extending (referred as extendee below), follow the pattern {RPName}{ExtendeeName}MockingExtension, you will get a type which contains the real method to mock (referred as extension class below). For instance if the extendee is ResourceGroupResource in Azure.ResourceManager.Compute, you will get ComputeResourceGroupMockingExtension.
Mock the method on the extension class with the same parameter list as the extension method you would like to mock. For instance, to mock the extension method public static Response DoSomething(this ResourceGroupResource resourceGroup, string someParameter, CancellationToken cancellationToken), you should mock the method public virtual Response DoSomething(string someParameter, CancellationToken cancellationToken) on the extension class ComputeResourceGroupMockingExtension.
Mock a hidden method GetCachedClient on the extendee to make it return the above mocked extension class.

By following the above three steps, your mock now should work in the same way that you usually call it.
This PR unifies the previous internal implementation to ensure we have the same pattern everywhere so that our customer gets a unified experience of mocking the extension methods.
This PR also tries to remove all the validations in the public extension class to make mocking more feasible. For instance, previously we have the code:
public static partial class ComputeExtensions
{
	public static Response DoSomething(this ResourceGroupResource resourceGroup, string name)
	{
		Argument.ThrowIfNull(name, nameof(name));
		// implementation
	}
}

This will cause the mocking invocation has to pass in a non-null argument as well - but when we are mocking those instance method, since the implementation of the body has been completely replaced, we never have this issue.
Therefore this PR removes all these validations in the static class. But we still enforces those parameter to be non-null or non-empty because the same check will exist in the corresponding Mocking Extensions.
A follow up issue of this is to make a test or analyzer rule to enforce the pattern in all of our SDKs including the generated code and customized code. Because changing the internal implementation here will change the way of mocking things, changing it would be regarded as a behavioral breaking change and we should never change that once the extension classes are public.
Checklist
To ensure a quick review and merge, please ensure:

[ ] The PR has a understandable title and description explaining the why and what.
[ ] The PR is opened in draft if not ready for review yet.

If opened in draft, please allocate sufficient time (24 hours) after moving out of draft for review

[ ] The branch is recent enough to not have merge conflicts upon creation.

Ready to Land?

[ ] Build is completely green

Submissions with test failures require tracking issue and approval of a CODEOWNER

[ ] At least one +1 review by a CODEOWNER
[ ] All -1 reviews are confirmed resolved by the reviewer

Override/Marking reviews stale must be discussed with CODEOWNERS first

TODO:  remove the useless extra static factory methods for those extension clients.

We have multiple pattern in our extension method, which we might improve to simplify the experience of mocking. For instance,

The extension method is redirecting the method call to an extension client, for instance, if this method is extending TenantResource, we will have a {RP}TenantResourceExtension (or other name, but there is a pattern) with a method with exactly the same signature. Example:

public static Response<T> DoSomething(this TenantResource tenantResource, string p, CancellationToken token = default)
{
	return GetTenantResourceExtension(tenantResource).DoSomething(tenantResource, p, token);
}

This includes the methods that return a collection.
2. The extension method is a helper method to get an instance with a name. This method is reusing the method returning the ArmCollection.
[ForwardsClientCalls]
public static async Task<Response<StorageAccountResource>> GetStorageAccountAsync(this ResourceGroupResource resourceGroupResource, string accountName, StorageAccountExpand? expand = null, CancellationToken cancellationToken = default)
{
    return await resourceGroupResource.GetStorageAccounts().GetAsync(accountName, expand, cancellationToken).ConfigureAwait(false);
}

resourceGroupResource.GetStorageAccounts() is the static extension method described in type 1.
3. The extension method is extending ArmClient with a scope. This is calling a scope method or getting the collection of a scope resource.
public static FakePolicyAssignmentCollection GetFakePolicyAssignments(this ArmClient client, ResourceIdentifier scope)
{
    return GetArmResourceExtensionClient(client, scope).GetFakePolicyAssignments();
}

The extension method is returning a resource instance from a given resource id

public static GuestConfigurationAssignmentResource GetGuestConfigurationAssignmentResource(this ArmClient client, ResourceIdentifier id)
{
    return client.GetResourceClient(() =>
    {
        GuestConfigurationAssignmentResource.ValidateResourceId(id);
        return new GuestConfigurationAssignmentResource(client, id);
    }
    );
}

To mocking these methods, the customers need to do the following:

Method type
How to mock

1
1. See the T, get the {RP}TExtension type. 2. Mock the same method on {RP}TExtension. 3. Mock the GetCachedClient method on T

Some thoughts: https://gist.github.com/ArcturusZhang/bd224f859d4895dcd9e838719f7aef39

TODO - more validation to move
We also need to move the scope resource type validation check into the mocking extension. Instead of checking it in the static extension method.

@ArcturusZhang I assume we are not merging this until we have feedback from our beta?  If so can we add the do not merge label to this PR?

@ArcturusZhang I assume we are not merging this until we have feedback from our beta? If so can we add the do not merge label to this PR?

Yes, I added the label.

TODO -- there is a cref reference to Resource.CreateResourceIdentifier method. It causes compilation errors if we add overloads for it using customization code. Need to update the generator to full specify it.


feat(obstacle_cruise_planner): make slow down feature stabler

Description
障害物に対する減速機能の安定化
以下のmain内のコミットをcherry-pick

https://github.com/autowarefoundation/autoware.universe/pull/3747
https://github.com/autowarefoundation/autoware.universe/pull/3775
https://github.com/autowarefoundation/autoware.universe/pull/3743
https://github.com/autowarefoundation/autoware.universe/pull/3751
https://github.com/autowarefoundation/autoware.universe/pull/3778
https://github.com/autowarefoundation/autoware.universe/pull/3744

Tests performed

planning simulator
scenario simulator

without this PR: https://evaluation.tier4.jp/evaluation/reports/fc75b567-170a-5d09-8e6a-26088cf2ff8f?project_id=prd_jt (1692/1722 pass)
with this PR: https://evaluation.tier4.jp/evaluation/reports/534ac908-f7c4-52d6-ab98-bb2813475ddc?project_id=prd_jt (1697/1722 pass)

※3, 4件ほどfailが増えているスイートがありますがだいたい確認済みで、シナリオ修正が必須です
　PRマージ後に対応していきます :pray:
Effects on system behavior

slow down機能の安定化
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@tkimura4 @shmpwk
月火の前車追従/slow down機能に関するリリース評価において、こちらのコミットも込みで実験していただきたいです
シナリオテスト確認済みでPRとしてはマージレディです、マージ後に3件ほど増えたfailのシナリオ側の修正をしていきます

Codecov Report
Patch coverage: 11.00% and project coverage change: -0.01 :warning:

Comparison is base (59fc3a0) 15.06% compared to head (94cc1bb) 15.05%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@               Coverage Diff               @@
##           beta/v0.8.0     #505      +/-   ##
===============================================
- Coverage        15.06%   15.05%   -0.01%
===============================================
  Files             1412     1412
  Lines            99191    99317     +126
  Branches         29844    29897      +53
===============================================
+ Hits             14939    14950      +11
- Misses           68193    68292      +99
- Partials         16059    16075      +16

Flag
Coverage Δ

*Carryforward flag

differential
19.94% <11.00%> (+0.16%)
:arrow_up:

total
13.89% <ø> (-0.01%)
:arrow_down:
Carriedforward from 59fc3a0

*This pull request uses carry forward flags. Click here to find out more.

Impacted Files
Coverage Δ

common/signal_processing/src/lowpass_filter_1d.cpp
86.66% <0.00%> (-13.34%)
:arrow_down:

..._planner/utils/avoidance/avoidance_module_data.hpp
0.00% <ø> (ø)

...or_path_planner/src/behavior_path_planner_node.cpp
18.99% <0.00%> (+0.02%)
:arrow_up:

...ehavior_path_planner/src/utils/avoidance/utils.cpp
5.89% <0.00%> (-0.12%)
:arrow_down:

...avior_path_planner/src/utils/lane_change/utils.cpp
0.97% <ø> (+<0.01%)
:arrow_up:

...lude/obstacle_cruise_planner/planner_interface.hpp
14.08% <0.00%> (-5.15%)
:arrow_down:

planning/obstacle_cruise_planner/src/node.cpp
13.05% <0.00%> (-0.22%)
:arrow_down:

.../obstacle_cruise_planner/src/planner_interface.cpp
8.98% <0.00%> (-2.63%)
:arrow_down:

planning/behavior_path_planner/src/utils/utils.cpp
20.00% <36.36%> (+0.30%)
:arrow_up:

...n/motion_utils/test/src/distance/test_distance.cpp
57.14% <50.00%> (ø)

... and 2 more

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


The da-retry can sometimes not have a blockquote element

This prevents a full crash of Kiln, though we can't print out as much info.
Sometimes necessary for me when the interview can't be loaded (if something went wrong with the playground installation, or I'm pointing at the wrong playground).

How can we recreate this so that we can add a test file? We should probably create tests for both eventualities soon.

How can we recreate this so that we can add a test file?

It's not a consistent failure. From the docassemble source code (server.py:L21248), error messages are sometimes wrapped in <pre> instead of <blockquote>. I'm not sure the strategy of just searching the whole page for <pre> will work though, we want just subelements of the #da-retry?
But IMO, this doesn't need a specific unit test: it's just making things more rigorous.

Also, what does a full crash mean? No more tests are run?

Yes, at the very least that scenario stops running and exits with an inscrutable error.

I think we might want to work on the message itself, but I agree it's useful to have a fallback message.


os03b10.yaml  ERROR

os03b10.yaml file with in path general/package/ingenic-osdrv-t31/files/sensor/os03b10.yaml has a EDIT error
the value  below should be " width: 2304 "
sensor:
name: os03b10
address: 0x3c
width: 2034            <------------------
height: 1296
bus: i2c
this error will cause the T31X With Sensor os03b10 not work,
ERROR IS:
Majestic crash and exit.
09:42:33  <       majestic> [     sdk] imp_system_init@438           ImpSystemInit success
09:42:33  <       majestic> [     sdk] imp_framesource_init@488      IMP_FrameSource_CreateChn(chn0) error !
09:42:33  <       majestic> [     sdk] start_sdk@1355                FrameSource init failed
09:42:33  <       majestic> [    main] main@209                      Shutdown main thread

Patch created, PR is pending. Thank you for reporting.


Add PrivateKey.toPem() method

Problem
PrivateKey.js contains function fromPem(), but there is no corresponding toPem() method.
Solution
Add a method toPem() in PrivateKey.js
Alternatives
No response

Heya, @diptimahamuni!
PEM is a method of encoding binary data as a string (also known as ASCII armor). DER is the format we usually conform to in the SDKs as the PEM variant of a DER string is less readable in my opinion. Keep in mind DER and PEM formats are mutually convertible. This means that if we use OpenSSL for example we can easily convert PEM to DER and vice versa. Have you explored using OpenSSL for the conversion. For example:
openssl pkey -inform DER -in privatekey.der -out privatekey.pem

If this is not convenient for you, you could always do the hex(DER) to base64(PEM) encoding programatically. If for some reason you need the SDK to do the conversion could you please explain your use case with some further details/snippets?

Reopen this if needed.