Training on multiple univariate time series?

Hi
I was wondering if there is some documentation/tutorial on how to use my own custom univariate time series for fit() of SigLLM
I have this (355,1981) dataset with shared relative timestamps but measured at different times on different people. Could I use to train an outlier detector from it as I had the labels (355,1981 as each timeseries obviously outliers happen at different times for different series, but look similar to each other, and happen mostly at random) for it, that I could then use to predict anomalies in production?
edit: Or as I assume that the method was totally unsupervised, some sort of finetuning or in-context learning with the whole dataset could be nice even with the supervised label use
I know got the detect working, but I assume that I could get a lot better performance with some training instead of zeroshotting through my dataset
The fit() of ofmlblocks/mlpipelinehad at least this option so was wondering can you leverage labels or do I just push the timeseries one-by-one through theSigLLM`? They are a bit hard to concatenate for training

Hi @petteriTeikari, since this question is specific to SigLLM I will transfer it to the respective library!
With regards to your question, the pipelines are purely zero-shot and we currently don't support fine-tuning an LLM for your own data.
If you'd like to train a deep learning model from scratch, such as an LSTM, for unsupervised anomaly detection, you can use Orion!


Serious issues with sourcemaps and multiple webpack configs.

I tried playing around with this plugin over the weekend and ran into a few issues.  One was just getting a better understanding of service workers :), but it was really hard to do because sourcemaps are completely borked because of the way this plugin operates.
So I did a bit of tinkering around, and I found out a few things.

Don't make your service worker an entrypoint in your main webpack config.
It's way better to eliminate a bunch of the noise from other plugins that aren't intended to mess
around with service worker code. Also, from what I read, you really don't want the sw.js filename
changing with a hash every build, and you're probably using those (hashes) in your prod config.// webpack.config.js
module.exports = [
  {
     // your main code for the page and all your plugins
  },
  {
     // your service worker code, and its plugins.
  }
]

You shouldn't be rewriting any source before it goes through babel, or the minifier.  The best place to
put that is in a loader. (just like babel!)// in the service worker webpack config
module: {
  rules: [
    {
      test: /\.js$/,
      exclude: /node_modules/,
      use: [
        { loader: "babel-loader" },
        { loader: "asset-loader" }, // <-- This is the loader I made to do the asset injection.
      ],
    },
  ],
},

Multiple configs totally makes it harder to get the assets you want to cache!  So I made a new plugin:// in the main webpack config
plugins: [
  {
    apply: compiler => {
      compiler.plugin("done", ({ compilation }) => {
        global.assets = Object.keys(compilation.assets);
      });
    },
  },
],

Cool...   so I've squirreled away, in a really hackey way, the assets for the main layer!  But the service
worker config finishes waaaaaaay before the main one... so here's another small hack, and my loader.// asset-laoder.js
module.exports = function(source) {
  const callback = this.async();
  const interval = setInterval(() => {
    if (!global.assets) return; // just wait till the main config is done compiling.
    clearInterval(interval);
    const assets = global.assets.map(asset => `/${asset}`);
    callback(null, source.replace(/'\{assets\}'/ig, JSON.stringify(assets)));
  }, 100);
};

// worker.js
const filesToCache = '{assets}'
.filter(asset => !asset.endsWith('map') && !asset.endsWith('manifest')); // I don't want to cache those.

Ah ha!   I almost forgot.  You have to do a bit more work when using hot module replace for your main code.  (I'm not sure I want to think about doing this with the service worker....  I guess it can work?)
// my express server
if (config.get('dev:devmode')) {
  const webpack = require('webpack');
  const wdm = require('webpack-dev-middleware');
  const whm = require('webpack-hot-middleware');
  const wpconf = require('./webpack.config');
  const compiler = webpack(wpconf[0]);
  app.use(wdm(compiler, { publicPath: '/' }));
  app.use(whm(compiler));
  app.use(wdm(webpack(wpconf[1]), { publicPath: '/' }));
}

Without this, wdm/whm gets very upset about changes in your service worker, if you passed it the whole array of webpack confs as the compiler.


Issue #2941 Gradient PIXI.Text doesn't update in Safari (iOS,OSX) and Chrome (iOS)

#2941 Gradient PIXI.Text doesn't update in Safari (iOS,OSX) and Chrome (iOS)

I did a basic benchmark test, just doing a loop over calling clearrect, and even going upto a million clearRects, can not see a difference, on a canvas of 1920x1080, between a clearRect of 1x1 and a clearRect of the full 1920x1080. Tried on Firefox, IE and Chrome on the desktop, Cocoon on an android device with Canvas+.
So I've changed my mind and am now leaning towards going the cleaner route and clear the entire canvas all of the time at that point ie. lose the if statement of only doing it for cocoon.

Last thing @hendrysadrak  - could you submit this PR to the dev branch, and not to the master please. Then we're good I think, thanks!

The branch change looks good to me :)

@englercj - one thing this did was show that the readme and license have been changed in master but not dev!

Yeah I'll merge down this weekend :P


added requirements .txt

Description

Please include a summary of the changes and the related issue.
Fixes # (issue)

Type of change

[ ] New features (non-breaking change).
[ ] Bug fix (non-breaking change).
[ ] Breaking change (fix or feature that would cause existing functionality not to work as expected).

Checklist

[ ] I have performed a self-review of my code.
[ ] I have added thorough tests if it is a core feature.
[ ] There is a reference to the original bug report and related work.
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] The feature is well documented.

How does one unsubscribe Jesus Christ I made the mistake thinking this repo is was cool now I'm bombarded by all you idiots.

Currently we use pyproject.toml to store package dependencies https://python-poetry.org/docs/pyproject/


Add network configurator to non-engi utility belt fill

#17244 removed multi from all the non-engi belts, not just salv. This PR puts a network configurator in its place that can't be used for hacking. On some maps, sci has a belt mapped but xenoarch console isn't linked, so they relied on the multitool in the belt to link it.

Windows test fail is unrelated. Lots of other PRs are also failing with the same System.OutOfMemoryException.


Screen Shots

Can You upload Some Screen shots ?

You will probably want to look elsewhere than this project.

Absolutely what @gjsieben said. I'm honored someone took the time to install and get this thing to work in 2017. However, this was a project in college in 2012 that I put online as a showcase. I'm sure there are much better social network projects on github than this one. Of course, feel free to go wild on this in a fork.

I highly recommend BuddyPress or Elgg.


Godot Video intro

Made a little intro with the Godot logo. (:
https://user-images.githubusercontent.com/74989722/114630635-51cae180-9cbb-11eb-8a3b-c20ab7a5f943.mp4

Thanks for your submission :slightly_smiling_face:
This repository is only used for design elements that we use for "official" promotion of the engine, so I'll have to close this unfortunately.

Hi! Oh, I am sorry, I was unaware of such, but thank you for letting me know! I hope I can contribute to the Godot Engine in some way in the future! (:


Weather add

Hi @antixcode6, thank you for taking the time to add a new module.
A lot of users were querying for weather and this came up just in time! :smile:
Take a look at the lines that I have commented on, and we'll be ready to merge.

Whoa, that was fast!
Two files (idea/vcs and src/movie) need to be removed and just a few more changes (see comments)

Worked on the further suggestions; was just curious if module was good to go

See here https://github.com/swapagarwal/JARVIS-on-Messenger/pull/13/files
There are 6 files changed while there should be only 3.

Why delete movie.py?

Was just trying to remove it from this pull request since it had no place being there

Can you make a new PR with changes only in the 3 required files? I think that'll be easier to merge.

Alright I'm closing this I'll open a new one

#28


Implement writing the hardware RTC

This PR implements writing to the hardware RTC. Closes issue https://github.com/IvanVeloz/ndsntp/issues/6.
The changes were tested on real hardware with great results. The accuracy is within 1 second in most cases. For the time being, the time is set to UTC, and the synchronization starts automatically.

Checklist

Was tested on hardware
Documentation is updated


Add Arcadia Finance Safe app

Entry type

New addition

App info
Name: Arcadia Finance
Description: The smartest way to earn on Base
URL: https://arcadia.finance
Icon (PNG, 180x180):

Homepage: https://arcadia.finance
Twitter: https://twitter.com/ArcadiaFi
GitHub: https://github.com/arcadia-finance
Discord: https://discord.com/invite/PXcr8SEeTH
App supports batching multiple transactions via Safe: yes
Supported networks

- Base

Revision checks

[x] Used smart contracts were audited.
[x] You have implemented the app using the Safe Apps SDK
[x] Your Safe App includes a manifest.json file at the root with the required data.
[x] The app can be loaded as a custom Safe App in the Apps section of https://app.safe.global.
[x] The app auto-connects to the Safe.
[x] You are able to trigger and execute one transaction with a Safe.
[x] RPC requests are optimized (not triggering many requests in a very short time period).

Audit document

https://github.com/arcadia-finance/arcadia-finance-audits/tree/main/audits-v2
Code for review

https://github.com/arcadia-finance/arcadia-v2-dapp (invite needed, please let me know which user(s) to invite)
Team information
Company: Arcadia Protocol Foundation
Official website: https://arcadia.finance
Point of contact: Jasper
Email/Telegram: jasper at arcadia.finance . TG: @j_arcadia

:white_check_mark: Approved

Published, thank you!
https://app.safe.global/share/safe-app?appUrl=https%3A%2F%2Farcadia.finance&chain=base


[Hub Generated] Review request for Microsoft.SecurityInsights to add version preview/2021-03-01-preview

This is a PR generated at OpenAPI Hub. You can view your work branch via this link.
Changelog
Please ensure to add changelog with this PR by answering the following questions.

What's the purpose of the update?

[ ] new service onboarding
[ ] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[x] Other, please clarify - fixing swagger - removing unused endpoints which where recently added due to design change. These endpoints are not used by customers.

When you are targeting to deploy new service/feature to public regions? Please provide date, or month to public if date is not available yet. ASAP - no date since it is not a new feature
When you expect to publish swagger? Please provide date, or month to public if date is not available yet. ASAP
If it's an update to existing version,  please select SDKs of specific language and CLIs that require refresh after swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[x] No, no need to refresh for updates in this PR

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of "no breaking changes"
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[x] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
[ ] Ensure to copy the existing version into new directory structure for first commit (including refactoring) and then push new changes including version updates in separate commits. This is required to review the changes efficiently.
Adding a new service

[x] Please ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[x] Updating API in stable or public preview version with Breaking Change Validation errors - Removing newly added endpoints due to design change. These endpoints are not used yet so no impact is expected to customers.
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

@ArcturusZhang
This PR is removing newly added endpoints due to design change (the settings/onboard and settings/offboard endpoints).
These endpoints are not used yet so no impact is expected to customers. These endpoints are being replaced with a completely new resource type instead.
We verified the traffic in ARM logs to make sure that these endpoints are not reached and they indeed are.
The only request there is a test one we did at the early stages of deployment (notice that it is to one of our test workspaces contoso55).
https://armprod.kusto.windows.net/ARMProd?query=H4sIAAAAAAAEAG2QT0sDMRTE74Lf4ZFTK62k9SZUkLK2OewfNulBL5LuvnZzSFJf3qqIH961ggsizG1%2BMwyzZT6p0ETvwrHGlx4Tp8uLT3jrkBCMyjNt7vMK7qC1jOw8TpZyuZjLm7lcGClvz3qajhm2dESuMcWeGqwovroWCVYrELla16UuH8y1zta7WplHVWi12RotYCzohkk5chfbc6gqtRGjG09Ill0MhfUDaxMInRmjio0Wf0fsyEETA1sXBiyGfbTUCoj0v384%2FADfNan33pL7QBjIZ2%2FfJ79fzOBq%2BgUoG0VhNwEAAA%3D%3D&web=0
HttpIncomingRequests
| where TIMESTAMP > datetime(2021-03-01T00:00:00Z)
| where targetResourceProvider == "MICROSOFT.SECURITYINSIGHTS"
| where httpMethod == "POST"
| where operationName has "SETTINGS"
| where targetUri contains "onboard" or targetUri contains "offboard"
| summarize arg_max(TIMESTAMP, *)

TIMESTAMP
PreciseTimeStamp
Deployment
Role
RoleInstance
Level
ProviderGuid
ProviderName
EventId
Pid
Tid
TaskName
ActivityId
subscriptionId
correlationId
principalOid
principalPuid
tenantId
authorizationSource
authorizationAction
operationName
httpMethod
hostName
targetUri
userAgent
clientRequestId
clientSessionId
clientIpAddress
clientApplicationId
apiVersion
contentLength
serviceRequestId
durationInMilliseconds
httpStatusCode
exceptionMessage
errorCode
failureCause
errorMessage
RowKey
SourceNamespace
SourceMoniker
SourceVersion
referer
commandName
parameterSetName
contentType
contentEncoding
armServiceRequestId
organizationId
activityVector
locale
realPuid
altSecId
additionalProperties
targetResourceProvider
targetResourceType
RoleLocation

2021-04-05 06:27:41.2860752
2021-04-05 06:27:41.2860752
63e1d6d1e71c4dd1b306ce2eb74f54c8
Frontdoor.Web.razzle
Frontdoor.Web.razzle_IN_1
4
6a309439-9c04-49f6-b5cf-9a8e78d56b11
Microsoft-WindowsAzure-Frontdoor
33
20252
18548
HttpIncomingRequestEndWithClientFailure
43118953-2667-4c71-9226-b40b3528ac68
3c1bb38c-82e3-4f8d-a115-a7110ba70d05
43118953-2667-4c71-9226-b40b3528ac68
3a8ab325-b2e0-4131-8919-0133f0d9e9c9
100320003588F670
72f988bf-86f1-41af-91ab-2d7cd011db47
RoleBased
Microsoft.SecurityInsights/settings/action
POST/SUBSCRIPTIONS/RESOURCEGROUPS/PROVIDERS/MICROSOFT.OPERATIONALINSIGHTS/WORKSPACES/PROVIDERS/MICROSOFT.SECURITYINSIGHTS/SETTINGS/
POST
management.azure.com
https://management.azure.com:443/subscriptions/3c1bb38c-82e3-4f8d-a115-a7110ba70d05/resourceGroups/contoso55-eus/providers/Microsoft.OperationalInsights/workspaces/contoso55/providers/Microsoft.SecurityInsights/settings/onboard?api-version=2021-03-01-preview
PostmanRuntime/7.26.10

<IP_ADDRESS>
c44b4083-3bb0-49c1-b47d-974e53cbdf3c
2021-03-01-preview
114
43118953-2667-4c71-9226-b40b3528ac68
1942
412

csmFranceSouthRPF
MdsResourceStackRPFFranceSouth
Ver23v0

application/json; charset=utf-8

f5fc3c8a-78e9-49fe-88c8-e041d819b371

IN

100320003588F670

{"x-ms-open-telemetry-activity-id":"00-2ff1b405b3f7ba4a81c90d770ec7a91b-1ffdc8e06a8b1b4a-01","x-ms-open-telemetry-trace-state":"","x-ms-home-tenant-id":"72f988bf-86f1-41af-91ab-2d7cd011db47","x-ms-tls-version":"Tls12","authorization-action-bag":"{"primaryAction":"Microsoft.SecurityInsights/settings/action"}"}
MICROSOFT.SECURITYINSIGHTS
SETTINGS
France South

@laithhisham the process requires that any breaking change go through the breaking change approval process described here: https://dev.azure.com/msazure/AzureWiki/_wiki/wikis/AzureWiki.wiki/37684/Breaking-Changes?anchor=process. After the breaking change approval ARM review board will review the API changes.

@laithhisham the process requires that any breaking change go through the breaking change approval process described here: https://dev.azure.com/msazure/AzureWiki/_wiki/wikis/AzureWiki.wiki/37684/Breaking-Changes?anchor=process. After the breaking change approval ARM review board will review the API changes.

@filizt Thanks for letting me know. Done, here's the WI: https://msazure.visualstudio.com/One/_workitems/edit/9963295
I thought it might be not required since it is a new feature which is still not used at all by customers so no customer impact is expected.

/azp run


Refactor managers for custom structures

Facilitate the creation of bots with a structure of "modules". For this, managers should accept an array of options.
Example
- new CommandsManager(client, options);
+ new CommandsManager(client, [optionsModule1, optionsModule2]);

- new ButtonsManager(client, options);
+ new ButtonsManager(client, [optionsModule1, optionsModule2]);

Note: The array should be optional, a simple object must work

Replaced by #90


Fix example code in README.md

ActiveRecord is a module. So it is not interited as a class.
Instead, ActiveRecord::Base (Rails < 5 way) or ApplicationRecord (Rails >= 5 way) is correct.

ApplicationRecord being a subclass of ActiveRecord::Base.
The correct snippet, in any Rails verison, would be
- class Book < ActiveRecord
+ class Book < ActiveRecord::Base

Okey!
I used ActiveRecord::Base and force pushed as https://github.com/fastly/fastly-rails/pull/78/commits/83e3f80b265bfe38b1ac25832600f1e761dcd158 .

Thanks @tricknotes


Textfield variant outlined's border color doesn't change when focus on mobile

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior 🤔
The outlined border color should change from grey to primary color (when focus) across all breakpoints

Current Behavior 😯
On mobile (both devtools and android chrome), the border color won't change to primary color when focusing

Steps to Reproduce 🕹

It occurs in my own project but I noticed that it occurs on Mui doc as well
Link: https://material-ui.com/components/text-fields/

Go to Outlined section
Toggle developer tools and set to any mobile device
Click on any of the outlined fields

Your Environment 🌎
Tested on Android Chrome with my own phone and Linux Chrome

Tech
Version

Material-UI
v4.1.0

React
16.8.6

Browser
Chrome (Linux)  75.0.3770.80

TypeScript

etc.
Chrome (Android) 75.0.3770.67

@punnadittr Thanks for reporting this regression between v3.9.3 and v4.0.2. I can't track down the source of the problem. This seems to be a specificity issue in JSS.
The following diff fixes the problem:
diff --git a/packages/material-ui/src/OutlinedInput/OutlinedInput.js b/packages/material-ui/src/OutlinedInput/OutlinedInput.js
index e15bbea9a..6799212d4 100644
--- a/packages/material-ui/src/OutlinedInput/OutlinedInput.js
+++ b/packages/material-ui/src/OutlinedInput/OutlinedInput.js
@@ -18,8 +18,9 @@ export const styles = theme => {

   return {
     /* Styles applied to the root element. */
     root: {
       position: 'relative',
       '& $notchedOutline': {
         borderColor,
       },
       '&:hover $notchedOutline': {
         borderColor: theme.palette.text.primary,
-        // Reset on touch devices, it doesn't add specificity
-        '@media (hover: none)': {
+      },
+      // Reset on touch devices, it doesn't add specificity
+      '@media (hover: none)': {
+        '&:hover $notchedOutline': {
           borderColor,
         },
       },
       '&$focused $notchedOutline': {
         borderColor: theme.palette.primary.main,
         borderWidth: 2,
       },

cc @kof
I can't find any other occurrences of the problem in the codebase, I believe this patch is safe to apply. Do you want to submit a pull request?

Is it this https://github.com/cssinjs/jss/issues/1045 ?

I'm wondering if the @media doesn't change the code paths. If I had to estimate a probability, I would say 0.5.

@oliviertassinari
I have just migrated my project from v3 to v4, so far so good, except this is the obvious one. This issue is not only happening on mobile. In a nutshell, Textfield variant outlined's border color is not changing on focus. @mediahover is overriding it.
By any chance will it be fixed any time soon? thanks.

a clear reduced reproduction anyone with JSS core?

This issue is not only happening on mobile.

@arminydy Sounds like you have an issue in your environment.

By any chance will it be fixed any time soon? thanks.

If you want to give it a shoot, we will be happy to review your pull request :). The issue was labeled "good first issue". It's low-hanging fruit. Meaning, the core team won't be working on it, so we can work on issues we are uniquely positioned to address.

@oliviertassinari I followed your guidance, it works like a charm now :) , I will appreciate if you could have a quick look on this PR. Thanks.


feature request: add other db drivers

Great work Markus - exactly what I need in some side project.
Is it possible to add other database drivers, for example postgres, like in gorm?

@maltegrosse happy to hear you find it useful. :)
I've considered the same, but I haven't tried it yet. My main focus is SQLite, definitely, but if adding Postgres is trivial, I would consider it. It basically depends on whether the queries work in Postgres as well as-is, or if they need to be adjusted.

@maltegrosse might want to check out River / @markuswustenberg if you want an idea of what is involved for adding Postgres driver

@saurori thanks. That solution does quite a lot more than this queue, though. I think I could get away with just rewriting the queries a bit and importing a different SQL driver.

would it be a big performance loss by just using gorm?

I don’t know. But I don’t want an ORM dependency, unfortunately. :) I like that this project has no external dependencies apart from the SQLite driver clients being.


The if function

i cant get this one to pass the test for some reason. it says that func1 isn't defined and im not sure what to do with it

function _if(bool, func1, func2) {
  if (bool) {
    func1()
  } else {
    func2()
  }
}

Inside the if and else here you are calling the functions, but not doing anything with the result, perhaps return it.

Your tests only cover half your code.

how? don't i test both results?


Binding generator

Hello, in order to easily interface WAMR with Rust, I wrote "wamr-bindgen" macros that automatically write the necessary code (signature, binding function, conversions). At the moment, it is only a crude prototype, but it is functional in the case of simple types and references on composite types (generic types and composite types passed by value/returned are not supported).
For the following standalone function :
#[function_bindgen]
fn test_function(_a: i32, _b: f32, _c: String, _d: &str, _e: i64, _f: u64, _g: i8) -> u8 {
    42
}

the generated code is :
const __WAMR_BINDGEN_TEST_FUNCTION_SIGNATURE: &'static str = "(if$$IIi)i";
#[no_mangle]
pub unsafe extern "C" fn __wamr_bindgen_test_function(
    __wamr_environment: wamr_sys::wasm_exec_env_t,
    _a: i32,
    _b: f32,
    _c: u32,
    _d: u32,
    _e: i64,
    _f: i64,
    _g: i32,
) -> i32 {
    let __wamr_instance = unsafe {
        wamr_sys::wasm_runtime_get_module_inst(__wamr_environment)
    };
    let _a = _a as i32;
    if !unsafe { wamr_sys::wasm_runtime_validate_app_str_addr(__wamr_instance, _c) } {
        {
            ::core::panicking::panic_fmt(format_args!("Invalid pointer"));
        }
    }
    let _c: *const char = unsafe {
        std::mem::transmute(
            wamr_sys::wasm_runtime_addr_app_to_native(__wamr_instance, _c),
        )
    };
    let _c = unsafe { std::ffi::CStr::from_ptr(_c as *const i8) }
        .to_str()
        .unwrap()
        .to_string();
    if !unsafe { wamr_sys::wasm_runtime_validate_app_str_addr(__wamr_instance, _d) } {
        {
            ::core::panicking::panic_fmt(format_args!("Invalid pointer"));
        }
    }
    let _d: *const char = unsafe {
        std::mem::transmute(
            wamr_sys::wasm_runtime_addr_app_to_native(__wamr_instance, _d),
        )
    };
    let _d = unsafe { std::ffi::CStr::from_ptr(_d as *const i8) }.to_str().unwrap();
    let _e = _e as i64;
    let _f = _f as u64;
    let _g = _g as i8;
    test_function(_a, _b, _c, _d, _e, _f, _g) as i32
}

and for an impl on a structure :
struct Test {}

#[impl_bindgen]
impl Test {
    fn test_function(
        &self,
        a: i32,
        b: f32,
        c: String,
        d: &str,
        e: i64,
        f: &u64,
        g: i8,
        h: u8,
        i: i16,
        j: u16,
        k: f64,
    ) -> u8 {
        42
    }
}

the generated code is :
const __WAMR_BINDGEN_TEST_FUNCTION_SIGNATURE: &'static str = "(*if$$I*iiiiF)i";
#[no_mangle]
pub unsafe extern "C" fn __wamr_bindgen_Test_test_function(
    __wamr_environment: wamr_sys::wasm_exec_env_t,
    __self: u32,
    a: i32,
    b: f32,
    c: u32,
    d: u32,
    e: i64,
    f: u32,
    g: i32,
    h: i32,
    i: i32,
    j: i32,
    k: f64,
) -> i32 {
    let __wamr_instance = unsafe {
        wamr_sys::wasm_runtime_get_module_inst(__wamr_environment)
    };
    if !unsafe {
        wamr_sys::wasm_runtime_validate_app_addr(
            __wamr_instance,
            __self,
            std::mem::size_of::<Test>() as u32,
        )
    } {
        {
            ::core::panicking::panic_fmt(format_args!("Invalid pointer"));
        }
    }
    let __self: &mut Test = unsafe {
        std::mem::transmute(
            wamr_sys::wasm_runtime_addr_app_to_native(__wamr_instance, __self),
        )
    };
    let a = a as i32;
    if !unsafe { wamr_sys::wasm_runtime_validate_app_str_addr(__wamr_instance, c) } {
        {
            ::core::panicking::panic_fmt(format_args!("Invalid pointer"));
        }
    }
    let c: *const char = unsafe {
        std::mem::transmute(
            wamr_sys::wasm_runtime_addr_app_to_native(__wamr_instance, c),
        )
    };
    let c = unsafe { std::ffi::CStr::from_ptr(c as *const i8) }
        .to_str()
        .unwrap()
        .to_string();
    if !unsafe { wamr_sys::wasm_runtime_validate_app_str_addr(__wamr_instance, d) } {
        {
            ::core::panicking::panic_fmt(format_args!("Invalid pointer"));
        }
    }
    let d: *const char = unsafe {
        std::mem::transmute(
            wamr_sys::wasm_runtime_addr_app_to_native(__wamr_instance, d),
        )
    };
    let d = unsafe { std::ffi::CStr::from_ptr(d as *const i8) }.to_str().unwrap();
    let e = e as i64;
    if !unsafe {
        wamr_sys::wasm_runtime_validate_app_addr(
            __wamr_instance,
            f,
            std::mem::size_of::<u64>() as u32,
        )
    } {
        {
            ::core::panicking::panic_fmt(format_args!("Invalid pointer"));
        }
    }
    let f: &u64 = unsafe {
        std::mem::transmute(
            wamr_sys::wasm_runtime_addr_app_to_native(__wamr_instance, f),
        )
    };
    let g = g as i8;
    let h = h as u8;
    let i = i as i16;
    let j = j as u16;
    Test::test_function(__self, a, b, c, d, e, f, g, h, i, j, k) as i32
}

Can I have any advice on that ?

Thanks for contribution.
I noticed the PR is using APIs of wamr_sys in generated code which is not our suggestions. We are hoping people use wamr-rust-sdk APIs to keep their code safe and don't involved those unsafe blocks.

__wamr_environment.get_instance(). we prefer user using instance.rs instead of wamr C structure.
app_to_native_str. we prefer user doesn't be aware of it.

Okay, but how should I translate address from Wasm to native then ?

__wamr_environment.get_instance(). we prefer user using instance.rs instead of wamr C structure.

app_to_native_str. we prefer user doesn't be aware of it.

I don't understand. I don't interact directly with the C instance structure; rather, it's encapsulated within the Rust instance structure. However, I'm constrained by the parameter type, which is intrinsic to WAMR native function signature.
Okat, but how would you suggest translating addresses from Wasm to native then?

Okay, but how would you suggest translating addresses from Wasm to native then?

I am not quite following why we need to operate address like C in Rust World?

I am not quite following why we need to operate address like C in Rust World?

How am I supposed to pass, for example, strings or arrays from WASM to the native and vice versa? (necessary for the serialization of complex structures).

The whole idea is to keep user interfaces simple. We don't want to let APIs' users keep much concepts in their mind when programing with wamr-rust-sdk. Using a String as an example, it will be too much if they have to 1. move a string to wasm memory from host memory. 2. construct a WasmValue as a parameter of a wasm function. 3. most important thing, rust strings can be used directly because of encoding and \0.
In my mind, an ideal result is use one API, like WasmValue::String() only, to finish all previous tasks together.

Ok but I'm struggling to see how you plan to implement WasmValue::String(). Besides wrapping it around a pointer returned by WASM to native, I don't quite see how it's possible without using address translation / raw pointers (I'm talking about the case where wasm calls a host function).

without using address translation / raw pointers

Sorry for the mis-understand. address translation is still necessary in rust-sdk. But rust-sdk users shouldn't be awarded of that.


[Feature Request] Spatial Mode

Could it be possible to “open every folder in its own window” like caja?

Hi.
I have never used spatial file management before, so I may be wrong; but based on what I have read about it, I think that a spatial file manager needs to provide the following:

Open each directory on a proper window.
If there's already a window for that directory, focus that window instead of opening a new one.
Each directory's window saves its position. So if I open a directory (and there's no already open window for it), its new window should be opened at the same position it was when I opened it before.

First item is the simpler one to implement. Just spawn a new XFiles instance when opening a directory.
Second item requires either XFiles to depend on the hints set by the window manager (so it can know which windows are already open and which window is associated with which directory).  Or each XFiles instance would have to be a client that communicates with a XFiles server application that coordinates its instances so that each one can have one window. That is too much and beyound XFiles scope.
Third item requires XFiles to save its position on a single configuration file (where it would keep the placement of the window of each directory); or keep a configuration file within each directory (just like the desktop.ini files in Windows' File Explorer, or the .DS_Store in macos' Finder). That is also beyond XFiles scope.
What is feasible within XFiles scope, though, is to use a "launcher script" that forces XFiles into spatial navigation:

XFiles should be changed to call the $OPENER program when opening a directory ($OPENER is already executed when opening a file; opening a directory however is managed by XFiles itself).  Opening directories through $OPENER is necessary so that the spatial navigation script can be called to open the directory on a new window.  This requires few changes on XFiles side, and fulfills item 1.
When this script is run on a directory, it checks the list of windows set by the window manager (using wmctl or whatever IPC facility your window manager provides) for an already open window displaying that directory.  If one is found, focus it. If not, spawns a new XFiles instance. This requires no modification on XFiles code, and fulfills item 2.
XFiles should somehow provide its caller information about its window before closing its window. This can be easily done by printing the window size and current directory into standard output (or a special file descriptor?) when the window is closed, so the caller script can save that information somewhere.  This requires few changes on XFiles side, and fulfills item 3.

Spatial navigation is not a thing I want to implement in XFiles.
But if such behavior can be reproduced by a script and requires only implementing a simple and naive IPC interface on top of XFiles (and if those changes can also leverage unexpected use cases beyond spatial navigation¹) then it is within XFiles scope and I can implement that.
By having such interface of XFiles reporting its caller its window attributes, the user can think of a use different from spatial navigation that we have not imagined when implementing that interface. If I implemented spatial navigation entirely in XFiles itself (rather than implementing a generic interface supporting it) the user could not invent new uses for XFiles.
Conclusion:
Spatial navigation will not be implemented in XFiles. But we can use this issue to discuss how a simple protocol can be implemented on top of XFiles (such as by invoking $OPENER when opening directories, and reporting to the caller the window attributes) for spatial navigation to be implemented using scripts.


[ImgBot] Optimize images

Beep boop.
Your image file size has been reduced by 11% 🎉

Details

File
Before
After
Percent reduction

/static/external.png
1.22kb
0.44kb
64.18%

/content/images/blog/versioning-2.png
23.09kb
10.54kb
54.35%

/content/images/blog/versioning-5.png
31.52kb
14.50kb
54.01%

/content/images/blog/versioning-1.png
22.25kb
10.24kb
53.99%

/content/images/tutorial/tictac-numbers.png
16.40kb
8.02kb
51.09%

/content/images/tutorial/tictac-empty.png
10.89kb
5.65kb
48.16%

/content/images/blog/react-v16.13.0/hydration-warning-after.png
61.87kb
39.07kb
36.84%

/content/images/blog/devtools-v4-screenshot.png
123.82kb
79.86kb
35.50%

/content/images/blog/react-v16.9.0/cwm-warning.png
106.43kb
70.95kb
33.33%

/content/images/blog/strict-mode-unsafe-lifecycles-warning.png
52.10kb
35.99kb
30.93%

/content/images/blog/introducing-the-react-profiler/no-render-times-for-selected-component.png
51.05kb
37.17kb
27.19%

/content/images/blog/introducing-the-react-profiler/no-interactions.png
38.75kb
28.25kb
27.09%

/content/images/blog/react-v16.13.0/hydration-warning-before.png
24.75kb
18.44kb
25.51%

/content/images/blog/introducing-the-react-profiler/ranked-chart.png
49.75kb
37.17kb
25.28%

/content/images/blog/versioning-3.png
44.15kb
33.25kb
24.69%

/content/images/blog/versioning-6.png
44.84kb
34.04kb
24.09%

/content/images/blog/introducing-the-react-profiler/component-chart.png
70.93kb
53.85kb
24.08%

/content/images/blog/release-script-build-overview.png
37.80kb
28.95kb
23.42%

/content/images/docs/cm-steps-simple.png
277.87kb
214.90kb
22.66%

/content/images/blog/versioning-4.png
47.91kb
37.25kb
22.23%

/content/images/blog/introducing-the-react-profiler/no-timing-data-for-commit.png
53.69kb
41.82kb
22.10%

/content/images/blog/introducing-the-react-profiler/devtools-profiler-tab.png
91.29kb
79.45kb
12.97%

/static/search.svg
0.43kb
0.38kb
11.44%

/src/icons/logo-white.svg
0.35kb
0.32kb
9.17%

/content/images/logo.svg
1.79kb
1.63kb
9.15%

/src/icons/logo.svg
0.36kb
0.33kb
9.02%

/content/images/blog/introducing-the-react-profiler/commit-selector.png
7.99kb
7.30kb
8.69%

/content/images/team/rnabors.jpg
301.87kb
280.78kb
6.98%

/content/images/team/gaearon.jpg
427.86kb
398.37kb
6.89%

/content/images/team/acdlite.jpg
458.92kb
428.67kb
6.59%

/content/images/team/necolas.jpg
377.62kb
355.41kb
5.88%

/content/images/team/threepointone.jpg
503.34kb
473.79kb
5.87%

/content/images/team/sebmarkbage.jpg
225.79kb
213.87kb
5.28%

/content/images/docs/thinking-in-react-tagtree.png
14.22kb
13.48kb
5.23%

/content/images/team/bvaughn.jpg
388.06kb
368.40kb
5.07%

/content/images/blog/introducing-the-react-profiler/flame-chart.png
46.62kb
44.56kb
4.41%

/content/images/blog/introducing-the-react-profiler/interactions.png
40.57kb
39.02kb
3.83%

/content/images/team/trueadm.jpg
64.10kb
62.07kb
3.16%

/content/images/blog/introducing-the-react-profiler/no-profiler-data-multi-root.png
40.25kb
39.16kb
2.70%

/content/images/blog/release-script-build-confirmation.png
98.14kb
95.63kb
2.56%

/content/images/blog/release-script-publish-confirmation.png
74.95kb
73.10kb
2.47%

/content/images/team/yuzhi.jpg
425.31kb
416.91kb
1.97%

/content/images/blog/introducing-the-react-profiler/start-profiling.png
34.82kb
34.24kb
1.67%

/content/images/team/lunaruan.jpg
406.20kb
400.13kb
1.49%

/content/images/blog/introducing-the-react-profiler/stop-profiling.png
30.36kb
30.16kb
0.65%

Total :
5,252.26kb
4,697.48kb
10.56%

📝docs | :octocat: repo | 🙋issues | 🏅swag | 🏪marketplace

If you want, you can install https://imgbot.net in this repo (or in the full organization).
It will automatically send PRs for image optimization 🙂

I'd think this would be a good idea if it was integrated into our build process instead (and not rely on a third party service).

Closing this PR, but happy to discuss enhancing our gatsby config instead.


[Feature Request] Allow variables to select channel in actions and feedbacks

Most actions and feedbacks require the selection of a channel (or bus, ...), e.g., the "Mute Channel" action via selecting the "type" of channel/bus/..., e.g., "Channel 1-16", or "Bus master 1-6", and providing a number, e.g., "12".
Now, it would be neat if at least that number could be provided via a variable.
My use-case is a more complex page setup on the StreamDeck+; basically I want the top two rows of buttons to always show the (to me) 8 relevant inputs, and the touchscreen + encoders to control volume/mute/solo/... for 4 of them. Now, the idea is to use the top 8 buttons to "select" which 4 channels I want to control with the touchscreen and encoders.
To illustrate, consider the following "one-column" example:
+------+  \
| Ch01 |   \
| 55 % |   |
+------+   | top 2 rows
+------+   | (buttons)
| Ch02 |   |
| 24 % |   /
+------+  /
+------+
|  Ch1 |     touch-
|  ON  |     screen
+------+
   /\        rotary
   \/        encoder

Now, when I press on the "Ch02" button, I want to change the touchscreen an rotary encoder to control (and show info about) channel 2.
With one column, this is of course easy to achieve using pages, but with 4 columns, the necessary page setup gets rather messy...
If I could instead just set a custom variable column_1_channel_nr to 2 when pressing the "Ch02" button and use this variable for all actions and feedbacks on the touchscreen and rotary encoder, it'd be much simpler.

The way the channels are grouped (channel, bus send, bus return, main) prevents an easy change to 'use variables here' .
I have thought about using the index from the meter array that maps a meter 'Number' to channel/bus/etc.
This won't happen real soon as I just got swamped with new projects.


Error when using settings class that has cli_parse_args=True in VSCode Notebook

Problem
Some applications add cli args by default. E.g. VSCode:

I want to ignore this using:
model_config = SettingsConfigDict(cli_parse_args=True, cli_ignore_unknown_args=True)

but if I have a settings class with an attribute that starts with f it will still try to using this argument:
from pydantic_settings import BaseSettings, SettingsConfigDict

class MySettings(BaseSettings):
    model_config = SettingsConfigDict(cli_parse_args=True, cli_ignore_unknown_args=True)

    freeze: bool = False

MySettings()

Gives the following error:
ValidationError: 1 validation error for MySettings
freeze
  Input should be a valid boolean, unable to interpret input [type=bool_parsing, input_value='/home/simon/.local/share...234382f2c59f2a7cbf.json', input_type=str]
    For further information visit https://errors.pydantic.dev/2.9/v/bool_parsing

Root cause
This is because ArgumentParsers allows abbreviations by default:
https://docs.python.org/3/library/argparse.html#allow-abbrev
Proposed solution
Could you add an option to SettingsConfigDict to set allow_abrev=False in the _CliInternalArgParser?
Maybe this should even be the default, it can be quite confusing if the Settings class by default accepts any abbreviation of an argument as that argument.
Workarounds
In case anyone is running into the same, the simplest workaround is just not using attributes that start with f. Another solution is to check whether the program is running in ipython and if so set cli_parse_args to false.
Other error variant
Another fun example:
from pydantic_settings import BaseSettings, SettingsConfigDict

class MySettings(BaseSettings):
    model_config = SettingsConfigDict(cli_parse_args=True, cli_ignore_unknown_args=True)

    freeze: bool = False
    freeze_also: bool = False

MySettings()

Output:
An exception has occurred, use %tb to see the full traceback.

SystemExit: 2

[/home/simon/miniforge3/envs/asr_test/lib/python3.12/site-packages/IPython/core/interactiveshell.py:3585](https://vscode-remote+ssh-002dremote-002bwsl.vscode-resource.vscode-cdn.net/home/simon/miniforge3/envs/asr_test/lib/python3.12/site-packages/IPython/core/interactiveshell.py:3585): UserWarning: To exit: use 'exit', 'quit', or Ctrl-D.
  warn("To exit: use 'exit', 'quit', or Ctrl-D.", stacklevel=1)
usage: ipykernel_launcher.py [-h] [--freeze bool] [--freeze_also bool]
ipykernel_launcher.py: error: ambiguous option: --f=/home/simon/.local/share/jupyter/runtime/kernel-v3f2135e10095ca1cb1e8523234382f2c59f2a7cbf.json could match --freeze, --freeze_also

@kschwab Could you please take a look?

@Riezebos thanks for the find! I wasn't aware of the allow_abbrev=True default behavior on argparse. I agree it is confusing if not intentionally set. I'm going to set it to False without adding a config flag, mostly because I don't believe the behavior is consistent with the rest of the pydantic settings sources.
However, I'm not sure it will solve the issue above. e.g., error: ambiguous option: --f=/home/simon/.... does not look like it should be a CLI abbreviation for the MySettings models. Could you verify locally? I've opened #477 with abbreviations disabled.

Thanks @kschwab for the quick fix.
@Riezebos Could you please confirm the fix?

Yes, works!


Webpack 4 not including asset

Does this work with Webpack4? I can find the asset just fine (using the copy plugin as directed) but html-webpack-include-assets-plugin never adds anything to the html.
webpack: 4.14.0
html-webpack-include-assets-plugin: 1.0.4

To add some info, in my project we have the latest packages for all the Webpack + Babel dependencies as of today. the output is <script src="undefined"></script> where it used to inject a JS file correctly on Webpack 3.
I could PR a fix if anyone points me in the right direction?

Sorry for the delay on this. I'm currently using this plugin with webpack 4, but had been using it just fine with webpack 3 before that.
I suspect that any issues where the plugin is not working as expected with either of these versions is due to a specific configuration that's being used.
I can try to help dig into it a little if you can provide a reproducible example...

In my case:
new HtmlWebpackIncludeAssetsPlugin({
    append: true,
    assets: ['js/plugins/moment/moment-with-locales.min.js']
});

Turns into <script src="undefined"></script>
@jharris4 Ideas?

@caravinci without a runnable example, it's hard for me to see anything wrong.
You can look at the unit tests here, they have a bunch of tests/examples that are all currently working with webpack 3 (and I've run them locally with webpack 4 too).
Maybe try and copy and paste examples from the unit tests and make sure they work with your setup, and then try to pinpoint the issue?
Also, what version of the various plugins are you using?

Fair enough. I'm just not sure what to show you (perhaps the whole webpack.config file?) as I'm not able to give you a runnable version of the app I'm working on (private repos and all that).
I'll try the Jasmine approach you suggest and see what I can get. It just seems odd that the bare basic example works well on Webpack 3, yet breaks on 4. Could be some plugin hook issue, would be my best guess, but I'm simply not able to troubleshoot that far.

Ya, I have the same problem, most of the stuff I use these plugins for is proprietary which makes it hard to post examples.
I do have another plugin which uses this plugin, and has tests that pass when using webpack 4, so I can definitely confirm that this plugin works with both webpack 3 & 4, but maybe you need to track down what's different in your webpack config versus the various examples in the tests.
If you're interested, the plugin is: https://github.com/jharris4/html-webpack-deploy-assets-plugin
And the tests are: https://github.com/jharris4/html-webpack-deploy-assets-plugin/blob/master/test/index_spec.js

oooh I like that one, I could potentially use it instead, and could fix my issue (albeit not the issue on this plugin, if there really is one at all).
Let me check and get back to you. Thanks! :+1:

It seems breaks only when using<EMAIL_ADDRESS>b252108bdba77c2354d53ee4ab72d157dfee4fc3 maybe fix it

That commit (which seems to be missing from the master timeline) gives me an idea on how to deal with that. May be able to open a PR later. Setting a reminder for this.
Thanks @jharris4 @c0ldcat for your attention.

Ah yes, there are breaking changes in the API for the alpha version of html-webpack-plugin and they actually did give warning:
https://github.com/jantimon/html-webpack-plugin/issues/971
I haven't had the time to look into it yet, but you're more than welcome to make a PR! :-)
PS. @caravinci Are you from Toronto? I'm actually driving there today! :-)

haha hit me up. I'm free this weekend and we can hang out.

@jharris4 and @caravinci Ooops. Any tentative fix plan? or Should I downgrade to webpack 3?

@ganesharulanantham the plugin works with webpack 4. It’s the beta version of html-webpack-plugin that it doesn’t work with yet

Hmm, I can't seem to make the plugin include any assets using
  "html-webpack-include-assets-plugin": "^1.0.4",
  "html-webpack-plugin": "^3.2.0",
  "webpack": "^4.16.5",

and:
plugins: [
  new HtmlWebpackPlugin({
    chunks: ['mychunk'],
    template: path.join(process.cwd(), 'mytemplate.html'),
    filename: 'myfile.html'
  }),
  new HtmlWebpackIncludeAssetsPlugin({
    files: ['myfile.html'],
    assets: {
      path: '<some/path/to/cdn>',
      type: 'css'
     },
    append: true
  })
]

Debugging the code I noticed that:
compilation.hooks.htmlWebpackPluginBeforeHtmlGeneration.tapAsync('htmlWebpackIncludeAssetsPlugin', onBeforeHtmlGeneration);
compilation.hooks.htmlWebpackPluginAlterAssetTags.tapAsync('htmlWebpackIncludeAssetsPlugin', onAlterAssetTag);

this doesn't seem to have any effect? (the two methods are not called throughout the process)

No problem, @jharris4! I've sorted it out from my webpack config, for now.

Version 1.0.5 has just been released with support for the new API introduced in html-webpack-plugin 4.X+, and all unit tests are now run on webpack 4.x instead of webpack 3.x.

Perfect, thank you!


install issue

when running php artisan app:install i get
  SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Tables_in_LMS' in 'where clause' (SQL: SHOW TABLES WHERE Tables_in_LMS-laravel NOT REGEXP "[[.low-line.]]")

Which operating system to use?

archlinux(mariadb 10.1.13-1, nginx 1.8.1-3, php 7.0.5-1)
thanks

hi, me with the same problem itself: archlinux + mariadb + apache2 + php 5.5.9

I had the same issue - it was because of the dash in DB name that I used - "lms-laravel".
The fix is to put back-ticks in SQL query around '.$name.' in Modules/User/Database/Seeders/UserTableSeeder.php, line 134:
$data = DB::select('SHOW TABLES WHERE `'.$name.'` NOT REGEXP "[[.low-line.]]"');
After this php artisan app:install works fine.

Hi, install success in Ubuntu, not have archlinux

@websquared thanks for the info. will check it out when i get a chance.
@angelkurten thanks for the info. Is this package compat with laravel 5.2x? the readme doesn't mention any compatability info except "laravel 5". Please consider adding your tested config(incl versions).
IMHO, projects should consider development and testing with a distro that is closer to upstream in it's release cycle. For example, arch, gentoo, lfs, or similar.  Choosing a distro with a much slower release cycle as reference distro means people using current, stable gnu+linux are expected to either change distros or "go back in time" by many releases/years(?) to reach parity with distros with slower release cycles. Neither of which is reasonable. Nothing against those distros, but catering to their chosen cycle instead of upstream is backwards.
thanks

@angelkurten
the thing MariaDB versions. archlinux here is not to blame

The project will restart soon we hope to have your support you can participate with your ideas in trello and slack
Trello -> https://trello.com/b/dv9fqFK2/lms-laravel
Slack -> https://join.slack.com/t/lmslaravel/shared_invite/enQtMzkzNTUxNzAzMTEwLTVkNDBmZmU1YjEzMWIxNTk5Y2FiOGYyODYxNmFhYjgwYzQ5MjRhOWViOTRkZWM3ZjczOTcxMzVlOTU5YzdiNGI


Rename expected port envvar name

PORT is a poor choice and is already taken in Knative runtime for other purposes.

See the spec change proposal: https://github.com/projectriff/invoker-specification/pull/3


Implementing parallelization?

Currently I am doing Chromeless via AWS Lambda, it's very slow and if possible I'd like to do the processing my self.
Is there anyway to implement parallelization? If I try to spawn multiple browsers some may go through over time, but pretty much it times out. The reason for doing this is because the application I want relies on user input and I don't want to have a queue per-say.
Any ideas or is this something that's not possible?

What kind of parallelization are you interested in?

You can create multiple pages via page.newPage method
You can attach to a running browser instance with puppeteer.connect
We also plan to add browser contexts in future: #85

Thanks for the response @aslushnikov!
Both forms of parallelization, I got the page.newPage down.
I want an entirely new instance spawned, so if two users are using the tool/script at the same time they wont have to wait and/or it wont time out. So if I use puppeteer.connect it would hookup to an existing chrome if it's running?

Right, the puppeteer.connect would do that. You might also need the #85 to be implemented if you want users to be completely isolated from one another.

Wow, that's perfect. I have some work to do and I'll watch that!


Error Re-building Sample App

Briefly summarize your issue:
Hi
I am trying to rebuild Alexa on "Raspberry pi 4" using this Instructions: https://developer.amazon.com/it-IT/docs/alexa/alexa-voice-service/indicate-device-state-with-leds.html
as soon as I give the command : sudo bash setup.sh config.json
gives me this error :
[ 88%] Built target acsdkDoNotDisturb
[ 88%] Built target acsdkCore
[ 90%] Built target acsdkAlerts
[ 90%] Built target acsdkDefaultSampleApplicationOptions
[ 90%] Built target acsdkLibcurlAlexaCommunications
[ 93%] Built target DefaultClient
[ 97%] Built target LibSampleApp
[100%] Built target LibPreviewAlexaClient
[100%] Linking CXX executable PreviewAlexaClient
/usr/bin/ld: ../../../SampleApp/src/libLibSampleApp.so: undefined reference to `digitalWrite'
collect2: error: ld returned 1 exit status
make[3]: *** [applications/acsdkPreviewAlexaClient/src/CMakeFiles/PreviewAlexaClient.dir/build.make:149: applications/acsdkPreviewAlexaClient/src/PreviewAlexaClient] Error 1
make[2]: *** [CMakeFiles/Makefile2:4473: applications/acsdkPreviewAlexaClient/src/CMakeFiles/PreviewAlexaClient.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:4485: applications/acsdkPreviewAlexaClient/src/CMakeFiles/PreviewAlexaClient.dir/rule] Error 2
make: *** [Makefile:1163: PreviewAlexaClient] Error 2
Can you help me please.
What is the expected behavior?
at the end of programming I should talk to alexa and be able to observe the response and listening LEDs light up
What behavior are you observing?
alexa does not finish programming and therefore goes into total lockdown
Provide the steps to reproduce the issue, if applicable:
you need to follow the guide
https://developer.amazon.com/it-IT/docs/alexa/alexa-voice-service/indicate-device-state-with-leds.html
Tell us what hardware you're using:

