Enable pdc for Bigquery datasource

Background
This PR enables support for the secure socks proxy, which is a new feature in Grafana 10. The feature allows datasource connections to be proxied through a socks5 proxy with TLS. This enables Grafana users to connect to datasources that live in different networks than where Grafana is running when they cannot open up ports to the public internet.
Implementation notes

The feature itself no longer sits behind a feature toggle in Grafana OSS, but a feature toggle is being used in all non-core datasources until the datasource can upgrade the frontend dependency@grafana/runtime to at least 10.0.0. At that point, we can switch this line to look at config.secureSocksDSProxyEnabled, rather than the feature toggle.
As bigquery-datasource uses httpclient from grafana-plugin-sdk, there are not mayor changes needed in the backend, as the configuration is read and set in the SDK constructor functions for the httpclient.
The key used for storing the connections was changes in order to take into account not only the connection string but also if the secure proxy is enabled.  [UPDATE] This change was rolledback as it was not needed. Due to some changes on the sqlds library, the plugin process is always restarted so the cache is always clean.
Dependency updates:

grafana-plugin-sdk-go: Needs to run at least v0.159.0, where the setup functionality was added. It was updated to its latest version.

Screenshot of config page

I have also tested it with the code in main and it seems that is the same, every time that you hit save, it creates a new BQ connection even if the configuration has not changed.

I have just tested it and it seems that you are correct, every time that I hit "Save and test" it creates a new connection (checking the logs) even if the parameters are the same. Most of the plugins I worked on so far just create a new connection when the config is updated

Save and Test will always create a new plugin instance under the hood because the timestamp of the datasource within Grafana has changed - see here.
I'm just not sure if the changes other than to the HTTP client and the UI are necessary here. I'd be happy to test that, but I reckon you're in a better position to do so 😊

Thanks will, you are right.
I will undo the changes to the connection cache, leaving it as it was before (and leaving that task of checking if it is necessary for another ticket, to be created), and test it again.

@wbrowne I have reverted the changes to the cache key and tested it. It works as expected, every time you save a new config, the connection is recreated. Right now the cache is useless, but the same code as before. Is that ok?
@baldm0mma should we wait for someone else to review before merging?
I have also updated the PR description.
Thanks both of you!

Right now the cache is useless

The cache will be used when you're using the plugin as normal (e.g. querying) so it still does serve some purpose. As I mention, Save & Test for a data source connection will actually update the fields under the hood and trigger a recreation of a plugin instance. Though, if you've seen something that contradicts that, please let me know!
Glad to hear it works as expected 😄

The cache will be used when you're using the plugin as normal (e.g. querying) so it still does serve some purpose.

Yeah, you are right about that. I meant that having a cache is not worth it as it always has only one instance of the connection in it at any time. Most datasources projects I have seen store the connection as an attribute in a struct.

Thank you both!! Merging and closing!


fix: true + .stylelintignore results in ignored files content replaced with []

