node-sqlite3 needs more hands on the deck

Hi,
If you are dependent on this package for your project, please read the following:
https://kewde.github.io/sqlite
I hope some people are willing to step up and take some responsibility off my back.
Thanks.

Hey there 👋 I have commit access. I was originally given commit to help manage issues that were being raised from people using sqlite3 with Ghost. I am always around, although I don't pay close attention to this repo.
I tried to help a bit recently, updated the readme and an appveyor build failed. I don't have access to restart jobs and I don't think I have ability to release.
I'll happily help out a little more if needed :)

i am willing to help, but can you teach me how to learn C/C++? every time i google, those search result is very old.

I agree with @anlexN , that this functionality should be merged into nodejs core. I currently have to use this because I have issues building better-sqlite3 on windows (refusing to download gigabytes of VisualStupidity, even thought better-sqlite3 is my favorite way of storing data)

@kewde can we work together with better sqlite3 team to develop one sqlite3 library?

@anlexN Joshua Wise is strapped for resources as well. I think this should be picked up by the ndoejs core dev team and forked from Joshua Wise's repo

did you review better-sqlite3 source code, it use lzz syntax, what is it? that is not C++, oh my god. i think nodejs core may not compile lzz.

Yes, I'm familiar with better-sqlite3 source, and I really don't think lzz is a problem, it's really just a source/header generator, the same effect could be done without lzz (and with many more files), and, really, we have modules like lzz-gyp, so I just can't see lzz being a problem

@stoneRdev can you teach me C/C++?

@anlexN haha I'm flattered, but no. What I can do is point you here. I taught myself C about a decade and a half ago. There's so much more resources out there today then when I started, take advantage of them, create some pet projects for yourself (servers are fun), do some open source work, and make a habit of it all. I don't have a count, but can definitely say I have over 100 professional projects involving C/CPP under my belt, and maybe 1000ish personal/pet projects as well.
If your just starting out, don't expect too much, check out some learning curves, and brace for a long ride

google search results is so old. it make me very angry.

I'm sorry, here try this.
All jokes and yokes aside, if you are serious about learning CPP, your gonna have to get used to google searches (or whatever floats your boat), and your definitely going to have to get used to being mad and frustrated. It's a long, bumpy road my friend

@ErisDS The only way to trigger builds again, is to close and open the PR again. I do not have access either.
Anyways, after a busy few months, I have some more time again and more contributors seem to have popped up.
Thanks for the support everyone.

@kewde there was no PR. I made a readme change so did a direct commit to master. If noone at mapbox is working on this anymore and they don't want contributors having access to things like appveyor, then for the future of the project it's going to need to move to it's own GitHub org.
Do you have contact with any of the original contribs?

Yes I do. cc @mapsam @springmeyer

The only reason why I would be against creating a new org is because the development infrastructure is currently funded by MapBox and if they were to decide to cut ties completely than someone else has to make the commitment for paying for these resources.

S3 bucket
AppVeyor (I think is being ran on a paid subscription?)

I wish I could provide more details about the current operating costs but I do not have access to this information.
Given knowledge of the current operating costs on a yearly basis, I would be more than happy to forecast the costs  because the usage of this repository is growing every month.

👋 @ErisDS @kewde - perhaps we could move to using free resources by:

migrating from s3 bucket -> github releases for the binaries
migrating from the paid AppVeyor account -> free account

I wish I could provide more details about the current operating costs but I do not have access to this information.

I can try to get more info here.

good idea.

Thanks for the ping, @kewde! @springmeyer let me know if I can lend a hand moving away from the s3 bucket.

Hello, I'm the author of better-sqlite3.
I'm not opposed to the idea of merging better-sqlite3 and node-sqlite3 and/or having it picked up by the Node core team (if they're even interested in such an idea, which I currently have no evidence of).
As for lzz, it's just me being lazy and not wanting to write header files when everything just gets compiled into a single translation unit anyways. But if better-sqlite3 were to become part of a larger project, or get maintained by other developers, I could, of course, just write header files and remove lzz. Besides the lack of header files (and a few special preprocessor directives), lzz is exactly the same as C++.
better-sqlite3 provides a synchronous interface for SQLite, while node-sqlite3 provides an asynchronous interface. Experience has shown that an asynchronous interface introduces many gotchas and restrictions. For example, each transaction requires its own database connection, as discovered here. Additionally, it makes custom functions and custom aggregate/window functions practically impossible, which are readily supported in better-sqlite3. That said, there are cases where an async interface is required, such as slow queries that would block the main thread. Up until recently, I recommended node-sqlite3 to people who had such cases. However, now with worker threads, I no longer see the motivation. Worker threads allow you to write synchronous transaction code with a single database connection, while taking advantage of custom functions and aggregate functions, while not blocking the main thread.
All that said, I'm happy to hear others' thoughts on the matter, and your opinions about what a unified library would ideally look like, and if you think async still has a valid use case. I'm sure I empathize with @kewde's stress in maintaining a project used by so many people (and node-sqlite3 has 5x the user base of better-sqlite3!). I've also been feeling the weight myself.

no matter what, no matter how, we need wonderful sqlite3. can we unify opinion?

I agree, I would actually like to see both api's, sync and async, just for the flexibility, but definitely I feel that sqlite should be a part of nodejs core. I feel that sqlite being native to nodejs would be a huge leap forward

PHP stable release: 7.4.9 / August 6, 2020; 27 days ago, and long time ago, php have built-in sqlite3.
now node release: 2020-09-15, Version 14.11.0 (Current) and node can call C/C++ code,
i am learning C/C++.
I am learning node source code.
So i hope sqlite3 go into nodejs very much.