[ ] Desktop / Laptop
[x] Raspberry Pi 4 Model B
[ ] Other - tell us more:

Tell us about your OS (Type & version):

[ ] Linux
[ ] MacOS
[ ] Raspbian Stretch
[x] Raspbian buster
[ ] Other - tell us more:

It looks like you skipped a step in changes to your cmake files.  The error you are getting is that the linker doesn't know where to find the library.
Here is the part you seem to have missed:
For the final step, you'll need to make a change to the CMake file in order for the project to use the WiringPi library when you rebuild the Sample App. Open the file “CMakeLists.txt” from the same home/pi/avs-device-sdk/SampleApp/src folder and add target_link_libraries(SampleApp "-lwiringPi") at the bottom of the file as shown.

the code: target_link_libraries(SampleApp "-lwiringPi")
has been correctly inserted as described in the guide.
I also tried to do it all over again, paying much more attention.
the result is the same

@lilyt86,
Have you tried removing the "-l" from the line?  For example:
target_link_libraries(SampleApp "wiringPi")

Do you know the path to wiringPi?  If so, you might also try specifying the path.  i.e.:
target_link_libraries(SampleApp "<absolute_path>/wiringPi")

Best regards,
-SWH

i have exactely the same problem i try to change target_link_libraries(SampleApp "wiringPi")  but he did'nt work
Can you help please
Thank you

