Consider complying with XDG directory spec for user specific configuration and data

https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
Currently we put both user specific ceylon configuration and data (local modules repository) in user's home directory. According to XDG, there are several environment variables governing the location of configuration and data:

There is a single base directory relative to which user-specific data files should be written. This directory is defined by the environment variable $XDG_DATA_HOME.
There is a single base directory relative to which user-specific configuration files should be written. This directory is defined by the environment variable $XDG_CONFIG_HOME.
There is a set of preference ordered base directories relative to which data files should be searched. This set of directories is defined by the environment variable $XDG_DATA_DIRS.
There is a set of preference ordered base directories relative to which configuration files should be searched. This set of directories is defined by the environment variable $XDG_CONFIG_DIRS.
There is a single base directory relative to which user-specific non-essential (cached) data should be written. This directory is defined by the environment variable $XDG_CACHE_HOME.
There is a single base directory relative to which user-specific runtime files and other file objects should be placed. This directory is defined by the environment variable $XDG_RUNTIME_DIR.
All paths set in these environment variables must be absolute. If an implementation encounters a relative path in any of these variables it should consider the path invalid and ignore it.

It is not a big spec and I think it would make sense for us to follow the recommendation...

What exactly are you suggesting? There are several possible changes here, and I think some of them are more work than others.

Move the user’s configuration file from ~/.ceylon/config to ${XDG_CONFIG_HOME:-~/.config}/ceylon/config. Easy, though for backwards compatibility we probably should accept ~/.ceylon/config as well.
Move the USER repository from ~/.ceylon/repo to ${XDG_DATA_HOME:-~/.local/share}/ceylon/repo. Easy, though with the same backwards compatibility concern.
Move the CACHE repository from ~/.ceylon/cache to ${XDG_CACHE_HOME:-~/.cache}/ceylon. Similarly easy.
Move the SYSTEM repository from /usr/share/ceylon to ${XDG_DATA_DIRS:-/usr/local/share:/usr/share}/ceylon. A bit harder, because it’s no longer a single directory. I guess --out +SYSTEM would attempt to write to each directory in the list, starting with the first?
Move the system configuration file from /etc/ceylon/config to ${XDG_CONFIG_DIRS:-/etc/xdg}/ceylon/config. A bit harder for the same reason, and also ugly because the XDG folks decided to stick the name xdg into that path, so the default is no longer just the /etc/ceylon… that most people would expect. (systemd solves that last part by moving the configuration to /etc/systemd/user and making /etc/xdg/systemd/user symlink to ../../systemd/user, which seems like a decent solution to me.)

