Using reverted changesets for model training

Per text with @batpad,
Changeset comment has revert
There are a total of 13,125 changesets on osmcha with revert in the changeset comment. Interestingly, 2,505 (20%) changesets are one feature modification changesets which is what we use in the latest version of Gabbar.

One feature changesets with revert in changeset comment

Assuming, mappers revert a problematic or wrong feature in these one feature modification changesets, this could be an additional dataset we could make use of for the current iteration of the feature level classifier of Gabbar. I manually :eyes: a couple of these changesets and they are definitely want we want to catch with Gabbar.

https://osmcha.mapbox.com/49465923

https://osmcha.mapbox.com/49442894

Changesets from revert user accounts
Mappers and DWG sometimes maintain a separate account for reverts. Changesets from these accounts will be interesting to look at as well. Ex:

https://www.openstreetmap.org/user/SomeoneElse_Revert/history

cc: @anandthakker @geohacker

Found 2604 changesets that had the geojson version of it in real changesets. Assuming all features in changesets with revert in the changeset comment are correcting a harmful change, I get changeset IDs of the previous version of all features in these changesets. Ex:

Changeset 49692400,, has a changeset comment: Reverting 49662828 by Demo15_15
There is one feature deleted in this changeset, Node:<PHONE_NUMBER>
The changeset that previously touched this feature is 49662828
This is the potentially problematic edit we are interested

Following this workflow, I find a list of 14,062 unique changesets. Ideally, this is a list of changesets that had a problematic feature which was later reverted. The next step was to see what percentage of this was recent, (say in 2017) and have real changesets version so that we can use it as part of the training/validation dataset in Gabbar.

There are 10,691 (76%) potentially problematic changesets that have real changeset.

@manoharuss @krishnanammala, need your help here. Can you randomly :eyes: about 100 changesets from this list to see what percentage of the 100 are problematic. This will help us understand what to expect and if this can be used as training dataset in Gabbar.

https://gist.github.com/bkowshik/bddc87ca4dd74c37d9ae097985a28edc

Next actions

[ ] Review 100 changesets randomly (some at the top, middle, end, etc)
[ ] What percentage of the 100 changesets are actually problematic?
[ ] Now that we know the percentage, can we use it in Gabbar - @bkowshik

cc: @planemad

@bkowshik any changeset reverted by an experienced editor (>100edits) we can safely say was definitely a bad one. Lets use our time time more wisely to review only those that were reverted by a inexperienced user (<20 edits), this is where we might find some false negatives.
Other highly valuable questions to answer here:

What is the average response time for the community to fix a bad change?
Is there any corelation between the response time and user attributes like experience, mapping activity.. ?

cc @maning @batpad

Thank you @planemad, that was super helpful!
Reverting changesets

Out of the total of 12257 changesets, only 2604 (21%) have real changesets.
There are a total of 468 mappers.
2493 (95%) reverting changesets were by users with 100 or more changesets
21 (1%) reverting changesets were from users with less than 20 changesets

The CSV with 21 reverting changesets by new users is at the link below:

https://gist.github.com/bkowshik/3bb6edd4bb12c5f4be712d64338d4614

Yes, there is a correlation between the experience of the user and number of reverting changesets. Reverting changesets are way more likely from experienced users than new users.

What is more interesting is that user_mapping_days has a stronger correlation at 0.6 to number of reverting changesets in comparison to user_changesets with a correlation of 0.3. So, the mapping days of the user is a stronger indicator.

Reverted changesets
I couldn't resist finding who's changeset were getting reverted - the other side of the story.

Out of the total of 14062 changesets, only 10693 (76%) have real changesets
There are a total of 1301 mappers with one or more reverted changesets
8679 (61%) reverted changesets were of users with 100 or more changesets
1161 (8%) reverted changesets were of users with less than 20 changesets
User DACGroup had 60% of his/her changesets reverted, 4106 reverted changesets

As expected, the user mapping days is negatively correlated, -0.3. Thus, higher a users mapping days, less likely of changeset being reverted.

Per https://github.com/mapbox/gabbar/issues/66#issuecomment-310029426
There are 21 reverting changesets by users less than 20 changesets. @manoharuss @krishnanammala can you please 👀 these and post notes about what percentage of this 21 are actually problematic?

https://gist.github.com/bkowshik/3bb6edd4bb12c5f4be712d64338d4614

cc: @planemad


Move from secrets to environment variables

https://github.com/bkeepers/dotenv
https://github.com/thoughtbot/climate_control


Update maintainers list to include nemodex

Updated maintainers list to include nemodex

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

generally, the maintainers list is only changed if you are adding a package. If you'd like to add a package, feel free to add one, with this as a separate commit in that pull request!


ContainerServicesClient is missing as of containerservice/mgmt/2020-11-01/containerservice

Service Package Request
As of github.com/Azure/azure-sdk-for-go/services/containerservice/mgmt/2020-11-01/containerservice the ContainerServicesClient isn't available anymore.
In github.com/Azure/azure-sdk-for-go/services/containerservice/mgmt/2020-09-01/containerservice and earlier this was available.
This client included ListOrchestrators, returning the list of supported K8s versions in AKS.
What functionality should I use to get the current versions of AKS supported in newer profiles (like github.com/Azure/azure-sdk-for-go/services/containerservice/mgmt/2021-05-01/containerservice)?

Hi @Robert-Stam thanks for this issue!
As far as I know, the AKS team is working on a new api-version, and we will release a new SDK package correpsonding to that new api-version. Please stay tuned.
Also I will contact the corresponding service team to see if they could update the swagger and refresh the SDK for the exisitng api-versions accordingly

Hi @Robert-Stam thanks for this issue!
As far as I know, the AKS team is working on a new api-version, and we will release a new SDK package correpsonding to that new api-version. Please stay tuned.
Also I will contact the corresponding service team to see if they could update the swagger and refresh the SDK for the exisitng api-versions accordingly

Hi @ArcturusZhang, thanks for the reaction.
Do you have any ETA for those 2 action points?
Regards,
Robert

Hi @Robert-Stam I have sent some internal emails to draw their attention

H i @ArcturusZhang,
Do you have any news?
Regards,
Robert

@Robert-Stam, the latest version of containerservice is 2021-10-01 but please note The ContainerServices RPv2 consists of two similar services: ContainerServices and ManagedClusters. Each service has its own swagger spec.
So if you want to use ContainerServices,  2020-09-01 is the targeting one to use.
https://github.com/Azure/azure-rest-api-specs/tree/main/specification/containerservice/resource-manager#tag-package-2020-09

This is still an issue if you want to keep your code consistent vendoring
You can Cluster using ManagedClusters client but if you want to list available versions of AKS RP you need ContainerServicesClient and so vendoring different version of clients
Its just bit messy. Would be really nice if AKS RP team could iterate on clients in the same group on the same pace and not like
ClientAv1-> ClientAv2 ->clientAv3
clientBv2 -> --------------->clientBv3

As this point you release new API version and some clients are missing... In any other project it would be called regression, but this somehow becoming practice in Azure SDK where some clients "skips the release"

Imo the issue isn’t solved, please let me know which API I need to call to the supported K8s version as the latest ContainerServiceClient doesn’t support it anymore, and the ManagedClusterClient never supported this. I see this as regression.

I have the same issue, used ListOrchestrators in v46.0, updated to v62.2.0 and now it's gone

I like how for last ~4 month we speak with BOT with zero progress :D

ArcturusZhang commented on Jun 30, 2021
As far as I know, the AKS team is working on a new api-version, and we will release a new SDK package correpsonding to that new api-version. Please stay tuned.

IMO this hasn't any prio or attention at all... really disappointing.

Hello,
Just wanted to follow-up on this issue. This functionality is missing in the new SDK as well.
Are there any alternate APIs I can use?
Thanks

It's addressed, see: https://github.com/Azure/azure-sdk-for-go/issues/14915#issuecomment-1648846621
Closing this issue.


Composition doesn't seem to follow advanced composition theorem

When using (eps, delta) privacy, I expect that for a loop calling an identical mechanism k times, I should get a result that scales as k*eps/sqrt(k) -- my actual result from the odometer seems to be much closer to k*eps?

EDIT:  was an issue with slack on my end, fixed


[typescript] TS2694 Namespace error during tsc

Version
2.2.3 [native]

Reproduction
Building project with tsx results in following error that appears to be coming from styled components module (or react native itself? not too sure here)
node_modules/styled-components/native/index.d.ts(38,52): error TS2694: Namespace '"/Users/me/Documents/Repositories/project/node_modules/@types/react-native/index"' has no exported member 'NavigatorProperties'.

Are you sure package versions match with their @types/<package> dependants?

@morajabi
"@types/react": "16.0.20",
"@types/react-native": "0.50.0"
"react": "16.0.0",
"react-native": "0.50.1",

They were slightly off, updated to identical, removed and re-installed node modules, still getting same issue :/

@morajabi they released @types/react-native v0.50.2, still receiving same issue that seems to be coming from styled-components/native/index.d.ts(38,52)

Yes, styled-components/native typings have to be updated as react-native doesn't have NavigatorProperties interface anymore.
As a temporary workaround I have added --skipLibCheck parameter to tsc call: tsc --skipLibCheck.

@wodCZ yep that works, is --skipLibCheck a good flag to have for production builds? i.e assuming it is off during dev, it makes sense to me to use in prod build just in case to avoid complications with 3rd party typings.
Just getting into ts, could be wrong.

@IljaDaderko It's not safe. When you (and all your libraries) have correct type declaration files (*.d.ts), TypeScript checks that libraries you use are compatible. --skipLibCheck disables this check, so you may run into incompatibility issues.
react-native doesn't have Navigator since version 0.44 (0.43 is latest that has Navigator)
As long as this is the only typescript issue you have and don't use styled.Navigator in your code, you can temporarily use --skipLibCheck, but you should stop using this flag once this issue is resolved.

Ref PR: #1339

I'm getting this error for Koa.
../node_modules/@types/koa/index.d.ts(104,14): error TS2694: Namespace '"url"' has no exported member 'URL'.
What is going on exactly? What is @types? Is this something maintained by Koa? Is this something generated by typescript?


v3/master Lua unknown error

Hi,
I've a problem using exec: or defining a SecRuleScript with a test Lua script. Following my configurations and test:
Rule:
SecRule REQUEST_FILENAME "^/test" "phase:2,id:41,pass,exec:/opt/modseclua/test.lua

# or

SecRuleScript "/opt/modseclua/test.lua" "phase:5,pass"

My test Lua script:
function main()
	-- m.log(1, "Hello world!");
	return nil;
end

In both cases I got an empty response and an unknown error makes nginx workers to crash:
modsecurity debug log:
[4] (Rule: 41) Executing operator "Rx" with param "^/test" against REQUEST_FILENAME.
[9] Target value: "/test" (Variable: REQUEST_FILENAME)
[9] Matched vars updated.
[4] Rule returned 1.
[9] (SecDefaultAction) Running action: log
[9] Saving transaction to logs
[9] (SecDefaultAction) Running action: auditlog
[4] (SecDefaultAction) ignoring action: deny (rule does not cotains block)
[9] (SecDefaultAction) Running action: status
[4] Not running disruptive action: pass. SecRuleEngine is not On
[4] Running (non-disruptive) action: exec
[8] Running script... /opt/modseclua/test.lua

