[WIP] Improve use of docker cache in Go CLI build

Improve use of docker cache in Go CLI build
Whisk developers can now set WHISK_BUILD_TIMESTAMP env variable to cause Go CLI build use
the docker cache during Go CLI compilation (will take affect after initial build)
Fixes #759

@dubeejw - Ready for review/comments
/cc @rabbah

Do these changes mean we have to manually set the WHISK_BUILD_TIMESTAMP to get the CLI to have a verison?

No.  If the WHISK_BUILD_TIMESTAMP environment variable is not set, then a current timestamp will be generated and used within the Go CLI build.  The environment variable can be used in local developer builds to cause a much quicker Go CLI build - if it's set and not changed, the Go builds will reuse the build results in the Docker cache.

Not sure that everyone building locally is going to know that that environment variable has to be set in order to cache the Go CLI build.

Right.  When this PR is merged, this step will need to be documented for developers.  Even if not set, the Go CLI build will continue as it does today.

Setting the timestamp inside the Dockerfile would cache the Go CLI build, and wouldn't need any documentation for developers.

The final solution will heavily depend on how the overall openwhisk components obtain their build timestamps.  In other projects I've been on, this is centrally controlled by top level build constructs and conveyed to the individual component builds.  That way it's easy to see that a specific combination of components was all built at the same time.  If the Go CLI sets it's build timestamp inside the dockerfile, it will be unique to just the Go CLI.  The solution I chose, assumed the former architecture; however, if that is not how the design plays out, then the Go CLI is free to generated its own build timestamp.

:+1:

@csantanapr - Ready for merge

rebase and merged 95434e118fb6b2b7ebee2e26b9431d939e97fcc3


Fix: Fix Error! App '90' state is 0x6 after update job. for hlds

Previously, the steamcmd line for hlds was steamcmd +login anonymous +force_install_dir /server .... steamcmd would throw a warning Please use force_install_dir before logon!. This order of arguments seems to randomly cause hlds downloads to fail with Error! App '90' state is 0x6 after update job., likely because the +login anonymous didn't occur or didn't occur in time before the steamcmd started to download hlds server files.
Now the +force_install_dir is shifted to the front.
This PR also adds ci test build jobs for hlds and srcds to ensure the build.sh and Dockerfile work.

Getting Error! App '90' state is 0x10E after update job. with FIX_APPMANIFEST=false

Error! App '90' state is 0x10E after update job. with https://github.com/leojonathanoh/hlds-appmanifest/archive/v2.0.0-rc2.tar.gz`

Error! App '90' state is 0x10E after update job. https://github.com/leojonathanoh/hlds-appmanifest/archive/refs/heads/fix/add-fixed-manifests-for-hlds.tar.gz`

Error! App '90' state is 0x6 after update job. with https://github.com/startersclan/hlds-appmanifest/archive/v1.0.0.tar.gz


Release 2023.1.0

Short description

I suggest to release a new version today, mainly because of the dependency updates which fix a few security vulnerabilities and to allow a new linkcheck scan on Sunday.
Changelog

