Code is blocking other remotes

Thanks for your code. It works and I could successfully connect ;-)
Unfortunately, the toilet allows only one parallel connection and therefore, any existing remote is useless as long as the code is executing.
Maybe it would be a better idea to not stay connected all the time and rather do a connection "on demand". This would allow custom "buttons" to perform actions on the device while the original remote or app still remains operational.

Thank you for your interest and feedback!
Yes, we are dealing with a Highlander WC:
Es kann nur einen geben!
There can be only one!
See also GEBERIT AQUACLEAN MERA COMFORT BEDIENUNGSANLEITUNG, page 20, at the top of the page:
... Die Fernbedienung des Geberit AquaClean Dusch-WCs ist deaktiviert, solange das Dusch-WC mit der Geberit Home App verbunden ist. ...
... and the aquaclean_console_app works in the same way as the App.
This seems to be the nature of BLE architecture (at least before BLE 5.0).
I took this information from the article Wir müssen reden:
... Dabei kann ein Central durchaus zu mehreren Peripherals eine Verbindung herstellen. Ein Smartphone kann sich also mit mehreren E-Health-Geräten verbinden. Ein Peripheral dagegen kann immer nur mit einem einzigen Central verbunden sein, ein E-Health-Gerät beispielsweise also nicht gleichzeitig mit mehreren Smartphones. Das ist übrigens auch einer der Gründe, warum Sie mit Ihrer Bluetoothtastatur nicht gleichzeitig zwei Rechner steuern können. ...
or Can a peripheral can be connected to multiple centrals?
There is always a ‘but’.
Here's the information from Copilot:
chat with Copilot
How do I connect a BLE peripheral to multiple central devices?
A Bluetooth Low Energy (BLE) peripheral device can connect to multiple central devices by using a technique called multi-connection. Here's a general overview of how this can be achieved:

Multi-Connection Support: Ensure that both the BLE peripheral device and the central devices support multi-connection. This feature is typically available in BLE 5.0 and newer versions.

Connection Management: The BLE peripheral device needs to manage multiple connections by maintaining separate connections with each central device. This can be done by using different connection intervals, connection parameters, and managing the data exchange efficiently.

UUIDs and Services: Each connection can be identified by unique UUIDs (Universally Unique Identifiers) for services and characteristics. This helps the central device to distinguish between different peripherals.

Sequential or Simultaneous Connections: Depending on the application, the peripheral device can connect to multiple central devices sequentially (one after the other) or simultaneously (at the same time). Sequential connections are simpler to manage, while simultaneous connections require more complex handling.

Power Management: Efficient power management is crucial when connecting to multiple central devices. The peripheral device should minimize the time it spends in active connection mode to conserve battery life.

Software Implementation: Implementing multi-connection typically involves using BLE libraries and APIs that support multi-connection features. For example, using the BLE stack provided by the microcontroller or development board, or using software libraries like BlueZ for Linux.

Is there a type of hub that can connect to the peripheral device once using BLE 4 and then accept multiple connections using BLE 5?
Yes, there are devices known as BLE hubs or BLE gateways that can connect to a BLE peripheral device using BLE 4 and then accept multiple connections through BLE 5. These hubs act as intermediaries, allowing multiple central devices to communicate with the peripheral device.
One example is the DSGW-030-2 Bluetooth over WiFi Bridge Gateway Hub. This device connects to BLE peripherals using BLE 4 and then bridges the connection to WiFi, allowing multiple central devices to access the BLE device over the internet.
Conclusion, tl;dr
For my use cases, I want to avoid any additional operating action. We only use the remote controls/app very rarely and I deactivate the service on my raspberry beforehand.
Anyway, I like to think about an additional operating mode that only connects on request!

So you are already using a different kind of remote (which communicates using HA/MQTT) for regular use?

The aquaclean_console_app runs permanently in the background and manages the integration into the home automation system.
In addition, we have

Wandbedienpanel für Geberit AquaClean, EAN<PHONE_NUMBER>031
Fernbedienung groß, für Geberit AquaClean Mera, old model EAN<PHONE_NUMBER>326
Gerberit Home

The three remote controls mentioned above are rarely used.
aquaclean_console_app is deactivated beforehand.

Okay, but do you actually use the Python code (using your home automation system) for example to open/close the toilet?
I also use the same remotes like you and it sounds a little bit complicated to deactivate the Python app everytime I want to use the toilet. On the other hand, the home automation won't notice any "actions" if the toilet is controlled by one of Geberit's remotes.
Correct me if I'm wrong but basically, one have to use a centralized infrastructure (like Zigbee switches or even NSPanels) to control the toilet exclusively ... and get completely rid of the Geberit devices.

Yes, I use the Python code to open and close the lid. To do this, I connected the Python script via MQTT Binding --> openHAB with HomeKit Add-on. The toilet lid is then controlled by voice command. See Use cases.
Yes, I use openHAB, see Geberit AquaClean with openHAB - Basic UI, as the central infrastructure ("... and get completely rid of the Geberit devices").

Great ideas. Thanks!
Feel free to close this issue if non-permanent connections are not on your roadmap ;-)


Duel Seasons + Top Streaks

Add a season field to the duel table and create a streaks command to list the top stats of the given season

We don't really have seasons yet but I have implemented the top stats.


did someone work on xtradb Cluster 5.7 successful ?

hello,
did someone work on xtradb Cluster 5.7 successful ?

I have not tried it on xtradb Cluster 5.7, but I'll leave this open so anyone else who has can comment

@michaelfinch thanks! also, I will try it later, and post issue here.


Make use of flexbox and code cleanup

Closes #43

make use of flexbox
code cleanup

Screenshots
Horizontal layout

Vertical layout

👍


Different measurements from Arduino and ESP32

Hi, I am testing the SDP811-500Pa sensor with the example code and I am seeing different readings from Arduino and ESP32. What could be the reasons? I am getting reaction(spike in pressure) from both Arduino and ESP32 when I apply some pressure.
Also temperature seems different than my digital room thermometer which shows ~1.5-2°C lower?
Thanks for the help.
ESP32 measurements
DifferentialPressure[Pa]:-0.03  Temperature[Â°C]:27.58
DifferentialPressure[Pa]:-0.03  Temperature[Â°C]:27.58
DifferentialPressure[Pa]:-0.02  Temperature[Â°C]:27.59
DifferentialPressure[Pa]:-0.05  Temperature[Â°C]:27.59

Arduino mega 2560 measurements
DifferentialPressure[Pa]:0.65   Temperature[Â°C]:27.89
DifferentialPressure[Pa]:0.63   Temperature[Â°C]:27.88
DifferentialPressure[Pa]:0.65   Temperature[Â°C]:27.88
DifferentialPressure[Pa]:0.65   Temperature[Â°C]:27.88

Hi @tamerh
Do you have a pressure source connected or both inlets closed when doing the comparison? If the sensor is not connected it is usual that instead of 0 Pa you get a random value around 0.
For the temperature, the datasheet states:
"The measured temperature is the temperature of the bulk silicon in the sensor. This temperature value is not only depending on the gas temperature, but also on the sensor’s surroundings......" so you can not expect that it matches the surrounding temperature.


