[BUG] 429 too many requests - heap issue

Describe the bug
The issue is extremely similar to #1583, the symptoms are the same, i.e. after an amount of time, we get 429 response code, too many requests. However, the return data includes:

(apologies for the low res....) You can see:
data too large, data for... which is larger than the limit of ....
That tipped us off since it ties the issue to JVM heap memory. In fact, on restart the issue is cleared. Looking at our monitoring, the JVM heap memory shows a clear leak:

The y-axis shows % heap used. The massive dip was on restart of opensearch. Both before and after the restart there's a subtle but clear leak.
To Reproduce
Difficult to reproduce. We're not doing anything special in terms of setup. The setup is:

baremetal opensearch
single server
indexing done via bulk API index calls
high write activity, low read activity (we index way more than we query)
more details will be posted in a comment below

Expected behavior
No heap memory leak
Plugins
All default plugins except "security" and "ilm", more details in comment below
Host/Environment (please complete the following information):

OS: Centos7
Version opensearch 1.2.3

Additional context
There doesnt seem to be a high queue or thread count when the problem starts. We modified the JVM XMX and XMS arguments from 30Gb to 37GB, with not much difference

output of curl 'http://localhost:9200/_cluster/stats?human=true&pretty':
{
  "_nodes" : {
    "total" : 1,
    "successful" : 1,
    "failed" : 0
  },
  "cluster_name" : "opensearch",
  "cluster_uuid" : "w6H3X1PiR3mN5cMCYO_Jgg",
  "timestamp" :<PHONE_NUMBER>080,
  "status" : "yellow",
  "indices" : {
    "count" : 1467,
    "shards" : {
      "total" : 1467,
      "primaries" : 1467,
      "replication" : 0.0,
      "index" : {
        "shards" : {
          "min" : 1,
          "max" : 1,
          "avg" : 1.0
        },
        "primaries" : {
          "min" : 1,
          "max" : 1,
          "avg" : 1.0
        },
        "replication" : {
          "min" : 0.0,
          "max" : 0.0,
          "avg" : 0.0
        }
      }
    },
    "docs" : {
      "count" :<PHONE_NUMBER>,
      "deleted" : 51108907
    },
    "store" : {
      "size" : "12.3tb",
      "size_in_bytes" :<PHONE_NUMBER>2595,
      "reserved" : "0b",
      "reserved_in_bytes" : 0
    },
    "fielddata" : {
      "memory_size" : "3.1gb",
      "memory_size_in_bytes" :<PHONE_NUMBER>,
      "evictions" : 0
    },
    "query_cache" : {
      "memory_size" : "1.1gb",
      "memory_size_in_bytes" :<PHONE_NUMBER>,
      "total_count" : 68742305,
      "hit_count" : 13965125,
      "miss_count" : 54777180,
      "cache_size" : 26999,
      "cache_count" : 31014,
      "evictions" : 4015
    },
    "completion" : {
      "size" : "0b",
      "size_in_bytes" : 0
    },
    "segments" : {
      "count" : 18920,
      "memory" : "1.4gb",
      "memory_in_bytes" :<PHONE_NUMBER>,
      "terms_memory" : "582.3mb",
      "terms_memory_in_bytes" : 610675584,
      "stored_fields_memory" : "829.9mb",
      "stored_fields_memory_in_bytes" : 870268056,
      "term_vectors_memory" : "0b",
      "term_vectors_memory_in_bytes" : 0,
      "norms_memory" : "3.2mb",
      "norms_memory_in_bytes" : 3438528,
      "points_memory" : "0b",
      "points_memory_in_bytes" : 0,
      "doc_values_memory" : "41.5mb",
      "doc_values_memory_in_bytes" : 43522584,
      "index_writer_memory" : "26.8mb",
      "index_writer_memory_in_bytes" : 28129904,
      "version_map_memory" : "184.8kb",
      "version_map_memory_in_bytes" : 189329,
      "fixed_bit_set" : "7.7mb",
      "fixed_bit_set_memory_in_bytes" : 8085296,
      "max_unsafe_auto_id_timestamp" :<PHONE_NUMBER>737,
      "file_sizes" : { }
    },
    "mappings" : {
      "field_types" : [
        {
          "name" : "boolean",
          "count" : 1640,
          "index_count" : 769
        },
        {
          "name" : "byte",
          "count" : 15,
          "index_count" : 15
        },
        {
          "name" : "date",
          "count" : 4477,
          "index_count" : 1464
        },
        {
          "name" : "double",
          "count" : 4,
          "index_count" : 1
        },
        {
          "name" : "float",
          "count" : 222,
          "index_count" : 104
        },
        {
          "name" : "geo_point",
          "count" : 35,
          "index_count" : 5
        },
        {
          "name" : "half_float",
          "count" : 56,
          "index_count" : 14
        },
        {
          "name" : "integer",
          "count" : 311,
          "index_count" : 44
        },
        {
          "name" : "ip",
          "count" : 2041,
          "index_count" : 992
        },
        {
          "name" : "keyword",
          "count" : 175220,
          "index_count" : 1466
        },
        {
          "name" : "long",
          "count" : 7740,
          "index_count" : 1035
        },
        {
          "name" : "nested",
          "count" : 47,
          "index_count" : 18
        },
        {
          "name" : "object",
          "count" : 23603,
          "index_count" : 1465
        },
        {
          "name" : "short",
          "count" : 30,
          "index_count" : 15
        },
        {
          "name" : "text",
          "count" : 4220,
          "index_count" : 119
        }
      ]
    },
    "analysis" : {
      "char_filter_types" : [ ],
      "tokenizer_types" : [ ],
      "filter_types" : [ ],
      "analyzer_types" : [ ],
      "built_in_char_filters" : [ ],
      "built_in_tokenizers" : [ ],
      "built_in_filters" : [ ],
      "built_in_analyzers" : [ ]
    }
  },
  "nodes" : {
    "count" : {
      "total" : 1,
      "coordinating_only" : 0,
      "data" : 1,
      "ingest" : 1,
      "master" : 1,
      "remote_cluster_client" : 1
    },
    "versions" : [
      "1.2.3"
    ],
    "os" : {
      "available_processors" : 64,
      "allocated_processors" : 64,
      "names" : [
        {
          "name" : "Linux",
          "count" : 1
        }
      ],
      "pretty_names" : [
        {
          "pretty_name" : "CentOS Linux 7 (Core)",
          "count" : 1
        }
      ],
      "mem" : {
        "total" : "503.3gb",
        "total_in_bytes" :<PHONE_NUMBER>56,
        "free" : "22.1gb",
        "free_in_bytes" :<PHONE_NUMBER>2,
        "used" : "481.2gb",
        "used_in_bytes" :<PHONE_NUMBER>04,
        "free_percent" : 4,
        "used_percent" : 96
      }
    },
    "process" : {
      "cpu" : {
        "percent" : 2
      },
      "open_file_descriptors" : {
        "min" : 11934,
        "max" : 11934,
        "avg" : 11934
      }
    },
    "jvm" : {
      "max_uptime" : "7.8d",
      "max_uptime_in_millis" : 678813109,
      "versions" : [
        {
          "version" : "15.0.1",
          "vm_name" : "OpenJDK 64-Bit Server VM",
          "vm_version" : "15.0.1+9",
          "vm_vendor" : "AdoptOpenJDK",
          "bundled_jdk" : true,
          "using_bundled_jdk" : true,
          "count" : 1
        }
      ],
      "mem" : {
        "heap_used" : "23.7gb",
        "heap_used_in_bytes" :<PHONE_NUMBER>6,
        "heap_max" : "36.7gb",
        "heap_max_in_bytes" :<PHONE_NUMBER>0
      },
      "threads" : 409
    },
    "fs" : {
      "total" : "17.7tb",
      "total_in_bytes" :<PHONE_NUMBER>3504,
      "free" : "4.1tb",
      "free_in_bytes" :<PHONE_NUMBER>216,
      "available" : "4.1tb",
      "available_in_bytes" :<PHONE_NUMBER>216
    },
    "plugins" : [
      {
        "name" : "opensearch-index-management",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "OpenSearch Index Management Plugin",
        "classname" : "org.opensearch.indexmanagement.IndexManagementPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [
          "opensearch-job-scheduler"
        ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-security",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "Provide access control related features for OpenSearch 1.0.0",
        "classname" : "org.opensearch.security.OpenSearchSecurityPlugin",
        "custom_foldername" : null,
        "extended_plugins" : [ ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-cross-cluster-replication",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "OpenSearch Cross Cluster Replication Plugin",
        "classname" : "org.opensearch.replication.ReplicationPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [ ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-job-scheduler",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "OpenSearch Job Scheduler plugin",
        "classname" : "org.opensearch.jobscheduler.JobSchedulerPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [ ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-anomaly-detection",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "OpenSearch anomaly detector plugin",
        "classname" : "org.opensearch.ad.AnomalyDetectorPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [
          "lang-painless",
          "opensearch-job-scheduler"
        ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-performance-analyzer",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "OpenSearch Performance Analyzer Plugin",
        "classname" : "org.opensearch.performanceanalyzer.PerformanceAnalyzerPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [ ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-reports-scheduler",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "Scheduler for Dashboards Reports Plugin",
        "classname" : "org.opensearch.reportsscheduler.ReportsSchedulerPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [
          "opensearch-job-scheduler"
        ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-asynchronous-search",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "Provides support for asynchronous search",
        "classname" : "org.opensearch.search.asynchronous.plugin.AsynchronousSearchPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [ ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-knn",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "OpenSearch k-NN plugin",
        "classname" : "org.opensearch.knn.plugin.KNNPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [
          "lang-painless"
        ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-alerting",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "Amazon OpenSearch alerting plugin",
        "classname" : "org.opensearch.alerting.AlertingPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [
          "lang-painless"
        ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-observability",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "OpenSearch Plugin for OpenSearch Dashboards Observability",
        "classname" : "org.opensearch.observability.ObservabilityPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [ ],
        "has_native_controller" : false
      },
      {
        "name" : "opensearch-sql",
        "version" : "<IP_ADDRESS>",
        "opensearch_version" : "1.2.3",
        "java_version" : "1.8",
        "description" : "OpenSearch SQL",
        "classname" : "org.opensearch.sql.plugin.SQLPlugin",
        "custom_foldername" : "",
        "extended_plugins" : [ ],
        "has_native_controller" : false
      }
    ],
    "network_types" : {
      "transport_types" : {
        "netty4" : 1
      },
      "http_types" : {
        "netty4" : 1
      }
    },
    "discovery_types" : {
      "zen" : 1
    },
    "packaging_types" : [
      {
        "type" : "tar",
        "count" : 1
      }
    ],
    "ingest" : {
      "number_of_pipelines" : 1,
      "processor_stats" : {
        "gsub" : {
          "count" : 0,
          "failed" : 0,
          "current" : 0,
          "time" : "0s",
          "time_in_millis" : 0
        },
        "script" : {
          "count" : 0,
          "failed" : 0,
          "current" : 0,
          "time" : "0s",
          "time_in_millis" : 0
        }
      }
    }
  }
}

java arguments:
-Xshare:auto
 -Dopensearch.networkaddress.cache.ttl=60
 -Dopensearch.networkaddress.cache.negative.ttl=10
 -XX:+AlwaysPreTouch
 -Xss1m
 -Djava.awt.headless=true
 -Dfile.encoding=UTF-8
 -Djna.nosys=true
 -XX:-OmitStackTraceInFastThrow
 -XX:+ShowCodeDetailsInExceptionMessages
 -Dio.netty.noUnsafe=true
 -Dio.netty.noKeySetOptimization=true
 -Dio.netty.recycler.maxCapacityPerThread=0
 -Dio.netty.allocator.numDirectArenas=0
 -Dlog4j.shutdownHookEnabled=false
 -Dlog4j2.disable.jmx=true
 -Djava.locale.providers=SPI,COMPAT
 -XX:+UseG1GC
 -XX:G1ReservePercent=25
 -XX:InitiatingHeapOccupancyPercent=30
 -Djava.io.tmpdir=/tmp/opensearch-10480127880473391840
 -XX:+HeapDumpOnOutOfMemoryError
 -XX:HeapDumpPath=data
 -XX:ErrorFile=logs/hs_err_pid%p.log
 -Xlog:gc*,gc+age=trace,safepoint:file=logs/gc.log:utctime,pid,tags:filecount=32,filesize=64m
 -Dclk.tck=100
 -Djdk.attach.allowAttachSelf=true
 -Djava.security.policy=/data/opensearch-1.2.3/plugins/opensearch-performance-analyzer/pa_config/opensearch_security.policy
 -Xms37600m
 -Xmx37600m
 -Djava.net.preferIPv4Stack=true
 -XX:MaxDirectMemorySize=19713228800
 -Dopensearch.path.home=/data/opensearch-1.2.3
 -Dopensearch.path.conf=/data/opensearch-1.2.3/config
 -Dopensearch.distribution.type=tar
 -Dopensearch.bundled_jdk=true```

Some additional notes after going through: https://www.elastic.co/guide/en/elasticsearch/reference/current/fix-common-cluster-issues.html#high-jvm-memory-pressure

Number of shards per index is 1 since this is a single server (not a cluster)
Number of mappings dont increase

@dvas0004 would you be able to share the heap dump or atleast heap histo when you see the 429 recurrence next. That would aid debugging these issues better.

We see exactly the same behavoir with OpenSearch 1.2.4 on RHEL and currently working on creating an environment to recreate this in order to try and resolve it. Everything works for a while until GC starts to go wild and almost all requests fail (including simple requests like getting a single doc by ID). Restarting is the only workaround we currently have.
@dvas0004 - have you found out the root cause for this issue yet?
If we successfully recreate I can share heap dumps and heap histo and test solutions like upgrading OpenSearch etc.

@amitmun the server displaying these symptoms is in production so it's difficult to reproduce properly. What we have noticed is that "closing" older indices using the close api seems to keep this under control...

FYI issue is still occuring...
A heap histo follows for when the heap memory is at 95% follows (WARNING.. verbose output, only first few lines pasted below, rest will be attached to file : heap_histo.txt
 num     #instances         #bytes  class name (module)
-------------------------------------------------------
   1:      32754794<PHONE_NUMBER>6  [B<EMAIL_ADDRESS>   2:      11731751<PHONE_NUMBER>  [J<EMAIL_ADDRESS>   3:        528738      781050920  [I<EMAIL_ADDRESS>   4:      18136789      725471560  java.util.HashMap$Node<EMAIL_ADDRESS>   5:       2578538      495079296  org.apache.lucene.codecs.lucene80.Lucene80DocValuesProducer$SortedSetEntry
   6:      14610915      467549280  org.apache.lucene.util.packed.DirectReader$DirectPackedReader20
   7:      13570587      434258784  java.lang.String<EMAIL_ADDRESS>   8:       7220759      404362504  java.util.TreeMap$Entry<EMAIL_ADDRESS>   9:       2527196      404351360  org.apache.lucene.codecs.lucene80.Lucene80DocValuesProducer$SortedEntry
  10:      11861580      379570560  org.apache.lucene.util.packed.DirectReader$DirectPackedReader12
  11:       5240869      377342568  org.apache.lucene.index.FieldInfo
  12:       4265685      375380280  java.nio.DirectByteBufferR<EMAIL_ADDRESS>  13:       4179281      367776728  org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl
  14:      10776781      344856992  org.apache.lucene.util.BytesRef
  15:        774795      334992832  [Ljava.util.HashMap$Node<EMAIL_ADDRESS>  16:       5261302      294632912  org.apache.lucene.util.packed.DirectMonotonicReader$Meta
  17:        818574      276629128  [Lorg.apache.lucene.util.LongValues;
  18:       1100827      261980472  [S<EMAIL_ADDRESS>  19:       2640153      253454688  org.apache.lucene.codecs.blocktree.FieldReader
  20:       2640155      168969920  org.apache.lucene.util.fst.FST
  21:       1080124      152106856  [Ljava.lang.Object<EMAIL_ADDRESS>  22:       5266435      146477168  [F<EMAIL_ADDRESS>  23:       4511610      144371520  org.apache.lucene.util.packed.DirectReader$DirectPackedReader8
  24:       2640153      105606120  org.apache.lucene.util.fst.OffHeapFSTStore
  25:       4208635      104396352  [Ljava.nio.ByteBuffer<EMAIL_ADDRESS>  26:       1608789      102962496  java.util.HashMap<EMAIL_ADDRESS>  27:         68980      101212440  [Lorg.apache.lucene.index.FieldInfo;
  28:       3834155       61346480  org.apache.lucene.util.packed.PackedInts$NullReader
  29:       1649431       52781792  org.apache.lucene.util.packed.DirectReader$DirectPackedReader24
  30:        260337       50752784  [Ljava.util.WeakHashMap$Entry<EMAIL_ADDRESS>  31:        619747       49579760  java.util.TreeMap<EMAIL_ADDRESS>


Allowed to use wildcards in schema validation

Hy!
I need this feature in my projects, so I thought I will try to solve it. My problem was how to validate the "array-like" nested objects in a complex input, and maybe it's relevant to #125 issue.
Definition:
req.checkBody({
 'users.*.email': {
    notEmpty: {
      errorMessage: 'Missing Email'
    },
    isEmail: {
      errorMessage: 'Invalid Email'
    }
  }
});

Request:
{
  "users": [
    {"email"<EMAIL_ADDRESS>    {"email": "example.mail.com"},
    {"notemail"<EMAIL_ADDRESS>  ]
}

or
{
  "users": {
    "0": {"email"<EMAIL_ADDRESS>    "1": {"email": "example.mail.com"},
    "2": {"notemail"<EMAIL_ADDRESS>  }
}

Response:
{
  "errors": [
    {
      "param": "users.1.email",
      "msg": "Invalid Email",
      "value": "example.mail.com"
    },
    {
      "param": "users.2.email",
      "msg": "Missing Email"
    },
    {
      "param": "users.2.email",
      "msg": "Invalid Email"
    }
  ]
}

This is awesome!

Amazing! I was looking for this exact same feature! It's a shame the repo owner have not even considered writing about it comment here.

Exactly what I was looking for. Glad you implemented that!
I was using cutomValidators to do it.

This is really helpful. Please include this feature on the next release.

Why this isn't in the documentation :D

Let's merge this! Pleeeeaaase!

Please merge this!!!

Why this is still conflicting?

Hello folks, v4.0.0 has finally been released, bringing with it the long awaited wildcard * support! 🎉
Please check the README for complete docs, and also check the upgrade guide.


Scheduler simulator

I need to add a test confirming that the example output provided is the same as what is produced by the simulator.

@shamsimam Thanks for the feedback, splitting the PR into those pieces is a great suggestion. I will do that now.


Vulkan buffer type 11 but only 0, 7, 9, 10 are allowed

Description
When trying to open a capture from recently released vulkan game the following error appears in the log:
RDOC 012708: [18:27:23] vk_resource_funcs.cpp( 324) - Warning - Can't create buffer covering memory allocation ResourceId::183
RDOC 012708: [18:27:23] vk_resource_funcs.cpp( 214) - Error   - Trying to bind Buffer ResourceId::199 to memory ResourceId::183 which is type 11, but only these types are allowed: 0, 7, 9, 10
RDOC 012708: [18:27:23] vk_resource_funcs.cpp( 214) - Error   - This is most likely caused by incompatible hardware or drivers between capture and replay, causing a change in memory requirements.

Steps to reproduce

Set env var ENABLE_VULKAN_RENDERDOC_CAPTURE to 1.
Run Doom Eternal and attach RenderDoc.
Press F12 in the game to make a capture.
Try to open the capture.

Environment

RenderDoc version: 1.7 / 1.8 55437ee0
Operating System: Windows 10 1909 18363.720
Graphics API: Vulkan
GPU driver: NVIDIA v445.75

RenderDoc is only intended for capturing your own programs. Capturing copyrighted programs that you do not have the rights to is not endorsed and I will provide absolutely no support for it.

@baldurk Ok. Just want to mention that under EU Directive 2009/24 part 14 "A person having a right to use a computer program should not be prevented from performing acts necessary to observe, study or test the functioning of the program, provided that those acts do not infringe the copyright in the program"
https://eur-lex.europa.eu/legal-content/EN/TXT/?qid=1435057541496&uri=CELEX:32009L0024
So please consider that observing and studying programs is legal in European Union. But yes, using the knowledge to create competing products is patent/copyright infringement.


using vault in tde_conf.json sends wrong http requests to vault

So I have managed to set up pg_tde using vault. Basically the 'mountPath' entry needs to match a mount of the kv secret engine (explanation in the docs would be cool, took me a while to figure it out). So when I created the first table it wrote a secret in that entry called "master-key-1" containing some data:

But now I have a problem that it tries to access master-key-2 in vault which does not exist and returns 404. The usual database encryption actually works as expected, but I just don't understand why it makes GET requests to master-key-2... I think it is probably a bug. I did some tests and here are the nginx logs (my vault reachable behind an nginx):
create first table
<IP> - - [16/Dec/2023:10:21:10 +0000] "GET /v1/secret/data/master-key-1 HTTP/1.1" 404 14 "-" "-" 180 0.002 [vault-vault-8200] [] <another_IP>:8200 14 0.002 404 fc88f07d2dbbe795aa8b830bcb96f7b9
<IP> - - [16/Dec/2023:10:21:10 +0000] "GET /v1/secret/data/master-key-1 HTTP/1.1" 404 14 "-" "-" 180 0.001 [vault-vault-8200] [] <another_IP>:8200 14 0.001 404 1b02460c5b4561f8d52d892193ec4b4f
<IP> - - [16/Dec/2023:10:21:10 +0000] "POST /v1/secret/data/master-key-1 HTTP/1.1" 200 279 "-" "-" 250 0.001 [vault-vault-8200] [] <another_IP>:8200 279 0.001 200 067a6fe51844a7bba789a22326af51b9
<IP> - - [16/Dec/2023:10:21:10 +0000] "GET /v1/secret/data/master-key-2 HTTP/1.1" 404 14 "-" "-" 180 0.000 [vault-vault-8200] [] <another_IP>:8200 14 0.000 404 64123d6ceda08c8d5efd126ca52cc956
insert into first table
<IP> - - [16/Dec/2023:10:22:02 +0000] "GET /v1/secret/data/master-key-2 HTTP/1.1" 404 14 "-" "-" 180 0.001 [vault-vault-8200] [] <another_IP>:8200 14 0.001 404 ee2228486eb7d2a79d01e451c80832d1
create second table
<IP> - - [16/Dec/2023:10:24:40 +0000] "GET /v1/secret/data/master-key-2 HTTP/1.1" 404 14 "-" "-" 180 0.001 [vault-vault-8200] [] <another_IP>:8200 14 0.001 404 4cf928bfca9da1e0075d98605b1f276d
<IP> - - [16/Dec/2023:10:24:40 +0000] "GET /v1/secret/data/master-key-2 HTTP/1.1" 404 14 "-" "-" 180 0.001 [vault-vault-8200] [] <another_IP>:8200 14 0.001 404 df103fe6797026a6fe913bbc3416c069
insert into second table
<IP> - - [16/Dec/2023:10:25:08 +0000] "GET /v1/secret/data/master-key-2 HTTP/1.1" 404 14 "-" "-" 180 0.000 [vault-vault-8200] [] <another_IP>:8200 14 0.000 404 3590dd22539458ee83f3bc4ba209e42f

restart database
get from table
<IP> - - [16/Dec/2023:10:26:34 +0000] "GET /v1/secret/data/master-key-1 HTTP/1.1" 200 334 "-" "-" 180 0.001 [vault-vault-8200] [] <another_IP>:8200 334 0.001 200 80496b6837dace3c909a1c89f72711bc
<IP> - - [16/Dec/2023:10:26:34 +0000] "GET /v1/secret/data/master-key-2 HTTP/1.1" 404 14 "-" "-" 180 0.000 [vault-vault-8200] [] <another_IP>:8200 14 0.000 404 44098dfa1c28f10d55423b5ce0d242c7
create third table
<IP> - - [16/Dec/2023:10:26:57 +0000] "GET /v1/secret/data/master-key-2 HTTP/1.1" 404 14 "-" "-" 180 0.002 [vault-vault-8200] [] <another_IP>:8200 14 0.002 404 67eb0544a14c0aa2c1e57b08be1531e2
<IP> - - [16/Dec/2023:10:26:57 +0000] "GET /v1/secret/data/master-key-2 HTTP/1.1" 404 14 "-" "-" 180 0.001 [vault-vault-8200] [] <another_IP>:8200 14 0.001 404 39e43c5593ffd8707e344828d66df71e

all the /v1/secret/data/master-key-1 calls are fine, it is also nice that pg_tde only needs it once but the /v1/secret/data/master-key-2 calls are unnecessary and just create a lot of traffic.
If I create this secret manually in vault UI, then GET requests are sent to /v1/secret/data/master-key-3, creating that one manually too results in GET requests sent to /v1/secret/data/master-key-4 and so on. I think there needs to be configuration option in pg_tde.conf how many of these secrets should be used.

Thanks for the bug report!
Trying to access master-key-2 is related to key rotation / versioning support (we want to find the latest version of the key), but the behavior you described is indeed a bug, I'll look into it.


feat: Adding thelpher and wastedassign lints

Description
Adds thelpher and wastedassign lints.
The former is a lint that will make sure we call t.Helper() in all test helper functions. The latter will prevent unnecessary assignments to variables.
TODOs
Read the Gruntwork contribution guidelines.

[x] Update the docs.
[x] Run the relevant tests successfully, including pre-commit checks.
[x] Ensure any 3rd party code adheres with our license policy or delete this line if its not applicable.
[x] Include release notes. If this PR is backward incompatible, include a migration guide.

Release Notes (draft)
Added thelpher lint.
Added wastedassign lint.

Update to switch to retries.


Add metric for index aliases

The new collector parses the /_alias endpoint, producing the new es_indices_aliases_alias metrics. The labels index and alias are available.
Used for filtering other index metrics by alias.
Closes #69

Released in 0.11.0


Error writing latest results

Error:
Failed to write latest results to C:\Users\andys-pc\.promptfoo\output\eval-2023-08-02T21-53-30.582Z.json:
Error: ENOENT: no such file or directory, lstat 'C:\Users\andys-pc\.promptfoo\output\latest.json'

I haven't created this directory
Could be something wrong near the fs.symlinkSync

I rolled back to 0.17.9 with npm install -g<EMAIL_ADDRESS>and it fixed the issue.

Thanks for the reports!  This should be fixed in 0.18.1


Fix #265 PostQuitMessage when WM_DESTROY in Win

Fix to exit the loop normally when the window is closed in Windows.
Related: #265 ( and #674, #438, #395, #362 )

Thanks for your review. Okay, I close it just now.

The correct fix is linked in one of the other issues I think? or grep win_handler.rs for windows or shutdown or close, there's a TODO or a FIXME in there somewhere!


feat: npx projen upgrade

What does this PR do?
Bumps dependencies with projen.
Motivation

Testing Guidelines

Additional Notes

Types of Changes

[ ] Bug fix
[ ] New feature
[ ] Breaking change
[ ] Misc (docs, refactoring, dependency upgrade, etc.)

Check all that apply

[ ] This PR's description is comprehensive
[ ] This PR contains breaking changes that are documented in the description
[ ] This PR introduces new APIs or parameters that are documented and unlikely to change in the foreseeable future
[ ] This PR impacts documentation, and it has been updated (or a ticket has been logged)
[ ] This PR's changes are covered by the automated tests
[ ] This PR collects user input/sensitive content into Datadog

Closing due to stale, feel free to re-open.


Able to add duplicate authors in settings

Describe the bug
Able to add duplicate authors in settings
To Reproduce
Steps to reproduce the behavior:

Go to settings and add the same address multiple times in authors
Click save

Expected behavior
Remove duplicates
Screenshots

cc @samuveth @bonustrack
I'll take care of this

Also this should be taken care in backend, anyone can intercept data directly to backend

good catch!


Add spilling to Aggregation Fuzzer

Extend Aggregation Fuzzer to run queries with spilling enabled.
CC: @xiaoxmeng @aditi-pandit

Fixed in #3223


restoring windows updates does not work

Describe the bug
I initially ran the "recommended" settings for windows updates but decided I want to roll them back to default.  Now, I get this error during windows updates:
Security Intelligence Update for Microsoft Defender Antivirus - KB2267602 (Version 1.391.3926.0)
Install error - 0x80070643
To Reproduce
Steps to reproduce the behavior:

Run windows updates

Expected behavior
that antivirus update should install
Additional context
I ran the windows troubleshooter and it claims to find missing registry entries and it says it put it back but i dont think that works either.  Every time I run it, it says it found missing entries but never actually fixes the issue.

Unable to replicate. Switched between both recommended and default... also restored windows update via config tab. Everything still works.

I've encountered the same issue as well, only pops up with security updates
even startup repairs don't function, saying that they couldn't fix my pc
do i just reinstall windows or just switch to linux at this point
(currently using win 10 pro)


Taxes Are Applied When Marked As Inactive

Lunar version: 0.8.0
Laravel Version: 10.43.0
PHP Version: 8.3.2
Database Driver & Version: MariaDB 11.1.2

Expected Behaviour:
When you have multiple tax zones, in my instance, postcodes, and mark one as inactive, it should not return the inactive tax zone.
Actual Behaviour:
It returns the first tax zone that matches whether it is active or inactive, and sets the tax even if it is inactive.
There are no checks for the active column on the tax zone for any of the queries in the file: core/src/Actions/Taxes/GetTaxZone.php
Steps To Reproduce:
Create a tax class.
Create a tax zone with the tax rate to 10% and set it as inactive.
Add a product to your cart, set an address, and check the tax on the product. It will be at 10%.
This works for tax countries, tax states, and tax post codes.
The only way I can disable the taxes in my production site is to delete any matching records, which is not ideal.

Relates to #1624


Make the rabbitmq host configurable

Allow rabbitmq host to be configured

Coverage remained the same at 73.504% when pulling 8fa69f0ce60ceefc50431cf81d86c98284216171 on rabbitmq-host-optional into f0b9803fa6dfe059ac3492ded4790ad85ed12b8b on master.

Coverage remained the same at 73.504% when pulling 8fa69f0ce60ceefc50431cf81d86c98284216171 on rabbitmq-host-optional into f0b9803fa6dfe059ac3492ded4790ad85ed12b8b on master.


#10570 varbinary into geometry case added

varbinary into geometry case added

We need to convert displayString as well.

We need to convert displayString as well.


[FR] - Tracking of progress of Cardano Node openSUSE:Factory OBS repository

External
Describe the feature you'd like
As we indicated in https://github.com/input-output-hk/cardano-node/issues/1484, we intend to run our block-producer on enterprise grade hardware (riscv64 or s390x) and software, as the next logical step towards this endeavour we see the need to move cardano-node into openSUSE add-on repository OBS devel:languages:haskell:cardano.
We have already started the works, and are moving as we go along, this ticket is meant to be used for tracking and a frame of reference if/when we need to provide a link to justification for proposed bugfixes of feature requests as we move along this path.
Describe alternatives you've considered
There is no alternative to get SUSE / IBM L3 support for cardano-node other than it being part of a mainline release of SUSE Linux.
Open Issues

Add recursion-schemes to openSUSE Haskell packages as required by cardano-core

Closed Issues
Footnote
I will update the issue description as we move along, and and / move the relevant issues...

[ ] Some modules in cardano-ledger-specs are missing license in cabal files:

Issue: https://github.com/input-output-hk/cardano-ledger-specs/issues/1957
Fix PR: https://github.com/input-output-hk/cardano-ledger-specs/pull/1972

[ ] cardano-ledger does not build with current version of streaming-bytestring

Issue & patch: https://github.com/input-output-hk/cardano-ledger-specs/issues/1973
Tracking: https://github.com/2nd-Layer/cardano-core-integration-testing/issues/8

Status update:

Cardano Node 1.22.1 successfully builds on x86_64 against devel:languages:haskell:ghc-8.10.x which will be promoted to openSUSE Factory and openSUSE Tumbleweed, meaning all required dependencies from Hackage will be in mainline
s390x and riscv64 pending promotion of Hackage dependencies to devel:languages:haskell project to evaluate build status

New fix PR created for cardano-binary due to the upstream PR being stalled and upstream being unresponsive there - https://github.com/input-output-hk/cardano-base/pull/196

Remove dependency on SplitMix in ChainSync demo PR: https://github.com/input-output-hk/ouroboros-network/pull/2809

@dcoutts maybe you, or someone else from Well Typed can provide us with a consulting expertise in regards to verifiable builds of Cardano Node or rather Haskell software in general?
https://github.com/openSUSE/open-build-service/issues/12200


Song Does Not Contain Widevine Drm, Skipping (Warning In Terminal)

Hi Dev,
These tracks are available in  DOLBY ATMOS but when program tries to download them. I get this WARNING info in terminal.
|
|
|
|
[WARNING  05:36:30] (Track 4/12 from URL 1/1) Song does not contain Widevine DRM, skipping
[WARNING  05:36:34] (Track 9/12 from URL 1/1) Song does not contain Widevine DRM, skipping
[WARNING  05:36:35] (Track 11/12 from URL 1/1) Song does not contain Widevine DRM, skipping
[WARNING  05:36:36] (Track 12/12 from URL 1/1) Song does not contain Widevine DRM, skipping
|
|
|
|
https://music.apple.com/kr/album/numb/1698482681?i=1698482807

|
|
|
|
https://music.apple.com/kr/album/stay-feat-tablo/1698482681?i=1698482813

|
|
|
|
https://music.apple.com/kr/album/그땐-내가/1698482681?i=1698482815

|
|
|
|
https://music.apple.com/kr/album/다음-생/1698482681?i=1698482816

Thanks

Update to the last version and try again.


TAXII Server Response

The TAXII server response is now "application/vnd.oasis.stix+json; version=2.1". Client library code is looking for "application/vnd.oasis.stix+json; version=2.0".

Bret sent some mail at 8:49.  Does that address this issue?

For context, the TAXII server being discussed here is https://test.freetaxii.com:8000/taxii/
See my response here:

I don’t think it’s a bug for the taxii client library to reject a response with STIX 2.1 content type when it asked for STIX 2.0. It would certainly be a valid feature request that the library allow you to configure what version you are asking for, though. :-)

You're very right Greg, my mistake. Definitely not a bug to reject a mismatched connection.

I'll just consider this a feature request then 😀 . I changed the title. If you have time and are interested in helping with this, I'd be happy to walk you through the process.

One other note, for whoever ends up implementing this. Even if freetaxii is returning STIX 2.1, the default for the TAXII library should be 2.0 until STIX 2.1 is at least a committee specification.

Is this related to #21?


add buffered data_pages to parquet column writer total bytes estimation

Which issue does this PR close?

Closes https://github.com/apache/arrow-rs/issues/6839.
Rationale for this change

Per https://github.com/apache/arrow-rs/issues/6839#issuecomment-2521731031, parquet column writer does not account for the buffered data pages when reporting estimated memory size
What changes are included in this PR?

Are there any user-facing changes?

Thank you, looks good to me

Thank you @onursatici  🙏


Unable to impersonate a user when already impersonating

What I'm trying to achieve
To impersonating another user while impersonating someone, because I'm too lazy to click on 'Stop impersonating' :wink:
Steps to reproduce the problem

Impersonate a customer;
Impersonate someone else;
The impersonating should have failed, meaning that you are still impersonating the same user (which may be confusing).

What I expected to happen
To be impersonating the newly selected user.
What happened instead/how it failed
Still impersonating the previous user and no message to warn me about it.

It's quite a simple bug: when wanting to impersonate a user from dashboard (/dashboard/customers/), we are clicking on a link that is pointing to /impersonate/<uid>/. So we are pointed outside of the dashboard.
As of now, Saleor is excluding dashboard from being impersonated, so if in a dashboard view we are trying to read the current user, we will get the admin user, not the impersonated user.
Now, we are trying to impersonate someone, we hit /impersonate/<uid>, which is not excluded from impersonation. So we are hitting this view as the impersonated, not as the admin. Which gets us denied from impersonating, and thus, redirects us to the homepage.
So, the fix is fairly simple: exclude /impersonate/ from impersonation in settings. That's it.
But now... The question is: why should the impersonation views be outside of dashboard? Shouldn't we move them over dashboard.customer? Wouldn't it make more sense to do that way, and thus not having to add a new exclusion?
Thanks a lot for your feedback!

@Pacu2 I try to fix that

Oh wow that's old, that just a little check to do here if I recall correctly. I never opened a pull request for it, weird.
https://github.com/mirumee/saleor/blob/2a5e3e7114471ce4bb93ab2edb0b2005cf0e10f2/saleor/core/views.py#L33-L40
Thanks @tomcio1205 for picking this up! (I'm swamped by work so I only will have time to review your PR).


Support for keystone jacks

I have a working design for this, but haven't added it to any parts yet. It's a little late in 0.9.9, but I can at least export the shape or make a front panel with one or two sockets.
If it doesn't make it in 0.9.9, it'll definitely go in the next point release.

I've committed a side panel and STEP template to 0.9.9, so support is added. I'd like to do a front panel as well before closing this issue, however.


figure release job

Remove ref to figure release job
The job has been shelved.

https://ci.openmicroscopy.org/view/Docs/job/CONTRIBUTING-merge-docs/1039/ is now green and https://www.openmicroscopy.org/site/support/contributing-staging/ci-release.html looks fine, merging and updating the live page.


Log level 'INFO' messages not being sent with winston (and potentially other loggers?)

Problem Description
I am using the winston logger alongside '@instana/collector' and I'd like to send log messages with the level 'INFO' to my Instana dashboard so they can appear next to the traces.
This process works fine for the log messages with the level 'WARN' or 'ERROR' as in the function @instana/core/src/tracing/instrumentation/loggers/winston.js#instrumentedCreateLogger() there are these function calls
shimLevelMethod(derivedLogger, 'error', true);
shimLevelMethod(derivedLogger, 'warn', false);

which makes it work for those two levels, but the shim for level 'info' is not present. When I manually add the line shimLevelMethod(derivedLogger, 'info', false); below these two it works as expected!
In the documentation for the logging it has an image of the log page with 'info' level logs showing (see here: https://www.ibm.com/docs/en/instana-observability/current?topic=apis-logging#view-logging-analytics), so is this a bug or something that is intended within Instana at the moment? It does seem like the other instrumented loggers also don't include this line so maybe it's intended?
After changing this manually the dashboard works with the 'info' level so it could also be a bug. I could just keep my modified version and vendor it alongside my code but I think this would be nice for other users to also benefit from so hopefully this can be clarified and potentially fixed.
Thanks!
(Repo here: https://github.com/tludlow/instana-testing)
Short, Self Contained Example
import instana from "@instana/collector";
instana({
  serviceName: "graphql-api-apollo",
  level: "debug",
});

export const logger = winston.createLogger({
  level: "info",
  defaultMeta: { service: "graphql-api" },
  transports: [
    new winston.transports.Console({ format: winston.format.simple() }),
  ],
  format: addTraceFormat(),
});

instana.setLogger(logger);

....

# This line is called anywhere but....
# I want this to show up in the analytics > logs dashboard but it doesnt (only level warn and error)
logger.info('Howdy');

Node.js Version
Nodejs 18.15
package.json
{
  "$schema": "https://json.schemastore.org/package.json",
  "version": "2.4.23",
  "name": "graphql-api",
  "main": "src/index.ts",
  "types": "src/index.ts",
  "scripts": {
    "compile": "tsc",
    "dev": "node ./dist/index.js"
  },
  "publishConfig": {
    "access": "public"
  },
  "dependencies": {
    "@apollo/server": "^4.5.0",
    "@faker-js/faker": "^7.6.0",
    "@instana/collector": "^2.20.1",
    "body-parser": "^1.20.2",
    "cors": "^2.8.5",
    "dotenv": "^16.0.3",
    "express": "^4.18.2",
    "global": "^4.4.0",
    "graphql": "^16.6.0",
    "winston": "^3.8.2"
  },
  "devDependencies": {
    "@swc-node/register": "^1.6.3",
    "@swc/core": "^1.3.44",
    "@types/cors": "^2.8.13",
    "@types/node": "^18.15.11",
    "typescript": "^5.0.3"
  }
}

package-lock.json
File too long when pasted

See repo here: https://github.com/tludlow/instana-testing

Other logger files here also have similar behaviour where they dont include shims for the 'info' levels:
@instana/core/src/tracing/instrumentation/loggers

Further to the above comments:
I have made the logs of level 'INFO' appear in my dashboard by changing the file found at: @instana/core/src/tracing/instrumentation/loggers/winston.js in the following ways.
This basically allows the 'INFO' level to be traced, provides the shim and then passes the level down to the createSpan() so that it can be sent along side the span data.
You can see the changes here: https://gist.github.com/tludlow/e2c6fc6d570a5e93112c70ce3165e405/revisions
(bottom revision is the current winston.js file and the top revision are my changes)
As this a common issue among the other loggers (from what I can see in the code within the other files found at @instana/core/src/tracing/instrumentation/loggers/ it would be nice to have some clarity on whether or not this is a bug or not.

This works as designed.

In the documentation for the logging it has an image of the log page with 'info' level logs showing
(see here: https://www.ibm.com/docs/en/instana-observability/current?topic=apis-logging#view-logging-analytics),
so is this a bug or something that is intended within Instana at the moment? It does seem like the other
instrumented loggers also don't include this line so maybe it's intended?

As a general rule, Instana tracers only capture log spans for logs with severity "warn" or higher. Thus, log messages collected by a tracers will only have messages with severity "warn" or higher show up in logging analytics. This is documented here: https://www.ibm.com/docs/en/instana-observability/current?topic=instana-monitoring-applications#log-messages.

Note that log messages with a severity lower than WARN are not tracked.

Logs collected from other sources do not have that restriction. That is the reason why log messages with level "info" can show up in logging analytics.
Kind regards
Bastian


Critical: Cannot access OTPs (which are password locked) after update

After the latest update, I can't access the OTP's that are locked by password protection. The ones that are not password protected are still accessible. The password seems to be accepted, but the same prompt cycles back up asking for a password. This results in an infinite loop of password prompts and never getting to the OTP.

Can’t view code following update, need this for work ASAP!

I have the same problem
FreeOTP 2.2
iOS 12.4.9 / iPhone5s
Since last update I can not unlock encrypted tokens.

After I touch the token to unlock, the enter code screen opens.
After I enter the code the code screen closes showing the FreeOTP Homescreen
The app freez 1 sek and crashes to "desktop"
Just at the moment the code screen opens again
The code screen closes immediately

Could you please help?

here is the last crash report.
Termination Reason: Namespace SPRINGBOARD, Code 0x8badf00d
Termination Description: SPRINGBOARD, scene-update watchdog transgression: org.fedorahosted.freeotp exhausted real (wall clock) time allowance of 10.00 seconds

FreeOTP-2020-11-21-121728.is.txt

this workaround still works.
https://github.com/freeotp/freeotp-ios/issues/204#issuecomment-728862912

Is there a way to disable the password?

Could you test and confirm that the following TestFlight build fixes this issue?
https://testflight.apple.com/join/kSkazqq7

I can’t :( Test flight requires iOS13 I only have 12.4.9

Could you test and confirm that the following TestFlight build fixes this issue?
https://testflight.apple.com/join/kSkazqq7

No, it doesn't. Face ID is not requested for protected items and codes are not shown.

I just tried the app via TestFlight on an iPhone 12 running iOS 14.2.1 and it doesn't work. Nothing happens when I tap on the icon on the left. I don't even get the request to unlock the phone. Tapping on the "share" icon on the right brings me to the "Share Code" page, but nothing happens when I tap on Copy to Clipboard.

I reverted the changes which caused the locked tokens authentication problems, which has worked for some users. Unfortunately if the tokens are still not accessible it appears the OTP keychain item became corrupted in a way that prevents it from being retrieved properly in the keystore. In that case the only solution would be to remove and re-add the token.
I am going to start providing TestFlight betas builds before upcoming releases are pushed to the App store, to avoid problems like this which aren't caught in my local device testing. Apologies for the troubles this caused.

Works for me - Thank you very much!

I'm experiencing the same:

can get codes for items with no lock.
CAN NOT get code for items with lock.

Biometrics never pop-up. Already gave he app photos and bluetooth access.
FreeOTP 2.3.2 on iPhone 7 wit iOS 15.7.3.


production build and run tasks, to simplify production HOWTO docs

These are compatible with the steps for a3-assembly-boilerplate. I would like to kill npm run dev like I did there too and get to a simpler nodemon startup etc., but I don't need that for this HOWTO.

So far the only mention I've found of "npm run prod" is for Laravel, and I
think they use it for something that's more like "build" than "run."
On Tue, Jul 6, 2021 at 9:49 AM Alex Bea @.***> wrote:

@.**** requested changes on this pull request.
In package.json
https://github.com/apostrophecms/a3-boilerplate/pull/25#discussion_r664572772
:

@@ -5,8 +5,9 @@
"main": "app.js",
"scripts": {
"start": "node app",

"build": "node app @apostrophecms/asset:build",
"dev": "nodemon --delay 1000ms -x "nodemon app.js""

"dev": "nodemon --delay 1000ms -x "nodemon app.js"",
"build": "NODE_ENV=production node app @apostrophecms/asset:build",
"production-start": "NODE_ENV=production node app"

I think npm run prod is more common
https://github.com/laravel/laravel/blob/8.x/package.json and feels
cleaner. If we're to start having a standard command for production I
suggest that be it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/apostrophecms/a3-boilerplate/pull/25#pullrequestreview-699977011,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAH27JCRMLB67FV4MKHH2TTWMCVXANCNFSM47XN27ZA
.

--
THOMAS BOUTELL | CHIEF TECHNOLOGY OFFICER
APOSTROPHECMS | apostrophecms.com | he/him/his

Let's use npm start for this, then. It's not doing anything interesting at the moment. Not much reason to use it since in each environment there's a more specific thing. npm run production-start seems like an unnecessary mouthful.

Others use npm run serve, though I'm not sure if that applies as much.

I didn't use use npm start because nodemon really, really wants to, and nodemon is for dev. I see that I hadn't brought it over yet, but nodemon configuration is greatly simplified if we let npm start be suitable for dev. Now I've updated the PR with dev just being nodemon.
npm run serve feels good to me, that's in this update too.
Finally I added npm run release which takes care of all the things you have to do after you git pull updated code for your site. I did not use update because that would be very confusing due to npm update being a very different beast. release is a good name because it constitutes a new release of your site.


Second instance of browser opening in production

Starting with yarn mock-dev
Observe terminal output:
[main 09:00:50.017] › >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[main 09:00:50.017] ›       Started with node env: development
[main 09:00:50.017] ›        Log location: /tmp/safe-browser.log
[main 09:00:50.018] › >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[main 09:00:50.018] › Running with derived constants:
[main 09:00:50.018] ›
[main 09:00:50.018] › isCI?:  undefined
[main 09:00:50.019] › process.env.NODE_ENV:  development
[main 09:00:50.019] › isRunningDebug? false
[main 09:00:50.019] › isRunningUnpacked? true
[main 09:00:50.020] › isRunningPackaged? false
[main 09:00:50.020] › inMainProcess? true
[main 09:00:50.020] › startedRunningProduction? false
[main 09:00:50.021] › startedRunningMock? true
[main 09:00:50.021] › isRunningSpectronTestProcess? false
[main 09:00:50.021] › isRunningTestCafeProcess? false
[main 09:00:50.021] › isRunningSpectronTestProcessingPackagedApp? false
[main 09:00:50.022] ›
[main 09:00:50.022] › >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
...
...
...
[background 09:01:00.180] › Decoding an auth req object { id: 453755908,
  uri: 'safe-auth:bAAAAAAAEYQFRWAQAAAABSAAAAAAAAAAANZSXILTNMFUWI43BMZSS443BMZSS2YTSN53XGZLSAE' }
[background 09:01:00.182] › IPC.js enqueue authQ req...
[background 09:01:00.183] › IPC.js adding req
[background 09:01:00.183] › IPC.js pushing req
[background 09:01:00.184] › Authenticator.js decoding request safe-auth:bAAAAAAAEYQFRWAQAAAABSAAAAAAAAAAANZSXILTNMFUWI43BMZSS443BMZSS2YTSN53XGZLSAE
[background 09:01:00.191] › IPC.js: another response being parsed.: { error: null,
  id: 453755908,
  res: 'safe-bmv0lm1hawrzywzllnnhzmutynjvd3nlcg:bAEAAAAAEYQFRWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC',
  type: 'DESKTOP',
  uri: 'safe-auth:bAAAAAAAEYQFRWAQAAAABSAAAAAAAAAAANZSXILTNMFUWI43BMZSS443BMZSS2YTSN53XGZLSAE' }
...
...
...
[main 09:01:00.645] › >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[main 09:01:00.645] ›       Started with node env: production
[main 09:01:00.645] ›        Log location: /tmp/safe-browser.log
[main 09:01:00.645] › >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[main 09:01:00.645] › Running with derived constants:
[main 09:01:00.646] ›
[main 09:01:00.646] › isCI?:  undefined
[main 09:01:00.646] › process.env.NODE_ENV:  production
[main 09:01:00.646] › isRunningDebug? false
[main 09:01:00.646] › isRunningUnpacked? true
[main 09:01:00.646] › isRunningPackaged? false
[main 09:01:00.647] › inMainProcess? true
[main 09:01:00.647] › startedRunningProduction? true
[main 09:01:00.647] › startedRunningMock? false
[main 09:01:00.647] › isRunningSpectronTestProcess? false
[main 09:01:00.647] › isRunningTestCafeProcess? false
[main 09:01:00.647] › isRunningSpectronTestProcessingPackagedApp? false
[main 09:01:00.647] ›
[main 09:01:00.648] › >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

When browser requests unregistered connection and system opens auth URI response, a second instance of the browser is executed, which is expected, except that it is executed with NODE_ENV=production which can cause issues for any code depending on NODE_ENV=development.
Start here, where the application path is determined.
main.prod.js is bundled by this config, where it declares NODE_ENV=production

I wonder if this can be seen to via adding mock flags in constants:
(line 140 as it stands:)
```        ? [remote.process.execPath, ${remote.getGlobal( 'appDir' )}/main.prod.js, '--mock']

It's looking like this no longer an issue.
I reported on April 4th and then the we upgraded electron on April 29th. Maybe that did it.
Anyway, recommending to close, if QA (@safesurfer ) agrees.

QA verified.


Update build configuration

:tada: This PR is included in version 2.4.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


API Deployed

Deployed. Refered from https://devcenter.heroku.com/articles/troubleshooting-node-deploys
URL: API

Issue was PORT and non-updated package-lock


Markdown: Change Preview Security Settings command does not work when preview is active

This is a re-report of an existing issue that was closed, but I'm still experiencing it.
https://github.com/Microsoft/vscode/issues/39387
Version 1.22.2
Commit 3aeede733d9a3098f7b4bdc1f66b63b0f48c1ef9
Date 2018-04-12T17:28:16.777Z
Shell 1.7.12
Renderer 58.0.3029.110
Node 7.9.0
Architecture ia32
Steps to Reproduce:

Open Untitled file.
Change the file syntax to markdown.
Click the Preview button to bring up the markdown preview.
Add an HTTP image to the markdown, to trigger the Blocked Content Message in the preview pane.
Click on the Blocked Content Message to bring up the Command Window options for Markdown: Change Preview Security Settings command.
Select an option and nothing happens.

Does this issue occur when all extensions are disabled?: Yes
If the command is run without the preview pane open it works fine, it seems specifically related to the preview pane and the Blocked Content Message.

I can't repo this in VS Code insiders. Can you please test this on insiders and ensure you select the Allow insecure content option:

Sorry @mjbvz, I didn't realise this wasn't in the release version yet. Will look at getting the insiders build in future before posting an issue.

Just downloaded the Insiders release and tested and cannot reproduce, sorry for not checking this first.


Fix Locals need to be shallow cloned.

Resolves #20. prop_template prebuilds an array of options before handling it off to handle_collection to build. I recall this being somewhat related to faster collection rendering. Unfortunately, the trade off is that we have to be cognizant of how we mutate deeply nested options as those can be the same object. In this case, I missed a required clone on locals.

@kortirso this should fix the issue you're having. Would you like me to add you as co-author as I used your reproduction branch? If so, which email would you like me to use?
Let me know, i can push out a release same day.

hi, @jho406 this solution totally fixes everything, thank you

@kortirso this should fix the issue you're having. Would you like me to add you as co-author as I used your reproduction branch? If so, which email would you like me to use?
Let me know, i can push out a release same day.

I can make PR with test, so there will be some kind of history :)