Well, in one word, yes :)
And for all backwards compatibility concerns, (more specifically, user config, data and cache directories, we could simply move existing folders to their XDG* locations and create symlinks pointing to the new pahts...)
For example, we could do following steps (given user already has existing .ceylon/** folder structure):
mkdir -p "${XDG_CONFIG_HOME:-~/.config}/ceylon/"
mv ~/.ceylon/config "${XDG_CONFIG_HOME:-~/.config}/ceylon/"
ln -s "${XDG_CONFIG_HOME:-~/.config}/ceylon/" ~/.ceylon/config.

mkdir -p "${XDG_DATA_HOME:-~/.local/share}/ceylon/"
mv -R ~/.ceylon/repo "${XDG_DATA_HOME:-~/.local/share}/ceylon/"
ln -s "${XDG_DATA_HOME:-~/.local/share}/ceylon/repo" ~/.ceylon/repo
# etc...

As for the $XDG_DATA_DIRS being multiple directories, this is a search path. When writing to the system libs, we should perhaps prefer one specific folder.
The last suggestion to follow systemd way sounds reasonable.

@luolong How that will work on Windows systems (yes, there are still people using them)? AFAIK, links in NTFS are possible, but not something easy.

Well, this is about Linux/Unix systems that XDG standard applies to.
Its been a while since I last developed on Windows machine, but I believe that Windows has its own set of standard locations for those things. If needed, a separate issue should probably be created for Windows.

@someth2say

AFAIK, links in NTFS are possible, but not something easy.

Last I used them, they were about as easy to use and create as linux links. It's just that Windows users are not used to filesystem level linking and thus almost never use them. The closest thing to average Windows user gets to links is those .link files they create on Desktop...


[1.12.2] Some textures not loading

rftools 6.13
mc 1.12.2
forge <IP_ADDRESS>9
I checked my logs today and found this:
[10:02:12] [main/ERROR]: Using missing texture, unable to load rftools:textures/blocks/powercellw.png, java.io.FileNotFoundException
[10:02:12] [main/ERROR]: Using missing texture, unable to load rftools:textures/blocks/powercellu.png, java.io.FileNotFoundException
[10:02:12] [main/ERROR]: Using missing texture, unable to load rftools:textures/blocks/powercells.png, java.io.FileNotFoundException

yes, known issue but not harmful. In game it looks ok

Wow, that was a quick reply! Thanks for all your work, I really love your mods


Icon request: BreachForums

URL for the brand / site / app
https://breached.to/
Logo resources for the icon
https://cdn.breached.to/logo.png
Anything else?
BreachForums has 2FA and support Aegis too

Here is the link: https://breached.to/usercp.php?action=my2fa
Confirmation

[X] I have read and followed the issue guidelines.

Rejected.
Breaks two icon acceptablity criterias:

Apps / sites focusing on highly immoral and illegal activity / material.

In this case: black hat hacking

Not enough forum members for dedicated icon


Modify Born Digital detection logic

We had a bug we fixed with a hacky workaround.
We still need the workaround, but we can now make it less hacky as we have an official way of detecting whether or not a work is Born Digital, so we should address the TODO and amend the logic so it's safer.

Done and in prod


Set up an Open Collective

To make sure neostandard become a collective and sustainable effort I think we should set up an Open Collective.
Thoughts @mcollina, @bcomnes, @wesleytodd?

@wesleytodd Would be a great collaboration! I'm thinking of basing the mocha ones on the ones that ESLint has. Maybe we can make a generic boilerplate version that we all can adopt.

I was also going to propose we follow eslint's setup on express! This sounds great.

Was suggested by @tobie to bring it to the OpenJSF CPC / a collab space

Yes please! Let's build resources that benefit all projects, here!


Backup/restore in relation to published editions in production mode

Currently, users with the right permissions can backup/restore either the whole site, or individual projects.
But if projects have published editions, it is not desirable that backups of projects can be restored.
Currently, backup/restore is implemented as user-triggered actions that only work in pilot mode.
So in production mode there is no danger. We'll rely on the infrastructure around Pure3D to implement a reasonable backup policy, without human intervention.
In pilot mode, the backup and restore is a convenience.
Users can save important stages of their work, try something out on top of that, and revert back if it does not work out.
Later, when it turns out desirable to have this also in production mode, we need to take care that:

backup/restore only works at the project/edition level
backup/restore is prevented for published editions
when a project with published editions is restored, those published editions will be unaffected by the restore

For now this is a non-issue, but we retain it pro memoria.

The first stage of the project has ended.


Add Precision field to Issuance

FAT Standards PR:
https://github.com/Factom-Asset-Tokens/FAT/pull/31

This is now implemented. Please try it


Figure out how to share transform between threads if transform is a closure

See comments in it_works(), and commit d4c27b60642dfa9bbaa3c70e60691b12b5c27056
This conversation might provide the answer: https://users.rust-lang.org/t/how-to-send-function-closure-to-another-thread/43549

Furthermore, users will often need to prepare in the main thread, before passing to the worker thread. In the current unit test, users need to tx.clone() in the main thread. And, in other situations, we may need to pass in a mutable reference to a sub-array (eg when writing to a shared numpy array).
So maybe we shouldn't pass in a closure. Instead, maybe a struct which implements a Processor trait, with methods: prep(&OperationDescriptor) and process().
Or maybe we do pass in a closure to submit_and_process. That first closure runs in the main thread, and returns a second closure, which is moved into the worker thread? Hmm, yes, that sounds nice

Furthermore, users will often need to prepare in the main thread, before passing to the worker thread. In the current unit test, users need to tx.clone() in the main thread. And, in other situations, we may need to pass in a mutable reference to a sub-array (eg when writing to a shared numpy array).
So maybe we shouldn't pass in a closure. Instead, maybe a struct which implements a Processor trait, with methods: prep(&OperationDescriptor) and process().
Or maybe we do pass in a closure to submit_and_process. That first closure runs in the main thread, and returns a second closure, which is moved into the worker thread? Hmm, yes, that sounds nice

These links might also be relevant:

https://stackoverflow.com/questions/36211389/can-a-rust-closure-be-used-by-multiple-threads
https://stackoverflow.com/questions/33818141/how-do-i-pass-disjoint-slices-from-a-vector-to-different-threads

Blocked on #20


[WIP] Lookup ledger from ledger hash using hash table

Maintain a hash table of ledger hashes to ledgers in the transition frontier. Use that instead of scanning the breadcrumbs.
When breadcrumbs are added to the frontier, an entry is created in the hash table.
When loading a persisted frontier, reconstruct the table from the loaded frontier.
Closes #1666.

Yes, :+1: to implementing this as an extension instead of increasing the complexity of the transition frontier code.

@nholland94 @cmr Moved the table to an extension, testing now.
Not sure when table entries should be removed, though. Should certain diffs result in a removal?


Unreliable Hydrawise connection

I'm submitting a ...  (check one with "x")
Problem
Whilst I can get a connection to the Hydrawise API and have been able to control zones, it quickly becomes a broken connection.
Current behavior

Expected behavior
Consistnet connection
Your Environment
Please tell us about your environment:

( ) I am using just the Node-RED package

controller : HCC 24 Zones

Description of the connecting hydrawise system:

v4.54

node-red-contrib-hydrawise version: ``

Node: (min. 6.10.x)
node --version = 0.0.8

Hi,
The error indicates that you are sending too many requests to Hydrawise.
Please send me your flow so I can check your config. The api key can be
easily regenerated after I've checked the error.
Regards,
Ronald
Op di 15 aug 2023 om 23:51 schreef benflux @.***>:

I'm submitting a ... (check one with "x")
Problem
Whilst I can get a connection to the Hydrawise API and have been able to
control zones, it quickly becomes a broken connection.
Current behavior
[image: image]
https://user-images.githubusercontent.com/31230445/260850142-050c82c9-e3e3-4f1e-ae0b-15033c61b6e9.png
Expected behavior
Consistnet connection
Your Environment
Please tell us about your environment:

( ) I am using just the Node-RED package
controller : HCC 24 Zones
Description of the connecting hydrawise system:
v4.54

node-red-contrib-hydrawise version: ``

Node: (min. 6.10.x)
node --version = 0.0.8

—
Reply to this email directly, view it on GitHub
https://github.com/RonB/node-red-contrib-hydrawise/issues/7, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEIVI2FFSPWVWILXW6OU6DXVPVOZANCNFSM6AAAAAA3RUFKKY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Vriendelijke groet,
Ronald

It seems to have resolved itself, so I agree with you, it was the number of
API calls that was causing the error.
On Wed, Aug 16, 2023 at 4:21 PM Ronald Brinkerink @.***>
wrote:

Hi,
The error indicates that you are sending too many requests to Hydrawise.
Please send me your flow so I can check your config. The api key can be
easily regenerated after I've checked the error.
Regards,
Ronald
Op di 15 aug 2023 om 23:51 schreef benflux @.***>:

I'm submitting a ... (check one with "x")
Problem
Whilst I can get a connection to the Hydrawise API and have been able to
control zones, it quickly becomes a broken connection.
Current behavior
[image: image]
<
https://user-images.githubusercontent.com/31230445/260850142-050c82c9-e3e3-4f1e-ae0b-15033c61b6e9.png>

Expected behavior
Consistnet connection
Your Environment
Please tell us about your environment:

( ) I am using just the Node-RED package
controller : HCC 24 Zones
Description of the connecting hydrawise system:
v4.54

node-red-contrib-hydrawise version: ``

Node: (min. 6.10.x)
node --version = 0.0.8

—
Reply to this email directly, view it on GitHub
https://github.com/RonB/node-red-contrib-hydrawise/issues/7, or
unsubscribe
<
https://github.com/notifications/unsubscribe-auth/AAEIVI2FFSPWVWILXW6OU6DXVPVOZANCNFSM6AAAAAA3RUFKKY>

.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Vriendelijke groet,
Ronald
—
Reply to this email directly, view it on GitHub
https://github.com/RonB/node-red-contrib-hydrawise/issues/7#issuecomment-1680028423,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHOIT3K5TNLH6N6QYP3JDDTXVRRH7ANCNFSM6AAAAAA3RUFKKY
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Kind regards
Ben Flux
CEO
https://www.linkedin.com/in/benflux
[image: Rectangle]
p: +61 7 3180 2360
m: +61 450 012345
e: @.*** @.***>
w: www.inspirex.io
https://www.inspirex.io/


Failed to resolve entry for package @superset-ui/switchboard

Bug description
I tried installing the latest version of @superset-ui/embedded-sdk. After installation and making use of the package in one of my components I started getting a build error. This seems to be a new issue, since I had it working yesterday on a different repository.
The build error:
node_modules/esbuild/lib/main.js:1225:21: ERROR: [plugin: vite:dep-pre-bundle] Failed to resolve entry for package "@superset-ui/switchboard". The package may have incorrect main/module/exports specified in its package.json.

Package versions:
@superset-ui/embedded-sdk: "0.1.0-alpha.12"
@superset-ui/switchboard: "0.20.2" (comes with embedded-sdk).
In another repository I am still on @superset-ui/switchboard: "0.18.26-0" || "0.18.26-2" which seems to work as expected.
Node version: 20.11.0
How to reproduce the bug
Install the latest version of @superset-ui/embedded-sdk on Node version 20.11.0 and make use of it within your page.
Screenshots/recordings
No response
Superset version
master / latest-dev
Python version
3.10
Node version
18 or greater
Browser
Chrome
Additional context
No response
Checklist

[X] I have searched Superset docs and Slack and didn't find a solution to my problem.
[X] I have searched the GitHub issue tracker and didn't find a similar bug report.
[X] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

Can confirm I also started getting this error today after months of use with no problems.

In essence, we're finally releasing updated npm packages after... forever.
embedded sdk will be updated on npm (at least in theory) upon the merge of this PR.

Sweet, thanks for the update!


Add rpath fixups to Mac non-GPL FFmpeg build

We had previously thought that the rpath fixup stuff specific to Mac that torchaudio did was not necessary for us. The work I'm doing in #210 indicates that we actually do need this. What leads me to this conclusion is when I do otool -L (Mac's equivalent to ldd):
otool -L src/torchcodec/libtorchcodec4.dylib
src/torchcodec/libtorchcodec4.dylib:
	@rpath/libtorchcodec4.dylib (compatibility version 0.0.0, current version 0.0.0)
	@rpath/libc10.dylib (compatibility version 0.0.0, current version 0.0.0)
	@rpath/libpython3.9.dylib (compatibility version 3.9.0, current version 3.9.0)
	/Users/ec2-user/runner/_work/torchcodec/torchcodec/pytorch/torchcodec/ffmpeg/lib/libavutil.56.dylib (compatibility version 56.0.0, current version 56.70.100)
	/Users/ec2-user/runner/_work/torchcodec/torchcodec/pytorch/torchcodec/ffmpeg/lib/libavcodec.58.dylib (compatibility version 58.0.0, current version 58.134.100)
	/Users/ec2-user/runner/_work/torchcodec/torchcodec/pytorch/torchcodec/ffmpeg/lib/libavformat.58.dylib (compatibility version 58.0.0, current version 58.76.100)
	/Users/ec2-user/runner/_work/torchcodec/torchcodec/pytorch/torchcodec/ffmpeg/lib/libavdevice.58.dylib (compatibility version 58.0.0, current version 58.13.100)
	/Users/ec2-user/runner/_work/torchcodec/torchcodec/pytorch/torchcodec/ffmpeg/lib/libavfilter.7.dylib (compatibility version 7.0.0, current version 7.110.100)
	@rpath/libtorch.dylib (compatibility version 0.0.0, current version 0.0.0)
	@rpath/libtorch_cpu.dylib (compatibility version 0.0.0, current version 0.0.0)
	/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 1700.2[55](https://github.com/pytorch/torchcodec/actions/runs/10841142043/job/30084689904?pr=210#step:9:56).0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1345.100.2)

Note that things like libc++ and libtorch have @rpath/ in front of them, indicating (I believe) that they can be dynamically loaded. The FFmpeg libraries are hard-coded to where they were during build time. This causes failures at import time, because the libraries can't be found.
In order to test, I had versions of this PR where I hacked the build_ffmpeg.yaml workflow to run on the pull request. It succeeds: https://github.com/pytorch/torchcodec/actions/runs/10842665681

@NicolasHug, agreed on not knowing exactly what everything is doing. I'm afraid the only real test is if it works in our build process once uploaded. In the event we need to fix something in this domain, I do think there's enough public docs for us to figure out.
Based on what you asked, this PR does seem to be doing the right thing. This is what the library looks like from the old build:
[scottas@local macos_arm64] otool -L ffmpeg4/lib/libavutil.56.dylib
ffmpeg4/lib/libavutil.56.dylib:
	/Users/ec2-user/runner/_work/torchcodec/torchcodec/pytorch/torchcodec/ffmpeg/lib/libavutil.56.dylib (compatibility version 56.0.0, current version 56.70.100)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1345.100.2)
	/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 2419.0.0)
	/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo (compatibility version 1.2.0, current version 1.5.0)
	/System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia (compatibility version 1.0.0, current version 1.0.0)

And this is what it looks like after this PR:
[scottas@local macos_arm64] otool -L ffmpeg4/lib/libavutil.56.dylib
ffmpeg4/lib/libavutil.56.dylib:
	@rpath/libavutil.56.dylib (compatibility version 56.0.0, current version 56.70.100)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1345.100.2)
	/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 2419.0.0)
	/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo (compatibility version 1.2.0, current version 1.5.0)
	/System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia (compatibility version 1.0.0, current version 1.0.0)

That is, it looks like libavutil.56.dylib should now be able to be dynamically loaded, as it's no longer pointing to an exact file.


[Regression] 1.8.2 slower to build than 1.5.9 when tag+ includes many nodes

Is this a regression in a recent version of dbt-core?

[X] I believe this is a regression in dbt-core functionality
[X] I have searched the existing issues, and I could not find an existing issue for this regression

Current Behavior
dbt build -s tag:my_tag+ takes about 20 minutes longer to start on dbt 1.8.2 than it does on 1.5.9 with the same tag. The tag used has a lot of downstream nodes in our project, about 11k. Generally we’re seeing better performance on 1.8 so we were surprised to see this big regression in performance.
Expected/Previous Behavior
Previously building everything downstream of a tag with lots of nodes would take a couple minutes of startup time and then begin running queries against our db. Now it takes 20+ minutes.
Steps To Reproduce

Set up dbt project with a tag that has about 11k downstream nodes
Install dbt 1.8.2
Run dbt build -s tag:my_tag+

Relevant log output
No response
Environment
- OS: MacOS 14.5 and Ubuntu 22.04
- Python: 3.9.12
- dbt (working version): 1.5.9
- dbt (regression version): 1.8.2

Which database adapter are you using with dbt?
bigquery
Additional Context
The reason we need this is because we have a selector used in CI/CD that excludes everything downstream of a tag that is upstream of many nodes. The example given is a simpler version of the original issue we found with that selector. (We tested the simpler version and found to also have the same performance issue.) The selector was something like
- name: my_selector
  definition:
    union:
      - state:modified+
      - exclude:
        - tag:my_tag+

Thanks @cajubelt! Is this only for the build command (i.e. not run)?
I suspect this might be due to the large number of tests in your project (per our conversation), and the additional time that dbt spends "linking" the DAG (adding edges between test on upstream model -> downstream models, so that they skip on test failure). While it's not immediately clear to me what change we made between v1.5 -> v1.8 to that logic, if you only see this slowdown on build, it would be a strong indication that therein lies the problem.

@jtcohen6 yes I just confirmed that dbt run doesn't have any noticeable slowdown on 1.8 with the same selector.

@cajubelt Okay! So I think the hypothesis is:

A project with a lot of tests (~5k models and ~15k data tests) is meaningfully slower at startup for dbt build in v1.8 compared to v1.5
My suspicion is that this slowdown is happening within (or closely adjacent to) the add_test_edges method

If you're up for it, there are two ways to try confirming that hypothesis by profiling dbt's performance:

Using snakeviz as documented here: https://docs.getdbt.com/reference/global-configs/record-timing-info (this way is a bit older, but more familiar to me)
Using pyspy (snazzier) in the way @peterallenwebb recommends here:

pip install py-spy
sudo py-spy record -s -f speedscope -- dbt build

We have the ability to exclude tests from the build resource types, but that doesn't affect whether or not we pass "add_test_edges" to compile. It would be possible to check the resource types and if tests are excluded, pass "add_test_edges" = False.
Of course if you do want tests to run, that doesn't help.

We do want to run tests if possible.
@jtcohen6 here's a screenshot of a search through py-spy's output for the longest segments of the flame graph. Looks like generic_bfs_edges is adding 12:41, not sure if that's particularly revealing however

@jtcohen6 Not super sure if related to this issue but we're seeing an extreme slowdown when building a large chunk of a fairly big graph with --indirect-selection buildable in CI/CD. The project has 2573 models, 13 snapshots, 7 analyses, 2254 data tests, 20 seeds, 1 operation, 359 sources, 44 exposures, 1408 macros, 1 group, 13 unit tests
cautious and eager end up being fine, but with buildable, the process "hangs" for up to 20 minutes after it prints the project stats "Found 2573 models ..." etc. and before the "Concurrency: 4 threads (target='test')" message. No other output, even on debug log level.
I tried to figure out what's going on using the trace module but it was a bit too much spam :). Will try add some trace output when I find a minute

here's me waiting for about 5minutes for the generic_bfs_edges traversal

In a "good" run with eager selection this takes about two seconds with the exact same selector (the rest is dbt actually starting to execute, which I didn't wait for in the other run)

What percentage of your graph (including tests) is selected by the tag, and what % is selected by the selector?
I had someone on my team try using the @ decorator on a selector (which I don't normally do) and we both had DBT hang. I kind of pushed it out of my head, will be thinking on this now.
I don't really understand the py-spy output (worked with SnakeViz).... if I had to guess what might be happening:

for some reason, generic_bfs_edges is either really slow or being called a lot
collect_specified_neighbors in selector.py calls self.graph.select_children when passed certain selector patterns
self.graph.select_children applies the self.descendants method for each node, which is perhaps a lot of times, or maybe it uses up a lot of memory.
the slow part based on your output is filter_edges_by_type, which is calling get_edge_data in networkx,

If you can share the snakeviz would help out, also maybe check your memory usage? Last bug I worked on for this graph optimization stuff was having performance issues from running out of memory when the DAG got too big.
If my stab in the dark here is in the right direction, maybe there is a pruning that could be done to reduce calling descendants so much. Like, if you have a ton of nodes in your selector for which many are already descendents of each other, you don't need to re-tread and evaluate each node. could first get a list of all descendents for each node with a depth of 1, then take the difference of that and the list of nodes in the selector to restrict to searching for descendents of unsearched nodes, find descendents of depth 1 from that list, and iterate.
For your graph has 20k nodes, if 1k have the tag, 10k are descendents, and each descendent is on average the descendent of 70% of the tagged nodes, this takes the number of times each of the descendents has to be evaluated by ~700. 700*10,000 is a lot of calls.
After writing this out this seems actually pretty likely XD. Think an update to select_children with this logic would be the place to implement this. This seems similar to
Also if the slow part is filtered_graph = self.exclude_edge_type("parent_test"), maybe could cache that or pass it as a parameter into descendants?
will try tests on my own project with ~500 models and ~5000 tests next week.

I added a PR! https://github.com/dbt-labs/dbt-core/pull/10526
I believe I was able to recreate the issue in my project, which has: Found 442 models, 43 snapshots, 5112 data tests, 32 seeds, 2 operations, 134 sources, 23 exposures, 1075 macros
Running dbt build --select tag:silver+ on my DAG on 1.8.4, it takes 132 seconds to start building. dbt build just takes 11 seconds.
My PR applies the pruning strategy I described. I saw the runtime improve for dbt build --select tag:silver+ to 66 seconds. Using SnakeViz, I identified that the number of calls to get_edge_data reduced from 14,332,569 to 383,916.
I am unsure how much DBT 1.9/main branch contains performance improvements... the total runtime improvement was 66 seconds, but select_children only improved from 80 seconds to 45 seconds (35 seconds improvement). Going to try to run main branch for performance check.
Feedback welcome, especially if you can test/review the change!

I've reviewed and suggested some changes to @ttusing's PR but we should be close to a fix on this.

This is now resolved in 1.9+, but I'm re-opening this issue so we can consider backports.

I'm also interested in seeing performance reports from @stefankeidel and @cajubelt. This should help, but checking the edge type seems to be inherently slow. Wonder if the runtime will improve from 20 minutes to like 15, 10, or 5 minutes and if there are further improvements that can be made in the edge type lookup speed.
I could image avoiding the edge type lookup altogether somehow with the knowledge that tests cannot depend on tests. So, don't check the edge type for searching children if the node is a test (or if parent is a test for ancestors) or something like that. Or, building the subgraph with all non-tests nodes first.

Just saw the great activity on this after it fell off my radar for a bit, thanks all. Will follow up on Monday with a perf report, I have personal commitments this weekend.
We'd love to see a backport to 1.8 since our project is fairly large and we are unlikely to update to 1.9 before some key deadlines this Fall.

Ok I did some profiling last night on dbt build --select tag:large_tag+. Looks like get_edge_data accounted for about 36 minutes and was called 710,951,628 times. Total time to build was 81 minutes. (I used --empty and it errored out immediately when writing to tables so none of this was time waiting for the db writes.) I used dbt 1.8.2. Will try again tonight on 1.9 if that's helpful

Ok, ran it again with 1.9.0-a1 and the improvement was dramatic. The build time was just 10 minutes. get_edge_data was called 11,778,492, a 98% reduction, and accounted for just 21 seconds.

Some stats about my project: 5799 models, 20 snapshots, 91 analyses, 18763 data tests, 186 seeds, 1 operation, 1086 sources, 69 exposures, 1899 macros

Resolved for dbt-core 1.9+ in https://github.com/dbt-labs/dbt-core/pull/10526 and backported to dbt-core 1.8 in https://github.com/dbt-labs/dbt-core/pull/10567.


Fix race condition in Whirly.stop

Hiya! I've run across this one a few times using this, there's a race condition in the stop method that can cause unrender to throw an exception.
I see there's two failing tests in this PR, but they are failing on master as well.

Thread#terminate is not synchronous, it only schedules the thread
to be killed.
The thread in the background can on rare occasions unset
@current_frame after line 1 of Whirly.unrender, causing
a nil to be passed to Unicode::DisplayWidth.of, and causing
an exception as a result.
When we kill the thread, we need to join it to wait for it to
finish before proceeding, otherwise we risk memory corruption.

Just a note, I'm only 99.9% sure on this fix. It's exceedingly rare that the race condition hits, but all the symptoms line up with a thread race condition given how Thread#terminate works. I'll definitely have more info in about a week after people have had some time with it, we use this internally a lot and someone will for sure run into it and let me know if it's still happening sooner or later.


Target Audience Research

By conducting target audience research for each test, you can ensure the content is relevant, addresses employee needs, and provides valuable data for improving workplace safety, employee motivation, policy compliance, communication, and overall company culture.

General Workplace Safety Test
•	Target Audience: All employees, regardless of position or department.
•	Research Methods:
o	Surveys to assess prior safety training experiences and perceived knowledge gaps.
o	Focus groups with representatives from different departments to identify common safety concerns and preferred learning styles.
o	Review of accident reports to identify areas needing emphasis in the test.

Motivation at Work Test
•	Target Audience: All employees.
•	Research Methods:
o	Employee satisfaction surveys conducted periodically.
o	Exit interviews with departing employees to understand reasons for leaving.
o	Focus groups to discuss what motivates them at work and suggestions for improvement.
o	Benchmarking against industry standards for employee motivation.

Company Policy Test
•	Target Audience: All employees, with potentially more in-depth versions for management or roles with specific policy implications (e.g., HR, IT).
•	Research Methods:
o	Interviews with HR and legal department to identify key policies for testing.
o	Review of employee onboarding materials and training programs related to company policies.
o	Random surveys to gauge employee awareness of specific policies.

English Language Test (if applicable)
•	Target Audience: Employees for whom English is the primary language of work, particularly those in client-facing roles or requiring strong written communication skills.
•	Research Methods:
o	Job analysis to determine the required level of English proficiency for each role.
o	Review of existing internal communications and documentation to gauge the level of English required for comprehension.
o	Consider pre-employment language assessments for new hires.

Cybersecurity Test
•	Target Audience: All employees, with potentially more emphasis on those with access to sensitive data or systems (e.g., finance, IT).
•	Research Methods:
o	Review of past cybersecurity incidents within the company.
o	Surveys to assess employee awareness of common cyber threats and reporting procedures.
o	Benchmarking against industry standards for cybersecurity training and awareness programs.

Team Communication Work Simulation
•	Target Audience: Teams that work collaboratively on projects or tasks.
•	Research Methods:
o	Interviews with team leaders and managers to identify common communication challenges within their teams.
o	Observation of team meetings to assess communication dynamics and collaboration practices.
o	Consider including self-assessment or peer-evaluation components within the simulation activity.

2_Target Audience Research for Employee Tests.docx

QUIZ_Target Audience Research (Employee Tests).pdf


SyntaxError: Unexpected token import

With<EMAIL_ADDRESS>when I use import/exports from ES6 throws exception:
SyntaxError: Unexpected token import
when i run this command:
micro -p 5000 pictures.js
I uninstall this version and install<EMAIL_ADDRESS>then work for me in Node 8.4.0
I wish use the last version of micro in my project. What dou you recommend to resolve this issues?

Micro doesn't transpile your code, you need to manually use Babel if you want to support ESM instead of CJS. I personally recommend you to stay with CJS and Node.js supported features to avoid transpiling.

OK thank you very much. I solved installing<EMAIL_ADDRESS>but I think I will have to use CJS to avoid being in that version


asancore release _merge_controller_handler to make sure memtracker is 0

Proposed changes
Issue Number: close #xxx

run buildall

run buildall


Duplicates handling in miaTime

Some datasets might have replicates for same subject/group per the same time point, as for instance "SilvermanAGutData" dataset has. Should current miaTime methods and upcoming ones be set to detect such cases and handle them accordingly (e.g. discarding, averaging ...)?

Instead of separately dealing with this in every possible function, I would create a utility function that can be used to remove such duplicates. If needed. But not sure if this would make sense in general because the duplicate removal details may depend very much on each particular study.
As a first pass, perhaps just an example in an appropriate place in vignette, mentioning that this can be a problem (subsection perhaps?), and then showing how to deal with such situations and filter out duplicates is enough?

The task here is to add some example showing how to handle duplicate entries in coldata()?
data(SilvermanAGutData)
duplicated_rows <- colData(SilvermanAGutData)[duplicated(colData(SilvermanAGutData)), ]

unique_entries <- !duplicated_rows

tse <- SilvermanAGutData[, unique_indices]

Did you try to run that code? It doesn't seem correct to me (duplicated_rows is DataFrame and not logical vector, yet you are taking its negation ("!"))? And "unique_indices" is not defined in the code (used in last row). Make sure the code examples work before pasting.
Anyways, the most relevant case could be to identify cases where time point is duplicated for a given grouping variable (e.g. subject). Like if subject A has two measurements on day 2 (or time point 42.1). These are potentially probematic cases and sometimes would need to be flagged and/or removed.
We could have a simple flagging function to detect such cases but not sure if this is worth a wrapper.
-> Prepare minimal reproducible example showing how to deal with such case including flagging and then removal?

you'r3 right, there was an oversight in the example.  I was unable to find a dataset with duplicate entries for subjects and timepoints so I am going to create one with an existing dataset.
# Load data
data("hitchip1006")
tse <- hitchip1006

# duplicate data for example
library(mia)
tse2 <- mergeSEs(tse, tse)

# Now there should be multiple entries in tse2 for  "subject" and "time"
# retain unique entries
tse <- tse2[, !duplicated(colData(tse2)[, c("subject", "time")])]

we can use duplicated() against coldata to catch the multiple entries across subjects and timepoints
# use duplicated to identify the duplicates.

duplicated_entries <- duplicated(colData(tse2)[, c("subject", "time")])
flagged_duplicates <- tse2[, duplicated_entries]

Great - though I think we are more interested in picking the non-duplicated set.
Perhaps the example could be simplified a bit into just:
# Flag duplicates (subject has multiples entries in the same time point)
flagged.duplicates <- duplicated(colData(tse2)[, c("subject", "time")])
# Pick the non-duplicated entries
tse2 <- tse2[, !flagged.duplicates]

Hmm sometimes also other variables might be necessary to consider in addition subject and time. For instance, subject + time + bodysite.
I am not sure if it is easy to make any sensible added-value wrapper to flag or remove duplicates so let's keep it like this.
It is said the "SilvermanAGutData" has duplicates on time + subject. If this holds, check if there are examples with this data set in OMA and see if it is sensible (or not) to remove duplicates as processing step.

I think we should also take this into account in our methods. Requiring user to remove data is suboptimal. At least, this could be done in divergence functions.
library(mia)

# Create dummy data
tse <- makeTSE()
assay(tse, "counts", withDimnames = FALSE) <- matrix(rnorm(nrow(tse)*ncol(tse), 0, 1), nrow = nrow(tse), ncol = ncol(tse))
colData(tse)[["group"]] <- c("A", "A", "A", "A")
colData(tse)[["timepoint"]] <- c(0, 0, 1, 1)

Give warning if there are duplicated time points

# Give warning
if( anyDuplicated(colData(tse)[, "timepoint"]) ){
    warning("Duplicated")
}

When reference samples are assigned, we can assign all samples from previous time point. This means that the vector is longer than there are samples (some samples have multiple time points). We extend the TreeSE.
# Add reference samples
reference <- c(NA, NA, "sample1", "sample2", "sample1", "sample2")
names(reference) <- c("sample1", "sample2", "sample3", "sample3", "sample4", "sample4")
tse_mod <- tse[, names(reference)]
tse_mod[["reference"]] <- reference

We can calculate divergence just like before.
# Calculate divergence
colnames(tse_mod) <- make.unique(colnames(tse_mod))
res <- getDivergence(tse_mod, reference = "reference", method = "euclidean")
names(res) <- names(reference)

After calculating divergences, we can summaries them by taking mean or median etc.

# Calculate mean divergence
res <- sapply(unique(names(reference)), function(x){
    mean(res[ names(res) == x ], na.rm = TRUE)
})
colData(tse)[["divergence"]] <- res

Hmm, there is no example in OMA using SilvermanAGutData.
Also the coldata is not straightforward. here are the colnames:
[1] "SampleID"             "BarcodeSequence"      "LinkerPrimerSequence" "PrimerID"             "Project"
 [6] "DAY_ORDER"            "Vessel"               "SampleType"           "Pre_Post_Challenge"   "Normal_Noise_Sample"
[11] "Description"

the only time variable here is DAY_ORDER which is consequently the timepoint. For the subject, it is unclear. Any ideas?

Regarding @TuomasBorman comments:

duplicates are not necessarily about duplicated time but also about duplicated combinations of group(s), time. Time points may be same for many subjects, therefor time can be easily duplicated but this is only an issue if it is duplicated within the same subject. Therefore duplicates should be checked for colData(tse)[, c("group", "time")] rather than just colData(tse)[, c("time")].

Averaging for multiple baseline measurements could be useful sometimes but not sure if it is helpful to implement before someone has a real use case.

On @Daenarys8 comment:

Time field name can be arbitrary, I think this should be defined by the user.

In conclusion, my suggestion is to either just ignore this issue for now and close it, or add a minimal example in miaTime vignette on how to deal with duplicates (perhaps even an example on averaging over samples like Tuomas demonstrated). Open to other suggestions.

A vignette on averaging over samples will be good.
Can you suggest a dataset to use for this example I could prepare/get one which has these duplicates?
@TuomasBorman

It seems that Silverman data in miaTime has duplicated time points for each vessel


Camera location includes nan values.

When I ran the command
『blender/blender --background --python render.py -- --cfg=./configs/render.yaml --dir results/mgpt/debug--Instruct_HumanML3D/samples_2024-03-04-11-42-10 --mode=video』
to render motions to vedio (mp4),
I faced some error about camera location.

And I edited some codes for checking the camera location data, I found the location data are all nan values.
How can I fix it?

Hello,
It seems you're encountering issues with camera location data containing NaN values during rendering. While I haven't come across this specific issue before, it might be related to the data being used for rendering. Have you had a chance to check the .npy files intended for rendering? It's possible the issue lies there.

Hi.
I think there are some outliers in HumanML3D dataset.
Thanks to reply.


Spec failures

https://github.com/relaton/relaton-gb/runs/4515363689?check_suite_focus=true
Due to Net::Timeout on various platforms.

@ronaldtse The http://www.std.gov.cn unavailable from my location:
$ host www.std.gov.cn
Host www.std.gov.cn not found: 2(SERVFAIL)

@ronaldtse VCR cassettes are updated if more than a week passed since the last update. Usually, we run tests locally before pushing the code to GitHub, so GHA doesn't fetch data from sites, but uses VCR cassettes. In this case, the tests were running on GHA and 7 days were passed so the VCR tries to update the cassette. I think because many containers make requests from one location the source server blocks some of them. I've updated the VCR cassettes locally the tests pass now.


Fixes flakey Create_WithPollingTimer Config Server Test

This should fix a thread race condition with this test... Added a latch to wait for the initial request, then proceed the test after that latch signals.

/azp run Steeltoe.All


[Core] aaz: Support callback function for custom instance update when wrapping AAZCommand

Related command

Description

Testing Guide

History Notes

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

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

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

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Core


Ambiguous Unicode characters

My recent series of Unicode pull requests omitted some characters because their proper treatment wasn’t obvious. This issue addresses some of those characters, presents a proposed treatment, and solicits opinions. Anyone can opine, but responses will be especially valued from @kevinbarabash, @edemaine, @xymostech, @sophiebits, @gagern, @kasperpeulen, and @flying-sheep,   If and when we reach agreement, I’ll submit PRs for the characters that we’ve agreed upon.
For each of the following items, I ask that you consider the resolution and either vote thumbs up, or vote thumbs down and state a reason why.

∴ ∵ These two characters obviously map to \therefore and \because. I’ve withheld them until now because there is a conflict as to the proper type of atom. KaTeX symbols.js says they are rel atoms. unicode-math says they are \mathord. I think KaTeX got this one right. They come from the amssymb package, which contains: \DeclareMathSymbol{\therefore} {\mathrel}{AMSa}{"29}.
Resolved: Map ∴ ∵ to KaTeX symbols \therefore and \because respectively.

⋗ ⋖ These two characters obviously map to \gtrdot and \lessdot, but there is again a type conflict. KaTeX symbols.js says they are bin atoms. unicode-math says they are \mathrel. I’’ve never used these symbols, so I don’t have a personal opinion on this one. The symbols come from the amssymb package, which contains: \DeclareMathSymbol{\gtrdot} {\mathbin}{AMSb}{"6D}
Resolved: Map ⋗ ⋖ to KaTeX symbols \gtrdot and \lessdot respectively.

∣ This character is U+2223, DIVIDES. I’ve withheld it until now only because it looks just like |, U+007C. So the question here is do we include any confusables at all. If we do, then the path forward is reasonably clear. unicode-math maps this character to \mid, the vertical line with rel spacing, useful for set builder notation. John Cook maps it the same way, as does Microsoft Word.
Resolved: Map ∣ to KaTeX symbol \mid.

That’s all I have prepared for now. More to come later.

I would have expected U+2223 (DIVIDES) to resolve to \divides, though I guess that's only defined in a somewhat obscure package (mathabx). I think \mvert which is equivalent to \mid is the typical way to denote the divides operator in AMSMath.  (FWIW, mathabx's \divides is a thinner vertical line with somewhat larger space than \mid.)

The type conflicts are weird -- why does unicode-math redefine the type of existing characters?  I think it makes sense for us to follow the aliasing, but not redefine the types.  I find it weird that \gtrdot and \lessdot are \mathbin not \mathrel, but if AMS defines them that way, I'm fine with it.

Well:

⁃ hyphen-bullet
‐ hyphen

hyphen-minus (ASCII)

− minus
– en-dash
— em-dash

are all confusable, and those are the most common ones!


Is it possible to use this strong baseline on binding affinity prediction?

Nice work!
I am interested in binding affinity prediction on virtual screening. Can I utilize this model to do that?
Thanks,
Josie

Hi Josie, you could definitely use a modified version of this code to predict binding affinity. A couple of things to note:

You would want to use gnina's CNNaffinity output to compare affinity across ligands, rather than the CNNscore output that is intended for ranking poses within a ligand.
The code here isn't really optimized for speed. If you want to screen large libraries, you could consider using something like Uni-dock that can take advantage of a GPU to greatly speed up pose sampling (gnina only uses the GPU for scoring poses after they are sampled), and then use gnina to rank the generated poses.

It is very helpful! Thank you so much.


Add "Possibly related issues" to existing issue pages

From https://github.com/sindresorhus/refined-github/pull/1188#issuecomment-376210202:
It might be useful to have the "Possibly related issues" list available when reading (in addition to composing) an issue, to help maintainers quickly find duplicates (or just related issues that may be relevant to discussion).
@sindresorhus notes:

I think we should let this feature mature for a bit first though. I'm sure it could be smarter, and getting false-positives is a lot more annoying when reading issues than when writing.

I doubt we can have reasonable “related issues” list by just querying what we have on the fly (most likely the title). It may work when creating an issue since the intent there is to find duplicates, but related is different.
We should ask Algolia to do that, they already have an autocomplete plug-in for GitHub search and they might make more connections than we could with a couple API calls.

GitHub just implemented showing related issues (https://github.com/sindresorhus/refined-github/issues/1610) when creating a new issue, so I think the best way forward is to submit feedback to them that it would also be useful to show related issues on existing issues too.
You can submit feedback directly on the new feature after activating it or sending an email to GitHub<EMAIL_ADDRESS>

I don't think we can offer good matches here, "related" needs some sort of "best match" algorithm that we can't offer.


[$250] Error message displayed as policy instead of workspace

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.56-7
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught on HybridApp, is this reproducible on New Expensify Standalone?:
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @quinthar
Slack conversation (hyperlinked to channel name): #expensify-bugs
Action Performed:
Prerequisite:

Create a group in a domain
Add a member to the group
Restrict workspace creation for the group

Login as a member of a restricted group
Click settings > Click +workspace

Expected Result:
Error message displayed regarding restriction for workspace creation
Actual Result:
Error message displayed as Your admin has restricted your group from creating new policies
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Standalone
[ ] Android: HybridApp
[ ] Android: mWeb Chrome
[ ] iOS: Standalone
[ ] iOS: HybridApp
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~021853514819272851093
Upwork Job ID:<PHONE_NUMBER>272851093
Last Price Increase: 2024-11-04

Issue OwnerCurrent Issue Owner: @jjcoffee

Proposal
Please re-state the problem that we are trying to solve in this issue
Error message displayed as Your admin has restricted your group from creating new policies.
What is the root cause of that problem?
Note: I was able to reproduce the issue by adding a custom domain (that I own) via OD as instructed in the documentation here -> Claim And Verify A Domain.
The error message Your admin has restricted your group from creating new policies. shown on the domain member's group side comes from the BE (see below) when the CreateWorkspace API call fails due to the Restrict expense workspace creation/removal being Enabled in OD.

What changes do you think we should make in order to solve the problem?
From what I could gather from the #expensify-bugs Slack discussion seems like the Expected result is:

Please update this error (and review all errors) to not mention "policies".  Rather, they are "workspaces".

Therefore the main solution I'm going to propose here is for BE to correct the error message to something like:
Your admin has restricted your group from creating new workspaces.
What alternative solutions did you explore? (Optional)
As an alternative solution (FE based) we could perform a string match of the BE error and if matching Your admin has restricted your group from creating new policies. -> replace it with a new en / es translated error:
Your admin has restricted your group from creating new workspaces.
The code would look something like this:

[!note]
This is pseudocode-ish, the logic would be adjusted to use translated() and the error string constant will be added to CONST.

In WorkspaceInitialPage.tsx before return add the following logic:
    const customTranslation = 'Your admin has restricted your group from creating new workspaces.';

    const translatedErrors = Object.fromEntries(
        Object.entries(policy?.errors ?? {}).map(([key, value]) => [key, value === 'Your admin has restricted your group from creating new policies.' ? customTranslation : value]),
    );

and the UI:
https://github.com/user-attachments/assets/4d1817bc-b548-4d7b-8937-85f3c0ee3b7d

Agree with @ikevin127 that this is a BE issue. We could fix it on the FE for a quick fix if needed, but otherwise this needs to be internal.
:ribbon::eyes::ribbon: C+ reviewed

got a pr up here https://github.com/Expensify/App/pull/51630/

Will test on Monday.


Length of longest subarray with sum K

🚀 Feature
C++ Program to find length of longest subarray with sum K.
Have you read the Contributing Guidelines on Pull Requests?
Yes
Motivation
Interesting application of hash.
Pitch
Used in many competitive programming problems

Please assign this to me

@shraddhavp Can I go ahead with this? I have no pending issues.

@shraddhavp Can I go ahead with this? I have no pending issues.

sure

sure

@shraddhavp @balapriyac  Please assign me this, I'll do it using Java

@shraddhavp @balapriyac  Please assign me this, I'll do it using Java

May I implement the same in Java?

May I implement the same in Java?

@iamvs-2002  you can go ahead with C++

@iamvs-2002  you can go ahead with C++

@shraddhavp  @atarax665 can i do this in CPP?

@shraddhavp  @atarax665 can i do this in CPP?

@iamvs-2002 you can go ahead with C++

Kindly unassign me as I am not much comfortable with Cpp. You may assign the same to @thevivekpande
Thanks.

@iamvs-2002 you can go ahead with C++

Kindly unassign me as I am not much comfortable with Cpp. You may assign the same to @thevivekpande
Thanks.

@shraddhavp @atarax665 can i do this in CPP?

You can go ahead with CPP. :+1:

@shraddhavp @atarax665 can i do this in CPP?

You can go ahead with CPP. :+1:

May I implement this in python?


Link to bins in readme is broken

The link to the bins in the readme file for macOS is broken. Could you reupload? Thanks.

Hi sorry Iost files a while ago and I can't build XPwn on newer macOS

No worries


PHP 7.2 + QA Tools (follow up #2, #4, #5, #6)

Resolves #8
Closes #2
Closes #4
Closes #5
Closes #6

Thanks, @webimpress


Add ValiDAO endpoints, seed node

Add ValiDAO seeds + rpcs

Please use an appropriate PR title

Apologies, fixed now!


chore: jsonfmt datalake-store

Ran jsonfmt -w "specification/datalake-store/**/*.json"

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-python

Automation for azure-sdk-for-java

Automation for azure-sdk-for-go

Automation for azure-sdk-for-js

Can one of the admins verify this patch?


getCookies()

Does the getCookies() function show all Cookies loaded by Chrome? HTTP & JavaScript, main frame and iframes, 1st party and 3rd party?
I'm seeing far fewer Cookies than when using the actual Chrome browser.
If you visit any large e-commerce store or major website, it'll drop 100+ cookies, many from 3rd party domains for ad retargeting etc. Yet getCookies() returns no more than 30 cookies. I've even set wait() to 60 seconds and still don't get the full picture.
const HeadlessChrome = require('simple-headless-chrome')
const browser = new HeadlessChrome({
  headless: true
})
async function navigateWebsite () {
  try {
    await browser.init()
    const mainTab = await browser.newTab({ privateTab: false })
    await mainTab.goTo('http://www.marksandspencer.com/')
    await mainTab.wait(60000)
    await console.log( await mainTab.getCookies() )
    await browser.close()
  } catch (err) {
    console.log('ERROR!', err)
  }
}
navigateWebsite()

The code above gives me 24 cookies from .marksandspencer.com, .gwallet.com, .bluekai.com, .impdesk.com and .demdex.net.
But using regular Chrome gives me 127 cookies from .addthis.com, .adnxs.com, .adsrvr.org, .bidswitch.net, .bluekai.com, .cw.addthis.com, .demdex.net, .doubleclick.net, .dpm.demdex.net, .edrcdn.com, .edrcode.com, .facebook.com, .flashtalking.com, .google.co.uk, .google.com, .gwallet.com, .impdesk.com, .marksandspencer.com, .pixel.rubiconproject.com, .po.st, .rlcdn.com, .rubiconproject.com, .scorecardresearch.com, .univide.com, dpm.demdex.net, pixel.rubiconproject.com, www.google.co.uk and www.google.com.
Am I missing something?

Hi, I assume that you are watching your browser, and when you visit through headless-chrome
it creates a new profile, try to see the same site only through incognito mode? you should return the same number
I'm not saying anything - it's just my guess why it could be


chore(Integral/CircleTransform): golf

Motivated by @Ruben-VandeVelde's leanprover-community/mathlib#15206

bors r+


Excluded directories are still scanned on every run

Ludusavi version
v0.27.0
Operating system
Windows
Installation method
Other
Description
Not sure if this is intentional, but despite toggling off certain large directories on a couple of games, they still get scanned in their entirety during both previews and actual backups.
This makes all-game scans rather slow (about 12 minutes to preview) because of these huge excluded directories.  For exaple, Tabletop Simulator stores cached mod files in ~/Documents/My Games/Tabletop Simulator/Mods (currently ~14GB, ~9000 files), alongside saves and other files I do want to keep.  I have the Mods directory excluded, but almost the entire scan duration was in part digging through that directory.
Logs
📎 ludusavi_rCURRENT.log
Some progress snippets (the first ~45k proceeded at a regular pace, about 1k/sec, presumably those not installed):
Scan (00:00:45) █████████████████████████████████████████████████████░ Games: 47648 / 48363
Scan (00:01:16) █████████████████████████████████████████████████████░ Games: 48304 / 48363
Scan (00:03:05) █████████████████████████████████████████████████████░ Games: 48304 / 48363
Scan (00:05:36) █████████████████████████████████████████████████████░ Games: 48362 / 48363
Scan (00:11:20) █████████████████████████████████████████████████████░ Games: 48362 / 48363

Hi! This is the intended behavior when you uncheck a file/folder in the list under a game. However, if you go to the "other" screen and add ~/Documents/My Games/Tabletop Simulator/Mods to the "backup exclusions" list, then it won't be scanned at all :)

Noted, thanks -- scan time now down to 2 minutes from cold with a few well-placed excludes.  🙂  (Mainly one game with a lot of small files that I do want to keep backed-up, and it seems a lot faster on subsequent scans.)


Question: Background animation

First, it's a superb theme!
and question:  How you got that background twinkling stars animation?
initially i thought of a vector 2px wide white dot and add it as a overlay to current background with repeat turned on and transform it and change it's location on selected keyframes but on your animations
problem with my approach is:
no control over the dots (i really love how decently they mend with bg)
and random actions (which is amazing really)

err got it!


Add a CustomResource details view

frontend: Fix hook usage in EditorDialog
frontend: Fix listing objects in CRDs
frontend: Add a dedicated CustomResource details view

fixes #365

Wrong branch to apply to. So I closed it.


chore: prune state_db manually

Pruning state_db in a light node requires deleting very large number of db entries in the state_db which can take a long time. Running this synchronously while running a node makes this even slower and node is unable to progress while doing this. Running it asynchronously also slows done the node and causes some crashes that are still being investigated. It is questionable it is feasible and practical to do this while node is running.
This probably would not be a problem is state_db is not growing at the rate it is now.
This change will make state_db prune run only manually on cmd line argument prune-state-db.
Deleting old period_data is fast so this still works in a light node same as before with data being deleted while running the node.

prnet cleaned-up successfully


Make a dedicated ExchangeRate type

In the same vein as #357, the Price type should have it's own type and (IMHO) be renamed to something more expressive such as ExchangeRate. The reason for this falls out of attempting to do basic algebra with the current Price type:
pub struct Order {
    ...
    pub price: Usd,

If you want to simply compute a value such as amount_btc = amount_usd / price this gets strange quickly, as amount_usd is (correctly) represented as Usd while Price is magically known to actually be Usd/Btc and an implementation of Div needs to reflect this in order to get the units correct. But then new problems arise if we want to compute, say, half the current exchange rate as division now gives us a value in BTC...
Proposal is to thus create a new type ExchangeRate that properly encapsulates that Price is not, in fact Usd.

Extending this a bit to cover more type definitions, taking a bite out of #357 at the same time.


SQL Error: ОШИБКА:  нет прав для изменения параметра "session_replication_role"

Hello, Maxim!
There is problem (in subject) that I can't understand.
Also I can't find default mechanism of authentication without password (under 'postgres' user)
Here is listing:
root@someserver:~# perl pgcompacttable.pl -U someuser -W somepass -d somedb -t history -v
[Fri Aug 18 09:39:02 2017] (somedb) Connecting to database
[Fri Aug 18 09:39:02 2017] (somedb) Postgress backend pid: 8163
Wide character in print at pgcompacttable.pl line 187.
[Fri Aug 18 09:39:02 2017] (somedb) SQL Error: ОШИБКА:  нет прав для изменения параметра "session_replication_role"
[Fri Aug 18 09:39:02 2017] (somedb) Database handling interrupt.
[Fri Aug 18 09:39:02 2017] (somedb) Disconnecting from database
[Fri Aug 18 09:39:02 2017] Processing incomplete: 1 databases left.
Best regards,
Vladimir

There is a method to authenticate without password using -h /path/to/unix/socket/dir (usually /tmp or somthing like /var/run/postgresql) under postgres user. Not very convenient, I agree.
For changing session_replication_role you have to be superuser - this setting is used to disable all triggers in session so DB won't have to do additional (and potentially dangerous) work when pgcompacttable performing fake updates.

Please add next to your code, to prevent 'Wide character in print at' error message.

#!/usr/bin/perl
use strict;
use utf8;
binmode(STDOUT,':utf8');

Alexius2,
Explain please what do you mean here:
For changing session_replication_role you have to be superuser
Because I run my 'perl pgcompacttable.pl.....' with root. :)
My first message was "....root@someserver:~#...."

default superuser in db is postgres. so to connect as superuser need to switch to postgres OS user and connect via unix socket or set password to postgres user and connect with -U postgres or set authentication method to trust in pg_hba if it's local/test machine.

Dear Alexius2,
Thanks a lot, it works for me!
IMHO, this hint should be written in --man. (about -h parameter and socket path)
also I was needed to enable pgstattuple, and it was first time I faced with, so please AUTHOR, if you're reading this - add some more info about how to use.
Some kind like this:
If you're not sure about pgstattuple was installed do this:
su - postgres
psql
\c
create extension pgstattuple;
Best regards!
Vladimir


[uss_qualifier] add standard references to the isa_validation documentation

Catching up on some clean up tasks

(this looks good; I just didn't want to merge until it's marked ready for review in case there was something coming that I didn't know about)


docs(3.0.0.): Add CNAME file for vue-multiselect.js.org

Add custom domain for docs
Fixes https://github.com/shentao/vue-multiselect/issues/1762

@mattelen please have a look.


News112 Bitcoin Core PRs 14582/19473

WIP first draft -- might be a bit long. Will re-review tomorrow.

Jon, I think you should be able to push your commits directly to Dave's branch.

GitHub responds with:
ERROR: Permission to bitcoinops/bitcoinops.github.io.git denied to jonatack.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Perhaps the wrong email was added? I have a gmail as well but<EMAIL_ADDRESS>should be the right one.

Found the invitation email; will push directly to the branch.


Uniform font size for plugins using right side Pane?

Describe the solution you'd like-
On my iPad, I have four plugins that can occupy the Right Side Pane when Pined (obviously one at a time😉). Three (3) of them honor the UI size I have chosen in Minimal’s Settings. The 4th does not! Is there a way that Minimal can control this ‘outlaw’. It would seem more advantageous to me as the ‘end’ user, if Obsidian, CodeMirror or whatever would give the Theme developer jurisdiction over these things and NOT the plugin Dev.

Which plugin? Likely the plugin is adding its own styles that are overriding Obsidian’s default font size.

Obsidian TODO-
https://github.com/larslockefeer/obsidian-plugin-todo


implement isStable(...)

Implement a function to determine if a given matching set is stable or not.
basically a function on utils.cs:
static bool isStable(int[,] APrefs, int[,] BPrefs, int[] fiancee);

To add information about wether a matching is stable or not, as described on wikipedia:
We are looking at 2 matchings of a matching set, namely the matching of A1 and B1 and the matching of A2 and B2. If A1 would prefer B2 over B1, and B2 would prefer A1 over A2 (so they would prefer each other instead of the ones they are currently matched with), both the matchings we are looking at are not stable.
Therefore a matching set is called not stable, if there exists any matching in it which is not stable as described above. In constrast, a matching set is stable, if none of its matchings are not stable.


Let the managed reconciler late init CloudSQL instances

Description of your changes

See https://github.com/crossplane/crossplane-runtime/pull/216 for context.
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested

@negz I believe this has been handled by the changes you made to crossplane-runtime, are we good to close this out?


ENH: avoid unnecessary array copies in matrix product (again)

Reference issue
N/A
What does this implement/fix?
In #11478, M*N was still passed as maxval to get_index_dtype, which
limited the optimization.
Additional information

Amends https://github.com/scipy/scipy/pull/11478

Note that the memory profiling results I provided in https://github.com/scipy/scipy/pull/11478 correspond to this version. I'm sorry for the confusion.

Yup, makes sense. Merged.


UseSignalR is deprecated

Please update to use UseEndpoints instead

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

ID: d0da2144-3730-f8ef-1d16-a89f11fd6198
Version Independent ID: 6d8f5bc8-8f5c-ba13-b7f2-0366eac46f81
Content: Authentication and authorization in ASP.NET Core SignalR
Content Source: aspnetcore/signalr/authn-and-authz.md
Product: aspnet-core
Technology: aspnetcore-signalr
GitHub Login: @bradygaster
Microsoft Alias: bradyg

Are you looking at the 2.2 or 2.1 versioned docs? As far as I can see the 3.0 and 3.1 docs are using UseEndpoints.

Thanks for contacting us. We believe that the question you've raised have been answered. If you still feel a need to continue the discussion, feel free to reopen it and add your comments.

The meta-data shows he was looking at  ?view=aspnetcore-3.1

Not sure where you're seeing that.  I'm on the 3.1 docs and they still say UseSignalR.

Not sure where you're seeing that. I'm on the 3.1 docs and they still say UseSignalR.

Where?

Ugh, sorry.  I was confounding AddSignalR and UseSignalR.  No more coding with a head cold.


Feature request: Support shipping mode 'multiple'

Support for shipping mode multiple
Deployment
My deployment is on:

AWS Lambda

Expected behaviour
The mollie extension creates mollie line items, one for each commercetools cart line item based on the corresponding lineItem.taxRate. Shipping mode multiple allows us to assign multiple shipping methods to different countries to each line item resulting in different tax rates. Thus, we may have to split the single cart line item to one mollie item for each shipping with the quantity assigned via lineItem.shippingDetails.target.
see function makeMollieLineCustom in createOrder.ts
Actual behaviour
Right now, the system always uses the customLine.taxRate (which may not be set)
export function makeMollieLineCustom(customLine: CTCustomLineItem, locale: string): OrderLine {
    const lineItem = {
        ...
        vatRate: (customLine.taxRate.amount * 100).toFixed(2),
        ...
    };
    ...
    return lineItem as OrderLine;
}

Attempted fixes
In our case, we have one shipping method per cart item with one shipping address for the whole cart. This means, we only need one mollie line item per cart line item, but the required tax rate is stored in customLine.perMethodTaxRate and therefore we only had to change the taxRateAmount calculation accordingly:
export function makeMollieLineCustom(customLine: CTCustomLineItem, locale: string): OrderLine {
    const taxRateAmount = customLine.taxRate?.amount
        ?? customLine.perMethodTaxRate?.find((taxRate) => typeof taxRate !== 'undefined')?.taxRate?.amount
        ?? (customLine.taxedPrice.totalTax.centAmount ?? 0) / (customLine.taxedPrice.totalNet.centAmount);

    const lineItem = {
        ...
        vatRate: (taxRateAmount * 100).toFixed(2),
        ...
    };
    ...
    return lineItem as OrderLine;
}

We encountered errors, where we assume that these are connected to the usage of shipping mode multiple as well:
We have a method that checks a cart for it's "completeness" - whether all relevant information is included.
We invoke the method when using triggerPayment as well as before converting the cart into an order.
We had cases where the method would find an incomplete cart after the payment process - though the cart was complete before the payment process was triggered.
That means cart data was changed in the payment process in a way that makes it "incomplete".
Looking at these carts, we assume that users changed their address data in Paypal. That then led to a cart update that does not work as expected (or not at all) with shipping mode multiple.
This is impossible to reproduce in staging, since the staging mollie-paypal page would not offer any address changes.
FYI @MWolosinShopmacher (correct me if I am wrong or add information if I am missing something)


Clicking on scan changes the language of the app

Steps to reproduce

My device is in English.
My app is in English.
I change the language to French. The home and the bottom bar appears in French.
I click on Scan.
The scan view and the bottom bar appear in English.

fixed

testing the branch


EntityClientEndpoint.didCloseUnexpectedly should be removed

The method org.terracotta.entity.EntityClientEndpoint#didCloseUnexpectedly seems like an internal one that no user of the client Entity API should ever invoke.
If that is confirmed, it should disappear from this interface and only exist as an internal one (implementation or interface) reserved for platform usage.

This looks correct.  Will fix.

Presumably getExtendedReconnectData should be removed too.

yes.  i think these methods helped unify the vision for passthrough and core.  they are no longer needed as they are implementation details


Doesn't check for ! adjacent to variable name

As the code standard says:
Place unary operators (!, --, ...) adjacent to the affected variable;
This isn't currently detected.

hi @lewilewilewi
you're right, there currently are several sniffs missing from this standard as listed here. we'll be working on adding as much of these as possible; feel free to contribute!


Provide Valid Lambda Function Memory Values for use in Parameters

Lambda functions can only have certain amounts of memory in multiples of 64
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize
This commit allows MEMORY_VALUES to be used against Parameters' AllowedValues attribute, so that the Cloudformation web console form has a drop down selection of memory values in the same way it currently is in the Lambda web console.
I've updated the Lambda example to demonstrate.
I'm aware this could become unwieldy if AWS increase the amounts of memory available to Lambda functions, but if that occurs, this could be reverted or compared with any UI changes in the Lambda web console.

Thanks @ink-adavison - do you think it'd be worth updating the validator for https://github.com/cloudtools/troposphere/blob/master/troposphere/awslambda.py#L53 ?

Like this? I've tested it against AWS helper functions (Ref, If), valid number strings, invalid number strings, actual text strings, booleans, valid and invalid numbers. Looks like it works as intended.

Sorry for the delay @ink-adavison - this looks great.  There are conflicts now - can you fix those and we'll merge ASAP?

ack I really messed that up, let me revert a load of this and try again

Sorry, this is so messed up I'm just going to nuke it and start again with a new pull request.


Conceptual question on longshot

Hi,
I am new to SNV calling and I was wondering if it makes sense to use longshot on nanopore direct cDNA data. I was also wondering if the tool can be used to perform isoform-level phasing.
Thanks,
Sowmya

Longshot could work on nanopore RNA reads. However, it will provide phasing of the two chromosomes and not isoform-level phasing.

Thanks @vibansal!
Following up on this, I have aligned my reads to a haploid human genome (GENCODE release 46). Can I perform Haplotyping from this or do I need to align my reads to a diploid human genome assembly in order to do that?

Longshot works with a haploid reference genome

Thanks @vibansal , as a follow up, would this work on reads aligned to a transcriptome instead of genome? I.e., if you wanted to phase isoforms instead of genes? Thanks!
Sowmya


Binaries of gfortran for windows no longer available for download

I am referring to the link that it is given in the quickstart tutorial hello_world.md.
Should we replace it with something else, eg. http://mingw-w64.org?

I think we should steer the Windows support toward WSL.

My apologies what does WSL refer to?
I am happy to use any type of installation of the Gfortran for Windows,
however, I just found the link we have now was easiest for Windows users, I
myself.
But I am happy to try others, as long as they are easy for the user.
Just my point of view.
On Wed, 19 Aug 2020 at 22:33, Milan Curcic<EMAIL_ADDRESS>wrote:

I think we should steer the Windows support toward WSL.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fortran-lang/fortran-lang.org/issues/134#issuecomment-676669822,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AM7MLHBBY4DOXWIRYF5OPMTSBQZIVANCNFSM4QFKDMOQ
.

@GS76 WSL refers to Windows Subsystem for Linux, in short, you install a Linux distribution directly onto your Windows 10 (no virtual machine). This is an official Microsoft feature (not a 3rd party hack). Although it is not, yet, as robust as a clean Linux installation, and it lucks a GUI, you only get a bash, it is still a viable solution.
@milancurcic I believe we need a new book about how to set up a Fortran environment in all major OS (including a list of the most common IDEs/Text-editors and how to configure them). From my experience with new Fortran users (from r/fortran and colleagues) they are usually Windows-only users with little programming experience. To push everyone toward WSL - a command-line-only Linux could bring a lot of frustration.
For the moment we should just replace this link with something else that works. We could mention both MinGW and WSL and later add a link to a new book that will explain how to set them up.

@smeskos Thank you for the explanation. I will try it out. Your comments
below with regards Windows-only users with little programming experience is
100% accurate. I am in that category. I installed Linux about a 2 months
ago as I have always heard how much quicker it is than Windows. Anyway,
once up and running, I now understand what all the fuss is about and
compilers such as GCC and Gfortran are pre-installed, not necessarily the
correct version, but I can understand why programmers would like the
environment. I agree that we would need to show a complete installation
procedure, with WSL or whichever is most reliable and is guaranteed to be
the latest Gfortran.
On Thu, 20 Aug 2020 at 09:20, smeskos<EMAIL_ADDRESS>wrote:

@GS76 https://github.com/GS76 WSL refers to Windows Subsystem for
Linux, in short, you install a Linux distribution directly onto your
Windows 10 (no virtual machine). This is an official Microsoft feature (not
a 3rd party hack). Although it is not, yet, as robust as a clean Linux
installation, and it lucks a GUI, you only get a bash, it is still a viable
solution.
@milancurcic https://github.com/milancurcic I believe we need a new
book about how to set up a Fortran environment in all major OS (including a
list of the most common IDEs/Text-editors and how to configure them). From
my experience with new Fortran users (from r/fortran and colleagues) they
are usually Windows-only users with little programming experience. To push
everyone toward WSL - a command-line-only Linux could bring a lot of
frustration.
For the moment we should just replace this link with something else that
works. We could mention both MinGW and WSL and later add a link to a new
book that will explain how to set them up.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fortran-lang/fortran-lang.org/issues/134#issuecomment-677408052,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AM7MLHH5FSKWID3VXXTNDETSBTFELANCNFSM4QFKDMOQ
.

It is a shame these downloads stopped working - they offered a very easy install and packed in some useful extras like OpenMP and make.

I believe we need a new book about how to set up a Fortran environment in all major OS (including a list of the most common IDEs/Text-editors and how to configure them).

Yes this idea has been discussed and is planned - if you are willing to make a start on this, that would be great!
Ideally this mini-book would present the main options available for Windows, their respective advantages/disadvantages, and instructions for each.

I think we should steer the Windows support toward WSL.

The main disadvantage of WSL is that you need to use cross-compilation to compile native Windows binaries, which is a common reason for needing Windows support, but I agree it is now a good solution for those comfortable with Linux command line.

From my experience with new Fortran users (from r/fortran and colleagues) they are usually Windows-only users with little programming experience. To push everyone toward WSL - a command-line-only Linux could bring a lot of frustration.

Very true, but I don't know of many easy GUI setups for Fortran. I used Geany on Windows when I was learning because it supports Fortran, but you still need to install the compiler yourself I think.

Looks like the download links are working again. We still have the problem of relying on this third-party site; a possible solution could be to setup a mirror.

I checked, Geany does not install Gfortran when installed.
On Thu, 20 Aug 2020 at 16:04, Laurence Kedward<EMAIL_ADDRESS>wrote:

Looks like the download links are working again. We still have the problem
of relying on this third-party site; a possible solution could be to setup
a mirror.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fortran-lang/fortran-lang.org/issues/134#issuecomment-677686135,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AM7MLHDUTK4SMJODMMJAUX3SBUUNPANCNFSM4QFKDMOQ
.

Yes this idea has been discussed and is planned - if you are willing to make a start on this, that would be great!

I am, I will start today and will commit a PR as soon as I have a first draft.


Error build for iOS

Hello!
I have been trying to build for iOS this whole day without success unfortunately.
Tried both the stable and beta channel.
The error I get is the below:
The Swift pod admob_flutter depends upon FirebaseCore, FirebaseInstanceID, GoogleUtilities, and nanopb, which do not define modules.
To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set
use_modular_headers! globally in your Podfile, or specify :modular_headers => true for particular dependencies.
/usr/local/Cellar/cocoapods/1.5.3_1/libexec/gems/cocoapods-1.5.3/lib/cocoapods/installer/xcode/target_validator.rb:135:in
verify_swift_pods_have_module_dependencies'     /usr/local/Cellar/cocoapods/1.5.3_1/libexec/gems/cocoapods-1.5.3/lib/cocoapods/installer/xcode/target_validator.rb:38:in validate!'
/usr/local/Cellar/cocoapods/1.5.3_1/libexec/gems/cocoapods-1.5.3/lib/cocoapods/installer.rb:415:in validate_targets'     /usr/local/Cellar/cocoapods/1.5.3_1/libexec/gems/cocoapods-1.5.3/lib/cocoapods/installer.rb:118:in install!'
/usr/local/Cellar/cocoapods/1.5.3_1/libexec/gems/cocoapods-1.5.3/lib/cocoapods/command/install.rb:41:in run'     /usr/local/Cellar/cocoapods/1.5.3_1/libexec/gems/claide-1.0.2/lib/claide/command.rb:334:in run'
/usr/local/Cellar/cocoapods/1.5.3_1/libexec/gems/cocoapods-1.5.3/lib/cocoapods/command.rb:52:in run'     /usr/local/Cellar/cocoapods/1.5.3_1/libexec/gems/cocoapods-1.5.3/bin/pod:55:in <top (required)>'
/usr/local/Cellar/cocoapods/1.5.3_1/libexec/bin/pod:22:in load'     /usr/local/Cellar/cocoapods/1.5.3_1/libexec/bin/pod:22:in '
I have tried the other firebase_admob plugin and get no issues when building with it.
When I add use_modular_headers! or use_frameworks! inside the Podfile the build goes a little bit further but still fails later. Am I supposed to have use_frameworks! or something in the podfile or not in order to use this plugin?
Adding my current podfile below incase it can help:
platform :ios, '9.0'
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
project 'Runner', {
'Debug' => :debug,
'Profile' => :release,
'Release' => :release,
}
pod 'Firebase/Core'
def parse_KV_file(file, separator='=')
file_abs_path = File.expand_path(file)
if !File.exists? file_abs_path
return [];
end
pods_ary = []
skip_line_start_symbols = ["#", "/"]
File.foreach(file_abs_path) { |line|
next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
plugin = line.split(pattern=separator)
if plugin.length == 2
podname = plugin[0].strip()
path = plugin[1].strip()
podpath = File.expand_path("#{path}", file_abs_path)
pods_ary.push({:name => podname, :path => podpath});
else
puts "Invalid plugin specification: #{line}"
end
}
return pods_ary
end
target 'Runner' do
system('rm -rf .symlinks')
system('mkdir -p .symlinks/plugins')
generated_xcode_build_settings = parse_KV_file('./Flutter/Generated.xcconfig')
if generated_xcode_build_settings.empty?
puts "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter packages get is executed first."
end
generated_xcode_build_settings.map { |p|
if p[:name] == 'FLUTTER_FRAMEWORK_DIR'
symlink = File.join('.symlinks', 'flutter')
File.symlink(File.dirname(p[:path]), symlink)
pod 'Flutter', :path => File.join(symlink, File.basename(p[:path]))
end
}
plugin_pods = parse_KV_file('../.flutter-plugins')
plugin_pods.map { |p|
symlink = File.join('.symlinks', 'plugins', p[:name])
File.symlink(p[:path], symlink)
pod p[:name], :path => File.join(symlink, 'ios')
}
end
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ENABLE_BITCODE'] = 'NO'
end
end
end
And my pubspec.yaml dependencies incase it can help
dependencies:
flutter:
sdk: flutter
css_colors: ^1.0.2
http: ^0.12.0+2
path_provider: ^1.1.0
firebase_messaging: ^5.0.2
firebase_core: ^0.4.0+5
firebase_database: ^3.0.2
shared_preferences: ^0.5.3+1
device_info: ^0.4.0+1
uuid: ^2.0.0
camera: ^0.5.0
flutter_secure_storage: ^3.2.1+1
flutter_native_image: ^0.0.4
flutter_staggered_grid_view: ^0.2.7
connectivity: ^0.4.3+1
flushbar: ^1.7.0
launch_review: ^2.0.0
admob_flutter: ^0.3.1
Does anyone have anyone know what might be causing this issue, any help or input at all is very much apprecited, thanks!
/Mattias

I'm getting the same issue as well

Hi, same for me, no one found a workaround ?
May we disable the plugin for the iOS platform ?


Informed Consent should be uploaded as the (new) Input Data Type

NOTE - now when informed consent is to be uploaded as participant input data, this should be added to the study protocol as a piece of "expected" participant data. This is done like this:
      // add informed consent as expected participant data for the "participant" role
      protocol?.addExpectedParticipantData(ExpectedParticipantData(
          attribute: ParticipantAttribute(inputDataType: InformedConsentInput.type),
          assignedTo: AssignedTo(roleNames: {participant})));


Compiling agent/index.ts... agent/SwiftRuntime.ts:4:37 - error TS2314: Generic type 'NativeFunction<RetType, ArgTypes>' requires 2 type argument(s).

Compiling agent/index.ts...
agent/SwiftRuntime.ts:4:37 - error TS2314: Generic type 'NativeFunction<RetType, ArgTypes>' requires 2 type argument(s).

I am facing same problem, were u able to fix this error?


[ptr] Move CI to 3.8 offical + nightly

Summary:

Add a Integration run to 3.8 as we now want to support it officially
Block on 3.8 fails
Add a nightly so we can squash issues sooner

Test Plan:

This is the diff to run test on my Python versions

Issue: N/A

Did ask for rough timeframe via a LibCST issue: https://github.com/Instagram/LibCST/issues/122


embed-gist-via-iframe: Cannot read properties of undefined (reading 'cloneNode')

Description
TypeError: Cannot read properties of undefined (reading 'cloneNode')
    at init (chrome-extension://hlepfoohegkhhmjieoechaddaejaokhf/assets/features/embed-gist-via-iframe.js:9:40)
    at async chrome-extension://hlepfoohegkhhmjieoechaddaejaokhf/assets/feature-manager.js:186:14

How to replicate the issue + URL
https://gist.github.com/fregante/5b239118cd2aaf001b0d33d54166cd95
Extension version
24.8.30
Browser(s) used
Version 127.0.6533.72 (Official Build) (64-bit) on Ubuntu 22.04
Token ⚠

[X] I set a token in the options page. I understand that some features require a token to work.

Works for me in Safari, v24.8.20, but not in Chrome, v24.8.30 (no console errors though)


Test for lazy linking of UDF/UDTFs

Fix #186

Closing this since the issue is related to C++ UDFs


Formatter error with invalid escape sequence

I have a toml file with this part

[[Contents]]
Sid = 2073540
Path = "T:\en"
Title ="some string"

Obviously \e is an invalid escape sequence. Then the formatter will do like this

[[Contents]]
Path = "T:\en"Sid = 2073540
Title = "some string"

Here's another example

[[Contents]]
Path = "T:\en"
Title ="BlueLock"
ScriptRegex = ".pdf"

[[Contents]]
Path = "T:\en"
ScriptRegex = ".pdf"Title = "BlueLock"

Thanks for the bug report! I am able to reproduce and this is a good example that LSP should not format in case of errors. I'm closing as a duplicate of #446 and will follow up there.


I can't add new css properties for Direction component,

the Direction Property was not working,

Duplicate issue


Add NTP sample

Code sample showing:

how to create and update NTP instances (class 4)
how to create embed URLs using ticket codes

missing something?
$ node samples/NtpSample.js
NEW NTP QOTPSq4aBkiGvjN
CODES [
  { token: '2GDq6F', user_id: 'iusr2cAqH2VYUZLtNFVebL1Mtwn3dT5b' },
  { token: 'WiwTET', user_id: 'iusr2ZtYebWKEhR4KQedXjzW3rWwYmp7' }
]
EMBED URLS [
  'https://embed.v3.contentfabric.io/?p=&net=demo&oid=iq__2dZdRdqPNQqd7TRuAMNVcTUQ9Mah&ct=h',
  'https://embed.v3.contentfabric.io/?p=&net=demo&oid=iq__2dZdRdqPNQqd7TRuAMNVcTUQ9Mah&ct=h'
]
CODES (EMAIL) [
  {
    token: 'pKpW8J',
    user_id: 'iusrw1gNabGCHAP72E1Z17gJDoGniWo',
    email<EMAIL_ADDRESS>  },
  {
    token: '2iW4k1',
    user_id: 'iusr2RcTQt4ypXs5WvoU3jsecKR4bhSW',
    email<EMAIL_ADDRESS>  }
]
EMBED URLS (EMAIL) [
  'https://embed.v3.contentfabric.io/?p=&net=demo&oid=iq__2dZdRdqPNQqd7TRuAMNVcTUQ9Mah&ct=h',
  'https://embed.v3.contentfabric.io/?p=&net=demo&oid=iq__2dZdRdqPNQqd7TRuAMNVcTUQ9Mah&ct=h'
]
UPDATED NTP {
  ntpId: 'QOTPSq4aBkiGvjN',
  ntpClass: 'Class 4',
  tenantId: 'iten4TXq2en3qtu3JREnE5tSLRf9zLod',
  kmsId: 'ikms27hsDr6QtmWnJKVFkNzroSGEgjjq',
  objectId: 'iq__2G8JtbyLVUQvG73LWWDMWgBDXvTs',
  updatedAt:<PHONE_NUMBER>343,
  startTime:<PHONE_NUMBER>000,
  endTime:<PHONE_NUMBER>000,
  ticketLength: '6',
  maxRedemptions: '100',
  maxTickets: 0
}
ALL DONE

Hm, yes that output has the same embed URLs for all 4..?
Nitpick but are "codes2" and "urls2" clear enough? I don't know if we have a convention

turns out, this depends on an updated elv-client-js PR:
Extend EmbedUrl to support ticket codes (#260)
will see about getting elv-live to see that; git pull, npm install, didn't catch it, will work on it.

The sample deletes the OTP at the end.  So the URLs are invalidated.  To test the URLs, comment out the deletion line!


feat(nexus): add telemetry support

Missing string telemetry, need to decode how to deal with protoreflect stuff.

Codecov Report
Patch coverage has no change and project coverage change: -0.10% :warning:

Comparison is base (ebf0cfe) 23.36% compared to head (b4796a0) 23.26%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #81      +/-   ##
==========================================
- Coverage   23.36%   23.26%   -0.10%
==========================================
  Files          16       16
  Lines        1909     1917       +8
==========================================
  Hits          446      446
- Misses       1421     1429       +8
  Partials       42       42

Files Changed
Coverage Δ

nexus/pkg/server/handler.go
0.00% <0.00%> (ø)

nexus/pkg/server/sender.go
21.18% <0.00%> (-0.31%)
:arrow_down:

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

I approve! ;)


Doc / code defaults mismatch

There's a mismatch between the docs and code regarding default values used for time signature. The docs say the default is 4/4, whereas the corresponding code uses 4/2.
mido.MetaMessage('time_signature')
<meta message time_signature numerator=4 denominator=2 clocks_per_click=24 notated_32nd_notes_per_beat=8 time=0>

Although I am not a big fan of changing the default values in the code, I think this is exactly what should be done since 4/4 is definitely more common than 4/2 time signature.

Would this need to be accompanied by a major version bump? It may break existing code

The default signature was always supposed to be 4/4 so this is a bug. I think we should just apply your patch and add a note to the documentation.
As for version bump I'm not sure. It seems a bit excessive to bump the version for such a small change.

Pull request looks good to me!

OK, I've merged it and added a note to the docs. Thanks!


Bump-up viper library

Description
Bump-up viper library
Type of change

Bump-up dependent library (no changes in the code)

Testing steps
To be done on CI
Checklist

[ ] make before_commit passes
[ ] updated documentation wherever necessary
[ ] added or modified tests if necessary
[ ] updated schemas and validators in insights-data-schemas in case of input/output change

/retest

Codecov Report
Patch and project coverage have no change.

Comparison is base (8a6bb5f) 51.28% compared to head (1f9ba30) 51.28%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #214   +/-   ##
=======================================
  Coverage   51.28%   51.28%
=======================================
  Files           3        3
  Lines         468      468
=======================================
  Hits          240      240
  Misses        211      211
  Partials       17       17

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


[Fix] Success alert for forks

Purpose
To give a more obvious visual notification that a fork was successfully created
Changes

Add bootbox alert on a successful fork that redirects to the new fork after being closed or hitting 'OK'
Addresses #4118

Side effects

User has to click before being redirected to their new fork

I'm not sure an additional modal is the proper solution to this, as it interrupts the user's flow. A non-modal solution is preferred.
@erinmayhood may have feedback on this.

@sloria, is using a success GrowlBox a better solution?

@barbour-em yes, I believe the GrowlBox is a better solution in this case. The user already receives a modal to confirm their desire to create the Fork so receiving another could interrupt the flow.
Requirements:
This is a success message (so green)
It should be dismissible
Thanks.

@sloria @erinmayhood made this change :heavy_check_mark:


Lowercase for the "t" letter

Although I'm not a native English, I believe it's supposed to be lowercased. Please correct me if I'm wrong.

Please review


Write some words about fluid error format

There's so much more to say here, but I'm trying to practice just putting words down when it's on my mind.
These won't be published since the page is tagged unwritten.

@tylerbutler - Any ideas on the Hugo failure?  I merged main, thought maybe I had some out of date bits but still failing.
Detecting platforms...
Error: Platform 'golang' version '1.16' is unsupported. Supported versions: 1.14.15, 1.15.15, 1.16.7, 1.17

---End of Oryx build logs---
Oryx has found build steps, but identified unsupported platform versions. Failing build.

@markfields Not sure what the problem is, but try changing this line in go.mod to go 1.17.

@markfields Looks like the hugo failure is resolved (I merged the latest main into this PR), so merge this in at your convenience.


Avoiding unregistering of application type in case of Action=Upgrade

reviewer: take or close

I'm not clear what the goal of this change is. The title says "Avoiding unregistering of application type in case of Action=Upgrade" but the code change is to retry using -Force in the case of Action!=Upgrade
have you considered unchecking "Unregister Unused Versions" and using the Service Fabric PowerShell task to customize you cluster clean-up?

Addressing this issue https://github.com/Microsoft/vsts-tasks/issues/5014 in this PR


Page.content as JSON

But I suppose it's blocked by https://github.com/facebook/relay/issues/2049
There is PR, hope it will be merged one day https://github.com/facebook/relay/pull/2193

https://docs-beta.prisma.io/1.13/develop-prisma-service/service-configuration/data-model-knul/#json

Options:

Use GraphQL even for Page content? Relay requires GUID for everything.
Store Slate schemas and JSON.

I suppose 2) is better.


refactor: remove use of deprecated EventEmitter.next()

Sounds good to me. Didn't see this BC before.


Add support for pre-compile (#if, #include)

Would allow scenarios where journeys need to be loaded differently for different tenants. May cause issues with element derivations, orchestration steps numbering.

Not worth it.


Add stub generator script

This should resolve the issue mentioned in #16 for the moment... and make it easier to jump in and start adding a new exercise.
NB it's some very coarse bash scripting and while it should work fine, I'm sure others will have ideas to fine-tune.
One thing of note: it follows the pattern:
exname/
 |- exname.scm
 |- exname-test.scm

While this is applicable for I'd say the majority of exercises (bob follows this pattern, e.g.) others like leap-year tend to do leap.ext or leap-year.ext and leap-test.ext depending on the language. So that's one thing to be aware of.
But I think it's a good start.
@kytrinyx I know I can merge but leaving open as a PR in case you (or someone) gets a chance to review and make sure I didn't do anything crazy.

I would be happy to normalize names if that would help with automation. The naming kind of happened accidentally.

I think name-normalization is probably a good idea, automating things is always good and probably useful across multiple tracks.

I added warnings to the stub script comments as well as to the script output; I think that's good enough for the moment, going to go ahead and merge.

Yeah, +1


python3Packages.PyGithub: 1.36 -> 1.43.8

cc @jhhuh
Didn't manage to keep the tests on, something must have changed about import paths, but I don't know enough about Python packaging to tell what.
Things done

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

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

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

PR builds for me
Result of nix-review pr 65262 1

5 package were build:

cligh
python27Packages.PyGithub
python27Packages.deprecated
python37Packages.PyGithub
python37Packages.deprecated


Optional Schema Check for add_files

Feature Request / Improvement
Many folks have been reaching out about the usage of add_files, which is a sign that there's a market for users who would prefer not to rewrite parquet files and just want to side load them into an Iceberg table.
Although it is noted to be an expert user feature in the documentation (as is the case with the rest of migration procedures Iceberg has had) the ease of use of the feature seems to be appealing to users of all levels.
Therefore, I think it would be great to introduce optional guardrails for the API.
Introducing an optional schema check would be an easy first step.

@syun64 What do you think of enabling the schema validation, and having the ability to turn it off? Adding a file to a table might potentially brick a table if I understand the implication correctly.

Yes, that was what I was thinking as well.