Negative tests now a PITA in 1.0 :(

Hi! Great work getting a 1.0 out! My only concern is that now it's a super PITA to do any negative tests, because even if you specifically expect a bad status code (like 400), just passing done from mocha will still cause the test to fail, since there is now a propagated error. I don't want to suppress the error like in the readme, because how do I know the error isn't a failed status code assertion?

In other words, the readme has the following, which is SUPER WRONG, because it will still make the test pass, even if the status code is not a 302, since all the test does is say "well, I got some error". It would be super useful if a status code expect in supertest just suppressed the status code errors from superagent.
describe('GET /redirect-url', function(){
  it('respond with 302 redirect', function(done){
    request(app)
      .get('/redirect-url')
      .expect(302, function (error) {
        (error !== null).should.be.true;
        done();
      });
  })
})

/cc @jonathanong

This is due to superagent v1. I'm pretty sure you'll have to make a change there first.

I issued a simple PR that would let superagent keep this behavior (which I'm not against) while keeping it easy to use supertest still.

I think the point is it makes sense that SuperAgent throws an error when a request returns a non-200 status code, since there are few cases where you use a general-purpose HTTP client to intentionally fetch an erroring resource.
But it's exceedingly common to use SuperTest to fetch an erroring resource and asset that it errors, especially when constructs like .expect(404) are a fundamental part of the API.
Couldn't SuperTest just null out status code errors, with no change to SuperAgent?

Indeed! I have a PR that should accomplish this :) I agree that superagent is fine, rather it is an issue with supertest.

Oh I missed your latest comment. I'm in total support!

In support of this too. Started a new project this evening and spent a while wondering why this was happening until I saw the new updated README.

+1 for @dougwilson 's PR


Problem with Enabling Timeline

I tried to set the Config.EnableTimeline to true, as we set Config.JS, etc. values but the timeline just doesn't appear.

Seeing the same issue, not sure how to fix it.

Seeing the same issue, not sure how to fix it.

it's Uppercase when timeline.toString() but timeline display condition is  timeline == true
I will be fix this issue wait please.

https://github.com/namilkimfree/extentreports-csharp fork version fixed issue.
nuget download path is
You can use https://www.nuget.org/packages/ExtentReports.BugFix/4.2.2 or higher.

In version 5 (currently in alpha), the usage is following to enable/disable this feature:
var extent = new ExtentReports();
var spark = new ExtentSparkReporter("Spark.html");
spark.Config.TimelineEnabled = true;

You can refer to the docs here:  https://www.extentreports.com/docs/versions/5/net/index.html


Add 64 char limit for nicknames

Fixes #494
Added max 64 limit to:

Create account
Edit account nickname
Add bank
Edit bank nickname
Add friend
Edit friend nickname
Add validator
Edit validator nickname

Acc: c54c04774efaae20746fd3f29cdd619fea512e119bc1082b863572b2e8844104

@jamessspanggg - can we have separate issue and PR for these constants ?

@jamessspanggg - can we have separate issue and PR for these constants ?

ok sure. let me revert the last two commits


Wascally doesn't work with the node 'config' module installed

I'm setting up a new project and tried to just get Wascally working with the pub/sub demo code. Was stumped for hours on some mysterious errors. Turns out it was all because I was trying to use the node config module; once I hard-coded my configuration settings into the js file and uninstalled the config module, the demo code ran just fine.
I'm hoping this is not too difficult to fix, because it's kind of a deal-breaker for us. :disappointed:
Error: Configuration property "RABBIT_BROKER" is not defined
    at Object.Config.get (./node_modules/config/lib/config.js:177:11)
    at getOption (./node_modules/wascally/src/amqp/connection.js:11:15)
    at new Adapter (./node_modules/wascally/src/amqp/connection.js:38:19)
    at module.exports (./node_modules/wascally/src/amqp/connection.js:141:16)
    at machina.Fsm.extend.states.initializing._onEnter (./node_modules/wascally/src/connectionFsm.js:75:19)
    at _.extend.transition (./node_modules/wascally/node_modules/machina/lib/machina.js:200:56)
    at Fsm (./node_modules/wascally/node_modules/machina/lib/machina.js:111:18)
    at new fsm (./node_modules/wascally/node_modules/machina/lib/machina.js:330:24)
    at Connection (./node_modules/wascally/src/connectionFsm.js:186:9)
    at Broker.addConnection (./node_modules/wascally/src/index.js:35:20)

TypeError: Cannot read property 'channels' of undefined
    at Broker.getExchange (./node_modules/wascally/src/index.js:126:43)
    at bound [as getExchange] (./node_modules/wascally/node_modules/lodash/dist/lodash.js:729:21)
    at Broker.publish (./node_modules/wascally/src/index.js:187:14)
    at bound [as publish] (./node_modules/wascally/node_modules/lodash/dist/lodash.js:729:21)
    at null.<anonymous> (./node_modules/wascally/src/index.js:205:8)
    at runResolver (./node_modules/wascally/node_modules/when/lib/makePromise.js:59:5)
    at new Promise (./node_modules/wascally/node_modules/when/lib/makePromise.js:30:4)
    at Function.promise (./node_modules/wascally/node_modules/when/when.js:87:10)
    at Broker.request (./node_modules/wascally/src/index.js:196:14)
    at bound [as request] (./node_modules/wascally/node_modules/lodash/dist/lodash.js:729:21)

@xiehan We're using wascally with node-config and its working fine.
// [...] from our config/default.js
  mediator: {
    // Force all events to be invoked in the loop rather than
    // deferred to the message queue
    // NOTE: Inteded for a testing environment
    eager: false,

    // Connection information for the message broker (RabbitMQ).
    broker: {
      user: "guest",
      password: "guest",
      host: "localhost",
      port: 5672,
    }
  },

Perhaps your usage of node-config is wrong?
// snipped from our topology.js file
  return rabbit.configure({
    // Gather the broker connection information
    connection: {
      user: config.get("mediator.broker.user"),
      pass: config.get("mediator.broker.password"),
      server: [config.get("mediator.broker.host")],
      port: config.get("mediator.broker.port"),
      vhost: "%2f",
      replyQueue: false,
    },
  // [...]
});

It doesn't take rocket science to use node-config, so unless I am missing something huge, there's something else going on. I'm willing to accept that it might be more of a bug (or at least undocumented/unintended behavior) in node-config rather than in wascally. Here is where I landed after a bit more investigating.

First of all, just to recap, this works fine:
// config.js - manual config file, not using node-config (quotes around keys are artifacts from copy/paste)
module.exports = {
    "workers": 8,
    "RabbitMQ": {
        "connection": {
            "user": "guest",
            "pass": "guest",
            "server": [
                "<IP_ADDRESS>"
            ],
            "port": 5672
        },
        "exchanges": [
            {
                "name": "wascally-pubsub-messages-x",
                ...
            },
            ...
        ],
        "queues": [
            {
                "name": "wascally-pubsub-messages-q",
                ...
            },
            ...
        ],
        "bindings": [
            {
                "exchange": "wascally-pubsub-messages-x",
                ...
            },
            ...
        ]
    }
};

// topology.js
var config = require('./config.js');

var settings = {
    connection: config.RabbitMQ.connection,
    exchanges: config.RabbitMQ.exchanges,
    queues: config.RabbitMQ.queues,
    bindings: config.RabbitMQ.bindings
};
return rabbit.configure(settings).then(function () { ... });

Code runs just fine, results are as expected, no errors.

This is what I tried yesterday, and doesn't work:
// config/default.json
{
    "workers": 8,
    "RabbitMQ": {
        "connection": {
            "user": "guest",
            "pass": "guest",
            "server": [
                "<IP_ADDRESS>"
            ],
            "port": 5672
        },
        "exchanges": [
            {
                "name": "wascally-pubsub-messages-x",
                ...
            },
            ...
        ],
        "queues": [
            {
                "name": "wascally-pubsub-messages-q",
                ...
            },
            ...
        ],
        "bindings": [
            {
                "exchange": "wascally-pubsub-messages-x",
                ...
            },
            ...
        ]
    }
}

// topology.js
var config = require('config');

var settings = {
    connection: config.get('RabbitMQ.connection'),
    exchanges: config.get('RabbitMQ.exchanges'),
    queues: config.get('RabbitMQ.queues'),
    bindings: config.get('RabbitMQ.bindings')
};
return rabbit.configure(settings).then(function () { ... });

When run it yields:
Error: Configuration property "RABBIT_BROKER" is not defined
    at Object.Config.get (./node_modules/config/lib/config.js:177:11)
    at getOption (./node_modules/wascally/src/amqp/connection.js:11:15)
    at new Adapter (./node_modules/wascally/src/amqp/connection.js:38:19)
    at module.exports (./node_modules/wascally/src/amqp/connection.js:141:16)
    at machina.Fsm.extend.states.initializing._onEnter (./node_modules/wascally/src/connectionFsm.js:75:19)
    at _.extend.transition (./node_modules/wascally/node_modules/machina/lib/machina.js:200:56)
    at Fsm (./node_modules/wascally/node_modules/machina/lib/machina.js:111:18)
    at new fsm (./node_modules/wascally/node_modules/machina/lib/machina.js:330:24)
    at Connection (./node_modules/wascally/src/connectionFsm.js:186:9)
    at Broker.addConnection (./node_modules/wascally/src/index.js:35:20)

even though a console.log of the settings object looks as though you would expect:
{ connection:
   { user: 'guest',
     pass: 'guest',
     server: [ '<IP_ADDRESS>' ],
     port: 5672 },
  exchanges:
   [ { name: 'wascally-pubsub-requests-x',
       type: 'direct',
       persistent: true },
     { name: 'wascally-pubsub-messages-x',
       type: 'direct',
       persistent: true } ],
  queues:
   [ { name: 'wascally-pubsub-requests-q',
       persistent: true,
       noBatch: true,
       limit: 1 },
     { name: 'wascally-pubsub-messages-q',
       persistent: true,
       noBatch: true,
       limit: 1 } ],
  bindings:
   [ { exchange: 'wascally-pubsub-requests-x',
       target: 'wascally-pubsub-requests-q',
       keys: [Object] },
     { exchange: 'wascally-pubsub-messages-x',
       target: 'wascally-pubsub-messages-q',
       keys: [] } ] }

So I dove into the node-config documentation to see if there was anything at all I could've missed, and found that they added a bunch of utility functions and so I gave one of those a whirl just to see what happens.
Now:
// topology.js
var config = require('config');

var settings = config.util.extendDeep({}, config.get('RabbitMQ'));
return rabbit.configure(settings).then(function () { ... });

...works. Mysteriously, a console.log of the settings object is 100% identical to the one in the scenario above:
{ connection:
   { user: 'guest',
     pass: 'guest',
     server: [ '<IP_ADDRESS>' ],
     port: 5672 },
  exchanges:
   [ { name: 'wascally-pubsub-requests-x',
       type: 'direct',
       persistent: true },
     { name: 'wascally-pubsub-messages-x',
       type: 'direct',
       persistent: true } ],
  queues:
   [ { name: 'wascally-pubsub-requests-q',
       persistent: true,
       noBatch: true,
       limit: 1 },
     { name: 'wascally-pubsub-messages-q',
       persistent: true,
       noBatch: true,
       limit: 1 } ],
  bindings:
   [ { exchange: 'wascally-pubsub-requests-x',
       target: 'wascally-pubsub-requests-q',
       keys: [Object] },
     { exchange: 'wascally-pubsub-messages-x',
       target: 'wascally-pubsub-messages-q',
       keys: [] } ] }

That would suggest there's something node-config is doing internally when the values are arrays that isn't playing nicely when passed over to wascally. I don't have time to debug it much more thoroughly than this (and since I found a solution -- using config.util.extendDeep -- I can't justify spending any more time on this -- my boss already isn't happy) but all the brief cursory tests I did to try to find the difference between my old way of creating the settings object vs. using config.util.extendDeep didn't reveal anything.

Just a user-side feedback, at Bringr we use common-env to allow configuration of every aspect of our default wascally topology.


Add requirements

Add a requirements.txt in the repo

This was fixed when the fix-xml branch was merged.


fix: Don't panic on invalid template creation

Fixes https://github.com/argoproj/argo/issues/3620
template.New panics on invalid templates while template.NewTemplate returns an error

Back-port to v2.10 and v2.9?

Back-port to v2.10 and v2.9?

Done

Fixed and available in v2.10.0-rc5.

Available in v2.9.5


Update the iframes to embed HTTPS results

Firefox, by default, will block loading HTTP iframes within an HTTPS document, so the preview screen is very white and not very colorful. :smile:

yeah so these all fail because the jsfiddle iframes are requesting insecure content. I'm going to revert.

Viewing the non-https version of the page shows the code blocks with color: http://richleland.github.io/pygments-css/

Would it be possible to update the jsfiddles to use HTTPS as well?

@evaryont yeah you're right this is completely on the JSFiddle side of things. Maybe shoot em an email?


[SDK-6187] C++/CLI bridge for .NET plugins

Outdated PR. Please see https://github.com/neurala/via-native-plugins/pull/32.


Get SKC on 2004 VW Jetta

Hi there! I just want to say the KW1281 test you have created is an amazing open source tool! Quick question! I am trying to retrieve my SKC code from my 2004 Jetta but am getting an error. The cable I am using (VAG-COM KKL 409.1 Cable) is being recognized on port COM3. The car ignition is in the on position. I am using both of the following commands on a Windows 11 computer:
kw1281test COM3 9600 17 GetSKC
kw1281test COM3 10400 17 GetSKC
Here is the output along with the error I am receiving (Using 10400 for BAUD):
C:\Users\tjpad\OneDrive\Documents\Tyler's Docs\VW GLI>kw1281test COM3 10400 17 GetSKC
KW1281Test: Yesterday's diagnostics...Today.
Version 0.86-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 GetSKC
OSVersion: Microsoft Windows NT 10.0.22621.0
.NET Version: 8.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
Caught: System.InvalidOperationException Received block end $20 but expected $03
Unhandled exception: System.InvalidOperationException: Received block end $20 but expected $03
at BitFab.KW1281Test.KW1281Dialog.ReceiveBlock() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 392
at BitFab.KW1281Test.KW1281Dialog.ReceiveBlocks() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 351
at BitFab.KW1281Test.KW1281Dialog.Connect() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 91
at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean ) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 39
at BitFab.KW1281Test.Tester.GetSkc() in C:\Users\gmeno\src\kw1281test\Tester.cs:line 518
at BitFab.KW1281Test.Program.Run(String[]) in C:\Users\gmeno\src\kw1281test\Program.cs:line 253
at BitFab.KW1281Test.Program.Main(String[]) in C:\Users\gmeno\src\kw1281test\Program.cs:line 29
Here is the output along with the error I am receiving (Using 9600 for BAUD):
C:\Users\tjpad\OneDrive\Documents\Tyler's Docs\VW GLI>kw1281test COM3 9600 17 GetSKC
KW1281Test: Yesterday's diagnostics...Today.
Version 0.86-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 GetSKC
OSVersion: Microsoft Windows NT 10.0.22621.0
.NET Version: 8.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $95
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $95
at BitFab.KW1281Test.KwpCommon.WakeUp(Byte, Boolean) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 76
at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean ) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 32
at BitFab.KW1281Test.Tester.GetSkc() in C:\Users\gmeno\src\kw1281test\Tester.cs:line 518
at BitFab.KW1281Test.Program.Run(String[]) in C:\Users\gmeno\src\kw1281test\Program.cs:line 253
at BitFab.KW1281Test.Program.Main(String[]) in C:\Users\gmeno\src\kw1281test\Program.cs:line 29
What would be the cause of this error? Any insight is appreciated!