Hi @lilyt86 and @aamirasmal, could you try this instead:
target_link_libraries(LibSampleApp "-lwiringPi")

@kclchan
target_link_libraries(LibSampleApp "-lwiringPi")
I have try this code because this line is the official code so he didd'nt work
Thanks you
Have a nice day

@scotthea-amazon
with this line: target_link_libraries(SampleApp "wiringPi")
i have this response:
[100%] Linking CXX executable PreviewAlexaClient
/usr/bin/ld: ../../../SampleApp/src/libLibSampleApp.so: undefined reference to `digitalWrite'
collect2: error: ld returned 1 exit status
make[3]: *** [applications/acsdkPreviewAlexaClient/src/CMakeFiles/PreviewAlexaClient.dir/build.make:149: applications/acsdkPreviewAlexaClient/src/PreviewAlexaClient] Error 1
make[2]: *** [CMakeFiles/Makefile2:4473: applications/acsdkPreviewAlexaClient/src/CMakeFiles/PreviewAlexaClient.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:4485: applications/acsdkPreviewAlexaClient/src/CMakeFiles/PreviewAlexaClient.dir/rule] Error 2
make: *** [Makefile:1163: PreviewAlexaClient] Error 2
and I'm sorry but I don't know how to set this line: target_link_libraries(SampleApp "<absolute_path>/wiringPi")
I only know the GPIO from which the signal comes out but I don't know how to set it within the code

@lilyt86  il have thé samedi answer

HI @aamirasmal and @lilyt86, please note that the suggestion I provided earlier is different from the guide.  In the guide, it's
target_link_libraries(SampleApp "-lwiringPi")

But I would like you to try the below instead:
target_link_libraries(LibSampleApp "-lwiringPi")

Please note the difference between SampleApp and LibSampleApp.  Thanks!

with this line: target_link_libraries(LibSampleApp "-lwiringPi")
the error is different:
Adding CapabilityAgent AIP
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent Alexa
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent ApiGateway
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent InteractionModel
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent PlaybackController
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent SoftwareComponentReporter
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent SpeakerManager
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent SpeechSynthesizer
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent System
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Adding CapabilityAgent TemplateRuntime
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
-- Please fill /home/pi/build/Integration/AlexaClientSDKConfig.json before you execute integration tests.
Skipping build of NetworkIntegrationTests.cpp.
CMake Error at SampleApp/src/CMakeLists.txt:150:
Parse error.  Expected a command name, got unquoted argument with text
"target_link_libraries".
-- Configuring incomplete, errors occurred!
See also "/home/pi/build/CMakeFiles/CMakeOutput.log".
See also "/home/pi/build/CMakeFiles/CMakeError.log".
make: *** [Makefile:194: cmake_check_build_system] Error 1
pi@raspberrypi:~/build/SampleApp $

Hi @lilyt86, I am surprised you are getting a Parse error with by adding target_link_libraries(LibSampleApp "-lwiringPi") to your CMake.  Please note that target_link_libraries is a cmake command (https://cmake.org/cmake/help/latest/command/target_link_libraries.html) that is trying add the wiringPi dependency to LibSampleApp.  Could you share in more details your modification in CmakeLists.txt?
For everyone else, could you try to add in here
 target_link_libraries(LibSampleApp "-lwiringPi")

@kclchan   @lilyt86
THANK YOU !!!!!!!!!!!!!!
you have reason my sdk was complete thank you very much

thank you so much @kclchan
I have now completed my SDK.
but I have other problems @aamirasmal can I contact you in pvt for a comparison of our SDKs?

@lilyt86
Yes

@lilyt86
I am new on GitHub you Can contact me on Instagram
My account is
aamirasmal15
Because il didn't find the. Private communication


omit SamplePeople_dimSrc_clearTables_usp if source is not a table

or skip it? Or something? Maybe have conditional logic within it to check? That might be best


FTBFS on RHEL-7

Hi, when using LLVM 5.0.0 on RHEL-7 (packages from https://copr.fedorainfracloud.org/coprs/alonid/llvm-5.0.0/ ) I get this:
matej@mitmanek: cquery (master)$ ./waf configure --use-clang-cxx --clang-prefix=/opt/llvm-5.0.0/ build --variant=debug
Setting top to                           : /home/matej/archiv/knihovna/repos/cquery
Setting out to                           : /home/matej/archiv/knihovna/repos/cquery/build
Checking for 'clang++' (C++ compiler)    : /opt/llvm-5.0.0/bin/clang++
Checking for header stdio.h              : yes
Checking for clang prefix                : /opt/llvm-5.0.0
Checking for library clang               : yes
Clang includes                           : ['/opt/llvm-5.0.0/include']
Clang library dir                        : ['/opt/llvm-5.0.0/lib64']
'configure' finished successfully (0.566s)
Waf: Entering directory `/home/matej/archiv/knihovna/repos/cquery/build/debug'
[ 2/87] Compiling src/messages/cquery_freshen_index.cc
[ 3/87] Compiling src/iindexer.cc
[ 4/87] Compiling src/clang_translation_unit.cc
[ 5/87] Compiling src/clang_cursor.cc
In file included from ../../src/clang_cursor.cc:3:
In file included from ../../src/clang_utils.h:3:
In file included from ../../src/lsp_diagnostic.h:3:
../../src/lsp.h:50:27: error: no member named 'make_unique' in namespace 'std'
          *message = std::make_unique<T>();
                     ~~~~~^