[ #1876 ] Make sidebar boxes on page form collapsible and save status as cookie
[ #1345 ] Track DeepL API usage by regions
[ #1695 ] Treat URLs with broken hash anchors as valid in link checker
[ #1969 ] Hide edit link button in content forms for users without edit permission

Let's see whether the CircleCI release workflow still works :sweat_smile:


Added prop, to enable closing the dropdown menu, when leaving the inp…

Added prop, to enable closing the dropdown menu, when leaving the input field. This allows the user to input custom data, without using suggestions.
The modification is backward compatible.
Also added example in readme file.

See listViewDisplayed props in v1.2.4

great, thanks, I will try


Allow Debug builds

Uses bindings package to load ursaNative from the correct location, without moving it.

Neat!


Progress Freezes at "Lightning Filtering Blockchain"

I've seem many other issues about the same behavior, but none of them seemed to help me get this fixed. I got this in the v1.0 and then upgraded my SSD card to the v1.1 and it seems to present the same behavior.
/home/admin/XXdebugLogs.sh

*** RASPIBLITZ LOGS ***
blitzversion: 1.1
chainnetwork: bitcoin / main
 22:38:08 up 3 min,  2 users,  load average: 2.60, 1.11, 0.43

*** CHAINNETWORK SYSTEMD STATUS ***
● bitcoind.service - Bitcoin daemon
   Loaded: loaded (/etc/systemd/system/bitcoind.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-04-04 22:35:58 BST; 2min 9s ago
  Process: 1004 ExecStart=/usr/local/bin/bitcoind -daemon -conf=/home/bitcoin/.bitcoin/bitcoin.conf -pid=/home/bitcoin/.bitcoin/bitcoind.pid (code=exited, status=0/SUCCESS)
 Main PID: 1022 (bitcoind)
   CGroup: /system.slice/bitcoind.service
           └─1022 /usr/local/bin/bitcoind -daemon -conf=/home/bitcoin/.bitcoin/bitcoin.conf -pid=/home/bitcoin/.bitcoin/bitcoind.pid

Apr 04 22:35:58 faisca systemd[1]: Starting Bitcoin daemon...
Apr 04 22:35:58 faisca systemd[1]: Started Bitcoin daemon.

*** LAST 5 ERROR LOGS ***
-- Logs begin at Thu 2019-04-04 22:35:00 BST, end at Thu 2019-04-04 22:38:08 BST. --
Apr 04 22:35:58 faisca systemd[1]: Starting Bitcoin daemon...
Apr 04 22:35:58 faisca systemd[1]: Started Bitcoin daemon.

*** LAST 20 INFO LOGS ***
2019-04-04T21:37:43Z Bound to <IP_ADDRESS>:8333
2019-04-04T21:37:43Z init message: Loading P2P addresses...
2019-04-04T21:37:43Z Leaving InitialBlockDownload (latching to false)
2019-04-04T21:37:44Z Loaded 51073 addresses from peers.dat  1309ms
2019-04-04T21:37:44Z init message: Loading banlist...
2019-04-04T21:37:44Z init message: Starting network threads...
2019-04-04T21:37:44Z net thread start
2019-04-04T21:37:44Z dnsseed thread start
2019-04-04T21:37:44Z addcon thread start
2019-04-04T21:37:44Z init message: Done loading
2019-04-04T21:37:44Z msghand thread start
2019-04-04T21:37:44Z opencon thread start
2019-04-04T21:37:53Z txindex is enabled at height 570217
2019-04-04T21:37:53Z txindex thread exit
2019-04-04T21:37:54Z New outbound peer connected: version: 70015, blocks=570217, peer=0
2019-04-04T21:37:55Z Loading addresses from DNS seeds (could take a while)
2019-04-04T21:38:01Z New outbound peer connected: version: 70015, blocks=570217, peer=1
2019-04-04T21:38:03Z 239 addresses found from DNS seeds
2019-04-04T21:38:03Z dnsseed thread exit
2019-04-04T21:38:08Z New outbound peer connected: version: 70015, blocks=570218, peer=2

*** LND SYSTEMD STATUS ***
● lnd.service - LND Lightning Daemon
   Loaded: loaded (/etc/systemd/system/lnd.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-04-04 22:35:58 BST; 2min 9s ago
 Main PID: 1023 (lnd)
   CGroup: /system.slice/lnd.service
           └─1023 /usr/local/bin/lnd --externalip=<IP_ADDRESS>

Apr 04 22:35:58 <user> systemd[1]: Started LND Lightning Daemon.

*** LAST 5 LND ERROR LOGS ***
-- Logs begin at Thu 2019-04-04 22:35:00 BST, end at Thu 2019-04-04 22:38:08 BST. --
Apr 04 22:35:58 faisca systemd[1]: Started LND Lightning Daemon.

*** LAST 20 LND INFO LOGS ***
2019-03-31 18:50:21.053 [INF] LTND: Version: 0.5.2-beta commit=v0.5.2-beta, build=production, logging=default
2019-03-31 18:50:21.053 [INF] LTND: Active chain: Bitcoin (network=mainnet)
2019-03-31 18:50:21.385 [INF] CHDB: Checking for schema update: latest_version=7, db_version=7
2019-03-31 18:50:21.385 [INF] RPCS: Generating TLS certificates...
2019-03-31 18:50:21.395 [INF] RPCS: Done generating TLS certificates
2019-03-31 18:50:21.402 [INF] RPCS: password RPC server listening on [::]:10009
2019-03-31 18:50:21.402 [INF] RPCS: password gRPC proxy started at [::]:8080
2019-03-31 18:50:21.402 [INF] LTND: Waiting for wallet encryption password. Use `lncli create` to create a wallet, `lncli unlock` to unlock an existing wallet, or `lncli changepassword` to change the password of an existing wallet and unlock it.
2019-04-04 15:27:19.422 [INF] LTND: Version: 0.5.2-beta commit=v0.5.2-beta, build=production, logging=default
2019-04-04 15:27:19.422 [INF] LTND: Active chain: Bitcoin (network=mainnet)
2019-04-04 15:27:19.517 [INF] CHDB: Checking for schema update: latest_version=7, db_version=7
2019-04-04 15:27:19.548 [INF] RPCS: password RPC server listening on [::]:10009
2019-04-04 15:27:19.548 [INF] RPCS: password gRPC proxy started at [::]:8080
2019-04-04 15:27:19.548 [INF] LTND: Waiting for wallet encryption password. Use `lncli create` to create a wallet, `lncli unlock` to unlock an existing wallet, or `lncli changepassword` to change the password of an existing wallet and unlock it.
2019-04-04 22:35:59.817 [INF] LTND: Version: 0.5.2-beta commit=v0.5.2-beta, build=production, logging=default
2019-04-04 22:35:59.817 [INF] LTND: Active chain: Bitcoin (network=mainnet)
2019-04-04 22:35:59.913 [INF] CHDB: Checking for schema update: latest_version=7, db_version=7
2019-04-04 22:35:59.945 [INF] RPCS: password RPC server listening on [::]:10009
2019-04-04 22:35:59.952 [INF] RPCS: password gRPC proxy started at [::]:8080
2019-04-04 22:35:59.952 [INF] LTND: Waiting for wallet encryption password. Use `lncli create` to create a wallet, `lncli unlock` to unlock an existing wallet, or `lncli changepassword` to change the password of an existing wallet and unlock it.

After trying this I rebooted the raspiblitz with the command: sudo shutdown -r now
It got stuck in the same stage, so I went to check the config files and the one thing that I noticed is that they have still the raspiBlitzVersion='1.0' which seems odd, since I upgraded to 1.1.
$ sudo cat /home/admin/raspiblitz.info
state=ready
message='waiting login'
network=bitcoin
chain=main
setupStep=100
undervoltageReports=0

$ sudo cat /mnt/hdd/raspiblitz.conf
# RASPIBLITZ CONFIG FILE
raspiBlitzVersion='1.0'
network=bitcoin
chain=main
hostname=faisca
publicIP=<IP_ADDRESS>
autoPilot=off
autoNatDiscovery=off
runBehindTor=off
rtlWebinterface=off

$ cat _version.info
# RaspiBlitz Version - always [main].[sub]

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        15G  2.8G   11G  21% /
devtmpfs        460M     0  460M   0% /dev
tmpfs           464M     0  464M   0% /dev/shm
tmpfs           464M  6.3M  458M   2% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           464M     0  464M   0% /sys/fs/cgroup
/dev/mmcblk0p1   44M   22M   22M  51% /boot
/dev/sda1       916G  274G  596G  32% /mnt/hdd
tmpfs            93M     0   93M   0% /run/user/1000
tmpfs            93M     0   93M   0% /run/user/1001

The following troubleshoot step that I tried was to create the wallet myself, which seemed to be successful until I couldn't unlock the wallet that I just created.
$ lncli create
Input wallet password:
Confirm wallet password:

Do you have an existing cipher seed mnemonic you want to use? (Enter y/n): n

Your cipher seed can optionally be encrypted.
Input your passphrase if you wish to encrypt it (or press enter to proceed without a cipher seed passphrase):
Confirm cipher seed passphrase:

Generating fresh cipher seed...

!!!

---------------BEGIN LND CIPHER SEED---------------
 1. ... etc
---------------END LND CIPHER SEED-----------------

!!!YOU MUST WRITE DOWN THIS SEED TO BE ABLE TO RESTORE THE WALLET!!!
[lncli] rpc error: code = Unknown desc = password must have at least 8 characters

Unfortunately:
lncli getinfo
[lncli] unable to read macaroon path (check the network setting!): open /home/admin/.lnd/data/chain/bitcoin/mainnet/admin.macaroon: no such file or directory

$ lncli unlock
Input wallet password:
[lncli] rpc error: code = Unknown desc = wallet not found

I restarted again with no luck.
Any ideas on how can I troubleshoot further or what should be happening with the node?

I had the same problem starting from scratch with 1.1
Then I started all over again with 1.0 and it seems to be fine.

try ./70initLND.sh

I tried already, no luck. I'll do a fresh install and clean up my HDD, maybe it is a corrupted blockchain or something of the sorts. I'll report progress.

Guys, I'm +1 with this problem.
My old RaspiBlitz was faulty. I back the LND files up and did a fresh install. It was working properly.
Then I restored the LND files through /home/admin/config.scripts/lnd.rescue.sh
Now I am stuck in a start/close LND loop.
https://termbin.com/g5xk
https://termbin.com/u4do
Maybe has something to do with the restored files...

It might need to open an issue with LND. I don't know what this means in the log:
[ERR] DISC: Unable to rebroadcast stale channels: unable to retrieve outgoing channels: edge not found

@fluidvoice, I'm starting with a fresh start, since I didn't have a wallet setup yet.
If it happens again, I'll reach out to LND team and update the Issue accordingly.

Anyone stuck on this error can you please try:
sudo -u bitcoin /usr/local/bin/lncli getinfo
if this shows a permission error, you have the same bug as me. I managed to solve it by deleting -u bitcoin from the 00mainMenu.sh lines 248 and 253. I make you a helper script or more detailed instructions if it is the same problem (I am building on OdroidXU4 with a minimal Ubuntu image, so things might be different)

It might need to open an issue with LND. I don't know what this means in the log:
[ERR] DISC: Unable to rebroadcast stale channels: unable to retrieve outgoing channels: edge not found

I didn't notice in the log before but LND is restarting (lots of times) after this error.  I might ping the LND dev's to ask about this. What/why this is happening.

2019-04-06 22:46:25.829 [ERR] DISC: Unable to rebroadcast stale channels: unable to retrieve outgoing channels: edge not found
2019-04-06 22:46:25.870 [INF] LTND: Shutdown complete
2019-04-06 22:47:26.423 [INF] LTND: Version: 0.5.2-beta commit=v0.5.2-beta, build=production, logging=default

Thanks, will open a issue there!

It might need to open an issue with LND. I don't know what this means in the log:
[ERR] DISC: Unable to rebroadcast stale channels: unable to retrieve outgoing channels: edge not found

I didn't notice in the log before but LND is restarting repeatedly after this error. I might ping the LND dev's to ask about this. What/why this is happening. LND is in a bad state for some reason?

2019-04-06 22:46:25.829 [ERR] DISC: Unable to rebroadcast stale channels: unable to retrieve outgoing channels: edge not found
2019-04-06 22:46:25.870 [INF] LTND: Shutdown complete
2019-04-06 22:47:26.423 [INF] LTND: Version: 0.5.2-beta commit=v0.5.2-beta, build=production, logging=default

@zuardi copy the link (https://github.com/rootzoll/raspiblitz/issues/492#issuecomment-481807023) of your above issue and paste it into the LND issue so we can see/refer to it.

Please close this issue.


[Question] Is it possible to use aadpodidbinding or AKS managed identity

Is AKS Pod managed identity supported for using any of the Azure Sources/Targets? Looking at the yaml schema, seems like it clientId and clientSecret are both required.

Azure Service Bus and Storage Account.  Thanks

ok, thanks, let us see how we can put this in the roadmap

Hi @imaness  Fran added support for AKS managed identity. We have not cut a release yet but it is available via the CircleCI build.
It would be great to get validation from you that it works as expected in your environment.

The manifests for the unreleased version that contains this AKS support is at:
https://app.circleci.com/pipelines/github/triggermesh/triggermesh/3246/workflows/d0b19b54-e8fb-4127-8d19-322cb2b7fc49/jobs/9019/artifacts
You should be able to apply the manifests


Search for action.yml files in the entire repository

Some repositories, like codeql-action still use the old model of storing action.yml in
several folders in the repo (this also prevents them from publishing the action to the marketplace btw).
codeql-action
The repo codeql-action has multiple action files store inside of it:

Init
Analyze

You can also see that from their usage inside of workflow files:
    - name: Initialize CodeQL
      uses: github/codeql-action/init@v1
      with:
        languages: ${{ matrix.language }}

   - name: Perform CodeQL Analysis
      uses: github/codeql-action/analyze@v1

[ ] Search for the yaml files in the entire repositories and add them as separate entries to the output

Fixed by #250


Generator PR

Add the generator files in a PR to CCF

Requires to moving current commented out code (for LSKV) into a separate file, see discussion in https://github.com/fotiskoun/CCF/issues/15

Yes this issue is blocked by https://github.com/fotiskoun/CCF/issues/44

I believe this is now unblocked. Do you want to tidy the generator code up and open a PR to CCF?

Yes, also I was thinking to PR the ansible and CMake things that were separate. But I didn't search or ask again about the build container I thought Amaury mentioned for the PR. I have a look again tomorrow and might ask Eddy or Amaury

I think ansible/CMake should be a separate issue and seperate PR for CCF. The generator is just python so should not depend on these

This PR has been created: https://github.com/microsoft/CCF/pull/4429

https://github.com/microsoft/CCF/pull/4429 has been merged into main.


Published versions of this package don't seem to include the latest changes

Looking at the commit history of this package, I see for example commit ba8da4f, and then commits to create versions 0.2.5 and 0.2.6. Neither of the latter versions on npm seem to include the code for ba8da4f.
Are you perhaps missing a yarn build step in your publishing steps?

Hi @rocketraman
I just tested this by doing an npm install and checking the node_modules folder and here's the code in question:
KafkaPubSub.prototype.brokerList = function () {
    return this.options.host.match(',') ? this.options.host : this.options.host + ":" + this.options.port;
};

@ancashoria Exactly my point -- that code is not the latest code.

Here is the latest code:
https://github.com/ancashoria/graphql-kafka-subscriptions/blob/master/src/kafka-pubsub.ts#L85-L87

I would like to bump @rocketraman's comment :)

We will be releasing a new version soon. @fmannhardt made some improvements on #24 and it is currently merged to the deve branch. We'll improve the documentation as well and get a new version asap. Please bear with me!

I just need to find 1-2 hrs to wraps this up :-)

I don't want to bother, but do we have an ETA for this?

Hi @rocketraman and @dfrancoultra, we just release a 0.4.0 version with the most recent changes merge to master.
Please try it and let us know in case you find something.

Thanks a lot of taking charge of finally integrating this. I had no time at all for open source stuff the the past months.


add metadata

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

File
Status
Preview URL
Details

Skype/AppSDK/HowToJoinOnlineMeeting_iOS.md
:white_check_mark:Succeeded

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

Docs Build status updates of commit 9b65a69:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: GitBranchDeletedOrForcePushed] Cannot sync git repo to specified commit because branch lindalu-MSFT-patch-1 has been deleted or has been force pushed

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Yzguy/no value dump

Fixes: https://github.com/github/octodns/issues/131
When dumping a zone, one tested provider (NS1) allows a user to create a record with no answers. A record with no answers is not valid.
Dump

When a user dumps a zone, it will fail with a ValidationError, for a missing value(s) reason
When the user specifies --lenient during the dump, it will give them a warning, write the record to the file, and a value or values key will not be present

If a user attempts to apply changes from that file, it will fail normally if value or values is not specified.

Previous Behavior:
Command:
octodns-dump --config-file=config/production.yaml --output-dir=tmp/ yzguy.io. nsone

Output:
IndexError: list index out of range

New Behavior
User does not specify --lenient
Command:
octodns-dump --config-file=config/production.yaml --output-dir=tmp/ yzguy.io. nsone

Output:
octodns.record.ValidationError: Invalid record test.yzguy.io.
  - missing value(s)

User does specify --lenient
Command:
octodns-dump --config-file=config/production.yaml --output-dir=tmp/ yzguy.io. nsone --lenient

Output:
2017-10-22T22:54:58  [140737049330624] WARNING Record Invalid record test.yzguy.io.
  - missing value(s)

File:
test:
  type: A

Noop and Doit

If a user applies a file where the values key is an empty list or nothing, it will show a ValidationError with missing value(s) reason.

To fix this the user should apply a value, values, or delete the record as it is not valid.

Previous Behavior:
Command:
octodns-sync --config-file=./config/production.yaml

File:
test:
  type: A
  values:

Output:
TypeError: 'NoneType' object is not iterable

New Behavior
Output:
octodns.record.ValidationError: Invalid record test.yzguy.io.
- missing value(s)

Add tests for ValuesMixin (overs records that allow multiple values), ValueMixin (cover records that allow single value)

Remove DNSimple Invalid Content Test

Test added. ValidationError thrown with missing value reason as expected. I was wondering if that was a good test, so I'm glad you pointed it out as well.

Just checked this out locally and looked around at it. I think the changes are generally in order, but there's a handful of branches/exceptions that no longer have test coverage. You can find them with ./script/coverage and then opening up htmlcov/index.html.
There were several bits of error handling in DnsSimpleProvider that aren't hit after those special cases were removed from it's tests. They looked to be things that were skipping over invalid data so it may be a case where the code itself needs to be updated to match the new lenient behavior (of including the record without a value when allowed.)
The other place with missing coverage is in _ValuesMixin where some of the cases of handling None, zero-length, or len == 1 aren't being exercised.

Fixed the one spot that showed up in coverage
I moved around the tests to better spots that are for testing the ValuesMixin and ValueMixin
Trying to figure out the other part that showed up. I think I was only able to trigger it while dumping the zone. Still tracing through to figure out how it would be called otherwise
Thanks for your help! Will hopefully have it figured out by tomorrow

Squashed/rebased commits onto master.
Everything is looking good, just need to finish the tests for the _data methods for _ValuesMixin and _ValueMixin
FWIW, I'm loving this back and forth. I'm learning a lot about testing/coverage as well. I just think OctoDNS is neat tool. I have a lot of experience with DNS so this is a very approachable project to contribute to.
Thanks for your help/patience

FWIW, I'm loving this back and forth. Feedback is great and I'm learning a lot about testing/coverage as well. I just think OctoDNS is neat tool. I have a lot of experience with DNS administration so this is a very approachable project to contribute to.

Glad to hear it on all counts. I've always found coverage and linting to be worth it for things that matter. Most of of the bits they find are inconsequential, but the payoff is that one out of ten of them is something real and beyond that they just make you think about things a bit more deeply.

Thanks for your help/patience

Thanks for the same.

Alrighty, cleaned up those spots that only had partial coverage.
I've also added some stuff in _data for ValueMixin and ValuesMixin so that value or values is not added to the return value, this makes it so that it will not be output to the YAML file during a dump.
In the very rare/probably never going to happen case of having something like ['', '<IP_ADDRESS>'], it will output the IP Address, but not the empty value. Thought being that if it were somehow working, and the IP address was being used, it would get rid of the bad value, but not the good one, that could possibly be used. Removing it might cause an issue/outage

......and Done :)
Squashed it down to 1 commit, no sense in cluttering up the commit history.

Thanks!


Explain how to do HA on openshift quickstart

For example, it should mention the usage of ./prep_for_subm.sh
to open gateway ports on of the gateway node, on each cluster.
Currently it only opens ports 500 and 4500, see:
https://github.com/submariner-io/submariner/issues/240
Also, we need to explicitly mention, that having more than 1 node with a gateway label can cause issue as in:
https://github.com/submariner-io/submariner/issues/426

Thanks @manosnoam very helpful

@manosnoam I think that the OpenShift quickstart now includes all the information you mentioned. Re: HA, this section was added here: https://submariner.io/architecture/gateway-engine/
Can we close this Issue at this point?

I don't see "HA" info there...
On Wed, Sep 9, 2020 at 2:11 PM Nir Yechiel<EMAIL_ADDRESS>wrote:

@manosnoam https://github.com/manosnoam I think that the OpenShift
quickstart now includes all the information you mentioned. Re: HA, this
section was added here: https://submariner.io/architecture/gateway-engine/
Can we close this Issue at this point?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/submariner-io/submariner-website/issues/30#issuecomment-689492571,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACLUMWM447JXCRFV3DVEBBDSE5PELANCNFSM4LEFMA6Q
.

@manosnoam please check https://submariner.io/architecture/gateway-engine/ -- it was enhanced with some info on HA and also has a section on "Gateway Failover". There is nothing really specific to OpenShift in the way we do HA, so we wanted to include this info under the architecture section.

Thanks!


Avoid storing secret API keys in nix store in oink module

Issue description
There doesn't currently seem to be a way to set a secret API key in the oink module without adding it to the nix store, where it will be world-readable. Would it be possible to add an option to set the config file directly, which can then be managed by e.g. sops.nix. Alternatively, there could be a secretApiKeyFile (and maybe apiKeyFile) option which would allow reading those options from a file, but I am not sure how best to pass those on to Oink! Usually, you would add them to the environment of the service, but I am not sure that Oink! supports reading these values from the environment?
Pinging module author @jtbx

Yeah to my knowledge oink only supports passing keys through the config file. It wouldn't be hard to add a config override option but that sort of defeats the purpose of the module.

@lunik1
Sops-nix has a templating feature, which allows you to create
the whole file exactly for applications that don't think about security like this. That being said templating the config file just for secrets is not a great user experience and should just be fixed upstream if possible.

Using that would still require the module to expose using a config file directly, though (without restoring to overriding ExecStart).
I'll see if there's any appetite for supporting environment variables upstream.

Hello, author of Oink here. I can confirm that Oink only supports passing API keys through a configuration file; nevertheless, there is the possibility to override the configuration file using oink -c <path to config.json>.
I am not familiar with Nix but why can't you set the permission of the configuration file to disallow arbitrary reading? I am not against environment variables but I don't understand the safety benefits over the existing implementation.

I am not against environment variables but I don't understand the safety benefits over the existing implementation.

The issue got opened here, because this is especially a problem for us.
The nix store is public, if configuration files end up there, they are world readable.
The user experience we want to provide is for people to be able to edit their configuration, without exposing their secret keys. Security and usability are very much linked.
If you allow secrets to be loaded through environment variables your users get the option to benefit from the added security on all distributions - not just NixOS.
There are still more benefits that touch usability and security that I did not explicitly go in here.
Thank you for being curious, reaching out and trying to understand our problems.

Thanks for explaining.
I have added the possibility to override the global API keys using OINK_OVERRIDE_SECRETAPIKEY and OINK_OVERRIDE_APIKEY environment variables. Hopefully this addresses your use case.
Let me know if you have any other comments or suggestions regarding this change.


Not able to add more than one artifact in a representation via UI

As stated here  an offered source contains at least one contract offer and at least one representation with at least one artifact. All these works fine while adding a new resource via DSC-UI.
But for some use case like IOT data, where the data volume is large, we would like to split the data under same representation but in many artifact.  And we were able to do the same via DSC- Open API but  we did not find this functionality in DSC-UI.

Yes, this functionality is currently not implemented in the UI.


Implement Google Chrome-like grouped tabs

Google Chrome Beta recently announced grouped tabs, which is pretty awesome.
Here's the gist:

Having such a thing within VSCode will be very useful IMO.
Having it integrated with the search, where a group is automatically created once you open more than one search result, should help with the tab clutter it ensues. Same for Peek references, automatic grouping of files within the same folders... I see many possibilities for it.

Seems very useful, I suggest allowing to group it by project / workspace as well, which would be really useful when working in linked projects (library project / host, monorepo projects, etc.)

Sounds really good! great suggestion

I was needing this right now!
Great suggestion

There you go. Your 20 upvotes. This is a good feature request.

I'd love to see something like that and the ability to collapse a group of tabs.
I often have a bunch of config files or templates that I need to keep open so that I don't have to look for them when I need them, but this eats up a lot of tab space.

Since #38889 was merged into this issue, I want to point out an important aspect of #38889 that is not covered here so far:
#38889 was about automatic tab groups that were created using the file and folder structure.
The original feature request of #38889 was only about automatically grouping files in the same folder.
I think automatically grouping files by folder and file name could also be a useful option. For example opening a file with the same name but a different extension as an already opened file in the same folder would be grouped automatically.

It will be very valuable feature for me, and I hope for others too.
Great suggestion!

+1 I'm constantly using it on chrome, would definitely of much use on VSCode as well

Something like two-Level tab stacks like in vivaldi would be very useful too.

Something like two-Level tab stacks like in vivaldi would be very useful too.

Can't wait to see this implemented, very excited! Thank you to everyone who suggested this and is working on it!

OMG yes please!  I can purchase something like that.

Would be very helpful!

Yes, I'd like this feature too.  It could help manage my opened code files into active projects, so I can keep better track of what I'm working on for any given initiative.

Adding another 👍  to this please :)

One more 👍

I'd love to see this - It would be very handy

+1 to this feature, for context-switching between sub-projects. For example, I'd like to easily switch between groups of Terraform modules that work together.

Would certainly love this, sometimes keeping track of many tabs is hard

+1  I'm surprised it took so many years to add this to browsers. This is such a helpful feature. Really need this. Right now I'm using sublime text as my way to have another 'group'. And that's just ghetto.

+1

Would be an amazing feature for working with Angular where you are working with groups of multiple related files

I don't like the Google Chrome style, please also allow grouping tabs in dropdowns(but yet the mouse scroll must be able to navigate through all of them).

We need this +1

Would love to have this.

FWIW, I've found a straightforward way to have 2 groups.  If you drag a tab down until it snaps to the bottom pane, that pane becomes a new group.  You can then add whatever files you want to that new group.
I've re-sized that bottom pane to come all the way up to the top pane, so I now effectively have 2 groups of code.  When I click on Group 1, Group 2 automatically minimizes to the bottom, and when I click on Group 2, Group 2 automatically fills the space again.
The obvious downsides are that this only allows for 2 groups, and the groups cannot be named.  Good enough while we wait for a solution from MS, though!  I hope this helps somebody.

I would love to see this happening, it would help a great deal with tab clutter.

This would be a great feature to organize tabs in VSCode!

Yes pleaseeee!!! +1

It'd be a great feature. At least, it would be awesome to have named groups which can be hidden when not needed.
VSCode's existing Editor Groups feature works well for me except I cannot hide/collapse them.

Would be VERY useful - including Angular projects where there are usually 4 or 5 files associated to each module. Then, each module would be a group. :)

Would be great if all of these different applications used a shared tab library, eh?

Although this is a good feature to have, I mostly see it as derivative from two VSCode shortcomings:

The inability to open multiple windows (as views, not duplicates) for the same project/workspace.
The inability to hide editor groups.
Fixing any of these two shortcomings, would be a more general solution that a new tab grouping feature.

i really need one.. my work space is messy..
i need something to organize it like this https://marketplace.visualstudio.com/items?itemName=usama8800.tab-groups
but this extension is a bit buggy.. at some point it just keep reopening my current branch's tab groups
but the feature works well

It's been two years, is this feature still scheduled for development?

I just came to create an issue on this idea (luckily, I searched first). I really could use this in my day-to-day stuff as a programmer with four or five projects open in my solution window.

Anybody knows when this is planned to be implemented? This threat is two years old now :S

[CTRL + K  O] is not enough. I can't wait this feature.

+1

ok, pls, this feature could be very useful in a project with module federation.

This feature would help a lot.
To have the possibility to group some open files, to work temporarily on other files but not to have to close them for more space and mental clarity.
Looking forward to it.

pewty pweeeeeze 🥹

+1 looking forward to it too.

This would be brilliant, I work with lots of web components and each component has multiple files (HTML, CSS,  Ruby/Js/Whatever) so being able to group these together visually, ideally with the option of setting a colour would be extremely useful in staying organised.
At the moment I just close tabs but this adds a lot of faff when doing rapid context switching.

As far as I can see, this thread is about 2,5  years old, and doesn't include any response other than "we may add it to our backlog" (where it can't be found today). Is it possibly possible to get some more information about the status of this feature request???
Alternatively does anybody know an extension which does something similar?

As far as I can see, this thread is about 2,5 years old, and doesn't include any response other than "we may add it to our backlog" (where it can't be found today). Is it possibly possible to get some more information about the status of this feature request???
Alternatively does anybody know an extension which does something similar?

