SMA doesn't work with the snap

The new sys-mgmt-agent microservice in EdgeX doesn't work with snaps, as the only 2 options for setting the configuration.toml are os and docker, neither of which are compatible with the snap. This issue tracks a few related issues that should all be fixed at the same time I think.
The docker implementation uses the docker compose file which isn't available inside the snap (because the services aren't deployed as containers in the snap).
The os implementation uses ps to get the PID of the microservices and then manually kills those processes. This also isn't compatible with the snap because doing so inside snap confinement requires the interface process-control, and also isn't necessary because the EdgeX microservices are actually systemd services inside the snap and as such can be started/stopped outside of the snap using systemctl (which is from systemd), and from inside the snap using snapctl (which is from snapd).
Also, the implementation should at least be changed to use the ExecutorClient interface for starting, stopping and restarting. Currently the interface is only used for stopping services, and also unconditionally attempts to use the docker functions to start/restart services so sending a start/restart request to sys-mgmt-agent will fail inside the snap.
Finally, the implementation should also provide for two new types of operations managing the other services, the ability to disable a service and enable a service. This currently wouldn't be used for docker as to my knowledge docker-compose doesn't automatically start things up at boot, but for the snap all the services come up automatically, and there's a common distinction between stopping a currently running service now but letting it come up automatically on reboot, and stopping it permanently from ever coming up again without explicit user interaction (that interaction being the act of enabling the service again).
Thus the following things should be fixed:

[ ] A new "snap" format should be allowed to be specified from configuration.toml that is implemented in go that uses snapctl
[ ] The implementation of starting and restarting services should be abstracted out to the ExecutorClient interface
[ ] Implement Disable/Enable of services

I implemented most of this in a branch : https://github.com/anonymouse64/edgex-go/tree/bugfix/751
The only part missing from that branch is integration for enable/disable/restart within the router.
For Delhi we now have two options, to take the full approach I implemented above, or to take the pared down version here: https://github.com/edgexfoundry/edgex-go/pull/750 which only implements basic support for stopping services in the snap.

Okay, my branch (same as above, but tweaked and rebased) implementing all of the above is done and tested with the snap. I think this should be taken up for Delhi, at least for a dot release if not the main release.
@tsconn23 and @akramtexas thoughts?

@anonymouse64 After doing some due diligence to make sure I'm not overlooking anything, my recommendation is to please treat the Delhi Dot Release as a vehicle for handlin bug-fixes only. Making SMA work with the snap should of course be addressed, but not in the Delhi Release.

@akramtexas so I see the current implementation as having the following bugs:

Using the SMA within the snap does not work at all with starting/stopping/restarting services
Errors are not checked within InvokeOperation and as such the response code returned to all clients is always 200
The code path for starting a service always hard codes calls to docker which in the best case may do nothing and in the worst case may end up inadvertently killing the service due to snap confinement not allowing calls out to docker installed on the host
The code path for restarting the docker case is implemented incorrectly, where InvokeOperation is called for stop, then called for start rather than calling InvokeOperation once for RESTART. While this is incorrect from coding implementation, it is also a bug for the OS type, where it will attempt to call out to docker if a restart is issued when using OperationType=os which could introduce other problems.

While for the snap specifically we only care about 1, 2-4 are still in fact bugs with the current implementation and should be fixed. All of these issues are fixed in my branch, in addition to implementing the things that this issue is about.

Also we have already decided that 1 is a blocker for Delhi, the only question I have now is how much of the other issues should be handled for Delhi as well. I think we should handle all of them because I've already written the code and it just needs to be reviewed.

Note that I filed independent issues for all the things here and so now this issue is just about SMA supporting snap in general.

@anonymouse64 Did you want to keep this issue open for any snap-related work or should we close this issue?

Let's just open a new issue, there's a lot of irrelevant context here now

The new issue opened by @anonymouse64 (to replace this issue) is the following: Issue-1132


Which instructions for fine-tuning

Hi, thanks for the awesome work!
I saw this note in the README: "For fine-tuning, please follow the instructions in BEIR repo.". I looked through the BEIR repository, and it's not obvious to me which instructions you're referring to. Can you provide a little more insight how we might use the BEIR code for fine-tuning LAPRADOR? thanks.

It's here :)
https://github.com/beir-cellar/beir/blob/main/examples/retrieval/training/train_msmarco_v3.py

thank you


StreamAlert - Rules - Github - Part I

to: @ryandeivert
Changes

Add GHE to sources.json
Add GHE helper functions to helpers/base.py
Rename matchers/sample.py → matchers/matchers.py,  remove the sample matcher (never used), add the GHE matcher
Add the first open source rule (disabling 2FA) with it's scrubbed test case

Testing
StreamAlertCLI [INFO]: (23/23) Successful Tests
StreamAlertCLI [INFO]: (48/48) Alert Tests Passed
StreamAlertCLI [INFO]: Completed

Followup
I'll create another PR (non-blocking) with additional rules

Coverage remained the same at 94.71% when pulling 12ab7c8f9b4b7bbf1b61102ab200ab5e924b175b on mimeframe-streamalert-ghe-rules-public into 0caeb323488cef2e3f5a7ae897e87bdab3c96bc0 on master.


Network storage NAS

Frigate working except network storage. Says can't bind/ unmount/mount or something like that, media not empty. Can't figure out how to fix this without a step by step, full guided explanation of where and how to, click, delete, move or rename folders etc., using HA, or Terminal in HA, or maybe use Putty SSH, etc. Don't know where to start. Sorry, I'm completely lost on this issue.

That is a problem with Frigate itself, this is the repo for the HA integration for Frigate. Suggest searching the prior issues, documentation and discussions on the Frigate repo: https://github.com/blakeblackshear/frigate/issues


⚠ PrivateHD has degraded performance

In b532624, PrivateHD ($PHD) experienced degraded performance:

HTTP code: 200
Response time: 3028 ms

Resolved: PrivateHD performance has improved in e10f37a.


Script 4 - Analysis

A fourth script that reads the data from the second script, performs some statistical or machine learning analysis and summarizes the results as a figure(s) and a table(s). These should be written to files. This should take two arguments:
a path/filename pointing to the data
a path/filename prefix where to write the figure(s)/table(s) to and what to call it (e.g., results/this_analysis)

We discussed a new methodology in the lab:
For each month and year we take the average by station. We will compare the median of these station averages with the medians for a different year. @syadk, anything else to add? Not sure if this is clear.

@jaymegordo Can you also write a paragraph on what was done for the analysis that @mgaroub can include in the final report?

@jaymegordo for the second argument the description said for it to be "a path/filename prefix where to write the figure(s)/table(s) to and what to call it (e.g., results/this_analysis)". Not sure if you think it's worth updating or not, seems pretty minor.


feat: add v9 of fox farm

Description
Adds v9 of fox farming.
Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[x] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)

closes #
Risk

High Risk PRs Require 2 approvals

should be considered high risk even tho a tiny PR just in case I put the wrong addresses in or something of that nature.

What protocols, transaction types or contract interactions might be affected by this PR?

ETH fox farming
Testing
Not tested besides to confirm it shows up on screen. Ops might be able to test before it goes live with some small LP balances just to confirm staking and unstaking works and flows into the new contracts correctly
https://etherscan.io/address/0xec84524385ffd1ea423ec4682caa5ab56071fbc7
Engineering

Operations
Please give this a once over with staking and unstaking to confirm funds flow into and out of
https://etherscan.io/address/0xec84524385ffd1ea423ec4682caa5ab56071fbc7
Screenshots (if applicable)

P.S I updated the arkeo code, just because it was there, but creating follow up ticket to remove https://app.shapeshift.com/#/arkeo entirely as the snapshot is now down

V9 was not appearing in the carousel due to a filter enforcing >1% APY and >$50k TVL, which obviously the new contract does not satisfy. I've pushed a commit to hardcode the v9 contract to appear at the front of the carousel which we cna revert once V9 has adequate TVL.


multi-byte chars not shown when use tmux as start shell

Which operating system does the issue occur on?
Mac OS Mojave 10.14.4
when set tmux as start shell program,  multi-byte char show as __. (though invisible, but can normal copy and paste)
it's ok when use default bash login, and then execute tmux
the screenshot is:

after unset shell program and use the default bash login, then attach tmux

@SolaWing that's the problem with your tmux, and not with alacritty. Try starting tmux with tmux -u. Also what's the output of locale?
The underlines are placeholders inserted by tmux.


rename attachInternal -> attach

In certain scenarios it's useful to call explicitly attach components, i.e. you want to be able to perform functions on those components that use their parent, without waiting until the next refresh cycle.
So rename attachInternal to attach.

done


Implement MintTo instruction

Description

Implements MintTo instruction so we can mint Solana NFTs in Kotlin!
This implements a very basic version of MintTo so misses out on some features.
I opted for the most absolute bare-bones implementation, but we can add more later as optional params.

Testing
Tests copied from JS tests here:
https://github.com/nickcruz/solana-js-sandbox/blob/main/__tests__/mintTo.test.ts
Missing features from spl-token JS library
Reference code in solana-labs/solana-program-library

The actual spl-token library allows for an amount ranging from 0 to 2^64 -1. We use Long here, so we only allow 0 to 2^63 -1 (negative numbers will create a valid transaction, but will fail when sent to Solana).
Multi-signers are not supported.
The program ID is always hardcoded to the SPL token program (TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA).

The actual spl-token library allows for an amount ranging from 0 to 2^64 -1. We use Long here, so we only allow 0 to 2^63 -1 (negative numbers will create a valid transaction, but will fail when sent to Solana).

@nickcruz i am curious about this: why wouldnt negative numbers work? since they are converted to bits, the 2's complement truncated to 8 bytes would still be a valid number within the 2^64 -1 range. Obviously from a devex standpoint the negative numbers makes no sense, but I am trying to understand why passing a negative value here would cause Solana to reject the transaction. Does this have something to do with the implementation on our end (within this SDK)?

This can go in.
@Funkatronics Makes sense to check for this validations and requirements.


Added regulated-unregulated elements to the computed stage damage table.

I've reviewed this. UI looks good and code looks reasonable, but i don't have a study I can compute. Always hit the memory issue on stage damage.
Richard, could you pull and give this a run?

I pushed my code. Ready to test. I can't say that the actual compute is working as it should but I can verify that the curves look different when using a reg-unreg curve:
Without:

With:

My compute time with Muncie was about 25 seconds.


Improve counts / stats on supply items

Supplies today have no number of helpers required. Therefore we do not track status as we do on tasks. But in reality, often we need to source several items of one supply.
Therefore I was thinking we need to track not the "number of helpers" but analogous "number of supplies". So we can ask for 5 pairs of kids shoes and accept from multiple donors. Same donor needs to be able to provide more than one pair. Then we can show the same stats also in the list partial.
Note this relates to #109 and also #51.