../../src/lsp.h:50:39: error: 'T' does not refer to a value
          *message = std::make_unique<T>();
                                      ^
../../src/lsp.h:44:20: note: declared here
template <typename T>
                   ^
../../src/lsp.h:50:42: error: expected expression
          *message = std::make_unique<T>();
                                         ^
3 errors generated.

In file included from ../../src/clang_translation_unit.cc:3:
In file included from ../../src/clang_utils.h:3:
In file included from ../../src/lsp_diagnostic.h:3:
../../src/lsp.h:50:27: error: no member named 'make_unique' in namespace 'std'
          *message = std::make_unique<T>();
                     ~~~~~^
../../src/lsp.h:50:39: error: 'T' does not refer to a value
          *message = std::make_unique<T>();
                                      ^
../../src/lsp.h:44:20: note: declared here
template <typename T>
                   ^
../../src/lsp.h:50:42: error: expected expression
          *message = std::make_unique<T>();
                                         ^
../../src/clang_translation_unit.cc:97:14: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
      return std::make_unique<ClangTranslationUnit>(cx_tu);
             ^~~~~~~~~~~~~~~~
             llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
../../src/clang_translation_unit.cc:97:14: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
      return std::make_unique<ClangTranslationUnit>(cx_tu);
             ^~~~~~~~~~~~~~~~
             llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