Yes I really need this feature in some way or another, my productivity would increase a lot, because when I'm working on a lot of files I'm hunting for the right one and it's time wasted...
Unfortunately  I don't think there is any extension because Vscode won't allow extensions to change the user interface, so we're stuck...

For me for now I use "Favourites" plugin and replacements for such feature (for example, could try this: https://marketplace.visualstudio.com/items?itemName=FredJeck.fav).
I put Favourites window on "Secondary Side Bar" in VS Code and group files as I want.

@vscode-triage-bot  any updates?

looking forward to it

What if vscode implements Layers as well? I think it is better than grouping tabs like chrome does.
https://github.com/microsoft/vscode/issues/174922
But we can have both...

What if vscode implements Layers as well? I think it is better than grouping tabs like chrome does. #174922
vscode could offer both...

Sure why not, for me anything that could help organize tabs would be better, but if horizontal space is your concern maybe collapsible groups could solve the issue ?

What is the update on this now?

Please add this.
It'd be awesome to have this.

It's been two years now :(

Tossing my hat in the ring and +1'ing this request. It would help to store the current context when we are, inevitably, required to switch context and have to attempt to return to a prior one.

Since #38889 was merged into this issue, I want to point out an important aspect of #38889 that is not covered here so far: #38889 was about automatic tab groups that were created using the file and folder structure.
The original feature request of #38889 was only about automatically grouping files in the same folder.
I think automatically grouping files by folder and file name could also be a useful option. For example opening a file with the same name but a different extension as an already opened file in the same folder would be grouped automatically.

Commenting to voice support for this particular feature, particularly automatic grouping based on directory or possibly filetype (maybe using regex? 😅). For example, in a React project I will often have components open in an editor on the left and CSS styles in an editor on the right. Smart tab groups would help me maintain this organization when opening new tabs, whereas currently, new tabs will open in whichever editor has focus (usually the wrong one...).

Yeah it's SO MUCH needed, +1ing it if it's not already in the backlog. It becomes very confusing specially when multiple workspace folders are open at the same time.

The macOS version has this function.

The macOS version has this feature.

@ddman All versions of VS Code have a form of tabs/panes/splits, but they are not the same as Chrome-like tab groups. You cannot select multiple tabs and combine them into a single collapsible/expandable group.

unbelievable that after so long this has still not been implemented.

I made an extension, Tabstronaut, as a workaround for this issue:

@jhhtaylor  great work. I respect your dedications and results, but this is not as intuitive as the originally requested google chrome version + side bar must be kept open.

@jhhtaylor - it's great work. Just curious how is it different from the Editor Group Minimizer extension in VSCode?

@nikzeyn
Thank you for the feedback! While Editor Group Minimizer is a great tool, Tabstronaut offers a different approach and a variety of additional features tailored to improving the user's experience.

I came here to suggest the grouping of tabs like Chrome or Edge do it. I was just 3 years late :-D

I vote for this feature. And it's really needed.

+1

+1

Tab grouping would be really nice. Working in different branches, were I need different documents to edit. There are some good Extension, but the simple approache like in Chrome would be really nice.

I'd also like to see this kind of functionality

please... PLEASE add this
willing to sell my soul for this feature. I cannot cope with having twenty tabs open anymore, it's destroying my family.

Is somebody working on this?

Still waiting for this...

I've seen so many requests for the same thing... Not that hard and users are already giving A LOT of ideas on how to implement it. We just need to keep this up, until it's ADD

Will my dream come true?

This is also my dream! I know this is not a trivial feature but I'd like to see this in roadmap at least!

Keeping it alive!

Still waiting until we have it 😩

We need this or i'll die 😔

+1

+1

It would be great if this feature allowed automatic grouping based on the file path. This would be useful for monorepo projects.

It would be great if this feature allowed automatic grouping based on the file path. This would be useful for monorepo projects.

Well it would be great if this feature gets implemented in the first place..

Please I want this feature!

this feature will be good. I want to contribute in this feature, how do i do it?

It shouldn't be this hard to implement, definitely should be added as a setting.

I came to ask for this feature.
I'm working in a framework with several files, and I'm jumping from a secton to another of the project everytime.
It would be really helpfup to be able to group tabs just like in Chrome, so I can choose which group of files I'll be working on each time I jump to a another section of the project.
Find files in the sidebar isn't that easy when you have dozens or even hundreds of files and folders.

this feature will be good. I want to contribute in this feature, how do i do it?

Just fork the project and try to implement it. If the implementation is good enough they will take it in consideration, depite they accept it or not from a UX vision.

I made an extension, Tabstronaut, as a workaround for this issue:

It is perfect. Thank you!

I found these two that are pretty good:

Tab Group by @billgoo (github, marketplace)
Editor Group Minimizer by @suhay (github, marketplace)

Here to add to the hype - yes please for grouped tabs (open editors).  Would be fantastic, and so would vertical tabs (#108264)

+1
I work on one code base, but often have to jump between tickets and tasks, this would save me SO much time and really help me!

I'm using CTRL+1 (up to 9) to switch between file groups (this also open empty groups).
But after a switch I need to "manually" maximize the group (I mapped this command to CTRL+).
What I miss more is:

An auto-maximize option on group switch.
Group rename in the "Open Editors" pane
Group reorder in the "Open Editors" pane
Group collapse/expand in the "Open Editors" pane
A Group auto-expand option (in the "Open Editors" pane) on group switch

OMG, 4 years? Please dadysoft, give us tab groups.

Would love to have this !! Give us this feature !

Grouped tabs plz.

i dont understand why this is not implemented yet, the whole point of having an IDE is to make life easier, and this would for sure improve productivity for devs

Would love to have this !! Give us this feature !

NEED THIS


Unicast NS sent from should contain source link-layer address option.

Describe the bug A clear and concise description of what the bug is.
In OT implement https://github.com/openthread/openthread/blob/main/src/core/net/nd6.hpp#L1057, the NS packets never contains source link-layer address option. According to RFC-4861 section-4.3, unicast NS should contain the source link-layer address option.
Expected behavior
The unicast NS sent from OT should contain source link-layer address option.

Thanks @zwx1995esp.
RoutingManager uses unicast NS to validate that other discovered routers on AIL are still present.
Per RFC-4861, unlike multicast NS where the source link-layer address option is a MUST requirement, for unicast NS it's SHOULD, meaning it can be omitted under certain circumstances (RFC2119). Therefore, NS receivers should not expect this option to always be present.
Does the absence of this option cause issues in certain cases? Could you elaborate on the reason behind this?
The challenge is that within the OT core (RoutingManager), we don't have direct access to the link-layer address as it belongs to the AIL netif (e.g., WiFi netif on the device). Obtaining this would require a new platform  API to be defined to retrieve the AIL netif's link-layer address, which would then need to be implemented on various platforms. This is technically feasible but adds complexity and additional effort if not strictly necessary.

Hi, @abtink  thanks for your explaination. Base our test, for the lwIP stack, it will ignore the unicast NS without source link-layer address option. I also know that the OpenThread SDK currently does not require the MAC address when the infrastructure network interface initializes.
Would it be possible to add some APIs to set this MAC address for the AIL link? If the platform provides it, we could include the source link-layer address option in the ND6 packets; otherwise, we could leave the ND6 packets as they are now. As you mentioned, I think incorporating this logic could enhance the compatibility and robustness of the OpenThread stack.

Would it be possible to add some APIs to set this MAC address for the AIL link? If the platform provides it, we could include the source link-layer address option in the ND6 packets; otherwise, we could leave the ND6 packets as they are now

This can work. Would you like to contribute this? If not, I can help add it later when I have some free time (might take a week or more).
Regardless, I strongly recommend changing/fixing the lwIP stack to accept NS even without the option, especially if the lwip stack is being used in a Thread Border Router.

Ok, Thanks @abtink I will  create a PR to add this feature, and for lwIP, I will also create an issue for them.

I have now seen more cases like this, where an open source component doesn't strictly comply to IETF requirements, and often there's 1) a huge installed/legacy base of devices with that component and 2) unwillingness by maintainers to change because "it has been like this for years/decades and it always worked".  As a practical solution often we adapt the tests or the code under our control to cope with the status quo of implementations.
To me it sounds strange to ignore the SHOULD requirement, normally it's expected to include SLLAO if the sender has a valid link-layer address. To not send the option requires a very good reason I think! Especially if we know of stacks in the field that (mistakenly) depend on it.
The other cases I mentioned where issues like this appeared are BSD (MLDv2 protocol bugs explicitly introduced as required features) and mDNS (Avahi).