@phil-monroe as a suggestion on how to handle the supply partial view. Thoughts?


Improves Moped failover.

Changes:

Significantly bumps up the timeout in Address#resolve. IMO this timeout should be removed entirely, as it does not play well with multithreaded code. Also adds retry logic to DNS resolution.
Separates out the shutdown of a pool from the mutex which handles removing it from pools, as a shutdown can take a long time or just fail altogether.
Add Retryable and adds more with_retry handling. Taken from @wandenberg's pulls; I then added it to Cursor#get_more.
Add more connection failure error codes, as well as some unfortunate magic string detection for connection failure. I don't know if Mongo 3.0 has improved that situation, but at least in 2.4 and 2.6 you still need to inspect the error message since it doesn't always return with an error code.
Fixes Node#flush to actually catch query errors (see https://github.com/mongoid/moped/pull/369)
Fixes #361; retries auth and retries a query if the reply is unauthorized? (that code completely regressed from 1.5.x; unauthorized? wasn't called anywhere)

:smile: :+1:

Hey, @durran do You plan release this updates?

Thanks for all this work @jonhyman, now waiting for a moped release to finally get rid of all these failover errors :smile:

You're welcome!

Any ideas when next release is coming?

I'll do it this week.

:+1: for the new release fixing: ConnectionPool::PoolShuttingDownError

@durran thanks for releasing 2.0.7, all ConnectionPool::PoolShuttingDownError errors are gone since update. :+1:

Yep, seems good, thanks ! :+1:


Remove custom config library.

Your custom config library faces the same issue as dokku does when setting config values that contain newlines. See https://github.com/progrium/dokku/pull/1245.
By switching to dokku config:set-norestart and dokku config:unset-norestart, the fix will be available in the redis plugin once it gets merged to dokku automatically.

Ah thanks!

I'll make a new release soon.


NumPy array "order" cannot be specified in nopython mode

I tried this in a nopython function:
np.empty((10,3), order='F')

It failed:
Traceback (most recent call last):
  File "numba/typeinfer.py", line 114, in propagate
    constraint(typeinfer)
  File "numba/typeinfer.py", line 317, in __call__
    self.resolve(typeinfer, typevars, fnty)
  File "numba/typeinfer.py", line 344, in resolve
    sig = context.resolve_function_type(fnty, pos_args, kw_args)
  File "numba/typing/context.py", line 125, in resolve_function_type
    return func.get_call_type(self, args, kws)
  File "numba/types/functions.py", line 49, in get_call_type
    sig = temp.apply(args, kws)
  File "numba/typing/templates.py", line 216, in apply
    sig = typer(*args, **kws)
TypeError: typer() got an unexpected keyword argument 'order'

I expected it to work.

Indeed, the order argument to various Numpy functions isn't supported. I realize we haven't documented this limitation everywhere.