https://github.com/thoughtbot/props_template/pull/24


players endpoint not responding

hitting api.nexus-stats.com/warframe/v1/players/USERNAME/profile results in a 504 Gateway Time-out.
is this not implemented or whats going on here? There is no documentation on whether this endpoint requires authentication, in which case it should return a 40X type error response instead of timing out.
/warframe/v1/items/distribution
/warframe/v1/items/prices
return a 404 response, but are used like this in the package (ie .getItemDistribution) without any parameters. which makes me wonder if this package might be deprecated completely.

ah good to know, thanks a lot for the insight and dont worry. any documentation is better than no docu :P
did api.nexus-stats.com/warframe/v1/players/USERNAME/profile ever work?
i'm desperately looking for user data endpoints for warframe for my own proof of concept things to potentially contribute to existing project, but couldnt find anything about having player data exposed.

Yes it worked, but only 70-80% of the time. It's also not very scalable, as we really just literally read the data from a game instance via OCR (that took ~10s on average). We will definitely introduce it again in the future when we made sure it'll scale, but it will be some time until then (I'm guessing 6 months minimum)

@kitsunekyo
I should probably also mention that the player tracking bot's code is still available here, if you wish to implement it on a small scale on your own.
It requires a dedicated VM just running Warframe and Tesseract (I'd recommend 3.x) Link to Windows binaries.
That code is tied in with our API servers, so you'll have to restructure it a little, but just calling PlayerSentry.getPlayer('username') should give you all the data. It assumes you're running Warframe in 1080p with the chat window open in full size. Make sure you're not in some actual chat though, it will sometimes fail and write random stuff to the chat instead of doing the /profile <username>.

Updated this package - everything should be up to date now. You can check out the auto-generated API docs over here. Since it's all on staging only right now, I recommend connecting there as noted in the readme.
This should also work on the old API, if you need any resources from there that aren't covered on the rework yet.


k8s Enterprice operator with UBI based image

What did you do to encounter the bug?
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

What did you expect?
A clear and concise description of what you expected to happen.
I am expecting to deploy ops manager K8S enterprice operator with UBI based image. However in charts its still ubuntu based image image. Is it going to change soon?. All other are with UBI based, only operator is not changed. Any reason for that?
What happened instead?
A clear and concise description of what happened instead
Screenshots
If applicable, add screenshots to help explain your problem.
Kubernetes Cluster Information

Distribution
Version
Image Registry location (quay, or an internal registry)

Additional context
Add any other context about the problem here.
If possible, please include:

kubectl describe output
yaml definitions for your objects
log files for the operator and database pods

Hi @hariapollo , the 1.20.1 release of the enterprise operator has been fixed to use the -ubi image by default. We are currently only releasing -ubi images for the new versions of the operator.


link to Digdag server document is broken

here:
http://docs.digdag.io/command_reference.html#server
broken link:
under: -c, --config PATH
[Digdag server] http://docs.digdag.io/digdag_server.html

Fixed at #430

Hi,
Thanks for updating the links, but, where can I read about all the server properties? I am trying to have only instance of a particular scheduled workflow/project to run (so no overlaps if the workflow takes longer than the schedule frequency), I can see io.digdag.limits.maxAttempts  in the code/tests, 1. is that the right parameter to set 2. where can I see all the parameters and description for servers and clients?

@cosmok
You can check server parameters below of the In the config file, following parameters are available on http://docs.digdag.io/command_reference.html#server
client parameters are
http://docs.digdag.io/command_reference.html#client-mode-commands
Maybe, It seems that the io.digdag.limits.maxAttempts can't configure yet.
That's why you can't find the document about it.
https://github.com/treasure-data/digdag/blob/master/digdag-core/src/main/java/io/digdag/core/Limits.java#L11

@hiroyuki-sato thank you!


Added Administrative Session Check

Added the functionality to check for the Administrative Session token for the currently logged in user in the Begin section so that it doesn't run every time that a server is processed.

Thank you!

BTW, I would like change the license to MIT - due that Microsoft TechNet Gallery doesn't has option GNU GPL v3. Do you agree with your part of code?
I'll update README and I'll republish the function to Technet Gallery soon.

Sounds fine to me. Thanks!
On Wed, Feb 17, 2016 at 2:27 PM Wojciech Sciesinski <
<EMAIL_ADDRESS>wrote:

BTW, I would like change the license to MIT - due that Microsoft TechNet
Gallery doesn't has option GNU GPL v3. Do you agree with your part of code?
I'll update README and I'll republish the function to Technet Gallery soon.
—
Reply to this email directly or view it on GitHub
https://github.com/it-praktyk/Get-EventLogSpan/pull/1#issuecomment-185365197
.


Use npm 8 or later for build

Node 14 comes with npm 6 which only really understands package-lock.json version 1. Builds will try to interpret version 2, but often fail. Build logs say as much. Using node 16 or later uses npm 8 which seems to fail less frequently. For someone just starting out with the boiler plate and using a recent node version, they may find it hard to work out why their build fails at npm install on a PR, but works perfectly locally.  This should fix the problem. Fixed it for me.
Test URLs:

Before: https://main--helix-project-boilerplate--adobe.hlx.live/
After: https://patch-1--helix-project-boilerplate--ieb.hlx.live/

Not sure which test urls to provide here ?

Abandoning this as the bot doesnt appear to work for this fork. Will retry with a fork in a repo in an org rather than personal repo.


Could support for these offline features be further clarified in this document?

For example, is the Windows 10 Power Apps app supported fully when offline?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: d7ea2a5e-9757-462d-dff8-d2764bd34dcc
Version Independent ID: d7bd25f9-7acb-12b2-0134-81ccfc7b4c3a
Content: Develop offline-capable canvas apps - PowerApps
Content Source: powerapps-docs/maker/canvas-apps/offline-apps.md
Service: powerapps
GitHub Login: @gregli-msft
Microsoft Alias: gregli

Thank you for reaching out. As the article explains, you can use offline capability for Power Apps mobile app. However, there are limitations as described in the limitations section. Please review storage and merge conflict related limitations mentioned while using offline capability.


Automated cherry pick of #11718

Cherry pick of #11718 on release-7.6.
/cc  @koox00
NONE

Will try to auto merge this PR once all tests and checks are passing. This might take up to an hour.

Trying to auto merge this PR.


readData takes request response

Not sure where the best place of communication is so I've opened up another ticket for this, I've been working on implementing DOM.getFlattenedDocument so that I can get the contents. However, this line and the socket returns are a bit awkward.
https://github.com/gsouf/headless-chromium-php/blob/f584792aced5033fda1968d8c666b5b91af57835/src/Communication/Connection.php#L259
An example response looks like;
[2017-12-06 23:10:43] DEBUG socket: |=> sending data:{"id":6,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":5,\"method\":\"DOM.enable\",\"params\":[]}","sessionId":"21dee360-7e84-45dd-b3ba-1573ab9f4e1b:1"}}
[2017-12-06 23:10:43] DEBUG socket: <=| receiving data:{"method":"Target.receivedMessageFromTarget","params":{"sessionId":"21dee360-7e84-45dd-b3ba-1573ab9f4e1b:1","message":"{\"id\":3,\"result\":{\"frameId\":\"26824.1\"}}","targetId":"21dee360-7e84-45dd-b3ba-1573ab9f4e1b"}}
[2017-12-06 23:10:43] DEBUG socket: <=| receiving data:{"id":6,"result":{}}
[2017-12-06 23:10:43] DEBUG socket: |=> sending data:{"id":8,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":7,\"method\":\"DOM.getFlattenedDocument\",\"params\":{\"depth\":-1}}","sessionId":"21dee360-7e84-45dd-b3ba-1573ab9f4e1b:1"}}
[2017-12-06 23:10:44] DEBUG socket: <=| receiving data:{"method":"Target.receivedMessageFromTarget","params":{"sessionId":"21dee360-7e84-45dd-b3ba-1573ab9f4e1b:1","message":"{\"id\":5,\"result\":{}}","targetId":"21dee360-7e84-45dd-b3ba-1573ab9f4e1b"}}
[2017-12-06 23:10:44] DEBUG socket: <=| receiving data:{"id":8,"result":{}}
[2017-12-06 23:10:44] DEBUG socket: <=| receiving data:{"method":"Target.receivedMessageFromTarget","params":{"sessionId":"21dee360-7e84-45dd-b3ba-1573ab9f4e1b:1","message":"{\"id\":7,\"result\":{\"nodes\":[{\"nodeId\":2,\"parentId\":1,\"backendNodeId\":16,\"nodeType\":10,\"nodeName\":\"html\",\"localName\":\"\",\"nodeValue\":\"\",\"publicId\":\"\",\"systemId\":\"\"},{\"nodeId\":5,\"parentId\":4,\"backendNodeId\":19,\"nodeType\":1,\"nodeName\":\"META\",\"localName\":\"meta\",\"nodeValue\":\"\",\"childNodeCount\":0,\"children\":[],\"attributes\":[\"content\",\"/images/branding/googleg/1x/googleg_standard_color_128dp.png\",\"itemp .... truncated ....

Problem here is, my response from the request, I guess it fulfilled the requirements of checkForResponse;
object(HeadlessChromium\Communication\Response)#103 (2) {
  ["message":protected]=>
  object(HeadlessChromium\Communication\Message)#98 (3) {
    ["id":protected]=>
    int(8)
    ["method":protected]=>
    string(26) "Target.sendMessageToTarget"
    ["params":protected]=>
    array(2) {
      ["message"]=>
      string(66) "{"id":7,"method":"DOM.getFlattenedDocument","params":{"depth":-1}}"
      ["sessionId"]=>
      string(38) "21dee360-7e84-45dd-b3ba-1573ab9f4e1b:1"
    }
  }
  ["data":protected]=>
  array(2) {
    ["id"]=>
    int(8)
    ["result"]=>
    array(0) {
    }
  }
}