Hi, @abtink I created a PR for fixing this issue, could you please take a look?

@zwx1995esp Possibly this issue can be closed now?

Yes, I think this issue can be closed due to PR-10647 merged.


Json loaded on every get_item call.

We can see that Global_ItemDatabase.get_item called very frequent.
Problem is you do THIS every time:
	var itemData = {}
	itemData = Global_DataParser.load_data(url_database_item)

You parse data from the JSON on every method call.
That is just wasted CPU time and also may cause serious performance impact.
Stuff like items database should be loaded just ONCE on game startup.
So... There should be some caching for that data.

Well that was embarrassing, thanks for pointing it out. I'll get on it as soon as I can.


optparse-applicative for the command-line

Issue Number

#357
Overview

[ ] I have re-implemented the CLI commands using optparse-applicative

Comments

:warning: On-going work, I am pushing this to save it somewhere and to notify people that this is ongoing. It's done for the http-bridge and the generic stuff, remains: adjust the new Jörmungandr binary too.
Thanks @jonathanknowles for making this much easier with all the clean-up you did in the CLI :)

Thanks @jonathanknowles for making this much easier with all the clean-up you did in the CLI :)

No problem! I hope that it was of some help. I think this PR is certainly going in the right direction (with the switch to optparse-applicative).
I'm still looking at it: will leave a review when finished. :)