Hey Greg, I used the same command with version 0.85 and I was able to pull the SKC. Seems like the latest version 0.86 is throwing the above error. Just wanted to let you know.

This issue coincides with kw1281test's upgrade to .NET 8. Every version of .NET adds additional speed improvements, so I suspect that this is timing related. I've been able to reproduce the issue but it happens only sporadically. I believe I have a fix so expect a new version shortly.


[stable/consul] Provide advanced configuration options for consul (resubmit)

What this PR does / why we need it:
This is a resubmit of #1269, which has already been approved there. I only merged master into it so it could be accepted without trouble.
Special notes for your reviewer:
Could you please approve this again, @unguiculus / @lachie83 ?

/assign @lachie83

It seems these Pods take a very long time to start... I'll retry locally to see if I can get some of the timings.

@timstoop were you able to test it locally ? We tested it on our dev env and the PR seems okay.

/test pull-charts-e2e

/retest
Starts fine here :/

/test pull-charts-e2e

Can we assign someone else on this PR ? We have been running this version for 2 weeks in our staging cluster and it seems to be working perfectly

/retest

/lgtm


rospo: 0.12.1 -> 0.13.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/ferama/rospo/releases.
meta.description for rospo is: Simple, reliable, persistent ssh tunnels with embedded ssh server
meta.homepage for rospo is: https://github.com/ferama/rospo
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.13.0 with grep in /nix/store/76csv4pwm0wpjk8mxnccjy7vks97d5xl-rospo-0.13.0
found 0.13.0 in filename of file in /nix/store/76csv4pwm0wpjk8mxnccjy7vks97d5xl-rospo-0.13.0

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

rospo

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/76csv4pwm0wpjk8mxnccjy7vks97d5xl-rospo-0.13.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A rospo https://github.com/r-ryantm/nixpkgs/archive/bbc4efa5dec763979308a85b02cf2498447ea566.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/bbc4efa5dec763979308a85b02cf2498447ea566#rospo

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/76csv4pwm0wpjk8mxnccjy7vks97d5xl-rospo-0.13.0
ls -la /nix/store/76csv4pwm0wpjk8mxnccjy7vks97d5xl-rospo-0.13.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review

x86_64-linux

:white_check_mark: 1 package built:

rospo

Maintainer pings
cc @sikmir for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

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

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 349455

x86_64-darwin

:white_check_mark: 1 package built:

rospo


Cannot install Meteor v<IP_ADDRESS>

Hey, i just used your git to make a test Project and deploy it to Azure.
It worked absolutely fine and setup was very easy.
But now I want to deploy my real project to azure, it was done with Meteor<IP_ADDRESS> (now Version <IP_ADDRESS> is available, but I cant update).
Can you tell me where you got that link for installing meteor ?
curl -L -o meteor.tar.gz "https://packages.meteor.com/bootstrap-link?arch=os.windows.x86_32"
This command will always download the latest release and after I configured continous deployment my repo always fails.
As a result my log looks like that:
	2016-10-25T12:58:55.9361803Z,Sorry, this project uses Meteor <IP_ADDRESS>, which is not installed and could,,1 	2016-10-25T12:58:55.9519454Z,not be downloaded. Please check to make sure that you are online.,,1 	2016-10-25T12:58:56.1237034Z,cp: cannot create regular file 'D:\local\LocalAppData\meteor-azure\bundle': No such file or directory,,1 	2016-10-25T12:58:56.1392866Z,Handling node.js deployment.,,0 	2016-10-25T12:58:57.1995287Z,KuduSync.NET from: 'D:\local\LocalAppData\meteor-azure\bundle' to: 'D:\home\site\wwwroot',,0 	2016-10-25T12:58:57.1995287Z,Error: Could not find a part of the path 'D:\local\LocalAppData\meteor-azure\bundle'.,,1 	2016-10-25T12:58:57.2151088Z,An error has occurred during web site deployment.,,0 	2016-10-25T12:58:57.2151088Z,Kudu Sync failed,,0

The process is based on the recommended steps for command-line installation  which are documented by MDG here.
It definitely shouldn't matter which version of Meteor you are using - I think the issue you're having may be CDN related and I recall there were some improvements for this in 1.4.2 (now an officially recommended release)
Can you elaborate more on why you are unable to update your release and redeploy?

That line is based on the steps provided by MDG for command line installation, there is no reason to modify this as the build tool is capable of automatically selecting the release relevant to your app.
From what I can tell it looks like there is some trouble (most likely CDN related: meteor/meteor#6960) that are preventing it from downloading <IP_ADDRESS> specifically.
The easiest way to solve this would probably just be to update your release and redeploy.

thanks a lot @ramijarrar !
I updated Meteor locally and redelpoyed this new Version !
So if i got you right, the build tool will be always install the current version from my project (and this time i was unlucky?).
Thanks for the fast response !!

That is correct (just like with running the app locally)


MLH - Major League Hacking

Website: http://mlh.io/
Just looking through the website this is what I could gather.
It's an international hacking league - where your university can gather points by competing in hackathons.
At first look it seems like it's mostly US universities, but they're apparently supposed to be in the UK as well. I've sent an email to the UK guys asking for more information on how we can be a part of this. According to their terms we need to have at least 40 contestants from minimum three universities. I've asked them if there are other London based universities which have reached out to them. If not, we'll have to reach out to them ourselves, I'm sure some of them will be excited about this :-)
Also, organisers cannot compete. So we'll have to find someone willing to organise on the day of the event if some of the officers (myself included) wants to join in on the competition. Maybe Paulo Oliva, or some other QM staff members, could help us on this considering he organised the QM programming competition.

haha, so we are about to host one of the events in April.

To attract QM students, I would suggest to run a series of events (along with a moderate advertisement campaign).

[ ] Write a blog post describing hackathons in general, maybe giving some historical facts, introduce MLH and say couple of words (show some pictures) why this is event is super cool and everyone should attend it.
[ ] Have a talk (hopefully we will have regular meetings this term) about this, early February.
[ ] Have another talk on a typical tools used during a hack. As I understand, it’s mostly web related tools.

In addition, we should promote other MLH events in London, so interested people could attend one of these events before the QM event.


Discuss, Decide & Communicate Release Cadence

What problem are you facing?

Crossplane and its providers have their own release cycles. Since, Terrajet is announced and ready to be consumed by more people, it would be good to define a release cadence for its GCP, AWS and Azure providers too.
How could Terrajet help solve your problem?

I believe, we should discuss and decide how frequently we may produce a new release for GCP, AWS and Azure jet-providers and document this in the corresponding repositories.

I think we'll see many bumps to either v1alpha2 or v1beta1 with manually configured resources, which would require minor release. I'd propose that we make sure there is at most 6 weeks between two releases, meaning we can release sooner than 6 weeks but not later. We can adjust depending on how frequent we end up releasing.

+1, would like to know when new releases are coming out, as I will be actively using GCP/AWS/Azure terrajet providers :)

This is blocked by the decision on https://github.com/crossplane/crossplane/pull/2930


Implement warning and post-clear command hooks

This should close #1, and it seems to work fine as far as my testing goes.
There are still two questions to resolve before it's truly done though:

How to document it in the example config. Most commands either do something that might be undesirable or may simply be spammy.
How to handle command failure. Currently the mod just logs an error, but the way I see it there are three other options

Throw and thus stop the server. Likely the safest, since it means that the server will never run only some of the commands, but it will tear down the entire server simply if a selector has no targets.
Stop executing this series of commands, still fairly safe since it'll never run commands dependent on previous commands that failed, but may still run initial erroneous ones. This is probably my preferred solution.
Stop all command execution until a reload, a middle ground that still keeps the server up but without commands possibly going awry. Not a good solution imo, as commands may just seem to silently stop working.

This would be much easier if Minecraft could tell us the difference between malformed commands, and commands that simply didn't run.

I pushed a few more commits to fix those outstanding issues, it should be ready for merging now.


Intra-node traffic is dropped while cross-node traffic is forwarded

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
I created all-allow-ingress policy in the destination namespace, then the flowing-in traffic are 60%~80% dropped. By digging it further, the problem can be described as follows:
node A and node B
source pods A_s, B_s (s for source, A_s and B_s are identical pods wtih same labels and annotations, from same deployment)
destination pods A_d, B_d (d for source, A_d and B_d are identical pods wtih same labels and annotations, from same deployment)
An allow-all-ingress policy exists in destination namespace
observed:
A_s -> A_d DROPPED INTRA-NODE traffic is dropped, unexpectedly!
B_s -> A_d FORWARDED CROSS-NODE traffic is forwarded!
also checked another destination pod B_d
observed:
A_s -> B_d FORWARDED CROSS-NODE traffic is forwarded!
B_s -> B_d DROPPED INTRA-NODE traffic is dropped, unexpectedly!
when removing the allow-all-ingress policy, all traffic are forwarded.
Cilium Version
1.10.7
also observed at 1.10.5
Kernel Version
Linux ip-100-126-223-196.eu-central-1.compute.internal 5.4.149-73.259.amzn2.x86_64 #1 SMP Mon Sep 27 12:48:12 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Kubernetes Version
Server Version: version.Info{Major:"1", Minor:"19+", GitVersion:"v1.19.15-eks-9c63c4", GitCommit:"9c63c4037a56f9cad887ee76d55142abd4155179", GitTreeState:"clean", BuildDate:"2021-10-20T00:21:03Z", GoVersion:"go1.15.15", Compiler:"gc", Platform:"linux/amd64"}
Sysdump
No response
Relevant log output
no error or warning output

Anything else?

Code of Conduct

[X] I agree to follow this project's Code of Conduct

the sysdump file is too big I guess, I can't upload it here.
you can find it in cilium slack https://cilium.slack.com/files/U02JTL2CYKT/F033EUMQ5NE/cilium-sysdump-20220216-223453.zip

to replicate the issue, I provide the manifests and the test script. for me, the output of the test script shows that intra-node traffic are all denied.
Archive.zip

I by chance fixed this issue by disabling masquerade... Could anyone explain why this has something to do with masquerade? should these be disabled by default for EKS installation?
helm install cilium cilium/cilium --version 1.11.1 \
  --namespace kube-system \
  --set eni.enabled=true \
  --set ipam.mode=eni \
  --set egressMasqueradeInterfaces=eth0 \
  --set tunnel=disabled
  --set enableIPv4Masquerade=false #this should be added to official document https://docs.cilium.io/en/stable/gettingstarted/k8s-install-helm/#k8s-install-helm
  --set enableIPv6Masquerade=false #and this