I'm not sure if there's cases where you'd want to keep multiple responses for the same request (or if there's any requests that even do that) or, to say, filter out responses to requests that don't get immediate responses.
More than happy to take direction on this and implement some methods that manipulate the DOM, maybe a separate class that can be called with a Page object.
Thanks!

Chrome wont send multiple response for a single request. It uses events to communicate about things that happen.
I have some pending work concerning communication with DOM and loading. I'm affraid dont have a clear answer on this topic yet

I might not have phrased that well, but, I think there's two points here;

Waiting for the relevant event, currently, you get the result of the request and not of the event response later if you return sendMessage() from an event

Perhaps just creating a set of classes that abstract all of the DevTools domains; https://chromedevtools.github.io/devtools-protocol/

I can work on abstracting them but, the missing piece there is defining that communication layer - especially if there's a dependency on knowing an event has been triggered - or in some ways, chaining commands. What are your thoughts on this?

Hi @andrew-s I made some progress on this field and now sending message to a target will return message from the target.
You can see example for getting data from the page: https://github.com/gsouf/headless-chromium-php#evaluate-script-on-the-page


make Group as sub-classes of Chatroom and Create new class Contact sub-class of Chatroom

There are two types of Chatrooms

Group
Contact

Collect all common functions inside class Chatroom