@jonathan.knowles we do have such users: exchanges. We'll eventually get rid of the launch command once Daedalus will take care of launching anf managing the various processes itself.
I think it's a nice idea however to make commands a bit more uniform and have maybe some like server run and server launch.

@KtorZ wrote:

@jonathan.knowles we do have such users: exchanges.

I see! Would it be okay to describe this use case in a bit more detail? (Just to clarify.)
For example, do exchanges need to be able to start the node with different parameters than we provide through our CLI? If that's the case, could we solve this problem by providing the options they need in our CLI?

@jonathanknowles Exchanges are all different, depending on their sizes and how they operate with their business. For now however, wallet and node aren't decoupled process-wise, so exchanges only monitor and manage one process. They however don't use the old launcher.
Some have already asked for being able to separate and monitor separately the wallet backend and the node.
In the end, this launcher story for us is really just provisional as a way to get Daedalus up-and-running quickly. Ultimately, this process management is done by an external component, might be something like docker-compose, a procfile or Daedalus itself.

@jonathanknowles I've resolved the remaining issues with integration tests and looked up the executable name from the environment instead of having it hard-coded in each file (makes it a bit more resilient to changes).
I'll turn the comments into executable specs in another PR if you don't mind :pray:, such that we can start iterating on that.

@jonathanknowles I've resolved the remaining issues with integration tests and looked up the executable name from the environment instead of having it hard-coded in each file (makes it a bit more resilient to changes).

I really like this solution.

I'll turn the comments into executable specs in another PR if you don't mind pray, such that we can start iterating on this PR as a baseline.

Sounds good to me. :)


Merge stage to main

Merge stage to main
Test URLs:

Before: https://main--express--adobecom.hlx.page/express/
After: https://stage--express--adobecom.hlx.page/express/

Codecov Report

Merging #370 (96c630b) into main (d966d08) will decrease coverage by 0.54%.
Report is 5 commits behind head on main.
The diff coverage is 34.28%.

@@            Coverage Diff             @@
##             main     #370      +/-   ##
==========================================
- Coverage   31.16%   30.62%   -0.54%
==========================================
  Files         122      124       +2
  Lines       25051    25211     +160
==========================================
- Hits         7807     7722      -85
- Misses      17244    17489     +245

Files
Coverage Δ

express/blocks/app-banner/app-banner.js
14.15% <100.00%> (ø)

express/blocks/app-store-blade/app-store-blade.js
14.69% <100.00%> (ø)

.../blocks/app-store-highlight/app-store-highlight.js
15.60% <100.00%> (ø)

express/blocks/banner/banner.js
88.09% <100.00%> (ø)

express/blocks/blog-posts/blog-posts.js
10.69% <100.00%> (ø)

...ss/blocks/browse-by-category/browse-by-category.js
24.17% <100.00%> (ø)

...browse-by-collaboration/browse-by-collaboration.js
30.76% <100.00%> (ø)

...xpress/blocks/bubble-ui-button/bubble-ui-button.js
11.99% <100.00%> (ø)

express/blocks/cards/cards.js
50.00% <100.00%> (ø)

...locks/carousel-card-mobile/carousel-card-mobile.js
30.50% <100.00%> (ø)

... and 93 more

... and 1 file with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


TypeError: (0 , _indicator.ema)(...).id(...).options is not a function

Hi @rrag! Thanks for your awesome library and need your help...
I took this example and did CopyPast into my project correctly, but got an error: TypeError: (0 , _indicator.ema)(...).id(...).options is not a function
Check it here https://codesandbox.io/s/84r4z9r290

please use npm install -S react-stockcharts@next the examples are for 0.7 beta.
I should probably just go ahead and rip the bandaid, publish 0.7 soon

@rrag  Thanks a lot! It helped!


Improved demo for new users?

In the Anchorage demo app, nothing in the root view controller is pinned using Anchorage. I'm trying to make my first app using Anchorage, and if I try using it to pin stuff I added to the root view that was automatically created by IB, I just get a big mess. Surely I'm doing it wrong or making my configureLayout() call too early. In any case, a demo using Anchorage in every view, including the root view controller, would really help.

@CharlesJenkins It sounds like your issue might be caused by putting the root view of the view controller on the left-hand side of the equation. Anchorage will set translatesAutoresizingMaskIntoConstraints = false for the LHS view (see the README for more info about this behavior), which will break root views

Closing this until more info is provided


Long running mode for DSC

Summary of the new feature / enhancement
For integration into other products, it would make sense to have a dsc long-running mode which can accept multiple operations and not exit the process.
Proposed technical implementation details (optional)
Probably a --server-mode type switch that has dsc.exe accept JSON commands to execute.  Commands would be taken serially.  Something of the form:
{
  "DSCRequest": {
    "id": "anything the client providers",
    "operation": "get",
    "configuration": { },
    "configurationFile": "path",
    "traceLevel": "info",
  }
}

Where the properties would match many of the dsc command line arguments.  An additional:
{
  "DSCResponse": {
    "id": "returns what the client provides",
    "status": "completed"
  }
}

This would indicate that the operation completed or had an error (like Request was invalid).
Can also have a specific command like:
{
  "DSCRequest": {
    "operation": "exit"
  }
}

This would tell dsc.exe to clean-up and exit.

As this mode will require JSON input/output, we'll also need to define JSON Schemas for the data.
A few clarifying questions:

Is this for providing an up-front array of commands to execute, or a mode where DSC listens to an endpoint (like waiting for input to a named pipe or similar) until it gets an exit command?

I could tell DSC I want to run the following commands by passing an array of JSON blobs:
dsc resource list
dsc resource get --resource Microsoft/OSInfo
dsc config test --path ./config_1
dsc config export --path ./config_2

Is part of the plan for long-running mode to take advantage of in-memory caching for resource discovery? For example, is it intended to be faster to have DSC in server-mode perform dsc resource list * --adapter * and then dsc resource list PSDscResources/Environment than calling those commands in serial at the terminal? Or is that out of scope for the feature?

From my perspective as a former engineer at an integrating vendor, I would initially be unlikely to use this functionality if the array always needs to be sent up front. In that case, I would probably prefer to write a plugin that reuses the information in resource manifests to call the resources in my own process management. The resource manifests and design contract should ensure that I can just map resource manifests to what my software needs to do.
On the other hand, I can see how this would simplify the integration with DSC resources, if I can always just operate on the return data that includes messages and errors from DSC instead of handling the stdout/stderr streams myself. And if I can open a long-lived DSC process to just send/receive commands and output, I would definitely do that. That's similar to how we wrote the integration between Puppet and PSDSC (we needed a long-lived PowerShell process to avoid the overhead cost of spinning up and down dozens of PowerShell procs just to run a single Invoke-DscResource command each time).

I think initially, it will be via stdin/stdout/stderr, but not as sending a large set of instructions.  It would be request->response->request->response.  This also means that all JSON input/output would have to be JSON lines unless passed in as a file path (updated example above).
yes, this would be a series of JSON lines each specifying the equivalent of the command-line.
In this mode, I would expect in-memory cache of resources, but I think that's not required for the first iteration, it's really to allow integrating software not to have to spawn dsc for every operation.

In many ways, this would be a predecessor having dsc run as a daemon/service (certainly not via stdin/stdout, but some client API)


Add scheduled event support and misc

What type of pull request is this?

[x] Non-breaking code change
[ ] Breaking code change
[ ] Documentation change/addition

Description

I am making this a drat because it is not 100% ready to be merged, there are things I do not like and want to change. As of now, this has support for mostly everything. There are some checks missing when editing an event and similar stuff like that. I will keep this up to date. Also, there are a few other small changes that are part of this like Timestamp object support in channel get messages.
Changes

Scheduled Event Model
Scheduled Event Requests
Scheduled Event Functionality
Timestamp in channel.get_messages()

Checklist

[x] I've formatted my code with Black
[ ] I've ensured my code works on Python 3.10.x
[ ] I've tested my code

This commit history is a mess.
If you were just trying to merge the Scheduled Events I would be fine with merging it (tests pending). But the scope of this PR is now scheduled events with various timestamp changes snuck in.
You should have kept the timestamp pr and made scheduled events their own pr