having it picked up by the Node core team (if they're even interested in such an idea, which I currently have no evidence of)

@JoshuaWise to keep references in check, had a look if node core team ever considered picking up support of SQLite. They did and rejected the idea so far - https://github.com/nodejs/node/issues/29378.

having it picked up by the Node core team (if they're even interested in such an idea, which I currently have no evidence of)

@JoshuaWise to keep references in check, had a look if node core team ever considered picking up support of SQLite. They did and rejected the idea so far - https://github.com/nodejs/node/issues/29378.

Apologies for going quiet - I have been off on maternity leave for the last 4 months 😬  👶

👋 @ErisDS @kewde - perhaps we could move to using free resources by:

migrating from s3 bucket -> github releases for the binaries
migrating from the paid AppVeyor account -> free account

This sounds like a sensible plan - I think the goal should be to make this project independent. Mapbox have done an amazing job of supporting it for years and I'm incredibly grateful to them and to @springmeyer in particular, but it seems the time has come for a different approach :)
IMO what we need to do is:

immediately: figure out how to get 5.0.1 out the door https://github.com/mapbox/node-sqlite3/issues/1386
as we are able: determine a plan to make the project independent with stewardship from the existing maintainers

@JoshuaWise if you're open to merging, it sounds to me like we need to adopt some patterns from better-sqlite into node-sqlite. With the project so heavily depended upon I don't think it's a good idea do any sort of switch or rewrite, but if it's feasible to bring tried and tested new interfaces from better-sqlite into node-sqlite I think the node ecosystem would benefit from the pooled resources?
@kewde I hope you don't mind me reopening this, but it seems that closing it was a little optimistic 😬

Apologies for going quiet - I have been off on maternity leave for the last 4 months 😬  👶

👋 @ErisDS @kewde - perhaps we could move to using free resources by:

migrating from s3 bucket -> github releases for the binaries
migrating from the paid AppVeyor account -> free account

This sounds like a sensible plan - I think the goal should be to make this project independent. Mapbox have done an amazing job of supporting it for years and I'm incredibly grateful to them and to @springmeyer in particular, but it seems the time has come for a different approach :)
IMO what we need to do is:

immediately: figure out how to get 5.0.1 out the door https://github.com/mapbox/node-sqlite3/issues/1386
as we are able: determine a plan to make the project independent with stewardship from the existing maintainers

@JoshuaWise if you're open to merging, it sounds to me like we need to adopt some patterns from better-sqlite into node-sqlite. With the project so heavily depended upon I don't think it's a good idea do any sort of switch or rewrite, but if it's feasible to bring tried and tested new interfaces from better-sqlite into node-sqlite I think the node ecosystem would benefit from the pooled resources?
@kewde I hope you don't mind me reopening this, but it seems that closing it was a little optimistic 😬

@ErisDS I don't mind at all.
I've submitted a request (email) to take over the maintainership to someone who I believe has the appropriate resources to make this work. The primary reason that I decided to adopt node-sqlite3 was because we depended on it at the nonprofit where I was working. That non-profit not longer exists and thus I have recently become unemployed, therefore do not hold the capacity to continue this.
I hope they accept my offer, if that is the case, then the only thing left to relieve me of my duties would be for @springmeyer to give them access to publish npm packages, as they already hold the ability to commit code and release(?).
My journey is coming to an end though, the torch in my hand and the boulder on my shoulder will have to be passed to someone new. I'd like to personally thank all contributors and in special (@springmeyer @mtgto @mohd-akram et al).
Take care.
PS: Given that it's a bit of an unsolicited offer, I won't say to whom I requested it. I don't want them to have some kind of public pressure to accept the burden (and joy!) of running a project of this scale.

@ErisDS I don't mind at all.
I've submitted a request (email) to take over the maintainership to someone who I believe has the appropriate resources to make this work. The primary reason that I decided to adopt node-sqlite3 was because we depended on it at the nonprofit where I was working. That non-profit not longer exists and thus I have recently become unemployed, therefore do not hold the capacity to continue this.
I hope they accept my offer, if that is the case, then the only thing left to relieve me of my duties would be for @springmeyer to give them access to publish npm packages, as they already hold the ability to commit code and release(?).
My journey is coming to an end though, the torch in my hand and the boulder on my shoulder will have to be passed to someone new. I'd like to personally thank all contributors and in special (@springmeyer @mtgto @mohd-akram et al).
Take care.
PS: Given that it's a bit of an unsolicited offer, I won't say to whom I requested it. I don't want them to have some kind of public pressure to accept the burden (and joy!) of running a project of this scale.

if that is the case, then the only thing left to relieve me of my duties would be for @springmeyer to give them access to publish npm packages, as they already hold the ability to commit code and release(?).

👍

if that is the case, then the only thing left to relieve me of my duties would be for @springmeyer to give them access to publish npm packages, as they already hold the ability to commit code and release(?).

👍

Hi folks, what's the update on this? There are currently several major issues:

Outdated bundled SQLite
Vulnerabilities
Broken build on machines without python 2 (eg. macOS starting from 12.3)
Broken worker thread support

I'm willing to take over maintaining the package if there are no other volunteers.

@mohd-akram I tried to find an extensive user of this library to take over but had no response.
I don't have the necessary infrastructure in place to support the CI for this project, which is responsible for the builds and distribution.
The main blockers are:

Travis stopped providing free builds so all MacOS & Linux builds can't be published (Microsofts node-sqlite3 fork has Github actions support, can take a look at that)
I think for distribution we don't need to rely on AWS (I can't financially support S3) but I think it can be replaced with Github releases

We need to fix the CI (which publishes the release builds) and migrate the secrets to Github Actions.
I would take over this package completely but I haven't run the numbers on how much it would cost me to run this project so I'm hesitant.

Yes, it makes sense to move everything over to GitHub Actions which AFAIK is free for public repos. It's just a matter of creating releases and uploading artifacts, then having the library fetch them on install. A cursory search brings up prebuild which lets you do this. Alternatively, the prebuilt binaries can be bundled with the npm package itself (see the process via prebuildify-ci), which might be simpler and better. What cost are you referring to?

@kewde ghost have been in discussions with mapbox about taking over the repo for a long time.
Without owning the repo we don’t have the perms to fix things properly.
@springmeyer emailed me recently to say it was all happening but no movement yet.
There is a package @vscode/sqlite3 that is a drop-in replacement but no one wants to manage that long term either and also better-sqlite3.

Hey everyone 👋
I apologise, I know it's been a long period of radio silence, but we have been squirrelling away behind the scenes figuring out the best way forward and I'm pleased that we're now able to explain 😊
Since creating this incredible package, Mapbox have done an incredible job maintaining it, including hosting (at their own cost) the builds that make the sqlite3 package such a breeze to install for most environments. Ghost have had a great relationship with Dane and the Mapbox team as we've been so dependent on the library and are very grateful for all the support they've given us through their work on this repo.
Moving forward, Ghost are going to take over stewardship of the repository and package, giving particular care to ensuring that the builds continue to work as seamlessly as they have in the past. In order to facilitate this, the repository is moving under the TryGhost org so that we have all the permissions we need to maintain the build system.
We're really grateful to Mapbox, and @kewde and all the other people who've been actively involved in looking after the repo so far and we are very keen to keep working with all who wants to contribute going forward.
I'd also like to introduce you all to @daniellockyer who will be taking point on getting the build system working as smooth as silk again via GitHub actions.
We're really excited to be able to take the repo & package forward 😊


Eliminate front_end / analyzer circularity

I believe this is now fixed. There is only circularity on dev-dependencies/testing


Sensu overrides config files

Hi,
When I restart one of the containers (I am currently experimenting with the client), it overrides the config files mapped to my host when it starts up. But I would like to make changes to this config.
How to do that?

Could you give me an example of one of your configuration files and what it's doing to change them.  The only thing that it should do on startup is insert any environment variables into templated fields.

I am just using the composer file from here:
https://hub.docker.com/r/sstarcher/sensu/
And added a volume option to map client config file to host:
client:
image: sstarcher/sensu
command: client
volumes:
- /sensu/client/config:/etc/sensu/conf.d
environment:
CLIENT_NAME: alarmclient
RUNTIME_INSTALL: sstarcher/aws sstarcher/consul
links:
- rabbitmq
ports:
- '10000:3030'
So if I go to /sensu/client/config and modify the config file, after restarting the container it restores the original file.

@zoell any reason you don't edit the file directly on the host?  Also what is the file extension of the file on your host?

It's client.json.
I don't like to go to the container end edit the config there, as relaunching the container will erase all my settings. So I always map config files to the host, edit and backup from there.

Ok I'm seeing the confusion.
The docker container has it's own config file located at /etc/sensu/config.json, but you're mounting your directory to /etc/sensu/conf.d
So you actually have 2 client.json files located at

/etc/sensu/config.json
/etc/sensu/conf.d/client.json

If you don't want to use the generated file you can overwrite the config.json by changing your volumes
volumes:
  - /sensu/client/config/client.json:/etc/sensu/config.json

or by telling the container the location of your client file
environment:
  CONFIG_FILE: /etc/sensu/conf.d/client.json

I just mapped the file to /etc/sensu/config.json but it is still overwriting it with the original one. Even if I set it to an other path via the CONFIG_FILE variable, it is overwritten :(

It seems that it overwrites the IP address and it tries to bind to <IP_ADDRESS>. Just wanted to change it to <IP_ADDRESS> because this way I can not reach it outside of the container even if I expose that port.

Still not working. I tried both of your suggestion, and added a port property to the json file but it is still overwrites with the original file.

@zoell what I said above should address the "overwriting"  It's not overwriting your file your looking at the wrong file.  You have 2 separate configuration files.
If all you want to do is change the BIND address you can pass in the environment value of CLIENT_BIND

@zoell paste the content of  /etc/sensu/conf.d/client.json and /etc/sensu/config.json

It worked with the CLIENT_BIND. Thanks!

@zoell sorry ignore my comment about as it will overwrite the file
volumes:
  - /sensu/client/config/client.json:/etc/sensu/config.json


Does not receive anything

I followed the readme file and set up the configuration like below:
{
  "botToken": "my-token",
  "pollingInterval": 60000,
  "inboxName": "#inbox",
  "authorizedUsers": [],
  "addTimestamp": true,
  "invertMessagesOrder": false,
  "inboxByChat": []
}

However, I'm not able to receive anything in logseq journal after sending some text to the bot. I should mention that I once switched between two graphs, but neither of them received any messages from telegram. I noticed that an entries was added to the settings.json, after sending the messages:
  "updateId": 88218559

I also checked https://api.telegram.org/bot<token>/getUpdates, and I saw new messages immediately.
Can you help with the issue? Thanks.

Probably you need to add your username to authorizedUsers array.

An update: I can now receive the messages in Logseq.
I didn't change the settings but found that I need to restart logseq. (I deactivated the plugin and activated it but it was not effective).


Allow users to make a new classification model using existing regression head

Followup to convo with @henrykironde  and ansh.

Make a new config argument 'freeze_regression_head' that takes in maybe 'tree' or 'bird', @henrykironde this relates to our discussion that as we have more and more trained models we need a strategy to call them.
in deepforest init if config["freeze_regression_head"] is not None, load the particular release model and create a new model with 'classes' argument supplied by the user, but with the existing regression weights.
Add a test to test_main.py
Add to config documentation and add a small example to the tutorial.
This formalizes the snippet made by @ethanwhite :
https://github.com/weecology/EvergladesSpeciesModel/blob/133a6b2c2d40b425a45b62b41bfb7e40b4f82592/everglades_species.py#L174

I'll create a pull request by making a new config argument as mentioned in point 1 and can move forward accordingly.

@bw4sz, I opened a pull request as suggested by you earlier, can you please guide me on how to move forward with it?

@dassaniansh let's keep the convo here. See the link above.
The use_bird_release model has 1 class 'Bird', imagine a user wants to start from that model, but has 5 classes of birds ('flamingo', 'ibis', 'egret','duck', 'goose'). We want them to start from a model that can make predictions of 'birds', but learn new classes.
So in init, we want to load the regression head to the newly created 5 class model. I might also change the name, because its not that we care if the user freezes or not, its that we want them to start from the release model for regression weights. Maybe 'start_from_release'? @ethanwhite
model = main.deepforest(num_classes=len(train.label.unique()),label_dict=label_dict)

  # Use the backbone and regression head from the global bird detector to transfer
  # learning about bird detection and bird related features
      global_bird_detector = main.deepforest()
      global_bird_detector.use_bird_release()
      model.model.backbone.load_state_dict(global_bird_detector.model.backbone.state_dict())
      model.model.head.regression_head.load_state_dict(global_bird_detector.model.head.regression_head.state_dict())

@bw4sz So what I want to ask here is that do we know how many classes we are going to have right now or do I have to create a single training pipeline that can (will) be trained over all the databases of different classes. Another thing is that hopefully, Should I use the Retinanet model for training purposes or any other? finally, do we have any sample data right now with which I can start the training and testing of the model? What I am thinking right now is that I can start working on an individual retina net model and train it to detect the bird species for now, finalize the model and then include it in the existing pipeline. Please tell me if this will be the correct way to address this issue or not?

No model training is needed. To create a deepforest model, there is a classes argument.
https://github.com/weecology/DeepForest/blob/02aac1fd8105f18e63c321be170c2c55d82a51c6/deepforest/main.py#L23
so we know at time of model creation how many classes are desired. But there is no reason to start from scratch. So we want to give the user an opportunity to load a baseline model, which has just a single class, and then replace the classification head. The snippet above is all you would need to do as a first step.

I have tried to implement what you suggested, can you check whether I was able to understand it properly or not, Thanks.


[FLOC-2847] Release/flocker 1.1.0rc1

First part of the release, please follow http://doc-dev.clusterhq.com/gettinginvolved/infrastructure/release-process.html#pre-tag-review-process. There is WIP which will be worth putting in the NEWS / release notes when done but nothing finished and new that I thought should go into NEWS / release notes.

Note vagrant/build/tutorial — Build started - but the build passed and I accidentally pressed "Force" instead of "view".

Looks good, please proceed.


How to remove a specified Mesh in many meshes without showing it, not really deleting.

I need to hide a Mesh model on the interface. What should I do?

you can turn its visibility off:
mesh.off()
or remove it form the renderer:
# ...
plt = show(...)
plt.remove(mesh, render=True)

or interactively by clicking the mesh and pressing x.
the Mesh object won't be deleted.


Duplicate Parts and Nodes

You say in the KSP forum thread you're waiting on some updates before your next release.
Maybe you could use that opportunity to look into this: There are several parts in multiple places, and even tech node titles and descriptions that appear more than once.
You can get a rough idea by running
$ sort KSP/GameData/ETT/EngTechTree.cfg | uniq --count --repeated
ETT_duplicates.txt

Looked at the text file and see several parts that are duplicated (likely because of the specific mod part configs), but no duplicated nodes.
Keep in mind a node is identified with "id =". The parameter "parentID = " creates node dependencies and it is common to see the same node in multiple dependencies.
The reused descriptions appear to mostly be the placeholder "WIP".


Portfolio front

Added two commits to personalize my portfolio. Basically one commit adds the background and some style to the text. The other commit adds the photo itself and a little bit of style to resize it.

The third commit is a modification to the JS function we were given as starter code. Also, CSS and HTML files were modified to ensure a correct display.

Hi Andrés! Is it possible to undo the navbar commit and save that for a future PR? Otherwise, it LGTM!

I believe I managed to undo the navbar commit.

Hi Andrés! Is it possible to undo the navbar commit and save that for a future PR? Otherwise, it LGTM!

Done! I reverted the navbar commit and will include it in a different pull request.


[SPARK-49816][SQL] Should only update out-going-ref-count for referenced outer CTE relation

What changes were proposed in this pull request?

This PR fixes a long-standing reference counting bug in the rule InlineCTE. Let's look at the minimal repro:
      sql(
        """
          |WITH
          |t1 AS (SELECT 1 col),
          |t2 AS (SELECT * FROM t1)
          |SELECT * FROM t2
          |""".stripMargin).createTempView("v")
      // r1 is un-referenced, but it should not decrease the ref count of t2 inside view v.
      val df = sql(
        """
          |WITH
          |r1 AS (SELECT * FROM v),
          |r2 AS (SELECT * FROM v)
          |SELECT * FROM r2
          |""".stripMargin)

The logical plan is something like below
WithCTE
  CTEDef r1
    View v
      WithCTE
        CTEDef t1
          OneRowRelation
        CTEDef t2
          CTERef t1
        CTERef t2    // main query of the inner WithCTE
  CTEDef r2
    View v   // exactly the same as the view v above
      WithCTE
        CTEDef t1
          OneRowRelation
        CTEDef t2
          CTERef t1
        CTERef t2
  CTERef r2    // main query of the outer WithCTE

Ideally, the ref count of t1, t2 and r2 should be all 1. They will be inlined and the final plan is the OneRowRelation. However, in InlineCTE#buildCTEMap, when we traverse into CTEDef r1 and hit CTERef t2, we mistakenly update the out-going-ref-count of r1, which means that r1 references t2 and this is totally wrong. Later on, in InlineCTE#cleanCTEMap, we find that r1 is not referenced at all, so we decrease the ref count of its out-going-ref, which is t2, and the ref count of t2 becomes 0. Finally, in InlineCTE#inlineCTE, we leave the plan of t2 unchanged because its ref count is 0, and the plan of t2 contains CTERef t1. t2 is still inlined so we end up with CTERef t1 as the final plan without the WithCTE node.
Why are the changes needed?

bug fix
Does this PR introduce any user-facing change?

Yes, the query failed before and now can work
How was this patch tested?

new test
Was this patch authored or co-authored using generative AI tooling?

no

cc @viirya

Looks like it causes CTE test failures:
[error] Failed tests:
[error] 	org.apache.spark.sql.CTEInlineSuiteAEOn
[error] 	org.apache.spark.sql.CTEInlineSuiteAEOff

when we traverse into CTEDef r1 and hit CTERef t2, we mistakenly update the out-going-ref-count of r1, which means that r1 references t2 and this is totally wrong

In that example query r1 actually refernces t2 so IMO we do the right thing.
Most probably the root cause of this issue is that CTE t1 and t2 are in view v and v is used 2 times in the main query. The first and second occurance of t1 and t2 have conflicting CTE Ids (we don't generate unique CTE Ids when a view plan gets inserted into the referencing query multiple times, do we?) so both t1 and t2 get initialized in the global cteMap map 2 times with refCount = 0: https://github.com/apache/spark/blob/039fd13eacb1cef835045e3a60cebf958589e1a2/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/InlineCTE.scala#L82-L88 and the second initialization accidentally resets the refCount.

@peter-toth The reset of CTEReferenceInfo is not a big issue. Only the entire WithCTE can be duplicated, not an arbitrary part of it. It's a waste of work to reset CTEReferenceInfo and re-calculate it, but it won't change anything.

In that example query r1 actually refernces t2 so IMO we do the right thing.

It is not. Let's assume t2 is non-deterministic. The WithCTE node is self-contained and the final plan of the view v should be just the OneRowRelation. However, if we say r1 references t2, then we can't inline.

I think I get it now, thanks @cloud-fan.

@peter-toth View is not the only issue here, people can do val df = sql("WITH ...") and use this df multiple times to build a new DataFrame

thanks for the review, merging to master!

I was thinking about this issue a bit today.

Logically, a CTE relation can only reference other CTE relations that were defined before it in the same WithCTE node, or defined in the outer WithCTE, but not in the inner WithCTE.

Actually I'm still not sure this is true. If we take the example of:
WITH
  r1 AS (SELECT random()),
  r2 AS (
    WITH
      t1 AS (SELECT * FROM r1),
      t2 AS (SELECT * FROM t1)
    SELECT * FROM t2
  )
SELECT * FROM r1

The refCount of r1 is 2, but the only way to get r1 inlined is to track down the useless r2 -> t2 -> t1 -> r1 chain. So in this case r2 needs to reference t2 despite neither t2 is defined before in the same WithCTE node and nor t2 is defined in an outer WithCTE.
Interestingly this PR still works (r1 gets inlined) for the usecase and it turned out it is becuase the nested CTEs are flattened during analysis and the actual analyzed plan of the above query looks like this:
== Analyzed Logical Plan ==
rand(): double
WithCTE
:- CTERelationDef 0, false
:  +- SubqueryAlias r1
:     +- Project [random(4108587657157349701) AS rand()#0]
:        +- OneRowRelation
:- CTERelationDef 1, false
:  +- SubqueryAlias t1
:     +- Project [rand()#0]
:        +- SubqueryAlias r1
:           +- CTERelationRef 0, true, [rand()#0], false
:- CTERelationDef 2, false
:  +- SubqueryAlias t2
:     +- Project [rand()#2]
:        +- SubqueryAlias t1
:           +- CTERelationRef 1, true, [rand()#2], false
:- CTERelationDef 3, false
:  +- SubqueryAlias r2
:     +- Project [rand()#3]
:        +- SubqueryAlias t2
:           +- CTERelationRef 2, true, [rand()#3], false
+- Project [rand()#1]
   +- SubqueryAlias r1
      +- CTERelationRef 0, true, [rand()#1], false

So I believe the logic of this PR only works because of CTE flattening. But if we can suppose CTE flattening always happens on self-contained parts of the final plan then we can just revert this PR and fix the issue by a simple reset of the outerCTEId when passing it to a child of a WithCTE node: https://github.com/peter-toth/spark/commit/809b38c325f11d97aa634def6391a212c9aa5c98

Anyways, this PR works and we can keep it as it is. But https://github.com/peter-toth/spark/commit/809b38c325f11d97aa634def6391a212c9aa5c98 looks like a much simpler solution for the problem.

@peter-toth since the inner CTE can reference outer CTE relations, I think we need to propagate the outerCTEId parameter when calling buildCTEMap for the CTE main query.

It looks like we need to take care of the case when the entire WithCTE can be eliminated.

@peter-toth I double-checked this by manually building such a logical plan, and everything is fine. Let me explain what happens:

when we call buildCTEMap for the CTE definition of r2, it walks through the entire WithCTE node including all CTE definitions and the main query, so the references to r1 will be recorded in the out-going-ref-count of r2.
since r2 is not referenced, we decrease the ref count of r1 and finally inline r1.

@peter-toth the reference to r1 is not recorded as the out-going-ref-count of t1, but the outer r2, according to the current code, which I think is reasonable.

But then in the case of the following query (and again, let's suppose we have nested WithCTE nodes in manually assembed logical plan and CTE flattening doesn't happen):
WITH
  r1 AS (SELECT random()),
  r2 AS (
    WITH
      t1 AS (SELECT * FROM r1),
      t2 AS (SELECT * FROM r1)
    SELECT * FROM t2
  )
SELECT * FROM r2

the refCount of r1 is 2
and r1 is recorded 2 times as the out-going-ref-count of r2
(and r1 is not recorded as the out-going-ref-count of t1 or t2)

so cleanCTEMap will not clean anything and r1 won't be inlined.

IMO, if we can't rely on the fact that currently connected nested WithCTE nodes get flattened and so the remaining WithCTE nodes are the edges of self-contained parts (because in that case we could clear outerCTEId when we encounter a WithCTE node) then one option could be to fix the conflicting CTE ids and keep using a global map in cleanCTEMap().
https://github.com/peter-toth/spark/commit/7716dbfd7bca729f481a6bbf811fbcd30925de7c is a change whose parent reverts this PR and the commit fixes the conflicting CTE ids instead.

Now I'm convinced. For the conflicting CTE IDs, shall we just accept it and accumulate the ref count?
For my example
WithCTE
  CTEDef r1
    View v
      WithCTE
        CTEDef t1
          OneRowRelation
        CTEDef t2
          CTERef t1
        CTERef t2    // main query of the inner WithCTE
  CTEDef r2
    View v   // exactly the same as the view v above
      WithCTE
        CTEDef t1
          OneRowRelation
        CTEDef t2
          CTERef t1
        CTERef t2
  CTERef r2    // main query of the outer WithCTE

The ref count for t1 and t2 should be both 2. When we remove r1, we decrease their ref count by 1, then we can still produce the right plan.

Yeah, but I don't think we can treat the conflicting CTEs as they are the same. This pseodo plan should produce 2 different random rows:
WithCTE
  CTEDef r1
    View v
      WithCTE
        CTEDef t1
          Random()
        CTEDef t2
          CTERef t1
        CTERef t2
  CTEDef r2
    View v
      WithCTE
        CTEDef t1
          Random()
        CTEDef t2
          CTERef t1
        CTERef t2
  CTERef r2
  CTERef r1 Union CTERef r2

That's why I'm leaning towards the idea of generating new ids if there is a conflict.

Or maybe we could clean/inline WithCTE nodes locally and propagate up the remaining outer references in a bottom-up manner.

It seems the clearest solution is to do ref count for each WithCTE individually. I think generating new IDs is one way to do it, and another idea is to introduce ref counting context for each WithCTE.

Yeah, if you are Ok with generating new Ids then I can open a PR from https://github.com/peter-toth/spark/commit/7716dbfd7bca729f481a6bbf811fbcd30925de7c.

Yes please, we can discuss more on your PR later.

Opened a PR here: https://github.com/apache/spark/pull/48429


en_GB.po and ja.euc-jp.po encoding

en_GB.po:
"Content-Type: text/plain; charset=ISO_8859-1\n"

My text editor says its "UTF-8".
ja.euc-jp.po:
"Content-Type: text/plain; charset=euc-jp\n"

My text editor says its "ANSI".

en_GB.po:
"Content-Type: text/plain; charset=ISO_8859-1\n"

My text editor says its "UTF-8".

It's a 7 bit file, thus both are true.

ja.euc-jp.po:
"Content-Type: text/plain; charset=euc-jp\n"

My text editor says its "ANSI".

That's not an encoding name.
--
hundred-and-one symptoms of being an internet addict:
89. In addition to your e-mail address being on your business
cards you even have your own domain.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Depending on how the charset is detected and on which subset of that charset is in use in the file, is is possible to see something other than what the author intended. For instance in Vim with 'fileencodings' (plural) set to ucs-bom,utf-8,latin1 which is typical for Western locales:

Unicode files with BOM are correctly detected
UTF-8 files are correctly detected even without a BOM
Files containing only the characters of 7-bit US-ASCII will be detected as UTF-8 regardless of whether they were meant to be UTF-8, Latin1 or any other ISO 8859 charset, because all those charsets represent the 128 characters of US-ASCII the same way.
Anything else will be detected as Latin1.

The first case is perfect, thanks to the BOM. The second case is also perfect. The third case doesn't harm as long as you don't use anything higher than 0x7F aka U+007F in the file's text. The fourth case is problematic for anything other than Latin1. If you know that a certain file is in euc-jp, you can open it correctly (assuming 'encoding' is set to UTF-8) by typing
:e ++enc=euc-jp /path/to/filename.ext

Similarly for any other charset. Also, if you have a file containing only the 128 characters of US-ASCII (or a subset of them) but you want to add in it some characters in the range 0x80 to 0xFF for some ISO 8859 encoding and save it as that particular encoding, you can read it with the appropriate ++enc (which will set fileencoding' (singular) the way you want it), but if it is anything other than Latin1 aka ISO_8859-1, you wil have to repeat the ++enc modifier at every later read of the same file.
With that same value of 'fileencodings' (plural) mentioned above, there is a trick to make sure that a certain file will always be read as Latin1 and not as UTF-8: place in it in advance some non-ASCII bytes, for instance by underlining the main title with "divided by" signs (÷, 0xF7, digraph -: i.e. dash-colon), then make sure to save it as Latin1 (e.g. with :w ++enc=latin1 followed by :r so that :setlocal fenc? will tell you that it is indeed Latin1.
Best regards,
Tony.

ja.euc-jp.po:
"Content-Type: text/plain; charset=euc-jp\n"
My text editor says its "ANSI".

It's obvious that your editor doesn't understand Japanese encodings at all.
I have to say that your setting of your editor is totally wrong for editing those files.

I just checked them to see if i could find some errors or stuff like that.


keep the last tab open and avoid quitting full window with ?

Could you please tell me how to configure Vimari so that I can close last tab and open a new tab in the same time when I hit "x"?
Also, how to configure to avoid quitting full window with ?
Thank you for your awesome extensions.

karbinet may fix it


Bump node-gyp to ^5.0.5 or ^6.0.0 in order to support python3

Hello @Unitech, thanks for this package!
Python2 is deprecated since 1.1.2020, so I tried to build my project only with python3. However it does not work, since node-runtime-stats uses an old version of node-gyp as dependency. It would be awesome if you could update node-gyp to either ^5.0.5 or ^6.0.0!

Any update?


Upgrading Tensorflow to 1.15.4 in tf.txt

What problem are we trying to solve?:
There are many security risks around TensorFlow version 1.15.2. These issues have been fixed in version 1.15.4 and newer versions. Newer versions have also been optimized better than 1.15.2.

How can we solve it?:
Upgrading the TensorFlow to 1.15.4 in the deeppavlov>>requirements>>tf.txt from tensorflow==1.15.2 to tensorflow==1.15.4.

Are there other issues that block this solution?:
Missing out on the optimization and security enhancements.

Any important aspect to consider?:
Making sure that upgrading the TensorFlow to 1.15.4 causes no issue in syntaxes and yields the same results as 1.15.2.

Idea is cool and good. We have some plans to make TF upgrades down the road for the next year, but not as fast as you might think. However, if you think you could try to work on some of this stuff, well, we'd be thrilled to help!

Yes. I can surely contribute. I will upgrade it to TensorFlow 1.15.4 and check for any compatibility issue. Most likely, there won't be an issue with .4 version. I Will update soon.

Sounds fantastic! @ignatov.fedor<EMAIL_ADDRESS>join the discussion if needed! )
Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10
From<EMAIL_ADDRESS>Sent: Monday, November 16, 2020 5:15 PM
To<EMAIL_ADDRESS>Cc: Daniel<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: Re: [deepmipt/DeepPavlov] Upgrading Tensorflow to 1.15.4 in tf.txt (#1341)
Yes. I can surely contribute. I will upgrade it to TensorFlow 1.15.4 and check for any compatibility issue. Most likely, there won't be an issue with .4 version. I will update soon.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/deepmipt/DeepPavlov/issues/1341#issuecomment-728088820, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABIFFK2ZR45PFNTBLNWTT2DSQEXX7ANCNFSM4TVEDZXQ.

@Rajmehta123 Hey )
Was wondering you've had any luck with trying to do this updating?

@moryshka Hey. Yes, I have tested on a few use cases and they don't create any problems. Looking at what TF has changed in 1.15.4, there is nothing with syntax or functionality. The release is for the fixes for bugs.
Fixes an undefined behavior causing a segfault in tf.raw_ops.Switch (CVE-2020-15190)
Fixes three vulnerabilities in conversion to DLPack format (CVE-2020-15191, CVE-2020-15192, CVE-2020-15193)
Fixes two vulnerabilities in SparseFillEmptyRowsGrad (CVE-2020-15194, CVE-2020-15195)
Fixes an integer truncation vulnerability in code using the work sharder API (CVE-2020-15202)
Fixes a format string vulnerability in tf.strings.as_string (CVE-2020-15203)
Fixes segfault raised by calling session-only ops in eager mode (CVE-2020-15204)
Fixes data leak and potential ASLR violation from tf.raw_ops.StringNGrams (CVE-2020-15205)
Fixes segfaults caused by incomplete SavedModel validation (CVE-2020-15206)
Fixes a data corruption due to a bug in negative indexing support in TFLite (CVE-2020-15207)
Fixes a data corruption due to dimension mismatch in TFLite (CVE-2020-15208)
Fixes several vulnerabilities in TFLite saved model format (CVE-2020-15209, CVE-2020-15210, CVE-2020-15211)
Updates sqlite3 to 3.33.00 to handle CVE-2020-9327, CVE-2020-11655, CVE-2020-11656, CVE-2020-13434, CVE-2020-13435, CVE-2020-13630, CVE-2020-13631, CVE-2020-13871, and CVE-2020-15358.
Fixes #41630 by including max_seq_length in CuDNN descriptor cache key
Pins numpy to 1.18.5 to prevent ABI breakage when compiling code that uses both NumPy and TensorFlow headers.

So, this means we can migrate the whole thing to  1.15.4?
Get Outlook for Androidhttps://aka.ms/ghei36

From: Rajmehta123<EMAIL_ADDRESS>Sent: Friday, December 11, 2020 7:04:54 PM
To: deepmipt/DeepPavlov<EMAIL_ADDRESS>Cc: Daniel Kornev<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [deepmipt/DeepPavlov] Upgrading Tensorflow to 1.15.4 in tf.txt (#1341)
@moryshkahttps://github.com/moryshka Hey. Yes, I have tested on a few use cases and they don't create any problems. Looking at what TF has changed in 1.15.4, there is nothing with syntax or functionality. The release is for the fixes for bugs.
Fixes an undefined behavior causing a segfault in tf.raw_ops.Switch (CVE-2020-15190https://github.com/advisories/GHSA-4g9f-63rx-5cw4)
Fixes three vulnerabilities in conversion to DLPack format (CVE-2020-15191https://github.com/advisories/GHSA-q8qj-fc9q-cphr, CVE-2020-15192https://github.com/advisories/GHSA-8fxw-76px-3rxv, CVE-2020-15193https://github.com/advisories/GHSA-rjjg-hgv6-h69v)
Fixes two vulnerabilities in SparseFillEmptyRowsGrad (CVE-2020-15194https://github.com/advisories/GHSA-9mqp-7v2h-2382, CVE-2020-15195https://github.com/advisories/GHSA-63xm-rx5p-xvqr)
Fixes an integer truncation vulnerability in code using the work sharder API (CVE-2020-15202https://github.com/advisories/GHSA-h6fg-mjxg-hqq4)
Fixes a format string vulnerability in tf.strings.as_string (CVE-2020-15203https://github.com/advisories/GHSA-xmq7-7fxm-rr79)
Fixes segfault raised by calling session-only ops in eager mode (CVE-2020-15204https://github.com/advisories/GHSA-q8gv-q7wr-9jf8)
Fixes data leak and potential ASLR violation from tf.raw_ops.StringNGrams (CVE-2020-15205https://github.com/advisories/GHSA-g7p5-5759-qv46)
Fixes segfaults caused by incomplete SavedModel validation (CVE-2020-15206https://github.com/advisories/GHSA-w5gh-2wr2-pm6g)
Fixes a data corruption due to a bug in negative indexing support in TFLite (CVE-2020-15207https://github.com/advisories/GHSA-q4qf-3fc6-8x34)
Fixes a data corruption due to dimension mismatch in TFLite (CVE-2020-15208https://github.com/advisories/GHSA-mxjj-953w-2c2v)
Fixes several vulnerabilities in TFLite saved model format (CVE-2020-15209https://github.com/advisories/GHSA-qh32-6jjc-qprm, CVE-2020-15210https://github.com/advisories/GHSA-x9j7-x98r-r4w2, CVE-2020-15211https://github.com/advisories/GHSA-cvpc-8phh-8f45)
Updates sqlite3 to 3.33.00 to handle CVE-2020-9327, CVE-2020-11655, CVE-2020-11656, CVE-2020-13434, CVE-2020-13435, CVE-2020-13630, CVE-2020-13631, CVE-2020-13871, and CVE-2020-15358.
Fixes #41630 by including max_seq_length in CuDNN descriptor cache key
Pins numpy to 1.18.5 to prevent ABI breakage when compiling code that uses both NumPy and TensorFlow headers.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/deepmipt/DeepPavlov/issues/1341#issuecomment-743279962, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABIFFK6EUZOOOPFDKMZ54ITSUI7KNANCNFSM4TVEDZXQ.

@IgnatovFedor

@danielkornev @IgnatovFedor Any update on the upgrade?

@danielkornev @IgnatovFedor Any update on the upgrade?

We shipped it in 0.14.

We shipped it in 0.14.

Yes just realized. Thanks

Yes just realized. Thanks

Oh, thank you! Your help was instrumental in driving this update!
Get Outlook for Androidhttps://aka.ms/ghei36

From: Rajmehta123<EMAIL_ADDRESS>Sent: Friday, January 22, 2021 10:19:50 PM
To: deepmipt/DeepPavlov<EMAIL_ADDRESS>Cc: Daniel Kornev<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [deepmipt/DeepPavlov] Upgrading Tensorflow to 1.15.4 in tf.txt (#1341)
Yes just realized. Thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/deepmipt/DeepPavlov/issues/1341#issuecomment-765630975, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABIFFK7FTTGSPRAON7LSS5DS3HFVNANCNFSM4TVEDZXQ.

Oh, thank you! Your help was instrumental in driving this update!
Get Outlook for Androidhttps://aka.ms/ghei36

From: Rajmehta123<EMAIL_ADDRESS>Sent: Friday, January 22, 2021 10:19:50 PM
To: deepmipt/DeepPavlov<EMAIL_ADDRESS>Cc: Daniel Kornev<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [deepmipt/DeepPavlov] Upgrading Tensorflow to 1.15.4 in tf.txt (#1341)
Yes just realized. Thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/deepmipt/DeepPavlov/issues/1341#issuecomment-765630975, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABIFFK7FTTGSPRAON7LSS5DS3HFVNANCNFSM4TVEDZXQ.


Update labels in setup modify interactive cli

Resolves https://github.com/wso2-cellery/sdk/issues/566

Codecov Report

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

@@           Coverage Diff           @@
##           master     #567   +/-   ##
=======================================
  Coverage   64.48%   64.48%
=======================================
  Files          34       34
  Lines        1177     1177
  Branches       98       98
=======================================
  Hits          759      759
  Misses        365      365
  Partials       53       53

Continue to review full report at Codecov.

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


Migration 3 to 4: Update database schema (WasDeleted column)

Affected Version
SilverStripe 4.11
Description
After updating SilverStripe 3 to 4, very close to finishing the process,
there is a database query error because of a missing column:
Unknown column 'SiteTree_Versions.WasDeleted' in 'field list
A legacy.yml with the new class (namespace) mappings was also added.
Steps to Reproduce
Follow the 3 to 4 upgrade guide https://docs.silverstripe.org/en/4/upgrading/upgrading_project/, until the last steps and try to load the site with an existing 3.x database.
Is there a task or script that can add these missing columns to the database? Can I add them myself? Am I missing something?

A silly question, but are you running /dev/build before trying to load the site?
Are you upgrading through minor versions of 4.x or jumping straight from 3.x to 4.11?
I would venture a guess that this might be a process issue or similar rather than a problem with the framework since there have been 10s, probably 100s of sites upgraded from 3.x to 4.x and this issue hasn't come up before.

Not having ran /dev/build before (re)loading the site. I have everything under git so I can revert if this caused file changes, but I hadn't observed any after the reload. Step 11 is basically the step where I am right now. The guide notes in prior steps that the site should already load - at least partially.
I am updating from latest 3.x to 4.x, yes. Should I first update to lowest 4.x and then update from there to latest 4.x? If so, this should be more strongly mentioned in the upgrade guide.

When installing new or updating existing composer dependencies, ultimately changing versions of silverstripe modules, you always need to run /dev/build flush= (from the CLI) or visit /dev/build?flush in the browser to have the code make all the necessary changes to the database. It is not expected 4.x code will work with 3.x database without that.
With 3.x to 4.x migration, it's up to you how you want to proceed, but in the early versions 4.0, 4.1 up to 4.4 there were some changes around file versioning, so I would go probably 3.x to 4.4 one by one while reading and following all the 4.x minor versions' changelogs. There are migration steps that need to be taken. Then from 4.4 should be safe to go to 4.11. That is just from experience.
The answer to a missing column usually is to run /dev/build while flushing the config manifest.
Give that a go. If that doesn't work, use one of the community support channels like Slack or the forum.
For now I'll close the issue as it's unlikely a framework bug.


False positives in some cases

I'm getting a false positive in one of my packages. I tried to quickly make a small reproduction of it but failed, so I'm not sure what relationship exactly triggers it. However,
$ go get github.com/syncthing/syncthing
$ cd $GOPATH/src/github.com/syncthing/syncthing/lib/model
$ unused .
/Users/jb/src/github.com/syncthing/syncthing/lib/model/folderstate.go:83:24: getState is unused
/Users/jb/src/github.com/syncthing/syncthing/lib/model/folderstate.go:115:24: clearError is unused
/Users/jb/src/github.com/syncthing/syncthing/lib/model/model.go:306:7: remoteAddrer is unused

Remove the getState() method and:
$ go build
# github.com/syncthing/syncthing/lib/model
./model.go:167: cannot use p (type *rwFolder) as type service in assignment:
	*rwFolder does not implement service (missing getState method)
./model.go:238: cannot use s (type *roFolder) as type service in assignment:
	*roFolder does not implement service (missing getState method)

The type gets embedded and then passed through an interface, but that alone doesn't seem enough to trigger it when I tried reproducing in a smaller case...

Can you check if this is a duplicate of #7?

That is, does your case look like this minimal example?
package pkg

type I interface {
	f1()
	f2()
}

type t1 struct{}
type T2 struct{ t1 }

func (t1) f1() {}
func (T2) f2() {}

func Fn() {
	var v T2
	_ = v.t1
}

It sounds very similar to #7, yes.

Alright. I'll close this issue in favour of #7 then. I should have a fix ready soonish.


feat: support runtime delay functions

Status

READY
Description
Add support for generating mock delay times at runtime.
Fixes: #1279
Todos

[ ] Tests
[ ] Documentation
[ ] Changelog Entry (unreleased)

Steps to Test or Reproduce

In root run yarn build.
cd samples/react-query/basic.
Open orval.config.ts and replace mock: true, with:

      mock: {
        type: 'msw',
        delay: () => (process.env.NODE_ENV === 'test' ? 10 : 1000),
        delayCalcRuntime: true,
      },

Run yarn generate-api.
Open src/api/endpoints/petstoreFromFileSpecWithTransformer.msw.ts.
See that the delays are now await delay((() => (process.env.NODE_ENV === 'test' ? 10 : 1e3))());

Thank you for made this PR. I'll review it.

@melloware
I think it's good, but could you review it again?


feat: added the no-goto-without-base rule

Closes #675

Hi,
this is basically done from my side. However:

I would really like a review from somebody who knows SvelteKit better than me
There are probably some exceptions, when you don't want this rule to trigger - if you know of any, I'd add them in, but I could think only of absolute URLs (but since goto is not for external URLs, maybe absolute URLs should be prohibited altogether?). They can be added later of course or put behind some config flag.

Thank you for this PR! But, I'm not familiar with creating web apps with SvelteKit.
@baseballyama Can you check if what the rules report useful or not?

Added goto interface improvements in kit 3.0 milestones.
https://github.com/sveltejs/kit/issues/11803
Until then, I think this rule is useful but I think it not plugin:svelte/recommended rule because part of users doesn't use basepath.

Hi,
thanks, I thought about why SvelteKit just doesn't do this by default, but it feels like a quite big breaking change, so I didn't propose it to kit directly, maybe I should've...
I don't think this needs to be recommended, but actually if you don't use basepath, prepending it is still correct in the sense that it doesn't break anything and enables you to use a basepath down the line. But if this is something that would be added to SvelteKit itself down the line, it doesn't really make sense to me to make this recommended either...

In my opinion, anyway, ESLint allows users to set rules freely, so as long as the rules are not annoying, they can be merged.
I will check this PR will in this weekend. (Sorry for the delay but I’m bit busy for my work now🙏)

Maybe this rule should also check `? What do you think?

Maybe this rule should also check <a href="...">? What do you think?

Well, that's a little bit more complicated. That is because as per the SvelteKit docs, you should use goto() for internal navigation (where it always makes sense to check for the base path). <a> links can be use for both internal as well as external navigation. We could, however, maybe check all <a> elements and report missing base iff the path is relative...


Different time in website than actual log?

There is different time in Larabug app exceptions view than actual log file?
Exception in log file 2022-04-21 17:54:30 but in Larabug app it shows as 2022-04-21 14:54:30
Am I missing something?

You mean the exception in log file in your app? Versus the larabug.com website?

Hi!
Yes correct.
On 26. Apr 2022, 11.17 +0300, Dennis Smink @.***>, wrote:

You mean the exception in log file in your app? Versus the larabug.com website?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

@markoman78 I guess this has to do with your timezone


Not all constituents of type 'Resolver<...>' are callable.

Describe the bug
I'm in the middle of upgrading from 0.8.2 to 1.8.3 and I'm getting some type issues trying to call a resolver from another resolver.
I'm typing my 'sub' resolvers (which are merged with merge-graphql-schemas) with the generated Resolvers<Context>. When I want to resolve a field in Resolver A with Resolver B, I get the following TS error when trying to call Resolver B.
This expression is not callable.
  Not all constituents of type 'Resolver<ResolverTypeWrapper<B>, {}, SessionContext, RequireFields<QueryBArgs, "id">>' are callable.
    Type 'StitchingResolver<ResolverTypeWrapper<B>, {}, SessionContext, RequireFields<QueryBArgs, "id">>' has no call signatures.

I'm guessing that because the Resolver type is an enum of StitchingResolver and ResolverFn and only the latter is callable.
To Reproduce
Steps to reproduce the behavior:

My resolvers:
In account.resolvers.ts

export const accountResolver: Resolvers<SessionContext> = {
    Query: {
        account: async (root, args, context) => {      /** Returns type Account **/
            const apiService = new ApiService(context.apiClient);
            return apiService.getAccount(args);
        },
    },
    Account: {
        client: async (account, args, context, info) => {
            return clientResolvers.Query.client(      /** Error: This expression is not callable. **/
                account,
                { id: account.clientId },
                context,
                info,
            );
        },
    },
};

In client.resolvers.ts
export const clientResolver: Resolvers<SessionContext> = {
    Query: {
        client: async (root, args, context) => {
            const apiService = new ApiService(context.apiClient);
            return apiService.getClient(args);
        },
    },
};

Expected behavior
To be able to call Resolver type
Environment:

OS: MacOS 10.14.6
@graphql-codegen/1.8.3:
NodeJS: 10.16

Additional context
I was originally able to achieve this when on v0.8.2 by typing my resolvers with the following
type clientResolversType = {
    Query: QueryResolvers.Resolvers<SessionContext, any>;
};

type ClientResolversType = {
    Query: QueryResolvers.Resolvers<SessionContext, any>;
    Mutation: MutationResolvers.Resolvers<SessionContext, any>;
    Client: ClientResolvers.Resolvers<SessionContext, Client>;
};

const clientResolver: ClientResolversType = {
    ...
}

My work around at the moment is to explicitly type the resolver like so
    Account: {
        client: async (account, args, context, info) => {
            return (clientResolvers.Query.client as ResolverFn<
                ResolversTypes['Client'],
                {},
                SessionContext,
                QueryClientArgs
            >)(
                account,
                { id: account.clientId },
                context,
                info,
            );
        },
    },

@raphrueda resolvers.<TypeName>.<FieldName> may not be always a function. So typings are correct. It'd better to export reused business logic as a seperate function.

Right, so there would be no way to explicitly call a resolver function typed as Resolver<Context>? It was convenient having the arguments of the nested resolver typed.

@raphrueda If you are not really using schema stitching, set noSchemaStitching: true in your config file.

Closing. @raphrueda let me know if you need any help with that.


Update intro to SSRF.

https://medium.com/swlh/intro-to-ssrf-beb35857771f

Thank you, the link is now updated.


PhotoPicker not binding data

PhotoPicker not binding data
func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) {
isPresented.wrappedValue = false
}

This is extremely unclear. I have no idea what you're suggesting or referencing here I'm afraid. Please add a lot more detail so I can understand the "issue"?

This is extremely unclear. I have no idea what you're suggesting or referencing here I'm afraid. Please add a lot more detail so I can understand the "issue"?

How to get the corresponding Photo or Video Data through PhotoPicker, there is no corresponding data binding here

I see, in your first comment you referenced internal details which is not relevant to your question.
The original API is completion based, so obvs you don't see the binding being setup there. But also that's internal and you cannot use that anyway.
Rather you want to use the modifier on your SwiftUI view similar to the following:
struct PhotosSelector: View {
    @State var selectedItems: [PhotosPickerItem] = []

    var body: some View {
        Backport.PhotosPicker(
            selection: $selectedItems,
            matching: .images
        ) {
            Text("Select Multiple Photos")
        }
    }
}

You can also use selection: Backport.PhotoPickerItem? to do single selection.
PhotosPicker (official and backport) are essentially just wrappers around a Button. So when a user taps this view, the picker is presented and the selected items are provided via the binding you pass in.

struct PhotosDemoView: View {
@State private var selection: [Backport<Any>.PhotosPickerItem] = []

@State var image: UIImage?

var body: some View {
    List {

        Backport.PhotosPicker(selection: $selection,
                              maxSelectionCount: 3,
                              matching: .any(of: [.images])) {
            Label("Choose Photos", systemImage: "photo")
        }

        if let image {
            Image(uiImage: image)
        }

    }
    .navigationTitle("Photos Picker")
    .onChange(of: selection) { _ in
        Task{
            if let item = selection.first,
               let date = try? await item.loadTransferable(type: Data.self) {
                image = UIImage(data: date)
            }
        }
    }
}

}
selection is no changes, is not work

I guess the photo data selected by PHPickerViewController is not binding to PhotosPickerItem

Hmmm this was implemented some time ago, I'm kinda surprised if this isn't working and it's only being reported now. I guess no one is using it, but I'm not 100%. I'll need to re-test and work out what's going on – but I do not have time atm so this may take a couple weeks I'm afraid.

@jackiehu can you confirm what iOS version you're testing against? There are 2 implementations included, one for iOS 13 and the other for iOS 14+

Ouch, I apologise but I think a WIP was accidentally merged into main and then released prematurely.
I will pull this immediately as this is not at all complete. All the API pieces are there, but a lot of the implementation still has fatalError() for example as placeholders.
I will need to revisit this and re-release at a later date, I'm sorry I have no idea how this happened. My bad 🤦♂

Not at least for a couple of weeks. I'm working 2 other contracts atm and then next week I'm on holiday for a week. So Sep is the earliest I'll have a chance to revisit this sorry.

My copy，and use now
https://github.com/jackiehu/Brick_SwiftUI/tree/main/Sources/Tools/PhotoPicker


Example cleanup - remove duplicate call to bindBuffer in Image Processing section

Reading the examples from https://webgl2fundamentals.org/webgl/lessons/webgl-image-processing.html I noticed that  bindBuffer(gl.ARRAY_BUFFER, positionBuffer) is called in two spots:

before gl.vertexAttribPointer(...)
before setRectangle(...)

This PR "merges" the second bindBuffer() with the first one.
Seems to work but I'm still learning WebGL so maybe I missed something obvious.

thanks for the PR
That article is old (one of the first 5 articles written) and I would probably change it if I was to re-write it again but ... It's not wrong the way it is. Since it's image processing the image might change size later and you'd either need to update the position buffer for the new image size, OR, you'd need to make your shaders take parameters so you could update some uniforms to help with the new image size.
Doing it based on uniforms (and most likely using matrices) would be the more common way to do this but the article assumes the user doesn't know anything about matrices so the position data is updated just before drawing.


does not open for me

after installing i clicked on the desktop shortcut but does not open,it just does nothing.

What OS are you on? And how did you install?

windows 7 after installation got an error saying api-ms-core-path-l1-1-0.dll missing downloade the file,now it doesnt show that error,now doesnt react at all when i click the shortcut on desktop

Unfortunately, Buzz requires Windows 8 or newer to run.


Allow Only Admin user to delete comments [BackEnd]

DESCRIPTION
N/A
USER STORY
As the
User Admin
I want to
be the ONLY one able to delete a comment on a campaigns page
so that
non-admin users would not be able to do this
Possible Scenarios
N/A
Required Permissions
all users: should be able to view comments
admin users: should be able to view and delete comments
no users: should be able to edit comments.
Acceptance Criteria

[ ] All users can successfully view comments on campaigns page
[ ] Admin user can successfully delete selected comments on campaigns page
[ ] No user is able to edit comments on a campaigns page.
[ ] User can see option to, and leave a team they no longer wish to be a part of.

UX Design
Insert figma link or link to design
Technical Considerations
Insert technical considerations

@BradHN1 This feature currently works by allowing only admins and the author of a comment to delete them.
This ticket says no user apart from Admin users should be allowed to delete comments.
This will not allow authors of comments who are not admins to delete comments they make.
We're considering a situation where someone makes a comment and wants to delete that comment.
Should we still restrict it to admins only?

If possible, users should be able to delete their own comments.  Otherwise a user would need to contact an admin to remove a comment that they had made, which is a burden on both parties.
We should try to be consistent about this throughout the community platform as well, at least allowing users to edit user submitted material.


made a simple readme

You needed a readme - I took what you had on spigot forums and added some more stuff to it 😄
Good luck with the plugin - if you need any help please feel free to message me on discord 😉

Thanks for reminding me 😄 Permissions are still WIP though. I'll work on them soon 😃


we should support action: get

When writing automation for kubernetes, we often need the ability to grab the value of a field in a resource and use that value in another resource. Applier should support this. Here are a few examples I can think of:
Grab Cluster ID to feed into resources.
cluster_id=$(oc get machinesets -n openshift-machine-api -o jsonpath='{.items[0].metadata.labels.machine\.openshift\.io\/cluster-api-cluster}')
oc process -f machineautoscaler-template.yaml -p CLUSTER_ID=${cluster_id} | oc apply -f -

Copy a token between clusters
token=$(oc get secret $(oc get sa builder -o jsonpath='{.secrets[0].name}') -o jsonpath='{.data.token}')
oc process -f secret-template.yaml -p TOKEN=${token} | oc apply -f-

@etsauer for your two examples, what do you think about an applier inventory like the following? Does this align with what you were thinking?
openshift_cluster_content:
- object: Machine Autoscaler
  content:
  - name: Fetch cluster id from running cluster
    action: get
    get_vars:
      kind: machinesets
      namespace: openshift-machine-api
      jsonpath: '{.items[0].metadata.labels.machine\.openshift\.io\/cluster-api-cluster}'
  - name: Apply machine autoscaler template
    template: "http://some-url.com/machineautoscaler-template.yaml"
    namespace: openshift-machine-api
    params_from_vars:
      CLUSTER_ID: "{{ get_output_machinesets_openshift_machine_api }}"
- object: Fetch and apply secret / token
  content:
  - name: Fetch builder SA secret name
    action: get
    get_vars:
      kind: sa
      name: builder
      namespace: somenamespace
      jsonpath: '{.secrets[0].name}'
  - name: Fetch secret content based on secret name
    action: get
    get_vars:
      kind: secret
      namespace: somenamespace
      name: "{{ get_output_sa_builder_somenamespace }}"
      jsonpath: '{.data.token}'
  - name: Apply secret template
    template: "http://some-url.com/secret-template.yaml"
    params_from_vars:
      TOKEN: "{{ get_output_secret_somenamespace }}"

@oybed yes that looks perfect

Related Ansible Galaxy role to "get" data:
https://galaxy.ansible.com/oybed/openshift_get_resources


fix: remove unneeded buffer number argument(c-w c-h)

Fixes the same error as #299 but for ctrl-h and ctrl-w.

thank


Adding a app to Sharepoint - Error: Request body larger than maxBodyLength limit

I am using Azure Pipeline to upload the SharePoint application(.sppkg file) to app catalog and deploy it in the app catalog. It was working fine till the file size was within 10MB. now with  just 11MB app file, m365 cli fails with the below error:
m365 spo app add -p $(sppkg file) --overwrite --scope sitecollection --appCatalogUrl $(site url)
Error: Request body larger than maxBodyLength limit
I got the same error when tried from my local machine also.
Pipeline agent:
windows-2019
node v10.x
m365 CLI v4.2.0
local pc:
windows-10
node v16.3.0
m365 CLI v4.2.0

Thank you reporting the issue and sorry for the trouble. We'll investigate it asap.

@suren-ms I wonder if this could be a limitation of the underlying SharePoint API that we're using to upload the file. Could you see if you can reproduce the issue by calling the REST API directly? https://docs.microsoft.com/en-us/sharepoint/dev/apis/alm-api-for-spfx-add-ins?tabs=sprest#add-solution-package

@suren-ms if you can reproduce the issue by calling the raw APIs, then the next would be to create an issue at https://github.com/SharePoint/sp-dev-docs/issues with repro steps where it will be triaged by SharePoint engineering.

@waldekmastykarz  through the REST API we can upload and deploy the sppkg fille. so does this mean the issue is with m365 cli alone ?

Could you share the repro steps that you've used with us?

Issue
Unable to upload SharePoint SPFx app (.sppkg) file to Site Collection App catalog for file size greater than 10MB using M365 CLI
Environment
SharePoint Online
Development model
SharePoint Framework (SPFx)
Steps to reproduce

Create a SP Site Collection
Create App catalog within the Site collection (Refer: https://docs.microsoft.com/en-us/powershell/module/sharepoint-online/add-spositecollectionappcatalog?view=sharepoint-ps)
Create a SPFx solution which gives out the app package (.sppkg) file with size greater than 10MB
Try to upload the .sppkg file to the site collection app catalog created eralier using M365 CLI commands (Refer: https://pnp.github.io/cli-microsoft365/cmd/spo/app/app-add/)
m365 spo app add -p $(sppkg-file) --overwrite --scope sitecollection --appCatalogUrl $(site-url)

What we tried

Able to upload the app (>10MB) file directly to app catalog in web
Able to upload the app (>10MB) file to app catalog using REST API (Refer: https://docs.microsoft.com/en-us/sharepoint/dev/apis/alm-api-for-spfx-add-ins?tabs=sprest#add-solution-package)

windows-10
node v16.3.0
m365 CLI v4.2.0

@suren-ms thank you for the additional information. Could you share with us additional information about how you executed the raw REST call so that we can try it too and use for verifying our solution?

We used Postman with following details for uploading the file using REST API method:
var settings = {
"url": "<site_collection_url>/_api/web/sitecollectionappcatalog/Add(overwrite=true, url='appfile.sppkg')",
"method": "POST",
"timeout": 0,
"headers": {
"Authorization": "Bearer <access_token>",
"Accept": "application/json;odata=verbose",
"Content-Type": "application/json;odata=nometadata;charset=utf-8",
"X-RequestDigest": "<form_digest>",
"binaryStringRequestBody": "true"
},
"data": ""
};
$.ajax(settings).done(function (response) {
console.log(response);
});

Thank you! Let's see if we can reproduce the issue and we'll take it from there

I can reproduce the issue and will look for a possible solution

We've just merged a fix for this issue. It would be awesome if you could try it by installing the latest preview version using npm i -g @pnp/cli-microsoft365@next. Once again, thank you for reporting the issue and your help.

@waldekmastykarz thank you it's working.I tried on my PC. ill try it out in the azure pipeline too.

Awesome! I appreciate you confirming that all is working as intended.


Support Rassberi PI 4B (aarch64) ARM

Duplicates

[X] I have searched the existing issues

Current behavior 😯
Not install for my server. Make from source
Expected behavior 🤔
No response
Steps to reproduce 🕹
No response
Additional context/Screenshots 🔦

Possible Solution 💡
No response

Hi @MrSteelRat, It seems like you're missing cargo on your machine, please run the following command  curl https://sh.rustup.rs -sSf | sh before trying again.
Installation instructions : https://github.com/o2sh/onefetch/wiki/Installation#build-from-source


[cosigned] image pattern selector: keep glob and remove regex

Description

The ImagePattern field in the ClusterImagePolicy has two optional fields Glob and Regex. There is an internal discussion to remove Regex and keep Glob.
cc @DennyHoang @vaikas @
type ImagePattern struct {
	// +optional
	Glob string `json:"glob,omitempty"`
	// +optional
	Regex string `json:"regex,omitempty"`
}

Currently, globMatch is just a suffix check right now since we support only one wildcard *.
That would need to be updated to be actually glob checking before removing regex.

glob has been sufficient for our use cases to date.

@DennyHoang Please, create the issue where you explain what is missing in globMatch, so we can fix it.

I think the one problem that can be an issue with glob matching that I've seen personally is when pulling things off of docker.io, sometimes it's index.docker.io for example. And in gcr.io they are sometimes gcr.io, us.gcr.io, asia.gcr.io so for them I think you'd maybe want to create:
.gcr.io/
gcr.io/*
instead of listing them all.

I am gonna remove the image.regex field now that glob matching has been improved.


修正测试

:tada: This PR is included in version 1.1.0-beta.1 :tada:
The release is available on npm package (@beta dist-tag)
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.3.3-beta.1 :tada:
The release is available on npm package (@beta dist-tag)
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0-beta.1 :tada:
The release is available on npm package (@beta dist-tag)
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.2 :tada:
The release is available on npm package (@latest dist-tag)
Your semantic-release bot :package::rocket:


Not able to build OpenImageIO in my system.

Hi @lgritz @edgarv @fpsunflower  I am  trying to build OpenImageIO/oiio i am getting some compiler errors, as shown below.

[ 74%] Linking CXX shared library libOpenImageIO.so
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libopencv_imgproc.a(color.cpp.o): relocation R_X86_64_32 against `.bss' can not be used when making a shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libopencv_imgproc.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
src/libOpenImageIO/CMakeFiles/OpenImageIO.dir/build.make:1949: recipe for target 'src/libOpenImageIO/libOpenImageIO.so.2.1.1' failed
make[2]: *** [src/libOpenImageIO/libOpenImageIO.so.2.1.1] Error 1
CMakeFiles/Makefile2:2424: recipe for target 'src/libOpenImageIO/CMakeFiles/OpenImageIO.dir/all' failed
make[1]: *** [src/libOpenImageIO/CMakeFiles/OpenImageIO.dir/all] Error 2
Makefile:162: recipe for target 'all' failed
make: *** [all] Error 2

Even i tried setting -fPIC flag in CmakeList.txt but still not able compile it.

Just happened to find this while looking for something else. Hopefully you figured out your problem but github issues aren't the best place for general troubleshooting, please pose these types of questions to the mailing list.

No follow-up in some time. Closing. Please re-open if this is still a problem in the current release.


Nick's Design

I don't seem to be able to merge anywhere but the main. How do I change it from main to the submissions folder?


nydusify: bump github.com/goharbor/acceleration-service v0.2.5

To bring some internal changes and features:
https://github.com/goharbor/acceleration-service/releases/tag/v0.2.5
Relevant Issue (if applicable)
If there are Issues related to this PullRequest, please list it.
Details
Please describe the details of PullRequest.
Types of changes
What types of changes does your PullRequest introduce? Put an x in all the boxes that apply:

[ ] 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)
[ ] Documentation Update (if none of the other choices apply)

Checklist
Go over all the following points, and put an x in all the boxes that apply.

[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.

@hangvane PTAL the broken CI https://github.com/dragonflyoss/image-service/actions/runs/5309241339/jobs/9610384504?pr=1331#step:8:466, it seems related with the --batch-size feature.


[New Core]: Irem M92

Core Author username
opengateware
Core .yml snippet
display_name: Irem M92
repository: arcade-irem_m92

@davewongillies Thanks for the submission!
Unfortunately, I beat you to it! ;)


.brightness() method does not affect brightness

Expected Behavior
.brightness() method should affect brightness
Current Behavior
.brightness() method does not affect brightness but blend white with image everywhere
Failure Information (for bugs)
See above
Steps to Reproduce

Use .brightness(0.9) on an .jpg image to go near full brightness
Create image file with writeAsync()

Screenshots

Brightness 0.9 in JIMP (nearly full brightness)

Brightness 4 in CSS (nearly full brightness)

Context
No special conditions

Jimp Version: 0.22.10
Operating System: Windows
Node version: 21.5.0

:rocket: Issue was released in v1.1.2 :rocket:


added language selector

Status
Type

:x: Hold
Feature

Description
add language selector to settings page

TODO

[ ] improve language selector component
[ ] add flags to selector
[ ] add language selector to selection screen

Motivation and Context

Screenshots / GIFs (if appropriate):

Checklist

[x] I have read the CONTRIBUTING document.
[x] I have considered the accessibility of my changes (i.e. did I add proper content descriptions to images, or run my changes with talkback enabled?)
[x] I have documented my code if needed

Resolves

Thank you for your pull request.
Please remove your translations. Change only the en.json if necessary.
If this pull request is merged into the experimental branch, it can be translated via localazy.
Please remove following files from pull request changes.
- src/i18n/locales/de/default.json


Fix typos in uk locale and translate untranslated strings

Should look a bit better now.
Corrected (hopefully most) typos and grammatical errors. Some lines were found written in Russian and have now been translated into Ukrainian.

LGTM, thanks for the updates!


Spec out the "Server"

https://material-motion.gitbooks.io/material-motion-starmap/content/specifications/server.html

Moved to https://github.com/material-motion/material-motion-starmap/issues/44.


Crash when applying foreach to dynamically sized array

From the Sudoku example:
foreach int[size] row : grid {
    foreach int cell : row {
        printf("%d ", cell);
    }
    printf("\n");
}

After further investigation it turns out that the real problem is another one.
This works:
p print(int[SIZE][SIZE] _) {
    int[SIZE][SIZE] grid = {
        { 3, 0, 6, 5, 0, 8, 4, 0, 0 },
        { 5, 2, 0, 0, 0, 0, 0, 0, 0 },
        { 0, 8, 7, 0, 0, 0, 0, 3, 1 },
        { 0, 0, 3, 0, 1, 0, 0, 8, 0 },
        { 9, 0, 0, 8, 6, 3, 0, 0, 5 },
        { 0, 5, 0, 0, 9, 0, 6, 0, 0 },
        { 1, 3, 0, 0, 0, 0, 2, 5, 0 },
        { 0, 0, 0, 0, 0, 0, 0, 7, 4 },
        { 0, 0, 5, 2, 0, 6, 3, 0, 0 }
    };

    foreach int[SIZE] row : grid {
        foreach int cell : row {
            printf("%d ", cell);
        }
        printf("\n");
    }
}

while this crashes the compiler:
p print(int[SIZE][SIZE] grid) {
    foreach int[SIZE] row : grid {
        foreach int cell : row {
            printf("%d ", cell);
        }
        printf("\n");
    }
}

The solution is now to not allow dynamically sized arrays as function/procedure parameters.


[MetricServer, Bug] MetricServer crashes entire process if port taken by another app

Repro: run an app with this code twice:
		static void Main(string[] args)
		{
			var metricServer = new MetricServer("localhost", 50800);
			metricServer.Start();
			Console.ReadKey();
		}

Expected behavior: On a second instance, metricServer.Start() throws an exception (or some event fired, or the Start() method returns false, anything but killing the process will do:) )
Actual behavior: Unhandled exception is thrown, entire process crashes.
Reason: the StartListen body was not wrapped with try...catch.

What can I do to make this pull request merge faster?

You can do PR or wait when I release on January

I released new version and solved this


Tech review of anomaly detection mechanisms

Anomaly detection should be done specifically for power system sensors.

No anomaly detection is being implemented in code.


[Android] Prevent sibling of transformed view stealing focus

The new dispatchTouchEvent() code to handle children with StaticTransformations calls child.dispatchTouchEvent() for all children, unlike ViewGroup.dispatchTouchEvent() which only calls for children for whom the touch lies in bounds. At least one consequence of this is requestFocus() wrongly getting called in some circumstances.
As a narrow workaround, we block requestFocus() from being propagated in this specific case.
GitHub Issue (If applicable): #

PR Type
What kind of change does this PR introduce?

Bugfix

What is the current behavior?

What is the new behavior?

PR Checklist
Please check if your PR fulfills the following requirements:

[ ] Tested code with current supported SDKs
[ ] Docs have been added/updated which fit documentation template. (for bug fixes / features)
[ ] Unit Tests and/or UI Tests for the changes have been added (for bug fixes / features) (if applicable)
[x] Contains NO breaking changes
[ ] Updated the Release Notes
[x] Associated with an issue (GitHub or internal)

Other information

Internal Issue (If applicable):

https://nventive.visualstudio.com/Umbrella/_workitems/edit/150674

/azp run

/azp run


Handle Ambiguous Contract Definition in Interactive Brokers

Expected Behavior
No error message.
Actual Behavior
When the algorithm tried to place an order for SPCE in live mode, it receives the following message:
The contract description specified for SPCE is ambiguous

Potential Solution
N/A
Reproducing the Problem
Place limit order for SPCE to IBKR.
Checklist

[x] I have completely filled out this template
[x] I have confirmed that this issue exists on the current master branch
[x] I have confirmed that this is not a duplicate issue by searching issues
[x] I have provided detailed steps to reproduce the issue

Cannot reproduce this issue as of 2023/02/22. According to IB, a workaround for this is setting the PrimaryExchange to the Contract, which is already being done by the IB brokerage


primitive mod operator

there isn't one so I defined this: mod x y = x - ((x / y) * y), but we should probably have a primitive % eventually.
low priority

duplicate of #196


Nuimages fid？

Does nuimages also generate five times as much data to calculate fid? Is it the same as COCO?

The answer is no. For NuImages, we only generate one single image for each sample due to the large amount of samples in the NuImages validation set.


MiniEngine: CommandListManager::m_CommandQueue is null

In line 78, CommandListManager::m_CommandQueue is NULL when running the Debug and Profile builds. This bug is found in CommandQueue::Create of CommandListManager.cpp, part of the Core library. Does not trigger when running Release configuration.
Fix: Commenting out line 100 pDevice->SetStablePowerState(TRUE); seems to fix this bug. Forcing low GPU clocks seems to put the hardware in a state that fails creation of the CommandQueue.
My system is NVIDIA Geforce 1070, Intel i6500K

That's very interesting.  It seems specific to that card and/or driver though.  What version of the Nvidia driver are you using?  What version of Windows?  Maybe I can use this as an excuse to have my boss get me a 1070 (or 1080 ;-)  I'll do a little research into this on Monday morning, but thanks for letting us know.
-James

Hi James,
This does seem like a very ASIC specific issue, but I have not tested with others. I am using Windows 10 14393. I didnt bother mentioning it because can you even run DX12 without Windows 10? I have the latest public driver from NV.
Enjoy your weekend!
Niraj

Same here with AMD 7870 and NVidia 950m.

Only in debug crash. Release works as planned.

Hi, I just hit this issue too, running with Windows 10.0.14393 & Nvidia GTX1080 driver version 376.33.

Same issue here with Windows 10.0.14393 GTX1080M driver version 378.66

issue #234 was showing similar symptoms, there it got fixed by enabling developer mode; it seems DEBUG builds are calling functions only available when developer mode is active and MiniEngine isn't graceful about handling/reporting when you aren't on developer mode.

It appears to be a registry setting: http://stackoverflow.com/questions/41231586/how-to-detect-if-developer-mode-is-active-on-windows-10

Thanks, Chad.  I found that same article and put this code in locally.  I'll push it up to GitHub soon.
bool DeveloperModeEnabled = false;

// Look in the Windows Registry to determine if Developer Mode is enabled
HKEY hKey;
LSTATUS result = RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\AppModelUnlock", 0, KEY_READ, &hKey);
if (result == ERROR_SUCCESS)
{
	DWORD keyValue, keySize = sizeof(DWORD);
	result = RegQueryValueEx(hKey, L"AllowDevelopmentWithoutDevLicense", 0, NULL, (byte*)&keyValue, &keySize);
	if (result == ERROR_SUCCESS && keyValue == 1)
		DeveloperModeEnabled = true;
	RegCloseKey(hKey);
}

WARN_ONCE_IF_NOT(DeveloperModeEnabled, "Enable Developer Mode on Windows 10 to get consistent profiling results");

// Prevent the GPU from overclocking or underclocking to get consistent timings
if (DeveloperModeEnabled)
	g_Device->SetStablePowerState(TRUE);

Is there a non-registry way to detect this? You can't of course call RegQueryValueEx from a UWP, just Win32 classic desktop apps.

MiniEngine is Win32-only for now.  Perhaps with the addition of UWP in the future, we can keep Win32 around for development purposes.  Chuck, do you know what the mechanism for querying Developer Mode is in a UWP?  And can SetStablePowerState() be called in UWP?

Just a thought but another option would be to move the call to SetStablePowerState to Graphics::Initialize. From there you could test failure and just recreate the device and continue without calling SetStablePowerState again.

I made that change too, locally.  It was silly to call it every time a new command queue was created, however we only create one queue.  It belongs at device creation since that is what it operates on.
Cheers

All MSDN has to offer is:
Do not call this method in normal execution for a shipped application. This method only
works while the machine is in developer mode. If developer mode is not enabled, then
device removal will occur. Instead, call this method in response to an off-by-default,
developer-facing switch. Calling it in response to command line parameters, config files,
registry keys, and developer console commands are reasonable usage scenarios.

This bug fix is included in the Creators Update push.


Fix crashing at role commands in private DMs

The check on private DMs has to be done before accessing server roles, otherwise the bot will crash with TypeError: Cannot read property 'roles' of null when sending direct messages.
So I moved the inPrivate(msg) check to the beginning of the command functions.
I also ran 'prettier' on the module.

Nice catch, forgot that would be an issue when I was testing and seperating variable definition from computation.

You can also further shorten send() as:
let send = (msgTxt) => msg.channel.send(msg);
Makes things a bit neater and means it's actually returning the Promise rather than returning undefined.

That's right. Thank you!
I also just fixed a small deprecation warning, when using find() on Collections (DeprecationWarning: Collection#find: pass a function instead).


nonstandard definition of stationary?

In Stationary, a covariance function is defined in GPy as stationary when it depends only on the l2-norm |x_1 - x_2 |. However this is the typical definition of isotropy, while stationarity is usually a bit more relaxed. The more common version of stationarity is that the covariance is a function of x_1 - x_2 (See e.g. R&W first paragraph of section 4.1).
Although this is only a minor distinction, I think that the subtlety only increases the chance of confusion. My suggestion is to rename Stationary to Isotropic, but there are other options. If GPy is going to stick with its definition of stationarity I think there should be a note about the minor departure from other definitions.

You are quite right Homer.
We should look at how much effort it would be to change those names.
Neil
On Sun, Apr 17, 2016 at 6:42 PM, Homer Strong<EMAIL_ADDRESS>wrote:

In Stationary, a covariance function is defined in GPy as stationary
https://github.com/SheffieldML/GPy/blob/devel/GPy/kern/src/stationary.py#L29
when it depends only on the l2-norm |x_1 - x_2 |. However this is the
typical definition of isotropy, while stationarity is usually a bit more
relaxed. The more common version of stationarity is that the covariance is
a function of x_1 - x_2 (See e.g. R&W
http://www.gaussianprocess.org/gpml/chapters/RW4.pdf 4.1).
Although this is only a minor distinction, I think that the subtlety only
increases the chance of confusion. My suggestion is to rename Stationary
to Isotropic, but there are other options. If GPy is going to stick with
its definition of stationarity I think there should be a note about the
minor departure from other definitions.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/SheffieldML/GPy/issues/372

added comment in dd22687
thanks!


Column-toggle print view

Is it possible to have the results of a column-toggle properly printed?

How are you defining “properly” here?

Closing per inactivity


Update feed.atom

fixes https://github.com/MicrosoftDocs/msteams-docs/issues/4557

Docs Build status updates of commit b392eb1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/feed.atom
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Describe the vanilla image in the documentation, update Docker packaging guidelines

Minor documentation improvement

CI is unstable, but I will go ahead since there is no coverage for this area anyway


Fix bug in peer dependency checks for yarn

Fixes a bug where no peer dependency errors where output if the
dependencies had been added with a fixed version e.g. yarn add
<EMAIL_ADDRESS>This meant that the lockfile had an entry that exactly matched running
yarn add<EMAIL_ADDRESS>again from checkPeerDependencies() which made
yarn skip fetching the manifest for that package and just relying on the
lockfile information (which has no peer dependency info).
We then bailed from the install command before fetching the manifests
for all dependencies, meaning we never got the peer dependency
information in these cases.
Fixed by letting the install command do all the work (skipping the
package and lockfile updates).
This delegates peer dependency resolution to the pacakge-linker which is
called from the install command after the manifests have been fetched.

@greysteil think this fixes the issue you found!

Nice!


Add binexplode sample rules

let's hold on the merge, there are some analysis API implications that we should think through


Update specs2-core, specs2-scalacheck to 4.12.8

Updates

org.specs2:specs2-core
org.specs2:specs2-scalacheck

from 4.12.0 to 4.12.8.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.specs2" } ]

labels: test-library-update, semver-patch

Superseded by #175.


🐞 fix: Handle Garbled Chinese Characters in File Upload

Uploading a file with a Chinese name, encountering garbled characters

Change Type

[x] Bug fix (non-breaking change which fixes an issue)

Testing
Upload a file with a Chinese name
Checklist

[x] My code adheres to this project's style guidelines
[x] I have performed a self-review of my own code
[x] I have commented in any complex areas of my code
[x] My changes do not introduce new warnings
[x] I have written tests demonstrating that my changes are effective or that my feature works
[x] Local unit tests pass with my changes
[x] Any changes dependent on mine have been merged and published in downstream modules.

thanks, works well!


Remove a potential deadlock

This deadlock was noticed in my work on #1577 - which itself is not yet ready.
I don't know if it could happen without other changes in that branch, but maybe it could.
Given the high rate of unexplained timeouts lately, I'm splitting this out and putting it up for review as a hail mary.

LGTM

Green


Pages sort

Please take a look at that screen. It seems like pages do not sort properly when they have child.

Any?

Yeap, seem like a bug.. I will check, thanks

I made some changes on Github to fix this problem, could you try it ? thanks

@kaaleth could you check this fix ? it on the latest version of Bludit v0.6.2

@dignajar yep, I am going to check this.

@dignajar
Unfortunely, seems like does not work... :(

Fixed on v1.3 beta 1.


Request to fix security vulnerabilities in Communicator app

Dear Community Members,
I am scheduling to release this Communicator app for my employer. Prior to its release I have ran WhiteSource Bolt to scan the source code to generate a report that will show any security vulnerabilities.
Please find the attached PDF of this report
ModernWorkplace-riskReport.pdf
Are you able to review the report and address 2 security vulnerabilities exposed in the source code

https://www.whitesourcesoftware.com/vulnerability-database/CVE-2020-7733

https://www.whitesourcesoftware.com/vulnerability-database/CVE-2020-1045

Thanks.
Kind regards
David

Hi @juna-gupta
Are you able to help me review this security vulnerabilities in company communicator app?

Hello @David-Liong, Thank you for reporting. We are tracking the vulnerabilities and plan to release a fix soon.

Hi @juna-gupta
As it's almost towards the end of the year, do you think you are planning to release the fix this year Nov-Dec or likely next year?
Thanks.

Hello @David-Liong, We plan to release an update soon. (most likely in November).

Hi @juna-gupta
I have already fully deployed the company communicator app to Azure tenant. So when you have completed the release update of fixing security vulnerabilities, how do I incrementally update your code change release without having to uninstall and re-install the app from scratch again?
Can I go to the "Deployment center" section of the app service in Azure and click on syn button to incrementally update your changes? Will this work?

Thanks.

@David-Liong We will add a migration guide for upgrading to latest version.

Hi @juna-gupta can you provide a status on the update regarding the vulnerabilities that @David-Liong discovered? Thanks!

Hi @juna-gupta can you indicate when this fix will be closed/completed? Thanks!

Hi @juna-gupta
Just wondering if this security vulnerabilities has been fixed as it is now December.
Thanks.


Update npc-accessibility-tagger

No longer can tag "invisible" npcs. Tested @ Duke.
Reduce logging, update logging messages

You should switch this to if (npc.getName() == null || npc.getName().equals("") || npc.getName().equals("null"))
https://github.com/R-Y-M-R/NpcAccessibilityTaggerPlugin/compare/3a96b1a3faedb00349514bd45fb269a7c0ac6a1b...R-Y-M-R:b374750b39b5a6b6b0cb770451660833e4659b4a#diff-c76ed7ec5a0ca66b3c8c97dc601bcc0bae4fcc5807cee699b5fc1f65401941a5R87

A pedantic for my tastes but noted. I could also check name.length == 0 instead of .equals("") but not bothered by this as the purpose of this update was not to optimize rather strictly to keep the plugin in line with Jagex rules.

This isn't an optimization thing, a null string is not the same as an empty string nor a length-zero string.

In my code if the npc.name string is null, it returns false

You're right @LlemonDuck I had made a mistake and thought it was optimizations when I looked on my phone, but its not actually just that. Thanks for catching it!


Error in generate_inte_gs

The example on generate_inte_gs is giving an error. My feeling is that "trail" will always hit 100, and hence the function will fail. Something is needed here to fix this? Also calling a function within a function seems dangerous.
I left a note in the code

Fixed, the example had an extra parameter. My fault.