5 errors generated.

In file included from ../../src/iindexer.cc:3:
In file included from ../../src/indexer.h:6:
In file included from ../../src/clang_utils.h:3:
In file included from ../../src/lsp_diagnostic.h:3:
../../src/lsp.h:50:27: error: no member named 'make_unique' in namespace 'std'
          *message = std::make_unique<T>();
                     ~~~~~^
../../src/lsp.h:50:39: error: 'T' does not refer to a value
          *message = std::make_unique<T>();
                                      ^
../../src/lsp.h:44:20: note: declared here
template <typename T>
                   ^
../../src/lsp.h:50:42: error: expected expression
          *message = std::make_unique<T>();
                                         ^
../../src/iindexer.cc:33:19: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
    auto result = std::make_unique<TestIndexer>();
                  ^~~~~~~~~~~~~~~~
                  llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
../../src/iindexer.cc:33:19: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
    auto result = std::make_unique<TestIndexer>();
                  ^~~~~~~~~~~~~~~~
                  llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
../../src/iindexer.cc:39:27: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
        indexes.push_back(std::make_unique<IndexFile>(entry.path, "<empty>"));
                          ^~~~~~~~~~~~~~~~
                          llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
../../src/iindexer.cc:39:27: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
        indexes.push_back(std::make_unique<IndexFile>(entry.path, "<empty>"));
                          ^~~~~~~~~~~~~~~~
                          llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