This commit history is a mess.
If you were just trying to merge the Scheduled Events I would be fine with merging it (tests pending). But the scope of this PR is now scheduled events with various timestamp changes snuck in.
You should have kept the timestamp pr and made scheduled events their own pr

Ya I remember I had that or open right after I pushed those changes, I just wasn't comfort reverting. I will remember for next time. Sorry bout that 😅

I really dont like all those commits, time to do better this time


Request: Add Filters to Notifications

Is your feature request related to a problem? Please describe.
I receive too many notifications from Petito. I do not need to be notified when I request something, or when something is added to a server.
Describe the solution you'd like
Allow a filter only allow select notifications.

Per User
Allow All
Deny All
User A - Allow/Deny
User B - Allow/Deny

Per Type
Allow All
Deny All
Requests - Allow/Deny
New Downloads - Allow/Deny

Describe alternatives you've considered
Disabling the notifications
Additional context
NA

Notifications is receiving an overhaul and email notifications will be far more granular


Feature/versioning

Examples for https://github.com/conan-io/docs/pull/2920

Please do not forget to update https://github.com/conan-io/examples2/blob/main/README.md

Please do not forget to update https://github.com/conan-io/examples2/blob/main/README.md

Updated


International Detection

Seems to work great from going between Canada and U.S. but doesn't like to go from U.S. to any other country.

I'm sorry but I don't understand, are you talking about changing the flag using the dropdown? What do you mean when you say "International Detection"?

Yes, the flag only switches between Canada/ U.S. but even with all the settings I tried, (I.P. detection or regular auto detect etc...) It won't format to other country numbers without manually switching.

I can't test using defaultCountry "auto" with other countries as I'm in the US. But if I set defaultCountry to "gb" (United Kingdom), then type a number, it formats it correctly.
Can you please give exact steps to reproduce the problem? And what you expect to happen and what actually happens.

I expect that when I type in a Hong Kong Number the flag to switch to Hong Kong no matter what flag is default. When its Canada to US it Seems fine but from any other country to Canada or to US or From Canada to China or US to China is just doesn't do anything.

I'm guessing you're typing national numbers? It's impossible for the plugin to know which country the number is for if you don't include the international dial code (e.g. +44 for the united kingdom).

Entering the international dial code doesn't change the flags either. The only thing that changes the flags to anything other than U.S or Canada is manually and for my purposes it needs to do it automatically based off the number that is in the input field which seems like something it's supposed to do but doesn't for me.

That's strange. Does it work for you on the demo page? If I go there and type +44 then I see the UK flag.

Damn. It worked, thank you. I feel dumb but also relieved.


Query params do not work

I have the following route in my engine:
// index/controller.js
export default Controller.extend({

  queryParams: ['sort', 'sortOrder'],

  sort: null,
  sortOrder: null,

  actions: {
    updateSort(sort) {
      this.set('sort', sort);
    },
    updateSortOrder(sortOrder) {
      this.set('sortOrder', sortOrder);
    }
  }
});

{{! index/template.hbs }}
<button {{action 'updateSort' 'name'}}>sort = name</button>
<button {{action 'updateSort' 'idTag'}}>sort = idTag</button>
<button {{action 'updateSortOrder' 'DESC'}}>sortOrder = DESC</button>
<button {{action 'updateSortOrder' 'ASC'}}>sortOrder = ASC</button>

However, apparently the query params overwrite each other somehow.
1.) Initially, no query param is there.
2.) I press the first button, sort=name
3.) I press the second button, sort=idTag
4.) I press the third button, sortOrder=DESC, sort is gone!
5.) I press the first button again, sort=name, sortOrder is gone!
The exact same template/controller works fine in the host app.

I have similar problem, which I think is caused because the query parameters cache is not shared between the application and the engines. They have their own instances, but all routing and hydration of unspecified query parameters is done at application level.

@mydea Can you try and see whether my pull request #166 fixes your problem as well?

@mydea the fix in #166 has been published in v0.2.8. Please close this issue if appropriate.

Works fine now! Thank you :)


Update on Deta information

I was looking into hosting on Deta for my new project and noticed that its documentation describes that it supports most web frameworks and even Deno, but this is not listed on the grammY website. There was a question mark on the grammY website, though, so you probably knew about this feature but didn't check it out, right? If that's true, I can check it out on my own project to make sure.

Just a note:

There was a question mark on the grammY website, though, so you probably knew about this feature but didn't check it out, right?

I don't why it was a question mark, but I don't think that was the reason. Deta (deta.sh) only supported Node.js and Python apps. They recently announced that they are moving to deta.space, a new, better platform (they gave the old users time to migrate their apps - until June 1). And the new Deta (deta.space) apps currently supports more languages, as you said, including Deno.

@dcdunkan I see. So eventually deta.sh will disappear altogether and be completely replaced by deta.spase?

As far as I understand, yes. See https://deta.space/from-cloud and their announcement: https://deta.space/blog/introducing-space.

What are we going to do with this?

@KnorpelSenf Who are you addressing?)

Anyone who has an answer to my question

@KnorpelSenf I think we can close this. Correct me if I’m wrong @dcdunkan @Nazar-Ant.

@roj1512 Do you think this change is unnecessary?

This change is for deta.space, right?

And the comparison talks about deta.sh?

I didn't mean to close this @roj1512. The whole section about Deta needs to be updated. The links should be changed to https://deta.space and the information should be updated as well.

So merge these as is and update the rest in another PQ or do everything in this PQ?

So merge these as is and update the rest in another PQ or do everything in this PQ?

That's for you guys to decide. As you like.

I think you need to resolve the conflicts.

conflicts are resolved

Thanks!


Fix header overlap

Description
Fixes bug, described in #9.
Changes

Added new property HeaderContentOverlapsToggleSidebarButton that controls if toggle sidebar button can overlap with header content.
Fixed menu items and toggle button overlap by addin MinHeight property to Header content. Its value depends on HeaderContentOverlapsToggleSidebarButton value.
Fixed header content overlappling with sidebar button. Button position now depends on HeaderContentOverlapsToggleSidebarButton property - if it is True - the original button outside DockPanel is shown. If False - a copied button that is inside DockPanel is shown.

Screenshots
HeaderContentOverlapsToggleSidebarButton=True

HeaderContentOverlapsToggleSidebarButton=False

Notes
As the button code was copied, DRY principle was violated. But making the button a separate component could be a bad idea either.
The other problem is that I don't know what the next version of SukiUI based on Avalonia 0.11 mentioned in readme will contain, because there is no branch on GitHub where people can see the code. Because of that - this could contain breaking changes for the future release, if Sidebar component was modified.
And maybe the issue was already fixed in new version.
Also - maybe consider moving the documentation to Github Wiki that can be enabled in repository settings? Readme.md is hard to read and modify. It should show off the possibilities and list features, tell about contributing and license, but all the details, examples of implementation etc should be on their own pages on something like wiki.