nginx error.log
2018/06/20 14:05:12 [alert] 10192#0: worker process 10276 exited on signal 11

I've try to run my script and it works:
root@mywebsite:~# cat /opt/modseclua/test.lua
function main()
	print("test")
	-- m.log(1, "Hello world!");
	return nil
end

main()
root@mywebsite:~#
root@mywebsite:~#
root@mywebsite:~# lua5.2 /opt/modseclua/test.lua
test
root@mywebsite:~#

Any idea? Am I doing something wrong?
thanks.

@theMiddleBlue, what version of Nginx and modsecurity are you running? Can you show

the output of the libmodsecurity ./configure
the output of nginx -V
the core dump backtrace (see https://www.nginx.com/resources/wiki/start/topics/tutorials/debugging/#core-dump)

./configure
ModSecurity - v3.0.2-67-g4e3a1f71 for Linux

 Mandatory dependencies
   + libInjection                                  ....v3.0.2-67-g4e3a1f71
   + SecLang tests                                 ....4e3a1f71

 Optional dependencies
   + GeoIP/MaxMind                                 ....found
      * (GeoIP) v1.6.12
         -lGeoIP, -I/usr/include/
   + LibCURL                                       ....found v7.58.0
      -lcurl,  -DWITH_CURL_SSLVERSION_TLSv1_2 -DWITH_CURL
   + YAJL                                          ....found v2.1.0
      -lyajl, -DWITH_YAJL -I/usr/include/yajl
   + LMDB                                          ....disabled
   + LibXML2                                       ....found v2.9.4
      -lxml2, -I/usr/include/libxml2 -DWITH_LIBXML2
   + SSDEEP                                        ....not found
   + LUA                                           ....found v502
      -llua5.2 -L/usr/lib/x86_64-linux-gnu/, -DWITH_LUA -DWITH_LUA_5_2 -I/usr/include/lua5.2

 Other Options
   + Test Utilities                                ....enabled
   + SecDebugLog                                   ....enabled
   + afl fuzzer                                    ....disabled
   + library examples                              ....enabled
   + Building parser                               ....disabled
   + Treating pm operations as critical section    ....disabled

nginx -V
nginx version: openresty/<IP_ADDRESS>
built by gcc 7.3.0 (Ubuntu 7.3.0-16ubuntu3)
built with OpenSSL 1.1.0g  2 Nov 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/openresty/nginx --with-cc-opt=-O2 --add-module=../ngx_devel_kit-0.3.0 --add-module=../echo-nginx-module-0.61 --add-module=../xss-nginx-module-0.06 --add-module=../ngx_coolkit-0.2rc3 --add-module=../set-misc-nginx-module-0.32 --add-module=../form-input-nginx-module-0.12 --add-module=../encrypted-session-nginx-module-0.08 --add-module=../srcache-nginx-module-0.31 --add-module=../ngx_lua-0.10.13 --add-module=../ngx_lua_upstream-0.07 --add-module=../headers-more-nginx-module-0.33 --add-module=../array-var-nginx-module-0.05 --add-module=../memc-nginx-module-0.19 --add-module=../redis2-nginx-module-0.15 --add-module=../redis-nginx-module-0.3.7 --add-module=../rds-json-nginx-module-0.15 --add-module=../rds-csv-nginx-module-0.09 --add-module=../ngx_stream_lua-0.0.5 --with-ld-opt=-Wl,-rpath,/usr/local/openresty/luajit/lib --add-module=/opt/openresty-<IP_ADDRESS>/../ModSecurity-nginx --with-stream --with-stream_ssl_module --with-http_ssl_module

Core dump:
Reading symbols from /usr/local/openresty/nginx/sbin/nginx...done.
[New LWP 13080]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `nginx: worker process                                                         '.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007fa38ba7abf3 in ?? () from /usr/lib/x86_64-linux-gnu/liblua5.2.so.0
(gdb) backtrace full
#0  0x00007fa38ba7abf3 in ?? () from /usr/lib/x86_64-linux-gnu/liblua5.2.so.0
No symbol table info available.
#1  0x00007fa38ba6d842 in lua_setglobal () from /usr/lib/x86_64-linux-gnu/liblua5.2.so.0
No symbol table info available.
#2  0x00007fa38df9d99f in modsecurity::engine::Lua::run (this=this@entry=0x5618586627c8, t=t@entry=0x561855ba6850) at engine/lua.cc:136
        luaRet = ""
        a = 0x0
        ret = 1
        L = 0x41be7378
        rc = <optimized out>
#3  0x00007fa38df84df2 in modsecurity::actions::Exec::evaluate (this=0x561858662750, rule=<optimized out>, t=0x561855ba6850) at actions/exec.cc:55
No locals.
#4  0x00007fa38df61a9f in modsecurity::actions::Action::evaluate (ruleMessage=std::shared_ptr<modsecurity::RuleMessage> (empty) = {...},
    transaction=0x561855ba6850, rule=0x561858662930, this=0x561858662750) at ../headers/modsecurity/actions/action.h:67
No locals.
#5  modsecurity::Rule::executeActionsAfterFullMatch (this=this@entry=0x561858662930, trans=trans@entry=0x561855ba6850, containsBlock=false,
    ruleMessage=std::shared_ptr<modsecurity::RuleMessage> (use count 3, weak count 0) = {...}) at rule.cc:713
        a = 0x561858662750
        __for_range = std::vector of length 2, capacity 2 = {0x561858662630, 0x561858662750}
        __for_begin = <optimized out>
        __for_end = <optimized out>
#6  0x00007fa38df69371 in modsecurity::Rule::evaluate (this=0x561858662930, trans=<optimized out>,
    ruleMessage=std::shared_ptr<modsecurity::RuleMessage> (use count 3, weak count 0) = {...}) at rule.cc:872
        globalRet = <optimized out>
        variables = <optimized out>
        recursiveGlobalRet = <optimized out>
        containsBlock = false
        finalVars = std::vector of length 1, capacity 1 = {std::unique_ptr<modsecurity::VariableValue> = {get() = 0x56185ad6e820}}
        eparam = "\"^/test\""
#7  0x00007fa38df5ca48 in modsecurity::Rules::evaluate (this=0x56185912d830, phase=phase@entry=3, transaction=transaction@entry=0x561855ba6850)
    at rules.cc:253
        remove_rule = <optimized out>
        rule = 0x561858662930
        i = 4
        rules = Python Exception <class 'gdb.error'> value has been optimized out:

#8  0x00007fa38df47d99 in modsecurity::Transaction::processRequestBody (this=0x561855ba6850) at transaction.cc:825
        a = std::unique_ptr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >> = {get() = 0x0}
        fullRequest = "Host: localhost\nConnection: keep-alive\nPragma: no-cache\nCache-Control: no-cache\nUpgrade-Insecure-Requests: 1\nUser-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_5) AppleWebKit/537.36 (KHTML, like"...
        l = std::vector of length 10, capacity 16 = {0x5618559dc9a0, 0x5618559dc840, 0x5618559dc790, 0x56185ad6ec50, 0x56185ad6eb80, 0x56185ad6ea20,
          0x56185ad6e970, 0x56185ad6e820, 0x5618581347d0, 0x56185ad6e570}
#9  0x00007fa38df48855 in modsecurity::msc_process_request_body (transaction=<optimized out>) at transaction.cc:1902
---Type <return> to continue, or q <return> to quit---
No locals.
#10 0x0000561853bca41d in ngx_http_modsecurity_pre_access_handler (r=0x561858688040)
    at /opt/openresty-<IP_ADDRESS>/../ModSecurity-nginx/src/ngx_http_modsecurity_pre_access.c:199
        ret = <optimized out>
        already_inspected = <optimized out>
        chain = <optimized out>
        ctx = 0x561858688dc0
        cf = <optimized out>
        old_pool = 0x0
#11 0x0000561853aeebef in ngx_http_core_generic_phase (r=0x561858688040, ph=0x56185ad709f8) at src/http/ngx_http_core_module.c:884
        rc = <optimized out>
#12 0x0000561853aea665 in ngx_http_core_run_phases (r=r@entry=0x561858688040) at src/http/ngx_http_core_module.c:862
        rc = <optimized out>
        ph = 0x56185ad70938
        cmcf = <optimized out>
#13 0x0000561853aea74f in ngx_http_handler (r=r@entry=0x561858688040) at src/http/ngx_http_core_module.c:845
        cmcf = <optimized out>
#14 0x0000561853af4dac in ngx_http_process_request (r=0x561858688040) at src/http/ngx_http_request.c:1950
        c = 0x5618564f8340
#15 0x0000561853af52a8 in ngx_http_process_request_headers (rev=rev@entry=0x5618565d6b30) at src/http/ngx_http_request.c:1377
        p = <optimized out>
        len = <optimized out>
        n = <optimized out>
        rc = <optimized out>
        rv = <optimized out>
        h = <optimized out>
        c = <optimized out>
        hh = <optimized out>
        r = <optimized out>
        cscf = <optimized out>
        cmcf = <optimized out>
#16 0x0000561853af5604 in ngx_http_process_request_line (rev=0x5618565d6b30) at src/http/ngx_http_request.c:1049
        n = <optimized out>
        rc = <optimized out>
        rv = <optimized out>
        host = {len =<PHONE_NUMBER>8096,
          data = 0x561853af58d1 <ngx_http_wait_request_handler+609> "H\205\300H\211\003\017\204\264\375\377\377H\215\005\354\371\377\377H\211\357H\211E\020H\203\304\030[]A\\A]\351\326\371\377\377f\017\037D"}
        c = 0x5618564f8340
        r = 0x561858688040
#17 0x0000561853adf765 in ngx_epoll_process_events (cycle=<optimized out>, timer=<optimized out>, flags=<optimized out>)
    at src/event/modules/ngx_epoll_module.c:902
---Type <return> to continue, or q <return> to quit---
        events = 1
        revents = 1
        instance = <optimized out>
        i = 0
        level = <optimized out>
        err = 0
        rev = <optimized out>
        wev = <optimized out>
        queue = <optimized out>
        c = 0x5618564f8340
#18 0x0000561853ad6b35 in ngx_process_events_and_timers (cycle=cycle@entry=0x56185741e9f0) at src/event/ngx_event.c:252
        flags = <optimized out>
        timer = <optimized out>
        delta =<PHONE_NUMBER>932
        q = <optimized out>
        ev = <optimized out>
#19 0x0000561853add768 in ngx_worker_process_cycle (cycle=cycle@entry=0x56185741e9f0, data=data@entry=0x0) at src/os/unix/ngx_process_cycle.c:820
        worker = 0
#20 0x0000561853adc1c6 in ngx_spawn_process (cycle=cycle@entry=0x56185741e9f0, proc=0x561853add6f0 <ngx_worker_process_cycle>, data=0x0,
    name=0x561853bcf2d5 "worker process", respawn=respawn@entry=1) at src/os/unix/ngx_process.c:198
        on = 1
        pid = 0
        s = 1
#21 0x0000561853adea69 in ngx_reap_children (cycle=0x56185741e9f0) at src/os/unix/ngx_process_cycle.c:687
        i = 1
        live = 0
        n = <optimized out>
        ch = {command = 2, pid = 13078, slot = 1, fd = -1}
        ccf = <optimized out>
        i = <optimized out>
        n = <optimized out>
        live = <optimized out>
        ch = <optimized out>
        ccf = <optimized out>
#22 ngx_master_process_cycle (cycle=0x56185741e9f0) at src/os/unix/ngx_process_cycle.c:180
        title = <optimized out>
        p = <optimized out>
        size = <optimized out>
        i = <optimized out>
        n = <optimized out>
        sigio = 0
        set = {__val = {0 <repeats 16 times>}}
---Type <return> to continue, or q <return> to quit---
        itv = {it_interval = {tv_sec = 20, tv_usec = 41}, it_value = {tv_sec =<PHONE_NUMBER>1088, tv_usec = 0}}
        live = <optimized out>
        delay = 0
        ls = <optimized out>
        ccf = 0x56185741fc38
#23 0x0000561853ab67e5 in main (argc=<optimized out>, argv=<optimized out>) at src/core/nginx.c:384
        b = <optimized out>
        log = 0x561853e2f3a0 <ngx_log>
        i = <optimized out>
        cycle = 0x5618559e0480
        init_cycle = {conf_ctx = 0x0, pool = 0x5618559c9630, log = 0x561853e2f3a0 <ngx_log>, new_log = {log_level = 0, file = 0x0, connection = 0,
            disk_full_time = 0, handler = 0x0, data = 0x0, writer = 0x0, wdata = 0x0, action = 0x0, next = 0x0}, log_use_stderr = 0, files = 0x0,
          free_connections = 0x0, free_connection_n = 0, modules = 0x0, modules_n = 0, modules_used = 0, reusable_connections_queue = {prev = 0x0,
            next = 0x0}, reusable_connections_n = 0, listening = {elts = 0x0, nelts = 0, size = 0, nalloc = 0, pool = 0x0}, paths = {elts = 0x0, nelts = 0,
            size = 0, nalloc = 0, pool = 0x0}, config_dump = {elts = 0x0, nelts = 0, size = 0, nalloc = 0, pool = 0x0}, config_dump_rbtree = {root = 0x0,
            sentinel = 0x0, insert = 0x0}, config_dump_sentinel = {key = 0, left = 0x0, right = 0x0, parent = 0x0, color = 0 '\000', data = 0 '\000'},
          open_files = {last = 0x0, part = {elts = 0x0, nelts = 0, next = 0x0}, size = 0, nalloc = 0, pool = 0x0}, shared_memory = {last = 0x0, part = {
              elts = 0x0, nelts = 0, next = 0x0}, size = 0, nalloc = 0, pool = 0x0}, connection_n = 0, files_n = 0, connections = 0x0, read_events = 0x0,
          write_events = 0x0, old_cycle = 0x0, conf_file = {len = 42, data = 0x7ffee5b31391 ""}, conf_param = {len = 0, data = 0x0}, conf_prefix = {len = 32,
            data = 0x7ffee5b31391 ""}, prefix = {len = 27, data = 0x561853bcb1d8 "/usr/local/openresty/nginx/"}, lock_file = {len = 0, data = 0x0},
          hostname = {len = 0, data = 0x0}, intercept_error_log_handler = 0x0, intercept_error_log_data = 0x0, entered_logger = 0}
        cd = <optimized out>
        ccf = <optimized out>

I suspect this is a conflict with OpenResty's integration of LuaJIT, but I'm not certain. It might be worth trying to build libmodsecurity with OpenResty's LuaJIT (yes, there's a bit of chicken-and-egg if you're using the standard OpenResty build lifecycle).

Actually, it's probably best not to try to make this work at all, given that Lua 5.1 (and thus LuaJIT) are unsupported by libmodsecurity . Whatever logic you need in Lua, probably best just to stick to OpenResty directly. Or better yet, use a WAF written specifically for OpenResty ;)

I can't remember if I've tested this before, but recent versions of LuaJIT seems compatible with Lua 5.2 according to luajit.org. You might want to try with DLUAJIT_ENABLE_LUA52COMPAT.

@victorhora 5.2 compatibility is already enabled by default with all modern OpenResty releases.

thanks @p0pr0ck5 and @victorhora
my purpose was to generate logs in the modsecurity auditlog format (json) for some Lua script that I use with the nginx_lua_module in openresty. Maybe I need to create the same modsec auditlog JSON using nginx_lua_module :/

I might have misunderstood you (or the issue) @p0pr0ck5, but I thought that you meant that libModSecurity is not supporting LuaJIT?
I'm not affirming that it does or does not support, I was mentioning that by glancing at the current docs of LuaJIT I believe that it might work out of the box. It would be neat if you could share your thoughts here as I didn't had the chance of testing it yet. Thanks :)

I will do some testing @victorhora, but the build chain at this point offers no way for libmodsecurity to look for a custom path for Lua headers/objects, nor does it appear to support LuaJIT. So anyone wanting to leverage LuaJIT is out of luck at this point without hacking the configure script.

Some brief updates:
I was able to reproduce the segault reported by @theMiddleBlue this morning with the following Nginx config snippet:
  modsecurity on;
        modsecurity_rules '
            SecRule REQUEST_FILENAME "^/" "phase:2,id:41,pass,exec:/home/poprocks/test.lua"
        ';

$ cat ~/test.lua
function main()
    m.log(1, "Hello world!")
    return nil
end

And pretty easy to see why:
gdb-peda$ bt
#0  0x00007fc04cbbcc93 in ?? () from /usr/lib/x86_64-linux-gnu/liblua5.2.so.0
#1  0x00007fc04cbaf842 in lua_setglobal () from /usr/lib/x86_64-linux-gnu/liblua5.2.so.0
#2  0x00007fc04e87c2bb in modsecurity::engine::Lua::run (this=this@entry=0xa50878, t=t@entry=0xa38d10) at engine/lua.cc:136
#3  0x00007fc04e865842 in modsecurity::actions::Exec::evaluate (this=0xa50800, rule=<optimized out>, t=0xa38d10)
    at actions/exec.cc:55
#4  0x00007fc04e842fe2 in modsecurity::actions::Action::evaluate (
    ruleMessage=<error reading variable: access outside bounds of object referenced via synthetic pointer>,
    transaction=0xa38d10, rule=0xa4f100, this=0xa50800) at ../headers/modsecurity/actions/action.h:67
#5  modsecurity::Rule::executeActionsAfterFullMatch (this=this@entry=0xa4f100, trans=trans@entry=0xa38d10,
    containsBlock=<optimized out>, ruleMessage=std::shared_ptr (count 3, weak 0) 0xaa3260) at rule.cc:713
#6  0x00007fc04e84aeb7 in modsecurity::Rule::evaluate (this=0xa4f100, trans=0xa38d10,
    ruleMessage=std::shared_ptr (count 3, weak 0) 0xaa3260) at rule.cc:872
#7  0x00007fc04e83e26e in modsecurity::Rules::evaluate (this=0xa4ddc0, phase=phase@entry=0x3,
    transaction=transaction@entry=0xa38d10) at rules.cc:253
#8  0x00007fc04e827e1f in modsecurity::Transaction::processRequestBody (this=0xa38d10) at transaction.cc:792
#9  0x00007fc04e8296f5 in modsecurity::msc_process_request_body (transaction=<optimized out>) at transaction.cc:1902
#10 0x000000000054a2a3 in ngx_http_modsecurity_pre_access_handler (r=0xa4bd20)
    at /home/poprocks/src/ModSecurity-nginx/src/ngx_http_modsecurity_pre_access.c:199
#11 0x000000000045c4d3 in ngx_http_core_generic_phase (r=0xa4bd20, ph=0xa6a6b0) at src/http/ngx_http_core_module.c:884
#12 0x0000000000457e15 in ngx_http_core_run_phases (r=r@entry=0xa4bd20) at src/http/ngx_http_core_module.c:862
#13 0x0000000000457ef4 in ngx_http_handler (r=r@entry=0xa4bd20) at src/http/ngx_http_core_module.c:845
#14 0x0000000000463579 in ngx_http_process_request (r=0xa4bd20) at src/http/ngx_http_request.c:1950
#15 0x0000000000463f57 in ngx_http_process_request_line (rev=0xa6eef0) at src/http/ngx_http_request.c:1049
#16 0x000000000044bf3c in ngx_epoll_process_events (cycle=0xa33d40, timer=<optimized out>, flags=<optimized out>)
    at src/event/modules/ngx_epoll_module.c:902
#17 0x000000000044196c in ngx_process_events_and_timers (cycle=cycle@entry=0xa33d40) at src/event/ngx_event.c:252
#18 0x0000000000449895 in ngx_worker_process_cycle (cycle=0xa33d40, data=<optimized out>)
    at src/os/unix/ngx_process_cycle.c:820
#19 0x0000000000448229 in ngx_spawn_process (cycle=cycle@entry=0xa33d40, proc=proc@entry=0x449850 <ngx_worker_process_cycle>,
    data=data@entry=0x0, name=name@entry=0x55056d "worker process", respawn=respawn@entry=0xfffffffffffffffd)
    at src/os/unix/ngx_process.c:198
#20 0x0000000000449c34 in ngx_start_worker_processes (cycle=cycle@entry=0xa33d40, n=0x1, type=type@entry=0xfffffffffffffffd)
    at src/os/unix/ngx_process_cycle.c:396
#21 0x000000000044aaa4 in ngx_master_process_cycle (cycle=cycle@entry=0xa33d40) at src/os/unix/ngx_process_cycle.c:135
#22 0x000000000041fe71 in main (argc=argc@entry=0x1, argv=argv@entry=0x7ffef4826238) at src/core/nginx.c:384
#23 0x00007fc04d842830 in __libc_start_main (main=0x41f430 <main>, argc=0x1, argv=0x7ffef4826238, init=<optimized out>,
    fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffef4826228) at ../csu/libc-start.c:291
#24 0x0000000000420049 in _start ()
gdb-peda$ x/20i $rip
=> 0x7fc04cbbcc93:	cmp    eax,DWORD PTR [rdi+0xc]
   0x7fc04cbbcc96:	jb     0x7fc04cbbcca0
   0x7fc04cbbcc98:	jmp    0x7fc04cbbc8a0
   0x7fc04cbbcc9d:	nop    DWORD PTR [rax]
   0x7fc04cbbcca0:	mov    rax,QWORD PTR [rdi+0x10]
   0x7fc04cbbcca4:	movsxd rsi,esi
   0x7fc04cbbcca7:	shl    rsi,0x4
   0x7fc04cbbccab:	lea    rax,[rax+rsi*1-0x10]
   0x7fc04cbbccb0:	ret
   0x7fc04cbbccb1:	nop    DWORD PTR [rax+rax*1+0x0]
   0x7fc04cbbccb6:	nop    WORD PTR cs:[rax+rax*1+0x0]
   0x7fc04cbbccc0:	movzx  ecx,BYTE PTR [rdi+0xb]
   0x7fc04cbbccc4:	mov    eax,0x1
   0x7fc04cbbccc9:	shl    eax,cl
   0x7fc04cbbcccb:	sub    eax,0x1
   0x7fc04cbbccce:	and    eax,DWORD PTR [rsi+0xc]
   0x7fc04cbbccd1:	cdqe
   0x7fc04cbbccd3:	lea    rdx,[rax+rax*4]
   0x7fc04cbbccd7:	mov    rax,QWORD PTR [rdi+0x18]
   0x7fc04cbbccdb:	lea    rax,[rax+rdx*8]
gdb-peda$ i r
rax            0x1	0x1
rbx            0x41222378	0x41222378
rcx            0x0	0x0
rdx            0x412239a0	0x412239a0
rsi            0x2	0x2
rdi            0xfffffff441225ed0	0xfffffff441225ed0
rbp            0xa50800	0xa50800
rsp            0x7ffef4823708	0x7ffef4823708
r8             0x0	0x0
r9             0xffffdfff	0xffffdfff
r10            0x7b	0x7b
r11            0x7fc04cbaf820	0x7fc04cbaf820
r12            0xa50878	0xa50878
r13            0x7fc04e8e848f	0x7fc04e8e848f
r14            0x7ffef4823980	0x7ffef4823980
r15            0xa38d10	0xa38d10
rip            0x7fc04cbbcc93	0x7fc04cbbcc93
eflags         0x10202	[ IF RF ]
cs             0x33	0x33
ss             0x2b	0x2b
ds             0x0	0x0
es             0x0	0x0
fs             0x0	0x0
gs             0x0	0x0

Meanwhile the same config with vanilla Nginx 1.15.0 works just fine, with the expected error msg:
2018/06/21 08:27:25 [info] 30065#0: *1 ModSecurity: Warning. Matched "Operator `Rx' with parameter `^/' against variable `REQUEST_FILENAME' (Value: `/' ) [file "<<reference missing or not informed>>"] [line "1"] [id "41"] [rev ""] [msg ""] [data ""] [severity "0"] [ver ""] [maturity "0"] [accuracy "0"] [hostname "<IP_ADDRESS>"] [uri "/"] [unique_id "152959484540.792096"] [ref "o0,1v4,1"], client: <IP_ADDRESS>, server: localhost, request: "GET / HTTP/1.1", host: "localhost:8000"

Next step was to modify the autogenerated Modsecurity configure script to look for the OpenResty-included LuaJIT and attempt to build with this:
poprocks@mini-vm:~/src/ModSecurity$ grep LUA_POSSIBLE_PATHS configure | head -1
LUA_POSSIBLE_PATHS="/usr/lib /usr/local/lib /usr/local/lib64 /usr/local/lua /usr/local/liblua /usr/local /opt /usr /usr/lib64 /opt/local /home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src"

But the configuration fails:
poprocks@mini-vm:~/src/ModSecurity$ ./configure --with-lua=yes
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking whether make sets $(MAKE)... (cached) yes
checking for "others/libinjection/src/libinjection_html5.c"... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
configure: Nothing about GeoIP was informed during the configure phase. Trying to detect it on the platform...
configure: using YAJL v2.1.0
configure: Nothing about GeoIP was informed during the configure phase. Trying to detect it on the platform...
configure: GeoIP library was not found
configure: Nothing about MaxMind was informed during the configure phase. Trying to detect it on the platform...
configure: MaxMind library was not found
configure: Nothing about LMDB was informed during the configure phase. Trying to detect it on the platform...
*** LOOKING AT PATH:  /usr/lib
*** LOOKING AT PATH:  /usr/local/lib
*** LOOKING AT PATH:  /usr/local/liblmdb
*** LOOKING AT PATH:  /usr/local/lmdb
*** LOOKING AT PATH:  /usr/local
*** LOOKING AT PATH:  /opt/liblmdb
*** LOOKING AT PATH:  /opt/lmdb
*** LOOKING AT PATH:  /opt
*** LOOKING AT PATH:  /usr
*** LOOKING AT PATH:  /usr/lib64
*** LOOKING AT PATH:  /opt/local
configure: LMDB library was not found
*** LOOKING AT PATH:  /usr/lib
*** LOOKING AT PATH:  /usr/local/lib
*** LOOKING AT PATH:  /usr/local/fuzzy
*** LOOKING AT PATH:  /usr/local/libfuzzy
*** LOOKING AT PATH:  /usr/local
*** LOOKING AT PATH:  /opt
*** LOOKING AT PATH:  /usr
*** LOOKING AT PATH:  /usr/lib64
*** LOOKING AT PATH:  /opt/local
configure: SSDEEP library was not found
configure: LUA support was marked as mandatory by the utilization of --with-lua=yes
*** LOOKING AT PATH:  /usr/lib
*** LOOKING AT PATH:  /usr/local/lib
*** LOOKING AT PATH:  /usr/local/lib64
*** LOOKING AT PATH:  /usr/local/lua
*** LOOKING AT PATH:  /usr/local/liblua
*** LOOKING AT PATH:  /usr/local
*** LOOKING AT PATH:  /opt
*** LOOKING AT PATH:  /usr
configure: LUA library found at: /usr/lib/x86_64-linux-gnu//liblua5.2.so.0.0.0
*** LOOKING AT PATH:  /usr/lib64
configure: LUA library found at: /usr/lib/x86_64-linux-gnu//liblua5.2.so.0.0.0
*** LOOKING AT PATH:  /opt/local
configure: LUA library found at: /usr/lib/x86_64-linux-gnu//liblua5.2.so.0.0.0
*** LOOKING AT PATH:  /home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src
configure: LUA library found at: /home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src//libluajit.so
configure: LUA headers found at: /home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src
configure: LUA_VERSION is 501 found at: /home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src
configure: error: LUA was explicitly referenced but LUA v5.1 was found and it is not currently supported on libModSecurity. LUA_VERSION: 501

Modifying the configure script to ignore 501 as an unusable version results in the following configure output:
ModSecurity - v3.0.2-64-ga3980bb for Linux

 Mandatory dependencies
   + libInjection                                  ....v3.0.2-64-ga3980bb
   + SecLang tests                                 ....a3980bb

 Optional dependencies
   + GeoIP/MaxMind                                 ....not found
   + LibCURL                                       ....found v7.47.0
      -L/usr/lib/x86_64-linux-gnu -lcurl,  -DWITH_CURL_SSLVERSION_TLSv1_2 -DWITH_CURL
   + YAJL                                          ....found v2.1.0
      -lyajl, -DWITH_YAJL -I/usr/include/yajl
   + LMDB                                          ....not found
   + LibXML2                                       ....found v2.9.3
      -lxml2, -I/usr/include/libxml2 -DWITH_LIBXML2
   + SSDEEP                                        ....not found
   + LUA                                           ....found v501
      -lluajit -L/home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src/, -DWITH_LUA -DWITH_LUA_5_1 -I/home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src

 Other Options
   + Test Utilities                                ....enabled
   + SecDebugLog                                   ....enabled
   + afl fuzzer                                    ....disabled
   + library examples                              ....enabled
   + Building parser                               ....disabled
   + Treating pm operations as critical section    ....disabled

And compilation fails as follows:
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -std=c++11 -I.. -g -I../others -fPIC -O3 -I../headers -DWITH_YAJL -I/usr/include/yajl -DPCRE_HAVE_JIT -DWITH_LUA -DWITH_LUA_5_1 -I/home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src -I/usr/include/libxml2 -DWITH_LIBXML2 -g -O2 -MT collection/backend/libmodsecurity_la-in_memory-per_process.lo -MD -MP -MF collection/backend/.deps/libmodsecurity_la-in_memory-per_process.Tpo -c collection/backend/in_memory-per_process.cc  -fPIC -DPIC -o collection/backend/.libs/libmodsecurity_la-in_memory-per_process.o
engine/lua.cc: In member function ‘bool modsecurity::engine::Lua::load(std::__cxx11::string, std::__cxx11::string*)’:
engine/lua.cc:88:75: error: too many arguments to function ‘int lua_dump(lua_State*, lua_Writer, void*)’
     if (lua_dump(L, Lua::blob_keeper, reinterpret_cast<void *>(&m_blob), 0)) {
                                                                           ^
In file included from /home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src/lua.hpp:4:0,
                 from ../src/engine/lua.h:17,
                 from engine/lua.cc:17:
/home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src/lua.h:208:14: note: declared here
 LUA_API int (lua_dump) (lua_State *L, lua_Writer writer, void *data);
              ^
engine/lua.cc: In member function ‘int modsecurity::engine::Lua::run(modsecurity::Transaction*)’:
engine/lua.cc:142:13: error: too many arguments to function ‘int lua_load(lua_State*, lua_Reader, void*, const char*)’
         NULL);
             ^
In file included from /home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src/lua.hpp:4:0,
                 from ../src/engine/lua.h:17,
                 from engine/lua.cc:17:
/home/poprocks/src/openresty-<IP_ADDRESS>/build/LuaJIT-2.1-20180420/src/lua.h:205:16: note: declared here
 LUA_API int   (lua_load) (lua_State *L, lua_Reader reader, void *dt,
                ^
engine/lua.cc:153:18: error: ‘LUA_ERRGCMM’ was not declared in this scope
             case LUA_ERRGCMM:
                  ^
engine/lua.cc: In static member function ‘static std::__cxx11::string modsecurity::engine::Lua::applyTransformations(lua_State*, modsecurity::Transaction*, int, std::__cxx11::string)’:
engine/lua.cc:405:37: error: ‘lua_rawlen’ was not declared in this scope
         int i, n = lua_rawlen(L, idx);
                                     ^
Makefile:2543: recipe for target 'engine/libmodsecurity_la-lua.lo' failed
make[3]: *** [engine/libmodsecurity_la-lua.lo] Error 1

I will dig into the Lua engine a bit and see what I can find.

Okay, a bit more hacking and I've got this working as PoC.
First, I edited the autogenerated configure script to replace the WITH_LUA_5_1 def with WITH_LUA_5_2, to simplify things. Then I tweaked the few places where there was a compiler failure:
$ git diff src/engine/lua.cc
diff --git a/src/engine/lua.cc b/src/engine/lua.cc
index cabdbea..0850611 100644
--- a/src/engine/lua.cc
+++ b/src/engine/lua.cc
@@ -138,8 +138,12 @@ int Lua::run(Transaction *t) {
     luaL_setfuncs(L, mscLuaLib, 0);
     lua_setglobal(L, "m");

+#ifdef WITH_LUA_5_2
+    int rc = lua_load(L, Lua::blob_reader, &m_blob, m_scriptName.c_str());
+#else
     int rc = lua_load(L, Lua::blob_reader, &m_blob, m_scriptName.c_str(),
         NULL);
+#endif
     if (rc != LUA_OK) {
         std::string e;
         e.assign("Failed to execute lua script: " + m_scriptName + ". ");
@@ -150,9 +154,11 @@ int Lua::run(Transaction *t) {
             case LUA_ERRMEM:
                 e.assign("Memory error. ");
                 break;
+#ifndef WITH_LUA_5_2
             case LUA_ERRGCMM:
                 e.assign("Garbage Collector error. ");
                 break;
+#endif
         }
         e.append(lua_tostring(L, -1));
 #ifndef NO_LOGS
@@ -402,7 +408,7 @@ std::string Lua::applyTransformations(lua_State *L, Transaction *t,

     if (lua_istable(L, idx)) {
         const char *name = NULL;
-        int i, n = lua_rawlen(L, idx);
+        int i, n = lua_objlen(L, idx);

         for (i = 1; i <= n; i++) {
             lua_rawgeti(L, idx, i);

This diff is absolutely not correct and needs a lot of work (particularly the #ifndef WITH_LUA_5_2), but it covers the failures. After this I was able to compile successfully. I updated the modsec rules to test transformation functions as well, since we made a small compat change in applyTransformations:
        modsecurity on;
        modsecurity_rules '
            SecDebugLog /tmp/modsec_debug.log
            SecDebugLogLevel 9
            SecRule REQUEST_FILENAME "^Qgmb" "phase:2,id:41,pass,exec:/home/poprocks/test.lua,t:sha1,t:base64encode"
        ';

And according to the debug logs we do indeed see transformations applying successfully and the Lua script executing, using the injected m global to write a log entry:
[4] Initializing transaction
[4] Transaction context created.
[4] Starting phase CONNECTION. (SecRules 0)
[9] This phase consists of 0 rule(s).
[4] Starting phase URI. (SecRules 0 + 1/2)
[4] Starting phase REQUEST_HEADERS.  (SecRules 1)
[9] This phase consists of 0 rule(s).
[4] Starting phase REQUEST_BODY. (SecRules 2)
[4] Request body processing is disabled
[9] This phase consists of 1 rule(s).
[4] (Rule: 41) Executing operator "Rx" with param "^Qgmb" against REQUEST_FILENAME.
[9]  T (0) t:sha1: "B	�J�!�?��Nl%h�����"
[9]  T (1) t:base64encode: "QgmbSvAh5T/Y/U4FbCVo18Lj/6g="
[9] Target value: "QgmbSvAh5T/Y/U4FbCVo18Lj/6g=" (Variable: REQUEST_FILENAME)
[9] Matched vars updated.
[4] Rule returned 1.
[4] Not running disruptive action: pass. SecRuleEngine is not On
[4] Running (non-disruptive) action: exec
[8] Running script... /home/poprocks/test.lua
[1] Hello world!
[9] Returning from lua script:
[4] Starting phase RESPONSE_HEADERS. (SecRules 3)
[9] This phase consists of 0 rule(s).
[9] Appending response body: 562 bytes. Limit set to: 0.000000
[4] Starting phase RESPONSE_BODY. (SecRules 4)
[4] Response body is disabled, returning... 2
[4] Starting phase LOGGING. (SecRules 5)
[9] This phase consists of 0 rule(s).
[8] Checking if this request is suitable to be saved as an audit log.
[8] Checking if this request is relevant to be part of the audit logs.
[5] Audit log engine was not set.
[8] Request was relevant to be saved. Parts: 4430

Oh, and to be sure, we are indeed using the appropriate Lua lib:
poprocks@mini-vm:~/openresty/nginx$ ldd ./sbin/nginx | grep -i lua
	libluajit-5.1.so.2 => /home/poprocks/openresty/luajit/lib/libluajit-5.1.so.2 (0x00007f5ba93f9000)

Hopefully this is of some use folks.

Lua 5.1 is now supported. Thanks @p0pr0ck5 :)
I've just pushed PR https://github.com/SpiderLabs/ModSecurity/pull/1854 to also support luaJIT which should hopefully solve this issue once and for all.
My tests went fine on a couple of distros, but it would be good if you folks could check on other distros to make sure we are covering the major ones.

LuaJIT should be supported as of https://github.com/SpiderLabs/ModSecurity/commit/857bf9da588281618a2a9e480da1edec5acb5243


Test all resilience levels

What is the expected feature or enhancement?
We should have unit tests and ideally integration tests (simulator only) for all resilience levels.
Acceptance criteria
Have unit tests for running primitives at different resilience levels.

@jyu00 - do you mean tests that actually check the quality of the results? or just tests that check that each resilience level is set  properly and doesn't fail?

From a conversation with @jyu00 and @kt474 - check that the values are correct in the metadata in the response.

Discussion from a meeting - adding this here for a little more detail:
Ways to differentiate metadata:

resilience level 1: contains readout_mitigation_num_twirled_circuits
resilience level 2: contains zne
resilience level 3: contains standard_error

# resilience level 1
Metadata: {'variance': 0.999984, 'shots': 4000, 'readout_mitigation_num_twirled_circuits': 16, 'readout_mitigation_shots_calibration': 8192}

# resilience level 2
Metadata: {'zne': {'noise_amplification': {'noise_amplifier': "<TwoQubitAmplifier:{'noise_factor_relative_tolerance': 0.01, 'random_seed': None, 'sub_folding_option': 'from_first'}>", 'noise_factors': [1, 3, 5], 'values': [0.025, -0.0245, -0.0145], 'variance': [0.999375, 0.99939975, 0.99978975], 'shots': [4000, 4000, 4000]}, 'extrapolation': {'extrapolator': 'LinearExtrapolator'}}}

# resilience level 3
Metadata: {'standard_error': 0.0013975411040892565, 'shots': 512000, 'samples': 4000, 'sampling_overhead': 1, 'total_mitigated_layers': 0}


Added confbatstest to exec tests

What is this PR About?
$subject
How do we test this?
Watch the action fail, which is OK.
cc: @redhat-cop/bats-library

/lgtm


Tailwindcss 3.0 Class Support

As always the order of the class sorting is taken from the documentation on the tailwindcss website from top to bottom.
At a glance I noticed that tailwindcss 3.0 removed classes such as border opacity and placeholder color. Some of the classes just have been renamed. See the upgrade guide for a full list of changes.
That being said these new updated classes wont have some of the old classes 2.0 has. Which would result of the classes being pushed to the end of the class list. I'm not sure how the author would like to proceed.

I'm also not sure what the test it('should remove not delete duplicate classes when flag is set') is trying to test because the test description didn't make sense to me. If anyone could help with that test that would be greatly apreciated.

it('should remove not delete duplicate classes when flag is set')
I think I figured out what was actually meant by this test and renamed the double negative to make the sentence more understandable

This plugin does not seem to be maintained. Does anyone want to make a fork with this PR?

This plugin does not seem to be maintained. Does anyone want to make a fork with this PR?

@HelloAlexPan  It might be best to just switch to this. It just came out. https://tailwindcss.com/blog/automatic-class-sorting-with-prettier

This plugin does not seem to be maintained. Does anyone want to make a fork with this PR?

Hello everyone,
I have noticed that this repository seems to be unattended. To ensure that the project continues to receive maintenance, I have made a fork and will be managing changes and updates from there. I have already merged the changes from this PR into my fork.
From now on, please make your Pull Requests in the new repository: https://github.com/guidomodarelli/sortwind.
Thank you for your understanding and cooperation.
Best regards,
Guido Modarelli

Looks like someone made an active fork here
https://github.com/guidomodarelli/sortwind


[FLINK-7311][tests] refrain from using fail(Exception#getMessage())

What is the purpose of the change
Refrain from using fail(Exception#getMessage()) because it hides the exception's stack trace and is bad style.
This PR is based on #4445.
Brief change log

remove code pattern fail(Exception#getMessage()) and let the tests throw exceptions instead

Verifying this change
This change is a trivial rework / code cleanup without any new test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

I will review this in the evening.

actually, the FLINK-7311 commit also cleanly applies to master (without FLINK-7310 that this PR is based on). Should I rebase?

If FLINK-7310 also cleanly applies to FLINK-7311 as well, i would say yes. If not it's up to you whether you want to invest the time for a rebase.

merging.


TypeError: cannot pickle '_cffi_backend.FFI' object

Using a straight copy-paste of your example application, I get this pickle error.
Traceback (most recent call last):
  File "/Users/scott/.local/bin/uvicorn", line 10, in <module>
    sys.exit(main())
  File "/Users/scott/.local/lib/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/Users/scott/.local/lib/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/Users/scott/.local/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/scott/.local/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/Users/scott/.local/lib/python3.8/site-packages/uvicorn/main.py", line 355, in main
    run(**kwargs)
  File "/Users/scott/.local/lib/python3.8/site-packages/uvicorn/main.py", line 379, in run
    server.run()
  File "/Users/scott/.local/lib/python3.8/site-packages/uvicorn/main.py", line 407, in run
    loop.run_until_complete(self.serve(sockets=sockets))
  File "uvloop/loop.pyx", line 1456, in uvloop.loop.Loop.run_until_complete
  File "/Users/scott/.local/lib/python3.8/site-packages/uvicorn/main.py", line 414, in serve
    config.load()
  File "/Users/scott/.local/lib/python3.8/site-packages/uvicorn/config.py", line 300, in load
    self.loaded_app = import_from_string(self.app)
  File "/Users/scott/.local/lib/python3.8/site-packages/uvicorn/importer.py", line 20, in import_from_string
    module = importlib.import_module(module_str)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "./main.py", line 12, in <module>
    @app.get("/", dependencies=[Depends(auth.scope("read:users"))])
  File "/Users/scott/.local/lib/python3.8/site-packages/fastapi_cloudauth/base.py", line 83, in scope
    obj = deepcopy(self)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 270, in _reconstruct
    state = deepcopy(state, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 270, in _reconstruct
    state = deepcopy(state, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 270, in _reconstruct
    state = deepcopy(state, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 270, in _reconstruct
    state = deepcopy(state, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/Users/scott/.pyenv/versions/3.8.3/lib/python3.8/copy.py", line 161, in deepcopy
    rv = reductor(4)
TypeError: cannot pickle '_cffi_backend.FFI' object

I got this too and "fixed" it by recreating my condo Env. It only occurred after I installed some new packages which I didn't end up needing (I forget which). Happens when one of the classes returns a copy of itself. I might get around to a pr

How did you install this? Please tell me reproducible way.

Hello @tokusumi, yesterday I discovered this repo. Had the same problem. Also solved it via reinstalling the environment. Here are some requirements. (I'm moving my repo from Flask to fastAPI backend, just so you don't wonder ^^). I installed via pip3 install fastapi-cloudauth. I hope this helps you reproduce the error. Sadly I didnt freeze the requirements, so I can't tell you which versions I used.
flask #removed after reinstallation
jinja2 #removed after reinstallation
gunicorn #removed after reinstallation
boto3 #removed after reinstallation
pandas #removed after reinstallation

fastapi
uvicorn
python-jose
requests
dotenv #removed after reinstallation
fastapi-cloudauth

I cannot reproduced 😢 .
I tried the followings commands in the configurations:

Python: v3.8.3
pip: v18.1
application file: copy the example in readme and paste it in app.py

Notice that you must set valid region and user pool id in environment variables in the last line.
$ python3 -m venv env
$ source env/bin/activate
$ python -m pip install -U flask jinja2 gunicorn boto3 pandas
$ python -m pip install -U fastapi uvicorn python-jose requests python-dotenv
$ python -m pip install -U fastapi-cloudauth
$ export REGION=us-east-1 && export USERPOOLID=us-east-1_xxxxxxxxx && uvicorn app:app
INFO:     Started server process [20051]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://<IP_ADDRESS>:8000 (Press CTRL+C to quit)

Ok, I reproduced it, in the above list I forgot about authlib, which was installed at the time:
$ python3 -m venv env
$ source env/bin/activate
$ python -m pip install --upgrade pip
$ python -m pip install flask jinja2 gunicorn boto3 pandas
$ python -m pip install fastapi uvicorn python-jose requests python-dotenv authlib
$ python -m pip install fastapi-cloudauth

Came across 👍 Thank you. I'll try to find a solution.

Hi, all!
I updated to resolve this problem in master and tested that in my reproducible environment. Could you check it with the latest?

@tokusumi pip3 install git+https://github.com/tokusumi/fastapi-cloudauth.git does't throw the pickle error anymore. Thanks for resolving :)

Thank you for helping us.
To fix this error, v0.1.3 was released.


Hi, How to capture function return when use python3.PyRun_AnyFile

Describe what happened:
python file contians only one function return string, but I could't capture its return when use python3.PyRun_AnyFile
Describe what you expected:
Steps to reproduce the issue:

PyRun_AnyFile only returns an error code (0 if successful, a negative number if unsuccessful). But you can't return data from Python to Go using this function.
To do that you would need to call the function directly using its <python3.PyObject>.CallObject() method, which would return a PyObject that you could "convert" to a Go string object. (I wrote about a simple example here).

@christian-korneck Thanks a lot


QA 'shootout' comparison function

For awhile we have been wanting the ability to compare across QA runs across different functions and different parameters for those functions.
We need a function (likely either a shared class method or just a function in qa_utilities.py) to merge QA output csvs so that we can compare their outputs
Further analysis work/code for such a merged csv can be handled in another issue (visualizations, dashboard, etc.)

Implemented and tested. https://github.com/printprobability/qa-workflow/commit/35e403a755585bcf48a39c1ead459fdd9aa75603


Various features

Volume for a sound effect is 100% by default.
~ expands to home in the sound paths
When a sound effect is missing (for the first time), a message is printed.

These changes look good. I'll merge them as soon as I can. Thanks for your contribution. 😁

👍


SwiftFormat

Hi, I'm using SwiftTerm for a project and looking to contribute my improvements upstream.
Would it be okay to standardize on a code formatter like SwiftFormat and reformat the repo?

Not likely, I have not spent time learning/using it, so it is not immediately something I would do.

Also, it would make it harder for me to merge my handful of work in progress branches.


Use new github output format

set-output was recently deprecated, this updates to use the recommended environment file - https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-output-parameter

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @Abacn @lostluck


IntelliJ plugin issue (Windows)

Journey isn't filling in parent component on Windows. Tested on 0.2.18. ref #3
Reproducible example: https://github.com/BFergerson/journey-intellij-windows-issue
Windows (Incorrect)

Linux (Correct)

Confirmed this issue still exists in Journey 0.3.0

I foung this issue https://github.com/CodeBrig/Journey/issues/13, could this be related? there is something wrong with this zoom level in general. By fixing #13 could there be some side-effect or relation with this issue?


[Feature] Test Case Performance Monitoring in UI

Is your feature request related to a problem? Please describe.
We’ve noticed a recurring issue where long-running test cases are causing bottlenecks by queuing up when executed simultaneously. Currently, our visibility into test execution times is limited to the entire test suite through the DAG, making it tough to pinpoint the individual culprits. This lack of detail makes it hard for us to provide the business with actionable insights into problematic test cases and overall test performance.
Challenges:

We cannot monitor the execution times of individual tests.
Identifying and addressing problematic test suites is difficult because there are limited insights and visualisations.

Describe the solution you'd like
We believe adding a feature to display the execution time of each test case on a historical graph, akin to how test results are currently visualized in the OpenMetadata UI, would be incredibly beneficial. This enhanced visibility would help us spot and address performance issues more efficiently.
Describe alternatives you've considered
We have considered alternatives such as using systems external to OpenMetadata to inform users, however having this available through the OpenMetadata interface would allow everything to be in one place.
Additional context
Add any other context or screenshots about the feature request here.

We’ve noticed a recurring issue where long-running test cases are causing bottlenecks by queuing up when executed simultaneously.

@chillerno1 are you referring to native OM test cases?

@TeddyCr yes native OM test cases and Custom SQL test cases.


DLT search issue

Prerequisites
affected version: 1.32.x
Search in scope of PAYLOAD of DLT record works incorrectly because we are splitting payload's arguments by special symbol "\u004". For example:
Payload: "temperature\u0004 30C"
it's 2 arguments:
["temperature", "30C"]
We are splitting it with \u0004 to have a way to show it as arguments in details view (dlt-render)
But in this case search like temperature\d will not give results because there are \u0004 between.
Let's discuss here, how we can resolve this issue. The easiest way for sure, just gets rid of \u0004 in the payload. But in this case, we could not show payload as a list of arguments.
Would be great to get the opinion of developers who works with DLT much: is it critical to have a payload as a list of arguments or we can present payload just as a string.

As soon as the search would be migrated to rust level, delimiters like u0004 would not be used anymore.


Ko Template : 'System.Diagnostics.DiagnosticSource, Version=<IP_ADDRESS>'

Creating a new Ko template with 'dotnet new knockout' yields:
System.IO.FileLoadException: 'Could not load file or assembly 'System.Diagnostics.DiagnosticSource, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)'

I could find similar issues for EFCore searching. I haven't added any dependencies like EFCore this is directly after generating the template and running 'npm install'.

The problem here is using a preview of dotnet core. The assembly error above isn't obvious to what it is, but this error started to appear in other projects like OpenIddict.
Installing the final of Core 2.0.0 did the trick.


Clean things up for DINO CPU release

[x] Copy documentation from class page
[x] Clean up documentation
[x] Split out the pipelined CPU from branch predictor (#61)
[x] Add in assignment descriptions
[ ] go through issues to see if any should be closed
[x] Better document the new single stepper REPL thing

Other issues to look at

#45

Note: I'm skipping the new single-stepper REPL for now. We need to merge some of those features with the singlestepper.

I'm going to call this done, for now.


Is it really excludeNativeHomeKitLights and excludeNativeHomeKitSensors?

Hi,
In my opinion, it's a bit confusing when true means include for sensors yet exclude for nativeHomeKitSensors. I think it'd be more intuitive with exclude in the name, like excludeNativeHomeKitSensors. You use it for excludeSensorTypes because all the others seem to consider "include" implied, like (include)Sensors, (include)LinkButton, (include)Group0, etc.

My thinking was: you specify that you use the native HomeKit feature of the Hue bridge for lights or sensors, therefore you don’t want homebridge-hue to expose the Hue lights or sensors.  Similar to wallSwitch to indicate that you use traditional wall switches to control your lights.

I understand. I've been using your add-on for a while now and have become a bit used to your naming convention and this confused me just now. I thought it was worth some feedback.

Thanks, I’ve updated the Wiki.


Unable to get fingerprint vectors

Hi, I'm trying to calculate the RDKit fingerprints. There are several chemicals for which I could not do that, and they all yield the same exception.
I'm using this function:
def get_fingerprint(inchi: str):
    molecule = Chem.MolFromInchi(inchi)
    fingerprint = Chem.RDKFingerprint(molecule)
    fingerprint = fingerprint.ToList()
    return fingerprint

And for some chemicals I get, in the ToList line, the exception IndexError: cannot fit 'int' into an index-sized integer.
An example for such a chemical is gold trichloride, which has the inchi InChI=1S/Au.3ClH/h;3*1H/q+3;;;/p-3 and the smiles [Au+3].[Cl-].[Cl-].[Cl-].
I'm using rdkit version 2022.3.5 on macOS 12.1. I'm using conda and install with pip install rdkit.

Please provide the specific input which is causing the problem so that we can try to help you here

I did, see the above inchi (and its corresponding smiles string) above. Do you need something more than this?

I believe this is the same bug as #5677
Small reproducible:
>>> m = Chem.MolFromSmiles("[Cl-]")
>>> fp = Chem.RDKFingerprint(m)
>>> fp.ToList()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: cannot fit 'int' into an index-sized integer
>>>

Interestingly, this works:
>>> list(fp)
[0,0,.......]

This should have been fixed with the fix for #5677, which was just merged and which will be in the 2022.09.2 patch release.
Please reopen if that's not the case.


feat: filter by channel type when subscribing to all custom events

This is a follow-up of https://github.com/pozil/streaming-monitor/issues/53.
When we support to all channels, now we have the ability to apply a filter. Currently the available options are "All events" and "Custom events only". Ideally these options could be fine-tuned, as per the description there are the following "Supported channels: PushTopic, Generic, Platform events, Change Data Capture events and Monitoring events".
The filter options could be:

All events
All custom events
Only PushTopics
Only Generic Topics
Only Platform Events
Only Change Data Capture events
Only Monitoring events

Use Case: we have a lot of custom platform events that we test and monitor, but we there also are lots of __ChangeEvent in the system that we are not interested in.

Hi @juanlu-interdiscount, I just released a new version with this feature. Enjoy!


TimescaleDB-0.9.1 fails on NixOS 17.09 with PostgreSQL10

Issue description
I can add, but cannot enable TimescaleDB from branch master to NixOS 17.09
Steps to reproduce

Copy nixpkgs/pkgs/servers/sql/postgresql/timescaledb/default.nix to nixpkgs folder
Insert in main config.nix

nixpkgs.config.packageOverrides = with pkgs; {
  timescaledb = callPackage <nixpkgs/timescaledb.nix>;
};

Deploy using nixops and it is works.
Try to plug it to PostgreSQL:

services.postgresql = {
...
  extraPlugins = [ pkgs.timescaledb ];
};

Deploy fails:
error: cannot coerce a function to a string, at /nix/store/ic6pn6y6wv8b94xs31j2spkqzxi7gaxk-nixpkgs-patched/lib/types.nix:177:42

Technical details
Your nixpkgs is -6 days old before latest channel, (channel is at commit 21693048d7258c315c7fa6e48f193677e544942c)
NIX_PATH was pinned to nixpkgs=/nix/store/ic6pn6y6wv8b94xs31j2spkqzxi7gaxk-nixpkgs-patched:fleet=/home/mrom/production/fleet (from https://github.com/NixOS/nixpkgs/archive/12512f25e9ecdf6e8fc97a80297a4d2fa89e2f99.tar.gz)
- with patch 'nixos-shell' (https://github.com/NixOS/nixpkgs/compare/master...danbst:nixos-shell.diff)
- with patch 'create journald cursor before system activation' (/nix/store/ifyqivd75a4r0rbfp9rav73knqm02m8x-patch-journal-cursor)
- with patch 'service wrapper' (https://github.com/NixOS/nixpkgs/pull/20423.diff)
- with patch 'pgbouncer' (https://github.com/NixOS/nixpkgs/commit/5eed14303630499386c391da8fcb8de887ff2200.patch)
 - system: `"x86_64-linux"`
 - host os: `Linux 4.9.86, NixOS, 17.09pre-git (Hummingbird)`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 1.11.16`
 - channels(root): `"nixos-17.09.2752.fea24301317"`
 - nixpkgs: `/nix/store/ic6pn6y6wv8b94xs31j2spkqzxi7gaxk-nixpkgs-patched`

rm: cannot remove '/nix/store/yyhwaqwg0bj1q4kyhkn8aifxqgdq71ln-postgresql-and-plugins-10.2/bin/pg_config': Permission denied
rm: cannot remove '/nix/store/yyhwaqwg0bj1q4kyhkn8aifxqgdq71ln-postgresql-and-plugins-10.2/bin/postgres': Permission denied
rm: cannot remove '/nix/store/yyhwaqwg0bj1q4kyhkn8aifxqgdq71ln-postgresql-and-plugins-10.2/bin/pg_ctl': Permission denied

again untested:
diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix
index 0dcbfe2e47a..884a9a64395 100644
--- a/nixos/modules/services/databases/postgresql.nix
+++ b/nixos/modules/services/databases/postgresql.nix
@@ -16,7 +16,7 @@ let
       postBuild =
         ''
           mkdir -p $out/bin
-          rm $out/bin/{pg_config,postgres,pg_ctl}
+          rm -f $out/bin/{pg_config,postgres,pg_ctl}
           cp --target-directory=$out/bin ${pg}/bin/{postgres,pg_config,pg_ctl}
           wrapProgram $out/bin/postgres --set NIX_PGLIBDIR $out/lib
         '';

still the same rm: cannot remove

what is fleet?

fleet is a name of deployment profile, just a folder.
fleet/nixpkgs/default.nix
amazon/nixpkgs/default.nix
kyivstar/nixpkgs/default.nix etc

Hack:

Install one another PostgreSQL extension (postage for example):

extraPlugins = [
  timescaledb
  (pkgs.postage.override { postgresql = pkgs.postgresql100; })
];

Use dev version of TimescaleDB:

--- fleet/nixpkgs/timescaledb.nix       2018-04-06 13:02:17.577362538 +0000
+++ fleet/nixpkgs/timescaledb-0.10.nix  2018-04-06 13:03:22.400172321 +0000
@@ -9,7 +9,7 @@

 stdenv.mkDerivation rec {
   name = "timescaledb-${version}";
-  version = "0.9.1";
+  version = "0.10.0-dev";

   nativeBuildInputs = [ cmake ];
   buildInputs = [ postgresql ];
@@ -17,8 +17,8 @@
   src = fetchFromGitHub {
     owner  = "timescale";
     repo   = "timescaledb";
-    rev    = "refs/tags/${version}";
-    sha256 = "00k8fk5a1xpv9nxlmafnngk31wh80h6m72vsl1hnyq7nhby7ylic";
+    rev    = "43f812c158d1cee1af25dd2708e5c4e2d90b750a";
+    sha256 = "1xq5x656d2wnz55ymk8cj181gmlpc9i6s5pp26dkakhdljxz319n";
   };

   # Fix the install phase which tries to install into the pgsql extension dir,

And it works!

I didn't see this (I also enabled several other extensions so it masked it). I might take a look since I updated Timescale recently...

@Shkiv there is new syntax for using PG plugins and making plugin overrides
See docs https://github.com/NixOS/nixpkgs/pull/64899


Check case handling in isset

See https://discuss.gohugo.io/t/config-params-should-be-all-lowercase-or-not/5051

I'm not sure, but I expect this bug happens when using the quotation notation (i.e., {{ . Params "exampleParam" }})  in any capacity since the quotes expect an exact match with what's in the in internal database (which is lowercase), whereas the dot notation (i.e., {{ .Params.exampleParam }}) is case insensitive.
Those looking to work around this bug (in their sites or themes), please look at https://github.com/key-amb/hugo-theme-bootie-docs/pull/19 for a solution.


Organize segments into time based folders when using S3 as deep storage

Currently all the segments which are uploaded to S3 are being stored in a single folder,
it would be nice to group them into time window based folders.

@pradeepgv42 can you also provide your use case here.

time window based folders would help in ease of accounting and maintaining the segments.
For example,

if we want to delete the segments beyond a certain date.
understand the segment sizes grouped by time

we would love to do this.  one problem is a segment can span across days. What should we do in that case?
Most segments will have data for a single date but during day boundaries, its possible to span across two days. There is another case of late-arriving events that might have data spanning across many dates.
We are working on segment split and merge tasks where we can plan to re-organize the segments according to the day/hour etc.
Would love to hear your thoughts

thanks, yeah that makes sense, better organizing will only be possible if segments are created in a time window respecting manger. One alternative is to organize by max(timestamp) in a window.
This might be better when segment split/merge tasks are available (not sure how exactly this would look like), maybe better to tackle this then.


Autodetect path for assemble and run scripts

Currently, we are just trying two paths for assembleand run script
https://github.com/redhat-developer/odo-supervisord-image/blob/45fcabbad8e415a422ff84394141fc810ffe5409/assemble-and-restart#L9
But according to s2i docs assemble can be in any path, and image label io.openshift.s2i.assemble-user is pointing to the correct path.
We should make sure that when we are calling assemble script from the path specified by label (if not overwritten in local .s2i folder

review: @geoand @metacosm

A very simple spring boot application that we use with java s2i is:
https://github.com/snowdrop/spring-boot-http-booster
To build the runnable jar, just execute:
./mvnw clean package
The jar is then produced in target/spring-boot-rest-http-1.5.x-y-SNAPSHOT.jar

I am very curious about this :)
As far as I understand, the  io.openshift.s2i.scripts-url label is a docker image label. How are those labels going to be queried from inside the container?
Do we plan perhaps to read this label somehow when doing odo create (I don't that label being part of the image stream, so again I don't know how it would be read), then setting an environment variable for the supervisord pod which will then be used by the bash script?
Sorry for the potentially n00b question, it's just that I am very interested in what you have in mind :)

Looking at the nodejs and python builder images, when I create a supervisord pod with one of them, I see the STI_SCRIPTS_PATH environment variable.
Unfortunately java s2i again does not play nice and does not contain it...

@surajnarwade You mentioned that you learned a lot about s2i, so I am wondering if anything of the above seems odd to you :)

Any idea why Java s2i behaves so differently? Maybe we'd be better served fixing java s2i than trying to work around its idiosyncrasies?

Although fixing Java s2i makes sense, I seriously doubt it can be achieved in a timely and friction-less manner

I am very curious about this :)
As far as I understand, the  io.openshift.s2i.scripts-url label is a docker image label. How are those labels going to be queried from inside the container?

Yes, my idea is to query it from inside the container.
It should be possible to get to labels via ImageStreamImage object in OpenShift. Similarly to how we already detect ports exposed by image (https://github.com/redhat-developer/odo/blob/2e6e6beed60f19275d09d07d8b749861620ea920/pkg/occlient/occlient.go#L337)

Do we plan perhaps to read this label somehow when doing odo create (I don't that label being part of the image stream, so again I don't know how it would be read), then setting an environment variable for the supervisord pod which will then be used by the bash script?

I think that this should be part of  assemble-and-restart script. This doesn't have to be in bash. We should convert it to Go to make it easier to deal with OpenShift API.

Looking at the nodejs and python builder images, when I create a supervisord pod with one of them, I see the STI_SCRIPTS_PATH environment variable.

If we can count onSTI_SCRIPTS_PATH env variable.  I know that some images are using it but s2i documentation just mentions the label :-(

@bparees what should be the best way for us to know what are the scripts being invoked by s2i?

the image label is the appropriate way, the env variables are deprecated.
but of course if the user supplied override scripts either by passing an arg or by providing them in their repo, those would be run instead.  So you would need to be aware of that possibility also.
What exactly are you trying to do that you need this information?

I am very curious about this :)
As far as I understand, the  io.openshift.s2i.scripts-url label is a docker image label. How are those labels going to be queried from inside the container?

Yes, my idea is to query it from inside the container.
It should be possible to get to labels via ImageStreamImage object in OpenShift. Similarly to how we already detect ports exposed by image (
odo/pkg/occlient/occlient.go
Line 337 in 2e6e6be
func getExposedPortsFromISI(image *imagev1.ImageStreamImage) ([]corev1.ContainerPort, error) {
)

Do we plan perhaps to read this label somehow when doing odo create (I don't that label being part of the image stream, so again I don't know how it would be read), then setting an environment variable for the supervisord pod which will then be used by the bash script?

I think that this should be part of assemble-and-restart script. This doesn't have to be in bash. We should convert it to Go to make it easier to deal with OpenShift API.

Cool, I'll check that out

@bparees the supervisor that is injected in the container will eventually call assemble and/or run scripts when so instructed from the command line.
This is a pod (currently from a supported s2i image) that is always running and that when odo push happens, it will call those 2 scripts to update the application.
AFAIK the first thing we check is that if there is a .s2i folder co-located with the source code, this would be run instead. There would be no way to provide overrides via an arg, as it's not running a BC but a DC with the "always running" container.
@kadel anything I'm missing?

I indeed see that we can access the docker image labels from the go code in the same way the we access the exposed ports, cool stuff!
Is there an easy way such information could be accessed via oc commands?

AFAIK the first thing we check is that if there is a .s2i folder co-located with the source code, this would be run instead. There would be no way to provide overrides via an arg, as it's not running a BC but a DC with the "always running" container.

@jorgemoralespou correct. and after checking for .s2i,  we look for /usr/libexec/s2i/assemble and /usr/local/s2i/assemble, if assemble is elswere it fails.

@geoand

Is there an easy way such information could be accessed via oc commands?

Not sure but I think it should be possible. But that would mean that we have to add oc binary to the image.

If not, then @kadel I see your point of converting the assemble-and-restart script to a binary built from go code :)

I belive that this is the best way. This will make the script more complicated, and mantaining it as bash script will be painfull.

@kadel, the more I think about it, the more I agree with creating a binary from some simple go code :)

@anmolbabu Why is this issue closed? The fix #924 isn't in yet nor is https://github.com/redhat-developer/odo-supervisord-image/pull/3

@mik-dass I am not sure how it got closed I'll reopen it right away

@mik-dass I am not sure how it got closed I'll reopen it right away

it got closed because of your commit message ;-)

@mik-dass I am not sure how it got closed I'll reopen it right away

it got closed because of your commit message ;-)

Oh :)

Changed the size to M from L as it turned out way smaller from my previous estimate
I know I am bad at estimation ;) specially when the thing is alien to me :P

@anmolbabu let me know if I can help out at all :)

@anmolbabu let me know if I can help out at all :)

@geoand Yes I am sure there might still be things that I might be missing so could you please review https://github.com/redhat-developer/odo/pull/924 and https://github.com/redhat-developer/odo-supervisord-image/pull/3 meanwhile I'll fix the tests

@anmolbabu Will do :)

@anmolbabu Will do :)

Yo!! Thanks a double ton @geoand


[Ref][ctAES] Add ctAES Library and Associated Crypter Implementation

THIS PULL REQUEST IS ONLY FOR REFERENCE ONLY (AND FOR CODE INSPECTION) - NOT MEANT TO BE MERGED STANDALONE, INSTEAD LOOK AT PR #71
What is the purpose of this pull request (PR)?
As mentioned in the aforementioned title
Any background context to help the reviewer?
Based on https://github.com/bitcoin/bitcoin/commit/6bec172eb95e195847bb6dd6d4e62ada79c98c6d
Was this PR tested and how?
Ubuntu 16.04 Running on VMWare Fusion running on macOS Sierra
Does this PR resolve an open issue (reference issue #)?
Fixes issue or JIRA tasks:

More Questions:

Does the knowledge base need an update? No

Does this PR add or change dependencies? No

Does this PR change or fork the blockchain? Umm.. no

utACK.  We don't use AES yet but will need it.  Thanks

utACK - Can be merged.

ACK - Build tested.


Add index for interactive search

Related #475 (cc @Byron)
This PR adds an index intended to improve the query for interactive search
I was able to artificially create bad startup times for atuin search --interactive by adding several thousand entries to my history with the same command. This stresses the max(timestamp) for a given command because there is no index to relate timestamps to their respective commands. With this I was able to reproduce an over 2 second startup time which became well under 1 second after this change
Opening as a draft because I want to see if this impact is noticeable for more organic histories. You can test by manually creating this index on your history.db
NOTE: for local testing your system installed atuin will get angry if extra migrations are applied that it doesn't recognize. You can still manually add the index using sqlite3 and it won't notice, but running atuin built from this PR while still having an older version installed still can give
Error: migration<PHONE_NUMBER>5627 was previously applied but is missing in the resolved migrations

Caused by:
    migration<PHONE_NUMBER>5627 was previously applied but is missing in the resolved migrations

Location:
    src/command/client.rs:68:22

I'd like to properly run the numbers for this, but anecdotally it seems faster :)
Is Atuin any faster with this index for you @chrysn?

Adding this index increased my database from 10M to 12M. Not hugely worrying.
If we have this, do we need our existing indexes? I deleted them locally to no observable downside but maybe my number of entries is too low to see that impact

However, I do definitely notice a difference in search times with the new index. LGTM

I think let's keep the existing for now and review all indices later


[2.0] Backticks in class attribute not correctly compiled

Vue.js version
2.0.0-rc.2
Reproduction Link
https://github.com/robinvdvleuten/vue-bug
Steps to reproduce
Clone and install repository then run npm run build to get uglify error.
What is Expected?
I expect that the backtick expression is correctly compiled to ES5 Javascript.
What is actually happening?
If I have the following Vue component:
<template>
  <div id="app" :class="{ [`class-${test}`]: true }">
    Hello, Vue 2.0!
  </div>
</template>

<script>
  export default {
    data () {
      return {
        property: 'test'
      }
    }
  }
</script>

The template parser doesn't seem to recognize the expression and generates the following (reproducible by running npm run build:without-uglify):
module.exports={render:function(){with(this) {
  return _h('div', {
    class: {
      [`class-${test}`]: true
    },
    attrs: {
      "id": "app"
    }
  }, ["\n  Hello, Vue 2.0!\n"])
}},staticRenderFns: []}

Which causes Uglify to throw the error;
ERROR in bundle.js from UglifyJs
Unexpected character '`' [bundle.js:5089,7]

Javascript Expressions in templates are not run through babel.

Why not? In vue 1.0 this was working without problems

Ok, reopening this. It actually works with the stzandalone build: https://jsfiddle.net/Linusborg/chw886jk/
So it should work with runtime-only and precomiled templates. Seems like a bug indeed.
Sorry for the premature close.

In 1.0, this works because 1.0 templates are preserved as strings during compilation and the contained expressions only get compiled into JavaScript functions in the browser, so it doesn't interact with UglifyJS at all.
In 2.0 templates are compiled into functions and thus will be processed by UglifyJS - however, this specific error is caused by UglifyJS not being able to handle ES2015 syntax, but a bug in Vue itself.
In the future we will add babel transpile support to render functions in vue-loader and vueify.

@yyx990803 thanks for the explanation! I've fixed it by moving the class generation to a component's method.


Refactor postEditor#insertPost to handle more situations

Ready to start getting feedback on this. There are some todos and fixmes I intend to address before this should be merged, though.

refactor postEditor#insertPost to handle a larger number of situations
fix bug in post#cloneRange when range starts in list item
add assert.isPostSimilar, assert.isRenderTreeEqual, assert.isPositionEqual
add test for ListSection#clone

Fix #249 #259

Some pretty great stuff!!!

@mixonic I've added some additional test coverage for new methods and addressed the first round of feedback. This is ready for a final review now. If all looks good, I'll squash and merge.


Invalid value of 'author' key errors in red latest.log

Hi, I keep seeing these errors in red's log. let me know if there's anything else I can provide to help resolve this.
Red version          3.3.5
discord.py          1.3.3
Python          3.8.2

[2020-04-14 22:46:17] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/duel/info.json
[2020-04-14 22:46:17] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/mxl/info.json
[2020-04-14 22:46:17] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/nickometer/info.json
[2020-04-14 22:46:17] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/penis/info.json
[2020-04-14 22:46:17] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/rpg/info.json
[2020-04-14 22:46:17] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/sfx/info.json
[2020-04-14 22:46:17] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/zalgo/info.json
[2020-04-14 22:46:18] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/info.json
[2020-04-14 22:46:18] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/duel/info.json
[2020-04-14 22:46:18] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/mxl/info.json
[2020-04-14 22:46:18] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/nickometer/info.json
[2020-04-14 22:46:18] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/penis/info.json
[2020-04-14 22:46:18] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/rpg/info.json
[2020-04-14 22:46:18] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/sfx/info.json
[2020-04-14 22:46:18] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/zalgo/info.json
[2020-04-14 22:46:22] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/duel/info.json
[2020-04-14 22:46:48] [WARNING] red.downloader: Invalid value of 'author' key (expected list, got str) in JSON information file at path: ..s/baiumbg/duel/info.json```

Hi there, those aren't errors, they're just warnings. Seems like the folks over at Red have changed the format of the info.json. You can safely ignore these, but I'll get it fixed soon anyway.


Fix:bump terraform version to 0.14

This PR is included in version 1.0.0 :tada:

This PR is included in version 1.0.8 :tada:


[Enhancment] add child fragments of removed right fragment to left fragment

What type of PR is this：

[ ] bug
[ ] feature
[x] enhancement
[ ] refactor
[ ] others

Problem Summary(Required) ：

When merging the left and right fragment to a fragment for join, the child fragments of the removed right fragment isn't added to the left fragment for the bucket shuffle join and colocate join sometimes.

[FE PR Coverage check]
:heart_eyes: pass : 2 / 2 (100.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
2
2
100.00%


[Bug]: Litellm tokeniser issue

Bug Description
i keep getting this error
'Could not automatically map together_ai/togethercomputer/llama-2-70b-chat to a tokeniser. Please use tiktoken.get_encoding to explicitly get the tokeniser you expect.'
i think the issue was mentioned here also
Version
0.8.44
Steps to Reproduce
from llama_index.llms import LiteLLM
llm = LiteLLM("together_ai/togethercomputer/llama-2-70b-chat")
embed_model = OpenAIEmbedding(embed_batch_size=42)
service_context = ServiceContext.from_defaults(llm=llm,embed_model=embed_model)
Relevant Logs/Tracbacks
No response

@smyja try setting max_tokens in the LLM init, leaving at as None only works for openai models

@smyja try setting max_tokens in the LLM init, leaving at as None only works for openai models (at least, that's my best guess from looking at the source code)

A pr has been created to resolve this. I'll close once it's merged
https://github.com/BerriAI/litellm/issues/590#issuecomment-1768964334


Various change to visitor doc

Fix a typo and doc comment.

Thank you for help. The documentation is the hardest part for me, especially in English.


native: update committee in NEO.PostPersist()

Port changes from neo-project/neo#2062 .

Waiting for C# code to settle.

I think we're with the current scheme, at least for now.


Aperture not moving in for rotation

During testing today we found that an aperture was not being selected for the rotation scan and the aperture/scatterguard was staying in ROBOT_LOAD.
This may have been because we had no beam and so the XRC was not returning a sensible aperture to go to. Even so we should probably pick some default aperture (which we may have to do in the GDA side).
Acceptance Criteria

We move to a aperture/scatterguard position before rotation

Use large as a sensible default

XRC returned null for aperture position due to there being no beam. Hyperion defaults to not moving the aperture during rotations in this instance, but we can change it to default to large instead

I seem to remember not moving the aperture was an intentional decision though. Do we still want the option for rotation to not move the aperture?

Yes, the decision was that for every parameter you could specify None to mean just give me whatever is already set. In doing the aperture/scatterguard work this has also messed me up and so I think it's just additional logic that causes confusion and we're not using. Propose we default it Large on the hyperion side and not change the GDA code here. Thoughts @dperl-dls?

sounds fine to me, really should ask Neil what the default should be but large seems sensiblee

I believe we did ask at the last planning meeting and the answer was Large but we can ask again (@neil-i03?). I can put the default in as part of https://github.com/DiamondLightSource/hyperion/issues/1266 as it cleans that up too

Ah, I was just about to do a PR for https://github.com/DiamondLightSource/hyperion/tree/1534_large_default_aperture


Channel Master: channel label right click menu

The menu should work with multiple selections
menu options:

color options
animation options
Curve interpolation: stepped, linear, spline
Copy/ Paste animation
If is slider option to change the slider Range

[ ] Add option to reset to default value


[BUG] Fix Cache invalidation in Routing

Feature Description
As the Routing Cache only caches the data locally , the invalidation was happening for the other key , which had a "public" key attached to it.
Possible Implementation
Point the tenant id to a null value instead of attaching it with a "public" prefix.
Have you spent some time checking if this feature request has been raised before?

[X] I checked and didn't find a similar issue

Have you read the Contributing Guidelines?

[X] I have read the Contributing Guidelines

Are you willing to submit a PR?
None

@@A


[Numeric] attribute acceps letter a

Within one of our form flow dialogs we use [Numeric(20,100)] to prevent the user of entering anything else than a number.
This works quite well for everything I have tested except one case: if you enter the letter a or A it is accepted and mapped to 0, which obviously is a strange behaviour.
Is this a bug or by design? And if by design what can I do to prevent this strange behaviour?

I am unable to repro this on version 3.4 of the builder.  Are you possibly using an older version?  What is the data type of the underlying field?

I'm currently using version 3.3 of Microsoft.Bot.Builder and the data type of the underlying field is int in a first case and double? in a second case.
I'll also try it out with version 3.4 when I find the time. Unfortunately, I cannot update the project where the bug occurs right now to check it there. But I'll set up a test project for this issue.
When I have news I'll let you know.
Do you know whether there was a bug related to the numeric attribute in version 3.3?

@maximilianlorent you could be facing this issue https://github.com/Microsoft/BotBuilder/issues/1530

Yeah this looks similar. However, behaviour and environment is a little bit different:
I'm using the .NET version of BotBuilder and for me v66v6 is filtered correctly - meaning I get an error here that v66v6 is not a number. But a66v6 again is not filtered correctly.
So I've got the problem with the a and A. All other letters work correct.

There have been some changes in regex generation that may have fixed this for you.  If you find the issue in the latest release, please reopen.


How to finetune Scibert with multiple GPUs?

I’d like to finetune scibert in multiple GPUs, not just one. But export CUDA_DEVICE=0 in train_allennlp_local.sh means only gpu0 is used. So where do I need to modify to utilize multiple GPUs?

I’d like to finetune scibert in multiple GPUs, not just one. But export CUDA_DEVICE=0 in train_allennlp_local.sh means only gpu0 is used. So where do I need to modify to utilize multiple GPUs?

Multiple gpu finetuning has been implemented in the codes using DataParallel from torch.
Maybe you can change export CUDA_DEVICE=0 to export CUDA_DEVICE=0,1,2,3
and you should change the way parsing this argument cuda_device in config files.