Doesn't remember recent app when opening a new message thread

Open a message thread, and try to tap the app icon, won't work.
If you force touch, select an app, then try to use it, it works, but back out of the chat to another contact and you have to do the process over again
Iphonex 12.1.2

Fixed in v1.0.1-1


Fix label-for association of the Flip mouth checkbox

On the web-based editor, clicking on the label "Flip" for Mouth toggles the checkbox for Flip under Hair. This is due to the incorrect label-for value being present on the label. This PR fixes the association of the label to the correctly corresponding checkbox.

Thanks! This may not be needed if #35 is merged because all this code will be rewritten, so I will wait to merge until we decide on that.

@dumbmatter With #35 now merged, the issue that this PR remedies remains at http://zengm.com/facesjs/ . Perhaps the deployed editor has not been updated with the code in the repo?


add deletion to event based replication policy

need this to be merged back (I based my branch on the last commit): https://github.com/BESTSELLER/terraform-provider-harbor/pull/64
this add property "deletion" : "Delete remote resources when locally deleted" on replication event based

@flbla can you the fix the merge conflict


add new features:  regist your icon font

add new features:  regist your icon font

Hi @inft, could you please make sure that your PR passes the build on Travis? I'll go through the code once I get the green light


Question,please

I don't understand a lot of things when I look at the code. Can you talk about the architecture of the code?

This code was written for a specific HDF5 file architecture for a multisite study. If you are part of the PreVent study team, please review the wiki on UVA collab which has a detailed overview of the code. Unfortunately, I am not able to reply further as I am currently on maternity leave.

I have begun migrating the wiki from UVA Collab to this github repository. Please see the wiki here: https://github.com/amedwards/NICUHDF5Viewer.wiki.git
If you are a member of PreVent, please let me know if there are further questions I can answer.

I have begun migrating the wiki from UVA Collab to this github repository. Please see the wiki here: https://github.com/amedwards/NICUHDF5Viewer.wiki.git
If you are a member of PreVent, please let me know if there are further questions I can answer.


Adds file structure for use cases #596

This commit adds additional file structure by organizing use cases into one folder, as suggested in #596.

Created a Use Cases Directory
Put a README.md in that directory
Made a file in the new directory for each individual Use Case from USE_CASES.md, copied the content to this file
For each file I created, I linked to it from the README.md
Organized the links in the README by type (email cases and non mail cases)
Made sure the names of the files I created are related to the Use Case

Thank you!

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hello @shriyash,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX

@shriyash
If you are interested, we would love the opportunity to talk to you about Hacktoberfest and our API libraries.
Our agenda would be: Explore what you liked and is there anything we can do to improve?
You can grab a time on my calendar that works for you and we can have a chat on Google Hangout or Skype. If you prefer, you can email me using my GitHub username at my company’s domain.
Thank you so much,
Matt Bernier - @mbernier - SendGrid Developer Experience Product Manager
Elmer Thomas - @thinkingserious - SendGrid Developer Experience Engineer
@SendGrid


docker-logentries stream.destroy() error on container start

I am attempting to run the logentries docker container on a CoreOS host (within AWS), but I continue to receive the following error when starting the container using fleet:
docker[13610]: /usr/src/app/node_modules/docker-stats/node_modules/never-ending-stream/never-ending-stream.js:14
docker[13610]: stream.destroy()
docker[13610]: ^
docker[13610]: TypeError: Cannot call method 'destroy' of null
docker[13610]: at DestroyableTransform.result.destroy (/usr/src/app/node_modules/docker-stats/node_modules/never-ending-stream/never-ending-stream.js:14:12)
docker[13610]: at /usr/src/app/node_modules/docker-stats/node_modules/pump/index.js:42:43
docker[13610]: at call (/usr/src/app/node_modules/docker-stats/node_modules/pump/index.js:49:2)
docker[13610]: at Array.forEach (native)
docker[13610]: at /usr/src/app/node_modules/docker-stats/node_modules/pump/index.js:69:22
docker[13610]: at f (/usr/src/app/node_modules/docker-stats/node_modules/pump/node_modules/once/once.js:17:25)
docker[13610]: at DestroyableTransform.<anonymous> (/usr/src/app/node_modules/docker-stats/node_modules/pump/index.js:28:19)
docker[13610]: at DestroyableTransform.f (/usr/src/app/node_modules/end-of-stream/node_modules/once/once.js:17:25)
docker[13610]: at DestroyableTransform.emit (events.js:95:17)
docker[13610]: at next (/usr/src/app/node_modules/docker-stats/node_modules/never-ending-stream/never-ending-stream.js:32:28)

I have been able to start this container in a local dev environment when invoked by a simple docker run.
Is there a way to determine on which container stream this is failing?  That may help to isolate the root cause.
Any other ideas on the root cause?  I am not familiar with the docker-stats module (where this error appears to be coming from).

Which version of Docker are you running? It seems you are not running version 1.5, and the stats module is giving you a very bad error :).

@mcollina, you are correct!  I am currently running with docker v1.4.1.  I restarted the docker-logentries container with --no-stats and it worked beautifully.
Thank you!


Allow Android-style colors with alpha

Hi,
I've fount that if I use Android-style colors with alpha component, such as #AAFF0000 the stylesheet does not compile. Is there any possibility to avoid this?

There is nothing jsass can do, because all the parsing is done by libsass.
But sass support a very similar syntax: rgba(#aaff00, 0), see http://sass-lang.com/documentation/Sass/Script/Functions.html#rgba-instance_method

Thank you! I would just say that original ruby and actual nodejs versions can parse these values  without any problems and value goes to the output as is.


Get/put instead of get/set

Motivation is basic

No need to replace set -> sets so no need to rename get
Consistent with Java Map API

GREEN!

SHOEGUEN!!!!

SHØGÜN


Fix flame graph inference

Our flame graph shows that we're also failing inference with sparse arrays. One idea is to store a full tuple of the sparse index map, so that the getindex does not need findfirst (and therefore Val can be removed).

Closed by #117


Add timestamps to comments proposal

First crack at adding timestamps to comments.
Part of #139524

For now, I've gone with an API where the extension can opt in to using a relative date. The displayed relative date will not be updated so long as the editor is visible, but when the editor is not visible and then made visible again, it does get re-displayed, and thus updated. We can revisit this and as long as the editor is visible do some periodic update.
For date display I've used dayjs. I have not tested with other locales, but I am using the locale friendly way of showing the long date on hover/when no relative date is used, so I would expect it to work properly for other locales.

Updates to the Comments view are not included in this PR and will come later.

Timeline API uses timestamp, maybe we want to stay aligned

Using number instead of Date to align with timeline makes sense.

detail seems ambiguous as it can be used for both date time and raw text

I actually started with timestamp but then during API discussion detail was preferred because it allows flexibility and is consistent with other places we use detail.

Outcome from API discussion:

We will stick with detail as this is a familiar concept elsewhere.
We will stick with Date instead of number since it is more descriptive. Additionally, we should consider aligning timeline to use Date as well.


Unable to load mocha.opts

I've been trying to minimize the stack trace using mocha-clean, but somehow gulp-spawn-mocha is not loading mocha.opts correctly (with --require mocha-clean in the opts file).
My gulp file looks like the following below. I was under the impression that this would be same as running node_modules/.bin/mocha test/index.js test/integration/api.js, but please correct me if I'm missing something. Could it be the wrong require for mocha?
const gulp 	= require("gulp"),
	env 	= require("gulp-env"),
	mocha 	= require('gulp-spawn-mocha')

gulp.task("mocha", () => {
	return gulp.src(["test/integration/api.js"]), { read: false })
		.pipe(mocha({
			r: "test/index.js"
		}));
});

I was under the impression that this would be same as running node_modules/.bin/mocha test/index.js test/integration/api.js, but please correct me if I'm missing something.

That is actually the same as:
node_modules/.bin/mocha -r test/index.js -test/integration/api.js

Notice the -r flag.

So running node_modules/.bin/mocha -r mocha-clean test/index.js test/integration/api.js, with mocha.opts file removed works, but having mocha-clean as the code snipped below does not (fails to require, runs just fine).
Somehow I'm not getting the same translation as node_modules/.bin/mocha call to use mocha. My only remaining clue is require('gulp-spawn-mocha'), is somehow wrapping a different mocha than the one in node_modules/.bin or somehow stripping away the call to mocha.opts.
gulp.task("mocha", () => {
    return gulp.src(["test/integration/api.js"]), { read: false })
        .pipe(mocha({
            r: "mocha-clean"
            r: "test/index.js"
        }));
});


microseconds (in particular from vcx) can take more than 6 digits

Signed-off-by: sklump<EMAIL_ADDRESS>

Codecov Report

Merging #586 into master will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master     #586   +/-   ##
=======================================
  Coverage   96.46%   96.46%
=======================================
  Files         247      247
  Lines       13166    13166
=======================================
  Hits        12701    12701
  Misses        465      465


Returning _id after insert

Hi all,
A forked the python crate repository, and try to finish the Django bindigs. Is almost working, but I have an issue with the built in _id field: Is there any chance to return the generated value of the _id field after insert?
Like by Mysql: INSERT INTO "table" VALUES (.....) RETURNING "table"."_id"
Thanks forwards,
Bence

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Hi @lovasb, thanks for your suggestion. We don't support this feature at the moment, but we put it on the backlog. We already got quite a list there and I'm not sure when we could expect this to be implemented, but I'll keep you on track.
Best Regards, Johannes

Hi @joemoe, I like this feature too. Can I contribute and implement this enhancement?

hi @Mmuzaf, yes of course. whenever you have a pull request we're happy to review it.
just be sure to follow these instructions: https://crate.io/community/contribute