../../src/iindexer.cc:41:27: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
        indexes.push_back(std::make_unique<IndexFile>(
                          ^~~~~~~~~~~~~~~~
                          llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
../../src/iindexer.cc:41:27: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
        indexes.push_back(std::make_unique<IndexFile>(
                          ^~~~~~~~~~~~~~~~
                          llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
../../src/iindexer.cc:85:10: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
  return std::make_unique<ClangIndexer>();
         ^~~~~~~~~~~~~~~~
         llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
../../src/iindexer.cc:85:10: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
  return std::make_unique<ClangIndexer>();
         ^~~~~~~~~~~~~~~~
         llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
11 errors generated.

In file included from ../../src/messages/cquery_freshen_index.cc:3:
In file included from ../../src/message_handler.h:4:
../../src/lsp.h:50:27: error: no member named 'make_unique' in namespace 'std'
          *message = std::make_unique<T>();
                     ~~~~~^
../../src/lsp.h:50:39: error: 'T' does not refer to a value
          *message = std::make_unique<T>();
                                      ^
../../src/lsp.h:44:20: note: declared here
template <typename T>
                   ^
../../src/lsp.h:50:42: error: expected expression
          *message = std::make_unique<T>();
                                         ^
In file included from ../../src/messages/cquery_freshen_index.cc:6:
In file included from ../../src/queue_manager.h:6:
../../src/threaded_queue.h:44:18: error: no template named 'index_sequence' in namespace 'std'; did you mean 'llvm::index_sequence'?
  void lock_impl(std::index_sequence<Is...>) {
                 ^~~~~~~~~~~~~~~~~~~
                 llvm::index_sequence
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:685:8: note: 'llvm::index_sequence' declared here
struct index_sequence : integer_sequence<std::size_t, I...> {};
       ^
In file included from ../../src/messages/cquery_freshen_index.cc:6:
In file included from ../../src/queue_manager.h:6:
../../src/threaded_queue.h:49:20: error: no template named 'index_sequence' in namespace 'std'; did you mean 'llvm::index_sequence'?
  void unlock_impl(std::index_sequence<Is...>) {
                   ^~~~~~~~~~~~~~~~~~~
                   llvm::index_sequence
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:685:8: note: 'llvm::index_sequence' declared here
struct index_sequence : integer_sequence<std::size_t, I...> {};
       ^
In file included from ../../src/messages/cquery_freshen_index.cc:6:
In file included from ../../src/queue_manager.h:6:
../../src/threaded_queue.h:36:24: error: no template named 'index_sequence_for' in namespace 'std'; did you mean 'llvm::index_sequence_for'?
    lock_impl(typename std::index_sequence_for<Queue...>{});
                       ^~~~~~~~~~~~~~~~~~~~~~~
                       llvm::index_sequence_for
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:694:8: note: 'llvm::index_sequence_for' declared here
struct index_sequence_for : build_index_impl<sizeof...(Ts)> {};
       ^
In file included from ../../src/messages/cquery_freshen_index.cc:6:
In file included from ../../src/queue_manager.h:6:
../../src/threaded_queue.h:39:26: error: no template named 'index_sequence_for' in namespace 'std'; did you mean 'llvm::index_sequence_for'?
    unlock_impl(typename std::index_sequence_for<Queue...>{});
                         ^~~~~~~~~~~~~~~~~~~~~~~
                         llvm::index_sequence_for
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:694:8: note: 'llvm::index_sequence_for' declared here
struct index_sequence_for : build_index_impl<sizeof...(Ts)> {};
       ^
In file included from ../../src/messages/cquery_freshen_index.cc:6:
In file included from ../../src/queue_manager.h:6:
../../src/threaded_queue.h:81:21: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
    owned_waiter_ = std::make_unique<MultiQueueWaiter>();
                    ^~~~~~~~~~~~~~~~
                    llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
In file included from ../../src/messages/cquery_freshen_index.cc:6:
In file included from ../../src/queue_manager.h:6:
../../src/threaded_queue.h:81:21: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
    owned_waiter_ = std::make_unique<MultiQueueWaiter>();
                    ^~~~~~~~~~~~~~~~
                    llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
In file included from ../../src/messages/cquery_freshen_index.cc:6:
In file included from ../../src/queue_manager.h:6:
../../src/threaded_queue.h:83:22: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
    owned_waiter1_ = std::make_unique<MultiQueueWaiter>();
                     ^~~~~~~~~~~~~~~~
                     llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
In file included from ../../src/messages/cquery_freshen_index.cc:6:
In file included from ../../src/queue_manager.h:6:
../../src/threaded_queue.h:83:22: error: no template named 'make_unique' in namespace 'std'; did you mean 'llvm::make_unique'?
    owned_waiter1_ = std::make_unique<MultiQueueWaiter>();
                     ^~~~~~~~~~~~~~~~
                     llvm::make_unique
/opt/llvm-5.0.0/include/llvm/ADT/STLExtras.h:943:1: note: 'llvm::make_unique' declared here
make_unique(Args &&... args) {
^
11 errors generated.

Waf: Leaving directory `/home/matej/archiv/knihovna/repos/cquery/build/debug'
Build failed
 -> task in 'bin/cquery' failed with exit status 1 (run with -v to display more information)
 -> task in 'bin/cquery' failed with exit status 1 (run with -v to display more information)
 -> task in 'bin/cquery' failed with exit status 1 (run with -v to display more information)
 -> task in 'bin/cquery' failed with exit status 1 (run with -v to display more information)
matej@mitmanek: cquery (master)$

Is it some package I forgot to install or something else?

rm -r build and reconfigure

It defaults to --bundled-clang=6.0.0 now, but yours is still using 5.0.0
5.0.0 has many bugs (handleOccurrence segfault and preamble issue)
It defaults to -std=c++14, which was -std=c++11. make_unique requires C++14

OK, giving up on cquery and let's continue with clangd.

Alright, I don't understand people like you who are fascinated with completion so much but don't care textDocument/references at all.

@mcepl , you can install gcc7 on centos7 (https://www.softwarecollections.org/en/scls/rhscl/devtoolset-7/)
It will solve your issues.

@MaskRay: is there some way to trigger rebuilds via waf when the underlying compile command changes? I hit this when we moved from -std=c++11 to -std=c++14 and it was pretty frustrating… I I ended up going nuclear with git clean -fdx to get my build back on track.
Even just logging the version of clang and the build flags, then firing off a diff -q build/old.signature build/new.signature && echo "SOMETHING MAY HAVE BROKEN, TRY rm -rf build/ could help steer folks in the right direction.

@mcepl , you can install gcc7 on centos7 (https://www.softwarecollections.org/en/scls/rhscl/devtoolset-7/)
It will solve your issues.

As I said, I don't need programming C that much. And actually I won't need RHEL in few months. So, I don't bother.

@jaelsasser Sorry I don't know waf much. And I understand that the switch to -std=c++14 may be frustrating as I have also run into the reconfigure issue... Appreciated if someone with more waf knowledge can give some insights about the best practice.

Alright, I don't understand people like you who are fascinated with completion so much but don't care textDocument/references at all.

Actually, I am not that fascinated with completion (in most cases plain Ctrl-P completing words from the current document is pretty good approximation), I just used it for testing. Ctrl-] and jumping to definition is a way more useful for me. Perhaps not in C? Not sure.


Add date below the message

Hi I want to know the date when the text is sent, its more of a feature request.
Example)   {type: 'text', author: "them", data: { text: "You've got to have a story.", date: "Tue, 25 Jul 2017 22:53:41 GMT" }}

That's a good idea @vkhattar -- let's think about the other kinds of dates we might need so we get the names right (eg sent, received, read, etc) and add this as a feature req.
It won't make it into the next version, but it may appear later.
Important to note however, you can have your message objects have whatever fields you want. react-chat-window will just ignore extraneous ones. I want to leave this open because I think the UI should have the option of showing some date indicators, but it's not clear what ones or what that might look like.

I did add something locally, but could not make a pull request as I did not fork it. For now i am just adding the date with the text, it looks ugly but does get the job done.

@dharness -- Any update on this feature? I'm planning to use this library for one of my projects and would require this feature as part of it. If you can guide me through the implementation, I can develop it for you and create a PR too :)

I'm pretty swamped, but I'd recommend putting it here:
https://github.com/dharness/react-chat-window/blob/master/src/components/Messages/index.js

I'd like to open this to opinions and suggestions for the design. Should the date appear for every message? Above the bubble, below it, with a time, with the day of week, with relative times (5 minutes ago, yesterday), only at intervals of greater than X time, should there be a break in the convo when it's a new day... there's a lot we need to specify if we want to see this feature!


Fixed timeline height

Small changes to main.scss to allow the timeline's vertical line to not overflow under the social media icons at high resolutions.
I also slightly widened the page's max-width as a personal preference, this is not intended to be part of the pull request, so revert it before merge.

Thanks for contributing!


API endpoint for encoding and decoding tokens

Please please someone who knows go... add so the internal llamacpp encode endpoint is avilable to the ollama api, so we can use the llm tokenizer to measure how much context we are using accuratly, so we can pick and choose in our memory instead of only trimming from the beginning of our messages, please please

Merge #2410 :)

Duplicate #1345. This would be a great feature.

Will merge this with https://github.com/ollama/ollama/issues/3582


HBASE-23952: Address thread safety issue with Map used in BufferCallB…

…eforeInitHandler.
id2Call is a HashMap and has a call back method that accesses it that can be run via an executor as well as another method accessing it that can be run from a different thread.
id2Call should likely be a ConcurrentHashMap to be shared like this.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 31s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --findbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
6m 33s
master passed

+1 :green_heart:
compile
0m 32s
master passed

+1 :green_heart:
shadedjars
5m  4s
branch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 28s
hbase-client in master failed.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
6m 15s
the patch passed

+1 :green_heart:
compile
0m 30s
the patch passed

+1 :green_heart:
javac
0m 30s
the patch passed

+1 :green_heart:
shadedjars
4m 53s
patch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 27s
hbase-client in the patch failed.

_ Other Tests _

+1 :green_heart:
unit
1m  0s
hbase-client in the patch passed.

27m 24s

Subsystem
Report/Notes

Docker
Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/1261

JIRA Issue
HBASE-23952

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 827816f88e7e 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 31484f007f

Default Java
2020-01-14

javadoc
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-client.txt

javadoc
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-client.txt

Test Results
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/testReport/

Max. process+thread count
442 (vs. ulimit of 10000)

modules
C: hbase-client U: hbase-client

Console output
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/console

versions
git=2.17.1 maven=2018-06-17T18:33:14Z)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m 20s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --findbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
7m 27s
master passed

+1 :green_heart:
compile
0m 32s
master passed

+1 :green_heart:
shadedjars
6m 26s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 32s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
6m 56s
the patch passed

+1 :green_heart:
compile
0m 34s
the patch passed

+1 :green_heart:
javac
0m 34s
the patch passed

+1 :green_heart:
shadedjars
6m 15s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 28s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
1m  5s
hbase-client in the patch passed.

32m 46s

Subsystem
Report/Notes

Docker
Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/1261

JIRA Issue
HBASE-23952

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 05db727839ae 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 31484f007f

Default Java
1.8.0_232

Test Results
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/testReport/

Max. process+thread count
376 (vs. ulimit of 10000)

modules
C: hbase-client U: hbase-client

Console output
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/console

versions
git=2.17.1 maven=2018-06-17T18:33:14Z)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 31s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
mvninstall
5m 34s
master passed

+1 :green_heart:
checkstyle
0m 30s
master passed

+0 :ok:
spotbugs
1m  3s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
1m  0s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
5m  3s
the patch passed

+1 :green_heart:
checkstyle
0m 29s
hbase-client: The patch generated 0 new + 0 unchanged - 3 fixed = 0 total (was 3)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
16m  7s
Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.

+1 :green_heart:
findbugs
1m  7s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 14s
The patch does not generate ASF License warnings.

37m 21s

Subsystem
Report/Notes

Docker
Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/1261

JIRA Issue
HBASE-23952

Optional Tests
dupname asflicense spotbugs findbugs hadoopcheck hbaseanti checkstyle

uname
Linux 8fe714216573 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 31484f007f

Max. process+thread count
93 (vs. ulimit of 10000)

modules
C: hbase-client U: hbase-client

Console output
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1261/1/console

versions
git=2.17.1 maven=2018-06-17T18:33:14Z) findbugs=3.1.11

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

In netty a handler will only be called in one thread, and we only access the id2Call map in the handler specific methods, so I do not think we need to change it to ConcurrentHashMap.

I think the issue is that Netty can use different threads to access this data structure, ie:
    static void invokeUserEventTriggered(final AbstractChannelHandlerContext next, final Object event) {         ObjectUtil.checkNotNull(event, "event");         EventExecutor executor = next.executor();         if (executor.inEventLoop()) {             next.invokeUserEventTriggered(event);         } else {             executor.execute(new Runnable() {                 @Override                 public void run() {                     next.invokeUserEventTriggered(event);                 }             });         }     }
If more than one thread is going to access a shared field, you have to publish it properly - either with memory barriers or it has to be final or effectively final. It seems very difficult to ensure that this is thread safe or will remain thread safe over time.

EventExecutor is a single thread executor...
EventExecutorGroup is what you expected, a thread pool...

Progress here? Single-threaded or concurrent access? Should I resolve the issue? Thanks.

As from my knowledge it is single threaded, otherwise there will be bunch of code need to be fixed, as we use netty a lot in our code...

Any response to @Apache9 @markrmiller ?  Should I close this out sir?


Delete redundant config options

Codecov Report

Merging #75 into release-rc4 will decrease coverage by 0.34%.
The diff coverage is 100.00%.

@@                Coverage Diff                @@
##             release-rc4      #75      +/-   ##
=================================================
- Coverage          59.19%   58.85%   -0.35%
+ Complexity           349      347       -2
=================================================
  Files                 37       37
  Lines               3071     3067       -4
  Branches             231      231
=================================================
- Hits                1818     1805      -13
- Misses              1087     1093       +6
- Partials             166      169       +3

Impacted Files
Coverage Δ
Complexity Δ

...nk/wecross/stub/fabric/FabricStubConfigParser.java
76.47% <ø> (-0.81%)
10.00 <0.00> (ø)

.../webank/wecross/stub/fabric/FabricStubFactory.java
11.47% <ø> (ø)
4.00 <0.00> (ø)

...k/wecross/stub/fabric/FabricConnectionFactory.java
92.18% <100.00%> (-0.13%)
9.00 <0.00> (ø)

...m/webank/wecross/account/FabricAccountFactory.java
66.19% <0.00%> (-9.86%)
5.00% <0.00%> (-1.00%)

...ain/java/com/webank/wecross/utils/FabricUtils.java
65.21% <0.00%> (-4.35%)
10.00% <0.00%> (-1.00%)

Continue to review full report at Codecov.

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


Re-enable Sanity test for cloud search

Checklist

[x] the [contributor license agreement][] is signed
[x] commit message follows [commit guidelines][]
[ ] tests are included
[ ] screenshots are included showing significant UI changes
[ ] documentation is changed or added

Description of change
Not sure why tests related to cloud search work again so open a PR to confirm.

Hold on until more instructions are given.

Yeah, if it's working again bring it back @PenghaiZhang so that we know what's the go. And then I think we have a plan to remove the feature soon. :thinking:


Add NUMPY_LICENSE.txt to license_files in setup.cfg

This ensures it is present in source and binary distributions such as PyPI sdists and wheels.
In addition to being installed at its original location dask/array/NUMPY_LICENSE.txt, it will be automatically copied into the dist-info directory of wheels.

[x] Closes #9112
[x] Tests added / passed None required
[x] Passes pre-commit run --all-files

Can one of the admins verify this patch?

Thanks @musicinmybrain -- cc'ing @jakirkham in case he has thoughts. Should we also include this in MANIFEST.in?

It shouldn’t be necessary. When I run
python3 setup.py sdist bdist_wheel

on the contents of this PR as in docs/release-procedure.md, the resulting sdist tarball contains dask-[…]/dask/array/NUMPY_LICENSE.txt, and the resulting bdist wheel contains dask-[…]/dask/array/NUMPY_LICENSE.txt and dask-[…]/dask-[…].dist-info/NUMPY_LICENSE.txt.

This seems like a good idea
Actually would drop license files from MANIFEST.in as license_files supersedes this
We should do the same thing for the dask-core package

Actually would drop license files from MANIFEST.in as license_files supersedes this

You’re right; LICENSE.txt is in there, and removing it doesn’t change anything.

Thanks Ben! :pray:
Could you please add this to the nightly recipe as well? That field can just be turned into a YAML list with both license files listed
https://github.com/dask/dask/blob/f18f4fa8ff7950f7ec1ba72d079e88e95ac150a2/continuous_integration/recipe/meta.yaml#L45

Commit added; I think that’s what you had in mind.

Great! Thanks for reviewing.

Also, I noticed this is your first code contribution to this repository. Welcome!


include namespace in builder data

Codecov Report

Merging #758 (59481e2) into main (066beff) will decrease coverage by 0.05%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #758      +/-   ##
==========================================
- Coverage   78.80%   78.75%   -0.06%
==========================================
  Files         100      100
  Lines       11117    11118       +1
==========================================
- Hits         8761     8756       -5
- Misses       1854     1858       +4
- Partials      502      504       +2

Impacted Files
Coverage Δ

pkg/filters/builder/builder.go
92.68% <100.00%> (+0.18%)
:arrow_up:

pkg/filters/headerlookup/headerlookup.go
84.61% <0.00%> (-1.40%)
:arrow_down:

pkg/filters/validator/basicauth.go
77.41% <0.00%> (-1.39%)
:arrow_down:

pkg/filters/proxy/pool.go
76.00% <0.00%> (-0.71%)
:arrow_down:

pkg/object/mqttproxy/client.go
82.51% <0.00%> (+0.89%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Coordinated Omission in operation latency measurement

Looking at how latency is reported e.g.:
https://github.com/Netflix/ndbench/blob/master/ndbench-core/src/main/java/com/netflix/ndbench/core/operations/ReadOperation.java#L43
            Long startTime = System.nanoTime();
            String value = client.readSingle(key);
            monitor.recordReadLatency((System.nanoTime() - startTime)/1000);

The above implies the operation is synchronous and that the harness has no notion of schedule (we don't know when we intend to start measurement). This generally leads to coordinate omission. The fix is usually to add some notion of schedule mapping each operation to it's intended start time.
This is a common issue in load generators, see following blog posts(which I wrote) on the issue, it's impact and resolution in YCSB and Cassandra Stress:
http://psy-lob-saw.blogspot.com/2015/03/fixing-ycsb-coordinated-omission.html
http://psy-lob-saw.blogspot.com/2016/07/fixing-co-in-cstress.html

@nitsanw yes, we had this discussion back in July with @vinaykumarchella. We will get to it asap.

@nitsanw You are right that we ignore coordinate omission (CO) at that level.  However, most of our plugins have their own metrics as well as a scheduler that this framework has no access.  In the case of Dyno (https://github.com/Netflix/Dyno) or Java Datastax Driver, they both maintain their own metrics hence can do a better measurement there.
What we put there is to measure, at a fixed throughput, the response latencies what the users can see under pressure.  Our metric report in this framework is only just for a subset of the performance metrics, throughputs and response latencies.  At this level, our report would fall into the category "Fixed" that you mentioned in http://psy-lob-saw.blogspot.com/2016/07/fixing-co-in-cstress.html under "Who Reports What?" section.  In addition, for most of our tests, we also use many test machines and threads that CO can also become negligible to the overall response times.
As Gil Tene said, "CO is a testing methodology and reporting problem, and has nothing to do with the system under test and what it is used for, so no type of system is immune, only types of testers are. Even real systems with a single real world client are susceptible."
Already mentioned, what we are looking for is to measure what application users would see when they use a particular client or driver (Dyno, Java Datastax Driver, etc.) and we delegate CO measurements in the plugins themselves.  Furthermore, we have cases that the threads of this framework execute async call to the underline drivers resulting to non-measurable CO duration at this layer.
A part from this, we collect many other metrics along the way at different stages of the testing pipelines.  By comparing them together, we can detect the skewness caused by CO and repeat the tests with a different set-up if needed.
What do you think? Please feel free to give us a PR if you see where we can address it better.
Thanks.

If operations are sync then the above method of measurement is wrong. If they are async they are meaningless unless you got some Quasar like magic to make it look sync while being async.
IIUC your code calls into the plugins, so it cannot delegate the notion of schedule to them.
If your tests are supposed to be "at a fixed throughput, the response latencies what the users can see under pressure" then you have an implied schedule. The recorded metrics might help you reconstruct that you've missed your schedule, but it's much easier to just record the intended schedule.

In fact, looking further into the benchmark driver it seems like the measurement method is very similar to cassandra-stress before it was fixed. Using Google RateLimiter and therefore not having access to intended operation time and not measuring it.


feat: deploy on do

List issues that are affected
Closes #9
Checklist

[ ] Tests
[ ] Documentation

Request Reviewer (optional)
see Requesting a pull request review

This is not documented and only for staging. Deploy production should be another task.


Open transcription seems performing worse than rhasspy2's kaldi closed transcription

Also whisper is a lot better at detecting random text quick it seems to perform a lot worse at detecting the intent compared to the closed trained transcription that we had in rhasspy 2.
I think the closed transcription also helped a lot with fuzzy matching i.e. when people used slightly different words or when other people are talking in the background. I feel like as long as there is no smart NLU that can match the spoken text on the intent this approach might be not fit enough to be useful for interfacing with home automation. I see value in having a good open transcription and I am currently thinking how this could be combined with the preciseness of the old system.

I currently played with llama.cpp:
$ ./examples/alpaca.sh
> User prompt: Turn on the light; Available actions: TurnLightOn, TurnLightOff
TurnLightOn

I can see how this could work :)

vicuna seems to perform better:
Below is an instruction that describes a user request. Respond with one of the following categories:

- FindShannansPhone
- TurnLightOn
- TurnLightOff
- UnknownAction
User prompt: Make me a sandwhich

UnknownAction

This is expected, since Kaldi matches to a particular expected sequence and transcription does not.  However, a few things I've noticed:

Be careful with wording.  "Turn on my office light" does not work, "Turn on the office light" does.
Watch out for homophones and near homophones.  Whisper consistently misunderstands "hall light" as "whole light" with my accent, for some reason (weirdly, only when I try to turn it off, turning it on works fine...).  In the long run, adding alias names for entities in Home Assistant (for example) may work around this.
Transcription may produce variants that may not match your entity names.  Ones I have run into are "WeatherFlow" turning into "weather flow" and "multisensor" being output by Whisper as "multi-sensor", both leading to a failure.  Again, setting up appropriate entity aliases may help here.

In the long run we just need a better system for converting transcriptions to intents.  Well... LLMs were designed originally to translate languages.  So what might work here is an LLM specifically trained to convert "general" transcriptions into the much smaller set of intents understood by a system.  Note that small LLMs can run on lower-end hardware, even just using CPU (see gpt4all for a very cool demo).  Of course this would add latency.  But what's ALSO interesting is that Whisper includes a language model itself, and it might be possible to fine-tune it (e.g. with a LoRA model) to directly target Home Assistant intents, which would avoid the latency issue.


persistent sessions load test added to the workflow

[ ] Updated the Multi-AZ Create workflow to suit our current needs
[ ] Trimmed the ROSA Scaling Benchmark workflow to only perform dataset creation and benchmark and reporting
[ ] Updated the scheduled workflow to accommodate two deployments and benchmarks
[ ] Added filterable fields to Horreum report based on the deployment type (Additional work would be needed here to filter the reports in Horreum)
[ ] Local tests

Test Runs:

Deploy job : https://github.com/kami619/keycloak-benchmark/actions/runs/8940986385
Benchmark job : https://github.com/kami619/keycloak-benchmark/actions/runs/8941255089

@ahus1 sure thing, I meant rows when I said writes in my previous comment. Yup, its brining in lot more rows, would be interesting to see the load on CPU when this query runs.

@andyuk1986 thanks for the review and providing with the fixes for the dependency issues that you uncovered.