@kikipoulet can you please add `hacktoberfest-accepted' label to one of the PRs that I have made? I'm one PR away from event target


Transfer messages Schemas and Shapes validation

Seems like I didn't submit my review...

Updates of this PR are already incorporated in another activity and will be presented from there.


Dailywire Episode

I pray you take this video from the daily wire and Michael Knowles and you make it free make it free for me to view without buying their membership at dailywire.com.
https://www.dailywire.com/episode/ep-1630-the-supreme-court-transgenderism-case-explained

I pray you take this video from the daily wire and Michael Knowles and you make it free make it free for me to view without buying their membership at dailywire.com.
https://www.dailywire.com/episode/ep-1630-the-supreme-court-transgenderism-case-explained

... make it free for me to view ...

That is not what yt-dl is for. Also, use the Site Support Request issue template: in this case, I pasted it into the issue for you to complete.
I see that the previous episodes are free to view, so I'd just wait until E1630 is released in the same way.
DailyWire is not yet supported by yt-dl but there is a yt-dlp extractor that can be back-ported.
Probably, if someone had a site membership and exported cookies from their logged-in browser session where such a member-exclusive video could be played, the video could also be fetched by yt-dlp and also by yt-dl, once the extractor has been back-ported.


Add reflect metadata polyfill

[ ] Polyfill X is not served in browser Y (and it should be)
[ ] Polyfill X is served in browser Y (and it shouldn't be)
[ ] My browser is not recognised correctly
[x] Please add polyfill X
[ ] Please update polyfill X from the upstream repo
[ ] Polyfill X doesn't work properly

Reflect metadata polyfill.  Maybe we can use that https://www.npmjs.com/package/reflect-metadata .

I would be hesitant adding this as a polyfill in our service because it is currently not does not have a champion in TC39 and is not being actively proposed (assumption made on looking at the proposals document -- https://github.com/tc39/proposals).

We are looking to follow the advice that the W3C TAG has written about polyfills. https://w3ctag.github.io/polyfills/#feature-life-cycle-and-the-role-of-polyfills

Ok, let's close this issue


DrawerLayoutAndroid: changing drawerWidth is broken

Is this a bug report?
Yes

Have you read the Bugs section of the Contributing to React Native Guide?
Yes

Environment

react-native -v: 0.46.1
node -v: v7.10.0
npm -v: 4.2.0
yarn --version (if you use Yarn): 0.23.2

Then, specify:

Target Platform (e.g. iOS, Android): Android
Development Operating System (e.g. macOS Sierra, Windows 10): macOS Sierra
Build tools (Xcode or Android Studio version, iOS or Android SDK version, if relevant): Not relevant

Steps to Reproduce

Using DrawerLayoutAndroid changing the drawerWidth leads to incorrect layout.

Open a drawer (DrawerLayoutAndroid) (for example by swiping from the left edge)
Change the drawerWidth prop.

Expected Behavior

I expect the width to change and the layout of the component in the drawer to have the same with as the drawer.
Actual Behavior

The width of the component inside the drawer changes but the drawer itself does not change its width.
At startup:

Clicking 100 leads to

Clicking 400 leads to

Reproducible Demo

Open the drawer by swiping from the left.
Click the buttons to change the drawerWidth.
A runnable demo can be found at:
https://snack.expo.io/SkG-BkNSW

Hi there! This issue is being closed because it has been inactive for a while. Maybe the issue has been fixed in a recent release, or perhaps it is not affecting a lot of people. Either way, we're automatically closing issues after a period of inactivity. Please do not take it personally!
If you think this issue should definitely remain open, please let us know. The following information is helpful when it comes to determining if the issue should be re-opened:

Does the issue still reproduce on the latest release candidate? Post a comment with the version you tested.
If so, is there any information missing from the bug report? Post a comment with all the information required by the issue template.
Is there a pull request that addresses this issue? Post a comment with the PR number so we can follow up.

If you would like to work on a patch to fix the issue, contributions are very welcome! Read through the contribution guide, and feel free to hop into #react-native if you need help planning your contribution.


Replace coveralls with codecov

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@373a148). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   90.85%
=========================================
  Files             ?      173
  Lines             ?     6112
  Branches          ?     1249
=========================================
  Hits              ?     5553
  Misses            ?      559
  Partials          ?        0

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 373a148...9f12a93. Read the comment docs.


Light use efficiency

Hi Yao,
The parameter of LUTepsilon in the script is different from your paper (Zhang, 2017, Scientific data, Table2).
Is that correct? Which one can I use?
Cheers,
Dongdong

Hi Dongdong,
This is a unit conversion problem, in the paper the radiation unit is mol PAR, in the code, we directly used the W/m2,
0.42 g C m-2 day-1/mol m-2 day -1
=0.078 g C m-2 day -1 /W m-2
Let me know if it is clear or not.
Yao

On Oct 8, 2018, at 4:08 AM, Dongdong Kong<EMAIL_ADDRESS>wrote:
Hi Yao,
The parameter of LUTepsilon in the script https://github.com/zhangyaonju/Global_GPP_VPM_NCEP_C3C4/blob/c09bc58a7a0bd066ef4f3c78bb836193deb4a53c/GPP_C6_for_cattle.py#L145 is different from your paper (Zhang, 2017, Scientific data, Table2).
Is that correct? Which one can I use?
Cheers,
Dongdong
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/zhangyaonju/Global_GPP_VPM_NCEP_C3C4/issues/1, or mute the thread https://github.com/notifications/unsubscribe-auth/AJUnYu4t9pVQRZ87y2NyTWoNzujM6mkzks5uiwgOgaJpZM4XMbfP.

Yeah, it's clear. Thank you!


Camera focus

We need to arrange the object in the center of the canvas automatically.
The camera should approach if the object is small or far away and capture it entirely.

mb we have to store camera position before minting?


Clean-up deprecated code

Removed deprecated code.
Added version information for newly deprecated methods.

Hi @krmahadevan, removing of the IResultMap.addResult(ITestResult result, ITestNGMethod method) breaks compatibility of our tool with the latest version of TestNG and forces us to use Java Reflection mechanism in order to support both the current version of TestNG together and older versions.
I'm just wondering what was the reason of removing the method in public interface?

I'm just wondering what was the reason of removing the method in public interface?

On top of my head I don't exactly recollect the reason, but I believe it went through a deprecation strategy before it got removed. I think it could be because the ITestNGMethod could be retrieved from ITestResult and hence it perhaps was a redundant parameter.
Maybe you can have your tool refactored to just work with ITestResult instead of using reflection ?

Thank you for the quick reply!

Maybe you can have your tool refactored to just work with ITestResult instead of using reflection ?

The problem is that we have to support several versions including the older ones which have old method signature only, so it looks like reflection is the only way to go for us for now.
Of course this is not a big deal for us, but for the future releases - maybe we can keep the deprecated methods in public interfaces to avoid such issues with backward compatibility?

so it looks like reflection is the only way to go for us for now.

Not necessarily the case. You could try wrap up the call within a try..catch wherein you invoke the one arg method if the two arg method causes a NoSuchMethodFoundError (Am assuming that the errors are all runtime)

maybe we can keep the deprecated methods in public interfaces to avoid such issues with backward compatibility?

Retaining a deprecated method in a public interface would also cause the functionality to work, which perhaps is not a good experience. I completely agree with you that it causes a bad experience but I believe that's the only way in which the APIs can evolve as well.

You could try wrap up the call within a try..catch wherein you invoke the one arg method if the two arg method causes a NoSuchMethodFoundError (Am assuming that the errors are all runtime)

Yes, this is exactly what we do to solve the issue - catch the NoSuchMethodError and then trying to find a method with two args via reflection (since the newest version does not have method with two args anymore).

I completely agree with you that it causes a bad experience but I believe that's the only way in which the APIs can evolve as well.
OK, I see your point. Just a suggestion - maybe do such changes as a part of a major release next time?


Webpack-specific fix for issue #7

This is a more webpack-specific fix for issue #7 than the solution presented in PR #28. Rather than optimize every function expression that is an element of an array literal param, this PR only optimizes function expressions that are elements of an array literal param of a function expression call.
So, unlike PR #28, this PR will not transform this code:
foo([
  function(o,r,t){
    console.log("element 0");
  }
]);

because foo is not a function expression.
I think that this version is probably better than PR #28, but I'm happy to hear dissenting views!

I tend to agree that this is a better fix! I prefer targeted solutions that look for existing patterns (e.g. Webpack) because that increases the likelihood that we will add parentheses where it really matters, and not just willy-nilly for any function in the code. I'd be happy to merge this in favor of #28.
BTW I have merged #31 because I wanted to get ES6 support in, but unfortunately it seems to cause merge conflicts with the other PRs. :confused: So perhaps I was too hasty to merge. What do you think is the best course moving forward? Should I have chosen another es-walker library or would it not be too much work to merge your fixes into the new master?

Glancing at the changes, I think it shouldn't be too hard to merge in, but those are famous last words. The key is going to be if estree-walker and walk-ast produce significantly different ASTs in any real way.
Let me give it a stab.

Updated!
The only wacky part was that estree-walker doesn't automatically add a pointer to parentNode like walk-ast does. I tried to just set node.parentNode = parent as the first line of enter, but that led to an infinite loop. This was because estree-walker assumes that any node property with an object value is in fact a child, so adding a parentNode property led to infinite loops in the AST. The solution (which is a little hacky?) was to make the link to the node's parent into a function.
All tests pass, including several new negative test cases, and coverage is still 100%.
(And as an added enticement to merge, I have a branch on top of this waiting in the wings which implements a browserify-specific solution to #29. ;) )

BTW @aickin I've gone ahead and made you a contributor to optimize-js so you have the power to merge PRs, commit to master, etc. My typical policy is to wait for at least one other contributor to +1 a PR, but if you don't get a response within 24 hours or so feel free to timebomb and merge it yourself.
Your Webpack-specific fixes are awesome, and what I'd like to do next is:

merge the Browserify-specific solution you mentioned :)
release a new version to npm
re-run the benchmark and also update the README so that the benchmark results are an accurate representation of the new release. I'm not picky about who runs the benchmarks and on which machine, but an update to the README should probably be offered as a PR so we can at least compare the before-and-after to make sure we didn't regress anywhere. If you don't have time I am very happy to run the benchmarks myself; I'll have some time this weekend because I'll be on a long flight for a conference.

Awesome, thanks for both the invite and the clear guidance on how it is to be used!
I've posted the browserify fix as PR #36. Have at it!
As for the benchmark, I agree that it should be re-run, but I have some concerns that it may not be entirely fair to unoptimized code. I wrote those concerns up as issue #37. Let me know what you think.
Onwards!


images can not display using vue & electron

Describe the bug
I am using vite & vue 3 & electron, when I use path.resolve, the img can not display

But when I use the absoulte path, the img can show correctly

Reproduction
https://github.com/2000mg/vite-vue-electron
System Info
System:
    OS: Windows 10 10.0.19044
    CPU: (8) x64 Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
    Memory: 7.42 GB / 15.88 GB
  Binaries:
    Node: 16.14.0 - D:\NodeJS\node.EXE
    npm: 8.5.3 - D:\NodeJS\npm.CMD
  Browsers:
    Edge: Spartan (44.19041.1266.0), Chromium (99.0.1150.30)
    Internet Explorer: 11.0.19041.1566

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

It is an OS based issue, you can normalize the path using (path.resolve(dirname, './dist/')).replace(/\\/g, '/')

it worked, thank you !


Problem with Canvas Dragging when using hc:Window

Describe the bug
When using hc:Window, I ran into a problem with canvas items interacting
You can see in the attached video, when I drag move an item or drag select, the position only registered when it's pixel perfect (grid spacing is 1 pixel)
This also cause items position to be snapped to pixel when display
This problem is no longer exists when change hc:Window to Window
One more side effect of this is the text rendering ( especially TextBlockDefault style on dark theme) looks like ClearType is disabled, when change to Window instead of hc:Window, the text back to normal but some controls are fuzzy
https://github.com/HandyOrg/HandyControl/assets/40384831/b7bf00ba-550b-460b-9d62-eddc7cb3688a
Steps to reproduce the bug
using hc:Window instead of default Window
Expected behavior
Dragging should not be snap to pixel ( see attached video)
https://github.com/HandyOrg/HandyControl/assets/40384831/ba24468d-737b-4970-97b7-f48618921a28
Screenshots
No response
NuGet package version
HandyControl 3.4.0
IDE
Visual Studio 2022
Framework type
.Net Framework 4.7.2
Windows version
Windows 11 (22000)
Additional context
No response

Set UseLayoutRounding  to False did solve the problem


Need ability to NOT wrap with  tags

I am using redcarpet to take a string like this:
My text has some <script>alert('bad stuff')</script> in it

and strip out the html. However, the string that I get back is wrapped in <p> tags. I know this is probably normal behavior, but this string is going to be going in a <span> tag, not a <p>.
Is there a way I can render(text) without wrapping in a <p> tag?

Hey Andrew, I'm afraid there's no (easy) way to properly remove the paragraph tags from the output. Using Redcarpet to filter out HTML is, by all means, a terrible idea anyway.
Please allow me to suggest Nokogiri instead. Its HTML sanitizer is superb and will allow you to choose exactly which HTML tags you want to filter out. Cheers!

thanks for the suggestion. I think RedCarpet will be okay for my uses. I have resorted to using a regular expression to strip the <p> tags:
filtered_text = @markdown.render(text)
      filtered_text = Regexp.new('^<p>(.*)<\/p>$').match(filtered_text)[1] # remove the <p> tags that markdown wraps by default

This solution doesn't work if the markdown is a blockquote, like > test, since redcarpet puts the <blockquote> outside the <p>.

Yeah. Any solution based on regexps is going to have some blind spots. If you really care (e.g. there might be insecure alert/script tags) then you really, really need to use a sanitiser that parses properly like Nokogiri, Loofah, etc. More work, but a regexp guarantees security leaks :-/


fix: bring back afterProcess hook

Summary

Addressed by https://github.com/kulshekhar/ts-jest/discussions/3131#discussioncomment-1760522
Test plan

Added unit test
Green CI
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information
N.A.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

7 of 7 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.15%

Totals

Change from base Build<PHONE_NUMBER>:
0%

Covered Lines:
1173

Relevant Lines:
1200

💛  - Coveralls


Test: do not use path style to access aliyun OSS

Change-Id: I09394806b418c1fba421c09f3aa6fc7ec3d2f5ad
Proposed changes
This PR continues https://github.com/apache/doris/pull/35666.

run buildall


feat(share/eds): Rework accessor cache

Motivation
Previously, all accessors went into cache. They were closed only when they were evicted from it and there was no way to manually close one. Now, when we need to cache accessors only in some cases and in some not to, this approach will not work. Enabling control of accessor close required major cache rework.
New cache features:

Old cache didn't allow to close and release of an accessor. Now, Instead of returning just a reader/blockstore, cache returns object that composed of builder and io.Closer (Accessor interface). This allows caller to have an ability to close and release accessor once it is done with reading from it.
Items stored in cache also provide io.Closer`, but it is noop. Lifecycle of cached items is controlled by cache itself. For now objects are released right after they are evicted from cache, but it could be changed to smarter release based on current readers count. Will be implemented as separate issue.
Lazy blockstore builder. Old cache created blockstore every time accessor was acquired, even when only reader was used and blockstore was not needed. Creating blockstore is costly operation that involves building index, so this was reworked to create blockstore, only when it is requested and store it for subsequent requests.
adds cache unit tests.
adds metrics for cache methods to track cache hits/miss.
general cleanup of unused methods/logic.