Fixed in https://github.com/Tithibots/tithiwa/commit/7d5c035946c73cc30c022c0afa02e995762f73b4


Add setOptions to set function

This PR updates the set function to allow for an optional setOptions object to be passed.
fyi, when installing my forked library through npm install github:ahaider48/Firestore-simple --save I wasn't getting the dist folder in my node modules. I had to change prepublish to prepare in my fork's package.json for it to work. (using npm v6.4.1)

Hi @ahaider48 ! Thank you for you contributing!
I'm sorry, I don't want to adding optional setOptions object.
I think merge feature in set() is not simple. If you use merge, some document schema will be different from others.
If you really want to use it, make your own class extends FirestoreSimple and create new method is better way I think.
By the way, thank you point prepare feature. I fixed it in version 2.0 branch it may be released in this year.
099fe0a

Fair enough. I see now what you mean by schema 👍
Closing the PR.
Thanks.


idea, use lightweight http server

Currently jsonrpc-http-server uses hyper. And since I remember there were some issues with it (that's why we have forked it). What do you think about replacing hyper with some other / smaller library? eg. tiny-http

tiny-http is using thread pool, would be best to have something based on event loop instead

Might want to check out https://github.com/tokio-rs/tokio-minihttp


Remove version: Taozuhong.Kangaroo v4.99.9

Checklist for Pull Requests

[x] Have you signed the Contributor License Agreement?
[x] Is there a linked Issue?

Manifests

[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.6 schema?

Note: <path> is the directory's name containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

URL: https://github.com/dbkangaroo/kangaroo/releases/download/v<IP_ADDRESS>430/kangaroo-multiple-<IP_ADDRESS>430-x86_64.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 911)


Plugin with @version cannot be installed

I tried to workaround an issue in the latest version of the influxdb plugin with RUNTIME_INSTALL=influxdb@962503e, but unfortunately it does not work:
server-1 | 2016-05-13T02:34:11.152735464Z influxdb@962503e
server-1 | 2016-05-13T02:34:11.153618396Z 'sensu-plugins' 'influxdb@962503e' 'master'
server-1 | 2016-05-13T02:34:11.158163237Z /bin/install: line 84: /tmp/sensu-plugins-${PLUGIN}-${VERSION}/pid: ambiguous redirect

It seems that bash does not recognise arguments inside quotes:
root@client-1:/# A=1+2; IFS="+"; declare -a N=($A); echo ${N[0]}
1
root@client-1:/# A=1+2; IFS="+"; declare -a N=($A); echo ${N[1]}
2
root@client-1:/# A=1+2; IFS="+"; declare -a N=("$A"); echo ${N[1]}

root@client-1:/# A=1+2; IFS="+"; declare -a N=("$A"); echo ${N[0]}
1 2

@xgin did my refactor fix this or is it still an issue?

@sstarcher it did fix, thank you!
One note: a short hash could not be used:
RUNTIME_INSTALL=influxdb@962503e does not work, because the archive downloaded from github contains full hash in the folder name:
REPO=sensu-plugins
PLUGIN=influxdb
VERSION=962503e
curl -Ls https://github.com/$REPO/sensu-plugins-$PLUGIN/archive/$VERSION.tar.gz > "$PLUGIN"
tar -xzf "$PLUGIN" && rm "$PLUGIN"
cd sensu-plugins-$PLUGIN-$VERSION

It fails with  cd: sensu-plugins-influxdb-962503e: No such file or directory
The folder sensu-plugins-influxdb-962503e179121518a62d76b02e9c3039013d539a was extracted.
In order to fix it, globbing could be used in cd sensu-plugins-$PLUGIN-$VERSION*, but I don't think it should be done.
It works like a charm with both full hash and tag:
RUNTIME_INSTALL=influxdb@962503e179121518a62d76b02e9c3039013d539a
<EMAIL_ADDRESS>

@xgin thanks I'll add to the docs saying full hash and tag work


testing

Codecov Report

Merging #7 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master        #7   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines           40        40
  Branches         3         3
=========================================
  Hits            40        40

Flag
Coverage Δ

#unittests
100.00% <ø> (ø)

Continue to review full report at Codecov.

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


DRAFT: Queries that panic should return ack-err

Closes #85

idk why queries should panic in the first place but its a good pre-caution. lgtm

hey @VitalyVolozhinov wanted to ping you and see if there is an update on this? if i don't hear back from you I can address the couple nit picks that i mentioned and we can get this merged.
thanks again for your contributions!

Thank you for reminding me about this! I've updated the code as per suggestion. Thank you!

Thank you for reminding me about this! I've updated the code as per suggestion. Thank you!

and thank you again for your contributions, they are greatly appreciated 🙂

These changes should be included in the next minor releases of async-icq as they are state breaking.


Perform syntax highlighting at compile time

You can use highlightjs from npm to output highlighted code. That way the site doesn't need to load unnecessary javascript when the user browses to it.
This will require adding npm to this project.

Actually it would probably be best to do this with Parser.ParseInput. That way we keep everything in PowerShell and don't need external dependencies.


update execute signature

resolves #

Description

Checklist

[ ] I have read the contributing guide and understand what's expected of me
[ ] I have signed the CLA
[ ] I have run this code in development and it appears to resolve the stated issue
[ ] This PR includes tests, or tests are not required/relevant for this PR
[ ] I have opened an issue to add/update docs, or docs changes are not required/relevant for this PR
[ ] I have run changie new to create a changelog entry

Worth updating the description that this PR is to fix the adapter execute signature because of the changes made here so folks can follow the change.


Upgrade to Laravel 11

I'm leaving this issue as a friendly reminder to update Toby codebase to Laravel 11 as soon it will be possible.
As Laravel 11 has a lot of changes, I would like to use Toby as a testing ground for not only bumping Laravel version, but also changing a structure of directories with new Laravel approach. If this would be a lot of work, we shouldn't repeat the process with our other projects. Otherwise, I think we should switch to new structure.
Anyway, probably some packages won't be updated the day the new version will be released (same problem was with previous versions in #49 and #289).

List of pull requests we should wait for to close:

[ ] https://github.com/spatie/laravel-google-calendar/pull/295
[ ] https://github.com/Rackbeat/laravel-ui-avatars/pull/15
[ ] https://github.com/spatie/laravel-slack-slash-command/pull/114

We need to update spatie permissions to go ahead:

[ ] https://github.com/blumilksoftware/toby/issues/372


[FancyZones] please full screen back (as an option!)

📝 Option for the shortcut (windows + shift + arrow up) making the window 'full screen' not just 'full zone'.
First, thank you for this great little tool!
What I want is to make a window occupy the full screen of a monitor by some shortcut keys (like windows + arrow up or windows + shift + arrow up). I know that some users want this shortcut to make the window full 'zone', not full 'screen' and that's how windows + shift + arrow up is working now.
But someone like me want the full screen by this shortcut key. Could you make this as an option for FancyZones?
When I use macOS, I use spectacles (https://www.spectacleapp.com/) and I love is very much. Fancy Zones is close to it, so I am happy about it, though spectacle is more feature rich. (making windows 1/3, half, then 2/3 by one shortcut key) is truly great, but I want the full screen more!
What is the expected behavior of the proposed feature?  What is the scenario this would be used?
there is an option so that the shortcut (windows + shift + arrow) makes the window occupy the full screen, (not just full zone)
If you'd like to see this feature implemented, add a 👍 reaction to this post.

+1 !
Another option could be that on the first winkey + arrow up - the window will occupy the full 'zone', and on the second winkey - the window will occupy the full screen.

faced the same issue. check these setting in the image below and you're good to go.
now you can toggle between zones with Winkey + arrow-right/left.
and full zone with Winkey + shift + arrowup.
and finally, full screen with Winkey + arrowup.

thanks! the option "Move windows based on their position" had to be turned off.


Support SCIE={list,install} BusyBox-alikes.

For the busybox binary these are busybox --install (-s) dest_dir
and busybox --list.
This provides an ergonomic way to ship a tool-kit.
Instead of the clunky SCIE_BOOT=tool toolkit ... on each and every
tool invocation you can SCIE=install toolkit ~/bin one time and have
standard discoverability and ergonomics for all
scie.lift.boot.commands.

The context for this was a realization that this lift I use over in the soon-to-be-OSS scie-pants to build scie-pants and its support tools.pex with nothing but cargo and no Python in sight:
{
  "scie": {
    "lift": {
      "name": "pbt",
      "description": "Python Build Tool: A BusyBox that provides `python`, `pip`, `pex`, `pex3` and `pex-tools`.",
      "files": [
        {
          "name": "ptex",
          "executable": true
        },
        {
          "name": "cpython-3.8.15+20221106-aarch64-unknown-linux-gnu-install_only.tar.gz",
          "key": "python-linux-aarch64",
          "size": 25080793,
          "hash": "886ab33ced13c84bf59ce8ff79eba6448365bfcafea1bf415bd1d75e21b690aa",
          "type": "tar.gz",
          "source": "ptex-fetch"
        },
        {
          "name": "cpython-3.8.15+20221106-x86_64-unknown-linux-gnu-install_only.tar.gz",
          "key": "python-linux-x86_64",
          "size": 26922922,
          "hash": "e47edfb2ceaf43fc699e20c179ec428b6f3e497cf8e2dcd8e9c936d4b96b1e56",
          "type": "tar.gz",
          "source": "ptex-fetch"
        },
        {
          "name": "cpython-3.8.15+20221106-aarch64-apple-darwin-install_only.tar.gz",
          "key": "python-macos-aarch64",
          "size": 17603392,
          "hash": "1e0a92d1a4f5e6d4a99f86b1cbf9773d703fe7fd032590f3e9c285c7a5eeb00a",
          "type": "tar.gz",
          "source": "ptex-fetch"
        },
        {
          "name": "cpython-3.8.15+20221106-x86_64-apple-darwin-install_only.tar.gz",
          "key": "python-macos-x86_64",
          "size": 17985182,
          "hash": "70b57f28c2b5e1e3dd89f0d30edd5bc414e8b20195766cf328e1b26bed7890e1",
          "type": "tar.gz",
          "source": "ptex-fetch"
        },
        {
          "name": "cpython-3.8.15+20221106-x86_64-pc-windows-msvc-static-install_only.tar.gz",
          "key": "python-windows-x86_64",
          "size": 42772349,
          "hash": "f9c799b74f258fb520f7afae548f87b65c535ee14d885a64cc935a291436ae50",
          "type": "tar.gz",
          "source": "ptex-fetch"
        },
        {
          "name": "pex",
          "size": 4068526,
          "hash": "2b7be27e945d932241c30027e8ad08a83f61b7370586d75b1e4f35e510478490",
          "type": "blob",
          "source": "ptex-fetch"
        }
      ],
      "boot": {
        "commands": {
          "pex": {
            "exe": "{scie.files.python-{scie.platform}}/python/bin/python3.8",
            "args": [
              "{pex}"
            ]
          },
          "pex3": {
            "env": {
              "PEX_SCRIPT": "pex3"
            },
            "exe": "{scie.files.python-{scie.platform}}/python/bin/python3.8",
            "args": [
              "{pex}"
            ]
          },
          "pex-tools": {
            "env": {
              "PEX_SCRIPT": "pex-tools"
            },
            "exe": "{scie.files.python-{scie.platform}}/python/bin/python3.8",
            "args": [
              "{pex}"
            ]
          },
          "pip": {
            "exe": "{scie.files.python-{scie.platform}}/python/bin/python3.8",
            "args": [
              "-m",
              "pip"
            ]
          },
          "python": {
            "exe": "{scie.files.python-{scie.platform}}/python/bin/python3.8"
          }
        },
        "bindings": {
          "ptex-fetch": {
            "exe": "{ptex}",
            "args": [
              "{scie.lift}"
            ]
          }
        }
      }
    }
  },
  "ptex": {
    "cpython-3.8.15+20221106-aarch64-unknown-linux-gnu-install_only.tar.gz": "https://github.com/indygreg/python-build-standalone/releases/download/20221106/cpython-3.8.15+20221106-aarch64-unknown-linux-gnu-install_only.tar.gz",
    "cpython-3.8.15+20221106-x86_64-unknown-linux-gnu-install_only.tar.gz": "https://github.com/indygreg/python-build-standalone/releases/download/20221106/cpython-3.8.15+20221106-x86_64-unknown-linux-gnu-install_only.tar.gz",
    "cpython-3.8.15+20221106-aarch64-apple-darwin-install_only.tar.gz": "https://github.com/indygreg/python-build-standalone/releases/download/20221106/cpython-3.8.15+20221106-aarch64-apple-darwin-install_only.tar.gz",
    "cpython-3.8.15+20221106-x86_64-apple-darwin-install_only.tar.gz": "https://github.com/indygreg/python-build-standalone/releases/download/20221106/cpython-3.8.15+20221106-x86_64-apple-darwin-install_only.tar.gz",
    "cpython-3.8.15+20221106-x86_64-pc-windows-msvc-static-install_only.tar.gz": "https://github.com/indygreg/python-build-standalone/releases/download/20221106/cpython-3.8.15+20221106-x86_64-pc-windows-msvc-static-install_only.tar.gz",
    "pex": "https://github.com/pantsbuild/pex/releases/download/v2.1.117/pex"
  }
}

It struck me that was a handy tool set! It weighs in at 5.1MB on Linux x86_64 and is smaller on all other supported platforms. The only thing not handy was using SCIE_BOOT=python pbt ..., etc. This solves that.

I'm going to move forward with this. One more coming with final features needed for https://github.com/pantsbuild/scie-pants CI setup.


Revert "firefox: default to speech synthesis enabled"

Reverts NixOS/nixpkgs#259534
speech-dispatcher is 0.7 GB big mostly due to embrola-voices.
with:
 ➜ nix path-info -hS $(which firefox)
/nix/store/36gd5ak5kzj99fla99mbnsw1bwja2820-firefox-bin-118.0.1    2.8G

without:
 ➜ nix path-info -hS $(which firefox)
/nix/store/n5vdac59hffc8bvsy0yjbg4h61rp3349-firefox-bin-118.0.1    2.1G

So when speechd support is enabled, 25% of the closure size are taken by an optional feature the majority of people are not going to use, which is IMO way way to big.
A solution to this extreme closure size increase would be to split mbrola-voices into one package per language and make that depended on the configured locale. I do not have time to work on this, so I'd rather like to revert this than that every firefox user downloads a potential unused 0.7 GB.

You are aware that speech dispatchers are shipped by default with pre-built binaries, provided by Mozilla, right? Every distro I know has speech dispatcher on by default because it's an accessibility feature.

Considering this is an accessibility feature, the proper solution is to remove it only after a better alternative is available.

a simple
pkgs.firefox.overrideAttrs (old: { libs = "${old.libs}:{pkgs.speechd}/lib"; } )

should suffice to re-enable speech synthesis, maybe documenting this explicitly somewhere would suffice?

Accessible by default is objectively the only correct answer. The proposed solution is backwards. If you want to have a configuration option to avoid that small size increase for whatever reason, go ahead, but DO NOT make it harder for people with disabilities from the start! Here are some relevant ethical guidelines that should be considered.
One of the goals of Firefox is to be universally accessible, and this goes against their intent, which is made very clear by their inclusion and maintenance of the functionality in the first place. If that's not obvious enough, they go out of their way to make accessibility developer-friendly, where others do not.
Furthermore, it also goes against the W3 Web Content Accessibility Guidelines in many ways.

That about covers it. Thanks for the overwhelming support for accessbility, folks!

Every distro I know has speech dispatcher on by default because it's an accessibility feature.

Can you please tell me which one? Neither Debian, nor Ubuntu, nor Arch, nor Fedora, nor FreeBSD ship it by default. Only Arch has it in it's optional section, neither Debian or Ubuntu even recommend or suggest it at all.
Also on Fedora speech-dispatcher doesn't use mbrola but espeakng instead which has a whooping download size of 10 MB and is installed 30 MB. No one would be complaining about that and it would be a great change.

option to avoid that small size

700 MB is nothing to sneeze at. I know friends which come for every NixOS update into their next hackspace because they only have a 16K DSL connection. NixOS is already a download bandwidth hungry distro and just like this adding more and more onto the problem is not helpful.

But since people really really want to keep this, how about disabling mbrola voices by default?
With mbrola:
 ➜ nix build .#espeak-ng
 ➜ nix path-info -hS ./result
/nix/store/klj2hglk9vz35jrqvygcjns8j9zq4mwk-espeak-ng-1.51.1     772.0M
 ➜ nix build .#firefox
 ➜ nix path-info -hS ./result
/nix/store/j5l32v4kmjp7s35ygrzwaik4nh591064-firefox-118.0.1        1.7G

without mbrola:
 ➜ nix build .#espeak-ng
 ➜ nix path-info -hS ./result
/nix/store/lqm1l361bh2ym8dkkhx5x049nnygb9pk-espeak-ng-1.51.1     127.1M
 ➜ nix build .#firefox
 ➜ nix path-info -hS ./result
/nix/store/z0sch4i5k5xdmy575vmf7czd2149ar7k-firefox-118.0.1        1.1G

without speechd:
 ➜ nix build .#firefox
 ➜ nix path-info -hS ./result
/nix/store/1xd5q5qv12a7z7i0aw3a0i3q9aby9n56-firefox-118.0.1      981.0M

This is IMO way more reasonable and justifiable solution.
I created a PR with that #261281


Rhea's TypeErrors which are not of TypeError instance should also not be translated

#49 covers the issue of "Non-amqp and non-system errors should not be retryable by default"
Rhea uses normal Errors (not TypeError) for the case of TypeErrors.
See https://github.com/amqp/rhea/blob/master/lib/errors.js#L27
To handle such cases, we need to update the below if check to include || err.name === "TypeError"
https://github.com/Azure/amqp-common-js/blob/e8608c45934373a65066a9d628b9c808f2ede1cb/lib/errors.ts#L532-L535

Since the repository is now moved to https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/amqp
This issue is now tracked at Azure/azure-sdk-for-js#2707 instead.


can not progress cmake with -DWANT_CYRUS=YES

-- Checking for module 'libsasl2'
--   Package 'libsasl2' not found
CMake Error at CMakeLists.txt:113 (message):
Can't find Cyrus SASL 2
-- Configuring incomplete, errors occurred!
See also "/home/intrainos/znc/CMakeFiles/CMakeOutput.log".
See also "/home/intrainos/znc/CMakeFiles/CMakeError.log".
CMakeOutput.log : https://gist.github.com/d6b534f87ca1b30cf38e
CMakeError.log : https://gist.github.com/ad9fe02ee4d94373a894

./configure --enable-cyrus is work.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/30842391-can-not-progress-cmake-with-dwant_cyrus-yes?utm_campaign=plugin&utm_content=tracker%2F1759&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F1759&utm_medium=issues&utm_source=github).

Show config.log of ./configure

https://gist.github.com/c202fa2fcc9660527680
(and on c6ed6b2e)

Looks like bug in sasl, fixed in https://cgit.cyrus.foundation/cyrus-sasl/commit/include/sasl.h?id=2f740223fa1820dd71e6ab0e50d4964760789209

work fine.


MM-20754 - Fixing RHS spacing with banner

Summary
MM-20754 - Fixing RHS spacing with banner
Ticket Link
https://mattermost.atlassian.net/browse/MM-20754
Screenshots

Creating a new SpinWick test server using Mattermost Cloud.

Mattermost test server created! :tada:
Access here: https://mattermost-webapp-pr-4398.test.mattermost.cloud

Account Type
Username
Password

Admin
sysadmin
Sys@dmin123

User
user-1
User-1@123

New commit detected. SpinWick will upgrade if the updated docker image is available.

Mattermost test server updated with git commit a1d35c9a160257a4615b11adb62b4c34acc3143a.
Access here: https://mattermost-webapp-pr-4398.test.mattermost.cloud

Test server destroyed


Return typed error when Mount Fails

Mount can fail for a variety of reasons and caller might want to know
why mount failed. Using untyped string based error does not provide
enough granularity to make that verification.

/sig storage

/lgtm

/approve