Unable to write to config.json

Despite allowing everyone read/write access to config.json LinkLiar reports its still unable to write to the config file.
Im using the pre-release version of LinkLiar 3.2.0 OS X Ventura 13.4.1.
The advanced options show that the config file is writeable. However when you attempt to change the interface to random, it reports the error below in the logs and never saves the preference, even after killing the app and restarting it.

Error Message:
GUI    - JSONWriter - Could not write: Error Domain=NSCocoaErrorDomain Code=513 "You don’t have permission to save the file “config.json” in the folder “io.github.halo.LinkLiar”." UserInfo={NSFilePath=/Library/Application Support/io.github.halo.LinkLiar/config.json, NSUserStringVariant=Folder, NSUnderlyingError=0x600002b90bd0 {Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied"}}
Full Debug:
Daemon - JSONReader - Reading /Library/Application Support/io.github.halo.LinkLiar/config.json Daemon - JSONReader - Content: 289 bytes Daemon - JSONReader - Successfuly read it Daemon - LinkDaemon - Running Synchronizer because config changed... Daemon - Ifconfig - Interface en0 has the soft MAC address xx:xx:xx:xx:xx:xx Daemon - Synchronizer - Interface en0 is specified to be randomized. Daemon - Synchronizer - Checking among these prefixes: ["00:03:93", "00:05:02", "00:0a:27", "00:0a:95", "00:0d:93", "00:10:fa", "00:11:24", "00:14:51", "00:16:cb", "00:17:f2", "00:19:e3", "00:1b:63", "00:1c:b3", "00:1d:4f", "00:1e:52", "00:1e:c2", "00:1f:5b", "00:1f:f3", "00:21:e9", "00:22:41", "00:23:12", "00:23:32", "00:23:6c", "00:23:df", "00:24:36", "00:25:00", "00:25:4b", "00:25:bc", "00:26:08", "00:26:4a", "00:26:b0", "00:26:bb", "00:30:65", "00:3e:e1", "00:50:e4", "00:56:cd", "00:5b:94", "00:61:71", "00:6d:52", "00:88:65", "00:a0:40", "00:b3:62", "00:c6:10", "00:cd:fe", "00:db:70", "00:f4:b9", "00:f7:6f", "04:0c:ce", "04:15:52", "04:1e:64", "04:26:65", "04:48:9a", "04:4b:ed", "04:52:f3", "04:54:53", "04:69:f8", "04:72:95", "04:d3:cf", "04:db:56", "04:e5:36", "04:f1:3e", "04:f7:e4", "08:00:07", "08:2c:b6", "08:66:98", "08:6d:41", "08:70:45", "08:74:02", "08:e6:89", "08:f4:ab", "08:f6:9c", "08:f8:bc", "0c:15:39", "0c:30:21", "0c:3b:50", "0c:3e:9f", "0c:4d:e9", "0c:51:01", "0c:74:c2", "0c:77:1a", "0c:bc:9<…> Daemon - Synchronizer - The Interface en0 has the sanctioned prefix MACAddress(raw: "xx:xx:xx:xx:xx:xx"). Daemon - Synchronizer - Skipping randomization of Interface en0 because it is already random and no undesired address has been specified. GUI    - Bar - Reloading status bar icon... GUI    - Ifconfig - Interface en0 has the soft MAC address xx:xx:xx:xx:xx:xx GUI    - Bar - Status bar icon reloaded. GUI    - Bar - User clicked on the status bar menu icon. GUI    - Menu - Updating... GUI    - Menu - Reloading Interface menu items GUI    - MACVendors - Looking up vendor of MAC GUI    - PrefixesSubmenu - Updating... GUI    - PrefixesSubmenu - Loading chosen vendors into submenu... GUI    - PrefixesSubmenu - Loading chosen prefixes into submenu... GUI    - PrefixesSubmenu - Loading available vendors into submenu... GUI    - LaunchCtl - Querying launchctl for daemon... GUI    - Intercom - The helper responded with its version GUI    - Bar - Immediately refreshing GUI GUI    - Ifconfig - Interface en0 has the soft MAC address xx:xx:xx:xx:xx:xx GUI    - MACVendors - Looking up vendor of MAC xx:xx:xx:xx:xx:xx GUI    - Bar - Immediately refreshing GUI GUI    - Bar - Reloading status bar icon... GUI    - Ifconfig - Interface en0 has the soft MAC address xx:xx:xx:xx:xx:xx GUI    - Bar - Status bar icon reloaded. GUI    - Intercom - The helper responded with its version GUI    - Bar - Immediately refreshing GUI GUI    - ConfigWriter - Changing config to randomize Interface en0 excluding its current address xx:xx:xx:xx:xx:xx GUI    - JSONWriter - Could not write: Error Domain=NSCocoaErrorDomain Code=513 "You don’t have permission to save the file “config.json” in the folder “io.github.halo.LinkLiar”." UserInfo={NSFilePath=/Library/Application Support/io.github.halo.LinkLiar/config.json, NSUserStringVariant=Folder, NSUnderlyingError=0x600002b90bd0 {Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied"}} Daemon - IntervalTimer - 600.0 seconds have passed. Daemon - LinkDaemon - Time for periodic activity... Daemon - Ifconfig - Interface en0 has the soft MAC address xx:xx:xx:xx:xx:xx Daemon - Synchronizer - Interface en0 is specified to be randomized. Daemon - Synchronizer - Checking among these prefixes: ["00:03:93", "00:05:02", "00:0a:27", "00:0a:95", "00:0d:93", "00:10:fa", "00:11:24", "00:14:51", "00:16:cb", "00:17:f2", "00:19:e3", "00:1b:63", "00:1c:b3", "00:1d:4f", "00:1e:52", "00:1e:c2", "00:1f:5b", "00:1f:f3", "00:21:e9", "00:22:41", "00:23:12", "00:23:32", "00:23:6c", "00:23:df", "00:24:36", "00:25:00", "00:25:4b", "00:25:bc", "00:26:08", "00:26:4a", "00:26:b0", "00:26:bb", "00:30:65", "00:3e:e1", "00:50:e4", "00:56:cd", "00:5b:94", "00:61:71", "00:6d:52", "00:88:65", "00:a0:40", "00:b3:62", "00:c6:10", "00:cd:fe", "00:db:70", "00:f4:b9", "00:f7:6f", "04:0c:ce", "04:15:52", "04:1e:64", "04:26:65", "04:48:9a", "04:4b:ed", "04:52:f3", "04:54:53", "04:69:f8", "04:72:95", "04:d3:cf", "04:db:56", "04:e5:36", "04:f1:3e", "04:f7:e4", "08:00:07", "08:2c:b6", "08:66:98", "08:6d:41", "08:70:45", "08:74:02", "08:e6:89", "08:f4:ab", "08:f6:9c", "08:f8:bc", "0c:15:39", "0c:30:21", "0c:3b:50", "0c:3e:9f", "0c:4d:e9", "0c:51:01", "0c:74:c2", "0c:77:1a", "0c:bc:9<…> Daemon - Synchronizer - The Interface en0 has the sanctioned prefix MACAddress(raw: "xx:xx:xx:xx:xx:xx").
I appreciate you having a look, btw the MACs were masked in this debug message.
Btw the fix for this issue is to run "sudo chown -R $(whoami) /Library/Application\ Support/io.github.halo.LinkLiar/" which manually adjusts the permissions. Doing so through the OSX GUI didnt work for some reason or another.

I've been able to reproduce this issue on Sonoma (so, that's good!). Unfortunately I cannot give an ETA at the moment as to when I'll find the time to fix this. Keeping the hope up :)

ETA is by the end of the year.

So... you triggered me to rewrite LinkLiar from scratch 😆 It took a while, but it's about 90% done now and the basic functionality is working. It needs more testing then I'll cut an official release.
While refactoring, I noticed that there is a subtle problem with file permissions and writing to the config file, I think that might explain your problem: When LinkLiar tries to write to the config file atomically, the operating system creates a temporary file and then swaps out the original config file by moving the temporary file into place. This mechanism only works if there are writing permissions to the directory! I was able to fix this here, so I think the next release will not suffer from this problem any more.
I'll close this issue for now, please feel free to open it again should something new surface.


Add support for wrapping types in deserialization

Summary
This PR adds another step in the deserialization pipeline which support wrapping types, ex: Nullable<T>, Option<T>, etc. It also fixes a bug with value type deserialization due to expression initialization by adding an explicit box operation.

Code makes sense to me! Is there any easy test case we can add at least for Nullable<T> to exercise this behavior?

Added!


Fix Potential Multi-thread issues with DateFormat use

DateFormat, per its Javadoc, is not safe for use in a situation where multiple threads could access it at once. Declaring it in a static context presents this possibility - switching to either a non-static variable or a thread local variable removes this problem.
My contributions are licensed under the Apache 2.0 License as required for contributions to this project

Pulled, pending sync.


Add support for MRAP arns

This also introduces sigv4a support in order to sign requests that go to MRAP endpoints.

Codecov Report

Merging #2476 (410971f) into v2 (c2c70e1) will decrease coverage by 0.27%.
The diff coverage is 85.29%.

@@            Coverage Diff             @@
##               v2    #2476      +/-   ##
==========================================
- Coverage   97.61%   97.33%   -0.28%
==========================================
  Files          57       57
  Lines       10826    10859      +33
==========================================
+ Hits        10568    10570       +2
- Misses        258      289      +31

Impacted Files
Coverage Δ

botocore/configprovider.py
93.46% <ø> (ø)

botocore/handlers.py
94.94% <75.00%> (-0.20%)
:arrow_down:

botocore/regions.py
96.73% <80.00%> (-0.97%)
:arrow_down:

botocore/crt/auth.py
89.51% <81.96%> (-7.36%)
:arrow_down:

botocore/utils.py
96.84% <97.36%> (-0.16%)
:arrow_down:

botocore/auth.py
97.95% <100.00%> (+<0.01%)
:arrow_up:

botocore/httpsession.py
90.49% <0.00%> (-1.44%)
:arrow_down:

botocore/compat.py
69.54% <0.00%> (-0.35%)
:arrow_down:

botocore/model.py
98.02% <0.00%> (-0.23%)
:arrow_down:

botocore/docs/bcdoc/restdoc.py
96.26% <0.00%> (-0.17%)
:arrow_down:

... and 18 more

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 c2c70e1...410971f. Read the comment docs.


Update projectmanager.py

close_project function tried to access the _obj property on a string. removed the error

Fixed in https://github.com/pedrolabonia/pydavinci/commit/17c8c10c102e8dcdae96f881c5f367976165fe37
Closing for now


add .prettierrc.json and run prettier on the README

Can we just have it part of the make process that the docs and code are prettified and linted or some such?

this has been pushed to main. I just added an npm run prettier command in the package.json's scripts


[REQUEST] Invite nearby players

be able to automatically invite nearby players, very useful if you need a full party to play mm

WOW GOOD PLAN

cool


Prevent memory leak

Change the TokenGetter to a weak reference to prevent a memory leak in the client.
The client holds the CentrifugeClientConfig which has a strong reference to a CentrifugeConnectionTokenGetter
The problem can happen once the CentrifugeConnectionTokenGetter implementation is the one that is holding a strong reference to the Client.
This creates a circular strong reference Between the App -> Client -> Config -> TokenGetter -> App

@YoavGro hello, thanks a lot for PR!
What do you think - it seems we better add the same to Subscription tokenGetter?
https://github.com/centrifugal/centrifuge-swift/blob/783e7a2f51e325650cb3b331d547b99060221820/Sources/SwiftCentrifuge/Subscription.swift#L36

Yep, good idea.
Done

Thanks! I'll try to make a new release till the end of this week


rich.prompt.PromptBase does not allow to use the choices argument when type is distinct of str

As explained at https://github.com/willmcgugan/rich/issues/1758, currently there are a bug on the rich library that does not allow to provide the choices argument when return_type is not str

Closing this issue as it's already resolved


ansible.vars.hostvars.HostVarsVars object' has no attribute 'ansible_eth0

TASK [config-clair : Set Clair Address] ******************************************************
fatal: [quay-v2.pichuang.local]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'ansible.vars.hostvars.HostVarsVars object' has no attribute 'ansible_eth0'\n\nThe error appears to have been in '/home/pichuang/code/infra-ansible/roles/config-clair/tasks/main.yml': line 8, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Set Clair Address\n  ^ here\n"}

01:13:49 pichuang@bastion 0 ~/code/infra-ansible/roles/config-clair (quay*)
$ grep -R "ansible_eth0" ./*
./defaults/main.yml:postgresql_db_uri: "postgresql://{{ postgresql_username }}:{{ postgresql_password }}@{{ postgresql_host if postgresql_host is defined and postgresql_host|trim != '' else hostvars[inventory_hostname]['ansible_eth0']['ipv4']['address'] }}:{{ postgresql_port | default('5432') }}/{{ postgresql_database | default('clair') }}{{ '?sslmode=disable' if not postgresql_ssl_enabled }}"
./tasks/main.yml:    clair_address: "http://{{ hostvars[inventory_hostname]['ansible_eth0']['ipv4']['address'] }}"

Solution
ansible_eth0 -> ansible_ens192


Initial

Updated the README to include a little bit more about me

Adding approval since it seems currently Travis does not have permission to do so. Great work!


chore(master): Release 0.9.0

:robot: I have created a release beep boop
aztec-packages: 0.9.0
0.9.0 (2023-10-17)
⚠ BREAKING CHANGES

nuking PublicToken and PrivateAirdropToken (#2873)
Change blake3 to blake2 in private kernel (#2861)
nuking private token (#2822)

Features

Add input support for chained transactions ("pending_read_requests" in private kernel circuit) (#2869) (c1dff38)
Bump msgpack (#2884) (d7b7fb1)
Contract ts interface to use only aztec.js imports (#2876) (6952a1a)
Download msgpack (#2885) (8ac8beb)
Faucet (#2856) (5bad35f)
Nuking PublicToken and PrivateAirdropToken (#2873) (c74311d)
Nuking private token (#2822) (5d93a47), closes #2350

Bug Fixes

Aztec node to save outbox adddress to config (#2867) (b6418a6)
Create data dir on node boot (#2864) (2d498b3)
Don't repeatedly scan for missing messages (#2886) (3fe1cc8)
Fix trailing pipe causing everything to rebuild. Sorry... (d13ba75)
Pad L1 to L2 messages upon retrieval from L1 (#2879) (457669e)
Sequencer aborts in-progress block (#2883) (b0915a8)

Miscellaneous

Change blake3 to blake2 in private kernel (#2861) (d629940)
Clean canary env & fixes (#2880) (20ad577)
Making anvil silent again (#2866) (90ae5dc)
Spell check on forbidden words. (#2887) (06bc4f9)

Documentation

Initial 'protocol description' toc (#2844) (cb18f45)

barretenberg.js: 0.9.0
0.9.0 (2023-10-17)
Miscellaneous

barretenberg.js: Synchronize aztec-packages versions

barretenberg: 0.9.0
0.9.0 (2023-10-17)
Features

Bump msgpack (#2884) (d7b7fb1)
Download msgpack (#2885) (8ac8beb)

This PR was generated with Release Please. See documentation.

Benchmark results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit 43422805 and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
128 txs

l1_rollup_calldata_size_in_bytes
45,444
179,588
716,132

l1_rollup_calldata_gas
222,864
868,208
3,449,468

l1_rollup_execution_gas
841,951
3,595,316
22,204,837

l2_block_processing_time_in_ms
:warning: 1,239 (+21%)
:warning: 4,817 (+22%)
:warning: 18,140 (+17%)

note_successful_decrypting_time_in_ms
:warning: 383 (+20%)
:warning: 1,235 (+24%)
:warning: 4,453 (+22%)

note_trial_decrypting_time_in_ms
:warning: 86.0 (+291%)
110 (-3%)
144 (+4%)

l2_block_building_time_in_ms
:warning: 11,023 (+23%)
:warning: 44,221 (+24%)
:warning: 182,315 (+22%)

l2_block_rollup_simulation_time_in_ms
:warning: 8,250 (+25%)
:warning: 33,145 (+25%)
:warning: 127,430 (+21%)

l2_block_public_tx_process_time_in_ms
:warning: 2,726 (+20%)
:warning: 10,925 (+20%)
:warning: 53,727 (+24%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
14,050 (+1%)
30,911 (+2%)

note_history_successful_decrypting_time_in_ms
2,335 (+3%)
4,762 (+3%)

note_history_trial_decrypting_time_in_ms
122 (-1%)
147 (-1%)

node_database_size_in_bytes
1,649,172
1,190,887

pxe_database_size_in_bytes
27,188
54,187

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
48.0 (+10%)
56,577
14,745

private-kernel-ordering
23.5 (+10%)
20,137
8,089

base-rollup
935 (+10%)
631,605
811

root-rollup
41.0 (+8%)
4,072
1,097

private-kernel-inner
39.6 (+10%)
72,288
14,745

public-kernel-private-input
:warning: 52.3 (+12%)
37,359
14,745

public-kernel-non-first-iteration
:warning: 31.2 (+12%)
37,401
14,745

merge-rollup
:warning: 1.02 (+17%)
2,592
873

Miscellaneous
Transaction sizes based on how many contracts are deployed in the tx.

Metric
0 deployed contracts
1 deployed contracts

tx_size_in_bytes
8,723
27,094

:robot: Release is at https://github.com/AztecProtocol/aztec-packages/releases/tag/barretenberg.js-v0.9.0 :sunflower:

:robot: Release is at https://github.com/AztecProtocol/aztec-packages/releases/tag/barretenberg-v0.9.0 :sunflower:


[WIP]Feature/issue 624

Fix issue-624
Assignment surrounded by parenthesis, inside a method, crashes the interpreter #624

Ensure parameter is not instance variable (it will crash interpreter)
Identify  weather parenthesis statement is parameter or normal statement
which is make

def foo(a)
end

is different form
def foo
  (a)
end

The above codes get the same result in current master branch

@st0012 , there are some waning in codebeat do I need to fix it?
If we can ignore it then just merge it~

@shes50103 they are actually existed issue I think, you just triggered the check. Let's merge it!


Documentation in own directory

How about move documentation in own dir?
For example we can move constructor options in own file and add link on it.

@fabpot  It is not full realization. Only proposition


Clean up geo-location - reduce the amount of time it uses the api

Tested & clean up implemented successfully


State where current proposer is not able to propose new blocks and fails with error 'The block is out of order'

Doing tests in testnet we have arrived to an state where the current proposer is not able to propose new blocks because is receiving error The block is out of order from the State.sol contract when trying to call proposeBlock.
It seems is something related with the change of current proposer that some blocks are already generated but not submitted on chain and then other proposer get the chance of current proposer and the blocks generated are being accumulated giving that error when trying to propose blocks.
Do some tests in local to reproduce this state and figure out then how to solve it.

Just to summarise the minimal necessary state flow:

Proposer_A is registered on-chain, is the currentProposer and running on optimist-1.
Proposer_B is registered on-chain and also running on optimist-1.
Propose_A proposes 2 blocks , however only 1 block is mined on-chain.
Rotate currentProposer to Proposer_B.
Feed more transactions to Proposer_B to get it to make a block. It should incorrectly create blockNumberL2= 3 when it should be blockNumberL2=2.

Point (2) can be achieved in testing by using the websocket in the test to drop the second block.
The problem manifests as a result of the sharing of optimist-1 by 2 proposers that are consecutive currentProposers. This results in them sharing local Block states, and can probably be solved with a Block.rollback() in NewCurrentProposerHandler.

Defined test in branch daveroga/proposers-bug-test with 2 proposers to reproduce the state for The block is out of order when changing current proposer and some blocks pending from first current proposer.

npm run test-proposers to run the test.

We have done some tests with @IlyasRidhuan  and with his PR this problem is already solved.


Parliament2 v0.1.8 VS v0.1.10 - performances

Hi Parliament2 developers,
I am writing to ask for some explanations, since it looks like to me there has been quite a change in performances between versions 0.1.8 and 0.1.10 - towards higher precision and lower sensitivity - and I would like to know if this is something done on purpose and if anybody else experienced this too.
I am running Parliament2 on a 30X bam file obtained mapping Illumina paired-end reads from NA24385 sample and then evaluating performances with Truvari based on a set of GIAB high-confidence calls (ftp://ftp-trace.ncbi.nlm.nih.gov/giab/ftp/data/AshkenazimTrio/analysis/NIST_SVs_Integration_v0.6/).
Here are my results:
SV-type ||| Parliament2 v0.1.8 sens/prec ||| Parliament2 v0.1.10 sens/prec
DELs ||| 69%/32% ||| 67%/64%
DELs PASS ||| 69%/78% ||| 49%/83%
INSs ||| 22%/53% ||| 22%/52%
INSs PASS ||| 20%/91% ||| 20%/93%
In summary, I noticed that DELs (without PASS filtering) seem to be more precise, however when the PASS filtering is applied the sensitivity tends to drop from 69% to 49%.
Is this more "conservative" filtering something wanted, or maybe is it a consequence of updating the versions of the callers without updating the weights accordingly?
Moreover I was surprised by the fact that for Manta my results look very strong for DELs. I have to say that for Parliament2 I am not able to running breakseq2, since I am using hg38 reference genome, so my Parliament2 results might be negatively affected by this.
SV-type ||| Manta sens/prec
DELs ||| 67%/92%
DELs PASS ||| 63%/93%
INSs ||| 22%/87%
INSs PASS ||| 21%/88%
Thank you.

Hi @MaestSi
Are the VCFs for your runs share-able. I could take a look by eye at the changes and see if anything looks like a regression from 0.1.8 to 0.1.10.
Manta is a strong individual caller, especially for smaller events. Within Parliament2, Manta provides the largest individual contribution to accuracy (though for larger events, it is surpassed by some of the other methods).

Sure, here they are!
NA24385_30X.combined.genotyped_Parliament2_v0.1.8.txt
NA24385_30X.combined.genotyped_Parliament2_v0.1.10.txt

Hi @MaestSi
Thank you for reporting this. I am still looking into the issues and don't yet have an obvious answer. I noticed that the 1.10 calls seem to have fewer calls from MANTA, both as a whole and those which have PASS. I am looking into whether anything has changed with this that could cause calls to drop or be filtered. And I will report back again here.
Thanks,
Andrew

Hi @AndrewCarroll ,
did you further inspect this issue, or do you have any updates about the Parliament2 project?
Thanks,
Simone


Use sbt's multi-jvm instead of our manual implementation?

As a result of the discussion at https://github.com/apache/incubator-pekko-http/pull/297#issuecomment-1669011499 I just found out that there is already a sbt-multi-jvm plugin that appears to be identical to ours and was originally upstream by Akka/Akka community, presumably for Akka to eventually remove the multi jvm setup in their builds which we inherited.
I think we should seriously consider upstreaming any necessary changes and then using the plugin, especially considering that we now have duplicated code between pekko and pekko-http.
@jrudolph @pjfanning @He-Pin @raboof wdyt ?

From https://github.com/apache/incubator-pekko-http/pull/297#issuecomment-1669033563 @He-Pin

We need wait the Controller transited to connectable before start the Player.

I think this concept is easily generalizable given that its not a problem thats specific to Pekko (after testing clusters is the reason we are using multiple JVM's in the first place)

Need submit a PR to sbt-multi-jvm and waiting a new snapshot, which may take sometimes and is not a quick fix.

This is a non issue at least in regards to using sbt-multi-jvm right now. I am thinking about this long term, but typically if its seen there are significant contributions made to a project than you get added as a maintainer (these are community projects after all).

I did not diff the code with sbt-multi-jvm line by line, but there must be some reason for Akka was keep it separately

From what I could see by quickly glancing at the code, the intention was to replace sbt-multi-jvm withe code in Akka but they never got around to it likely because of priority/effort required.

That's was a quick fix so I duplicated the code to keep night build runing.
For future, we should extract all shared plugins to something as what you once suggested and typelevel does, eg: apache-sbt-pekko?

That's was a quick fix so I duplicated the code to keep night build runing.

Understood and fine for now

For future, we should extract all shared plugins to something as what you once suggested and typelevel does, eg: apache-sbt-pekko?

This makes sense for features that are unique to pekko, i.e. think our Paradox theme or setting up the organization of our projects to org.apache.pekko. sbt-multi-jvm however is just a general feature so it makes more sense if its possible to use sbt-multi-jvm.
This isn't any different to sbt-license-report, which our Pekko projects use but is an sbt community plugin (see https://github.com/sbt/sbt-license-report) and if you look at https://github.com/sbt/sbt-license-report/pulls?q=is%3Apr+author%3Amdedetrich and https://github.com/sbt/sbt-license-report/releases you can see that contributing upsream and getting a release wasn't an issue at all.
As I said before, generally speaking if its shown that you contribute features upstream there isn't usually a problem in those releases being made.

The sbt-multi-jvm can go upstream and you saw there are so many backlog there too.

The sbt-multi-jvm can go upstream and you saw there are so many backlog there too.

If you mean by issues then yes there does seem to be quite a few open https://github.com/sbt/sbt-multi-jvm/issues but there aren't any PR's for it. And with issues such as https://github.com/sbt/sbt-multi-jvm/issues/36 this just strengthens my earlier assumption which is that Akka was upstreaming the sbt-multi-jvm functionality but didn't get around to finishing it.
I think that if we start opening up PR's to actually solve the issues then that should get things going.

I think I can submit a PR which do not need the upstream change, @mdedetrich , which will do another round of refractory to the current Player impl. @mdedetrich .


Add 4.1.0

i followed what you did for 4.0.1. Hopefully this makes it easier to create a 4.1.0 release for you.
closes #277

Thanks 💖


fix text

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 76.573%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
657

Relevant Lines:
858

💛  - Coveralls


Add support for non-copyable types as expectation arguments

Add support for non-copyable types as expectation arguments, e.g.:
struct S: ~Copyable, ... {}

let a: S = ...
let b: S = ...
#expect(a != b)
#expect(a.foo())
#expect(a.isBar)
// etc.

Known issues:

String(describing:) does not take move-only values, so it cannot be used to describe a value that's part of a failed expectation expression
type(of:) does not take move-only values, so we can't get the runtime type of a value
String(reflecting:) does not take move-only metatypes, so we cannot capture the FQN of a move-only type
Variadic generics don't support move-only types (or at least, I can't get the compiler to accept them) which precludes the expansion of function calls that take any move-only arguments
We cannot syntactically distinguish consuming from borrowing arguments at call sites, so we may not be able to correctly expand expressions with move-only parts (and we don't have enough information during macro expansion to know to suppress these expansions, unlike with try and await.)

Result needs to support non-copyable Success values (although we could build our own monad type if needed)

FWIW Result will support non-copyable Success values in Swift 6.0

Good to know—that knocks one point off the list, at least!

@autoclosure () -> U is treated as escaping, which means syntactically we can't borrow the right-hand argument of a binary operator.

To avoid this problem, could we change our macro expansion code, and the associated __check.... functions it calls, to pass an explicit closure and then stop using @autoclosure?

That causes other compilation issues (I'd have to dig into the pre-OSS commit history to determine what, exactly, the problems were—maybe they're no longer relevant?)

Thinking about it, I think it was that it forced evaluation of the RHS argument at capture time, defeating the purpose of a short-circuiting operator like &&.

String(reflecting:) does not take move-only metatypes, so we cannot capture the FQN of a move-only type

This appears to be resolved in the latest toolchains.


Integrate StackOverflow Notifier

So it notifies you if there's a coala related thread/question opened? That would be awesome :O

So it notifies you if there's a coala related thread/question opened? That would be awesome :O

No, not really. This was meant as a gitter integration for stack overflow for selected tags.
But what you say is good as well.


chore: remove navigation tabs

New tabs have been recreated from scratch

#528  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @davidlj95 and the rest of your teammates on  Graphite


This is unrelated. But ForceDisableAutoHDR?

ForceDisableAutoHDR
Would it be possible to reverse this by a ForceDisableAutoHDR feature or additional program?
I mean that'd probably be pretty useless in most titles you can disable the AutoHDR feature in like in Battlefield 1.
But a worthy idea? What do you think?

You can disable AutoHDR switch from windows settings. Settings > Display > Graphics.


Added missing Color operators

Fixes https://github.com/GodotNativeTools/godot-cpp/issues/405

Updated formatting, however build fails on windows due to some shell command failing?

Updated formatting, however CI fails on windows due to some shell command failing?

It seems like some download is failing, not related to the PR. I can't seem to be able to restart the CI job, maybe you can and if not a force-push should re-trigger CI.

Worked this time

Merged this now it passed travis tests, looks fine to me, thanks @Zylann


fix ci

Should fix ci and enable conditional release upload action to prevent ci fails when all but Upload Release (Android) succeed.

I'm not sure why this is failing. It worked in the forked repo: https://github.com/arctic-alpaca/flutterust/actions/runs/533668937

I only found this part that references length in<EMAIL_ADDRESS>https://github.com/ChanTsune/release-with-commit/blob/36ca756ec024d175ed56ebfecaedd1eedcd0d08d/src/index.ts#L17-L22
I think this might be a problem on github's side, I already encountered other issues with actions today.

I suspect this is a cache problem. I changed the cache keys to check. If this succeeds, I'll remove the commit again as to not mess up your cache keys.

I have no idea why this isn't working. Any input would be appreciated.

You know what? Let's merge this, and I can find this issue later!
Thank you @arctic-alpaca for the PR!


Update docs theme

[x] Closes mental issue in @TomNicholas brain
[x] Passes pre-commit run --all-files
[x] Changes are summarized in docs/source/whats-new.rst

Thanks @jbusecke !


Try simplifying model

I think it could work to just do a super simple model:

layer 1: lstm
layer 2: graph convolution
layer 3: output layer

Okay. nevermind on this. I realized that the information after the graph convolution would be left out of the recursion, so I don't think this would work.


feat: working network provider for Hardhat

What I did
Related issue: https://github.com/ApeWorX/ape/issues/130
How I did it

Updated the project template boilerplate, README, etc.
Fairly straightforward subclassing of the existing HTTP provider (EthereumProvider). All the inherited web3 calls worked without any major changes.
Added subprocess management code to run npx hardhat node in the background.
Added steps in the CI job to install Node, NPM, and Hardhat.

Released Ape 0.1.0-alpha.22 with a workaround for an issue I ran into when subclassing NetworkConfig.
Added support & tests for Hardhat's custom RPC methods (sleep, mine, snapshot, revert, impersonate, etc.).

How to verify it
All the tests I added are passing:
https://github.com/lost-theory/ape-hardhat/runs/3417969183?check_suite_focus=true
ape console also works:

$ ape console
Retrying hardhat connection: HTTPConnectionPool(host='localhost', port=8555): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f81fea58ca0>: Failed to establish a new connection: [Errno 111] Connection refused'))
Retrying hardhat connection: HTTPConnectionPool(host='localhost', port=8555): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f81fea6c1f0>: Failed to establish a new connection: [Errno 111] Connection refused'))
Retrying hardhat connection: HTTPConnectionPool(host='localhost', port=8555): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f81fea6c670>: Failed to establish a new connection: [Errno 111] Connection refused'))

In [3]: networks.active_provider
Out[3]: HardhatProvider(name='hardhat', network=NetworkAPI(...), config=HardhatNetworkConfig(ethereum={'development': {'uri': 'http://localhost:8555'}}, fork_url=None, fork_block_number=None, port=8555), provider_settings={}, data_folder=PosixPath('/home/cuboid/.ape/ethereum/development'), request_header={'User-Agent': 'Ape/0.1.0a21 (Python/3.8.10 final)'})

In [4]: networks.active_provider.mine()
Out[4]: '0x0'

In [5]: networks.active_provider.sleep(1)
Out[5]: 0

In [6]: networks.active_provider.snapshot()
Out[6]: 1

In [7]: networks.active_provider.revert(1)
Out[7]: True

Checklist

[x] Passes all linting checks (pre-commit and CI jobs)
[x] New test cases have been added and are passing
[x] Documentation has been updated
[x] PR title follows Conventional Commit standard (will be automatically included in the changelog)

If you call connect() multiple times on the same HardhatProvider instance when using the random port feature (not specifying a port), it seems to create multiple hardhat node processes.
I think we should either
1.) Not allow an instance to connect when already connected
2.) Disconnect before connecting (reconnect)
Please correct me if I am wrong though.

If you call connect() multiple times on the same HardhatProvider instance when using the random port feature (not specifying a port), it seems to create multiple hardhat node processes.
I think we should either
1.) Not allow an instance to connect when already connected (check if self.process is already set)
2.) Disconnect before connecting (reconnect)
Please correct me if I am wrong though.

Yeah, the idea for me is that each instance would access different external resources, and do that only once (or as needed during operation)

If you call connect() multiple times on the same HardhatProvider instance when using the random port feature (not specifying a port), it seems to create multiple hardhat node processes.

I didn't think of that case. I added a condition to raise an exception if the process has already been started.

When I do:
In [2]: with networks.ethereum.development.use_provider("hardhat"):
   ...:     print("test")
   ...:
Hardhat connection failed: HTTPConnectionPool(host='localhost', port=55636): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x109dc1820>: Failed to establish a new connection: [Errno 61] Connection refused'))
Hardhat connection failed: HTTPConnectionPool(host='localhost', port=55636): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x109dcc6a0>: Failed to establish a new connection: [Errno 61] Connection refused'))
Hardhat connection failed: HTTPConnectionPool(host='localhost', port=55636): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x109e35370>: Failed to establish a new connection: [Errno 61] Connection refused'))
Hardhat connection failed: HTTPConnectionPool(host='localhost', port=55636): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x109e88520>: Failed to establish a new connection: [Errno 61] Connection refused'))
test

It seems to print out a lot of stuff before eventually working.

@unparalleled-js:

When I do: [...] with networks.ethereum.development.use_provider("hardhat"):
It seems to print out a lot of stuff before eventually working.

My idea here was have these by debug level log messages instead of print messages, that way they're filtered out by default. Other libraries that make HTTP requests under the hood do something similar (i.e. once debug level logging is turned on, it logs all the underlying HTTP requests made). I'll take a look at your logging PR. Once we have logging in place I'll make a new PR for this to use logger.debug instead of print.

Testing around a little with it, it seems like hardhat is configured on development networks to use .875 gwei as a default for base_fee. Can that be configured to be 0?

When I do:
In [2]: with networks.ethereum.development.use_provider("hardhat"):
   ...:     print("test")
   ...:
Hardhat connection failed: HTTPConnectionPool(host='localhost', port=55636): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x109dc1820>: Failed to establish a new connection: [Errno 61] Connection refused'))
Hardhat connection failed: HTTPConnectionPool(host='localhost', port=55636): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x109dcc6a0>: Failed to establish a new connection: [Errno 61] Connection refused'))
Hardhat connection failed: HTTPConnectionPool(host='localhost', port=55636): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x109e35370>: Failed to establish a new connection: [Errno 61] Connection refused'))
Hardhat connection failed: HTTPConnectionPool(host='localhost', port=55636): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x109e88520>: Failed to establish a new connection: [Errno 61] Connection refused'))
test

It seems to print out a lot of stuff before eventually working.

Saw same issue as here. Can there be a way to wait on the process being totally started before asking it to connect?

@fubuloubu:

Testing around a little with it, it seems like hardhat is configured on development networks to use .875 gwei as a default for base_fee. Can that be configured to be 0?

The only config I see related to base fee is this:
https://hardhat.org/hardhat-network/reference/#config

initialBaseFeePerGas: The baseFeePerGas of the first block. Note that when forking a remote network, the "first block" is the one immediately after the block you forked from. This field must not be present if the "hardfork" is not "london" or a later one. Default value: "1000000000" if not forking. When forking a remote network, if the remote network uses EIP-1559, the first local block will use the right baseFeePerGas according to the EIP, otherwise "10000000000" is used.

The only place where I see "875" referenced in the hardhat code is in a test validating the behavior of the base fee for different block sizes:
https://github.com/nomiclabs/hardhat/blob/56ce15ae/packages/hardhat-core/test/internal/hardhat-network/provider/baseFeePerGas.ts#L163-L190
Does that match up with what you were seeing? I don't know the implications of setting this to 0 versus .875 or how we might do that, but I can look into it if you think it's a blocker for the hardhat provider.

It looks like what's happening is that initial 1 gwei base fee is starting to ramp down at its max 12.5% per block due to being empty. So yeah, probably the best decision here would be to simply disable it for the development network. EIP-1559 just complicates testing imo

@fubuloubu:

Saw same issue as here. Can there be a way to wait on the process being totally started before asking it to connect?

Here are the ways I can think of to wait on the process being totally started:

Repeatedly connect to the port with a retry strategy, raising an error if it doesn't respond in time. This is what we're doing now.
Parse the output of the subprocess to look for something that indicates the process has totally started.
Wait for the port we specify to enter the LISTEN state.

I am a fan of approach # 1 because it follows the EAFP principle, while the other two are more LFYL:
https://devblogs.microsoft.com/python/idiomatic-python-eafp-versus-lbyl/
If we try to parse the output of the subprocess (# 2), there's no real "process is ready" message that Hardhat provides, not even with --verbose. The last thing echoed is the list of accounts and private keys to use for testing, but the format of that could change in a later version of Hardhat, or an error could occur after that point, or the process may not be ready to receive connections at the time those message are printed.
Waiting for the port to enter LISTEN state (# 3) seems similar to # 1, since you're polling and retrying, but it would require more OS-specific code (checking port status is done differently in Windows vs. Linux vs. macOS, vs. making an HTTP request which is just one line of code). Also the port being in the LISTEN state doesn't mean it's working properly (e.g. it could be returning a 500 for all requests). With the current approach of making the chain_id HTTP request the port has to be open, the request has to succeed, and the response has to contain an expected result.
If the major concern is about seeing the extra print messages, I can remove them until the logger is in place to make these debug level messages (which won't be printed by default).

@fubuloubu:

It looks like what's happening is that initial 1 gwei base fee is starting to ramp down at its max 12.5% per block due to being empty. So yeah, probably the best decision here would be to simply disable it for the development network. EIP-1559 just complicates testing imo

Alright I adjusted the default hardhat configs to look like this:
// See https://hardhat.org/config/ for config options.
module.exports = {
  networks: {
    hardhat: {
      hardfork: "london",
      // base fee of 0 allows use of 0 gas price when testing
      initialBaseFeePerGas: 0,
    },
  },
};

These are also the configs that Brownie is using.
Tests pass with these new configs.
If you want me to remove the print messages for retrying the hardhat connection LMK. I was planning on making another PR for turning those into debug level log messages now that the logging PR has landed in core Ape.


Tensorflow tf.map_fn over ragged tensor fails with object of type 'RaggedTensor' has no len

Please make sure that this is a bug. As per our
GitHub Policy,
we only address code/doc bugs, performance issues, feature requests and
build/installation issues on GitHub. tag:bug_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): No

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux (both RHEL 7 Power PC and Ubuntu 21.04 with Intel)

TensorFlow installed from (source or binary): conda install tensorflow

TensorFlow version (use command below): Tested on 2.4.1 and 2.5.0

Python version: 3.7.10

CUDA/cuDNN version: cudatoolkit 10.1.243 (Intel) and 10.2 (PowerPC)

GPU model and memory: 2080TI (Intel) and A100 (PowerPC)

python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)
> "
2021-08-04 23:57:32.182116: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.10.1
unknown 2.4.1

Describe the current behavior
https://stackoverflow.com/questions/68658093/tensorflow-tf-map-fn-over-ragged-tensor-fails-with-object-of-type-raggedtensor
This Tensorflow doc gives this example of using tf.map_fn on ragged tensors which works for Tensorflow 2.4.1 and above:
digits = tf.ragged.constant([[3, 1, 4, 1], [], [5, 9, 2], [6], []])
print(tf.map_fn(tf.math.square, digits))

However the following example results in error "object of type 'RaggedTensor' has no len" when run in Tensorflow 2.4.1 or Tensorflow 2.5:
import tensorflow as tf

X=tf.ragged.constant([[1.,2.],[3.,4.,5.]], dtype=tf.float32)

@tf.function
def powerX(i):
    global X
    return X**i

Y = tf.map_fn(powerX, tf.range(3, dtype=tf.float32))

Describe the expected behavior
It should return a ragged tensor.
Standalone code to reproduce the issue
import tensorflow as tf

X=tf.ragged.constant([[1.,2.],[3.,4.,5.]], dtype=tf.float32)

@tf.function
def powerX(i):
    global X
    return X**i

Y = tf.map_fn(powerX, tf.range(3, dtype=tf.float32))

@catskillsresearch,
I am able to reproduce the error in TF 2.5 and TF nightly. Please find the gist here.

Any luck on this?  I'm finding it extremely hard to parallelize any function that involves tf.where and tf.gather resulting in any intermediate step where there are unequal length tensors.  This makes Tensorflow super difficult and unsuitable for coding parallel algorithms as opposed to doing cookbook machine learning stuff where everything is the same size.

When you use tf.map_fn with RaggedTensors, you currently need to specify the output signature of your function.  In this case, your function returns a 2D RaggedTensor, so either of the following will work:
Y = tf.map_fn(powerX, tf.range(3, dtype=tf.float32),
              fn_output_signature=tf.RaggedTensorSpec([None, None], tf.float32))

Or:
Y = tf.map_fn(powerX, tf.range(3, dtype=tf.float32),
              fn_output_signature=tf.RaggedTensorSpec([2, None], tf.float32))

(The reason the tf.map_fn(tf.math.square, digits) example works without specifying the output signature is that the output signature is identical to the input signature.  In that case, you don't need to specify it.)

Thanks for the clarification. My experience on tf.map_fn is that it will not, in any event, result in parallel kernels running on the GPU.  It's about the same as a Python for loop.  The only way to get real parallelism is with tf.vectorized_map, with same-sized tensors. This requires some very tedious refactoring of methods and padding of vectors and clever tricks so that the algorithm for 1 problem instance of size M1 can be inside-outed for N problems  into a sequence of pure vector operations that operate on uniformly sized vectors of size max(M1,...MN).  I'm not sure if the experience would be the same if I tried to go down the cupy route.  In any event it's quite frustrating.

Hi @catskillsresearch !
I was able to get output by lamda function.
Attached resolved gist for reference.
Thank you!


[Question] client certificate authorizaion

Can Fabio do authentication based on what's DN is in the cert?

Also interested in this. I don't see any mention of client authorisation based on certificates.

Would you consider this to be duplicative of support for consul connect and intentions?

I don’t understand whY you mean ?  Are you saying client  certificate based
authentication already exist as feature?
On Wed, 6 Mar 2019 at 11:18, Aaron Hurt<EMAIL_ADDRESS>wrote:

Would you consider this to be duplicative of support for consul connect
and intentions?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fabiolb/fabio/issues/384#issuecomment-469926389, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABOv-h3EZxd-8wr1vxltbjGuv3GEhjcYks5vTxdegaJpZM4QWtn5
.

--
James Mills / prologic
E<EMAIL_ADDRESS>W: prologic.shortcircuit.net.au

No, I'm trying to think of the use case for client certificate authentication and evaluate the work required vs audience for that feature vs other methods of authenticating/authorizing services like consul connect and intentions.

No, I'm trying to think of the use case for client certificate authentication and evaluate the work required vs audience for that feature vs other methods of authenticating/authorizing services like consul connect and intentions.

Our use-case is quite simple. We want to be able to authenticate remote clients at the "edge" (that would be Fabio in this case if we decide to adopt it) and be able to control certificate revocation and renewal (which we can do through Vault APIs)


Using /dmh energy prevents you from shifting when not in cat form

Because your energy is 100 when you're not in cat form, you cannot use the macro with /dmh energy XX in it to swap to cat form.
To fix it, I simply added a check to see if the current form is indeed cat form before checking for the energy level
return statement for the DruidEnergy function (lines 109-110) should be changed to :
return (preventShift > 0) or (UnitPower("player",0)<manaCost) or
    ((GetShapeshiftForm() == 3) and (UnitPower("player",3)>maxEnergy) and (DruidMacroLocShiftable() == 0));

Will be fixed with the next release, thanks for the feedback!


Write fails when data contains a js/Function instance

I am trying to use transit as a means to send cljs data structures to a chrome extension without having to use clj->js on one end, send, and then js->clj on the other end. If the data structure contains a js/Function instance an error is thrown, cannot write. It seems to work if there is a js/Object instance as data.
I cannot guarantee that the data will not contain js/Function instances as data. Is there any way around this?

Managed to get this working. Hope it helps:
#?(:cljs
   (defn fn->map [v]
     (let [xs (clojure.string/split (.-name v) #"\$")
           name (last xs)
           ns (clojure.string/join "." (butlast xs))]
       {:name (str ns "/" name)
        :ns ns
        :display-name name
        :type "js/Function"
        :fn? true
        :string (.toString v)})))

#?(:cljs
    (deftype FunctionHandler []
      Object
      (tag [this v] "map")
      (rep [this v] (fn->map v))
      (stringRep [this v])))

#?(:cljs
   (defn serialize [x]
     (let [writer (t/writer :json-verbose
                    {:handlers {js/Function (FunctionHandler.)}})]
       (t/write writer x))))

(serialize identity)
=>
"{\"~:name\":\"cljs.core/identity\",\"~:ns\":\"cljs.core\",\"~:display-name\":\"identity\",\"~:type\":\"js/Function\",\"~:fn?\":true,\"~:string\":\"function cljs$core$identity(x){\
 return x;\
 }\"}"

This not an issue. Serializing functions is not in scope.


DSD-483: Adding ui/error/secondary color and updating names

Fixes JIRA ticket DSD-483
This PR does the following:

Adds the ui.error.secondary color.
Updates color names to be consistent with NYPL Figma -- on both the Chakra theme and in the existing SCSS files.

How has this been tested?

Checklist:

[ ] I have updated the Storybook documentation accordingly.
[ ] All new and existing tests passed.

Front End Review:

[ ] View the example in Storybook

Tugboat has finished building the preview for this pull request!
Link:

https://pr690-s8qsvqhkm7ncq49qj1gex7xnks7u1kox.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/614cd29dd7000a5ba649ab26

Missed those, thanks. Updated.

Tugboat has finished building the preview for this pull request!
Link:

https://pr690-s8qsvqhkm7ncq49qj1gex7xnks7u1kox.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/614cd29dd7000a5ba649ab26

Tugboat has finished building the preview for this pull request!
Link:

https://pr690-s8qsvqhkm7ncq49qj1gex7xnks7u1kox.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/614cd29dd7000a5ba649ab26

Tugboat has finished building the preview for this pull request!
Link:

https://pr690-s8qsvqhkm7ncq49qj1gex7xnks7u1kox.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/614cd29dd7000a5ba649ab26


Workaround symlink redness in Go

Similar to #1256 but for Go.
Fixes #2057
Checklist

[x] I have filed an issue about this change and discussed potential changes with the maintainers.
[x] I have received the approval from the maintainers to make this change.
[x] This is not a stylistic, refactoring, or cleanup change.

Please note that the maintainers will not be reviewing this change until all checkboxes are ticked. See
the Contributions section in the README for more
details.
Discussion thread for this change
Issue number: #2057
Description of this change
A workaround similar to #1817.

@alice-ks PTAL. I'm not sure how to go here. Not sure how to write a test and if it's needed.

I've tested this change on 2021.3.1 and can confirm that I've not had to re-sync any file when before I normally had to do so after running any bazel command in any project other than the synced file's.
This is a HUGE QoL improvement.

Fedor sent me a zip, but I can only assume you could check out the branch
and build it locally.
On Thu, Jan 13, 2022, 3:22 PM Michael Snowden @.***>
wrote:

I've tested this change on 2021.3.1 and can confirm that I've not had to
re-sync any file when before I normally had to do so after running any
bazel command in any project other than the synced file's.
This is a HUGE QoL improvement.
How can I test this? This issue is currently causing me an indescribable
amount of pain and suffering
—
Reply to this email directly, view it on GitHub
https://github.com/bazelbuild/intellij/pull/3165#issuecomment-1012608686,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABHMIUEYYBUTVQZ4YUN2IDUV5NCNANCNFSM5L2IOX3A
.
You are receiving this because you commented.Message ID:
@.***>

FWIW this may need further testing.

my CPU usage spiked a lot due to IJ, but I only noticed after I was working for a while (headphones masked the fan noise)
I closed IJ and reverted the plugin version to the beta version from https://plugins.jetbrains.com/plugin/8609-bazel/versions/beta
I re-opened IJ and tried syncing some files, so far CPU usage is normal, but this is inconclusive because when I noticed the high CPU, it was after a while and I had >100 changes in my workspace.

I'm on GoLand 2021.2.5 and I tried this by building with
bazel build //ijwb:ijwb_bazel_zip --define=ij_product=intellij-ue-oss-stable

I then deleted my project's .ijwb directory, installed this zip from disk, and tested it by:

Syncing a file (all references resolved at this point, no red squigglies)
Running a Bazel command that usually triggers the underlying issue (requiring a re-sync)
I then observed that the references were unresolved again (red squigglies everywhere), and I needed to resync again

Maybe the command I used to build this is wrong? Not sure why this fix isn't working for me. Would appreciate your help @fkorotkov

Changing the implementation in JarCache from getFallbackFile() to OutputArtifactResolver#resolve introduces a different behavior as the latter method has a different logic for remote outputs. That doesn't seem right to me.
In addition, touching OutputArtifactResolver#resolve will modify the behavior for many languages. If we get something wrong in there, the blast radius will be large. Hence, we'd need to apply careful testing. I don't think we should make this change right now.
To limit the scope, it would be better to move back to the original approach of this PR, which focused on fixing the resolution for Go. Please see my other comments for a good place to put the path patching logic.

I don't think JarCache behaviour is changed that much. If the remote cache is not yet populated then the behavior will be the same. And if the remote cache is populated then it will just use the file with no extra computations. Maybe @brendandouglas can add some input/context around why null is returned in case of a remote artifact location?
I agree that the change is affecting a lot of places. As we see in these two examples IntelliJ doesn't play nicely with symlinks that change. There is third place in #3228 (external protocol buffers) I need this logic too. In that case it seems reasonable to introduce a new constrain in the plugin to always use real files instead of symlinks and put it in some abstraction layer that is easy to use. OutputArtifactResolver looks like an ideal place. If you are concerned about the funky string manipulation I've changed it in d9ad485aa3021a1c0f8b9e8527e8dbcf28f413fd. If you still think this is too risky of a change and instead I should put workarounds in all three places I'll do that.

If you still think this is too risky of a change and instead I should put workarounds in all three places I'll do that.

I think the change is still too risky and requires quite some time for ensuring that it doesn't break anything and that it doesn't introduce performance issues. I can't cover that part at the moment.
To continue, I'd suggest going back to the original version of the PR and following up on my review comments as suggested in them (e.g. moving the string manipulation to the indicated location). That seemed safe enough to not introduce major issues.

If you are concerned about the funky string manipulation I've changed it in https://github.com/bazelbuild/intellij/commit/d9ad485aa3021a1c0f8b9e8527e8dbcf28f413fd.

I indeed stumbled a bit about the string manipulation and wondered why the symlinks weren't properly resolved in the code with file system operations. However, I have some concerns with that latest version.
First of all, Brendan mentioned performance concerns on https://github.com/bazelbuild/intellij/issues/1256 for some solutions and the current approach with resolving symlinks with file system operations frequently in OutputArtifactResolver sounds very much like one of these solutions.
We'd also need to ensure that the symlinks are only resolved once after sync and not on every resolution of an artifact reference. I haven't checked all the code paths which rely on OutputArtifactResolver, but we'd need to carefully do so. Since you're updating the JarCache to rely on  OutputArtifactResolver, I assume that this PR would regularly do the symlink resolution during the use of the plugin, which we definitely shouldn't do due to performance reasons. Furthermore, the symlinks could be invalid upon further execution of Bazel commands. Hence, we need to resolve them while they are still valid (-> directly after the Bazel sync). The string manipulation currently avoids this as the original file paths don't need to exist anymore.

Maybe brendandouglas can add some input/context around why null is returned in case of a remote artifact location?

Brendan is not working on the team anymore.

I can confirm that the performance issues I had were not related to this version of the plugin. I've been running with it for a few days without performance issues.

@alice-ks gentle ping. I reverted the changes to scope the to only Go.

I triggered the import of this PR. As soon as it's submitted, this PR will be automatically closed.
Since we missed the cut-off date of the current release, it means that this PR won't get into the plugin version which will be pushed at the end of next week. The next release will be ~two weeks after the current one.


Add latest Rails, test-unit, and lock ruby_parser

Add support for testing Rails 4.2 development
test-unit isn't provided by Ruby anymore, so add that to development dependencies.
Lock ruby_parser to a version that's capable of being used for development and move to development dependencies.

+1


feat: export type RequestResult of fetch client

This aims to improve usability of generated fetch clients. Fixes #693

@mrlubos Sure, just added it!

@mrlubos Hey, this PR was actually ineffectual: the type is still made private after going through rollup. I force-pushed a fix on the same branch and made sure it builds as expected.
Apologies for my mistake... Please let me know if I should open a new PR

Sure


fix(ktor): bump to 3.0.0

Using current version of cohort with Ktor 3.0.0 causes the following exception:
Exception in thread "main" java.lang.NoClassDefFoundError: io/ktor/server/routing/RoutingKt
	at com.sksamuel.cohort.PluginKt$Cohort$2.invoke(plugin.kt:14)
	at com.sksamuel.cohort.PluginKt$Cohort$2.invoke(plugin.kt:11)
	at io.ktor.server.application.CreatePluginUtilsKt.setupPlugin(CreatePluginUtils.kt:276)
	at io.ktor.server.application.CreatePluginUtilsKt.createPluginInstance(CreatePluginUtils.kt:245)
	at io.ktor.server.application.CreatePluginUtilsKt.access$createPluginInstance(CreatePluginUtils.kt:1)
	at io.ktor.server.application.ApplicationPluginImpl.install(CreatePluginUtils.kt:83)
	at io.ktor.server.application.ApplicationPluginImpl.install(CreatePluginUtils.kt:71)
	at io.ktor.server.application.ApplicationPluginKt.install(ApplicationPlugin.kt:100)

since routing method is now located in RoutingRoot.kt instead if Routing.kt. Compiling cohort against Ktor 3.0.0 will fix that.
I've also added foojay plugin to resolve Java toolchains automatically with Gradle.

As a workaround one can copy plugin.kt and endpoints.kt into their own project for now.
When copying plugin.kt make sure to NOT copy CohortConfigAttributeKey definition, instead import com.sksamuel.cohort.CohortConfigAttributeKey.

Hi there, we are also pending to upgrade to Ktor 3.0 and Cohort ist hindering us since we use it in our stack. Could you please do the review & merge? :) Thanks alot!

@sksamuel sorry for the ping, but ping

I have released 2.6.0 which bumps ktor to 3.0.0
Thanks for the PR @monosoul


Is there a way to get the value of video progress

I wonder, is there anyway to get value of progressbar of video:?
tnx if you answer

Here's an example:
const player = new Plyr(...);
const progress = player.currentTime / player.duration * 100;
console.log(`Current progress: ${progress}% out of 100%`)

Current progress: 23% out of 100%

@interlark let me check if it works


Missing signature

Plugin can not be loaded due to "missing Signature" in Grafana 8.0.0
https://grafana.com/docs/grafana/latest/plugins/plugin-signatures/

me too
I modified default.ini to add "allow_loading_unsigned_plugins = innius-video-panel"
It doesn't work
Very useful panel, pls fix it,tks

work well on 7.5.1
can not be loaded due to "missing Signature" in Grafana 8.0.2

I get the same error (missing signature) in Grafana 8.0.3

Is there any way that we can help with this? It's a great plugin!!

I've signed the plugin; A new version will be available soon.


Feature flag for create2 verification support

Description:
This brings changes in the ui and in the server:

In the UI, Create2 verification will only be available when the following is added to config.json:
"CREATE2_VERIFICATION": true
Note: When Create2 is activated, the TOKEN parameter will no longer be required in the UI since it does not seem to be needed and is quite confusing.

In the server, the API endpoints related to Create2 support will be exposed only if the following environment variable is defined:
SERVER_CREATE2_VERIFICATION=true

Is there a way to disable the related endpoints in the Swagger UI when SERVER_CREATE2_VERIFICATION if not enabled?
This is because otherwise these endpoints return 404 but with an HTML format instead of JSON. This in turn looks like a configuration error. For instance this is the response from the /verify/create2 endpoint
<!DOCTYPE html>

<meta charset="utf-8">
<title>Error</title>

Cannot POST /verify/create2

This is how it's seen in the Swagger API


Add basic CREATE EXTENSION support for Postgres

Didn't realise this was here - I added this. It is in upstream too now.


Rename *ItemController unit tests to *SectionController

Changes in this pull request
Rename *ItemController unit tests to *SectionController, addressing issue #126
Pull request checklist

[x] All tests pass. Demo project builds and runs.
[x] I added tests, an experiment, or detailed why my change isn't tested.
[x] I have reviewed the contributing guide

Coverage remained the same at 86.194% when pulling 5a17052e6fa81e82c72bc4cb96284254d8709615 on saraswatayu:ayush-126 into 348b11da4f1f52071888f93296e28991a0b5ffdf on Instagram:master.

LGTM 👍 💯
Thanks @saraswatayu !

💃 💃 💃


fix: avoid initial 1s delay and use exponential backoff on spec / status checks for LogicalVolume

fix #904

I believe I spotted a side effect of this change which is kind of strange. There is currently a failure in the resize test while checking for failure events. However, when isolating this test to run alone the failure doesnt occur, making me believe this is actually a regression from a different test.

I think something is completely off here. The tests flake hard and im trying to understand why. This looks like a race condition somewhere, still trying to identify whats happening

I'll check it next week, but responses may be delayed due to the holiday period.

I have noticed an interesting error message that is concerning to me as it leads me to believe that there might be an issue on the kubelet patch:
│ Name:             topo-pvc.17c9d3a398b23494                                                                                │
│ Namespace:        e2etest-xgwhounmef                                                                                │
│ Labels:           <none>                                                                                │
│ Annotations:      <none>                                                                                │
│ API Version:      v1                                                                                │
│ Count:            1                                                                                │
│ Event Time:       <nil>                                                                                │
│ First Timestamp:  2024-04-26T12:17:12Z                                                                                │
│ Involved Object:                                                                                │
│   API Version:       v1                                                                                │
│   Kind:              PersistentVolumeClaim                                                                                │
│   Name:              topo-pvc                                                                                │
│   Namespace:         e2etest-xgwhounmef                                                                                │
│   Resource Version:  1509                                                                                │
│   UID:               d447f77e-fcb4-49f7-acea-73d26b524755                                                                                │
│ Kind:                Event                                                                                │
│ Last Timestamp:      2024-04-26T12:17:12Z                                                                                │
│ Message:             Mark PVC "e2etest-xgwhounmef/topo-pvc" as file system resize required failed: can't patch status of  PVC e2etest-xgwhounmef/topo-pvc with Operation cannot be fulfilled on persistentvolumeclaims "topo-pvc": the object has been modified; please apply │
│  your changes to the latest version and try again                                                                                │
│ Metadata:                                                                                │
│   Creation Timestamp:  2024-04-26T12:17:12Z                                                                                │
│   Resource Version:    1524                                                                                │
│   UID:                 0199e840-7f9a-422e-b44e-c3014f8f5c0e                                                                                │
│ Reason:                VolumeResizeFailed

This comes from the kubelets mismatch of desired state of world and actual state of world and is an issue in our tests because we test for VolumeExpansionFailed events. In this case the PVC is updated quite fast so the Event is triggered but we have an immediate success after.

@jakobmoellerdev
If you wish to squash some commits, please tell us.

I will squash

I have the fix for external resizer not sending events in merged now, so once we update to the 1.30 release of resizer, the event test will no longer have to contain the special check.

I'm glad to hear that. I assume this is yours. Great work! Thank you @jakobmoellerdev


Enhancement for personalization

Hi, can you add support for changing your beautiful wallpaper matching what is played in media player cover?

This is a great idea, but would be complicated to implement for several reasons:

The media_player entities don't have a colour attribute for the returned media, which would be the easiest path for this.
While the entity_picture attribute could be used to determine the colour, this would need to be pulled into a service and processed to determine the base/main colour. Getting a desirable colour would require some clever palette analysis algorithm to look for hue ranges. OpenCV is a great library that could do this, an image analysis integration is another whole project unto itself.
There can be multiple media players playing different content. Again, doable, but would require more options/setup/logic.

I personally love the idea, and could be a fun project for myself to work on. I'm not the theme creator here, so I'm just assuming here, but it feels like your suggestion might be outside the scope for this particular project.

I always thought about it. But I really can't do that here.


Add std.experimental.typecons.HeadConst

This is a revival of #3862 (which was an revival of #2881).
The status from @andralex was:

For more detail: we should define std.experimental.typecons and put this in it. With that I preapprove this addition. Thanks!

Unfortunately @JakobOvrum seems to be away for the last few months, but we shouldn't let this great PR die ;-)
I copy/pasted the addition to std.experimental.typecons, added the missing import. Full credit of course goes to @JakobOvrum (luckily git allows to set the history accordingly).
I also included the changelog entry in a separate commit.

I like it a lot. There were some comments in the previous PR, not sure if they were addressed. E.g. the question about allowing non-reference types.

There were some comments in the previous PR, not sure if they were addressed. E.g. the question about allowing non-reference types.

AFAICT the idea from @andralex was:

OK. A good step forward is to put this in std.experimental, there's subtleties about it. Then we can defer zeroing in on a name.
For more detail: we should define std.experimental.typecons and put this in it. With that I preapprove this addition. Thanks!

(that's why I initially didn't make any changes except required, but yeah addressing style nits makes sense -> done)
FYI: std.experimental.typecons already existed.

Good modulo nits. Approved, @wilzbach you may merge. I suggest using Final and makeFinal.

Attaching function attributes gives less noisy error messages
This actually sounds like something we should fix in the compiler. Is there a bugzilla entry for this?

(@AndrejMitrovic sorry - your comment disappeared once I addressed your nits.)
Now there is: https://issues.dlang.org/show_bug.cgi?id=16444

I suggest using Final and makeFinal.

There was a huge debate about this on #3862 and on #2881. Imho important is that this finally finds it way to Phobos and the name shouldn't stop it, especially with the experimental buffer before.
-> I can understand your reasoning behind Final -> renamed

Approved, @wilzbach you may merge.

Hehe the second time you approve this ;-)
I think it's a bad practice to merge one's own PR & addressing your nits introduced quite a bit of changes, so maybe someone else wants to have the joy of merging this old, but still fancy addition?

Auto-merge toggled on

alrighty then


os_log_create() support

Issue Description and Steps
Our Project utilises os_log_create and assigns different categories for different sub modules we use, so we can track which sub module is behaving erroneously. Apple provides a way to achieve it via os_log_create (https://developer.apple.com/documentation/os/1643744-os_log_create?language=objc) . Does Lumberjack support the same? I looked up the DDOSLogger file, but it seems like we don't. Are there any other alternatives we can achieve the same?

@arjunkchr
I asked about this issue several months ago, but we didn't come up with API that fits appropriately.
Could you suggest API or submit PR?

#1039

#1039

@lolgear : I looked at the PR you just submitted. But we could only set one category under a sub-system. Should we let the user define an array of category under the sub-system and then use getters to choose one category against which the message should be logged. Thoughts?

@arjunkchr
Since os_log_create returns singleton object, it makes sense to add array/set of categories for specific subsystem.
Maybe it is a subclass of current OS logger?

@arjunkchr
Since os_log_create returns singleton object, it makes sense to add array/set of categories for specific subsystem.
Maybe it is a subclass of current OS logger?

@lolgear : I did not quite get the comment about current OS logger. Every call to os_log_create() returns os_log_t. For the same sub system having multiple categories, we should store all instance of os_log_t and then return the respective instance which the user is interested in. OR do you mean we have multiple DDLog instance each for a subsystem and a category?

Every call to os_log_create() returns os_log_t. For the same sub system having multiple categories, we should store all instance of os_log_t and then return the respective instance which the user is interested in.

No, every call to os_log_create() returns singleton os_log_t object. System keeps track of them for us.

OR do you mean we have multiple DDLog instance each for a subsystem and a category?

We can have several OS Logger instances, one for each valid pair (subsystem, category).
However, I suggest to add subclass ( or proxy ) which has array of categories for specific subdomain if it is necessary.
With that PR you can do something like:
let subsystems = [String : [String]]()
// fill subsystems
// ...
// create loggers for each valid pair `(subsystem, category)`
let loggers = subsystems.flatMap { (key, value) in
    value.flatMap {(key, $0)}
    }.map { pair in
    OSLogger().withSubsystem(tuple.0).withCategory(tuple.0)
}

@arjunkchr
Hi!
Could you try latest master/version?

Hi @lolgear : Sorry I got involved in other items and wasn't able to check with the latest. Let me try that and see if it works. Thanks for your help.

Hi @lolgear : I am trying now to migrate to the new logger system. I have modified below:
os_log_t UILogger = os_log_create(tunnelLogSubsystem, tunnelUICategory);
to
DDOSLogger *UILogger = [[DDOSLogger sharedInstance] initWithSubsystem:logSubsystem category:UICategory];
[DDLog addLogger:tunnelUILogger];

How do I migrate the existing logs to log against this defined subsystem and category? For example, migrating os_log_info(UILogger,"Initialising...");

@arjunkchr According to your input code, your migrated code should look like this:
DDOSLogger *tunnelUILogger = [[DDOSLogger alloc] initWithSubsystem:tunnelLogSubsystem category:tunnelUICategory];
[DDLog addLogger:tunnelUILogger];

You can then simply log messages using the default CocoaLumberjack log statements:
DDLogVerbose(@"Verbose message");
DDLogDebug(@"Debug message");
DDLogInfo(@"Info message");
DDLogWarn(@"Warning message");
DDLogError(@"Error message");

@ffried : Thanks for your response.The above is fine if there is only single category against a subsystem. I still have multiple other categories that I need to migrate. How will the below log statements for different categories be translated?
os_log_info(UILogger,"Initialising...");
os_log_info(DeInit,"Shutdown...");

@arjunkchr In this case you can either use e.g. the context parameter in the DDLog[...]() macro calls and then add a DDLogFormatter subclass to your OSLoggers that filter the messages based on their context.
Or you create different DDLog instances for your categories. There are versions of above's macros, that take a DDLog instance (DDLog[...]ToDDLog())...

Closing this since as per my previous comment the requested feature should already be possible.


an alternate approach to APDU encoding/decoding

howdy, we're working on a ledger app and hoping to share as much as possible between the firmware / interface library and command line tooling.
to that end this is an alternate approach to the way APDUs are defined which allows these to be shared, supporting higher-level type safe interfaces while allowing you to use the same APDU definitions (without std or alloc) on the ledger:
fn handle_apdu(comm: &mut io::Comm) -> Result<(), Reply> {
    let (cla, ins) = comm.get_cla_ins();

    match ins {
        apdu::AppInfoGet::INS => {
            if let Ok(req) = apdu::AppInfoGet::decode(&comm.apdu_buffer) {
                let i = apdu::AppInfo::new(NAME, VERSION, apdu::AppFlags::empty());
                let n = i.encode(&mut comm.apdu_buffer);

                comm.tx = n;
                comm.reply_ok();
            } else {
                comm.reply(SyscallError::InvalidParameter);
            }
        },
        ...
    }
}

this does require you to explicitly pass buffers, but the corollary is that you can read/write using existing buffers instead of allocating which is quite neat for larger objects. and is very much a WIP, i have updated the ledger-apdu package with new traits and definitions, and ledger-transport / ledger-transport-tcp to show how they're used (though not yet propagated the return codes), but i wanted to see what y'all think of this approach before committing more effort?

:link: zboto Link

heya, just following up to see whether y'all have opinions on a change like this?

@ryankurte looks like this repository is dead unfortunately. I think what you're doing looks pretty interesting though. You could consider creating a proper fork?

@ewoolsey we ended up putting together an alternative library that uses the kind of approach proposed here, it's very alpha but available here


Adapt to ocaml-git 1.7.1

This needs a release of ocaml-git first

I'm not sure using a universal type is the best solution to pass around abstract functions, but it seems to work fine...


How to build cquery using MacPorts-installed Clang?

Continuing from: https://github.com/macports/macports-ports/pull/2263
The new CMake system doesn't seem to have an equivalent to WAF's --llvm-config=llvm-config-mp-6.0. The closest I can find is find_package(Clang REQUIRED CONFIG), similar to what's suggested here.
I'm running into all sorts of trouble with cquery's CMakeLists.txt even after I've modified find_package on line 110. First line 239 and 249 are referencing non-existent ${Clang_VERSION}, which I think you probably mean ${CLANG_VERSION}, but even if I fix that, add_executable on line 18 is now complaining about:
CMake Error at CMakeLists.txt:18 (add_executable):
  Target "cquery" links to target "Clang::Clang" but the target was not
  found.  Perhaps a find_package() call is missing for an IMPORTED target, or
  an ALIAS target is missing?

Changing add_executable(cquery "") to add_executable(cquery) gives the same error.
I'm stuck :(

This is my current diff
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1e5fe63f..b5abdd95 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -15,7 +15,7 @@ option(ASSERTS "Compile with asserts enabled" OFF)
 option(CI "Add -Werror or equivalent" OFF)

 # Sources for the executable are specified at end of CMakeLists.txt
-add_executable(cquery "")
+add_executable(cquery)

 ### Compile options

@@ -103,7 +103,7 @@ endif()
 ### Libraries

 # See cmake/FindClang.cmake
-find_package(Clang ${CLANG_VERSION} REQUIRED)
+find_package(Clang REQUIRED CONFIG)
 target_link_libraries(cquery PRIVATE Clang::Clang)

 # Enable threading support
@@ -232,7 +232,7 @@ endif()
 file(GLOB SOURCES src/*.cc src/*.h src/serializers/*.cc src/serializers/*.h
                   src/messages/*.h src/messages/*.cc)

-if(Clang_FORMAT AND ${Clang_VERSION} STREQUAL 6.0.0)
+if(Clang_FORMAT AND ${CLANG_VERSION} STREQUAL 6.0.0)
   add_custom_target(format
                     COMMAND ${Clang_FORMAT} -i ${SOURCES}
                     # .clang-format is located in the cquery root project dir
@@ -242,7 +242,7 @@ else()
   # Set error message depending on which condition was false
   if (NOT Clang_FORMAT)
     set(Clang_FORMAT_ERROR "Error: clang-format executable not found")
-  elseif(NOT ${Clang_VERSION} STREQUAL 6.0.0)
+  elseif(NOT ${CLANG_VERSION} STREQUAL 6.0.0)
     set(Clang_FORMAT_ERROR "Error: clang-format version does not match \
 6.0.0. Due to differences in clang-format output between versions we only \
 support clang-format 6.0.0")

Can you verify cmake -DCMAKE_PREFIX_PATH=/opt/local/libexec/llvm-6.0 -DSYSTEM_CLANG=ON .. doesn't work either?
If you can, join the [gitter channel

I've figured this out now, thank you.


AssemblyName is how you name your Mac Catalyst app

Type of issue
Outdated article
Description
From Maddy: AssemblyName is how you name your Mac Catalyst app - Title isn't respected. This is an Apple bug.
Page URL
https://learn.microsoft.com/en-us/dotnet/maui/deployment/visual-studio-properties
Content source URL
https://github.com/dotnet/docs-maui/blob/main/docs/deployment/visual-studio-properties.md
Document Version Independent Id
a0ecfb0a-e544-7118-d3bf-736bb4d3eb09
Article author
davidbritch

@rolfbjarne we noticed this behavior here:

https://discord.com/channels/732297728826277939/732297916680765551/1238161549496160317

It looks like you could also set $(_AppBundleName), but we shouldn't use a private MSBuild property:

https://github.com/xamarin/xamarin-macios/blob/3a4fe453f7574796308431e17a1e7ad9f5479cce/msbuild/Xamarin.Shared/Xamarin.Shared.props#L310

Should we come up with a public MSBuild property for this? And then .NET MAUI's $(ApplicationTitle) could also set it?

Yes, this looks like something we can improve in xamarin-macios, so I've moved the issue there.


Update tag meta utf-8

New tag:

There is no need for this to be changed, what is currently in the files is correct.


Print out error message in case PCAP app couldn't open file

I was getting an error, file is nil, due to a permissions problem:
lib/pcap/pcap.lua:36: attempt to index local 'file' (a nil value)
stack traceback:
        core/main.lua:122: in function '__index'
        lib/pcap/pcap.lua:36: in function 'write_file_header'
        apps/pcap/pcap.lua:36: in function 'new'
        core/app.lua:165: in function <core/app.lua:162>
        core/app.lua:201: in function 'apply_config_actions'
        core/app.lua:110: in function 'configure'

Printing out the error status io.open returns in case couldn't open a file can be helpful to figure out what is going on:
compiled binding table ../data/binding-table.o is up to date.
apps/pcap/pcap.lua:35: /tmp/endoutv4.pcap: Permission denied
stack traceback:
        core/main.lua:122: in function <core/main.lua:120>
        [C]: in function 'error'
        apps/pcap/pcap.lua:35: in function 'new'
        core/app.lua:165: in function <core/app.lua:162>
        core/app.lua:201: in function 'apply_config_actions'
        core/app.lua:110: in function 'configure'

Beside this I changed the open mode to "w+", as I understand it's preferred to overwrite a file in case it exits.

Would you mind providing a configuration parameter, "overwrite", which controls whether you get w+ or w?  I am thinking that probably not overwriting should be the default, for safety's sake :)


[Task]: Update wallet.rs

Task description
Update wallet.rs to the latest (2.0.2-alpha.24)
Requirements
TBD
Creation checklist

[X] I have assigned this task to the correct people
[X] I have added the most appropriate labels
[X] I have linked the correct milestone and/or project

Needs more investigation, since the prebuilds are not pulled in properly from the GHA page.


Vagrantfile: Default to using LXC when Virtualbox is also available.

This solves the problem reported in #331 with needing to specify
--provider=lxc to use the LXC provider in an Ubuntu Linux environment;
additionally, it adds the LXC option needed to run LXC on Ubuntu
15.10, but not on 14.04 where that option is unavailable and would
totally break LXC.

Automated message from Dropbox CLA bot
@timabbott, it looks like you've already signed the Dropbox CLA. Thanks!

@jmandel if you have a chance it'd be awesome if you could test if this works in your environment!

@timabbott Yes, I can confirm this works for me on Ubuntu 15.10, vagrant 1.7.4, lxc 1.1.5, and virtualbox 5.0.12.

OK, great, merged, thanks @jmandel for helping track this down!


incorrect font size in result grid

Issue Type: Bug
Execute any query with JSON output e.g.
"SELECT * FROM [MY_TABLE] FOR JSON AUTO"
The result grid will show output in JSON format, however the font size becomes smaller than default and even new query is run after, the size is still not reset back to default.
Workaround is restart program to reset it.
Azure Data Studio version: azuredatastudio 1.36.1 (e56e1d931bbb110fe8f24751423c4e184bb8f22d, 2022-04-21T21:25:10.399Z)
OS version: Windows_NT x64 10.0.18362
Restricted Mode: No
Extensions (15)

Extension
Author (truncated)
Version

pastetheplan
dre
0.2.0

admin-pack
Mic
0.0.2

admin-tool-ext-win
Mic
0.0.3

agent
Mic
0.48.0

cms
Mic
0.8.0

dacpac
Mic
1.10.0

import
Mic
1.5.0

powershell
ms-
2021.12.0

profiler
Mic
0.11.0

query-history
Mic
0.1.0

schema-compare
Mic
1.13.1

server-report
Mic
0.2.3

whoisactive
Mic
0.1.4

azdata-sanddance
msr
3.3.0

vscodeintellicode
Vis
1.2.1

(1 theme extensions excluded)

@edwinxml
I ran the query on the right side first and then your query on the left, but I don't see a difference in font size.

could you please share more detailed repro steps? and screenshots would help.

Run query in one tab

Run SELECT TOP 100 * FROM sys.tables, result in normal font
Then run SELECT TOP 100 * FROM sys.tables FOR JSON AUTO, result in smaller font (actually all font in the program are changed to smaller one), and wont change back until program restart.
If the font not change after run the it, simply click on the field in result grid, which open a tab to show the json result (which is really great and helpful), and then font change to smaller one.

Closing as inactive issue.


Adding support for TLV 14 + TLV 242 / SubTLV 19 + TLV 22 / SubTLV 31

This patch adding support for bbl for the following ISIS TLVs configurable by options:

Option "lsp-buffer-size" introduce TLV 14 for LSPBufferSize with default setting for 1492b and range 128-9192b
Option "sr-algo" introduce TLV 242 with SubTLV 19 to specify used SR algorithm(s)
Option "adjacency-sid" introduce TLV 22 with SubTLV 31 with random Adjacency SID generation in range 256-4096

Tested in multi-vendor environment with Cisco/Juniper devices.
No updates to lspgen.
Please review!

Hi Maik,
Shall we add also support to lspgen for those TLVs ?
rgds,
/hannes

Hi Hannes,
yes, need this also for lspgen. I will work on this soon and open separate pull request for this.
Best regards
Maik


Add an option to fail startup if plugins fail to load

Welcome!

[X] Yes, I've searched similar issues on GitHub and didn't find any.
[X] Yes, I've searched similar issues on the Traefik community forum and didn't find any.

What did you expect to see?
It would be nice to have the option to have Traefik fail to startup if a plugin fails to load.
Currently, an error is logged and plugins are disabled which can lead to unreachable services if they require plugins to function properly.
The issue has been described in this forum post where the user experienced a transient error downloading a plugin, requiring a manual restart to solve the issue.

Hello @Desuuuu,
Thank you for the suggestion.
We are unsure about the use case and the traction it will receive, so we are going to leave the status as "kind/proposal" to give the community time to let us know that they would like this.
We will reevaluate as people respond.

Is there a specific reason behind the current behaviour (logging an error and disabling plugins entirely)?

Yes: the goal is to be able to start Traefik if, for example, our plugin server is down.

Because as I see it, it renders plugins unusable since any router using any plugin will be unavailable until the issue is fixed and Traefik is restarted.

It's the expected behavior.
This behavior has been added because of a failure of our plugin server: https://github.com/traefik/traefik/pull/9287

Hello there,
We are interested in this feature. To avoid breaking the current behavior, with the other maintainers, we think that makes sense to enable this feature using an option.
If a community member would like to build it, let us know, and we will work with you to ensure you have all the information needed to merge it.
We prefer to work with our community members at the beginning of the design process to ensure that we are aligned and can move quickly with the review and merge process. Let us know here or create a PR before you start, and we will work with you there.
Don’t forget to check out the contributor docs and link the PR to this issue.

Hello @nmengin,
I have started something to achieve this (It's only to discuss the design, I haven't tested anything).
https://github.com/bmagic/traefik/commit/28739cbd7801071b81c917c96ac639aa2af9110b
So I've added a Required field in the plugin descriptor and for each plugin I'll check if it's required.
On the plugin client, I'll return an error if the plugin is required and something serious is going on, or I'll only return a warning if the plugin is not required.
This implementation changes the default behavior, because currently if a single plugin has a problem during download/check/unzip, no plugin is instantiated. With this change, all plugins that have been successfully download/check/unzip will be activated.

Hello @bmagic,

I have started something to achieve this (It's only to discuss the design, I haven't tested anything).

Do not hesitate to open a PR in draft, thus we can start discussing the approach with you.


thanks a lot

great explanations.
All the best to the authors

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

ID: dba80576-7bdf-5b27-30ed-f33022e368af
Version Independent ID: 3116e737-dbb3-2588-f003-45fee8619a3f
Content: GPU virtual memory in WDDM 2.0 - Windows drivers
Content Source: windows-driver-docs-pr/display/gpu-virtual-memory-in-wddm-2-0.md
Product: windows-hardware
GitHub Login: @nabazan-microsoft
Microsoft Alias: windowsdriverdev

@RAJU2529 Thank you for your feedback!
Best,
Mimi


Kubernetes links are missing in detail of service

It might be a missconfiguration, but k8s links are missing for the resources
of each service.

Span metrics need k8s.cluster.name to display those links


Investigate Django Usability

Looks like using Django may be in our best interest as it will allow our development to be pretty fast and has easy integration for databases. Drawback is that we are going to need to learn how to use Python in this environment, but I think that since the TEP National Site that Brad is working on uses this framework whatever knowledge we get from working on this will be applicable to the National site as well.
Here is a link to what they offer:
https://www.djangoproject.com/start/overview/

And vice versa! I started reading up on Django this morning after building the TEP National site on my machine and it's sick. The fact that you can set up a database with like 10 Python lines blows my mind.
This overview of a sample project structure makes it out to be like MVC but with a lot of useful fluff:
https://docs.djangoproject.com/en/1.9/intro/overview/

Plus we can reference the National site codebase for examples of Django stuff; Shank and Brad are open to questions.

https://docs.djangoproject.com/en/1.10/ref/templates/language/#template-inheritance
tl;dr

One common way of using inheritance is the following three-level approach:

Create a base.html template that holds the main look-and-feel of your site.
Create a base_SECTIONNAME.html template for each “section” of your site. For example, base_news.html, base_sports.html. These templates all extend base.html and include section-specific styles/design.
Create individual templates for each type of page, such as a news article or blog entry. These templates extend the appropriate section template.
This approach maximizes code reuse and makes it easy to add items to shared content areas, such as section-wide navigation.

This particular section of Django's documentation gives a good overview of how its template system works--an understanding of this will make it easier to map out the site.

I used this guide for basic setup of the app.
http://opentechschool.github.io/django-101/en/first_steps/index.html


Add curPos to Token Error messages.

Add column locations to the errors in tokens. Currently the only errors that throw column position are scanner errors.


Files specified in ts-node with the option are considered unused files

When an option is given to the ts-node called in the scripts field, the file specified in the argument will not be included in the entry file.
package.json
{
  "name": "knip-ts-node-options-example",
  "version": "1.0.0",
  "private": true,
  "description": "The repository to reproduce knip issue on ts-node with options",
  "scripts": {
    "hello": "ts-node -T scripts/hello.ts",
    "knip": "knip"
  },
  "keywords": [
    "knip",
    "ts-node"
  ],
  "author": "fossamagna",
  "license": "MIT",
  "devDependencies": {
    "@types/node": "^20.11.5",
    "knip": "^4.2.0",
    "ts-node": "^10.9.2",
    "typescript": "^5.3.3"
  }
}

When knip is executed, scripts/hello.ts is judged as unused files as follows.
npm run knip

><EMAIL_ADDRESS>knip
> knip

Unused files (1)
scripts/hello.ts

If no option is specified for ts-node, the file is not considered unused files.
option so that files specified in ts-node are not judged as unused files.
reproduction repository: https://github.com/fossamagna/knip-issue-470

Thanks for the report, @fossamagna, should be better now :)


🐛 BUG: Cannot connect to any Windows server hosts after 20240129

What version of nebula are you using?
1.2.3
What operating system are you using?
windows server 2022
Describe the Bug
In the past I have had small periods where I could not connect to a remote host, I would try a little later and ok.  But a few days ago ALL 6 locations I connect to that run Windows Server 2022.  I have been trying for 2-3 days now.  And none will not connect..  Takes about 2 seconds, then cums up with "Connection ERROR" remote is offline...
Hit reconnect over and over for minutes (As they sometimes helped) and nothing.  Will not connect.sometimes
This is where they need to implement the suggested syntax number@private-server-ip so I can rely on my own private-server if the public servers are behaving badly...  I still need the systems on public servers so I can have other people come in for support.
Logs from affected hosts
No response
Config files from affected hosts
Default config, apart from running my own server and selecting it as a Relay Server.

Thanks for the report.  What version of nebula are you using?  I assume it's not 1.2.3 as posted above.

sorry, false alarm.  I entered this into the wrong project github page.

Thanks for posting back!


MSAL.js 2.x supports loginSilent feature

Please follow the issue template below.
Library

[ ]<EMAIL_ADDRESS>or<EMAIL_ADDRESS>[x]<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>
Upcoming Library

[ ]<EMAIL_ADDRESS>
Type

[ ] Bug
[x] Feature
[ ] Enhancement
[ ] Tooling
[ ] Documentation
[ ] Samples
[ ] Other (please describe)

Source

[x] Internal (MSAL.js team)
[ ] Customer request

Description
MSAL 2.0 should support the ability to retrieve a token silently if cookies are present on the server side. This may involve porting iframe code to the new package. Investigation needs to be done on mechanisms, iframe scenarios, etc.
Priority
Should be completed before release of MSAL 2.x
Acceptance Criteria
Describe the conditions that must met for this work to be considered complete.

MSAL 2.x supports the ability to retrieve an id token without user interaction when server-side cookies are available.

Added in #1451.


References

Please add your references here that you use so Rachel can compile them.

For references help:  https://engineering.purdue.edu/~mark/puthesis/faq/cite-url/

Note from Analise - use @manural or @misc

SCRIPT 4 - my part:

https://stackoverflow.com/questions/39187875/scikit-learn-script-giving-vastly-different-results-than-the-tutorial-and-gives for changing pos and neg labels of readmitted column
store vals function from 571 Lab 4

This is what I have so far, please take a look and comment any other references you have if they are not in this list already:
R - use citation():

R

Python:

Python3
numpy
pandas
altair
hashlib
matplotlib
IPython
sklearn
requests
zipfile
urllib
io
warnings

Others for Script 4:

https://stackoverflow.com/questions/39187875/scikit-learn-script-giving-vastly-different-results-than-the-tutorial-and-gives for changing pos and neg labels of readmitted column
store vals function from 517 Lab 4

reference from 573 Lab 1

pandas profiling latest version needed
altair_saver

National Institue of Health(a). "Managing Diabetes", Accessed November 21, 2020. https://www.niddk.nih.gov/health-information/diabetes/overview/managing-diabetes
National Institue of Health(b). "Managing Diabetes", Accessed November 21, 2020. https://www.niddk.nih.gov/health-information/diabetes/overview/insulin-medicines-treatments
Vanderplas Jake. "Building rows of charts in for loop to create data dashboards #1281", 2019. Altair Github Repository. https://github.com/altair-viz/altair/issues/1281

National Institue of Health(a). "Managing Diabetes", Accessed November 21, 2020. https://www.niddk.nih.gov/health-information/diabetes/overview/managing-diabetes
National Institue of Health(b). "Managing Diabetes", Accessed November 21, 2020. https://www.niddk.nih.gov/health-information/diabetes/overview/insulin-medicines-treatments
Vanderplas Jake. "Building rows of charts in for loop to create data dashboards #1281", 2019. Altair Github Repository. altair-viz/altair#1281

@jraza19 where did you use these references? Just so I know where to put them in the final report!

@rachelywong the NIH references were from the EDA under categorical variables.... We also reviewed of some categorical features against the target. We chose metformin and insulin as those are most commonly prescribed medications for diabetes management (NIHa) and Hemoglobin A1C levels is a common test for diabetes (NIHb).
the last one was for script 3 - EDA. so there is no reference to it in the final report.
for pandas profiling we have to use the latest version
@misc{pandasprofiling2019,
author = {Simon Brugman},
title = {{pandas-profiling: Exploratory Data Analysis for Python}},
year = {2019},
howpublished = {\url{https://github.com/pandas-profiling/pandas-profiling}},
note = "Version: 2.9, Accessed: November 2020"
}

References merged and updated on main repo.