I'm currently trying to pass my s/css files through gulp-stylelint using the fix: true flag. I also have a .stylelintignore file which ignores vendor style directories. The following gulpfile.js script successfully lints files, but when it comes to the files in the ignored directories, the contents are stripped and replaced with []. I was expecting that these files would be ignored (unaltered).
I haven't had enough experience with gulp to tell if this is expected behaviour, or if this is an issue with the implementation of my script, or some sort of buffer/stream issue with gulp or gulp-stylelint, OR if the issue lies with stylelint itself.  This said, I noticed a comment in gulp-stylelint src/index.js line 155 which makes me think that gulp-stylelint is a good place to start:
  function onStreamEnd(done) {
    Promise
     ...
        process.nextTick(() => {
          // if the file was skipped, for example, by .stylelintignore, then res.results will be []
          const errorCount = lintResults.filter(res => res.results.length).reduce((sum, res) => {
     ...

The pattern [] referenced is exactly what I'm seeing. Any insight into how to fix this?
Many thanks in advance.

//.stylelintignore

/styles/scss/vendor/

//.stylelintrc

{
  "plugins": [
   "stylelint-scss"
  ],
  "extends": [
        "stylelint-config-recommended-scss"
  ],
  "rules": {
        "no-descending-specificity": null
  }
}

//gulpfile.js
const { src, dest, task, watch, series, parallel } = require("gulp");
const stylelint = require("gulp-stylelint");

function lint_styles(done) {
    src("./styles/**/*")
        .pipe(
            stylelint({
                reporters: [{ formatter: "string", console: true }],
                fix: true,
            })
        )
        .pipe(dest("./styles/"));
    done();
}

task("lintStyles", lint_styles);

Just to see if running stylelint as a postcss plugin would produce similar results, I found that the .stylelintignore is not honoured at all. Possibly related to this. That issue was closed, by postcss as the recommendation was to use stylelint as a stand-alone tool, or with gulp-stylelint–– namecheck!
For anyone that is curious, here is what I tried:
const { src, dest, task, watch, series, parallel } = require("gulp");
const
    stylelint = require("stylelint"),
    reporter = require("postcss-reporter"),
    postcssSass = require("postcss-sass");

var stylePrefs = {
    syntax: require("postcss-scss"),
    processor: [stylelint({ fix: true }), reporter({ clearReportedMessages: true })],
}

function lint_styles(done) {
    src("./styles/**/*")
        .pipe(plumber())
        .pipe(
            postcss(stylePrefs.processor, {
                syntax: stylePrefs.syntax,
            })
        )
        .pipe(dest("./styles/"));
    done();
}

task("lintStyles", lint_styles);

Just to be through(hopefull) I also tried the ignoreFiles: ["./styles/scss/vendor/"] flag to no avail.
One nice bonus of using gulp-stylelint is that the console error formatting is much nicer! so I hope we can find a way through this.

I solved it for now using a custom formatter. You can also filter out warnings this way:
const stylelint = require('stylelint');

gulp.src( sourcePath('styles.scss') )
  .pipe(gulpStylelint({
      reporters: [
        {
          console: true,
          // https://github.com/stylelint/stylelint/blob/master/docs/developer-guide/formatters.md
          formatter: function (results) {
            const filtered = results.filter(r => {
              // ignore bootstrap src
              if (/bootstrap/.test(r.source)) {
                return false;
              }
              r.warnings = r.warnings.filter(w => w.severity === 'error');
              return r.warnings.length > 0;
            });
            return stylelint.formatters.string(filtered);
          }
        }
      ]
    })

I tried using the custom formatter above. No luck in our environment. Simply doesn't work. Any news on gulp-stylelint getting future updates? Seems like gulp and it's ecosystem is dying... Do i need to switch to webpack?

gulp.task('fix-css', function () {

    return gulp
        .src([
            'src/scss/**/*.scss',
            //Exclude the same directory as in the `.stylelintignore` file
            '!src/scss/plugins-override/*.scss',
        ])
        .pipe(gulpStylelint({
            fix: true,
        }))
        .pipe(gulp.dest('src/scss'));

});

I tried using the custom formatter above. No luck in our environment. Simply doesn't work. Any news on gulp-stylelint getting future updates? Seems like gulp and it's ecosystem is dying... Do i need to switch to webpack?

This repository is abandoned. Use my fork, see the comment here.


epic2 ran as normal but didn't return outputs

The code I used:

epic2 -t merge3.bed -c input.bed -gn mm10 -fs 250 -g 800 -fdr 1e-15 > deleteme.txt

What I had on the terminal:

Found a median readlength of 50.0
Using genome mm10.
Using an effective genome length of ~2379 * 1e6
Parsing ChIP file(s):
sicer/merge3/merge3_no_blacklist.bed
Valid ChIP reads: 25666499 (25666499 before out of bounds removal)

But it just kept runing for several hours without returning results.

You allowed 800 gaps. Did you mean 4 (4*200=800)? :)

  --gaps-allowed GAPS_ALLOWED, -g GAPS_ALLOWED
                        This number is multiplied by the window size to
                        determine the number of gaps (ineligible windows)
                        allowed between two eligible windows. Must be an
                        integer. Default: 3.

Oh, I see what mean. Thanks for your quick response!

No problem :) That flag differs from the one in SICER :) Would love to hear if it ran as expected now.

Yes, it ran sucessfuly now. epic2 is indeed much faster than SICER. I manually inspected the peaks called by epic2 and SICER, and they are mostly identical. The only difference is that with the same setting, epic2 called slightly longer peaks compared to SICER, which is okay for me. I think I will incoporate epic2 into my data analysis pipeline.

epic2 uses slightly different defaults (hg19 vs hg18) and different EGS so slightly different results are to be expected 👍
Feel free to reopen this issue or create another one if you have further questions :)


Broken link

Link to mattereum white paper is broken.

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


Node LTS Version

The readme should include a recommendation to use the LTS version of Node - Node v12.18.3.
I found the warning messages distracting when following the tutorial with the current version of Node - v14.7.0 on the Mac.

Repeated the build process in Windows using the same version of Node.  Found an issue when executing npm run serve.

It's a know issue - https://stackoverflow.com/questions/53516594/why-do-i-keep-getting-delete-cr-prettier-prettier.

Changed .eslintrc.js file to resolve as suggested in the stackoverflow article.

Should this be in the default template?

thanks. I added the LTS to the readme


FB checking for regression with GF when no previous release

Observed behaviour
I have these errors only in ExtraLight styles for all the diff-checks, although the font is not on GF yet.
💔 ERROR The condition FontBakeryCondition:remote_styles had an error: ConnectionError: HTTPConnectionPool(host='fonts.googleapis.com', port=80): Max retries exceeded with url: /css?family=Piazzolla (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x116d75350>: Failed to establish a new connection: [Errno 65] No route to host'))
Resources and exact process needed to replicate
https://github.com/huertatipografica/piazzolla/issues/9

at a first glance this looks like bad internet connection

Ah haha ! That makes sense since I am lost in country side right now ^^
Thank you, I close this issue then.


Links in the demo don't work correctly

Links in the demo don't work correctly.
Steps to reproduce:

Go to: http://puppetjs.github.io/PuppetJs/lab/polymer/index.html
Click on "ShadowDOM: Nikola Tesla"
Observe that the data in the form does change
Click on "Albert Einstein"
Observe that the data in the form does not change, which is an error

Tested in Chrome 43, Firefox 38

Fixed. The issue was with session. The mockServer returned new session for each request, and puppetjs throws Session lost. exception if the new session is not equal to the previous one.
Replaced session with "/PuppetJs/lab/polymer/index.html" instead of this.url.

Tested in Chrome and Firefox.

Still something wrong:

Go to http://puppetjs.github.io/PuppetJs/lab/polymer/index.html
Click on ShadowDOM: Nikola Tesla link
In the form on the right, the text changes to Nikola, Tesla
Change Nikola to Nikolas
Error: The header says Nikolas but the input says Albert

It looks like this issue is not related to my changes as was there long time ago. Fixed one more time.

Thanks!

It is not clear why this works when I use http://puppetjs.github.io/PuppetJs/lab/polymer/subpage.html as the starting URL, since now the Location is hardcoded in the mock server to /PuppetJs/lab/polymer/index.html

How will this work if I clone the demo locally and run it from http://localhost/PuppetJs_env/PuppetJs/lab/polymer/index.html?

This is done inside handlePageLoad function, which checks current url and sets corresponded values to model.

All you have to do is install bower dependencies. I tested both demos (polymer & polymer_ot) locally.

I think I know what is happening there now.
Server sets the values at stub.responseHeaders = [{name: "Location", value: "/PuppetJs/lab/polymer/index.html"},{name: "X-Referer", value: "/PuppetJs/lab/polymer/index.html"}]; but actually never cares about them (in contrary to Starcounter implementation, which actually cares). The client also doesn't care, but it checks if they are the same.
The whole demo works if that line is removed. Can remove it and test it?

You are completely right. I thought those headers are presenting "server behaviour". Now they are removed and the demo works like a charm.

Great!


Feature request: Metadata with ls

Hi there.
Unless I'm missing something, there's no way to read the modification date of a file (among other things). I'm having to go back into node's fs module for that. It seems like this would be very useful. It strikes me that it could be added in an option for ls.
EG: ls('-l', 'path') might return an array of objects with file metadata such as permissions, owner, group, size, and modification date.

Sounds good to me. I think I'll open a PR for ls -l later today, and it'll be based off this design

Awesome! I'm happy to give it a code review if you'd like. I could probably also write a PR soon-ish, but my guess is you'd be way faster at adding it. Just let me know! :smiley:

@gvn I'll tag you in the PR once it's done :+1:

@gvn I tagged you in the PR


Android Basics: Read and update data with Room

InventoryViewModel.kt,
In "Step 5, Implement sell item", sub-step 'Update the entity using Room' sub-sub-step 4. states that inside the 'updateItem()' function, we are to make a call to the 'getUpdatedItemEntry()' function and assign the returned value to an immutable variable called 'updatedItem'.
"val updatedItem" is not used?
In Android Studio, this value is grey, indicating it isn't used in the app.  I've checked the solution code, and I can't find the error.

Darn.  I need more eyes.  Found it.  You fix the issue in sub-sub-step 5.  And I must have skipped the step, glossed over it, or mis-read it.  And, when checking the source code, I missed it again.  Several times.
Thanks anyway.


avoid GCC warning -Wignored-qualifiers

The warning was:
include/sajson.h:150:9: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
const size_t length() const {

Thank you!


volkan: demo: provide env vars to keycloak via VSecM

This is more like a demo with the following requirements.
What we have at upstream right now shall be sufficient to do it; I just want to ensure that it does though.

Keycloak by default has certain environment variables that can be bound to it from a pre-defined secret.
Have a helm chart deployment of keycloak with those environment variables as a starting point.
Note then name and values of those secrets down.
Modify helm chart to retrieve those values from vsecm-generated secrets.
on a clean cluster deploy vsecm first
then use vsecm to create the secrets (the secrets will be randomly generated based on given gen: patterns)
then use the modified helm chart to bind the newly-generated secrets to keycloak.
make sure that you can export the secrets (in encrypted form) and decrypt them as an operator
make user that you can log in to Keycloak with the creds in those secrets.
create a demo recording of all of these.

I already have a sample keycloak deployment on the build server… I just need to do some secrets interpolation and init-container fu.

I’ve implemented the feature as a POC.
I’ll create a demo separately.
Closing this for now.


[Service Connector] az webapp/containerapp/spring connection create/update: Support opt out action

Related command
az webapp connection create  --source-id  --target-id  --opt-out publicnetwork configinfo
az webapp connection update  --source-id  --target-id  --opt-out publicnetwork configinfo
Description
This PR enables an opt-out option during the creation and the updates of Service Connector. Users can choose to skip the configuration settings on source service and the public network configuration on target service by adding arguments after '--opt-out'.  This parameter is optional.
Testing Guide
Create a service linker for App Service and Storage Blob without configuring public network and app settings:
az webapp connection create storage-blob --connection {connection-name} --source-id {source-id} --target-id {target-id} --secret --client-type dotnet --opt-out publicnetwork configinfo
Create a service linker for App Service and Storage Blob without configuring firewall rules on storage:
az webapp connection create storage-blob --connection {connection-name} --source-id {source-id} --target-id {target-id} --secret --client-type dotnet --opt-out publicnetwork
Update a service linker with no configuration changes on source
az webapp connection update storage-blob --id {conneciton-id} --client-type dotnet --opt-out configinfo
History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] The PR title and description has followed the guideline in Submitting Pull Requests.

[x] I adhere to the Command Guidelines.

[x] I adhere to the Error Handling Guidelines.

Service Connector

/pr RequestMerge

@kairu-ms Could you please review this PR? Thanks.

Kind reminder. @kairu-ms Thanks.

As Kai Ru will take long leave, @necusjz, @AllyW, could you please help review this PR?

Related command az webapp connection create --source-id --target-id --opt-out publicnetwork configinfo az webapp connection update --source-id --target-id --opt-out publicnetwork configinfo
Description This PR enables an opt-out option during the creation and the updates of Service Connector. Users can choose to skip the configuration settings on source service and the public network configuration on target service by adding arguments after '--opt-out'. This parameter is optional.
Testing Guide Create a service linker for App Service and Storage Blob without configuring public network and app settings: az webapp connection create storage-blob --connection {connection-name} --source-id {source-id} --target-id {target-id} --secret --client-type dotnet --opt-out publicnetwork configinfo
Create a service linker for App Service and Storage Blob without configuring firewall rules on storage: az webapp connection create storage-blob --connection {connection-name} --source-id {source-id} --target-id {target-id} --secret --client-type dotnet --opt-out publicnetwork
Update a service linker with no configuration changes on source az webapp connection update storage-blob --id {conneciton-id} --client-type dotnet --opt-out configinfo
History Notes
[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change [Component Name 2] az command b: Add some customer-facing feature
This checklist is used to make sure that common guidelines for a pull request are followed.

[x]  The PR title and description has followed the guideline in Submitting Pull Requests.
[x]  I adhere to the Command Guidelines.
[x]  I adhere to the Error Handling Guidelines.

@wchigit  please update the  History Notes part in pr description, for later release doc generation, according to this guideline https://github.com/Azure/azure-cli/tree/dev/doc/authoring_command_modules#submitting-pull-requests

@yanzhudd, need your review as an owner.

@yanzhudd, need your review as an owner.

Gentle reminder. @yanzhudd

@necusjz @AllyW @yanzhudd Thanks for reviewing. Could you help merge this PR?


Immutable Account Names, Account Traceability

From this MR discussion:
https://github.com/openpredictionmarkets/socialpredict/pull/299#discussion_r1773252079
Problem:
In a scenario where any user is free to create a market under a, "free for all gaming scenario," ... a troll user could create a string of markets, resolve them incorrectly, and then delete their account, leaving bettors unaware that this original user was unreliable, just showing perhaps a, "null," username on a very attractive, high-volume market. There are different ways to solve for how the resolution will be done on the administration side.
That being said, the question may have been posed unreliably in the first place, and allowing for traceability of what a particular user handle may have done in the past could be useful information to bettors to decide whether to even engage on a particular market.
Or, the user might have simply left, even though they had good markets, and those markets should stay open with the volume that they had. Users might want context to other markets they created and resolutions in the past to display reliability and show consistency.
Solution:
Having a, "null," username might be a typical solution in social media platforms where the user wants to delete their account. Rather than deleting accounts, we could allow for, "archiving," of accounts, which could delete the personal information while keeping the handle.
Usernames should be immutable to maintain traceability of market activities. Allowing users to delete their accounts would remove critical records of the markets they created and how they resolved. Instead, we can implement an archiving system that retains the username but removes sensitive personal information like the display name. This would help prevent users from creating unreliable markets and then disappearing without accountability, ensuring the integrity of the platform.
Caveat - there may be a scenario where a user might want to delete their account, including the handle, for safety or reputation reasons. They may have used their real name in their account and made some bad decisions, or might have a stalker, or something. If we want to protect for this case, then rather than having a, "null," username we might want to fill in a fake handle, perhaps even with our stock prefix attached, "archive_x2jd2h" or something like that, so bettors can at least look at strings of previous markets and decide how to bet.
We already use github.com/brianvoe/gofakeit so we coulse use that library to generate new archived usernames presumably.

@j4qfrost and @ajlacey  ...
Also @briantedwards and @astrosnat as well as @jg-you if you have time.

Just got to this...I like the idea of giving them randomly generated fake handles.
A thing that admins operating in the EU, with European users, or users in "third countries" such as the UK should know is that, under GDPR, users have the right to request their data be deleted. Admins don't have to comply but they should be aware of the legal basis for keeping the data: https://commission.europa.eu/law/law-topic/data-protection/reform/rules-business-and-organisations/dealing-citizens/do-we-always-have-delete-personal-data-if-person-asks_en
So we should give admins tools to delete user-created markets while also giving them documentation explaining the pros and cons of deleting user data. That way admins with EU-based users can stay GDPR compliant. If you have any questions about GDPR regulation, compliance and enforcement just ping me

I think as an open source product, we aren't forced to comply with GDPR because we aren't collecting the data, but as Osnat mentioned, it would behoove us to make data deletion and retrieval easy for an admin. It incentivizes adoption in the EU.

Well in certain contexts it might also be important that the data be automatically preserved and undeletable. For instance, in the US any internal communications at an SEC regulated firms must be preserved for some number of years. So perhaps initial instance creation could start with a regulatory context toggle or something?

@briantedwards I really like this idea of toggling settings on/off

@pwdel I'm with you on developing some kind of logic.
GDPR says you can make data archive-able (or even fully deletable to comply with SEC laws) under a specific lawful basis. The lawful basis has to be something like:

the user gives informed consent (this is the weakest lawful basis given that consent can be retracted at any time)
the user has signed a contract with you to do this
you're legally obligated to collect and keep the data (e.g. SEC compliance is a legal obligation and a lawful basis)
you need this information to save someone's life
you need to keep the data in the public interest
you need to keep the data as a legitimate interest for yourself, the user, or a third party (e.g. "we need this for the software to work" counts as legitimate interest)

Here's a bit more info on the lawful basis: https://ico.org.uk/for-organisations/uk-gdpr-guidance-and-resources/lawful-basis/a-guide-to-lawful-basis/
Anyway, yeah, "legitimate interest" (i.e. "we need this to make the software work") and "legal obligation" both mean it's fine to keep important stuff archive-able. But things like market titles are a bit of a greyer area in terms of arguing whether it's in the public interest to keep market titles rather than scrubbing them. I think in practice an admin could reasonably argue that keeping the market titles available is "legitimate interest" because deleting community information degrades the usefulness of the prediction market as a tool. "Reasonably" is doing a lot of heavy lifting here, though.
I do agree that there should probably also be a consent basis, but having to click extra buttons annoys users.


Add language clarifying GPU address in Spark on YARN with  isolation

Explain why the user observes GPU index 0 for all executors
Signed-off-by: Gera Shegalov<EMAIL_ADDRESS>

While I guess this is ok to document, this is no different then yarn with multiple normal gpus in yarn isolated env. Gpu always shows as 0. I think the description should as such just to point out how the nvidia device plugin maps it and it should not be mig specific

While I guess this is ok to document, this is no different then yarn with multiple normal gpus in yarn isolated env. Gpu always shows as 0. I think the description should as such just to point out how the nvidia device plugin maps it and it should not be mig specific

I realized it when I was writing it and kept the language generic not specific to MIG. However, I can be more explicit about it.


Image version

Depending on registry, the Image version is not good.

@dzove855 @fanshan this issue has been solved with agent latest version ?

This should have been fixed with this pr: https://github.com/SaaShup/netbox-docker-agent/pull/43

This should have been fixed with this pr: SaaShup/netbox-docker-agent#43

Yes


Unable to profile some programs on linux (XXX is not a valid application)

I'd like to profile some python application with rcprof on linux. The python application uses pyopencl.
I don't know exactly how rcprof checks if it can execute the input program, but apparently what it does it too restrictive:
/opt/AMDAPP/CodeXL/rcprof -o "/tmp/test.csv" -p -w "/tmp/" /usr/bin/python2.7 test.py
/usr/bin/python2.7 is not a valid application
Similarly if I make test.py executable with chmod +x and add the correct prefix in the file,
/opt/AMDAPP/CodeXL/rcprof -o "/tmp/test.csv" -p -w "/tmp/" test.py
fails similarly.
On linux, it should be sufficient to just check for the execution bit.
Some other programs are successfully profiled with rcprof, thus it's not a faulty installation.

Currently, the profiler only supports valid ELF executables.  I've logged a feature request so we can investigate adding support for scripts as well.
Also, I tried profiling /usr/bin/python2.7 and on my system (an Ubuntu 16.04 system), rcprof is able to profile it.  I don't see the same "/usr/bin/python2.7 is not a valid application" error you reported.

I use archlinux.
Some applications get the "is not a valid application" error, some others don't. I figured out when I recompile applications I compiled a few months ago, they now get the "is not a valid application".
I fail to find an explanation.

There was a change included in v5.2 which relaxes the check for a valid ELF executable. Could you try the 5.2 release to see if it works better for you?

I confirm the issue is fixed with the last version of CodeXL (2.5).
I close the issue.


Improve Error Reporting Details

Acceptance Criteria:

[ ] include more log information in the slack output, especially if there are any errors (could be transient copy of the text of cloudformation)

The test output in slack is nice, and for additional information the link to the github repo handles everything else


cat command breaks the powerline theme while outputting text on terminal

I've found myself over and over having this issue when performing cat command on a text file

Any ideas on what's causing this?

gentle ping @kirk86


Build failes on esbuild 0.17

When running electron-esbuild with esbuild 0.17.x, there is an error
✘ [ERROR] Invalid option in build() call: "incremental"

which is referencing this option https://github.com/Kiyozz/electron-esbuild/blob/8ad1d4af6ec7c28f9bd21a05bdaad167b4948ccc/packages/electron-esbuild/src/config/utils.mts#L27

Hey! Yes indeed!
0.17.0 introduces the context API. I'll need to update for 0.17.0
Thanks for your issue.

It was fixed by #53. Thanks, @jonluca!


Layer js refactoring

Export core functionality into another file

Travis complains Error: Cannot find module '../contextjs.js'. You should rename ContextJS.js to contextjs.js (with git mv) because of the case-significant filenames in the non-Windows world.


Don't allow a race between restoring the previous saved tab and going to a push notification conversation

@keybase/react-hackers
(Haven't been able to test this working yet, because on my phone I always seem to win this race and end up at the push notification conversation.)

@chrisnojima Ready for another look, is this what you were thinking about?


Implement the switch operator

convert an Observable that emits Observables into a single Observable that emits the items emitted by the most-recently-emitted of those Observables

http://reactivex.io/documentation/operators/switch.html
It is much like concat, except that the currently subscribed observable gets canceled as soon as a new observable is emitted.

Ooops, this was a duplicate of #42. Closing...


Fixed #24591 -- Optimized cloning of ModelState objects.

Changed ModelState.clone() to create a shallow copy of self.fields
and self.managers.
https://code.djangoproject.com/ticket/24591

I think that a happy test suite is a good sign :-) Looks good to me.

Are the commits meant to be squashed at all? You might add a docstring or more to ImmutableWrapper.

I have concerns about this patch. From my understanding fields are actually recreated to prevent them from keeping reference to previous states models. This patch works fine when dealing with basic fields since their only reference to a model is their model property assigned upon contribute_to_class.
Related fields on the other end can hold two additional reference to models: rel.to and rel.through. It looks like the current approach doesn't prevent rel alteration and could result in really hard to debug issues -- the main reason why we keep things simple by simply copying the fields.

Deconstruction in from_model() prevent that the fields contain any references to an actual model class - they are all converted to string references. An extra check in __init__() to ensure that they are string references is not a bad idea, though.
If you want to prevent hard to debug issues, I think that on second thought I'd rather stick with deepcopy than with the current ImmutableWrapper. It is slower, but the impact if you do change the field (which you must not do) is smaller and more predictable. It is still significantly faster than recreating the field.
Field deconstruction is one of the most performance-critical part of migrations, right next to database IO, and it is incredibly slow. That, and people are starting to report rendering times close to an hour [1]. This patch is a massive improvement on cpu and memory usage.
[1] https://code.djangoproject.com/ticket/24554
@timgraham I'm not entirely convinced that the ImmutableWrapper is the best approach in this patch. I'll squash the commits when I'm happy with the result.

Hi @knbk,
First thanks for working on this, I also agree that we should try solving this performance critical part of migrations.
I like the idea of a check in __init__() and the use of deepcopy and I'd be interested in learning how the performance enhancement compare to the actual solution your proposing.
I'm also wondering if performance is still an issue since (#24554)[https://code.djangoproject.com/ticket/24554]. From your comments this brings significant speed ups and memory saving but are migrations really that slow now that the previous fix has been committed?
I think I'm a bit reluctant here because I had to deal with previous state model reference bugs in the past and I also know that it was the case for @MarkusH and it was a bit of a headache for me.

I pretty much digged through the entire state handling again and am still alive. Can't be that bad then :grin:
As of now the fields are reconstructed each and every time a model or a relates model is changed twice: once in ModelState.clone() and once in ModelState.render(). This is the correct behavior, since the operations can possibly do anything with the model state they want.
As it turns out we, luckily, never modify the field instances inside of operations. For field related operations we replace the respective field instance if it changes with the one from the migration file. If only a field's name changes we reuse the field instance. This is still save because the instance doesn't know about its name. In model operations we take the time to actually clone the field instance where necessary: https://github.com/django/django/blob/master/django/db/migrations/operations/models.py#L183 . This also explains why there are no failing test cases with the ImmutableWrapper applied on the fields.
Bottom line, I think we are safe if we just use self.fields and put a big attention box in the docs stating that operations must noch change an existing field instance.
ModelState.__init__() does already some introspection of fields and checks that a field is not bound to a model. Adding something for relational fields doesn't sound too bad, though I'm unsure where the bound model should come from. The important thing here is that ModelState.render() reconstructs the field.

Thanks for your input Markus. If you're confident this can go as is I'll retract my concerns.

Your concerns are valid. We can speed things up here if and only if we make it clear to everybody working on built-in or 3rd party migration operations that field instances must not be changed. If we do that, I'm ok with just using self.field.
In that case we need to start talking about which version this patch is going to land in. It is a backwards incompatible change in a public/private? API, so it doesn't/does qualify for 1.8.x.

LGTM. @timgraham do you have any comments on the docs?

Thanks, those docs make sense to me now.

merged in 1a1f16d67da7080241ad9f6b4325f22364ac57ba, thanks!


HIVE-26915: Disable TestCodahaleMetrics.testFileReporting flaky

This commit was done in the mast branch without raising a JIRA ticket, Please check this commit : 130f80445d589cdd82904cea1073c84d1368d079. Disabling this test since it is flaky.

What changes were proposed in this pull request?

Why are the changes needed?

Does this PR introduce any user-facing change?

How was this patch tested?

@abstractdog Can we merge this as well

@abstractdog @zabetak Can you please review and merge this as well.

Hi @zabetak Please refer this http://ci.hive.apache.org/blue/organizations/jenkins/hive-precommit/detail/PR-3900/8/tests/. In this run it is failing.

@zabetak Also here http://ci.hive.apache.org/blue/organizations/jenkins/hive-precommit/detail/PR-3859/11/tests/

@zabetak Here is another flakiness http://ci.hive.apache.org/blue/organizations/jenkins/hive-precommit/detail/PR-3954/4/tests

@zabetak @abstractdog Can you please review and merge this

@zabetak @abstractdog Please review this.


Reward pool migration fix

RewardPools are currently not being decoded on Westend. This may be because of a migration that was needed on RewardPool for new commission counter fields total_commission_pending and total_commission_claimed.
polkadot companion: https://github.com/paritytech/polkadot/pull/6957

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-benches
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2591255

The CI pipeline was cancelled due to failure one of the required jobs.
Job name: cargo-check-each-crate
Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2591269

bot fmt

interestingly, could have been caught by https://github.com/paritytech/substrate/pull/13013

bot merge

For posterity:
This fixes encoding errors for all prefix keys 0x7a6d38deaa01cb6e76ee69889f169627fa0883f96ad25255581bef5ba72b8750...


Remove redundant code from the packager pass

After the switch to checking visibility explicitly in #5727, the old approach of wrapping environments in different namespaces is no longer needed. This PR removes most references to PackageRegistry and PackageTests, as well as the pass that would construct the special namespaces when processing a __package.rb.
Motivation

Removing dead code.
Test plan

See included automated tests.

We have a policy of testing changes to Sorbet against Stripe's codebase before
merging them. I've kicked off a test run for the current PR.  When the build
finishes, I'll share with you whether or how it failed. Thanks!
Stripe employees can see the build results here:
→ https://go/builds/bui_LdX3ZcgoqjlTsf
→ https://go/builds/bui_LdX3c4iyIQs9Aa


Add typescript rules and fix issues

I have added this PR on top of PR #58

Closing the duplicate PR


o5m parser issue, part 2

Another issue triggering segfaults in the o5m parser seems to be a missing end check in decode_info:
We need at least one more byte to determine if an info section is available, that's why I think it would be best to raise an exception here.
diff --git a/include/osmium/io/detail/o5m_input_format.hpp b/include/osmium/io/detail/o5m_input_format.hpp
index b81386ff..3443eccd 100644
--- a/include/osmium/io/detail/o5m_input_format.hpp
+++ b/include/osmium/io/detail/o5m_input_format.hpp
@@ -344,6 +344,9 @@ namespace osmium {

                 const char* decode_info(osmium::OSMObject& object, const char** dataptr, const char* const end) {
                     const char* user = "";
+                    if (*dataptr == end) {
+                      throw o5m_error{"premature end of file while parsing object metadata"};
+                    }

                     if (**dataptr == 0x00) { // no info section
                         ++*dataptr;

Test case:
echo -n "/+AEbzVtMgAAEgERAAAAAAAAAAAAAAAAAAAAAAAAAAALAA==" | base64 -d | ./osmium cat - -F o5m -f xml

I'm also experiencing other crashes in the o5m parser, which I haven't analyzed yet in more detail. I'm posting them here nonetheless, and will amend them with further findings as soon as they're available. Oftentimes, the crash location is caused by some missing check in another location, like in the example above.

Sporadic segfault

The following test case triggers a segfault in about 50% of runs. There might be some data race, which is randomly triggering the segfault.
echo -n "/+AEbzVtMgcAEBAQEBAQAAD/4ARvNW0y7AAQEBAQ9u///wAA7OwAAOzs7BHsAP8A" | base64 -d | osmium cat --no-progress - -F o5m -f xml

osmium cat results in either:
<?xml version='1.0' encoding='UTF-8'?>
<osm version="0.6" generator="osmium/1.13.1">
</osm>
o5m format error: reference to non-existing string in table

or:
<?xml version='1.0' encoding='UTF-8'?>
<osm version="0.6" generator="osmium/1.13.1">
Segmentation fault (core dumped)

decode_tags, update_pointer

echo -n "/+AEbzVtMv///xEEbzVtMv///xER///+ERER/////////wAAAAD/4ADgBCU1bTL///8RBG81bTL///8REf///hEREf////////8AABDxAAA=" | base64 -d | osmium cat --no-progress - -F o5m -f xml

Crash location:  osmium::io::detail::O5mParser::decode_tags - const bool update_pointer = (**dataptr == 0x00);

decode_tags, while loop

echo -n "/+AEbzVtMgAAAAAAAAAAKCgoKAARERERERERERF2EREREREREREREQEREREREREREREREREREREREREREfUAAAAAAAAAAAAA7/4AABEREREREQAAAAAAACgoKCgAEREREf////////9+p5PqHAYAAFsAAAARERERERE0bQAAAAD/ECAABgCYAOAEbzVtAAAy" | base64 -d | osmium cat --no-progress - -F o5m -f xml

Crash location: osmium::io::detail::O5mParser::decode_tags - while (*data++) {

I believe I fixed all the issues.


add action test for tag feature

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 90.38%. Comparing base (0cebace) to head (1d3ce78).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #18   +/-   ##
=======================================
  Coverage   90.38%   90.38%
=======================================
  Files          11       11
  Lines         312      312
  Branches       69       68    -1
=======================================
  Hits          282      282
- Misses         29       30    +1
+ Partials        1        0    -1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Is this support for graylog 2.3?

Hi guys,
I recently updated our graylog cluster to version 2.3.But when I install this plugin and restart graylog server, It failed because of this unsupported plugin.
Is there any update for this version?

I forked the plugin and added templated logging messages. It works with 2.3. Ill post up shortly.

Thanks Aenima4six2 !

Hi Aenima4six2, have you post up?

yep, https://github.com/Aenima4six2/graylog-plugin-slack-fork

@kieulam141 I'm taking over this repo and merged all my changes up. Let me know if your issue still exists.

Hi Aenima4six2,
It works.Thank u very much.


Getting Started docs - Minimal YARP Sample 404

The getting started page links to "Minimal YARP Sample" which results in a 404 on GitHub.

Woops. I just updated all of the samples to use the minimal style so I'd deleted that sample as redundant. Need to fix the link.

Fixed by #2367, #2379


Changed build system to CMake, wrapped all classes in namespace MQLib…

… and updated documentation accordingly.

Could you make the namespace lowercase? I think we roughly tried following Google C++ style here, and I think generally its more conventional.
Have you tested it? You said the binary failed to run?

I have tested the binary and it works. What I have not tested is the benchmarking code.
Apart from that I have made the namespace lowercase, as requested.

I have added a test program that tests all currently available heuristics on sample problems and travis-ci.org continuous integration.


Feat/parameterized sql queries

Which issue does this PR close?
Closes #513
Rationale for this change
Users would like to use DataFrames as a parameter inside an SQL query. With this change, you can do the following:
from datafusion import SessionContext
ctx = SessionContext()
df_customer = ctx.read_parquet("examples/tpch/data/customer.parquet")
ctx.sql("select c_custkey, c_name from {df}", df=df_customer)

The string {df} in the query will be replaced with the SQL equivalent of the logical plan of the DataFrame.
What changes are included in this PR?
All of the read_parquet, read_avro, read_json, and read_csv have been changed to call register_ with a generated table name. This table name is the file name. If a table already exists with that file name, a generated UUID is used instead.
One unit test is included.
Are there any user-facing changes?
There is an addition of an optional table name to each of the read_ functions above, but it is a non breaking change for the users.

This user interface looks nice 😎


[Bug] Cannot set minimum/fix margin between each label/item on y-axis in gantt chart

Version
5.4.3
Link to Minimal Reproduction
https://echarts.apache.org/examples/en/editor.html?c=custom-gantt-flight
Steps to Reproduce

Create gantt chart with the options just like the available example
Try creating with larger data (more parking apron index) or expand the y-axis slider or remove the y-axis slider

Current Behavior
When creating gantt chart with larger data, it appears that the axis label as well as gantt item overlaps over each other or if the data is too small, then the space between each item would be too large and as I checked, I couldn't find any specific option that I could set to prevent this or to fix the space between each item vertically.

Expected Behavior
There should be some options to set the minimum margin between each item on y-axis so that no items are overlap over each other.
Environment
No response
Any additional comments?
No response

Actually the official Gantt example has very flexible dataZoom options set up.
I've enhanced the two yAxis dataZooms in Demo Code. The red slider only moves up & down. The pink dataZoom is the aperture(width) of the red slider. Using both can customize the vertical resolution to your liking.
https://github.com/apache/echarts/assets/13038071/190e51f9-443d-48a1-a13e-8c261a95d77a
📌 please close issue if problem solved.

Hello @helgasoft
Thank you very much for your help! The issue is that every time the chart is rendered, the vertical resolution will be set back to default, and it won't work with different heights of the component and a different amount of data - assuming that the data for each day is unpredictable, meaning that there might be many more parking aprons or just some. This might pose a slight inconvenience if the user has to adjust the length of the slider every time the chart or the page is reloaded.
Are there any other ways to solve this problem?
Much appreciated for the help, and thank you in advance.

assuming that the data for each day is unpredictable, meaning that there might be many more parking aprons or just some.

If a chart parameter is data-dependent, then the developer's task is to set it up accordingly.
For example add a function to set dataZoom start/end based on the number of data items.

I was thinking of the same solution, but it would have been much easier if there was a configuration option for this case.
Thank you very much for your help; I'll close the issue.


Auto versioning

Nope, no idea, I am not too familiar with gradle, so the changes are baby steps. I am not still in this part of the guide :D


add a http_client::HttpClient implementation for tide::Server

In order to facilitate testing, it is convenient for tide::Server to implement http_client::HttpClient.  This allows surf to be used for testing, with only the following shim:
#[cfg(test)]
mod tests {
    use super::*;

    pub fn test_client<State>(server: Server<State>) -> Client
    where
        State: Debug + Unpin + Sync + Send + Clone + 'static,
    {
        let mut client = Client::with_http_client(Arc::new(server));
        client.set_base_url(Url::parse("http://example.com/").unwrap());
        client
    }

    #[async_std::test]
    async fn test() -> tide::Result<()> {
        let app = build_app().await;
        let body = test_client(app).get("/").recv_string().await?;
        Ok(())
    }
}

If http-rs/surf#229 is merged, this would allow:
let app = tide::new();
use surf::ClientExt;
app.get("http://example.com/").recv_string()?;

this is tested by using it throughout the tide testing suite as the basis for test_utils::ServerTesting
Drawbacks/Limitations
This adds a dependency on http-client, but that should be pretty lightweight without default features.
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Also cc/ @LukeMathWalker; author of wiremock -- curious to get your input on this!

I've been thinking a bit more about this, and if there's hesitation about the surf PR, we could achieve the same api by just publishing a tide trait behind a testing feature or published in a very small http-rs/tide-testing crate

This PR doesn't depend on the surf PR at all, and in fact we'll want another tide PR to use the surf pr instead of the test_utils::TestingExt trait (which is currently used in this pr, in order to make them independent)

This looks really cool :grin:
As a web framework user, it's awesome to have a high-level API to interact with an app instance.
Generally speaking though, I prefer to have black-box API tests that actually hit the network. It would be cool to have an app.spawn() method that launches the app in the background and returns me its address to perform HTTP calls.
You could then build on top of it (and have this very same API) by providing an app.client() which spawns an app in the background and returns me a surf::Client instance whose base uri has already been set to match the one from the application.

@yoshuawuyts @Fishrock123 I revisited this PR and scaled it back. The only public change as of the latest commit is the addition of the HttpClient impl for tide::Server, which hopefully will make it less controversial. We can iron out the rest of the details in further PRs, but this will at least allow applications to build their own testing extensions along the lines of test_utils::TestingExt

Merging this because of previous approvals and minimal public api (just an impl, no exports)


Crashes when trying to connect to game

Ant ideas how to fix?

Ant ideas how to fix?

what are you using? android or windows?

@ModizX if its solved, please close the issue


Improve crafter performance with recipe cache

Worked in normal use-cases and on world reload, but could use further testing

In testing this PR roughly halves the tick time taken by crafters under normal conditions


Add instrumentation test to the LTS skip list

Fixes #1953.

Does it fail on LTS driver?

Yes

Successful run: https://github.com/intel/intel-xpu-backend-for-triton/actions/runs/10533097737


Every other power consumption reading is 0W.

Every other power consumption reading is 0 W. I can see that the photodiode works correctly from its led and it flashes just like the led on the power meter. I have a meter that has 10000 impulses per 1 kWh.
I have shortened the config because i have no need for the leds or web server.
#
substitutions:
  device_name: home_assistant_glow
  friendly_name: House
  device_description: "Measure your energy consumption with the pulse LED on your smart meter"
  pulse_pin: GPIO12

esphome:
  name: '${device_name}'
  comment: '${device_description}'
  project:
    name: "klaasnicolaas.home_assistant_glow"
    version: "1.1.2"
  platform: ESP32
  board: esp32doit-devkit-v1

wifi:
  ssid: "redblock"
  password: "si(ni2neb3fanhGEe!vo4neGna"
  fast_connect: true

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: '${device_name}'
    password: "luVL44uRRwpW"

captive_portal:

# Enable logging
logger:

# Enable Home Assistant API
api:
  password: "asidna3tq3t9ah2A)RF#HA9ah3fa"

ota:
  safe_mode: true
  reboot_timeout: 10min
  num_attempts: 5

sensor:
  - platform: pulse_meter
    internal_filter: 8us
    name: '${friendly_name} - Power consumption'
    unit_of_measurement: 'W'
    state_class: measurement
    device_class: power
    icon: mdi:flash-outline
    accuracy_decimals: 0
    pin: ${pulse_pin}
    filters:
      # multiply value = (60 / imp value) * 1000
      - multiply: 6
    total:
      name: '${friendly_name} - Total energy'
      unit_of_measurement: 'kWh'
      icon: mdi:circle-slice-3
      last_reset_type: auto
      state_class: measurement
      device_class: energy
      accuracy_decimals: 3
      filters:
        # multiply value = 1 / imp value
        - multiply: 0.0001`

I think you have to play with the internal_filter a bit, because you get 10x as many pulses for 1 kWh there is a good chance that it doesn't count because it is so many times in a row 🤔

I have tried it with 4 and 8 us, but it doesn't change anything. My consumption is under 1000 Watts so the led isn't blinking too fast.
Here is a portion of my log
17:26:47][D][sensor:127]: 'House - Power consumption': Sending state 960.00000 W with 0 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Total energy': Sending state 5.67330 kWh with 3 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Power consumption': Sending state 0.00000 W with 0 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Total energy': Sending state 5.67470 kWh with 3 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Power consumption': Sending state 962.56689 W with 0 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Total energy': Sending state 5.67480 kWh with 3 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Power consumption': Sending state 0.00000 W with 0 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Total energy': Sending state 5.67580 kWh with 3 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Power consumption': Sending state 962.56689 W with 0 decimals of accuracy
[17:26:47][D][sensor:127]: 'House - Total energy': Sending state 5.67710 kWh with 3 decimals of accuracy
[17:26:48][D][sensor:127]: 'House - Power consumption': Sending state 0.00000 W with 0 decimals of accuracy
[17:26:48][D][sensor:127]: 'House - Power consumption': Sending state 952.38098 W with 0 decimals of accuracy
[17:26:48][D][sensor:127]: 'House - Total energy': Sending state 5.67730 kWh with 3 decimals of accuracy
[17:26:48][D][sensor:127]: 'House - Power consumption': Sending state 0.00000 W with 0 decimals of accuracy
[17:26:48][D][sensor:127]: 'House - Total energy': Sending state 5.67830 kWh with 3 decimals of accuracy
[17:26:48][D][sensor:127]: 'House - Total energy': Sending state 5.67850 kWh with 3 decimals of accuracy
[17:26:48][D][sensor:127]: 'House - Total energy': Sending state 5.67990 kWh with 3 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Power consumption': Sending state 962.56689 W with 0 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Total energy': Sending state 5.68080 kWh with 3 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Power consumption': Sending state 0.00000 W with 0 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Power consumption': Sending state 954.90723 W with 0 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Total energy': Sending state 5.68090 kWh with 3 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Power consumption': Sending state 0.00000 W with 0 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Total energy': Sending state 5.68200 kWh with 3 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Power consumption': Sending state 960.00000 W with 0 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Total energy': Sending state 5.68250 kWh with 3 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Power consumption': Sending state 0.00000 W with 0 decimals of accuracy
[17:26:49][D][sensor:127]: 'House - Total energy': Sending state 5.68330 kWh with 3 decimals of accuracy
[17:26:50][D][sensor:127]: 'House - Total energy': Sending state 5.68440 kWh with 3 decimals of accuracy
[17:26:51][D][sensor:127]: 'House - Total energy': Sending state 5.68480 kWh with 3 decimals of accuracy
[17:26:51][D][sensor:127]: 'House - Total energy': Sending state 5.68590 kWh with 3 decimals of accuracy
[17:26:51][D][sensor:127]: 'House - Power consumption': Sending state 960.00000 W with 0 decimals of accuracy
[17:26:51][D][sensor:127]: 'House - Total energy': Sending state 5.68600 kWh with 3 decimals of accuracy

I think that this is not the case. If I calculated correctly my meter will flash 20 000 times per hour, if I'm using 20 kWh. That means 55,56 pulses per second. So 1 second equals 1 000 000 microseconds. One pulse will have time to rise and fall for 18 000 microseconds.
I tried also with pulse_counter but it calculates usage and consumption in certain time period. Pulse meter calculates it every time when there is a pulse. As you can see from my logs the total energy rises every time it is seen on the logs but for some reason consumption is always every second time zero.
The timeout for zero pulses per minute is 5 minutes so this can't be the case.
Is anyone else able to reproduce this error? How can I debug this

Still thinking about this. I looked at the logs and there are sometimes huge consumption numbers
It baffles me that the total energy seems to accumulate correctly even though consumption is zero or 360 000 W. Could there be some kind of error with the pulse_meter library or do I have defective esp32?
[23:02:34][D][sensor:127]: 'House - Power consumption': Sending state 853.08057 W with 0 decimals of accuracy
[23:02:34][D][sensor:127]: 'House - Total energy': Sending state 0.07910 kWh with 3 decimals of accuracy
[23:02:34][D][sensor:127]: 'House - Power consumption': Sending state<PHONE_NUMBER>0 W with 0 decimals of accuracy
[23:02:34][D][sensor:127]: 'House - Total energy': Sending state 0.07920 kWh with 3 decimals of accuracy
[23:02:35][D][sensor:127]: 'House - Power consumption': Sending state 0.00000 W with 0 decimals of accuracy
[23:02:35][D][sensor:127]: 'House - Total energy': Sending state 0.07980 kWh with 3 decimals of accuracy

I think you have to use ms instead of μs. They say for power-meter it could be 50-100ms.

I think you have to use ms instead of μs. They say for power-meter it could be 50-100ms.

Yes! That was it. All the documentation talks about μs and I of course thought that I have to use them too. Now I have 5ms as an internal_filter value and it works.
Thank you for you help!


Unbreak build with Boost < 1.72

Regressed by boostorg/filesystem@9a14c37d6f95. See error log.

Sweet, thanks!


How does it compare to Connexion?

I just discovered your project today and would be interested in how it compares to our Connexion API-First Framework. I'm one of the maintainers of Connexion.

actually it is a project inspired by the connexion framework and serveral other frameworks.
so you may find these two frameworks looks very familiar excepts:

falsy is my own interest side project, while connection is much bigger and well maintained. even though we have serveral small project based on falsy running in prodocution, I have to say that it's less maintained right now. Cause we are a very small company, we do not have a production team. I have to put more effort in the line of bussiness(which makes me very sad), I hope I may have some time to refactor falsy and add new features to it.

falsy is based on falcon while connection is based on flask. It seems flask is the only backend of connection. the backend of falsy is falcon right now, however, I have start another project making it works with aiohttp(which is blocked right now due to the problem of not having enough time)

falsy is in a part of my own big "toy" plan(which also have serveral other projects: netboy(the crawler supports pycurl and selenium), store(the json storage framework), store_beat(celery dynamic beater for store)). I have found zalando seems have similar plan, like the crawler zalenium (which is written in Java). my tools are all written in Python, and I will create another project built upon these tools in the feature. I'm not sure whether Connexion is part of the "plan"

falsy lacks the features of testing and the validation is via the validationId, however, connexion supports these better. falsy has other "Ids" like 'beforeId' and 'afterId' for aop hooks. falsy supports multi versions of swagger-ui. falsy supports the include of sub yaml files.

@hjacobs
great work! :+1:


feat: add swagger api doc

What type of PR is this?
/kind documentation
/kind feature

What this PR does / why we need it
graphql comes with its own documentation, and the restful part should also come with documentation in the code, so that we can make sure that the documentation is not out of date while updating the code.（I hope so)
graphql doc show in its playground like this:

Which issue(s) this PR fixes

Fixes #
Special notes for your reviewer
you can review the swagger doc in https://petstore.swagger.io/, just use swagger.json path: https://raw.githubusercontent.com/Abirdcfly/arcadia/log/apiserver/docs/swagger.json

default path is host:port/swagger/index.html

@zggmd, please note, this pull request change one typo in chat api, from conversion to conversation, https://github.com/kubeagi/portal also need update.


[New] no-restricted-paths: support arrays for from and target options

Fixes #2142
Context
Sometimes I want to set certain paths in batch to prohibit relying on the same path, or a certain path to prohibit relying on multiple paths.
Changes
In this PR

I update the schema of this rule

before: from and target are only a string
after: these fields can be either a string or an array of string

I change the behavior + add tests

all the elements in from and target are taken into account the same way it was before
I also ensure the homogeneity of the from elements to stay aligned with the current homogeneity checks between from and except

I update the related doc and add new examples
I update the changelog

Notes

I advise to read this PR commit by commit as there are quite a few changes that are easier to review step by step, e.g. extracting functions before using them inside loops
I chose to support both string and array to avoid a breaking change

@ljharb my pleasure!
thanks for your review and suggestions 🙏🏽
how do you want to proceed for the next steps: as I have no write access, I guess you will merge this pull request yourself and close the related issue when done?

Yes, I'll merge it myself, and the fixes #2142 i edited into your OP will cause github to auto-close it upon merging.

@ljharb indeed, I missed your edit, all perfect then =)

@AdriAt360 hm, looks like this PR is causing the native windows tests to fail: https://ci.appveyor.com/project/ljharb/eslint-plugin-import/build/job/xqkwnmajs2svu218

@ljharb as there are multiple tests with this name and I can't reproduce locally, I just added some comments to identify the failing test https://github.com/import-js/eslint-plugin-import/pull/2466/commits/d3fa030e36021f60152e7a2a31c7db8c984989df
I hope it will help investigating and keep you posted

looks like number 7: https://ci.appveyor.com/project/ljharb/eslint-plugin-import/builds/43753304/job/dshd09a4o6tucs0a

@ljharb still no way to repro on my side, so I added another test to help me investigate

@ljharb ok, seems that this specific glob pattern (./some/path/*) is not accepted by windows
I updated and added some tests to check some other common patterns

@ljharb I guess I found the issue, but as it impacts all the tests, you might want to give an opinion
as stated in https://stackoverflow.com/a/39111164/2814072, path.resolve always resolves to an absolute path where path.join might or not
problem is:

in test/utils, the testFilePath function used path.join, but in the source code of the no-restricted-paths rule, only path.resolve is used
in case of glob patterns, minimatch will match the file only if both the glob and the file path are absolute, as the glob pattern is

I guess on Windows, path.join resolved to a relative path, explaining the failing tests

If this hypothesis is correct, the pipeline should be all green now, so the next step would be to clean the tests I added to investigate here, unless you prefer keeping them

@ljharb ok, wrong hypothesis
another hint could be process.cwd()
More details here

from https://www.geeksforgeeks.org/node-js-process-cwd-method/, I can see that the current working directory resolves with back-slashes

from https://www.npmjs.com/package/minimatch, I can see that the glob pattern should contain only forward-slashes

but in our situation

target is defined correctly (only /)
if no basePath is provided, process.cwd() is used as basePath to build targetPath
meaning on Windows native, the target path pattern could resolve with \ in some conditions (I guess, don't know why it could not be everytime)
I opened this other PR to validate this hypothesis (expected output: the new test I added there is red too), I'll close it

As it seems be working with the from and except parts, I change to use Minimatch.match as it's done there, it should fix this for real: https://github.com/import-js/eslint-plugin-import/pull/2466/commits/4392f46c22d062dedacc68142e6b92530087ba03

hi there @ljharb 👋🏽
as my previous attempt wasn't successful either, here is another try to fix the existing issue on the Windows Native pipeline

I decided to use the resolve function the same way it's done for the imports https://github.com/import-js/eslint-plugin-import/pull/2466/commits/de331693613c5a13b6f624367b4b90ba3b454072
I also fixed the tests accordingly https://github.com/import-js/eslint-plugin-import/pull/2466/commits/2f9ba90677fd40baa22f617466b961be23ae7ecb

I hope this will make the pipeline green 🤞🏽

@ljharb how do you want to proceed next here?

as it was already broken (confirmed by https://github.com/import-js/eslint-plugin-import/pull/2472), I think it would not be more harmful to merge this current version (without my last 2 commits obviously)
in the meantime, I'm not fond of ignoring a broken pipeline
but I must admit I run out of new ideas for this windows native pipeline problem

hmm. let's reopen #2472, and update it so that it skips the broken tests in windows. then we can land that, rebase this, and land it.

@ljharb I just commented the failing test and removed my previous investigation commits -> this PR seems ready to be merged
the AppVeyor build failed but it seems like a timeout on a random test outside this PR's scope: could you rerun this check?
By the way, feel free to rebase if you feel the 2 commits https://github.com/import-js/eslint-plugin-import/pull/2466/commits/786b9b397ae11f314ebe026cea0bd58f0a5c8e18 and https://github.com/import-js/eslint-plugin-import/pull/2466/commits/1196129605726be1c217e30931e9b2a7234ad062 should be merged into only one

@ljharb it seems that this PR is ready to be merged, but feel free to tell if there is still something waiting on what I could be helpful :)


Support for launching the local binary with custom shell command

When using an OS like Guix or Nix, the downloaded "codeium_language_server" binary cannot execute due to libraries not being stored in /lib. I can run the local binary in a container where the libraries do exist in /lib with guix shell -CNF nss-certs -- ./codeium_language_server. (This command places glibc in /lib and allows the container to share the parent environment's networking setup.)
However, I cannot feed this shell command into the codeium-command-executable variable, as it results in an error saying it is "not a valid executable."
I've tried making a launcher shell script with this command and passing it to the codeium-command-executable variable, and I no longer receive any errors, but I do not see any sign of any completions, the package working, or any log messages. I would expect for the auth process to begin, but nothing ever appears in the message buffer. If I examine ps aux | grep cod, I can see the process is running somewhere.
Any thoughts about how to successfully authenticate with the binary running in this manner?
--
I get this output in stdout when running my launcher script:
I0217 22:06:39.515235     1 main.go:346] Starting language server manager with pid 1
I0217 22:06:39.515841     1 main.go:228] Language server manager attempting to connect to language server at <IP_ADDRESS>:42100
I0217 22:06:39.540629    13 main.go:340] Starting language server process with pid 13
I0217 22:06:39.541218    13 server.go:190] Successfully created API server client
I0217 22:06:39.549482    13 server.go:197] Successfully initialized tokenizer
I0217 22:06:39.549507    13 server.go:204] Successfully created completion provider
I0217 22:06:39.549512    13 server.go:217] Child process attempting to acquire lock file /tmp/child_lock_1676671599515472344_173301945805043158
I0217 22:06:39.549537    13 server.go:227] Child process acquired lock file /tmp/child_lock_1676671599515472344_173301945805043158
I0217 22:06:39.549657    13 server.go:106] Language server will attempt to listen on host <IP_ADDRESS>
I0217 22:06:39.549774    13 server.go:129] Language server listening on fixed port at 42100
I0217 22:06:39.549616    13 unleash.go:58] proxyplease.proxy> No proxy provided. Attempting to infer from system.
I0217 22:06:39.549811    13 unleash.go:58] proxyplease.proxy> No proxy could be determined. Assuming a direct connection.
I0217 22:06:39.549821    13 unleash.go:61] Initializing Unleash with production environment
I0217 22:06:39.559114     1 main.go:274] Language server manager successfully connected to new language server at <IP_ADDRESS>:42100
I0217 22:06:39.765435    13 unleash.go:76] Successfully initialized unleash

This looks good, right?

In your script, are you passing on the manager_dir argument to the binary correctly? The package creates a temp directory and passes this directory as the --manager_dir argument to the binary. I believe that if you forward this argument correctly through your script, your setup should work properly.

See this line for where we pass the arg: https://github.com/Exafunction/codeium.el/blob/main/codeium.el#L365

You'll also need to make sure that the extension can talk to the binary running in the container over a port.

Yes, the script passes all arguments through the script with<EMAIL_ADDRESS>Although, now that you mention it, I'd assume the binary needs write permissions to manager_dir. Does the binary create the directory in that location, or does the binary assume that the directory is already created in that location? If the binary assumes the directory is already created by say, Emacs, then it might have issues writing to it.
As far as ensuring the extension can talk to the binary, I can hit the binary from Firefox (outside the container) and receive a "missing token" message, so I'd assume the networking connection should still be ok.

OK, but to be clear for the output from earlier when running your launcher script, you did not pass a --manager_dir argument right?
I think you're correct that the issue is relating to permissions of the manager_dir. The package creates the directory, and the binary needs to be able to write to it. This used for a couple of things, but most relevantly this is how the binary communicates the port it chose back to the extension.

Got it! Had to give permission to the container to write to /tmp.
For any guix users that stumble upon this, the command that worked is:
guix shell -CNF nss-certs --share=/tmp -- ./codeium_language_server

Thanks for the help! I would never have figured that out.

Glad it worked out!

For future reference, one can customize codeium-command. For example, to use a fixed directory:
(setq my-codeium-directory (file-truename "~/.emacs.d/codeium/manager_directory"))
;; function to make a manager-directory and return a command
(defun my-codeium-command (_api state)
    ;; codeium.el needs to know about the directory
    ;; disable eager macro expansion as setf wont expand correctly
    (eval '(setf (codeium-state-manager-directory state) my-codeium-directory) `((state . ,state)))
    ;; recreate to make sure that theres nothing in the directory
    (delete-directory my-codeium-directory 'recursive)
    (make-directory my-codeium-directory t)
    ;; finally return the command
    `(,codeium-command-executable
         "--api_server_host" "server.codeium.com"
         "--api_server_port" "443"
         "--manager_dir" ,my-codeium-directory))
(setq codeium-command #'my-codeium-command)


[release/1.6 backport] move up to CRI-TOOLS v1.26.0

backport of:

https://github.com/containerd/containerd/pull/7530/commits/e47bdbd16f7eeaa71baf5217d2984e07d5f3e13e (for a clean cherry-pick)
https://github.com/containerd/containerd/pull/7666 (for a clean cherry-pick)
https://github.com/containerd/containerd/pull/7818
relates to https://github.com/kubernetes-sigs/cri-tools/issues/1039

Error: vendor/k8s.io/component-base/metrics/registry.go:35:29: undefined: atomic.Bool
note: module requires Go 1.19

Looks like we need a new Go version if we're going to take this.

oh! Yes I recall I had a discussion around that on the main branch for a vendor update; k8s effectively only supports "latest" Go. https://github.com/containerd/containerd/pull/7803#issuecomment-1358489006

@thaJeztah The go version is now updated. Can we now this PR forward?

Thanks for the reminder; I rebased this one (hopefully CI is happy now 👍)

The main branch now has v1.27.0. Ref: https://github.com/containerd/containerd/blob/main/script/setup/critools-version
Should we update to that version. So it will be a backport of https://github.com/containerd/containerd/pull/8474

@thaJeztah  One test has failed. Not sure if its a flake.
Also, can we think about updating to 1.27.0 of cri-tools

I see that test uses Fedora 36 (which reached EOL), so it's likely unrelated (but haven't looked in-depth)
@mikebrow should we update this branch to v1.27.0 ?

nod let's jump to v1.27.0 .. fyi already moved up to containerd 1.6 in the cri-tools repo tests .. https://github.com/kubernetes-sigs/cri-tools/blob/master/.github/workflows/containerd.yml#L28


More custom storefront

For use with more_custom_storefront frontend
Adds 'size' piece to the storefront customization model

In the future, I can see having size be more dynamic (ie a positive integer instead of an optioned char field), so that we can do things like have a storefront section take a full row.
For now, this is good. :+1:

:-1:  It seems like it was re-based incorrectly


Handle S3 503 error

https://github.com/stoat-dev/stoat-action/actions/runs/3660320900/jobs/6187319317

An explanation of why we are already hitting a rate limit of 3.5k requests per second per prefix:

If there is a sudden increase in the request rate for objects in a prefix, Amazon S3 might return 503 Slow Down errors. It does this while it scales in the background to handle the increased request rate.

https://aws.amazon.com/premiumsupport/knowledge-center/s3-503-within-request-rate-prefix


[CMake] Manually Set swift-version

CMAKE_Swift_LANGUAGE_VERSION isn't supported until CMake 3.16 which
isn't generally released yet. For anything less, pass in -swift-version
4.2 with add_compile_options.

@swift-ci please smoke test

cc @compnerd

LGTM, I am happy to merge this unless @compnerd has any comments?

I dont think that the else is really useful.  Setting CMAKE_Swift_LANGUAGE_VERSION always is easier to work with since the future change will just be ... oh, CMake is guaranteed to be greater than this, just delete this code, no re-indentation or anything.


chore(pinia-orm): Move to moduleResolution bundler

🔗 Linked issue

📚 Description
Moving in tsconfig from moduleResolution node to bundler.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 99.72%. Comparing base (220b093) to head (19b9c5f).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1906   +/-   ##
=======================================
  Coverage   99.72%   99.72%
=======================================
  Files          90       90
  Lines        6255     6255
  Branches      524      524
=======================================
  Hits         6238     6238
  Misses         14       14
  Partials        3        3

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


script load tests

tests to ensure that the loading works when it should and throws errors when it should too.
relative paths on windows confuse me, so we'll have to find some satisfactory solution for that later.
Also, this is only doing 4 out of 6 cases correctly,
I don't know how to create a callable without signature and the "is supposed to be installed" but triggers the "ModuleNotFoundError" one confuse me.

Mr. Max,
First of all, thank you for your time and effort to help improve Nodezator, it is much appreciated.
This message is just to acknowledge my awareness of your PR.
The estimated time for me to review it is a couple of weeks, because of the reasons I listed on discord. Although, depending on the complexity of those tasks (specially the release of the new Nodezator version), the actual time may be extended a bit.
I also answered your questions on discord regarding the missing things mentioned here. You can address them if you want, but it is okay if you don't, since they may be a bit more complex. As I said on discord, when it is time for me to review your PR, depending on what's missing I may accept it right away and leave what's missing for the future.
Again, thank you for your PR.
Peace

Hello, Mr. BMaxV!
As I said, I couldn't give you an accurate estimate because of all the stuff I had to do. Now 8 weeks after my last message I finally released the new version. As I pointed out in the link shared in my previous post, now I'll proceed to create and publish a new discussion on graph execution algorithms and then I'll finally be able to review your PR.
Just wanted to let you know that your PR is on my radar and I'll eventually get to it. Thank you for your patience.
Peace

Hey, that's cool! Thanks for letting me know! Rock on!

Hello again, Mr. @BMaxV!
This week I finally managed to finish all my pending tasks and could finally look into your PR.
I think you did a great job in picking a suitable subsystem to write a test for. As a result, despite the few missing items you mentioned, your test is clear, effective and focus on the right things.
Whenever people contribute to Nodezator or any other project I maintain, like you did here, I think it is only fair to consult them first before adding changes to their work or give them the opportunity to make the changes themselves (when they are interested in doing so). In your case, there's not much that needs to be done. The few tweaks needed are:

moving some folders around (just to keep things a bit more organized)
adding a few extra lines for the missing tests and
some small changes related to repository management/configuration

Because of that, if it is okay with you, I'd like to make those few changes myself. In other words, I'd like to make some changes to your PR and merge it right away. So, please, let me know if this is okay and I'll handle this work right away.
Again, thank you for your contribution. It represents a bit more of stability that you are bringing to Nodezator, by testing an important subsystem. Sorry for taking so long to finally get to it. The Indie Python project consumes a lot of time and requires me to prioritize tasks and progress carefully in order to keep the work effective, healthy and sustainable.
Peace

Yes, of course, feel free to make any changes you want.

Made some preliminary changes. I'll merge now and do the remaining work after this merging. This way it is easier to merge without having to deal with conflicting changes.
With this, I conclude my work on this PR (the work will be finished in a new branch created temporarily just for this purpose).


Some of the readme links go to dead pages

None of the links under Core Feature Guides work.

we already have a PR to fix it #706

Closing now that #706 has been merged. Thanks @villander!


Ollama document intelligence engine

Has anyone Ollama examples for document intelligence?
In comparison, Azure AI comes with an engine which extracts elements from documents and makes them eligible passing the data into customizeable workflows. However, there are culprits even in the payed tier.
Azure AI Document Intelligence requirements

Microsoft Office files, or
JPEG, PNG, BMP, TIFF, or PDF format
PDF documents must have dimensions less than 17 x 17 inches or A3 paper size.
PDF documents must not be protected with a password.
Images must have dimensions between 50 x 50 pixels and 10,000 x 10,000 pixels.
file size less than 500 MB (payed standard tier)
only the first 2000 pages are analyzed (payed standard tier)

Some information about supported languages
Which Ollama examples fit to this extraction+passing-to-external-workflow demand?

I think this is not in scope of Ollama. Ollama's focus is on local model serving and not integrated solutions. Maybe look at end user tools like OpenWebUI or frameworks like LlamaIndex, which can both use Ollama for model serving.

Selection is good. Why shouldn't founders and young entrepreneurs think about three years into the future, right? Ollama is actually the best example of an integrated solution in terms of Hugging Face and Python as the preferred language in examples.

Thanks for the issue @dcasota ! I'm going to consolidate this into #5762; I'd love to do something like this in the future.

@pdevine I wasn‘t aware of #5762. Makes sense. Have a great business plan.


Backport PR #1047 on branch 1.7.x (Fix paga_path)

Backport PR #1047: Fix paga_path

Hmm, weird that it didn't fail against master. Also that I forgot to back port the nice plot errors to 1.7.x
TODO: https://github.com/theislab/scanpy/pull/1587#issuecomment-787808128

I vaguely remember seeing failing plots like this before. @fidelram do you remember what was causing this?
Worst case, we can say this is a 1.8 fix not a 1.7.2 fix.

This will just go in 1.8.0


Min, Average, Max, Last CPU usage

How about it?
Min, Avg, Max, Last CPU usage, of the graph time period, in the system information widget.
Below the graph perhaps.

Yeah would be nice to have this fixed. I wondered what was going on...

This was a feature ticket, @weust1979 please recreate a bug ticket


Design System > Layouts > Responsiveness issues on mobile view

Description

While viewing on mobile view card layout is not responsive
alignment of cards for mobile devices should be one after the other

Screenshots

@Arbaaz-Sayyed  need to implement dynamic mobile screens for mobile sections


Windows MSYS2 Clang64: build error crc32_braid.c

https://github.com/zlib-ng/zlib-ng/blob/b3dcf11b4204a16fde71fa8224d7b7054e225b93/crc32_braid.c#L128
Clang 15.0.4
zlib/crc32_braid.c:128:24: error: cast to smaller integer type 'unsigned long' from 'const uint8_t *' (aka 'const unsigned char *') [-Werror, -Wpointer-to-int-cast]
        while (len && ((z_size_t)buf & (W - 1)) != 0) {
                       ^~~~~~~~~~~~~
1 error generated.

@nmoinvaz, thanks build completed

This is merged in develop.


Make line separator configurable

Yes, this is a Windows issue.  :-(
It's relatively common on projects to standardize on Unix line endings even when doing development on Windows, mostly for the sanity of all involved.  sbt-header mostly handles this in a reasonable way in every respect except for the fact that it appears to constantly try to recreate headers.    The practical effect of this is that sbt-header touches every file on every compile, leaving their contents unchanged but still re-written to disk.
This in turn requires workarounds like this to make sbt-header meaningfully usable across platforms.
If we had the ability to configure newLine, this really wouldn't be an issue.  Or if there was at least a sanity check to ensure that newLine matched the line endings used in the configured license (usually \n).

PR welcome, Daniel ;-)


Add support for fastq pairs

vg and bwa can accept pairs of fastq files, where the ith read in each file are paired.  Should add support for this (pairing currently only supported in single interleaved fastq)

Fixed in #140


WIP: Add Apache Druid to the matrix

Operator link: https://github.com/datainfrahq/druid-operator

I understand this is a WIP and still contains references to Postgres features. Happy to help with a review when this is cleared out. Thanks for working on this one!

I will update as soon as this will be ready.


Building for UWP

When I try to build for UWP, I get a KeyNotFoundException.
KeyNotFoundException: The given key was not present in the dictionary.
System.Collections.Generic.Dictionary`2[System.String,System.String].get_Item (System.String key) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150)
MetroCSharpVisualStudioSolutionCreator.WriteSolutionFile (System.String solutionFileName, UnityEditor.Scripting.ScriptCompilation.ScriptAssembly[] csharpAssemblies) (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/MetroCSharpVisualStudioSolutionCreator.cs:166)
MetroCSharpVisualStudioSolutionCreator.CreateSolutionFileFrom () (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/MetroCSharpVisualStudioSolutionCreator.cs:716)
PostProcessWSA.CreateVisualStudioSolution () (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWSA.cs:320)
PostProcessWinRT.Process () (at C:/buildslave/unity/build/PlatformDependent/WinRT/SharedSources/CSharp/PostProcessWinRT.cs:221)
UnityEditor.WSA.BuildPostprocessor.DoPostProcess (BuildPostProcessArgs args) (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/ExtensionModule.cs:142)
UnityEditor.WSA.BuildPostprocessor.PostProcess (BuildPostProcessArgs args) (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/ExtensionModule.cs:149)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

I'm hoping to test these examples on an MR headset.

Unity 2017.2.0b4
Windows 10 16241.rs_prerelease.170708-1800

I did set the Scripting Backend to .NET

It looks like I don't have the right SDK, but the link from https://developer.microsoft.com/en-us/windows/mixed-reality/install_the_tools doesn't provide me with an SDK that matches my OS build

Hi Quinn, Looks like there are a number of known issues with the current beta version that might be blocking you.

Windows: [WSA] Error messages appear while/after building a project with "Unity C# projects", if the Editor folder contains a script. (918989)
Windows: [WSA] Reference rewriter fails in 2017.2 with analytics enabled (927848)
Windows: [XR][WSA] Including "Unity C# Projects" while building to Universal Windows Platform, causes builds to fail (927925)
XR: GearVR HMD Touchpad does not currently send input through the new input system.
XR: Haptics with Vive controller is currently disabled due to issues with correctly playing haptics on the correct controller
XR: Hololens / UWP / PS4 VR Devices not yet supported with the new input system for VR use.
XR: New API surface for recent UnityEngine.VR.WSA.Input changes has forthcoming breaking changes to land in another beta soon.

I'll see if I can get you access to the internal preview build or what would be needed to allow for that.
thanks,
-pat

Hi, I'm having a similar error when trying to build for UWP. I'm using the assets in the HoloWorld tutorial here https://developer.microsoft.com/en-us/windows/mixed-reality/mixed_reality_250
I've followed the settings, Scripting Backend to .NET. My windows 10 build is the Home Insider Preview 16232.rs_prerelease.170624-1334 and SDK Is 16232. So my SDK does seem to match my Windows preview version.
I'm using Unity 2017.2.0b4
The full error message is:
KeyNotFoundException: The given key was not present in the dictionary.
System.Collections.Generic.Dictionary`2[System.String,System.String].get_Item (System.String key) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150)
MetroCSharpVisualStudioSolutionCreator.WriteSolutionFile (System.String solutionFileName, UnityEditor.Scripting.ScriptCompilation.ScriptAssembly[] csharpAssemblies) (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/MetroCSharpVisualStudioSolutionCreator.cs:166)
MetroCSharpVisualStudioSolutionCreator.CreateSolutionFileFrom () (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/MetroCSharpVisualStudioSolutionCreator.cs:716)
PostProcessWSA.CreateVisualStudioSolution () (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWSA.cs:320)
PostProcessWinRT.Process () (at C:/buildslave/unity/build/PlatformDependent/WinRT/SharedSources/CSharp/PostProcessWinRT.cs:221)
UnityEditor.WSA.BuildPostprocessor.DoPostProcess (BuildPostProcessArgs args) (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/ExtensionModule.cs:142)
UnityEditor.WSA.BuildPostprocessor.PostProcess (BuildPostProcessArgs args) (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/ExtensionModule.cs:149)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

I'm also planning on building for MR headsets, not Hololens. The HP MR headset I ordered just shipped, so I should get it in a couple of days.  I'm hoping to get this figured out so that I can build test apps for it.

Same issue.

@joleong and @thePostFuturist, I'll be doing a build to track down the issue but it could be related to some of the known issues in the b4 beta:

Windows: [WSA] Error messages appear while/after building a project with "Unity C# projects", if the Editor folder contains a script. (918989)
Windows: [WSA] Reference rewriter fails in 2017.2 with analytics enabled (927848)
Windows: [XR][WSA] Including "Unity C# Projects" while building to Universal Windows Platform, causes builds to fail (927925)

Should have more information soon.
thanks,
-pat

@paseb Thanks. I just received my HP MR headset today. I was able to get it set up and running with the MR Portal, however when I try testing by Playing in Unity, I'm seeing only a spatial wiremesh in the headset and the game window in Unity shows the image moving around and controlled by the headset. Is there any additional documentation anywhere that covers the headset setup? I also tried making a build with just a cube in the scene with the VR settings in Unity enabled. The build was successful, however, when I try to deploy it from VS 2017 Community (local machine), I'm getting only a white background showing in the MR Portal and just a spatial mesh in the headset. Is there any additional documentation anywhere that details how to get content onto the MR headset? Another question I have is if it is possible to view what the headset is seeing in the MR Portal. I looked for settings but I don't see any. It seems to be either headset mode or simulator mode.

Hi everyone,
So here's the primary issues:

HTK labeled Dev_Unity_2017.2  is not actually for the beta version of 2017 but for Unity 5.6 MRTP 9
MRDL Windows Mixed Reality branch is also targeted for Unity 5.6 MRTP 9

There are a number of input API changes that need to be resolved between the different versions to get them to work and there are also the issues I mentioned above.  As an interim to support MR development on the beta I might create another branch specifically targeted towards supporting the current 2017.2b4 unity beta.  I'll see what I can get working.
@joleong, There should be a setting to set the headset display visual quality to "High" so that you can preview it.  You can then click the little play icon at the bottom of the MRP to get the headset mirror.
thanks,
-pat

@paseb Thanks. How can I get hold of Unity 5.6 MRTP 9? According to the documentation, it says that we can only get it from a Microsoft Account Manager.

This should all be resolved using the Unity2017.2-Dev branch.


Problem running ARGinfer

Hello, I try to run ARGinfer, but I have problems, when a put $arginfer the console show:
Traceback (most recent call last):
File "/opt/anaconda3/bin/arginfer", line 5, in
from arginfer.main import main
File "/opt/anaconda3/lib/python3.8/site-packages/arginfer/init.py", line 2, in
from arginfer.treeSequence import * # NOQA: F401, F403
File "/opt/anaconda3/lib/python3.8/site-packages/arginfer/treeSequence.py", line 8, in
import msprime
File "/opt/anaconda3/lib/python3.8/site-packages/msprime/init.py", line 36, in
from msprime.ancestry import (
File "/opt/anaconda3/lib/python3.8/site-packages/msprime/ancestry.py", line 41, in
from . import demography as demog
File "/opt/anaconda3/lib/python3.8/site-packages/msprime/demography.py", line 43, in
import demes
File "/opt/anaconda3/lib/python3.8/site-packages/demes/init.py", line 9, in
from .demes import (
File "/opt/anaconda3/lib/python3.8/site-packages/demes/demes.py", line 12, in
from .load_dump import dumps as demes_dumps
File "/opt/anaconda3/lib/python3.8/site-packages/demes/load_dump.py", line 10, in
import ruamel.yaml
ModuleNotFoundError: No module named 'ruamel'
I hope you can help me,
Thanks

Hi Luis. It looks like you're missing the ruamel package, which is needed by demes, which is needed by msprime, on which ARGInfer depends. I think the problem should go away if you install the demes dependencies: https://github.com/popsim-consortium/demes-python/tree/0.1.1


Fix documentation after change in Searchable

I liked a lot your project and running the README I found this small issue.
I am trying to see if I can add a simple "more like this" implementation.
I will let you know if I get any further in another PR.

Awesome! Thanks for the fix.