This got implemented (https://github.com/crate/crate/pull/9624) and will be released as part of 4.2


Clarifying contributing.md

Some parts of the contributing.md file can be ambiguous and might benefit from some clarification.

Directories
The following commands need clarification on where they should be run (listed in chronological order as found in the file):

bundle && yarn && rake examples:prepare_all && rake node_package && rake

assumption: gem root

yarn
yarn run build

assumption: gem root

Use a relative path in your package.json, like this:
cd client
yarn add<EMAIL_ADDRESS>
assumption: external testing app/client

yarn run install-react-on-rails

assumption: gem/spec/dummy

yarn
npm build

assumption: gem root. Also npm should be yarn
Order
Most of the ambiguity stems from having a section on using the gem with your own test app before the section detailing the default gem and dummy app setting that comes with the fork. It's then not immediately clear whether commands are being run within the gem hierarchy or in your external testing app. I suggest swapping this order of topics.
Naming

Because the example and dummy apps rely on the react-on-rails node package, they should link directly ....

Is the example app the external testing app that so far has been referred to as the test app or another app found within the gem hierarchy?

To achieve this, switch to the test app's root directory and run this command below which runs something like this script

assumption: meant to say dummy app instead of test.
Some commands still reference npm instead of yarn

I'm happy to submit a PR if the assumptions are correct.

@wanyamaman Those suggestions sound right. An example app might be testing this with https://github.com/shakacode/react-webpack-rails-tutorial or it might be running the generator on a new rails app, or some other "example" app.

@wanyamaman Please submit a PR.

Submitted #737

Thanks @wanyamaman! We'll finish this up in #737!


Remove class from collection container

Unfortunately you still need the div itself otherwise
you have nothing to style to the correct dimensions.

@mmun here's another one for you.

Yeah, keep the div. Can we drop the div:first in the tests though?

@mmun if you look at the total height tests they are asserting on the height of that container div. i'm open to suggestions to use something else, but i'm not sure what other way there is to do it =(

Shouldn't it have the same height as the container? The old tests should be improved.

no otherwise you don't get scrollbars. if you are using a fixed grid layout then it's rowheight * numitems, while the outside div has a specified width/height.

the outside div in this case is the component itself.

Ah ok.


OOM on multiple-ARC with vllm serving

Run vllm serving test on ARC with below issue:
NFO 07-04 19:10:08 async_llm_engine.py:152] Aborted request cmpl-e5fb5cad96e9402dabbbece3611ae22f-0.
INFO:     <IP_ADDRESS>:41772 - "POST /v1/completions HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/uvicorn/protocols/http/httptools_impl.py", line 399, in run_asgi
result = await app(  # type: ignore[func-returns-value]
Model: ChatGLM3-6B / Qwen1.5-14  on 2Arc/Qwen1.5-32B on 4Arc
HW:  XeonW + Arc

Hi, we have fixed this issue in our new images.  You can pull our new images to have a try~


Date Picker missing styles for captionLayout="dropdown" | "dropdown-buttons"

Pass fromYear, toYear to get the above result.
<Calendar
  mode="single"
  selected={field.value}
  onSelect={field.onChange}
  disabled={date =>
    date > new Date() || date < new Date('1900-01-01')
  }
  initialFocus
  captionLayout="dropdown-buttons"
  fromYear={1900}
  toYear={new Date().getFullYear()}
/>

Hey :v:
Relative to : https://github.com/shadcn/ui/pull/320 ?
I was also looking for this for Birthdate picker.
I adjusted some styles so that it's correct and functional while waiting for the captionLayout="dropdown-buttons" mode to be styled (I do not change the style of the dropdowns).

styles.css (global)
.rdp [aria-hidden="true"]{
    @apply hidden;
}

.rdp-vhidden{
    @apply hidden;
}

Calendar.tsx (shadcn one):
<DayPicker
     ...
     classNames={{
        ...
        month: 'space-y-4',
-       caption: 'flex justify-center pt-1 relative items-center',
-       caption_label: 'text-sm font-medium',
+       caption: 'flex justify-between pt-1 relative items-center gap-2 px-2',
+       caption_label: 'text-sm font-medium capitalize',
+       caption_dropdowns: 'flex justify-center gap-2',
-       nav_button_previous: 'absolute left-1',
-       nav_button_next: 'absolute right-1',
        ...
    }}
>

This was unfortunate to see this obvious issue. In scenarios like DOB, the calendar is near impossible to use.

Same issue here. @Thisisjuke solution works pretty well for me

Yes, this is an issue and should be resolved ASAP. Thank you for a temporary fix @Thisisjuke

Hey ✌ Relative to : #320 ?
I was also looking for this for Birthdate picker.
I adjusted some styles so that it's correct and functional while waiting for the captionLayout="dropdown-buttons" mode to be styled (I do not change the style of the dropdowns).
styles.css (global)
.rdp [aria-hidden="true"]{
    @apply hidden;
}

.rdp-vhidden{
    @apply hidden;
}

Calendar.tsx (shadcn one):
<DayPicker
     ...
     classNames={{
        ...
        month: 'space-y-4',
-       caption: 'flex justify-center pt-1 relative items-center',
-       caption_label: 'text-sm font-medium',
+       caption: 'flex justify-between pt-1 relative items-center gap-2 px-2',
+       caption_label: 'text-sm font-medium capitalize',
+       caption_dropdowns: 'flex justify-center gap-2',
-       nav_button_previous: 'absolute left-1',
-       nav_button_next: 'absolute right-1',
        ...
    }}
>

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.


Test Tour: Manual Test Script Node (JavaScript)

Copied from VS needs to be adapted to VS Code
Test basic scenarios Use the following Templates:
•Create a new Starter Azure Node.js Express 3 Starter Project (JavaScript) in c:\src using the project template in Node.js -> JavaScript
•Create a new Starter Azure Node.js Express 3 Starter Project (TypeScript) in c:\src using the project template in Node.js -> TypeScript
If you are testing io.js follow the "Configuring your project to use io.js" steps to configure your project:
• https://github.com/Microsoft/nodejstools/wiki/io.js-and-ES6-support#configuring-your-project-to-use-iojs
Walk through these steps with both templates
•Wait for  npm install  to finish executing in the background (see details in the Output npm pane)
•Set a breakpoint in app.js at the line (or app.ts):
var app = express()
•Set a breakpoint in routes\index.js (or routes\index.ts) at the line that begins with
res.render('index'
•F5 to start debugging
◦Ensure the browser launches (http://localhost:1337)
◦Ensure both breakpoints are hit
◦Ensure the url loads successfully
•Walk through the “Profiling” and “Start your profiling session” sections in the Profiling docs, and verify things look as they do in the screenshots ◦ https://github.com/Microsoft/nodejstools/wiki/Profiling#profiling
◦https://github.com/Microsoft/nodejstools/wiki/Profiling#start-your-profiling-session
•Walk through the “Browsing/Installing new npm packages in the GUI” section ◦ https://github.com/Microsoft/nodejstools/wiki/Npm-Integration#browsinginstalling-new-npm-packages-in-the-gui
◦Try different VS themes, and make sure things are readable and nothing looks out of place.
•Walk through the Test Explorer documentation: ◦https://github.com/Microsoft/nodejstools/wiki/Test-Explorer#test-explorer
•Browser/Node.js-side editing ◦Create a new directory named “hello”, and right click to add a new javascript item “item1.js” to the directory
◾Verify that the directory display name changes to “hello (node)”
◾Verify that Ctrl + Space in item.js produces a completions list with “process” in it.
◾Right click the directory, and select “Set as Content (Browser code)”
◾Verify that the directory display name changes to “hello (browser)”
◾Verify that the build action of the item.js file is now set to “Content”
◾Add a new javascript file, “item2.js” to the directory, by right clicking the directory and using “Add New Item”
◾Verify that the directory name is still set to “hello (browser”)
◾Ctrl + space in the “item2.js” file that has opened, and verify that “document” appears in the completions list
◾F2 to change the name of the directory, and verify that the edit label is “hello”
◾Type a new directory name - “goodbye”
◾Verify that the name of the directory is “goodbye (browser)”
•Right click the project, Add new item, select the “Dockerfile” item template, and verify that the file is generated successfully.
•Interactive window ◦Open the Node.js Interactive Window using Ctrl+K, N
◦Run  .npm install azure --save-dev
◦Verify that the output is readable and doesn’t include any odd characters once the command finishes executing
◦Verify that a new entry has appeared in the  npm > dev  node in Solution Explorer and there are no errors/warnings

@weinand This is the ExpressApp created in Visual Studio using the started sample
ExpressApp1.zip

@weinand this is the TypeScript one
ExpressApp2.zip

@egamma this tour doesn't make much sense for VS Code.

VS Code does not launch a browser on F5
the TypeScript template does not have any TypeScript setup (no dev-dep in package.json, no compile or watch scripts)
the 'Profiling', 'Test Explorer' and the remaining sections apply to VS not VS Code.

@weinand sorry the plan was that the this gets adapted to VS Code //@mousetrap

ping @mousetraps


refactor: align naming between libraries

Pull Request checklist
🚨 Please review the guidelines for contributing to this repository.

[x] Make sure you are requesting to pull a topic/feature/bugfix branch. Don't request your main!
[x] Make sure you are making a pull request against the main branch (left side).
[x] Check the commit's or even all commits' message styles matches our requested structure.
[x] Check your code additions will fail neither code linting checks nor unit test.

@xavhan CSF is the acronym of "Component Story Format" introduced in Storybook 5.2: https://storybook.js.org/docs/react/api/csf


Memory problem or leak on iOS 7 ?

Hello everybody,
I'm sorry in advance as maybe this is a dumb and noob question...
I'm using SDWebImage to display pictures in a UITableView in my cellForRowAtIndexPath method, using the classic
[cell.pointPicture setImageWithURL:[NSURL URLWithString:thePoint.imageURL] placeholderImage:[UIImage imageNamed:POINT_DEFAULT_IMAGE]];
(the displayed pictures are light and well compressed jpgs, just some ko)
When I inspect my app with "Instrument - Allocations", and just scroll down my UITableView (with 40 cells containing picture, a bit like Instagram), I got a huge amount of memory used ! (see screenshot)

But it seems to be "VM", and especially "VM: CG raster data" from the coreGraphics library.
So the questions are :

Is it normal?
Is that a serious problem?
Is there a way to avoid this?

I'm sorry but after few search on the web I can't find any relevant information concerning the "VM: CG raster data"... Any idea? Thanks in advance !

Had the same issue in my app (which use a lot of large JPEG images).
Thanks to @harishkashyap for the patch, works well!

@harishkashyap could you please provide a PR?

@rs I have put in a PR for this: https://github.com/rs/SDWebImage/pull/996. Note that this also needs the configuration to be set:
[SDImageCache sharedImageCache].shouldDecompressImages = NO;
[SDWebImageDownloader sharedDownloader].shouldDecompressImages = NO;
I would favor defaulting to these options in the library but that is your decision. I added these as options externally so not to have breaking changes.

I'm a little confused...
The entire point of the decompression step when serving images via SDWebImage is to avoid that expense when the image is drawn to screen (and to keep it off of the main thread).
You can read more about this here (the TLDR is that decompressing JPEGs is expensive):
http://www.cocoanetics.com/2011/10/avoiding-image-decompression-sickness/
What you're likely going to see when you disable this functionality is that images will take longer to appear (and may cause main thread hiccups) when you're drawing them (this will be more noticeable in a UICollectionView with many images).
Per my understanding, this won't actually prevent CGRasterData accumulation (since this same process will occur when you draw the images to screen). At best, you're just delaying the decompression costs to the point of drawing - which has its merits, but doesn't solve the underlying memory issue in the long run. The only reason I could think you might not want to decompress the images on a background thread upon retrieving them from the cache is if you're not planning on drawing them immediately (pre-fetching for later use).
UIImage has its own memory management techniques and should purge unused image data when it is no longer needed (or when memory warnings occur). SDWebImage also uses an NSCache to store in-memory images, which will also purge its contents in the event of a memory warning.
I do not think image decompression should be off by default. This is one of the key benefits of using SDWebImage in the first place (decompressing JPEGs in a background thread is noticeably more performant than doing so JIT on the main thread).
I would also argue that having two separate places for setting that option (both in the cache and image downloader) is poor design and not very intuitive. Perhaps moving this option to the SDWebImageManager (which can then set it in both places on the user's behalf) is a better way to do this?

It does prevent CGRasterData accumulation as the amount of memory persisted during infinite scrolling only increases and infact increases tremendously to a point that causes the crash. @foundry has demonstrated it and that is exactly what we found as well. Also we didn't see any stutter while testing; on the contrary it remarkably improves. Also patch allows choosing the queue and it was using the main queue to prefetch that was adding a bad performance to the already existing high memory due to decompression. The idea of having different options is to allow granular level of choice that was consciously done not a poor design. This reduced memory by almost as much as 2/3rd. The earlier implementation didn't perhaps consider inifinite scrolling with large images and that was a gross error.

@donholly i can objectively say i have found no performance degradation turning off decompression using @harishkashyap patch. Not using the patch causes my app to crash in under one minute as the application reaches it's memory pressure limits. You can reproduce this very easily, just use larger images. UIImage does not clean up its  CGRasterData
To be honest, the article you posted may be completely invalid in today's market. I have ran many different UICollectionViews with decompression off and have noticed zero difference. The current state of SDWebImage using decompression with images any larger than 100x100 is going to cause ios system shutdowns as RasterData balloons to device limitations.
I honestly don't think you will see any performance degradation or FPS frame drops using instruments when turning off decompression. Without this patch we need to put a huge warning that SDWebImage will only not crash for users using small thumbnails (but will still leak unless the client listens for memory warnings and manually wipes sdwebimage)

Okay - perhaps I'm just not seeing this b/c of the size of the images I'm loading. What size images do you guys see these problems with? And you don't notice any difference in drawing time when you turn decompression off? Even with older devices (iPhone 4/4S)?
You may be right that the article I referenced is out of date. If so, I may actually want to use this patch and save CPU cycles for decompression.

I would be happy to move the configs to as sdwebimagemanager and default to not decompressing if everyone concurs.

@donholly I had the memory issue causing crashes on iPad 2. I didn't notice any performance issue applying @harishkashyap 's patch as an user of the app.
Images I'm loading are quite large (some of them are bigger than 1000 x 1000).

I didn't mean to criticize the design, sorry :)
What was the reason for separating them? Why would you want them to be
decompressed from the cache but not when downloaded (or vice versa)?
On Wed, Feb 25, 2015 at 11:19 AM, Harish Krishnamurthy <
<EMAIL_ADDRESS>wrote:

I would be happy to move the configs to as sdwebimagemanager and default
to not decompressing if everyone concurs.
—
Reply to this email directly or view it on GitHub
https://github.com/rs/SDWebImage/issues/538#issuecomment-76034597.

Got it... is the consensus that background image decompression is a thing
of the past now? Perhaps ImageIO/CoreGraphics are just better/smarter about
this now?
On Wed, Feb 25, 2015 at 11:20 AM, Kevin Delannoy<EMAIL_ADDRESS>wrote:

@donholly https://github.com/donholly I had the memory issue causing
crashes on iPad 2. I didn't notice any performance issue applying
@harishkashyap https://github.com/harishkashyap 's patch as an user of
the app.
Images I'm loading are quite large (some of them are bigger than 1000 x
1000).
—
Reply to this email directly or view it on GitHub
https://github.com/rs/SDWebImage/issues/538#issuecomment-76034888.

The other way around, to have compressed in cache and decompressed in rendering just to control cache. But I agree that is minor and will be happy to move it to the webmanager

Got it. Sounds good!

@donholly The big issue here seems to be the NSCache has a memory leak when its used to cache CGRasterData. All these solutions are just ways of working around that central bug.

I think decompression methods may have a leak; not sure if it is NSCache. There are alternatives to + (UIImage *)decodedImageWithImage:(UIImage *)image on iOS 7+. Someone can see if the new decompression methods resolves that. However, infinite scrolling with large images + caching on decompressed images (no matter what method you use) can consume huge memory at any given time that can affect performance.

@harishkashyap - What alternative methods are you referring to?

http://www.objc.io/issue-5/iOS7-hidden-gems-and-workarounds.html has decompression methods that I haven't had time to investigate as an alternative method to what is currently used.

Ah yes, I do remember coming across that awhile back now.. I didn't investigate further due to what @steipete noted:
I was very excited when I first found out about this, but you really shouldn’t be. In my tests, performance actually decreased when I enabled immediate caching. Either this method calls up to the main thread (unlikely) or perceived performance is simply worse because it locks in copyImageBlockSetJPEG, which is also used when showing a non-decrypted image on the main thread.

Thanks @donholly! That was the only thing I was going to look at.

all those comment shows that the problem is obvious
Read it all, no real workarounds… should another pod be recommended ?

NSCache is definitely the problem. I added a PR which eliminates the memory spikes by allowing the in-memory cache to be disabled.

would implementing the mem cache without nscache fix the issue in you opinion?

@rs sorry to ask as I'm not that experienced in using sdwebimage;
but what's not obvious here to me, is wether there's a fix to apply to sdwebimage to play well with newer iOS version, of if this whole discussion is just a long list of people using bad patterns ?

My understanding is that most people here see a leak where it is just cached images. Memory caching of images used to be a big deal to get 60fps on old hardware. It's certainly less the case today, and maybe disk only caching can be enough for some use cases.

@rs that's right. This reminds me. The default should be changed to put off decompression so there is no patch that needs to be applied.

@harishkashyap thing is with this tons of posts here; I don't want to bother but I'm lost…
what would be the simplest config to apply to get this to work properly, the "put off decompression" statement ?

@harishkashyap can you send a pull request? @mallorypaine if you disable decompression, does it fix your issue without disabling memory caching?

@bbnnt: this is how to disable decompression -
change:
_shouldDecompressImages = YES
to:
_shouldDecompressImages = NO
in:
SDImageCache.m
SDWebImageDownloader.m
SDWebImageDownloaderOperation.m
This assumes use of current SDWebImage which has @harishkashyap fixes included. In my case, this fixes the issue. Without this fix, ballooning memory that resulted in crashes every time (context is infinite scrolling tableview/collectionview cells). See my post further up the page

@rs Yes, implementing an in-memory cache with a cost feature that is actually never exceeded would also fix this issue. For my use case, I do want my images forcibly decoded on a background thread. That way, I don't get scrolling stutters when the images are ultimately displayed in a UIImage View.
If I turn off decompression (which I need), then the spikes appear to go away. However, the decompression is still unrelated to this issue. As I'm sure you know, a UIImage's memory consumption balloons the first time that image is actually drawn as that's when decompression + bitmap buffer allocation takes place. If I turn off decompression, then the UIImages that are in the NSCache are just lightweight pointers referencing file data, so the spike does appear to be fixed. However, as each UIImage is actually displayed via a UIImageView, it will be decompressed and its memory consumption will balloon significantly, and the NSCache will still be holding onto these larger images. If you actually displayed enough UIImages that were referenced by the NSCache, then the memory spike would be the same as if forced decompression were enabled.

@foundry thx a lot for the reminder, I'll have a further look
@mallorypaine you're saying there is no real solution to all this, hence this issue (debate) will never gets closed ?

@bbnnt there is definitely a solution to keeping unwanted memory from piling up. However, if you want to cache every image in memory then there your app's memory consumption will reflect the caching strategy. As I mentioned, I'm able to get precisely the behavior I need by disabling the NSCache. IMHO, NSCache is basically never worth using since its behavior is buggy and imprecise. It's also fairly trivial to build your own cache object that tracks cost of each item and then evicts based on LRU when the total cache cost exceeds what the app has configured. Maybe if I can find a spare hour or two I'll whip that up as it would be a true solve for this issue.

@mallorypaine so based on your pull request you turn NSCache off but keep decompression or do you disable that as well?

@mallorypaine so it might not be really an sdwebimage problem; but more or less a memory management strategy if i get it well ? I'm not expert enough; an app  with lot of images developed without this experience/knowledge would at some point always crash then ?

This is fundamentally an NSCache issue as I understand it. Implementing a
custom cache a la @mallorypaine would address the issue. So would Apple
fixing NSCache, but that seems to not be happening.
On Mon, Apr 27, 2015 at 12:41 PM bbnnt<EMAIL_ADDRESS>wrote:

@mallorypaine https://github.com/mallorypaine so it might not be really
an sdwebimage problem; but more or less a memory management strategy if i
get it well ? I'm not expert enough; an app with lot of images developed
without this experience/knowledge would at some point always crash then ?
—
Reply to this email directly or view it on GitHub
https://github.com/rs/SDWebImage/issues/538#issuecomment-96792685.

I noticed SDWebImage is not using NSCache  countLimit, any reason? This is probably the worst documentation i've read in a while so it could be completely worthless, and i'm not even sure what the default is?  @mallorypaine  do you have any insight to this setting?
https://developer.apple.com/library/mac/documentation/Cocoa/Reference/NSCache_Class/index.html#//apple_ref/occ/instp/NSCache/countLimit

Actually,
The default value is 0, which means no limit.
Could this be causing - (void)setMaxMemoryCost:(NSUInteger)maxMemoryCost to be completely ignored? I understand it's a black box, but maybe we can help coach it a bit more?

I'm going to do a few tests with instruments with these changes, and i'll report back
https://github.com/rs/SDWebImage/compare/master...rromanchuk:master

I disable decompression  by changing:
_shouldDecompressImages = YES
to:
_shouldDecompressImages = NO
in:
SDImageCache.m
SDWebImageDownloader.m
SDWebImageDownloaderOperation.m
But it looks like the memory is still so high. After scrolling the table view down to some large images, the app take up huge memory.

Can any one can help me to explain what happened here and write down some points about this issue ?

I have exactly the same issue although I made the same changes. I have some jpg images (20) in a gridview, but 80kb for each. But app crashes after one or two scroll.

@burakkilic you get a crash with just 80kb images? thats weird. i have a tableview as well with 300x250 imageview and get no crashes whatsoever.

@burakkilic : In your case, its weird. My app just lagging when I'm scrolling, it still happens on iPhone 5s but get no crashes. I don't know why the memory never get down or I miss somethings here.

Here is the profiler screenshot.  Thats why it crashes.  You should also experience laggy scroll. Generally speaking you do not add large res images as thumbs in a tableview/collection view. You add smaller ones. Do you actually need 300 ppi for thumb images?

Actually no. My client uploaded them. What is the optimum resolution?
Adil Burak Kılıç
On Wed, May 13, 2015 at 11:13 AM, Konstantinos K<EMAIL_ADDRESS>wrote:

oh come on...thats huge. Thats why it crashes.  You should also experience laggy
scroll. Generally speaking you do not add large res images as thumbs in a
tableview/collection view. You add smaller ones. Do you actually need 300
ppi for thumb images?
—
Reply to this email directly or view it on GitHub
https://github.com/rs/SDWebImage/issues/538#issuecomment-101565312.

In my apps i use 300x300 max  as thumbs while scrolling. You could use lower if you want.
And you can load the large image when you tap the thumb.

@burakkilic  "300 Pixel per Inch" is default for print, not digital

Thank you. I am downgrading to 72
Adil Burak Kılıç
On Wed, May 13, 2015 at 1:11 PM, bbnnt<EMAIL_ADDRESS>wrote:

@burakkilic https://github.com/burakkilic "300 Pixel per Inch" is
default for print, not digital
—
Reply to this email directly or view it on GitHub
https://github.com/rs/SDWebImage/issues/538#issuecomment-101609330.

Guys, the images you are posting do not show any memory issues.  If your apps are lagging it's most likely because you are doing silly things on the main thread.  @trunglee you say huge memory growth but what exactly is your persisted memory after scrolling?

I have a table view with a list of image urls. When the table scrolling down, it's show image on every row. That's all. For some first pages (about 20 rows per page), the table view is still smooth in an acceptable way. But from the page 3, the table view is going to lagging. I just keep a list of urls as text string for table view metadata and use SDWebImage to load image for imageView on table view cell.

It seams like a long discussing around this particular bug, but is anyone still experiencing a huge growth in memory allocation when loading high resolution images? I experience this issue primary on iPhone 6. I tried the suggested solution (from fork https://github.com/harishkashyap/SDWebImage/tree/fix-memory-issues) to turn off
[[SDImageCache sharedImageCache] setShouldDecompressImages:NO];
[[SDWebImageDownloader sharedDownloader] setShouldDecompressImages:NO];
but that does not solve the memory growth. For other low resolution images I see no significant growth

@pprochazka72 are you using static images with high res or animated ones (GIF or other format)?

@bpoplauschi static images with high res.

+1

[[SDImageCache sharedImageCache] setShouldDecompressImages:NO];
[[SDWebImageDownloader sharedDownloader] setShouldDecompressImages:NO]; is good for me to avoid huge memory cost when it is processing GIF format pics.

We have replaced our GIF component with FLAnimatedImage. You can try our 4.x branch (instructions).

image = [[UIImage alloc] initWithData:data];
This init method will bring in a memory spike when the image data is larger than 1M.

Closing. The FLAnimatedImage solution replacing our own GIF is integrated into the 4.x branch.

@mythodeia @rs it seems that 3 different people created PR's with the same idea of fixing some of the memory issues we have: scaling down the large images: #787  #884 #894. Do you think it is a good idea? Which one do you prefer? If we merge any of them, I would go with a SDWebImageScaleDownLargeImage option so people can go around it if they really need to.

@bpoplauschi #884 and #894 are almost the same.From these two i prefer #884.
Now for #787 i would like to see some benchmarks and the code needs some cleanup

@mythodeia I agree. Now since I saw that #787 was the most solid PR and it also included the Apple sample for downscaling, I considered including it is best. I merged it via 959d965 (of course it had conflicts and I updated the code). Then I added another commit 00bf467 cleaning stuff up in the Decoder class. Take a look and let me know what you think. We still need to bechmark it.
Everyone, #787 and 00bf467 should give you a good solution for dealing with large images. Together with the GIF handled by FLAnimatedImage, this ticket should be done now.


ASM: Move latch and operation_id from machine declaration

Currently a block machine is written like this:
machine Binary(latch, operation_id) {
    ...
    col witness operation_id;
    col fixed latch(i) { if (i % 4) == 3 { 1 } else { 0 } };
    ...
}

The idea is to remove them from the machine declaration and be an attribute, for example:
machine Binary {
    ...
    #[operation_id]
    col witness operation_id;

    #[latch]
    col fixed latch(i) { if (i % 4) == 3 { 1 } else { 0 } };

    ...
}

The reason for that is that we want to be able to pass shared machines to submachines, which would fit better a syntax that occupies that space:
machine Binary(mem: Memory) {
    ...
}

I think adding a annotation mechanism could complicate the whole thing, and while the header might not be an ideal place to put the latch and op id, I could imagine something like the following, just because it is much easier to implement right now:
machine Binary(arg1: int, arg2: MachineSomething) with latch: latch, operation_id: operation_id {
  ...
}

What if instead of an annotation we could use a special stdlib/corelib function?
col witness operation_id;
std::link::operation_id(operation_id);

And later deriving that with #[derive(operation_id)]

Can this be closed, @pacheco ?


ALA Laurel not appearing in affiliates footer

Hello,
I noticed that .affiliates .ala doesn't have the laurel svg referenced as a background-image the same way as the other affiliate logos so is currently displaying an empty box.
I'm not sure if this was an intentional decision so you could re-use the same block and just hide the logo of the current site but thought it was worth mentioning anyway.

Thanks! I wasn’t part of the decision making team on this site element but your reasoning is sound. I’ve reached out to designer @mikepick to verify ...


BREAKING: changed zd3d12 create*ShaderPipeline and MipmapGenerator to require shader bytecode

Removes all std.fs.openFileAbsolute out of zd3d12.zig, but there still remain indirect file loading via gctx.wic_factory.CreateDecoderFromFilename and dds_loading.zig
Can be improved by extracting csGenerateMipmaps out of samples/common/src/hlsl/common.hsls and put it into zd3d12 with a shader compilation step template.
fixes #556

Can be improved by extracting csGenerateMipmaps out of samples/common/src/hlsl/common.hsls and put it into zd3d12 with a shader compilation step template.

Agreed. Generally, I think we should be making samples/common smaller/non-existent.

Agreed. Generally, I think we should be making samples/common smaller/non-existent.

Ah, this explains a lot. common used to be a lib: https://github.com/zig-gamedev/zig-gamedev/commit/ff9bf9fe764736ac900b9a725730a23b60a8c333

@hazeycode do you know why all the windows d3d12 samples common imgui/vectormath instead of zgui/zmath?

Seems to be old code used by original Windows only version of zig-gamedev.
I started on a win32_dx12 zgui backend so that the common imgui can be dropped... I'll dig that out.

do you know why all the windows d3d12 samples common imgui/vectormath instead of zgui/zmath?

Seems to be old code used by original Windows only version of zig-gamedev.

Yes, exactly. D3D12 samples were written when zmath and zgui libs haven't existed yet.


[unocss-hmr] TypeError: vite_ssr_import_meta.hot.send is not a function

import global uno.css in the histoire.set.up
// src/histoire.setup.ts
import 'uno.css'

histoire.config.ts

vite.config.ts

uno.config.ts

and run dev can't not find the import.meta.hot.send function

how can i fix that

Hi ，hope you can provide a minimum reproduction

Hi ，hope you can provide a minimum reproduction

Idux-interactive-histoire-main.zip

A github repo would be better (  🫥

A github repo would be better ( 🫥

https://github.com/winchesHe/Idux-interactive-histoire

A github repo would be better ( 🫥

https://github.com/winchesHe/Idux-interactive-histoire

I found that you may need add this line

Hi , i found that this warning isn't block your code , the above pr can fix it ~

Hi , i found that this warning isn't block your code , the above pr can fix it ~

ok，thx~ :-D

Facing the same issue with a similar setup, but looks like the above PR was closed without merging 🙁

Experiencing the same issue with "unocss": "^0.50.6" and "histoire": "^0.15.9"


support ES 5.0

o move from dynamic sort to static schema ... removing "unmapped_type": "date"

https://softwarefactory-project.io/r/#/c/7362/


Enhanced Terminal opening process

Changes
Resolves #2359
When Code for IBM i opens a new Terminal, the TERM environment variable is now set to xterm.
The Terminal opening process has been refactored and enhanced a bit to:

Add current directory as an optional property of the TerminalSettings type
Wait until the Terminal is actually ready to fire events before doing anything
Hide the initial commands sent to the terminal
Display a nice message when the terminal is ready

How to test this PR

Open a PASE terminal from the bottom status bar
Open a PASE terminal by right-clicking on an IFS directory and select Open a Terminal here
Open a 5250 terminal

Checklist

[x] have tested my change

I checked out the branch but when I open the terminal it just hangs. I will continue to debug tomorrow.

Hopefully that happened with the built VSIX, because the build started after the third commit, that fixes the terminal hanging when opened. I double checked and I can open the terminal without issue with the branch checked out.
If is still doesn't show for you, it would mean the open event is never triggered for some reason and I'll start to freak out.

@worksofliam scratch that, the Terminal output is weird...the string is not always the one expected. See below, the "end tag" is messed up (doone instead of done).

I'll try to foul-proof it.

@worksofliam it should be OK now.

@sebjulliand Look at that!

Gotta do one more test to confirm it works.

Brilliant, thanks @worksofliam !


Do not use MapVector::canonicalize outside of construction

Comparing or serializing data to RowContainer must not mutate the
source data. Maps must be compared and serialized in key order but
canonicalize cannot be used for this because this will lead to flaky
crashes if different threads handle one MapVector, which can happen
for example with local exchange.
Use a commutative hash mix for maps since the key order is uncertain.
Covered by exec/tests/RowContainerTest and vector/tests/VectorTest.cpp.

@oerling CI failure appears related to this PR:
107: [  FAILED  ] 1 test, listed below:
107: [  FAILED  ] RowContainerTest.types
107:
107:  1 FAILED TEST
110/110 Test #107: velox_exec_test ......................................***Failed  339.44 sec

@oerling CircleCI shows a failure that appears related to this PR. Would you take a look?
102: [----------] 4 tests from MapAggTest
102: [ RUN      ] MapAggTest.finalGroupBy
102: WARNING: Logging before InitGoogleLogging() is written to STDERR
102: E1124 14:59:53.466317  4258 Exceptions.h:68] ../../velox/vector/ComplexVector.cpp773canonicalizemap.unique()RUNTIMEINVALID_STATE
90: 86136  in 49244 us
102: unknown file: Failure
102: C++ exception with description "Exception: VeloxRuntimeError
102: Error Source: RUNTIME
102: Error Code: INVALID_STATE
102: Retriable: False
102: Expression: map.unique()
102: Function: canonicalize
102: File: ../../velox/vector/ComplexVector.cpp
102: Line: 773
102: Stack trace:
102: # 0  _ZN8facebook5velox7process10StackTraceC1Ei
102: # 1  _ZN8facebook5velox14VeloxException5State4makeIZNS1_C4EPKcmS5_St17basic_string_viewIcSt11char_traitsIcEES9_S9_S9_bS9_EUlRT_E_EESt10shared_ptrIKS2_ESA_
102: # 2  _ZN8facebook5velox14VeloxExceptionC2EPKcmS3_St17basic_string_viewIcSt11char_traitsIcEES7_S7_S7_bS7_
102: # 3  _ZN8facebook5velox17VeloxRuntimeErrorC2EPKcmS3_St17basic_string_viewIcSt11char_traitsIcEES7_S7_S7_bS7_
102: # 4  _ZN8facebook5velox6detail14veloxCheckFailINS0_17VeloxRuntimeErrorENS1_22CompileTimeEmptyStringEEEvRKNS1_18VeloxCheckFailArgsET0_
102: # 5  _ZN8facebook5velox9MapVector12canonicalizeERKSt10shared_ptrIS1_Eb
102: # 6  _ZNK8facebook5velox9aggregate12_GLOBAL__N_115MapAggAggregate16removeDuplicatesESt10shared_ptrINS0_9MapVectorEE
102: # 7  _ZN8facebook5velox9aggregate12_GLOBAL__N_115MapAggAggregate13extractValuesEPPciPSt10shared_ptrINS0_10BaseVectorEE
102: # 8  _ZN8facebook5velox9aggregate12_GLOBAL__N_115MapAggAggregate19extractAccumulatorsEPPciPSt10shared_ptrINS0_10BaseVectorEE
102: # 9  _ZN8facebook5velox4exec11GroupingSet9getOutputEibPNS1_20RowContainerIteratorERSt10shared_ptrINS0_9RowVectorEE
102: # 10 _ZN8facebook5velox4exec15HashAggregation9getOutputEv
102: # 11 _ZN8facebook5velox4exec6Driver11runInternalERSt10shared_ptrIS2_EPS3_INS1_13BlockingStateEE
102: # 12 _ZN8facebook5velox4exec6Driver3runESt10shared_ptrIS2_E
102: # 13 _ZZN8facebook5velox4exec6Driver7enqueueESt10shared_ptrIS2_EENKUlvE_clEv
102: # 14 _ZN5folly6detail8function14FunctionTraitsIFvvEE9callSmallIZN8facebook5velox4exec6Driver7enqueueESt10shared_ptrIS9_EEUlvE_EEvRNS1_4DataE
102: # 15 _ZN5folly6detail8function14FunctionTraitsIFvvEEclEv
102: # 16 _ZN5folly18ThreadPoolExecutor7runTaskERKSt10shared_ptrINS0_6ThreadEEONS0_4TaskE
102: # 17 _ZN5folly21CPUThreadPoolExecutor9threadRunESt10shared_ptrINS_18ThreadPoolExecutor6ThreadEE
102: # 18 _ZSt13__invoke_implIvRMN5folly18ThreadPoolExecutorEFvSt10shared_ptrINS1_6ThreadEEERPS1_JRS4_EET_St21__invoke_memfun_derefOT0_OT1_DpOT2_
102: # 19 _ZSt8__invokeIRMN5folly18ThreadPoolExecutorEFvSt10shared_ptrINS1_6ThreadEEEJRPS1_RS4_EENSt15__invoke_resultIT_JDpT0_EE4typeEOSC_DpOSD_
102: # 20 _ZNSt5_BindIFMN5folly18ThreadPoolExecutorEFvSt10shared_ptrINS1_6ThreadEEEPS1_S4_EE6__callIvJEJLm0ELm1EEEET_OSt5tupleIJDpT0_EESt12_Index_tupleIJXspT1_EEE
102: # 21 _ZNSt5_BindIFMN5folly18ThreadPoolExecutorEFvSt10shared_ptrINS1_6ThreadEEEPS1_S4_EEclIJEvEET0_DpOT_
102: # 22 _ZN5folly6detail8function14FunctionTraitsIFvvEE7callBigISt5_BindIFMNS_18ThreadPoolExecutorEFvSt10shared_ptrINS7_6ThreadEEEPS7_SA_EEEEvRNS1_4DataE
102: # 23 _ZN5folly6detail8function14FunctionTraitsIFvvEEclEv
102: # 24 _ZZN5folly18NamedThreadFactory9newThreadEONS_8FunctionIFvvEEEENUlvE_clEv
102: # 25 _ZSt13__invoke_implIvZN5folly18NamedThreadFactory9newThreadEONS0_8FunctionIFvvEEEEUlvE_JEET_St14__invoke_otherOT0_DpOT1_
102: # 26 _ZSt8__invokeIZN5folly18NamedThreadFactory9newThreadEONS0_8FunctionIFvvEEEEUlvE_JEENSt15__invoke_resultIT_JDpT0_EE4typeEOS8_DpOS9_
102: # 27 _ZNSt6thread8_InvokerISt5tupleIJZN5folly18NamedThreadFactory9newThreadEONS2_8FunctionIFvvEEEEUlvE_EEE9_M_invokeIJLm0EEEEvSt12_Index_tupleIJXspT_EEE
102: # 28 _ZNSt6thread8_InvokerISt5tupleIJZN5folly18NamedThreadFactory9newThreadEONS2_8FunctionIFvvEEEEUlvE_EEEclEv
102: # 29 _ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJZN5folly18NamedThreadFactory9newThreadEONS3_8FunctionIFvvEEEEUlvE_EEEEE6_M_runEv
102: # 30 0x0000000000000000
102: # 31 start_thread
102: # 32 clone
102: " thrown in the test body.
102: [  FAILED  ] MapAggTest.finalGroupBy (244 ms)
102: [ RUN      ] MapAggTest.groupBy

@oerling linux-storage-adapters-build CI job is still failing. The failure seems unrelated to this change though. DriverTest.pause still fails in release builds.
107: [==========] 231 tests from 30 test suites ran. (64297 ms total)
107: [  PASSED  ] 230 tests.
107: [  FAILED  ] 1 test, listed below:
107: [  FAILED  ] DriverTest.pause
107:
107:  1 FAILED TEST
110/110 Test #107: velox_exec_test ......................................***Failed   64.36 sec

I run 1K repeats of DriverTest.pause compiled in release mode without the error. I have not noticed that in Circle CI results. Is there an error message with a line number somewhere?
Otherwise we may revisit  this after we merge CancelPool and Task.
The storage adapters test appears to be flaky.
Is this something that one can run locally?

@oerling Here is more info about the error:
92: I1125 18:32:31.502022  7341 WriterContext.h:71] Compression config: 4
90: 81612  in 7648 us
107: ../../velox/exec/tests/DriverTest.cpp:228: Failure
107: Failed
107: ../../velox/exec/tests/DriverTest.cpp:435 tasks_[0]->state() == TaskState::kFinishednot realized within 1s
107: [  FAILED  ] DriverTest.pause (1415 ms)

The storage adapters test appears to be flaky.

@oerling You will see failures with the release build on Linux (same as the CircleCI image). In my 500 repeats, I saw 410 passing and 90 failing runs for the  DriveTest.pause test.
Increasing the realization delay from 1s to 2s did not help.

Then we’ll put realizing the future and setting the state in the same critical section. After the merge of CancelPool and Task (646)[


Make keepalive variable local

This should prevent the race conditions when destroying and initializing multiple threadpools at the same time
Also see #88

I'm fully agree with this proposal.
++


Just use for retrieve hashtag, need ID or ApiID ?

Hello,
Thank you very much for this great script.
I just need to retrieve posts with hashtag #blackfriday (for example) from twitter and facebook ?
Do i need access_token (FB) and consumer_key/consumer_secret (Twitter) for just retrieve posts ?
Thank you !

to access both platforms you need them!


Add support for A5-14-09

Hi @mak-gitdev
This PR adds support for the profile A5-14-09.
It's very similar to the profile A5-14-0A - but has no sensor for vibrations.
Thank you!

Hi @mak-gitdev
Thanks for the review. PR updated accordingly...


install xgboost on OSX

Hi, thanks for writing such a amazing program.
I have problem install it on my Mac. The .build.sh complains that
/var/folders/g4/mkq81r6d5ys1gj75wyrwx_0w0000gn/T//cceTnEv7.s:20465:suffix or operands invalid for `movq'

It seems the issue relates to the g++ compile. The version is
bash-3.2$ g++ --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.0.0 (clang-700.1.76)
Target: x86_64-apple-darwin15.0.0
Thread model: posix

I've tried to use the clang-omp suggested in the build.md but got similar error.
I am trying to reinstall the g++5 compiler via home-brew and see if it solves the problem.

brew reinstall --with-all-languages gcc5 solved the problem.

although clang for mac os x is not suggested because it doesn't support OpenMP for multi-thread, it would be interesting know your system version (10.11?) and see if we can reproduce the error. Thanks.

Hi, it's OS X EI Capitan, version 10.11. Let me know if you need other info.

oh, I see. It has successfully built the single thread for you. It is normal because on Mac the Makefile tries with OpenMP firstly, if fails, it goes to clang for single thread with no OpenMP (see the build.sh where the if statement was). And, yes, gcc-5/g++-5 from brew is the best solution for now where clang-omp build instruction needs some update (#596)

yeap, as the log shows.
MBP:xgboost yitang$ ./build.sh
g++ -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -fopenmp -fPIC -fPIC -o xgboost updater.o gbm.o io.o main.o subtree/rabit/lib/librabit.a dmlc_simple.o -pthread -lm
clang: warning: argument unused during compilation: '-pthread'
ld: library not found for -lgomp
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [xgboost] Error 1
-----------------------------
Building multi-thread xgboost failed
Start to build single-thread xgboost
rm -f -rf updater.o gbm.o io.o main.o dmlc_simple.o xgboost   wrapper/libxgboostwrapper.so *.o  */*.o */*/*.o *~ */*~ */*/*~
cd subtree/rabit; make clean; cd ..
rm -f ./allreduce_base.o ./allreduce_robust.o ./engine.o ./engine_empty.o ./engine_mock.o ./rabit_wrapper.o ./engine_base.o ./engine_mpi.o lib/librabit.a lib/librabit_mpi.a lib/librabit_empty.a lib/librabit_mock.a lib/librabit_base.a  wrapper/librabit_wrapper.so wrapper/librabit_wrapper_mock.so wrapper/librabit_wrapper_mpi.so *~ src/*~ include/*~ include/*/*~ wrapper/*~
g++ -c -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -DDISABLE_OPENMP -fPIC -o updater.o src/tree/updater.cpp
g++ -c -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -DDISABLE_OPENMP -fPIC -o gbm.o src/gbm/gbm.cpp
g++ -c -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -DDISABLE_OPENMP -fPIC -o io.o src/io/io.cpp
g++ -c -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -DDISABLE_OPENMP -fPIC -o main.o src/xgboost_main.cpp
cd subtree/rabit;make lib/librabit.a; cd ../..
g++ -c -O3 -msse2 -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -std=c++0x -fPIC -o allreduce_base.o src/allreduce_base.cc
g++ -c -O3 -msse2 -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -std=c++0x -fPIC -o allreduce_robust.o src/allreduce_robust.cc
g++ -c -O3 -msse2 -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -std=c++0x -fPIC -o engine.o src/engine.cc
ar cr lib/librabit.a allreduce_base.o allreduce_robust.o engine.o
g++ -c -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -DDISABLE_OPENMP -fPIC -o dmlc_simple.o src/io/dmlc_simple.cpp
g++ -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -DDISABLE_OPENMP -fPIC -fPIC -o xgboost updater.o gbm.o io.o main.o subtree/rabit/lib/librabit.a dmlc_simple.o -pthread -lm
clang: warning: argument unused during compilation: '-pthread'
g++ -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -DDISABLE_OPENMP -fPIC -fPIC -shared -o wrapper/libxgboostwrapper.so wrapper/xgboost_wrapper.cpp updater.o gbm.o io.o subtree/rabit/lib/librabit.a dmlc_simple.o -pthread -lm
Successfully build single-thread xgboost
If you want multi-threaded version
See additional instructions in doc/build.md