It will be easier for reviewer to start from store.go and blockstore.go and then go into new cache pkg

Codecov Report

Merging #2612 (cee7338) into main (c146a0a) will increase coverage by 0.14%.
The diff coverage is 58.98%.

@@            Coverage Diff             @@
##             main    #2612      +/-   ##
==========================================
+ Coverage   51.00%   51.15%   +0.14%
==========================================
  Files         158      161       +3
  Lines       10657    10727      +70
==========================================
+ Hits         5436     5487      +51
- Misses       4744     4755      +11
- Partials      477      485       +8

Files Changed
Coverage Δ

share/eds/cache/noop.go
0.00% <0.00%> (ø)

share/eds/metrics.go
18.94% <0.00%> (-0.48%)
:arrow_down:

share/eds/cache/metrics.go
21.05% <21.05%> (ø)

share/eds/utils.go
25.00% <25.00%> (ø)

share/getters/store.go
68.42% <25.00%> (-4.00%)
:arrow_down:

share/p2p/shrexeds/server.go
62.30% <62.50%> (-0.30%)
:arrow_down:

share/eds/store.go
61.94% <70.49%> (-1.81%)
:arrow_down:

share/eds/cache/accessor_cache.go
70.70% <70.70%> (ø)

share/eds/blockstore.go
41.17% <75.86%> (+10.14%)
:arrow_up:

... and 2 files with indirect coverage changes


error on try open url handler sublime

When I clicked on URL Handler to open sublime on stack error if the document.
this path freeze my sublime -  this is not my project path
subl://open?url=file:///Users/brenoperucchi/rbenv/versions2.2.0/gemsets/imentore/gems/activemodel-4.0.13/lib/active_model/attribute_methods.rb&line=439
not freeze my sublime -  this is my project path
subl://open?url=file:///Users/brenoperucchi/Google-Drive/03-Apps/imentore/imentore-ecommerce/app/models/imentore/image.rb&line=13
event logging - stack error
https://drive.google.com/file/d/0B7NFAQ1jLJ1qeS1CaGdfd0JzaDQ/view?usp=sharing
I don't know if this error is different from sublime or be2err or neither both

Please close this issues because I found what is hurt the sublime. Was the ApplySyntax that was freezing.

@bperucchi you should be able to close the issue yourself I believe?


hahomeatic stopped working after update 1.21.1

Home Assistant Language: german
custom_component version (if applicable):
1.21.1
known last working custom_component version (if applicable):
1.21.0
Home Assistant version (if applicable):
2022.10.4 (Running in docker)
CCU version:
CCU3 (V. 3.65.11)
Problem-relevant configuration:
Do you use tls? No
Do you use callback? No
Do you use username and password? Yes
Which interfaces do you use? hmip
Describe the bug
Hahomematic stopped working with the latest version. Everything was working just fine before updating to 1.21.1, I did no changes to the config.
Screenshots (if applicable)

Relevant HA log entries (full log)
homeassistant    | 2022-11-08T20:17:15.216865124Z 2022-11-08 20:17:15.216 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.sensor: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.539257326Z 2022-11-08 20:17:15.538 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.lock: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.542601144Z 2022-11-08 20:17:15.541 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.climate: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.547530292Z 2022-11-08 20:17:15.546 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.cover: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.553793507Z 2022-11-08 20:17:15.553 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.binary_sensor: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.556884844Z 2022-11-08 20:17:15.556 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.number: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.560985685Z 2022-11-08 20:17:15.560 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.select: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.563956567Z 2022-11-08 20:17:15.563 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.button: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.567044310Z 2022-11-08 20:17:15.566 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.siren: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.581981047Z 2022-11-08 20:17:15.581 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.light: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).
homeassistant    | 2022-11-08T20:17:15.590729506Z 2022-11-08 20:17:15.590 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform homematicip_local.switch: Platform not found (cannot import name 'UnitOfEnergy' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)).

Never mind. My HA didn't inform me, that update 2022.11 is availible. Upgrading did the job

Reading the release notes might be a better job.


fix: string //# sourceMappingURL= breaking tests

This bug was initially reported on https://github.com/avajs/ava/issues/1595, however, it was confirmed this happened with mocha as well so it might be something happening with nyc.

Expected Behavior
Files containing the string //# sourceMappingURL= to be tested without breaking.
Observed Behavior
Apparently, there's a bug where files containing a string with the initial part of a sourcemap instruction, i.e: //# sourceMappingURL=, will fail to generate code coverage as well as being tested.
Bonus Points! Code (or Repository) that Reproduces Issue
Repro: https://github.com/zanona/ava-sourcemap-fail
Forensic Information
Operating System: the operating system you observed the issue on.
Environment Information: information about your project's environment, see instructions below:
node -e "var os=require('os');console.log('Node.js ' + process.version + '\n' + os.platform() + ' ' + os.release())"
Node.js v8.7.0
darwin 16.7.0
ava --version > 0.23.0
npm --version > 5.5.1

I think the source map util used by nyc does a string search for the comment pattern. It doesn't generate an AST for the file.
If it's possible try breaking up the string, e.g. '//# source' + 'MappingURL=' to avoid this problem.

thank @novemberborn. yep, that's why I have done so far to work around it, however, I believe the parser can be improved to only catch '//# sourceMappingURL=' on the beginning of lines, etc.

This is an upstream issue though, see https://github.com/thlorenz/convert-source-map/issues/60.

@novemberborn  Haha, oh my that's NPM 😜 It feels like "The Twelve Tasks of Asterix".
Thanks for pointing that out.

it seems this has now been fixed at https://github.com/thlorenz/convert-source-map/commit/46a6c17c1d58f72ab0f1934669670ed179f06c72 which sits under 1.5.1, so as long as nyc updates their dependencies, it's all good here as well.


Bug 2058267: Add clarifying information to oc-mirror version command and remove alpha.3 from semver

Signed-off-by: Jennifer Power<EMAIL_ADDRESS>Description
This PR backports changes to the oc-mirror version command to the release 4.10 branch to fix the Bugzilla issue below.
Related to #328
Fixes Bugzilla issue 2056752
Type of change
Please delete options that are not relevant.

[X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?

[X] Unit tests added
[X] Manual testing

Checklist:

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[X] My changes generate no new warnings
[X] I have added tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

/bugzilla refresh

/bugzilla refresh

I've checked with the code , could see more information now :
./bin/oc-mirror  version
Client Version: version.Info{Major:"0", Minor:"1", GitVersion:"v0.1.0", GitCommit:"38f4dc72ccfc071ac1cd2ec643ef7fa65b9cafef", GitTreeState:"clean", BuildDate:"2022-02-23T05:51:46Z", GoVersion:"go1.16.1", Compiler:"gc", Platform:"linux/amd64"}

/label qe-approved

bugzilla /refresh

/bugzilla refresh

@bparees PTAL. Thanks!

We're a bit late to be putting this into 4.10.0 at this point(we think we may have cut the final release candidate), let's just merge it into 4.10.z after 4.10.0 GAs.

We're a bit late to be putting this into 4.10.0 at this point(we think we may have cut the final release candidate), let's just merge it into 4.10.z after 4.10.0 GAs.

Will do.

@zhouying7780 can you please verify this and add a cherry-pick-approved label if this fix can be merged? Thanks!


Creating file type causes exception Error: mat-form-field must contain a MatFormFieldControl.

Question
when using formly with the material fields, I was trying to create a multi file upload field,
after following the docs here https://formly.dev/docs/examples/other/input-file,
the exception "Error: mat-form-field must contain a MatFormFieldControl." take place on form init,
can you please inform me on how to resolve this issue ? thanks.

this is a duplicate of https://github.com/ngx-formly/ngx-formly/issues/3512
FieldType should be imported from '@ngx-formly/material' and not '@ngx-formly/core'


Remove date/time from log statements

Resetting logger flags (default log.Ldate|log.Ltime) as it shows datetime
output for cat.
This fixes #53.
Signed-off-by: Ahmet Alp Balkan<EMAIL_ADDRESS>

LGTM. Thanks!


How I can run the program by using dataset

Which is the main file for execution

Hi @rajitnair , the main script for the execution is pipeline.py, if you fulfill all the requirements you can just execute 'python pipeline.py' in your shell from the main project directory.