Quite.  In 2.7.2 of the docs (http://numba.pydata.org/numba-doc/latest/reference/numpysupported.html#array-types) it says:

Numpy arrays of any of the scalar types above are supported, regardless of the shape or layout.

So...maybe any layout is supported if you pass it in, but not if you want to create one.
And empty(), ones(), etc. are documented (http://numba.pydata.org/numba-doc/latest/reference/numpysupported.html#other-functions) with links to the NumPy docs, which of course say they support order.
Being able to support order is important for performance in some use cases.  If the only reason not to support it is the fact that it's a string argument (and Numba doesn't do strings), perhaps an interim alternative can be devised.

Yes. There's a workaround, admittedly silly-looking but functional, though:
np.empty((3, 10)).T

The limitation unfortunately not just about strings.  This category of problem arises because the type of the return value from the np.empty function depends on the value of the order argument, and not just the type of the order argument.  Numba treats C and FORTRAN layout arrays as different types for code-generation purposes, so our type inference needs to know the difference at compile time if possible.
We have worked around this kind of issue for specific situations (like usage of string constants to index fields in a structured dtype), but don't have a general solution to all versions of this problem yet.


Add Data of Atharv Vani as Contribution

My data have been added to contributors.js and Contributors.md
Kindly review and merge my PR by considering it under Hacktoberfest 2022

Sorry I forget to create an issue.

Please resolve the merge conflicts. @Atharv-110


Guidance on how to use this  (eg code example)

There should be a code example on how this can be used.  it  should explicitly show what the callback function looks like.
There should be a note in there about how this might now work as expected if you call addCustomView() in the callback function.  I've seen instances where if this gets called multiple times, you will get difference results when you click on the magnifying glass (this could also be an platform bug)

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

ID: b467682f-01ec-4b4f-7949-9119d4c5c3da
Version Independent ID: bd678329-b0c1-a298-0597-efa3d18bd849
Content: addPreSearch (Client API reference) in model-driven apps - Power Apps
Content Source: powerapps-docs/developer/model-driven-apps/clientapi/reference/controls/addPreSearch.md
Service: powerapps
Sub-service: mda-developer
GitHub Login: @chmoncay
Microsoft Alias: chmoncay

Thanks for your comment, @xairrick. This issue has been assigned to the doc author for review.

@xairrick
Eric -
Thanks for your feedback. I agree with you. We can add it to our backlog.
I do want to point out that we also accept contributions.  If you have used this successfully and have an example, this could help speed up getting an example added here.
@chmoncay
Chris please review

@JimDaly,
I could definitely write up an example for item 1)
As far as 2) is concern I would need to know more about the internal design and how it was indented on working.  (ie it might just be a platform bug i'm seeing)

@xairrick
That would be great. I need to get all samples reviewed by dev team. Much easier to ask them to review a sample than write one from scratch.
@chmoncay  will need to speak to how it should work and any guidance we ought to provide to mitigate the issue you have seen. We can't provide technical support here, but you can also open a support case to get clarity.

@JimDaly here is a sample of usage.  NOTE: a lot of developers might not realize there could be multiple controls for the same attribute on a form, so it's always safest to start with attribute and add the preSearch to all of them.
function onLoad(executionContext) {
   var fromContext = executionContext.getFormContext()
   var attribute = fromContext.getAttribute("primarycontactid")
   attribute.controls.forEach(control => control.addPreSearch(myPreSearchCallBack))
}
function myPreSearchCallBack (executionContext){
   var control = executionContext.getEventSource();
   var filter = "<filter><condition attribute='firstname' operator='eq' value='Eric' /></filter>";
   control.addCustomFilter(filter);
}

@xairrick
Thanks I need to loop in dev team for review and will get back to this.

@xairrick
Eric -
Apologize for the delay in responding.
I finally added your Example to https://learn.microsoft.com/en-us/power-apps/developer/model-driven-apps/clientapi/reference/controls/addpresearch
Please take a look.
Thanks for contributing and helping make our docs better.
BTW: You can also contribute directly. See https://learn.microsoft.com/en-us/contribute/content/


Feature request: add token verification endpoint

Description:
I would like to request the addition of a token verification endpoint in PocketBase. This feature would be extremely beneficial for those of us who wish to use PocketBase behind our own API to manage our users.
Use Case:
In my specific use case, I need to implement an auth guard middleware to ensure the security and validity of user tokens. By having an endpoint that allows us to verify the validity of tokens, it would greatly simplify the process of authenticating users and integrating PocketBase into our existing infrastructure. I can actually do it with Auth refresh enpoint but it would be nice to have a Auth verification enpoint
const verifyToken = async (token) => {
    const pb = new PocketBase(/* ... */);
    pb.authStore.save(token, null);
    await pb.collection('users').authRefresh();
    return pb;
}

Benefits:

Enhanced security: Verifying tokens ensures that only valid tokens are accepted, thereby enhancing the overall security of the application.
Improved integration: This feature would facilitate easier integration of PocketBase with custom APIs and middleware.
Simplified development: Having a built-in endpoint for token verification would reduce the need for custom implementations, thereby saving development time and effort.
Thank you for considering this feature request. I believe it would be a valuable addition to PocketBase and would greatly enhance its functionality and versatility.

There are no plans for this. See also https://github.com/pocketbase/pocketbase/issues/2997.


crypto/x509: Certs with odd RDN layouts not handled, cause confusing errors

What version of Go are you using (go version)?

go version go1.7 linux/amd64

What operating system and processor architecture are you using (go env)?

GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/tv/go"
GORACE=""
GOROOT="/home/tv/src/go-1.7"
GOTOOLDIR="/home/tv/src/go-1.7/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/home/tv/tmp/go-build877219418=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"

What did you do?

The program in in https://play.golang.org/p/I8S80_1P1p gave a confusing error (https://github.com/golang/go/issues/16834  created about the message itself). This issue digs into why he ended up with such a parsed certificate, and what should have happened instead.
The cert in that play snippet is from https://github.com/wbond/badtls.io specifically https://github.com/wbond/badtls.io/blob/master/certs/domain-match.crt
What seems to have happened is that the cert there is structured like seq(set(a=b, c=d, e=f)) instead of what I seem to be getting from elsewhere, seq(set(a=b), set(c=d), set(e=f)). I may be very wrong about this, my asn.1 is 10 years rusty.

What did you expect to see?

Hopefully, either

Go crypto/tls client behavior matches old openssl behavior (seen in osx, debian jessie: https://gist.github.com/joneskoo/eff2607bab6c29d153b276938afc59ff ), and connection succeeds

or

Go crypto/tls behaves more like openssl 1.0.2d and refuses that connection (this part is fine, and probably wiser, though I can't see anything in openssl changelog that would be the reason)
BUT ALSO do something reasonable with RDN sequences where the set contains multiple values. Give an error or parse all the key-value pairs in every set. Right now, entries after the first are silently ignored: https://github.com/golang/go/blob/7c5f33b173d7bde6b3ae33bab940b76b4c991556/src/crypto/x509/pkix/pkix.go#L67 -- of course, I have no idea how much real world usage this would break. Ain't it great to have such a flexible and underspecified security mechanism?

What did you see instead?

Most of the subject RDN content discarded silently. Confusing error message. Behavior that differs from curl on OS X and Debian Jessie.

Just for reference, the incorrectly structured cert is located at https://github.com/wbond/badtls.io/blob/e46322e240ca97c7316e0f6cbf0b31bba610e707/certs/domain-match.crt.
Since this issue was created, I have regenerated the individual certs for badtls.io with a version of the ASN.1 library that generates the standard RDN structure.

Three choices how to resolve this (as I see):

Do nothing (and add a comment to https://github.com/golang/go/blob/7c5f33b173d7bde6b3ae33bab940b76b4c991556/src/crypto/x509/pkix/pkix.go#L67 why it's done like this)

Fail fast – Reject certificate with bad RDN structure (len(rdn) > 1)
Potential for breaking currently working cases (I guess if CN is first, it would work
even if followed by entries ignored by go)
Would it only be an error for the certificate being validated or also would a bad subject
for a CA break parsing the CA certificate?

Accept the bad structure
I think this is a potentially dangerous option; different parsers could interpret the
subject differently and well, if there's a way to make different parsers read the
CN differently, that's obviously a security concern. 👎
Although old OpenSSL and SecureTransport seem to do this?

@agl thoughts?

I ran a scan of the Pilot CT log for any unexpired chains that contained a certificate with more than one element in an RDN of either the Subject or Issuer.
There are only 360 of them, the vast majority appearing to be certificates from the government of Singapore.
I think the code should either reject them outright, or else scan them for known values and only reject cases where there are multiple common names or serial numbers etc.
Since I suspect that this practice is more widespread outside the Web PKI, I'm leaning towards the latter. Any modern certificate should be including SANs and disabling the processing of common names anyway. (Indeed, the CA/B Forum requires this now.)

A note on compatibility: in my testing none of Secure Transport, SChannel, OpenSSL 1.0.1 or LibreSSL complained about the abnormal RDNs in the certs that had been generated by certbuilder for badtls.io.
I'm not suggesting that means go should take a particular stance, just figured I'd provide that data point.


:lang latex improvments

These have been in my config for a long time, I think having them as defaults is an improvement.

Thanks!


MGDSTRM-9050: expose generic mechanism for injecting additional broker configuration from the operand override

Using this mechanism, we can override configuration passed to the broker by populating the brokerConfig object on the operator override.  This will have utility for temporary feature flags as well as experimentation in dev.    Note you can remove a broker config key by passing a null value.
oc edit cm -n redhat-managed-kafka-operator  strimzi-cluster-operator.v0.26.0-15

  fleetshard_operands.yaml: |
    canary:
      init:
        image: null
    admin-server:
      image: null
    kafka:
      brokerConfig:
        kas.policy.topic-config.topic-config-policy-enforced: "true" # Inject a new broker config item
        auto.create.topics.enable: ~ # Null causes an existing one to be removed.

and showing it works end to end:
% oc logs -f kafka-instance-kafka-0 | grep kas.policy.topic-config.topic-config-policy-enforced
kas.policy.topic-config.topic-config-policy-enforced=true

Thanks for the feature. Overall LGTM. Left a comment. Also, I think we should put the PR description into somewhere, maybe README? wiki? Or...?

I added a section to ADVANCED.md

@MikeEdgar any comments from you?


Microsoft.Data.Sqlite: Store Guids as TEXT

Yet another regret like #15019 and #15020 is the decision to store GUID values as BLOB. Now that we know how undefined the binary format of a GIUD is, storing them as TEXT probably would have been a better choice. Should we try and change it in 3.0?

Notes from triage: let's do this, but with guidance on:

How to run an in-place update of values (if possible)
How to use a value converter to get back to the old behavior

UPDATE MyTable
SET GuidColumn =
    hex(substr(GuidColumn, 4, 1)) ||
    hex(substr(GuidColumn, 3, 1)) ||
    hex(substr(GuidColumn, 2, 1)) ||
    hex(substr(GuidColumn, 1, 1)) ||
    '-' ||
    hex(substr(GuidColumn, 6, 1)) ||
    hex(substr(GuidColumn, 5, 1)) ||
    '-' ||
    hex(substr(GuidColumn, 8, 1)) ||
    hex(substr(GuidColumn, 7, 1)) ||
    '-' ||
    hex(substr(GuidColumn, 9, 2)) ||
    '-' ||
    hex(substr(GuidColumn, 11, 6))
WHERE typeof(GuidColumn) == 'blob';

modelBuilder
    .Entity<MyEntity>()
    .Property(e => e.GuidProperty)
    .HasConversion(
        g => g.ToByteArray(),
        b => new Guid(b));

How to use a value converter to get back to the old behavior

actually I am not so much interested in whether you store GUIDs as BLOBs (my preference) or TEXT, but I´d be very much interested in how to implement value converters as I am trying to optimize storage of my own data, and this sounds the better approach then doing that whenever composing a statement. I do hope it can be done in C# and does not require C(++).
Forgive my pickiness, but https://github.com/aspnet/Microsoft.Data.Sqlite/wiki/Data-Type-Mappings still lists BLOB, and should get a comment changing as of...
Thanks, Joachim

See Value Conversions in the EF Core docs.
As the aspnet/Microsoft.Data.Sqlite repo says, it is obsolete and has been merged into aspnet/EntityFrameworkCore. Anything there should be considered outdated.

@bricelam

Now that we know how undefined the binary format of a GIUD is, storing them as TEXT probably would have been a better choice

could you provide more details on what's wrong with guid as binary ?

@MaceWindu If you write the value using .NET's Guid.ToByteArray(), but read the value in, say, Java, you'll get a different GUID value since the binary format of GUID values is not defined.

I tend to disagree. The binary format is defined in https://tools.ietf.org/html/rfc4122 chapter 4. I suspect most of the issues arise from the "network order" which is not really the natural order for Intel processors.

@bricelam
That's good point. SQLite's weak type system doesn't make life easier when you need interoperability.
Still text doesn't solve this issue completely as it doesn't fix sql equality operations when different Guid formats used (which are more than two).

guids used as keys are bad for databases anyway, you´ll figure out that once your database becomes IO bound...
having said that, I´d suggest to follow RFC 4122, have type conversions for the typical MS string and guid data types, and otherwise document a warning...

it doesn't fix sql equality operations when different Guid formats used
Correct. Convert everything to text:

-- Convert Guid values from BLOB to TEXT
UPDATE myTable
SET guidColumn = hex(substr(guidColumn, 4, 1)) ||
                 hex(substr(guidColumn, 3, 1)) ||
                 hex(substr(guidColumn, 2, 1)) ||
                 hex(substr(guidColumn, 1, 1)) || '-' ||
                 hex(substr(guidColumn, 6, 1)) ||
                 hex(substr(guidColumn, 5, 1)) || '-' ||
                 hex(substr(guidColumn, 8, 1)) ||
                 hex(substr(guidColumn, 7, 1)) || '-' ||
                 hex(substr(guidColumn, 9, 2)) || '-' ||
                 hex(substr(guidColumn, 11, 6))
WHERE typeof(guidColumn) == 'blob';

@jol64 I don't know the exact details of where they bytes were being interpreted differently, but we did get reports saying that they were

Maybe the confusion was on the "most significant" byte of the nodes...


OfferFlags = 8 not described

Please update to describe what a value of 8 is for OfferFlags?  Thank you!

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

ID: 44b8a49c-e3ea-21ef-c13f-b7ffb228919b
Version Independent ID: dc505ab5-6ff5-4fb2-7ca0-9783457b4d06
Content: SMS_ApplicationAssignment Class - Configuration Manager
Content Source: sccm/develop/reference/apps/sms_applicationassignment-server-wmi-class.md
Product: configuration-manager
GitHub Login: @aczechowski
Microsoft Alias: aaroncz

Hey @Skatterbrainz I just found this when looking at the OfferFlags property for SMS_ApplicationAssignment class in WMIExplorerv2:
       OfferFlags - UInt32

       Qualifiers: bits, CIMTYPE, not_null

       [Description Not Available]

       Possible Bit Values:
       PREDEPLOY(1)
       ONDEMAND(2)
       ENABLEPROCESSTERMINATION(4)
       ALLOWUSERSTOREPAIRAPP(8)
       RELATIVESCHEDULE(16)
       HIGHIMPACTDEPLOYMENT(32)

The docs could do with updating. I'll create PR now. I'm not sure where WMIExplorer is pulling from to get this information but I'd love to know.

Hey! I pulled that from a sql query actually, but wmi would probably return
the same values.
On Sat, Oct 19, 2019, 5:12 PM Adam Cook<EMAIL_ADDRESS>wrote:

Hey @Skatterbrainz https://github.com/Skatterbrainz I just found this
when looking at the OfferFlags property for SMS_ApplicationAssignment
class in WMIExplorerv2:
   OfferFlags - UInt32

   Qualifiers: bits, CIMTYPE, not_null

   [Description Not Available]

   Possible Bit Values:
   PREDEPLOY(1)
   ONDEMAND(2)
   ENABLEPROCESSTERMINATION(4)
   ALLOWUSERSTOREPAIRAPP(8)
   RELATIVESCHEDULE(16)
   HIGHIMPACTDEPLOYMENT(32)

The docs could do with updating. I'll create PR now. I'm not sure where
WMIExplorer is pulling from to get this information but I'd love to know.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/SCCMdocs/issues/1180?email_source=notifications&email_token=ACXY22OCERL7NZYMHAPZWFLQPNZ4RA5CNFSM4GRF45S2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBX4YQA#issuecomment-544197696,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACXY22KGSJP4CCUZTBNK423QPNZ4RANCNFSM4GRF45SQ
.


[help] HTC Vive hmd interaction logic at player page

hello, :grinning:,I got some problem. Vizor is a super amazing project. I have started using vizor for twice development a few weeks, but I just don't know HTC vive how to interact with vizor at player page. The page will rotate as I swing the HTC vive hmd.
However I want to send the position and rotatation data to the server to async with other clients.
It seemd that it go through some underlying browser api, but i don't find what it is.
Somebody give me some suggestion? Thanks very much!

Hi Chenkai, Vizor accesses the WebVR and GamepadAPI. The best way to get help is via the Slack channel, and to look at existing projects, such as http://vizor.io/lintu/beach-drums-21 or http://vizor.io/gbentley/htc-vive-controllers-rotate-ball-copy .
Hope that helps!  If so, please close the issue.

@gbentley thank you very much. I have done it, just like you suggestion, the VRController.js have the lower api。


Adding HttpWebRequest to HttpClient Migration Guide

Summary
Fixes dotnet/runtime#92690
/cc @dotnet/ncl

Internal previews

📄 File
🔗 Preview link

docs/fundamentals/networking/http/httpclient-migrate-from-httpwebrequest.md
docs/fundamentals/networking/http/httpclient-migrate-from-httpwebrequest

looks good so far, do you plan to add more complex examples showcasing how to migrate use of certificates or ConnectCallback?

Yes, this is ongoing work and this is on my todo list, and I'll actually add specific links to those sections in Notes section in the table.

@dotnet/docs gentle reminder on this PR, can you take a look or I can merge this as-is and can create a follow-up PR for reviews.


Implements event

Events
As in #27, I needed more controls on Impetus lifecycle so I added events :

onStart : called when starting to drag the element
onStartDecelerating : called when the deceleration begun
onEndDecelerating : called when the deceleration has ended

Caution update is now onUpdate in order to be more consistent on naming
Build on Windows
I added a few dependencies in order to be able to build on Windows (for rm and cp command)

👍


bump version in package.json to v2.21.8

release version v2.21.8

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


Calling form.reset() is not resetting errors

Laravel Precognition Plugin Version
0.5.13
Laravel Version
11.34.2
Plugin
React
Description
calling form.reset() is not resetting the errors and there is no option to reset all errors at once therefore I have to call form.forgetError("fieldName") on every field.
Steps To Reproduce

Fill out form wrongly
Get errors
call form.reset()
The errors will still be visible

Did you already try to use form.setErrors({})?

@Hanz-Valta If you was using with Inertia, have the form.clearErrors() method.


Update to 74.0.3729.131-1

The safe-browsing patch required some fixing in the circular dependency section (i've removed other references to safe-browsing too, these could be redundant), the installer patch is now disabling an "updater" component too and a few other minor modifications.
The note about the unlinking of homebrew's binutils in the readme fixes a confusing linker error.
This PR is not ready yet to be merged since i'm still compiling, i'll update it once i'm done.

Done.

Do we still miss something related to validation of patches? I followed the readme but noticed we don't have the validate_patches.py script anymore here and running it manually doesn't work with this mac only patch set (or... i tried and failed).

The instructions in ungoogled-chromium's README apply for the ungoogled-chromium repo, not platform repos. I've updated this repo's instructions with some clarifications: ad6c2332f7b7fb2afb72e970753d4aad5e47c7fe
Hope that helps.

Refreshed and aligned some debian_buster patches with the one you have on the _debian repo. Even if it was not really needed, keeping the shared patches aligned across repos makes sense.

The mojo patch taken from the buster repo breaks the build for this missing property, fix in progress.

Ok, good to go, I simply reverted the mojo.patch to its previous state, now it builds successfully and everything works.
I suppose that patch will break ungoogled-chromium-debian too once it's updated to 74.0.3729.131.

Yes, I confirm that after the last commit chromium compiles successfully.


Update semver & yaml packages (NPM Audit security fixes)

Reduce Node package security warnings from 9 to 7
The reset of the NPM audit warnings are related to Draftail dependencies and cannot be easily resolved

Before
# npm audit report

node-fetch  <=2.6.6
Severity: high
The `size` option isn't honored after following a redirect in node-fetch - https://github.com/advisories/GHSA-w7rc-rwvf-8q5r
node-fetch forwards secure headers to untrusted sites - https://github.com/advisories/GHSA-r683-j2x4-v87g
No fix available
node_modules/isomorphic-fetch/node_modules/node-fetch
  isomorphic-fetch  2.0.0 - 2.2.1
  Depends on vulnerable versions of node-fetch
  node_modules/isomorphic-fetch
    fbjs  0.7.0 - 1.0.0
    Depends on vulnerable versions of isomorphic-fetch
    node_modules/fbjs
      draft-js  0.1.0 - 0.11.6
      Depends on vulnerable versions of fbjs
      node_modules/draft-js
        draft-js-plugins-editor  <=0.1.0 || 2.0.0-beta.2 - 2.1.1
        Depends on vulnerable versions of draft-js
        Depends on vulnerable versions of find-with-regex
        node_modules/draft-js-plugins-editor
          draftail  *
          Depends on vulnerable versions of draft-js
          Depends on vulnerable versions of draft-js-plugins-editor
          node_modules/draftail
        find-with-regex  >=1.1.1
        Depends on vulnerable versions of draft-js
        node_modules/find-with-regex

semver  <=5.7.1 || 6.0.0 - 6.3.0 || 7.0.0 - 7.5.1
Severity: moderate
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
fix available via `npm audit fix`
node_modules/css-loader/node_modules/semver
node_modules/enzyme-adapter-react-16/node_modules/semver
node_modules/enzyme-adapter-utils/node_modules/semver
node_modules/postcss-loader/node_modules/semver
node_modules/semver
node_modules/ts-jest/node_modules/semver
node_modules/ts-loader/node_modules/semver

yaml  2.0.0-5 - 2.2.1
Severity: high
Uncaught Exception in yaml - https://github.com/advisories/GHSA-f9xv-q969-pqx4
fix available via `npm audit fix`
node_modules/postcss-load-config/node_modules/yaml

9 vulnerabilities (1 moderate, 8 high)

To address issues that do not require attention, run:
  npm audit fix

Some issues need review, and may require choosing
a different dependency.

After
# npm audit report

node-fetch  <=2.6.6
Severity: high
The `size` option isn't honored after following a redirect in node-fetch - https://github.com/advisories/GHSA-w7rc-rwvf-8q5r
node-fetch forwards secure headers to untrusted sites - https://github.com/advisories/GHSA-r683-j2x4-v87g
No fix available
node_modules/isomorphic-fetch/node_modules/node-fetch
  isomorphic-fetch  2.0.0 - 2.2.1
  Depends on vulnerable versions of node-fetch
  node_modules/isomorphic-fetch
    fbjs  0.7.0 - 1.0.0
    Depends on vulnerable versions of isomorphic-fetch
    node_modules/fbjs
      draft-js  0.1.0 - 0.11.6
      Depends on vulnerable versions of fbjs
      node_modules/draft-js
        draft-js-plugins-editor  <=0.1.0 || 2.0.0-beta.2 - 2.1.1
        Depends on vulnerable versions of draft-js
        Depends on vulnerable versions of find-with-regex
        node_modules/draft-js-plugins-editor
          draftail  *
          Depends on vulnerable versions of draft-js
          Depends on vulnerable versions of draft-js-plugins-editor
          node_modules/draftail
        find-with-regex  >=1.1.1
        Depends on vulnerable versions of draft-js
        node_modules/find-with-regex

7 high severity vulnerabilities

Some issues need review, and may require choosing
a different dependency.

As this is a small package lock change for security I will merge this in.


Arch Installer stuck on "Downloading asar file"

Steps to reproduce:

Download appimage installer
Mark it as executable (chmod +x)
Execute (./)
Select install and discord stable
Installation gets stuck on downloading asar file

Do you have the same issue with the AUR version?

Do you have the same issue with the AUR version?

Nope, that works completely fine.

<EMAIL_ADDRESS>

T

Steps to reproduce:

Download appimage installer

Mark it as executable (chmod +x)

Execute (./)

Select install and discord stable

Installation gets stuck on downloading asar file

@Yes

Get these spammers out of here.

Same issue here on linux mint.

Not exactly sure why it wouldn't work by itself but it would in the AUR aside from permissions issues.

AppImages are weird. The AUR packages uses yarn dist:dir instead.

I'm stuck on downloading asar file on windows 🤔

Disable your antivirus and try again.

Disable your antivirus and try again.

sorry I didn't see this until now, I don't have any antivirus or VPN, so that was ruled out, and following the manual installation process rather than using the installer seemed to work, thanks anyway <3

how to fix it?

how

Same here on OpenSUS(OpenSUSE)

I tried compiling it myself still no luck I have no idea


[ios] build-name build arg only use numeric characters in ios

When I use the build-name flag to create my ipa file, Flutter only takes the numeric characters.
When I execute flutter build apk  --flavor dev --build-name 0.0.1-2c62365 the result build name is 0.0.1-2c62365. However, If I do the same for ios flutter build ipa  --flavor dev --build-name 0.0.1-2c62365 --export-options-plist ios/ExportOptions/dev_firebase.plist the result application name is 0.0.1262365.
Flutter removed the non-number characters for ios.
Steps to Reproduce

Compile an IPA using flutter build ipa  --build-name 0.0.1-2caa3

Expected results: The version name should be 0.0.1-2caa3
Actual results: The version name is 0.0.123
Flutter Doctor
octor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.3.6, on macOS 13.0.1 22A400 darwin-arm, locale en-UY)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 14.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.3)
[✓] Android Studio (version 2021.3)
[✓] Android Studio (version 2021.3)
[✓] IntelliJ IDEA Ultimate Edition (version 2022.2.3)
[✓] IntelliJ IDEA Ultimate Edition (version 2022.2.3)
[✓] VS Code (version 1.73.1)
[✓] Connected device (5 available)
[✓] HTTP Host Availability

• No issues found!

Hi @exaby73 thanks for the response, for android, I inspected the apk (and also firebase app distribution displays it in a proper way).
Firebase image:

For ios I checked the Info.plist located in the ipa file (you can do it executing tar -zxvOf IpaName.ipa Payload/AppName.app/Info.plist | plutil -convert xml1 -r -o - -- - | grep -A 1 CFBundleShortVersionString). Also I checked the name displayed in firebase and it's wrong.

Also I checked the flutter code and it seems that it's doing that.
  if (targetPlatform == TargetPlatform.ios ||
      targetPlatform == TargetPlatform.darwin) {
    // See CFBundleShortVersionString at https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
    final RegExp disallowed = RegExp(r'[^\d\.]');
    String tmpBuildName = buildName.replaceAll(disallowed, '');
    if (tmpBuildName.isEmpty) {
      return null;
    }
    final List<String> segments = tmpBuildName
        .split('.')
        .where((String segment) => segment.isNotEmpty)
        .toList();
    while (segments.length < 3) {
      segments.add('0');
    }
    tmpBuildName = segments.join('.');
    if (tmpBuildName != buildName) {
      logger.printTrace('Invalid build-name: $buildName for iOS/macOS, overridden by $tmpBuildName.\n'
          'See CFBundleShortVersionString at https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html');
    }
    return tmpBuildName;
  }

Based on that documentation, IOS does not support a version name like 1.2.3-asd. However, I tested and it works (I have been using it for years).
So the questions here are:

should flutter update your build name based on IOS documentation?
Should flutter provide different build names for android and ios?

In my opinion Flutter shouldn't process the name that you are defining in the build-name, if you define something flutter should use it (it could return a warning, but it shouldn't change it). Furthermore, Flutter shouldn't return different build name depending on the platform.
If your responses are that is ok as it is now, you can just close my issue.
Again, thanks!

@mirland
I believe the difference you are seeing on Android and iOS based on build-name is how it works fundamentally.
Please check below comment for more details: https://github.com/flutter/flutter/issues/27589#issuecomment-464457660
And also this comment from Flutter team for your reference.
Based on above, I am going ahead and closing it. If you disagree, write in comments and I'll reopen it.

From my point of view, Flutter shouldn't process the name or the version that you are defining, it's a matter of responsibility. when you set something, Flutter should just use it. However, I also understand your point, and I think it's valid. Thanks for your response and for taking the time to give me a clear response!


#import <React/RCTEventEmitter.h> file not found

Description
I recently upgraded an older project to 0.41. Everything is working fine, but there is one issue. When I try to build I always get 'React/RCTEventEmitter.h' file not found from the RCTLinkingManager.h file.
I've manually linked RCTLinking to the project and included it in the build phases. I've tried fiddling with the header search paths. I've tried putting the ../node_modules/react-native/Libraries/LinkingIOS path in the search path with recursive turned on. I've also tried pulling back and putting ../node_modules/react-native/Libraries in the path (recursive as well). Unfortunately that didn't solve the problem either.
If I unlink RCTLinking from the project I can build and everything works (except links that depending on the Linking library).
I'm using CocoaPods for the other React Native dependencies, so I'm wondering if that could be leading to this problem. Any guidance would be very appreciated.
Additional Information

React Native version: 0.41
Platform: iOS
Operating System: MacOS

Ah, I figured out the solution. I was incorrectly writing RCTLinking in the podfile, which prevented me from linking RCTLinking there. Changing that to RCTLinkingIOS as specified in the podspec fixed the issue.


Move taskList to the runtime package

Signed-off-by: Kenfe-Mickael Laventure<EMAIL_ADDRESS>--
I've started to work on a windows refactoring and realized it is in need of the same list.

Codecov Report

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

@@           Coverage Diff           @@
##           master    #1183   +/-   ##
=======================================
  Coverage   30.06%   30.06%
=======================================
  Files          28       28
  Lines        2292     2292
=======================================
  Hits          689      689
  Misses       1454     1454
  Partials      149      149

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 8eadcb8...88c1db5. Read the comment docs.

LGTM


Track maintainer.url

Helm 2.7.1 is releasing as I write this.
One of the features is this one: https://github.com/kubernetes/helm/issues/3056.
Need to make sure all the componentry will pick this up.

See also #90.


Add Universidad Continental

Universidad Continental
Add domain continental.edu.pe

@morixavier I am sorry, the domain continental.edu.pe is removed from our trusted domains list because it was abused in the past. If you are the student of this school, please enroll to GitHub Student Developer Pack at https://education.github.com/discount_requests/application. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).


[WPF] Spacing and Separator on some controls has no effect

Spacing and separators appears to work as expected on Container elements, but for example, spacing and separator have no effect on the ColumnSet element or a textblock inside a column element
As all elements support both these properties, this may require a test of all element implementations

I'm having trouble reproducing this issue, I ran the wpf visualizer and it looks good

Looks like this has been fixed in WPF. @mrbrennonwilliams please reactivate with repro steps if you continue to see this. Thanks a ton!


Trying out automatic version numbering

Using setuptools_scm to allow automatic version numbering
Let's not merge this quite yet, I'm just using the automated tests to make sure that the tweak behaves as expected

Codecov Report

Merging #393 (1734c81) into main (fc82232) will decrease coverage by 0.00%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #393      +/-   ##
==========================================
- Coverage   57.54%   57.54%   -0.01%
==========================================
  Files          71       70       -1
  Lines        7444     7443       -1
==========================================
- Hits         4284     4283       -1
  Misses       3160     3160

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 fc82232...1734c81. Read the comment docs.

Alright, this PR takes advantage of https://github.com/pypa/setuptools_scm/ to allow us to remove all hard coded version numbers in Eureka! and instead uses the git tags to automatically set version numbers. So if the latest git tag is v0.2.1 and you install code that is 20 commits past that tag (which this branch is), then setuptools_scm says that version of the pipeline is version 0.2.2.dev20+gbd6c45d (increase patch number by one, add "dev", add the number of commits past the latest patch, and then give the condensed form of the git commit hash). This basically eliminates any difficulties or headaches with setting version numbers - we just add git tags whenever we feel there has been a significant change and want a new fixed point

And while I was at it, I fixed some bugs with the documentation FYI


Managed Redis doesn't have correct statuses

Managed Redis stays stuck with status UPDATE_QUEUED

This could be solved by adding an intermediate status/state when CD pulumi up is done, something like UPDATE_DONE.

Let's use SNS to receive the events from AWS and translate these in Fabric to high level HEALTHY or FAILED events.

Use CloudWatch alarm, publish to SNS, handle in Fabric and translate to high level state.


OGC.GPKG support

Can Mapsui support Geopackage vector features or raster tiles?

Raster tiles are supported via Mapbox tile files (mbtiles). See for this BruTile.

Mapsui does not support GPKG, it would be in interesting format to support. There don't seem to be any .net libraries for this. An option would be to use GDAL. This would bring in a lot of functionality but it's always a hassle to get the binary deployment working smoothly. This should be a separate library.

Mapsui has a converter for WKB and that's basically how the geopackage features are stored in the sqlite database blob. TILES are easy just like mbtiles except for XYZ instead of TMS.  but the tiles can be in any projection where mbtiles is only spherical web Mercator

Mapsui has a converter for WKB and that's basically how the geopackage features are stored in the sqlite database blob. TILES are easy just like mbtiles except for XYZ instead of TMS.  but the tiles can be in any projection where mbtiles is only spherical web Mercator


GDPR - Ask for email consent in customer signup

See #874. We should the merchant during the registration if he wants to receive our newsletter and/or digital marketing.

Is this just an extra checkbox?


WIP Audio

Working on adding sound. Currently crashing with 'memory allocation of<PHONE_NUMBER>31575 bytes failed'

closing in favor of #37 to keep branches on this repo


JSON controller outputs exception and stack trace

I'm trying to use the framework as part of a web GUI, but using the Json output is not working; it just outputs an error.  The error displayed in the browser is:
Internal server error

Exception
Message:
Exception was thrown: System.ArgumentException
Stack Trace:
System.Reflection.MethodBase::Invoke
Rinsen.WebServer.Serializers.JsonSerializer::Serialize
Rinsen.WebServer.Serializers.JsonSerializer::Serialize
Rinsen.WebServer.Controller::SetJsonResult
Reflow_Oven_Controller.Web_GUI.DataController::Index
System.Reflection.MethodBase::Invoke
Rinsen.WebServer.HttpApplicationHandler::Execute
Rinsen.WebServer.RequestResponseHandler::CreateResponse
Rinsen.WebServer.RequestResponseHandler::ProcessRequest
Rinsen.WebServer.SocketListener::ProcessRequest
Rinsen.WebServer.SocketListener::ProcessClientRequest
Rinsen.WebServer.SocketListener::StartListening
Rinsen.WebServer.ServerBase::MyThreadStart
Rinsen.WebServer.ServerBase::<StartServer>b__0

And the entire code for my Json controller is:
using System;
using Microsoft.SPOT;
using Rinsen.WebServer;
namespace Reflow_Oven_Controller.Web_GUI
{
    class DataController : Controller
    {
        public void Index()
        {
            var Data = new JsonData
            {
                OvenTemperature = OvenController.OvenTemperature,
                BayTemperature = OvenController.BayTemperature,
                CPUUsage = OvenController.CPULoad.LoadPercentage,
                MemUsage = OvenController.FreeMem,
                Running = false,
                RunTime = -1,
                DoorOpen = OvenController.DoorAjar
            };
            SetJsonResult(Data);
        }

        public class JsonData
        {
            public float OvenTemperature{get; set;}
            public float BayTemperature { get; set; }
            public uint MemUsage { get; set; }

            public int CPUUsage { get; set; }
            public int RunTime { get; set; }

            public bool Running { get; set; }
            public bool DoorOpen { get; set; }
        }
    }
}

Hi!
I have made a fix for this tha i will commit tomorrow. The problem is that the json serializer has a very basic type support for built in C# types and i have added some more type handling but I need to test this a bit more before it´s good enough to use.
So i will get back when it´s done.

I have commited this change now and it should fix you´re problems.
One thing to remember is that the default C# stringbuilder float parser gives garbage back, in a perfect world this should be customizable in some way but right now it´s not. For an example you can check the test i have added that´s called WhenSerializeWithMoreDatatypes_GetSerialiedJsonString.

And i also changed bool parsing to be only lower case letters in json data object to follow common json standards.


Self host and error handling

I'm integrating a SignalR server inside a WPF application.
My problem is that whenever an error occurs on a hub I can't handle it in a global way.
See this line:
https://github.com/aspnet/SignalR/blob/defbadb26b4224d5025549992fc5ae4e95e0d288/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionHandler.cs#L113
As you can see it's handled internally so I can't handle it myself.

You could provide your own HubDispatcher (just inherit from DefaultHubDispatcher, override OnConnectedAsync and register your new type in the DI container using AddSingleton<IHubDispatcher, MyHubDispatcher> after calling AddSignalR) and handle it there.
We don't have the "Hub Pipeline" concept from ASP.NET SignalR, which would make this simpler, but have considered bringing it back (https://github.com/aspnet/SignalR/issues/3137).

For the specific case of "OnConnectedAsync" method works but if I declare any other method in my hub and occurs an exception in doesn't get catched because of this:
https://github.com/aspnet/SignalR/blob/1.0.4/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.cs#L164

Hrm, good eye. Maybe we should move that catch to the caller of DispatchMessagesAsync so derived dispatchers have a chance to receive the exception. I filed https://github.com/aspnet/SignalR/issues/3142 to look at that.
In the meantime, a somewhat hacky workaround would be to copy the DefaultHubDispatcher code in to your own custom dispatcher and patch out that catch in your version. It's not great, but it would give you something you can use immediately.

Thanks, I will try that


python310Packages.datamodeldict: 0.9.8 -> 0.9.9

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.datamodeldict is: "Class allowing for data models equivalently represented as Python dictionaries, JSON, and XML"
meta.homepage for python310Packages.datamodeldict is: "https://github.com/usnistgov/DataModelDict/"
meta.changelog for python310Packages.datamodeldict is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

Warning: a test defined in passthru.tests did not pass

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 0.9.9 with grep in /nix/store/rziaszkx737xiv954h3x49adpb38lx50-python3.10-DataModelDict-0.9.9

found 0.9.9 in filename of file in /nix/store/rziaszkx737xiv954h3x49adpb38lx50-python3.10-DataModelDict-0.9.9

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

12 total rebuild path(s)

6 package rebuild(s)

6 x86_64-linux rebuild(s)
6 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
python310Packages.atomman
python310Packages.datamodeldict
python310Packages.potentials
python39Packages.atomman
python39Packages.datamodeldict
python39Packages.potentials

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/rziaszkx737xiv954h3x49adpb38lx50-python3.10-DataModelDict-0.9.9 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

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

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/rziaszkx737xiv954h3x49adpb38lx50-python3.10-DataModelDict-0.9.9
ls -la /nix/store/rziaszkx737xiv954h3x49adpb38lx50-python3.10-DataModelDict-0.9.9/bin

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

6 packages built:

python310Packages.atomman
python310Packages.datamodeldict
python310Packages.potentials
python39Packages.atomman
python39Packages.datamodeldict
python39Packages.potentials

Maintainer pings
cc @costrouc for testing.

Result of nixpkgs-review pr 160529 run on x86_64-linux 1

6 packages built:

python310Packages.atomman
python310Packages.datamodeldict
python310Packages.potentials
python39Packages.atomman
python39Packages.datamodeldict
python39Packages.potentials


fix tb_print* behaviour

The functions were only returning TB_OK or TB_ERR instead of the no. of characters written to. I've changed it to return the width of the printed characters instead of the number since it helps in accounting for wide chars.

Merged in 5e5fc68f4f74c70074aebceb8cb2fa94d1f4e488 slightly modified. Thanks!


Music app update

Its not entirely the same, but nonetheless thank you for making this page for this idea learned a lot

Hey! Bounties are only for deployed projects, do you have any deployed url? Render.com is usually quite painless for this.

https://harmonysync.onrender.com
here it is, could you explain what this does?

Now its fully live under one link, https://harmonysyncserver.onrender.com :DD thank you

Now its fully live under one link, https://harmonysyncserver.onrender.com :DD thank you

Hey, hitting login goes to a local host url which won't work.

NOW IT WORKS thanks I learned more now I know how to deploy

NOW IT WORKS thanks I learned more now I know how to deploy

Great, the login screen opens now. After I login, there's no indication I have logged in anywhere (the login text should change to say I've logged in). Hitting generate playlist after that takes me to https://harmonysyncserver.onrender.com/playlists which doesn't really make sense to me and also doesn't work!

sorry Im working on it, it only works with my spotify account for some reason, sorry for wasting ur time

Hi Im really having trouble deploying and I was wondering if you could offer any help as I've been trying to solve this problem for 2 days and still not a clue of whats going on, if not that's ok. Thanks regardless

Hi Im really having trouble deploying and I was wondering if you could offer any help as I've been trying to solve this problem for 2 days and still not a clue of whats going on, if not that's ok. Thanks regardless

I recommend using claude.ai or gpt4 to ask questions to! If you analyze your codebase with cursor.so with a gpt4 api key, it should tell you the issues and how to solve them.

Hello good sir, I think I have deployed it successfully this time, https://harmony-sync-client.vercel.app

Right now I am trying to get the quota extension so people can use my client id etc, I need the email for your spotify account for you to use the app :(. Trying to get the quota extension right now

here is a testing acc,
<EMAIL_ADDRESS>pass:testing123
https://harmonysync.shin003.com/

here is a testing acc<EMAIL_ADDRESS>pass:testing123 https://harmonysync.shin003.com/

Cool! Going to wait till it's approved. I recommend using the UI elements and font from spotifymatch.com (https://github.com/colin4554/spotify-match) to make it look more spotify-like.

Right now I am trying to get the quota extension so people can use my client id etc, I need the email for your spotify account for you to use the app :(. Trying to get the quota extension right now

Hey! Any updates on if you got accepted by spotify?

Hi, Spotify got back to me and said to put logos. etc. to pass, I'm swamped by school/ life stuff so currently so I can't get to it as of now, is there a time limit? I most likely could get it done when spring break rolls around.

Hi @SHIN0003 great app, I have made a similar app but for mobile platform, with react native, it's single page application, https://github.com/AnantTiwari001/BPM_Music . While yours does recommendation mine is just filtering the track from saved track of a specific bpm from user input.

Hi @SHIN0003 great app, I have made a similar app but for mobile platform, with react native, it's single page application, https://github.com/AnantTiwari001/BPM_Music . While yours does recommendation mine is just filtering the track from saved track of a specific bpm from user input.

Hey @AnantTiwari001, looks great! Can you release it on Google Play and App Store? You should make a PR adding it to the list so that I can approve it and pay you the bounty.

Hi, Spotify got back to me and said to put logos. etc. to pass, I'm swamped by school/ life stuff so currently so I can't get to it as of now, is there a time limit? I most likely could get it done when spring break rolls around.

@SHIN0003 there's never a time limit, feel free to finish when you'd like. Using Cursor will help you debug and iterate faster.

Thanks man, currently trying to find a full time job. Want to jump off of a cliff.


Build for Iris 3.0.0rc0

I have based these changes of what was done in #55

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I was trying to look for recipes to lint for you, but it appears we have a merge conflict.
Please try to merge or rebase with the base branch to resolve this conflict.
Please ping the 'conda-forge/core' team (using the @ notation in a comment) if you believe this is a bug.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Fixed #32727 -- Allowed spaces before time zone offset in parse_datetime().

Trac ticket: https://code.djangoproject.com/ticket/32727
According to ISO-8601, there can be any number of whitespace characters between the time strings and timezone strings.
Unfortunately the spec isn't public, but here's the link anyway https://www.iso.org/iso-8601-date-and-time-format.html.
Examples:
This is a valid ISO-8601 datetime string:
2012-04-23T10:20:30.400-02

django.utils.dateparse.parse_datetime parses this correctly.
This is also a valid ISO-8601 datetime string:
2012-04-23T10:20:30.400 -02

django.utils.dateparse.parse_datetime does not parse this correctly and returns None.
However, python-dateutil parses it correctly.  The difference is that Django uses a (brittle) regex to parse ISO-8601 datetime strings, and python-dateutil does not.
https://github.com/django/django/blob/main/django/utils/dateparse.py#L22
https://github.com/dateutil/dateutil/blob/master/dateutil/parser/isoparser.py
I recommend that Django:

Depend on python-dateutil for datetime string parsing

OR

Inline python-dateutils' parsing functions

As far as I know there is no regex that can parse the full spec of ISO-8601 datetime strings.
In the meantime, this is a patch to support (valid) whitespace characters between the seconds/millseconds part and the timezone string.

@benwilber Thanks :+1:

I recommend that Django:
1. Depend on python-dateutil for datetime string parsing

OR
1. Inline python-dateutils' parsing functions

This should be discussed separately (see comment).


Weird artifacts caused by Nvidia

Hyprland Version
 System/Version info
Hyprland, built from branch main at commit 289d4241bea72ebd891e037996ec4ffd356aadc8 dirty (groupbar: scale groupbar text according to monitor scale (4640)).
Date: Thu Feb 8 23:29:10 2024
Tag: v0.35.0-9-g289d4241

flags: (if any)

Bug or Regression?
Bug
Description
Strange artifacts occur when scrolling (or when any motion happens) on the external monitor.
This occurs on any application only on the external monitor. I have a HP laptop with Intel Iris integrated graphics and Nvidia GTX 1050 Max-Q. External monitor is connected through HDMI.
I did everything the Nvidia wiki page specified. I also tried with several Nvidia driver versions, namely 550 (beta), 545, 535, 525. The artifacts always occur (although on version 525 monitor did not give any output at all). I tried the open source Nouveau drivers aswell and the artifacts did not occur there, however the experience with those drivers is simply terrible (external monitor feels like it is set to ~25Hz).
I also messed around with variables, however no matter how I set them, the result was always the same. They are pasted here anyway:
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland

env = GDK_BACKEND,wayland
env = QT_QPA_PLATFORM,wayland
env = QT_QPA_PLATFORMTHEME,qt5ct
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1

env = SDL_VIDEODRIVER,wayland
env = _JAVA_AWT_WM_NONREPARENTING,1
env = WLR_NO_HARDWARE_CURSORS,1
env = WLR_DRM_NO_ATOMIC,1
env = LIBVA_DRIVER_NAME,nvidia
env = GBM_BACKEND,nvidia-drm

env = MOZ_DISABLE_RDD_SANDBOX,1
env = MOZ_ENABLE_WAYLAND,1

env = OZONE_PLATFORM,wayland

How to reproduce
(everything is already described above)
Crash reports, logs, images, videos

nvidia is not officially supported. Looks like your drivers are not having a good day.


Move reduce taint flag out of e.target()

We ought to move the taint flag from the e.target().is_flagged() into a separate e.flags[REDUCE_FLAG::CUT_TAINT]. This provides the basis for us to add many of the extensions.

For #433, we need to free the current flag to be used for the complementation flag. If we in fact use it for the complementation flag instead, we may as well include the flag-bit as part of the value of a terminal. This makes the non-compressed 64-bit variant necessary for MTBDDs or very very large BDDs much easier to implement.
The Saturation algorithm and similar require knowing whether subtrees have changed and so arcs should forward a changed_taint. EDIT: This might actually not be necessary, as we can just store a single bool within the nested sweeping to check if any path has changed.
#434 requires forwarding the hash of the children.
#435 requires knowing the variable describing the node and describing its children.

Tasks

[ ] Define reduce_arc type to publicly inherit from arc
[ ] Add private uint8_t flags variable and a flag(enum) function to access it. Add set_flag(enum) to set the flag.
[ ] Replace usage of the flagging on target with using the flag.

It seems like this might be useful for Nested Sweeping, if one wants to make it support the output of the inner sweep are above the outer one. This makes the Relational Product, Multi-composition ( #411 ), and Variable Reordering. Because, here we can add a CURRENT_SWEEP flag that dictates whether to forward the edge in the current sweep or in the parent sweep.

While the goal itself of moving the taint flag is done, the resulting class reduce_flags should be generalised into a tuple of bool in adiar/internal/data_types.

See #479 for a reference implementation. But, it probably needs to be fully reimplemented from scratch to deal with the merge conflicts.


plugin not defined

Getting plugin not defined error.
Cordova version 5.3.3.
Below are the plugins used.

the plugin works perfectly, I don't know what you're doing.

 I stumbled in here looking for an answer to the same question. Luckily I figured it out on my own. In my case, I didn't realize that the cordova plugins wouldn't be available during development as I expected.


Write on boarding text for "Convex Hull" analysis

We are about to add the "Convex Hull" analysis (https://github.com/CartoDB/cartodb/issues/8883) and would need some information for the screen that appears after an analysis is finished.

cc: @andrewxhill

Why not have a "Group points into polygons" analysis?
Inside of that analysis, there would be a set of choices,

bounding box
bounding circle
convex hull (minimum circumference bounds)
concave hull (minimum area bounds)

etc?

Big +1 for me. And we could have convex hull in the description so it's easier to find for some people

I'm ok with this idea, but I'm adding @xavijam and @dgaubert to the conversation.

Fine by me, it would be only a change in the add-analysis modal view.

Also fine by me, In camshaft-reference we will have one analysis for each type.

I can change the UI to support that. I love the idea :)

@javierarce here you go:
{Group points into polygons} has finished.

{The geometries in your table were updated.}

* {the_geom}
   {This column was updated to polygons encompassing the input points.}

{Group points into polygons used group {method_chosen} to create new polygons.}

{Read more in [PostGIS documentation](http://postgis.net/docs/manual-2.2/)}

We obviously need better documentation on this one, so I put the general PostGIS link as filler for now.

Actually, will there be other aggregations that occur with this analysis? Like average over all points or something like that?
I don't see anything like that in the camshaft node: https://github.com/CartoDB/camshaft/blob/master/lib/node/nodes/convex-hull.js#L20

UI Changes are designed.
For the time being I'd go with the proposed 4 algorithms. @dgaubert / @rochoa any chance we can work on those additions during this sprint?

Concave will require an additional parameter I believe.
On Mon, Aug 8, 2016 at 5:51 AM Sergio Álvarez Leiva <
<EMAIL_ADDRESS>wrote:

UI Changes are designed.
For the time being I'd go with the proposed 4 algorithms. @dgaubert
https://github.com/dgaubert / @rochoa https://github.com/rochoa any
chance we can work on those additions during this sprint?
[image: 01 layers - 06-170 analysis - group points in polygons]
https://cloud.githubusercontent.com/assets/132149/17476051/60fc2502-5d5e-11e6-9a6e-bc9b167b642d.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/CartoDB/cartodb/issues/9326#issuecomment-238191019,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAWmU6jAqNe61u3l3QCOhLdEz6cejDV5ks5qdvwPgaJpZM4JdhO9
.

--
Andrew W. Hill, Chief Science Officer
www.carto.com | @andrewxhill https://twitter.com/andrewxhill
Carto—Predict through Location
201 Moore Street, Brooklyn, New York, 11206, USA

The only parameter that I can imagine is the Allow Holes.
@javierarce, can we add a radio button set with
"ALLOW HOLES" - () YES (X) NO
http://postgis.net/docs/ST_ConcaveHull.html

No, the target precision is the key one.
On Mon, Aug 8, 2016 at 1:00 PM Sergio Álvarez Leiva <
<EMAIL_ADDRESS>wrote:

The only parameter that I can imagine is the Allow Holes.
@javierarce https://github.com/javierarce, can we add a radio button
set with
"ALLOW HOLES" - () YES (X) NO
http://postgis.net/docs/ST_ConcaveHull.html
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/CartoDB/cartodb/issues/9326#issuecomment-238300871,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAWmU8PfL94yipREUQLbkb6g8JTugKGgks5qd2CQgaJpZM4JdhO9
.

--
Andrew W. Hill, Chief Science Officer
www.carto.com | @andrewxhill https://twitter.com/andrewxhill
Carto—Predict through Location
201 Moore Street, Brooklyn, New York, 11206, USA

True thing, I missed that one.
We need a picker as well like the one with significance. @javierarce let me know if you want me to do the mockup

Yes, please, this is starting to get quite complex.
Also, pinging @dgaubert & @rochoa for this: https://github.com/CartoDB/cartodb/issues/9326#issuecomment-238191019

Here is the UI for concave hull and for Convex Hull / Bounding Circle / Bounding Box

Looks great! One suggestion I have is changing "Algorithm" to "Method".
And will the grey text which says "define reference and target layers" be changed? If so, I propose "define reference layer and method".

@javierarce how does that sound?

I'd say it looks fantastic, thanks!

@dgaubert/@rochoa: have you thought of a name for this group of analyses? Would group-points-into -polygons be OK?

@ohasselblad: we'll need a small text to show users in the "add a new analysis" window. Could you take care of writing that, please?

@javierarce, here you go!
Group points into polygons

Aggregate points into polygons such as convex hulls or bounding boxes.

My two cents related to Concave Hull:

"Target percent" --> "Convex hull lookalike". If we have graphical labels I'd say:

:star:  [    input box   ] :red_circle:
Because that's the practical meaning of that parameter.

Default value for "target percent": 0.7 instead of 0.6, far faster and best shot for the money: http://www.bostongis.com/postgis_concavehull.snippet

Hey guys, can we unblock this?
+1 to Abel's comment as far as it fits in the UI.

What is the bounding box for a point? I mean, if I don't use a group by and my source is a points dataset should I still get polygons?

@javierarce I prepared a branch with the new analyses: https://github.com/CartoDB/camshaft/pull/175.
Can you start using that for development? If you find any problem let me know.

@rochoa, you should get a single polygon containning all your features

What if I have just one point? 😈

SELECT ST_AsText(ST_Envelope('POINT(1 3)'::geometry));
 st_astext
------------
 POINT(1 3)

That's why I was 😈 . Because we are supposed to return polygons, but we won't for that particular case, unless we cover that corner case.

we can also disable the analysis with just one point datasets :P

Hey, convex hull options will be available soon, is this ticket solved there @javierarce ?

Yup


fetch into key

add an optional key input to the fetches (yaml/json). if specified, fetch yaml/json into that key, rather than directly to the root of the context.

same for s3 fetch in pypyraws


pythonPackages.cryptography{,_vectors}: 2.5 -> 2.6.1

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

duplicate of https://github.com/NixOS/nixpkgs/pull/56690
Sometimes this happens.

Oh, forgot to search for existing PRs before making this, sorry. Was trying to build #54425 after the dependency got bumped.


[cxx-interop] Allow specific getters/setters to be imported as comput…

…ed properties.
Adds SWIFT_COMPUTED_PROPERTY. Refs -cxx-interop-getters-setters-as-properties.

rdar://107757246

@swift-ci please test

@zoecarver wondering how will the errors look if the attribute is used on a method with arguments? A test for that? Also, wondering if there can be name collisions when importing the two different methods using this attributes. If so, how the errors would look?

We can add further testing after the fact on main.

Want to get this into 5.9 asap

@zoecarver wondering how will the errors look if the attribute is used on a method with arguments? A test for that? Also, wondering if there can be name collisions when importing the two different methods using this attributes. If so, how the errors would look?

IIUC if the attribute is wrongly used, it wouldn't have any effect.


Vim9: ":h type-checking" can be improved

Here's what the help says at the end of :h type-checking:

One consequence is that the item type of a list or dict given to map() must
not change.  This will give an error in compiled code: >
map([1, 2, 3], (i, v) => 'item ' .. i)
E1012: Type mismatch; expected list but got list
Instead use |mapnew()|.

There are a few issues with this paragraph.

First, the error is not:
E1012: Type mismatch; expected list<number> but got list<string>

It's:
E1012: Type mismatch; expected number but got string

Second, there's no good reason to mention "in compiled code".
One reason could be that the error is only raised in a :def function.  That's not the case; it's also raised at the script level:
vim9script
map([1, 2, 3], (i, v) => 'item ' .. i)

E1012: Type mismatch; expected number but got string

One could argue that even though the code is written at the script level, the lambda is still compiled.  That's true, but only since 8.2.2527.  This paragraph was written well before this patch, so I doubt this explains "in compiled code".
Another reason could be that – when the code is compiled – the error is raised at compile time; not at runtime.  That's not the case either:
vim9script
def Func()
    map([1, 2, 3], (i, v) => 'item ' .. i)
enddef
defcompile

no error

I think "in compiled code" should be replaced with "at runtime".

Third, the help says that the item type must not change:

One consequence is that the item type of a list or dict given to map() must
not change.

That's not entirely true.  It can change if the old last subtype is any, and the new one is more specific (number, string, ...):
vim9script
def Func()
    var l: list<dict<any>> = [{a: 0, b: ''}]
    map(l, (_, v: dict<any>): dict<number> => ({c: 0}))
enddef
Func()

no error

Notice that no error was raised, even though the old type of the list items was dict<any>, while the new one is dict<number>.  It changed without Vim complaining.  I think it's working as intended (right?), because the new type is compatible with the old one. It might be similar to this:
vim9script
var x: list<any> = [1, 2, 3]

This snippet doesn't raise any error, even though we've declared that x was a list of mixed values, while in reality we assign it a list of numbers.
Anyway, if this is working as intended, I think the help should mention this:

One consequence is that the item type of a list or dict given to map() must
not change; unless the last subtype is <any>, in which case, it is allowed
to replace it with a more specific type.

Fourth, this rule is not enforced only for map(); it also affects extend() and flatten().  Maybe the help should mention them too.

As a suggestion here is patch:
diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt
index bde3c9b7b..361a55e9a 100644
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -307,14 +307,14 @@ Example: >
 	const myList = [1, 2]
 	myList = [3, 4]		# Error!
 	myList[0] = 9		# Error!
-	muList->add(3)		# Error!
+	myList->add(3)		# Error!
 <							*:final*
 `:final` is used for making only the variable a constant, the value can be
 changed.  This is well known from Java.  Example: >
 	final myList = [1, 2]
 	myList = [3, 4]		# Error!
 	myList[0] = 9		# OK
-	muList->add(3)		# OK
+	myList->add(3)		# OK

 It is common to write constants as ALL_CAPS, but you don't have to.

@@ -1028,11 +1028,13 @@ an error, thus breaking backwards compatibility.  For example:
 - Using a string value when setting a number options.
 - Using a number where a string is expected.   *E1024*

-One consequence is that the item type of a list or dict given to map() must
-not change.  This will give an error in compiled code: >
+One consequence is that the item type of a list or dict given to map(),
+extend(), or flatten() must not change; unless the last subtype is <any>, in
+which case, it is allowed to replace it with a more specific type.  This will
+give an error at runtime: >
 	map([1, 2, 3], (i, v) => 'item ' .. i)
-	E1012: Type mismatch; expected list<number> but got list<string>
-Instead use |mapnew()|.
+	E1012: Type mismatch; expected number but got string
+Instead use |mapnew()|, |extendnew()|, or |flattennew()|.

 ==============================================================================

Note that the patch also fixes 2 unrelated typos which are currently present on line 310:

muList->add(3)          # Error!

and 317:

muList->add(3)          # OK

In both cases, muList should be replaced with myList.

Maybe the comma after "in which case" is superfluous:
diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt
index bde3c9b7b..ee7b43e38 100644
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -307,14 +307,14 @@ Example: >
 	const myList = [1, 2]
 	myList = [3, 4]		# Error!
 	myList[0] = 9		# Error!
-	muList->add(3)		# Error!
+	myList->add(3)		# Error!
 <							*:final*
 `:final` is used for making only the variable a constant, the value can be
 changed.  This is well known from Java.  Example: >
 	final myList = [1, 2]
 	myList = [3, 4]		# Error!
 	myList[0] = 9		# OK
-	muList->add(3)		# OK
+	myList->add(3)		# OK

 It is common to write constants as ALL_CAPS, but you don't have to.

@@ -1028,11 +1028,13 @@ an error, thus breaking backwards compatibility.  For example:
 - Using a string value when setting a number options.
 - Using a number where a string is expected.   *E1024*

-One consequence is that the item type of a list or dict given to map() must
-not change.  This will give an error in compiled code: >
+One consequence is that the item type of a list or dict given to map(),
+extend(), or flatten() must not change; unless the last subtype is <any>, in
+which case it is allowed to replace it with a more specific type.  This will
+give an error at runtime: >
 	map([1, 2, 3], (i, v) => 'item ' .. i)
-	E1012: Type mismatch; expected list<number> but got list<string>
-Instead use |mapnew()|.
+	E1012: Type mismatch; expected number but got string
+Instead use |mapnew()|, |extendnew()|, or |flattennew()|.

 ==============================================================================

I think "in compiled code" should be replaced with "at runtime".

This is especially important to explain why this kind of issue can't be avoided.  map(), extend(), flatten() don't care about the type of a declared variable received as first argument, at compile time.  They only care about the type of the value they get at runtime.

They only care about the type of the value they get at runtime.

To be more accurate, they only care about the type they can infer from the value.

If we use the word "subtype" for the old value, we should use it for the new value too (to be consistent).  New patch:
diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt
index bde3c9b7b..ce05d5567 100644
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -307,14 +307,14 @@ Example: >
 	const myList = [1, 2]
 	myList = [3, 4]		# Error!
 	myList[0] = 9		# Error!
-	muList->add(3)		# Error!
+	myList->add(3)		# Error!
 <							*:final*
 `:final` is used for making only the variable a constant, the value can be
 changed.  This is well known from Java.  Example: >
 	final myList = [1, 2]
 	myList = [3, 4]		# Error!
 	myList[0] = 9		# OK
-	muList->add(3)		# OK
+	myList->add(3)		# OK

 It is common to write constants as ALL_CAPS, but you don't have to.

@@ -1028,11 +1028,13 @@ an error, thus breaking backwards compatibility.  For example:
 - Using a string value when setting a number options.
 - Using a number where a string is expected.   *E1024*

-One consequence is that the item type of a list or dict given to map() must
-not change.  This will give an error in compiled code: >
+One consequence is that the item type of a list or dict given to map(),
+extend(), or flatten() must not change; unless the last subtype is <any>, in
+which case it is allowed to replace it with a more specific subtype.  This will
+give an error at runtime: >
 	map([1, 2, 3], (i, v) => 'item ' .. i)
-	E1012: Type mismatch; expected list<number> but got list<string>
-Instead use |mapnew()|.
+	E1012: Type mismatch; expected number but got string
+Instead use |mapnew()|, |extendnew()|, or |flattennew()|.

 ==============================================================================

Thanks, I'll include it and make it a bit more readable.


[Suggestion] Adding new event trigger

This is either suggestion or requested, but I think there should be new events like:

When player kill another player
When player kill an entity

thank you for your suggestion. i'll add them.

There was already a "when a player dies" event, so I added "killer" to it.

I just test the new event, it worked btw. I will inform you if there is any bug, keep up the good work 👍

thank you!

[16:20:22] [Server thread/WARNING]: [Mineflow] [Increase the mission step.] {killer} is not Player variable.
[16:20:22] [Server thread/WARNING]: [Mineflow] Failed to execute the action. : test4 > Increase the mission step.
Ok so I just found in the console


[Bug] test

Checklist

[ ] I'm reporting a bug unrelated to a specific site
[ ] I've verified that I'm running yt-dlp version 2021.09.25
[ ] I've checked that all provided URLs are alive and playable in a browser
[ ] The provided URLs do not contain any DRM to the best of my knowledge
[ ] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[ ] I've searched the bugtracker for similar bug reports including closed ones
[ ] I've read the opening an issue section in CONTRIBUTING.md
[ ] I have given an appropriate title to the issue

Verbose log

PASTE VERBOSE LOG HERE

Description

WRITE DESCRIPTION HERE

Test


Torbutton WARN: [Exception... "Component returned failure code: 0x804b000d (NS_ERROR_CONNECTION_REFUSED)

Hi, I am unable to run my automation script. The logic is to open the given URL and Capture the page DOM along with a screenshot of the entire page in a headless manner. However, I keep getting errors like :
1620566606372   geckodriver     INFO    Listening on <IP_ADDRESS>:53065
1620566606410   mozrunner::runner       INFO    Running command: "/home/akshaya/Desktop/master_thesis/executables/tor-browser_en-US/Browser/firefox" "--marionette" "-foreground" "-no-remote" "-profile" "/tmp/rust_mozprofileHGUMmc"
[05-09 13:23:26] Torbutton INFO: Torbutton debug output ready
[05-09 13:23:26] Torbutton INFO: domain isolator: set up isolating circuits by domain
[05-09 13:23:26] Torbutton INFO: Component Load 0: New DragDropFilter.
[05-09 13:23:26] Torbutton INFO: Startup Observer created
[05-09 13:23:26] Torbutton INFO: This is a Tor Browser's XPCOM
[05-09 13:23:26] TorLauncher INFO: debug output ready
[05-09 13:23:26] TorLauncher INFO: SOCKS port type: TCP
[05-09 13:23:26] TorLauncher INFO: SOCKS host: <IP_ADDRESS>
[05-09 13:23:26] TorLauncher INFO: SOCKS port: 9050
[05-09 13:23:26] Torbutton INFO: Reset socks host to <IP_ADDRESS>
[05-09 13:23:26] Torbutton INFO: Reset socks port to 9050
[05-09 13:23:26] Torbutton INFO: Synced network settings to environment.
[05-09 13:23:26] Torbutton INFO: Listening for message from NoScript.
[05-09 13:23:26] Torbutton NOTE: Initializing security-prefs.js
[05-09 13:23:26] Torbutton NOTE: security-prefs.js initialization complete
[05-09 13:23:26] Torbutton INFO: Reset socks host to <IP_ADDRESS>
[05-09 13:23:26] Torbutton INFO: Reset socks port to 9050
[05-09 13:23:26] Torbutton INFO: Synced network settings to environment.
Fontconfig warning: "/home/akshaya/Desktop/master_thesis/executables/tor-browser_en-US/Browser/TorBrowser/Data/fontconfig/fonts.conf", line 85: unknown element "blank"
[05-09 13:23:27] Torbutton INFO: Loading tor-control-port.js
Fontconfig warning: "/home/akshaya/Desktop/master_thesis/executables/tor-browser_en-US/Browser/TorBrowser/Data/fontconfig/fonts.conf", line 85: unknown element "blank"
[05-09 13:23:27] Torbutton INFO: New window
[05-09 13:23:27] Torbutton INFO: called init()
[05-09 13:23:27] Torbutton INFO: This is a Tor Browser
[05-09 13:23:27] Torbutton INFO: Initializing the Torbutton button.
[05-09 13:23:27] Torbutton INFO: get_toolbutton(): did not find torbutton-button
[05-09 13:23:27] Torbutton INFO: get_toolbutton(): did not find torbutton-button
[05-09 13:23:27] Torbutton INFO: get_toolbutton(): did not find torbutton-button
Fontconfig warning: "/home/akshaya/Desktop/master_thesis/executables/tor-browser_en-US/Browser/TorBrowser/Data/fontconfig/fonts.conf", line 85: unknown element "blank"
[05-09 13:23:27] Torbutton INFO: Torbutton Tor Check Service initialized
[05-09 13:23:27] Torbutton INFO: init completed
[05-09 13:23:27] Torbutton INFO: Torbutton main window startup
[05-09 13:23:27] Torbutton INFO: Window: (1,1) ?= (1280,800)
[05-09 13:23:27] Torbutton DBUG: Window is normal
[05-09 13:23:27] Torbutton WARN: [Exception... "Component returned failure code: 0x804b000d (NS_ERROR_CONNECTION_REFUSED) [nsIScriptableInputStream.available]"  nsresult: "0x804b000d (NS_ERROR_CONNECTION_REFUSED)"  location: "JS frame :: resource://torbutton/modules/tor-control-port.js :: onInputStreamReady :: line 81"  data: no]
[05-09 13:23:27] Torbutton WARN: Disabling tor display circuit because of an error.
[05-09 13:23:27] Torbutton WARN: [Exception... "Component returned failure code: 0x804b000d (NS_ERROR_CONNECTION_REFUSED) [nsIOutputStream.write]"  nsresult: "0x804b000d (NS_ERROR_CONNECTION_REFUSED)"  location: "JS frame :: resource://torbutton/modules/tor-control-port.js :: onOutputStreamReady :: line 115"  data: no]
[05-09 13:23:27] Torbutton WARN: Disabling tor display circuit because of an error.
JavaScript error: chrome://torbutton/content/tor-circuit-display.js, line 478: TypeError: myController is null
[05-09 13:23:27] Torbutton NOTE: Exception on control port [Exception... "Component returned failure code: 0x804b000d (NS_ERROR_CONNECTION_REFUSED) [nsIBinaryOutputStream.writeBytes]"  nsresult: "0x804b000d (NS_ERROR_CONNECTION_REFUSED)"  location: "JS frame :: chrome://torbutton/content/torbutton.js :: torbutton_send_ctrl_cmd :: line 721"  data: no]
[05-09 13:23:27] Torbutton INFO: get_toolbutton(): did not find torbutton-button
[05-09 13:23:27] Torbutton INFO: Torbutton debug output ready
[05-09 13:23:27] Torbutton INFO: called init()
[05-09 13:23:27] Torbutton INFO: Message received from NoScript: [{"__meta":{"name":"started","recipientInfo":null},"_messageName":"started"}]
1620566608036   Marionette      INFO    Listening on port 37831
[05-09 13:23:28] Torbutton INFO: tor SOCKS: https://www.https-rulesets.org/v1//latest-rulesets-timestamp via
                       --unknown--:7a2771fc9b791cebc6df2e5207e970d5
1620566608117   Marionette      WARN    TLS certificate errors will be ignored for this session
Fontconfig warning: "/home/akshaya/Desktop/master_thesis/executables/tor-browser_en-US/Browser/TorBrowser/Data/fontconfig/fonts.conf", line 85: unknown element "blank"
[05-09 13:23:29] Torbutton INFO: tor SOCKS: https://tamilblasters.uk/ via
                       tamilblasters.uk:d6c62b7a506fac612ba118ea6e76e291
[05-09 13:23:29] Torbutton INFO: tor SOCKS: https://www.https-rulesets.org/v1//latest-rulesets-timestamp via
                       --unknown--:7a2771fc9b791cebc6df2e5207e970d5

Any Quick help would be appreciated. Doing this for my master thesis.
Thanks in Advance.

Hi @askumar2903 , sorry for the delayed response.
They are warning messages, and related to the circuit display. You can ignore those warning messages for you purposes.


add Dave/Aeva to approvers/reviewers

This PR adds the 2 highest contributors as the initial owners/reviewers as part of https://github.com/openenclave/openenclave/issues/3640

@AevaOnline would you be able to review/merge this?


Automating Reference Documentation publication

Currently the reference documentation is built on releases and available as a zip file from the release hive.
https://github.com/Z3Prover/z3/releases/download/z3-4.9.1/z3doc.zip
Then I manually download this and unzip the contents into z3prover.github.io/api/html
It is a repository under https://github.com/z3prover
Commit and push
The process for uploading artifacts should be reasonably similar for releases.
Even a self-contained GitHub action that builds documentation by itself and pushes to the right place (could be microsoft.github.io/z3guide if this is better) would be great and perhaps easier to maintain than complicating the release.yml Azure pipeline.

Parameters.md are now generated as part of documentation build.
From there they are currently manually copied to z3prover.github.io and to github.com/z3prover/z3 landing directory.

@NikolajBjorner can you walk me through this process? maybe i can help automating this

Can it be copied from z3doc.zip asset from

I other words create an action that triggers on relaese to copy over parameters.md, and optionally update z3prover.github.io