Chains v1.0.0

We want to cut a stable release for Chains.
Most of our actual feature set has been stable for some time - we don't expect any major changes to how chains operates.
However, there are still things we want to tackle before a v1 is cut, primarily around library stability and testing:

[ ] Pipelines Regression Testing

[x] https://github.com/tektoncd/chains/issues/716
[ ] Add tests to catch changes in pipelines versions.

[ ] https://github.com/tektoncd/chains/issues/640
[ ] https://github.com/tektoncd/chains/issues/665
[ ] Limit client libraries for external usage

Things that are not in scope:

SLSA v1.0 support (additive feature)

Is it possible to re-open this?  Seems it was auto-closed but some of the chains v1.0.0 TODO issues are still open.

/reopen
/lifecycle froze

/lifecycle frozen

Created an issue for the client lib work:
https://github.com/tektoncd/chains/issues/1044


Add resource: IpGroup

Is your feature request related to a problem? Please describe.
IP group is missing so must be manually created.
Describe the solution you'd like
"resource": Network/IpGroup
"ShortName": ipg or something similar
Describe alternatives you've considered
Only alternative is manual creation prone to human error naming.
https://learn.microsoft.com/en-us/cli/azure/network/ip-group?view=azure-cli-latest

Hello @Kadashnikov,
Thank you for your feedback. The resource type definition is extremely manual and we are always lagging behind the many new Azure resources that are available (due to the complexity of defining the regex and verifying the approved short names, etc.). We will add this to our next resoucetypes.json file update.

Bryan


React Native App using websdk: "undefined is not a function (evaluating 't.data.getNonce()'"

I encounter an error with the latest version of layer's websdk:
Exception com.facebook.react.common.JavascriptException: undefined is not a function (evaluating 't.data.getNonce()')

React Native still runs native Javascript; see if you can get the Javascript stack rather than the Java stack.  Also, you should be able to hook up a javascript debugger, enable break on error, and replicate the error.  That will give you a lot more information about what is going on.

Thanks for the reply. Unfortunately this error only happens on a fraction of Android devices. We are not able to reproduce this error on any test-device of ours.
The error happens on the production build, therefore the JavaScript-stacktrace is obfuscated (see above). I checked the entire project (including dependencies) for the '*.data.getNonce()' and the only occurrences are in the layer-websdk project!

+1
Happens to us as well, @pi-sw did you manage to patch it in some way?

We took @pi-sw fork and enriched it with other NPE's we found.
I have opened a PR to your code with the fixes after we have verified it on production.

https://github.com/layerhq/layer-websdk/pull/182


datalad containers-run integration: wrap battle

Goal: Integrate with datalad and singularity (and SLURM) to execute MRIQC
Option 1 duct wraps datalad
duct datalad containers-run ...
This doesn't work as one would hope, because prior to execution, duct creates new files which means datalad starts from a dirty state and fails. We can get around this with datalad run --explicit, but it doesn't quite work.
$ duct datalad containers-run \
        --explicit \
        -n bids-mriqc \
        --input sourcedata \
        --output . \
        '{inputs}' '{outputs}' participant --participant-label 02 -w workdir
2024-08-28T14:58:19-0500 [INFO    ] con-duct: duct is executing 'datalad containers-run --explicit -n bids-mriqc --input sourcedata --output . {inputs} {outputs} participant --participant-label 02 -w workdir'...
2024-08-28T14:58:19-0500 [INFO    ] con-duct: Log files will be written to .duct/logs/2024.08.28T14.58.19-74198_
[INFO] Making sure inputs are available (this may take some time)
[INFO] == Command start (output follows) =====
240828-19:58:21,778 cli IMPORTANT:

    Running MRIQC version 0.16.0:
      * BIDS dataset path: /home/austin/datasets/ds000003-qc/sourcedata.
      * Output folder: /home/austin/datasets/ds000003-qc.
      * Analysis levels: ['participant'].

You are using MRIQC v0.16.0, and a newer version is available: 24.0.2.
240828-19:58:46,465 cli WARNING:
	 IMPORTANT: Anonymized quality metrics (IQMs) will be submitted to MRIQC's metrics repository. Submission of IQMs can be disabled using the ``--no-sub`` argument. Please visit https://mriqc.readthedocs.io/en/latest/dsa.html to revise MRIQC's Data Sharing Agreement.
240828-19:59:07,13 cli WARNING:
	 Building bold report: no exclude index was found
240828-19:59:18,606 cli WARNING:
	 IMPORTANT: Anonymized quality metrics (IQMs) will be submitted to MRIQC's metrics repository. Submission of IQMs can be disabled using the ``--no-sub`` argument. Please visit https://mriqc.readthedocs.io/en/latest/dsa.html to revise MRIQC's Data Sharing Agreement.
240828-19:59:18,607 cli IMPORTANT:
	 Participant level finished successfully.
run(ok): /home/austin/datasets/ds000003-qc (dataset) [./code/containers/scripts/singularity_cm...]
[INFO] == Command exit (modification check follows) =====
add(ok): .duct/logs/2024.08.28T14.58.19-74198_info.json (file)
add(ok): .duct/logs/2024.08.28T14.58.19-74198_stderr (file)
add(ok): .duct/logs/2024.08.28T14.58.19-74198_stdout (file)
add(ok): .duct/logs/2024.08.28T14.58.19-74198_usage.json (file)
add(ok): sub-02_T1w.html (file)
add(ok): sub-02_task-rhymejudgment_bold.html (file)
save(ok): . (dataset)
action summary:
  add (ok: 6)
  get (notneeded: 3)
  run (ok: 1)
  save (notneeded: 2, ok: 1)
2024-08-28T14:59:20-0500 [INFO    ] con-duct: Summary:
Exit Code: 0
Command: datalad containers-run --explicit -n bids-mriqc --input sourcedata --output . {inputs} {outputs} participant --participant-label 02 -w workdir
Log files location: .duct/logs/2024.08.28T14.58.19-74198_
Wall Clock Time: 61.161 sec
Memory Peak Usage (RSS): 52518912 bytes
Memory Average Usage (RSS): 51502163.93442623 bytes
Virtual Memory Peak Usage (VSZ): 586903552 bytes
Virtual Memory Average Usage (VSZ): 508344957.9016393 bytes
Memory Peak Percentage: 0.1%
Memory Average Percentage: 0.09836065573770492%
CPU Peak Usage: 28.0%
Average CPU Usage: 2.157377049180328%
Samples Collected: 61
Reports Written: 2

Which seems like its working... but not really. Datalad commits the duct files prior to duct's exit.
$ git status
On branch master
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   .duct/logs/2024.08.28T14.58.19-74198_info.json
	modified:   .duct/logs/2024.08.28T14.58.19-74198_stdout
	modified:   .duct/logs/2024.08.28T14.58.19-74198_usage.json

(Another workaround is to pass an output prefix outside of the dataset, but thats not great, since we would want that data committed.)
Option 2 datalad wraps duct
This option (used on the datalad blog) is probably the best choice, but unfortunately it cant work with containers-run without either altering containers-run or the container its running.
It does work with datalad run by simply wrapping the command to execute the container. But this loses all the benefits of native datalad container integration.
Option 3 datalad wraps container wraps duct
We could also try to set up a clever container with duct bind-mounted in, and override the entrypoint to wrap duct around it. This option feels complex and will be opaque to users. However this pattern would work with OCI containers, all other options are intended for apptainer/singularity.f

@yarikoptic thoughts?

Heres the best integration so far. I tried to take this to discovery to integrate with slurm also, but they are mid-migration this week (the interactive nodes I'd been using are down.) probably best to wait for the new setup.
datalad run -m "datalad+duct+sing+mriqc" \
    duct -p Z_ \
    singularity run --contain \
    --bind /home/asmacdo/devel/sandbox/mriqc-sanity/sourcedata:/data:ro \
    --bind /home/asmacdo/devel/sandbox/mriqc-sanity:/out \
    --bind /home/asmacdo/devel/sandbox/mriqc-sanity/workdir:/workdir \
    docker://nipreps/mriqc:latest
    /data /out participant --participant-label 02 --no-sub -w /workdir

    Wall Clock Time: 293.760 sec
    Memory Peak Usage (RSS): 33746944 bytes
    Memory Average Usage (RSS): 23660565.557894744 bytes
    Virtual Memory Peak Usage (VSZ):<PHONE_NUMBER> bytes
    Virtual Memory Average Usage (VSZ):<PHONE_NUMBER>.161403 bytes                                                                                Memory Peak Percentage: 0.5%                                                                                Memory Average Percentage: 0.04140350877192981%
    CPU Peak Usage: 12.2%
    Average CPU Usage: 6.457543859649121%
    Samples Collected: 285
    Reports Written: 5

Option 2 datalad wraps duct

This option (used on the datalad blog) is probably the best choice, but unfortunately it cant work with containers-run without either altering containers-run or the container its running.
Just add duct to the actual invocation in .datalad/config -- there is no need to modify container or containers-run since it does not hardcode any invocation.  See e.g. https://github.com/ReproNim/containers/blob/master/.datalad/config where we explicitly specify
cmdexec = {img_dspath}/scripts/singularity_cmd run {img} {cmd}

for all but a test container.  So here you would change to
cmdexec = duct {img_dspath}/scripts/singularity_cmd run {img} {cmd}

and datalad save.

Option 3 datalad wraps container wraps duct

yeap, that is what I also thought about -- should be doable and provide a solution for docker style container platforms . But may be we find some other / better ways. For now let's pretty much concentrate on "2" .
In the longer run I think we should just augment  datalad run  with a "custom runner" feature which would allow for making duct invoked via a config option as a wrapper for any execution (and thus a datalad container-run) which would seemingly work for any singularity use case.
For repronim/containers we could even just add handling via making that  scripts/singularity_cmd  to respect some REPRONIM_CONTAINERS_RUNNER env var, to which we feed the duct invocation which gets prepending before actual singularity $cmd invocation, as e.g. ${REPRONIM_CONTAINERS_RUNNER:-} singularity $cmd ....

Something isnt working as expected with datalad containers-run integration.
datalad containers-run
commit acf92a7adb7ff1d5d1bd1e1869225025c76fc5a3
Author: Austin<EMAIL_ADDRESS>Date:   Fri Aug 30 11:46:36 2024 -0400

    [DATALAD RUNCMD] duct -p cr-output/duct_ ./code/container...

    === Do not change lines below ===
    {
     "chain": [],
     "cmd": "duct -p cr-output/duct_ ./code/containers/scripts/singularity_cmd run code/containers/images/bids/bids-mriqc--0.16.0.sing '{inputs}' '{outputs}' participant group -w cr-output/workdir -v",
     "dsid": "3a04f70a-7714-424c-b6fd-d179cfba9658",
     "exit": 0,
     "extra_inputs": [
      "code/containers/images/bids/bids-mriqc--0.16.0.sing"
     ],
     "inputs": [
      "sourcedata"
     ],
     "outputs": [
      "cr-output"
     ],
     "pwd": "."
    }
    ^^^ Do not change lines above ^^^

{
  "exit_code": 0,
  "wall_clock_time":<PHONE_NUMBER>0815125,
  "peak_rss": 3977216,
  "average_rss": 3977194.61096606,
  "peak_vsz": 7761920,
  "average_vsz": 7761920,
  "peak_pmem": 0,
  "average_pmem": 0,
  "peak_pcpu": 14.6,
  "average_pcpu": 5.629242819843339
}

:warning: average and peak memory usage are the same, and very low.
datalad run duct+sing
commit 5d7c94223b2e768ee705da177aa8c10be8e1968b (HEAD -> master)
Author: Austin<EMAIL_ADDRESS>Date:   Fri Aug 30 11:56:12 2024 -0400
[DATALAD RUNCMD] Whole run, duct+sing direct

=== Do not change lines below ===
{
 "chain": [],
 "cmd": "duct -p sing_direct/duct_ singularity run --contain --bind /home/asmacdo/devel/sandbox/mriqc-sanity/sourcedata:/data:ro --bind /home/asmacdo/devel/sandbox/mriqc-sanity/sing_direct:/out --bind /home/asmacdo/devel/sandbox/mriqc-sanity/sing_direct/workdir:/workdir docker://nipreps/mriqc:latest /data /out participant group --no-sub -w /workdir",
 "dsid": "3a04f70a-7714-424c-b6fd-d179cfba9658",
 "exit": 0,
 "extra_inputs": [],
 "inputs": [],
 "outputs": [],
 "pwd": "."
}
^^^ Do not change lines above ^^^

```json
{
  "exit_code": 0,
  "wall_clock_time":<PHONE_NUMBER>0460815,
  "peak_rss": 40427520,
  "average_rss": 24678171.810584974,
  "peak_vsz":<PHONE_NUMBER>,
  "average_vsz":<PHONE_NUMBER>.4206126,
  "peak_pmem": 0.5,
  "average_pmem": 0.03899721448467966,
  "peak_pcpu": 12.3,
  "average_pcpu": 6.814763231197769
}

Here we see more reasonable values for memory usage. Both runs saved to different output dirs on the master branch for easy comparison.
asmacdo@typhon: /home/asmacdo/devel/sandbox/mriqc-sanity

(side note, "pwd": "." seems unhelpful. Is it always a relative path?)

IIRC it is from the top of the dataset, happen you run command in a subfolder -- you would find it super helpful ;)
So check the stats logs -- likely it didn't track kid processes correctly, so rerun and see what is up with the session id etc, or may be even run with higher log level for duct (via env var?) to see what it sees while running

try to submit SLURM job (without datalad but using that container you download using datalad) going through all subjects of the original dataset ds000003 and most recent mriqc. even without containers-run . This way we collect bunch of realistic duct outputs across all the subjects.


[Tests] Make Mutex.cpp tests more reliable.

Many of these tests would fail if one of the test threads didn't begin execution within 100 milliseconds. They would hit while (!done) the very first time and never execute the loop body. That does happen from time to time, and the result would be a spurious failure. Change the loops to do {} while(!done) to ensure they always execute at least one iteration.
Many tests also had the test threads concurrently write results to a std::vector, which appeared to be causing some failures in my local testing when I had extra sleeps inserted to simulate pathological scheduling. Change the results vectors to be vectors of std::atomic to ensure that this concurrent writing is safe.
These changes shouldn't affect its ability to test the functionality it intends to test.
rdar://problem/49386389

@swift-ci please test

Good idea, I'll do that.

@swift-ci please smoke test and merge

@swift-ci please smoke test and merge


Package is not working on Android. When i call this method   await GoogleCastContext.instance.setSharedInstanceWithOptions(options!);

E/flutter (24429): 	at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259)
E/flutter (24429): 	at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
E/flutter (24429): 	at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
E/flutter (24429): 	... 19 more
E/flutter (24429): )
E/flutter (24429): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:652:7)
E/flutter (24429): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:310:18)
E/flutter (24429):
E/flutter (24429): #2      GoogleCastContextAndroidMethodChannel.setSharedInstanceWithOptions (package:flutter_chrome_cast/_google_cast_context/android_google_cast_context_method_channel.dart:15:11)
E/flutter (24429):
E/flutter (24429): #3      DettaglioVideoController.initPlatformState (package:yoga/app/modules/home/controllers/dettaglio_video_controller.dart:53:5)
E/flutter (24429):
E/flutter (24429): #4      DettaglioVideoController.onInit (package:yoga/app/modules/home/controllers/dettaglio_video_controller.dart:37:5)
E/flutter (24429):
E/flutter (24429):
getting this error

Hello,
Thank you for reaching out to us regarding the issue you're facing on GitHub. In order to assist you effectively, we kindly request that you provide us with the following information:
Minimum Reproducible Code: It would be immensely helpful if you could share a minimum reproducible code snippet or a GitHub repository link that highlights the problem you are encountering. This will enable us to understand the issue better and provide you with an appropriate solution.

Flutter Doctor Output: Please provide the output of the flutter doctor command. Running this command in your terminal will give us valuable insights into the status of your Flutter installation, including any potential issues or dependencies that need attention.

Android Manifest.xml: If your issue is specifically related to Android, kindly share the contents of your Android manifest.xml file. This file contains important configuration details for your Flutter application, and examining it can help us identify any potential problems.

Once you provide us with these details, we'll be able to investigate the issue more thoroughly and provide you with the best possible solution. Thank you for your cooperation, and we look forward to assisting you further.

Thank you for providing the reproducible code and addressing the issue in your package's GitHub repository. To rectify the problem with the missing update in the androidManifest.xml file, you can add the following code snippet:
<meta-data
    android:name="com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME"
    android:value="com.felnanuke.google_cast.GoogleCastOptionsProvider" />

Make sure to include this code within the <application> tag of your androidManifest.xml file. This addition will update the androidManifest.xml file to include the necessary <meta-data> element for com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME, using the value "com.felnanuke.google_cast.GoogleCastOptionsProvider".
After incorporating this change, the issue related to the missing update in the androidManifest.xml should be resolved.


Remove libgcc dependency

Remove the dependency on libgcc. This dependency appears to be no longer needed, and it causes a build failure with the latest rust nightly.
The dependency is probably no longer needed because the symbols provided by libgcc are now covered by the compiler_builtins crate.

bors r+


Working_with_FASTQ / seaborn

boxplot
sns.boxplot(vps, ax=ax)

since i don't know when the format of passing data to boxplot requires the keyword 'data':

sns.boxplot(data=vps, ax=ax)

subplot
alway nice to provide a good format for the plot, default is too small, e.g.:
fig, ax = plt.subplots(figsize=(14,8))

set_xticklabels
ax.set_xticklabels([str(x) for x in range(26, max(qual_pos.keys()) + 1)])

this will print the list of labels before the plot, better assign it to a dummy variable, so only graph with labels shows up:
d = ax.set_xticklabels([str(x) for x in range(26, max(qual_pos.keys()) + 1)])

Confused here also: the data is there, also for a figsize and subplots

same, probably book ref


Move karma-webpack to dev dependencies

karma-webpack is miscategorized as dependencies and pollutes if lory is fetched via NPM/yarn.

@meandmax could you please release a new version to get this fix with npm? Thanks :)


Refactor thread counts

Remove numa dependency and acquire cores/threads by parsing  lscpu

@justalittlenoob What do you think of this approach? This PR can remove the numa dependency

Hi @skmono
This PR looks good.
I have only one concern. If using two different machines compile code and execute code separately, IPCL_THREAD_NUM may not be correct at runtime.

@justalittlenoob You're right. Also hard coded num_sockets could pose the same issue. Let me dig into it a bit more.

@justalittlenoob You're right. Also hard coded num_sockets could pose the same issue. Let me dig into it a bit more.

I have an idea FYI. How about set several options in the compilation options, such as IPCL_ COMPILE_ ONLY IPCL_ EXCUTE_ ONLY and IPCL_ COMPILE_ AND_ EXECUTE?
If this machine is only responsible for compiling, then we can put the detection of avx512, rdseed, rdrand, num_thread, etc. into the compilation period(IPCL_COMPILE_ONLY).
If this machine is only responsible for executing code(IPCL_EXECUTE_ONLY), then detecting those features in the cpp code.
etc..

@justalittlenoob I added a /proc/cpuinfo parser to detect number of sockets (nodes)
So there will be following cases:

Case
IPCL_THREAD_COUNT explicitly set
IPCL_THREAD_COUNT not set

IPCL_DETECT_CPU_RUNTIME=OFF
cpus = IPCL_THREAD_COUNT
cpus=std::thread::hardware_concurrency

nodes from CMake compile def
nodes from CMake compile def

IPCL_DETECT_CPU_RUNTIME=ON
cpus = IPCL_THREAD_COUNT
cpus=std::thread::hardware_concurrency

nodes from parser
nodes from parser

nodes CMake compile def can be found in:
https://github.com/intel/pailliercryptolib/blob/745f02da33b13686c915ac4229cfdf45f740c113/CMakeLists.txt#L105
https://github.com/intel/pailliercryptolib/blob/745f02da33b13686c915ac4229cfdf45f740c113/CMakeLists.txt#L120-L121
nodes parser from:
https://github.com/intel/pailliercryptolib/blob/f121da2b147dee462b373210a9adc8c0b2d1bc5b/ipcl/include/ipcl/utils/util.hpp#L78-L81
https://github.com/intel/pailliercryptolib/blob/f121da2b147dee462b373210a9adc8c0b2d1bc5b/ipcl/utils/util.cpp#L11-L13
What do you think?

There is little difference in performance, as /proc/cpuinfo will be parsed only once


Move object and temporary build files into another folder

Currently all object files and finished executables are placed inside of the folders where the source code is. Therefore the folders get messy very fast and it's difficult to find certain files. I would suggest to create a new folder called "build" in the root folder of the project, from where automake is called to compile the wallet.

This is a regression from the qmake based builds. (which had other problems)

You can always shadow build: mkdir build && cd build && ../configure && make


Prevent shoving incapacitated mobs

About the PR
Shoves will now always fail on incapacitated mobs
Fixes #21400
Why / Balance
Players are shoving the incapacitated people they are dragging, to induce a temporary friction reduction every time the already limp body is "knocked down", resulting in brief bursts of acceleration which rougly amount to a 15% speed boost over time compared to just dragging the body. It also makes no sense and looks absurd.
I can't think of a reason anyone would want/need to stamcrit an incapacitated mob for any other reason than this exploit. If someone needs to take an item that somehow ended up in the hands of an unconscious/dead body, strip can be used instead, which would probably be the first thing a player actually tries in such a situation anyway
It technically still works on a conscious mob you are dragging, but this seems to barely have any effect on speed. And I suspect players would be much less likely to use this exploit on someone who can complain right back at them
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

fix: Incapacitated mobs can no longer be shoved for a speed boost

Based exploit removal


20241015 dependency updates

This failed locally for me with zlib dependency problems, but perhaps it will work in CI.

This only contains an update to template-haskell bounds which should be synchronized with an update to GHC


refact(rpc): merge rpc module into commons

for apache need, after this pr, we will:

[x] rename hugegraph-common --> hugegraph-commons
[x] merge the hugegraph-rpc module into hugegraph-commons, and keep it independent (include commit log)
[x] merge License, checkstyle, ci, etc..
[x] add a new pom.xml & README in root dir
[ ] unify rpc & common version later (better to keep same)

after review & CI pass, separate this pr into 2


conda installation failure on Python 3.10 + updates required for v23.9

Hi! I believe PyBaMM now does support Python 3.10, but I'm still having trouble installing the latest version 23.5 using conda-forge.
I've tested on MacOS (x64) and Linux, and conda-forge tends to pick version 0.2.3.post1.
Minimal example: conda create -n pybamm-exp -c conda-forge python=3.10 pybamm=23.5
Traceback:
UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package python conflicts for:
python=3.10
pybamm=23.5 -> python[version='>=3.8,<3.9.0a0|>=3.9,<3.10.0a0']
pybamm=23.5 -> anytree[version='>=2.4.3'] -> python[version='*|2.7.*|3.5.*|3.6.*|>=3.6|>=3.10,<3.11.0a0|>=3.11,<3.12.0a0|>=3|>=3.7,<3.8.0a0|>=3.12,<3.13.0a0|>=3.6,<3.7.0a0|>=2.7,<2.8.0a0|>=3.12.0rc3,<3.13.0a0|>=3.7.1,<3.8.0a0|3.8.*|>=3.8|>=3.7|>=2.7|3.4.*|>=3.5,<3.6.0a0|>=3.9|>=3.5.3|>=3.5|3.9.*',build=*_cpython]The following specifications were found to be incompatible with your system:

  - feature:/osx-64::__osx==10.16=0
  - feature:/osx-64::__unix==0=0
  - feature:|@/osx-64::__osx==10.16=0
  - feature:|@/osx-64::__unix==0=0
  - pybamm=23.5 -> matplotlib-base[version='>=2.0'] -> __osx[version='>=10.11|>=10.12|>=10.9']
  - pybamm=23.5 -> sympy[version='>=1.8'] -> __unix

Your installed version is: 10.16

However, the following options work:

python 3.9 & pybamm 23.5 with conda-forge
python 3.10 & pybamm 23.5 with pip

Originally posted by @pavithraes in https://github.com/pybamm-team/PyBaMM/discussions/2668#discussioncomment-7254827

I think the Python versions should be updated here - https://github.com/conda-forge/pybamm-feedstock/blob/f1aa5221981530861780ec8a5e0a75da887178d1/recipe/meta.yaml#L18

We should also add a section on verifying and/or updating the conda-forge package and/or recipe in the release reminders. For example, pybamm_install_jax still exists there but we use the optional dependencies for that now (note: not sure if we have completely removed the entry point or it is just in its deprecation phase).

I think the Python versions should be updated here - https://github.com/conda-forge/pybamm-feedstock/blob/f1aa5221981530861780ec8a5e0a75da887178d1/recipe/meta.yaml#L18

Yes, those selectors need updating
https://conda-forge.org/docs/maintainer/maintainer_faq.html#mfaq-py37-selector
https://docs.conda.io/projects/conda-build/en/stable/resources/define-metadata.html#preprocessing-selectors

Hi @priyanshuone6, could you grant me access to the pybamm-feedstock repository? I can take a look at fixing those selectors before the release, plus I would love to learn a bit about how conda recipes are structured. The YAML looks straightforward enough to me, please let me know if you have any other pointers on what else is to be changed

Done


Analyzing games

I have noticed that there a problem on analyze.py that it doesn't register all the games. I ran some test with only 30 games and 7 of them didn't appear in the SQL database. Further investigation is required.

How are you limiting the amount of games added to the database?

I'm not, as far as I know. It's that I have 30 links and only 23 lines of databases appeared. Although I haven't tested it in a long time, I should double check 👀

I mean when you said you tested it with 30 games. How did you test with only 30 games? Was it just changing the range of the for loop in games.py?

No, I simply deleted some lines from the games.jl, it wasn't the most sophisticated method of all time but I don't think it affected, because the other of the games that didn't appear was completely random.

Okay. Found a way to limit number of games and pages in docs. Just tested with 200 games in the database and all 200 games were in there. WIll send a PR soon.

Oh, super nice! Looking forward to it! 😃

I have retested it and it doesn't happen anymore so I'm closing the issue. If someone has any problem I may reopen it.


Improve babel config

This commit fixes issues with jumping breakpoint when debugging (in VSCode).

I just noticed that this change causes a noisy test output about a source map issue (without causing the tests to fail), so don't merge it yet.

Try nyc


⚠ ClamAV has degraded performance

In ba3ab32, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 553 ms

Resolved: ClamAV performance has improved in a40026d.


feat(collateral-contract): allows max withdrawal for insufficient col…

…lateral available
allows calling redeem when the available collateral is less than the amount owed on provided RAV. The receiver will receive all of the available collateral and the allocation will be marked as redeemed.

Looks good to me. The only suggestion I have is to make collateralAccounts a public variable. Since allos are marked as used, it's nice if we can facilitate indexers knowing what the collateral balance is before submitting the transaction so they know what to expect. Making it a public variable means it gets a getter which makes checking this easier.
Also authorizedSigners could also be public unless we have a reason not to.

We do have 3 separate functions to get info from collateral accounts ( getCollateralAccount, getCollateralAccountFromSignerAddress, getCollateralAmount). We could just remove the getCollateralAccount and make it public. There isn't a reason that authorizedSigners is not public, I can change that as well.


Allow custom boot/connect timeouts for testcloud VMs

Pull Request Checklist

[x] implement the feature
[x] write the documentation

/packit test

/packit test

Shouldn't we add __versionadded label?

Added in ebed80d4bd2a8a0a5c2cf9e9f9e314585d14b6ac

/packit test

/packit test

I'm looking for inputs from @frantisekz, the failure of parallel test stinks with race conditions :/

I'm looking for inputs from @frantisekz, the failure of parallel test stinks with race conditions :/

Yeah, looks like that. Filed #2687 to track this. Everything else passed, let's not block the PR on this.


Rewriting top cell  results in ArrayIndexOutOfBoundsException

Consider the following definition:
module EXP-SYNTAX

  // grammar: BNF = Backus-Naur Form
  syntax Exp ::= Int
               | Exp "+" Exp [left, strict]
	       | "(" Exp ")" [bracket]

endmodule

module EXP
  imports EXP-SYNTAX

  syntax KResult ::= Int

  configuration <T>
                  <k> $PGM </k>
		</T>

  rul <T> <k> I1:Int + I2:Int </k> </T>
       =>
       <T> <k> I1 +Int I2 </k> </T>

endmodule

Then, kompile:
:-$ kompile exp.k
[Error] Internal: Uncaught exception thrown of type
ArrayIndexOutOfBoundsException.
Please rerun your program with the --debug flag to generate a stack trace, and
file a bug report at https://github.com/kframework/k/issues

Rewriting only the <k> cell works. Probably rewriting the top cell is forbidden, but we need a better error message.

It should work to rewrite the top cell, too, so something is definitely wrong here.

fixed via #2232


 Need to resolve this mapping issue.

check out #262 and #289 for discussion of this.


Automator: update<EMAIL_ADDRESS>dependency in<EMAIL_ADDRESS>

Generated by Automator - 2022-06-27T22:44:20+00:00

@istio-testing: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-security-multicluster_istio_release-1.13
6ebb5bc15dc4f30e105d78450890a7035a09ed2f
link
true
/test integ-security-multicluster_istio_release-1.13

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test integ-security-multicluster_istio_release-1.13


[move-prover][libra-framework] True modular verification.

This PR deals with the various long running verification problems by changing our compilation scheme, and realizing true modular verification. As a result, most of the disabled verification problems in the framework could be re-enabled (around two dozen functions had been disabled because of timeout). Some are still remaining which need further investigation (3 or 4 or such).
The main insights underlying this PR are the followings:

Only the function currently being verified should provide assumptions to the VC context (VC = Verification Condition, essential the smtlib file we give to z3 for each function). As experiments showed, if we saturate the VC context with assumptions not relevant for the VC at hand, Z3 goes nuts, trying to endlessly instantiate quantifiers which are irrelevant for the VC. Sometimes this can be fixed by changing seeds for Z3, but sometimes not.
Module invariants are private to the module. When a module function is called from another module, we do not need to assume the module invariant because we also do not need to assert anything about it.
If we have have non-opaque function which is not subject of the current VC being called and inlined from the VC function, it is more efficient to not "freely" assume or assert any pre/post conditions, but instead let the code speak for itself. Otherwise we again pollute the VC context with useless assumptions. In fact, the top-level VC function might constitute a much simpiler VC problem than the called function.

This has been worked into the compilation schema as follows:

We now have 6 (yes 6) different entry points into a function, each one serving a different purpose in verification:

Definition: just the definition of the function, no pre/post conditions. Is being inlined by the others below.
DirectInter: a direct call from the VC function to this function which is in a different module. For such calls, we only assert the explicit pre-conditions, but not those coming from the module invariants or schema apply. We only emit an ensures for direct calls if they are opaque.
DirectIntra: a direct call from the VC functions to this function which is in the same module. For such calls, we assert explicit preconditions as well as the ones injected from module invariants. Ensures is treated as above.
Indirect: an entrypoint for calls not from the VC function, but from functions called by the VC function. No preconditions are generated for those, because we verified them elsewhere. Ensures are only generated if the function is opaque.
VerificationDefinition: the definition we use for verification. The difference to Definition is that we use the DirectXXX stubs to call other functions from this one, in contrast to Indirect.
Verification: finally the top-level verification entry point. This imposes all pre and post conditions and inlines VerificationDefinition.

There is a way to override the omission of injected predicates from schema apply or module invariant, so that they are exported to the caller context. For example, to inject publically visible aborts spec into multiple functions (as used in VASP.move) one can write:
schema CommonAborts {
    aborts_if [export] P;
}
apply CommonAborts to f, g, h;

Note: I had to disable verification for Libra.move as it was broken at head. A fix for this does not belong into this PR (it looks complicated). However, before I rebased, Libra passed, so the failures should be orthogonal to this PR.

Motivation
Fixing timeouts.
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
Existing tests.
Related PRs
NA

:umbrella: The latest upstream changes (presumably ecc5c47b3d52612011ca075737de722f5adb3240) made this pull request unmergeable. Please resolve the merge conflicts.

:umbrella: The latest upstream changes (presumably 51d6489678a601db9f378d7eb914a6095e0cfb5d) made this pull request unmergeable. Please resolve the merge conflicts.

@bors-libra r=shazqadeer

:pushpin: Commit 1041f7f has been approved by shazqadeer

@bors-libra r=shazqadeer

:pushpin: Commit 6209f71 has been approved by shazqadeer

:hourglass: Testing commit 6209f71140f935fc9f87a72ff996cf4122949ef5 with merge dc55d3f10e94b970cd04033769928262902cf19a...

@bors-libra cancel

@bors-libra r=shazqadeer

:pushpin: Commit c93003f has been approved by shazqadeer

:hourglass: Testing commit c93003fe16468ebd4305028995fff93d6fa8609e with merge ca36bd9def08a8d2c513878171d8f3900e9ee27a...

:sunny: Test successful - checks-actions_land_blocking_test, checks-circle_commit_workflow
Approved by: shazqadeer
Pushing ca36bd9def08a8d2c513878171d8f3900e9ee27a to master...


Set up usage statistics exports to a google sheet

What
We want a way for PAs to get a hold of the usage data automatically.
Initially we tried to do this by removing the basic auth export endpoint and switch over to a rake task that exports and posts data to a sheet. However this has proved to be difficult due to some cross domain issues and complexity around Service Accounts and Auth tokens.
A simplier way has been to allow google sheets to scrape data AND authenticate with the existing basic auth.
To do this we have the following changes in the app:

Changes Data export endpoint to export all time if no explicit dates are provided
Add docs on how this works to docs repo
Add further test for 401 if basic auth is not provided

And the following changes outside of the app:

Write a custom JS function in a google sheet that can scrape CSV through basic auth
Write a sheets UI widget so a PA can manually trigger a refresh
Set google triggers up so it will also run a refresh automatically between midnight and 1am.

How to review

Read over the code here and look for errors
Check the test suite runs on CI
Read over the docs added in this PR and ensure they are clear enough.
Following the links in the docs:

Check you can get access to the sheet.
Perform a manual refresh in the UI (instructions should be clear in the docs, shout if not!)
If you are a JS person, you can also review the JS code in Google Scripts linked to in the docs.

If you can't get access to any of the google files, raise that as a PR comment and I'll ensure permissions are revised.
Links
Trello: https://trello.com/c/YdlVTdIo/346-export-aggregate-data-to-a-google-sheet

Thanks bruce, and great review those improvements are greatly appreciated!


django.db.models.get_model is deprecated

The alias will be dropped in Django 1.9.  Just need to update swapper.load_model to use django.db.models.loading.get_model instead.

Using django.db.models.loading.get_model gets you a second deprecation warning, so this does not help.  But it points in the right direction. The loading module has the pointers to the new locations.  So you can look in loading.py to see where you should import it from.  In this case you should use django.apps.apps.get_model.
Note: I am not using the django-swappable-models project, but this is currently the top link when Googling for django.db.models.get_model is deprecated. :-)

Thanks for the heads up!

Fixed in #9

Hi, has this been resolved?

Yes, according to the above comment this was fixed more than three years ago in pull request #9.  Looking at the commit this was added already in swapper version 0.3.0.


Add support for UniFi Cloudkey Gen2 Plus

This adds version detection for the UniFi CloudKey Gen2 Plus hardware which does not contain the ubnt-device-info binary.  That binary simply reads and parses /usr/lib/version from the filesystem, so I duplicated that behavior in shell for CloudKey Gen2 Plus device support.
I also included two example strings from a device before and after upgrade as comments, to help understand what the regex is doing.

Thank you for putting this together, I'll get it merged and a new release out ASAP.


gRPC should be updated to match c# nuget version (v1.2.2)

The version of vcpkg for grpc is out of date and does not match the published nuget package.

up

Changing the version in the ports\grpc\portfile.cmake and CONTROL to v1.2.2 does not compile. Additional changes are necessary.

Updated to 1.2.3, thanks for opening the issue and attempting to update it!


Make the Search field cleaner

Feature Request
Description:
The search field at the table of cookies has the clear field button always visible:

The feature suggestion is making similar behavior to the search filter at DevTools, where the clear button only appears when the field is filled and inside the search field:

Motivation:
Make the UI cleaner and follow the same standard as the Chrome DevTools
User Story:
As a user, I want to use similar search fields as DevTools so that I can have a consistent UI.
Acceptance Criteria:

[ ] the clear button appears inside the field
[ ] The button only appears when the users add content to the field
[ ] Once the user cleans the field the clear button disappears

Chrome recently celebrated its 15th birthday, and with the update came the implementation of Material You. Prior to the update, the UI of the tool was consistent with Chrome dev tools.
We'll look into updating the UI to match the new design and ensure consistency with Chrome's UI.

This has been completed as of PR #243, merged to develop, and is ready for release.

Good news @mayan-000

Addressed and released as a part of v0.4.0, closing this issue.


Add YAML-based configuration

First stab at adding YAML-based configuration to the project. Basic Cumulus-config has been added as a sample configuration and should be usable by calling configuration.getCumulusConf() from CumulusExport or wherever else the connection is mad to the Cumulus backend.

Code reviewed and tests run


🐛 BUG: local RPC between cloudflare workers giving error

Which Cloudflare product(s) does this pertain to?
Wrangler
What version(s) of the tool(s) are you using?
3.76.0
What version of Node are you using?
No response
What operating system and version are you using?
mac sonoma 14.1.1
Describe the Bug
main.toml
name = "main"
main = "src/main.js"
compatibility_date = "2024-09-03"
compatibility_flags = ["nodejs_compat"]
[[services]]
binding = "worker2"
service = "worker2"
worker2.toml
name = "worker2"
main = "src/worker2.js"
compatibility_date = "2024-09-03"
compatibility_flags = ["nodejs_compat"]
main.js
export default {
async fetch(request, env, ctx) {
const worker2result = await env.worker2.none()
console.log(worker2result, worker2result)
return new Response('END')
},
}
worker2.js
import { WorkerEntrypoint } from "cloudflare:workers";
export class worker2 extends WorkerEntrypoint {
async none() { return "this is a returned string" }
}
Error:
Uncaught Error: Dynamic require of "cloudflare:workers" is not supported
I'm just trying to get main worker to call a function (none()) from worker2. This is being run locally and I am running npx wrangler dev -c main.toml for one worker and -c worker2.toml for the other worker.
So I am trying to find the most basic code that will allow local RPC between two workers where the second worker is only being accessed by the first main worker over rpc but I am getting an error. This is all being done locally.
Please provide a link to a minimal reproduction
No response
Please provide any relevant error logs
No response

Ah ok I was able to reproduce. Add export default {} to worker2.js and you should be able to start the dev server, then you'll get TypeError: The RPC receiver does not implement the method "none". Then add entrypoint = "worker2" to your [[services]] section and it should work.
Or, change the code in worker2.js to export default class worker2 extends WorkerEntrypoint and leave your [[services]] section as-is.
If this fixes your problem, would you mind closing the issue?
Looks like we have a problem with workers without default exports in dev (and likely in production too). I wonder if we want to try to support that, or should just give a more descriptive error.

thank you.
to be clear:
worker2.js
import { WorkerEntrypoint } from "cloudflare:workers"
export default class worker2 extends WorkerEntrypoint {
async none() { return "this is a returned string" }
}
with everything else left the same worked correctly.


Access res/raw folder in android

Hi everyone! I want to download sound from the web to store them in the res/raw folder for using it with react-native-sound. The problem is I don't have any idea on how to do it. Do you have any insight on this?

hey friend, do you have any solution on it? I faced same problem though

Any update?

@isener got something. I gave up because I found an other way to solve my problem, so I didn't need to continue looking for this solution.

Do you mind sharing? It may help us

You gotta wait him answer

you should try this pr https://github.com/itinance/react-native-fs/pull/270/files
It'll work with CopyFileRes method to devices externalstorage, then you get the url of that file and do what you want with that. For me, I'm using it with react-native-sound package and works well

Does this means that everytime you play the file is copied?

nope, this means if you do something with image except play, you need to copy to local shared folder. For example sharing, cropping etc.


Merge main branch changes to Marshals and viceversa

Title of ticket:
Description
#2685 add original due date, cfr due date and closed date to marshals
Dependencies
Are there any dependencies?
DOD

[x] add original due date, cfr due date and closed date
[x] add request no in the left pannel
[x] Merge marshal changes to dev
[x] Merge marshal changes to test
[x] Integration test in dev
[x] Inspect if there any Missing code components, functions during manual merge - go git blame,diff or Binary compare using Winmerge etc.
[x] Integration testing as per the excel sheet.https://app.zenhub.com/files/358004325/67950c94-af2f-4f26-b076-28ddf7ae5721/download

closing this ticket as we already moved all the changes to test.


Create IsPalindrome LinkedList

Function to check whether linkedlist is palindrome or not.

Function to check whether linkedlist is palindrome or not in java.

Please accept the PR for hacktober fest.


Release 2.4

New features and bugfixes can be found in CHANGELOG.

Thanks so much @sunqm ! I just wanted to check whether any of the prerequisites have to be updated? https://pyscf.org/install.html#build-from-source

Thanks so much @sunqm ! I just wanted to check whether any of the prerequisites have to be updated? https://pyscf.org/install.html#build-from-source

Requires python>=3.7. I can update the doc.


[Bug] PlanetShine missing dependency error

Background

Operating System: Windows 10
CKAN Version: 1.27.2
KSP Version: <IP_ADDRESS>88

Have you made any manual changes to your GameData folder (i.e., not via CKAN)?
Added Gamedata/PlanetShine/Config folder containing CelestialBodies.cfg and Settings.cfg after game crash related to these missing files.
Problem
Describe the bug
From the Status Log tab of CKAN:
Module "ReStock" successfully installed
Module "ReStock+" successfully installed
Module "Spectra" successfully installed
The following inconsistencies were found:

PlanetShine <IP_ADDRESS> missing dependency PlanetShine-Config
Error during installation!
If the above message indicates a download error, please try again. Otherwise, please open a issue for us to investigate.
If you suspect a metadata problem: https://github.com/KSP-CKAN/NetKAN/issues/new/choose
If you suspect a bug in the client: https://github.com/KSP-CKAN/CKAN/issues/new/choose

Steps to reproduce
From a fresh KSP install, I installed several mods, including Spectra and PlanetShine.
Today I tried to update Spectra, and two ReStock mods, and received this error.
PlanetShine-Config is not an available package in CKAN, and PlanetShine - default config conflicts with Spectra apparently (even though spectra does not bundle any configuration data for PlanetShine)

PlanetShine-Config is not an available package in CKAN

PlanetShine-Config-Default provides it, though, so it would be pulled in :
https://github.com/KSP-CKAN/NetKAN/blob/b8d2839bb46a2f7d9d6cc6ee9e15c95c70e25b03/NetKAN/PlanetShine-Config-Default.netkan#L17-L19

PlanetShine - default config conflicts with Spectra apparently (even though spectra does not bundle any configuration data for PlanetShine)

Why do you say that? Maybe you have more information that could help with the investigation.

I think that if I had not installed Spectra CKAN would have installed PlanetShine-Config-Default, but if I go to the "relationships" tab for Spectra, PlanetShine-Config is listed with an exclamation point triangle next to it, indicating that with Spectra installed CKAN will not install PlanetShine-Config. If I had to take a guess, I'd say this conflict was added in error and Spectra does not actually conflict with PlanetShine-Config.
I'm not sure that Spectra is doing much at the moment, since it's mostly config files for EVE and Kopernicus (which don't run on 1.9) so I tried uninstalling it (so I can install PlanetShine-Config) and managed to crash CKAN. I'll try again in the morning.

OK, now that I've uninstalled spectra and installed planetshine config, spectra doesn't list planetshine config as a conflict anymore. It could have been because I manually installed planetshine config.
I wonder how I managed to install planetshine without planetshine config in the first place, leading me to install the planetshine config files manually, causing this issue...

OK, I'm guessing you installed Spectra before #7891; it did used to provide and conflict with PlanetShine-Config. Then later that was removed, and you would have tried to upgrade to the new release without that.


Deflate the "valid" sticker economy and ward off metagaming sec

About the PR
Fixes rigged gloves description to match the blue boxing gloves and not captain gloves.
Renames most non-harmful syndicate items to feature less of the word "syndicate" on them to ward off security officers who just KNOW that this particular bag is le bad and makes you valid for perma.
Adds (mostly) non-harmful syndicate items as a very rare drop from maintenance lockers.
As for the mosin - its an absurdly low chance to get from a maint locker, and even then it's a meme gun:

https://discord.com/channels/310555209753690112/560845886263918612/1126916092762267729
Media

Only two syndie entities had spawned in a sea of maint lockers, both from the top part of the pool (operative jumpskirt in the top right and the empty suspicious duffel bag in the bottom right):

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:
no cl

Most of the renaming is lame. Just let syndicate items be syndicate items. No need to barely masquerade it when everyone knows what it is.

sounds good to me

Most of the renaming is lame. Just let syndicate items be syndicate items. No need to barely masquerade it when everyone knows what it is.

"It says 'syndicate' here on tin/description" is completely meta imo. The amount of perma/execution-thirsty secoffs eager to jump at the slightest hint of someone being a tot further compounds this. While I do not expect mrp behav in regards to contraband the amount of times security has put someone into perma over a suit or bag is hysterical.

eternally trolled by chemistry

tests failing due to something in chemistry, disregard

This should have a cl

This should have a cl

Would spark EVERYONE and IMMEDIATELY rush all the maint lockers on the map the moment this pr gets published. It stays a secret simply because of the low odds of syndie loot spawning.
Name/desc changes are too insignificant to warrant a cl entry either.

"It says 'syndicate' here on the tin/description" is completely meta imo. The amount of perma/execution-thirsty secoffs eager to jump at the slightest hint of someone being a tot further compounds this. While I do not expect mrp behav in regards to contraband - the amount of times security has put someone into perma over a suit/glasses/moustache/hat or bag is hysterical.

the only reason people consider it meta is because the only ways of obtaining it are confirmations of being a syndicate. You can see how this falls apart the minute you just map some of this stuff in normally. If people are really considering a single item worthy enough of being permabrig/execution then that's just an administration issue.

Would spark EVERYONE and IMMEDIATELY rush all the maint lockers on the map the moment this pr gets published. It stays a secret simply because of the low odds of syndie loot spawning.

playing the info game on an open source repo is dumb af. people are just gonna post in #general

Would spark EVERYONE and IMMEDIATELY rush all the maint lockers on the map the moment this pr gets published. It stays a secret simply because of the low odds of syndie loot spawning.

playing the info game on an open source repo is dumb af. people are just gonna post in #general

Tacticool suits in the clothesmate still are only mentioned by me or in a conversation started by me on discord so there's that. Eventually people would know that this exists I do not deny, but I'd rather keep it as a surprise.

it's still lame to do a large rebranding of a bunch of syndicate items, pretend like it's going to be secret for anything more than 2 seconds, then claim that by renaming it "suspicious" people are going to treat it even a shred differently. You're just diluting the aesthetics of what are obvious syndicate items to dupe maybe a handful of new players who have never seen them before.

I have no opinion on the renaming of non stealth items i dont think its gonna change anything, i think the maint locker change is good

the only ways of obtaining it are confirmations of being a syndicate

sorry grandpa but syndicate duffelbag is mapped on at least origin, better luck next time

it's still lame to do a large rebranding of a bunch of syndicate items, pretend like it's going to be secret for anything more than 2 seconds, then claim that by renaming it "suspicious" people are going to treat it even a shred differently. You're just diluting the aesthetics of what are obvious syndicate items to dupe maybe a handful of new players who have never seen them before.

I believe I've only rebranded the bag to that - everything else does not have neither that nor anything close to it. Tacticool clothes are basically renamed operative clothes with a miniscule edit and those are treated differently as opposed to actual operative clothing by security. Keeping the word "syndicate" on the tin of items I've changed gives ground to sec chasing you for the entire round just because you wear the wrong clothing despite them not being supposed to know those clothes are syndicate to begin with.
 Just because they know these items are syndicate OOC doesnt mean they have vested IC knowledge that this particular black and red bag or that particularly red EVA suit belongs to the syndicate and makes you a confirmed traitor and therefore subject to getting sent to perma.
An esword, a hardsuit, a gun or an eshield as few examples should make you valid, not a particularly black toolbox or bag.

sus box is still valid bro its robust... robust toolbox

wait did someone remove space lube from lockers

Would spark EVERYONE and IMMEDIATELY rush all the maint lockers on the map the moment this pr gets published.  It's still pretty effective.

For non-stealth items, there's no reason to not clearly mark them as syndicate items.
I think equating primarily vanity items in the same group as an esword, python or the blood-red hardsuit to be overkill.

Having the word "syndicate" slapped on a something that shouldnt have it on it (EVA suit, duffle bag) gives an excuse for security to assume a person is entirely valid while their clothing or item is of the wrong color, thats it. On the other hand things like nocturine bottles, web vests and (d)eswords are obviously contraband and dangerous to others and therefore should be responded to with force. Getting hunted relentlessly by security over the turtleneck, hat or glasses youre wearing because its "not on the list of NT-approved clothing suppliers" sounds completely absurd.
The only exception to my vanity argument is the balloon, whose entire point is to tell the world you're a syndicate agent and don't need no TC to do your work.

The syndicate EVA suit is an EVA suit issued by the syndicate, there's no reason for anyone on an NT station to be causally using one.

It functions the same as an EVA suit to my knowledge and the only IC different between itself and the ordinary EVA suit is the color and a note on the suit that its "not property of a rival corporation, honest!" (description).

Security shouldn't assume that someone is a member of the syndicate solely because the have a specific item, but having those items spawn naturally addresses that.

That's not the only thing what I am aiming for - while non-native items that are not inherently dangerous to others or the station itself may warrant a search - they should not cause a neuron activation in a security officer's brain to drop whatever they've been doing and dedicate the next 5-10-30 minutes chasing a person to confiscate their boots/webbing/suit.
I've left the "syndicate" name on things that can be only used for bad activities like the shoulder holster as its only use iirc is holstering guns, grenades and ammo within.

if syndie eva makes you valid salad it shouldnt be mapped on bagel, that just spurs conflict for no reason

if syndie eva makes you valid salad it shouldnt be mapped on bagel, that just spurs conflict for no reason

Theres a helmet on aspid

It's not about the function, it's about what it means about the wearer. Surely Syndicate stations wouldn't just ignore the presence of someone in a standard issue NT hardsuit.

The syndicate is the informed minority and incredibly hostile, it would make sense for the bad guys to know what's theirs and what's not but not your average Urist McBaton knowing every single item from the uplink roundstart.

they're not going to know it doesn't have syndicate in the name until they actually catch the person anyway.

How it currently works is an average secoff seeing clothing that is illegally darker or redder in color than the security uniforms and initiates an AOS call on the basis of that. The word "syndicate" in the name is just an excuse while trying to argue that its literally clothing.

 It will be very funny to watch how on MRP servers (normal MRP, not English) cops will get out with contraband.

While we can tell them that they don't IC, we can't stop players from knowing OOC what is provided by uplinks. The maint changes of this PR directly address the issues caused by that by creating a non-uplink method of obtaining certain items.

Changing the name on the clothing wont have any effects in that scenario other than making it harder for security to explain IC why the person they arrested for willingly and openly wearing contraband

The name changes on some items were made to incite a search rather than spark a manhunt/getting batonned without a word because "it says 'syndicate' here on the item name".

If non-stealth items are clearly marked as contraband there is no risk of players getting arrested for wearing something that they could have plausibly believed was just random clothing.

Pointless items should belong in their own category and not be equal to a weapon in the eyes of security players. Getting brigged for a hat as much as for a mosin is ridiculous.

EVA, related duffel and generic syndie duffel renamed back to original names. Also addedoutlaw items in the pool, replaced combat gloves with the entire susbox.

test fail is unrelated

Names/descriptions returned, the cig pack name change is more about flavor than stealth.

this should not have been merged with mosins available as maint loot

Roundstart maint raiders gonna be winning even harder.


Deadlink on the page

The swagger details link to https://docs.microsoft.com/en-us/connectors/x12/ is broken

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

ID: edfb3392-64c3-2382-38c1-4b30505687d7
Version Independent ID: 2c96d1c4-b949-6c9c-d076-be9ebaf6a276
Content: X12 messages for B2B enterprise integration - Azure Logic Apps
Content Source: articles/logic-apps/logic-apps-enterprise-integration-x12.md
Service: logic-apps
GitHub Login: @divyaswarnkar
Microsoft Alias: divswa

Hi @clineer Thanks for reaching out. We will review and update as appropriate.

@clineer, @DixitArora-MSFT, and @divyaswarnkar, the link should work, but there was a regression with the linked connector autogenerated reference page, but a PR has been created to address that issue.
#please-close


Order details page

Resolves #260
Implemented essentially two the same views
/order/:token/ for guest users
/my-account/order/:id/ for logged in users

I wasn't able to get this screen to work. I pulled the latest master for the saleor backend and ran this pull-request against it. When trying to view the details of an order, I get an error.
 TS2339: Property 'variant' does not exist on type 'OrderById_order_lines | OrderByToken_orderByToken_lines'.   Property 'variant' does not exist on type 'OrderById_order_lines'.
I ran this GraphQL query against the backed and got the same error.
fragment OrderPrice on TaxedMoney {
  gross {
    localized
    __typename
  }
  __typename
}

fragment Address on Address {
  firstName
  lastName
  companyName
  streetAddress1
  streetAddress2
  city
  postalCode
  country {
    code
    country
    __typename
  }
  countryArea
  phone
  __typename
}

fragment OrderDetail on Order {
  userEmail
  paymentStatus
  status
  id
  number
  shippingAddress {
    ...Address
    __typename
  }
  lines {
    productName
    quantity
    id
		unitPrice {
      gross {
        amount
      }
      currency
    }
    quantity
    __typename
  }
  subtotal {
    ...OrderPrice
    __typename
  }
  total {
    ...OrderPrice
    __typename
  }
  shippingPrice {
    ...OrderPrice
    __typename
  }
  __typename
}

query OrderByToken($token: String!) {
  orderByToken(token: $token) {
    ...OrderDetail
    __typename
  }
}```

Is there something that needs to be done in order to get this working or should I report this a bug? Thank you.


V1

Despite the branch name I don't think I'm ready to cut a v1 just yet. Since, according to semver, I can make API incompatible changes in version < 0.x.y, I'm going to keep poking at the design of this helper.


Web worker code blocks

A js or ts code block could have an option that moves it to a web worker.
It might not be guaranteed to work (inputs and outputs must be serializable, among other constraints), but when it can work, it would be nice to make it as easy as adding a worker=true option.
Ref. https://observablehq.com/@fil/worker

Jason Miller's greenlet and workerize are useful helpers:
https://observablehq.observablehq.cloud/pangea/party/greenlet


HTTP Error 403: Forbidden when trying to download playlists from https://learning.oreilly.com/

Checklist

[x] I'm reporting a broken site support
[x] I've verified that I'm running youtube-dl version 2019.11.22
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar issues including closed ones

Verbose log

youtube-dl --verbose --cookies cookies "https://learning.oreilly.com/videos/hadoop-fundamentals-livelessons/9780133392838"
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--verbose', u'--cookies', u'cookies', u'https://learning.oreilly.com/videos/hadoop-fundamentals-livelessons/9780133392838']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.11.22
[debug] Python version 2.7.16 (CPython) - Linux-5.0.0-27-generic-x86_64-with-Ubuntu-19.04-disco
[debug] exe versions: ffmpeg 4.1.3, ffprobe 4.1.3
[debug] Proxy map: {}
[safari:course]<PHONE_NUMBER>838: Downloading course JSON
ERROR: Unable to download JSON metadata: HTTP Error 403: Forbidden (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 627, in _request_webpage
    return self._downloader.urlopen(url_or_request)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2237, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib/python2.7/urllib2.py", line 435, in open
    response = meth(req, response)
  File "/usr/lib/python2.7/urllib2.py", line 548, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/lib/python2.7/urllib2.py", line 473, in error
    return self._call_chain(*args)
  File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 556, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)

Description

When trying to download a playlist (such as the example above found in https://github.com/ytdl-org/youtube-dl/blob/master/youtube_dl/extractor/safari.py), I get the message "HTTP Error 403: Forbidden". This happens in both Linux and Windows. The video requires an account (free is fine), so maybe that's part of the issue. There was a previous ticket to fix authentication here: https://github.com/ytdl-org/youtube-dl/pull/22184, but downloading that older build (https://github.com/ytdl-org/youtube-dl/releases/tag/2019.09.01) gives the same behaviour.
Downloading an individual video is fine, but just not a playlist.
Also of note is when downloading an individual video, if I use basic authentication (username/password), then I get the following error:
WARNING: Unable to download kaltura session JSON: HTTP Error 403: Forbidden

This doesn't happen when using cookies.

I got it working now, thanks taking the time to confirm it.
For anyone else that finds this in the future (probably me), the problem was that my trial period had expired (even though I could still watch the videos on the website, the API functionality was restricted). I found the expiry here:
https://learning.oreilly.com/api/v1/
...
"user_type": "Expired",
...
"trial": {
"trial_expiration_date": "2019-05-14T01:22:59.14522Z",
"trial": true
},
...

The endpoint that youtube-dl hits was:
https://learning.oreilly.com/api/v1/book/9780133392838/?override_format=json
Whereby I saw:
{
"detail": "You do not have permission to perform this action."
}

I fixed it by creating a new trial account, and using that. I also used Firefox to get the cookies.txt file this time, which may also have helped.


Copy visual as image button has moved; docs not updated.

The Copy Visual as Image has moved from the context menu to the visual header.  Docs still show it in the old location.

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

ID: e1534304-51bc-e015-e942-d7be33e2a9b6
Version Independent ID: b317e804-65fc-a354-18c1-333b3b1191b9
Content: Copy and paste a visualization in the Power BI service - Power BI
Content Source: powerbi-docs/consumer/end-user-copy-paste.md
Service: powerbi
Sub-service: pbi-explore
GitHub Login: @mihart
Microsoft Alias: mihart

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

Hi @dbrownems ,
Thank you for your suggestion.  We've made the update and set the article to republish.
All the best,
The DOCS team


Add DAO nft image and member image

Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

integration-tests/block/checkpoints_test.move 被删掉了，是预期的？

合并时出错，已 Fix


Add correct parsing for inline strings

Inline strings that previously met the XML spec, caused  the parsing of the files to fail.

@guyonroche I couldn't find the correct place to add tests around parsing of a file. If you can point me in the correct direction I am happy to add them

@robscotts4rb sorry it's taken me so long to get to this.
If you could add some tests that would be fantastic. The best file would be spec/unit/xlsx/xform/sheet/cell-xform.spec.js
Would this mean we should be writing inline strings as  ...  ?
Or do you think that might cause more problems than it solves?

@guyonroche I tried to something similar in #501 and added a very basic unit test in there -- hope it makes sense!

@robscotts4rb thanks for the contribution - I'm going to merge #501 and close this one as they are both working to the same end


Destroy shouldn't delete DOM

Hey, great plugin. My major issue with it is that the destroy method actually deletes the DOM. I was hoping it would merely uninit the dashboard. I am using Ember.js and here's my use case. When adding a widget, I simply added it to an array which causes a rerender which adds another widget into the dashboard (thanks to two-way binding). The problem is that this new widget isn't considered a part of the dashboard even though it has all of the correct data attributes. So I thought I'll do what I do with other plugins. Call destroy, the init again. Only, I lost all of my DOM :(
See, your add_widget method is not conducive to Ember because it requires that I pass html to the helper method itself, which isn't at all what I want to do from an Ember perspective. It'd be nice to either not destroy the DOM or provide a way to add a widget to the dashboard that already exists in the DOM to the dashboard container. As in, don't programmatically create a new widget for me. Let me specify that this widget doesn't currently exist in the dashboard but it should, so add it.

I use Gridstack with Ember and use add_widget in setup like this:
didInsertElement: -> scheduleOnce 'afterRender', @, 'setupGridstackWidget'
I haven't been able to grock what the "right way" to integrate plugins that directly manipulate the DOM with Ember, though. What am I missing?

+1

You can use remove_widget with detach_node=false to remove a widget without changing the DOM. The counterpart make_widget allows you to convert an existing node into a widget without gridstack creating another DOM node.

remove_widget isn't enough. Calling destroy on the Gridstack object does cleanup for the whole grid, not just an individual widget.  Looking at the code, it removes a "resize" handler and style rules (as well as removing the container from the DOM, which is what we want to avoid in this issue).

We can add a parameter for destroy to determine whether or not to remove from the DOM.

This feature has been merged in. destroy now takes an optional detachGrid method. Pass false and I believe your problem will be solved. Let me know if you have any further problems.


install.sh syntax error fix

The problem with conditional statement in install.sh script has been fixed.

@Praneet9  Tested Working as expected.


[Audio]: Mining Inc Audios [More then just one]

Check if this audio is already added to RetroStudio.

[X] The audio is not already in game.

Is this for the main-menu playlist?

[ ] Add to main-menu playlist.

Is this song from an old Roblox era or a sound effect?

[X] This song is from old Roblox or is a sound effect.

A link to the audio on Roblox
https://www.roblox.com/library/12823128891,  https://www.roblox.com/library/12823127347,  https://www.roblox.com/library/12823126033,  https://www.roblox.com/library/12823123146,  https://www.roblox.com/library/12823121908,  https://www.roblox.com/library/12823120328
A link to the audio file to download.
https://drive.google.com/drive/folders/1USR3Chll959is_xrxi6UlZk_j_VPKZbt?usp=sharing
Notes
All these sounds are required to finish our Mining Inc game.

"Generator Sound": [
"rbxassetid://12909748052"
],
"Outdoor Factory Ambience": [
"rbxassetid://12909746395"
],
"Large Engine Sound": [
"rbxassetid://12909749938"
],
"Large Engine Sound 2": [
"rbxassetid://12909744299"
],
"Hydro Turbine": [
"rbxassetid://12909751263"
],
"Cave Ambience": [
"rbxassetid://12909752881"
],


Update release_notes.md

Description of the change: Updated release notes to reflect Contacts UI changes.
Reason for the change:
Link to original source:
@ksigler7

Needs a release date!

Hello @Whatthefoxsays,Thanks again for the PR! It's HACKTOBERFEST! We want to show our appreciation by sending                                              you some special Hacktoberfest swag. If you have not already, could you please fill out                                              this form so we can send it to you? Thanks!                                             Team SendGrid DX


CS fixes

Updated CS rules and PHP CodeSniffer to version ^2.7.

I'll fix the merge conflicts, @webimpress .

Thanks, @webimpress


MG+MIS Ready for Review by Dr. Smith

Hello Dr. Smith,
Please find the documents here: MG, MIG.
I look forward to your feedback.
Thanks,
Phil

PhilMG.pdf - PDF Expert.pdf
PhilMIS.pdf - PDF Expert.pdf


BannerAd tap url not displaying any content ..

Hi...I am testing this Mobfox SDK for Banner ads,.I created a separate project and added the sdk classes and all dependencies.I placed a button inside the  UI and On clicking that button Banner Ad is displaying but while clicking that banner ad ,it is showing a blank view.But when I paste the click url in any browser ,it is showing a webpage.Why clickUrl not displaying any content in my simulator??(Actually few weeks before I was able to direct to a page by clicking the banner Ad,But now it is like this way)What is causing the actual problem?
http://my.mobfox.com/request.php?r_type=banner&rt=api&u=Mozilla%2F5.0 (iPhone%3B CPU iPhone OS 8_4 like Mac OS X) AppleWebKit%2F600.1.4 (KHTML%2C like Gecko) Mobile%2F12H4125a&o_iosadvid=D11C776B-F250-46DD-9214-9559AF012C22&v=6.2.2&s=a7c07f113cc83e87e82f95f0ca8be1dc&iphone_osversion=8.4&r_random=1350&m=live&i=<IP_ADDRESS>

Hi, can you please share your banner integration code?

@nabriski :Hi ..is this the portion of code u asking for????

Even in your demo app when i replace the test Publisher Id to my live publisher Id,some cases I get a blank page on tapping bannerAd...

@nabriski :Today When I click on the add ,this is the response.

And when I tried to open that clickurl in desktop browser i got the below output..

This may be a server side problem with the demand you are getting. I'll forward this to the MobFox server team.

Ok thanks...

The MobFox server team is investigating this, can you please paste here the markup you are getting in the response? It will help them, thanks.

Hi @nabriski : I am pasting my request string and the corresponding response..
Request:
http://my.mobfox.com/request.php?r_type=banner&rt=api&u=Mozilla%2F5.0 (iPhone%3B CPU iPhone OS 8_4 like Mac OS X) AppleWebKit%2F600.1.4 (KHTML%2C like Gecko) Mobile%2F12H4125a&o_iosadvid=64E45D4E-B0FC-41FF-8A91-59D37BB27554&v=6.2.2&s=a7c07f113cc83e87e82f95f0ca8be1dc&iphone_osversion=8.4&r_random=21509&m=live&i=<IP_ADDRESS>&o_iosadvidlimit=0
Response:

safari

http://my.mobfox.com/exchange.click.php?h=1b1125102425886d49fb0d2c50390007

link
30
no
yes

This looks valid, do you have an example of an invalid response?

@nabriski :Actually now I tested with my iOS device .For device ,click url is navigating to some pages.So I think I can avoid this issue na??

Maybe there was a problem with a specific advertiser sending bum ads. If it happens again please send the markup.

@nabriski :Ok thanks.


unlogged permanent layer loading error in prod

Via the rare counters we can observe permanent layer loading errors in: https://github.com/neondatabase/neon/blob/fc47af156f4d712e04722a3319a24e4c136c1f0b/pageserver/src/tenant/storage_layer/layer.rs#L1214-L1216
Two of these happened with the after deploy before 2023-11-07 11:53:00Z but there is nothing in the logs. Layer stringifies the error for the caller on access, but it seems we just do not log all errors, so there is no knowing what caused these.
One clear path in which we do not end up logging the error was added in #5660. I have not found any others, but as that was a quickfix, we should fix the PageReconstructError. It even has completely unused variant "NeedsDownload" which has not been used since 2022 if I recall correctly.
If we were to have multiple paths like this, it would mean that our logging related metrics cannot be trusted.

More such events, but still cannot see from the logs the reason: two minutes of logs around the 2 -> 3 eventnoteworthy: this is only happening on ps-7.us-east-2 still.

Looks like https://github.com/neondatabase/neon/pull/5915 resolved this


Checkbox to open PowerShell after the (Windows) installation

…shed. Default value is unchecked.
The official WiX guide was followed: http://wixtoolset.org/documentation/manual/v3/howtos/ui_and_localization/run_program_after_install.html

@bergmeister,
Thanks for having already signed the Contribution License Agreement. Your agreement has not been validated yet. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot


Study settings

What would you like to see added in this software?
A file with settings that are not sensitive, to avoid errors in repetitions.
Do you have any interest in helping implement the feature?
Yes
Additional information / screenshots
No response

Done with #11 (b14705c)


[DO NOT MERGE] Spike content review

This is a proof of concept prototype and must not be merged into master!
Store a review_by date field against each content item. Expose this for other apps to consume, such as Whitehall Publisher.
Goes with this change in Whitehall: https://github.com/alphagov/whitehall/pull/3567

 Spike #1: (Management - Life expectancy) If we set a review date on content then we know what we need to review (and audit) at right time and feed into archive process because we can use this to alert publishers and time it with key dates (e.g budget) [2 people, 2 days, dev and competitor analysis]

@chao-xian I am closing this PR, as this was never intended to be merged into master. Good work 👍!


iOS Live Photo Support?

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

Thanks a lot! That'll help for sure yeah :)

Hi @atlas-shrugged08!
Not on live photos specifically, however when I get some more time I should merge in imagemagick support. It would add support for all static image formats imagemagick supports, including HEIC.
Live photos and animated gifs would need extra integration across the whole stack, but I imagine them working a bit like videos do now.
Doubly so for mov files, if your browser doesn't support them natively (do any? except maybe Safari?), it would require transcoding, which is a whole 'nother can of worms I'm not willing to open just yet. My feeling is that there are more fundamental issues to fix first :)
Any more thoughts on your side?

Ah, forgot to mention, but the reason I haven't merged the imagemagick support yet is that it's kind of slow and resource intensive, so not an amazing experience. But maybe having it work at all is better than not supporting those formats in the first place.


Progress callback for code split / async require.

There should be a way to show the progress during an asynchronous require.
It could be the same interface as XMLHttpRequest progress.
require.ensure(["module-a", "module-b"], {
    progress: function(oEvent) {
        if (oEvent.lengthComputable) {
            var percentComplete = oEvent.loaded / oEvent.total;
            // ...
        } else {
            // Unable to compute progress information since the total size is unknown
        }
    },
    load: function(require) {
        var a = require("module-a");
        // ...
    }
});

Not sure about this syntax, but the feature would be helpful.

Oh how I would love this.

I want this feature!!!

:+1:

This is a very helpful feature! It will help us build a web app with loading page with webpack handling all the assets, no need for loadImg/loadCSS/loadScript any more!

The weak-weak question，how is it going？


Adding fields to Client Secret JWT

Hi!
I'm integrating Microsoft ID authentication into my API (api0) and plan to access it using two different APIs (api1 and api2). For this, I'm utilizing a unique Client Secret for each API. However, I'm encountering a challenge: there isn't a field in the generated JWT token (created with the Client Secret) that indicates which API is making the request to api0. I would like to add a custom field to the JWT token to identify the originating API. Those are the default fields in the JWT:
{
  "aud": "",
  "iss": "",
  "iat": 1,
  "nbf": 1,
  "exp": 1,
  "aio": "",
  "azp": "",
  "azpacr": "",
  "oid": "",
  "rh": "",
  "sub": "",
  "tid": "",
  "uti": "",
  "ver": "2.0"
}

@PedroSchroeder
You could use the azp claim. It contains the Application ID of the client application that requested the token. I assume that api1 and api2 have a different client Id (they should)

Thank you so much, @jmprieur! I have one more question: Is it possible to implement an automated system for renewing the client secret when it's nearing expiration, or do I need to manually create a new client secret each time?


Select the target by tagging Affected Monitors in "Schedule Maintenance".

⚠ Please verify that this feature request has NOT been suggested before.

[X] I checked and didn't find similar feature request

🏷 Feature Request Type
Other
🔖 Feature description
If we have dozens or more Affected Monitors targets, we can make a mistake in choosing one.
✔ Solution

I want to select a target monitor by selecting multiple tags.
I want to select the group on the status page as the Affected Monitors target.

❓ Alternatives
If both soulutions are applied, it would be very useful.
📝 Additional Context
If this were applied, it would be very convenient when selecting multiple monitor targets.

Is this a duplicate of #3059?
If no, please edit your feature request to make it more distinct and/or how the change you want builds upon the linked issue.
If yes, please close this issue (duplicate issues just makes managing issues harder)

This issue will continue to be tracked in #3059


feat: Capability to fetch logs along with span

hypertrace/hypertrace#224
In this change, following is done:

Parse the log event request attributes from the span request
Make the span query as usual, subsequently build the log query using requested log attributes and returned spanIds as filter (ex: select attr1, attr2 from logEventView where spanId in [id1, id2, ....]), use the timefilter from the spanQuery as well
maintain a mapping from spanId(referred as id) -> list of logEvents

Major changes in SpanLogEventFetcher, LogEventAttributeRequestBuilder
Test
{
  spans(
    limit: 100
    between: {startTime: "2021-04-26T17:45:31.849Z", endTime: "2021-04-26T18:45:31.849Z"}
    offset: 0
    orderBy: [{key: "startTime", direction: DESC}]
  ) {
    results {
      id
      logEvents {
        results {
        spanId: attribute(key: "spanId")
        attribute: attribute(key: "attributes")
        }
      }
      protocolName: attribute(key: "protocolName")
      serviceName: attribute(key: "serviceName")
      displaySpanName: attribute(key: "displaySpanName")
      statusCode: attribute(key: "statusCode")
      duration: attribute(key: "duration")
      startTime: attribute(key: "startTime")
      traceId: attribute(key: "traceId")
      __typename
    }
    total
    __typename
  }
}

{
  "data": {
    "spans": {
      "results": [
        {
          "id": "2b1b03a627d8315b",
          "logEvents": [],
          "protocolName": "HTTP",
          "serviceName": "route",
          "displaySpanName": "HTTP GET /route",
          "statusCode": "200",
          "duration": 63,
          "startTime":<PHONE_NUMBER>157,
          "traceId": "00000000000000006485904421d38a40",
          "__typename": "Span"
        },
        {
          "id": "4b374aba5a81f266",
          "logEvents": [
             "results":[
            {
              "spanId": "4b374aba5a81f266",
              "attribute": {
                "event": "GetConn"
              }
            },
            {
              "spanId": "4b374aba5a81f266",
              "attribute": {
                "event": "ConnectStart",
                "addr": "<IP_ADDRESS>:8081",
                "network": "tcp"
              }
            },
            {
              "spanId": "4b374aba5a81f266",
              "attribute": {
                "event": "ConnectDone",
                "addr": "<IP_ADDRESS>:8081",
                "network": "tcp"
              }
            },
            {
              "spanId": "4b374aba5a81f266",
              "attribute": {
                "event": "GotConn"
              }
            }
            ]
          ],
          "protocolName": "HTTP",
          "serviceName": "frontend",
          "displaySpanName": "HTTP GET /customer",
          "statusCode": "200",
          "duration": 292,
          "startTime":<PHONE_NUMBER>412,
          "traceId": "00000000000000006485904421d38a40",
          "__typename": "Span"
        }
       .....
      ],
      "total": 54,
      "__typename": "SpanResultSet"
    }
  }
}

@aaron-steinfeld for the log and span join to work, the span query must request id attribute and log query must request for spanId, in case when either is missing should it be handled by internally requesting the id/spanId attribute, or can we consider it sort of an informal contract with the consumer of the api?

@aaron-steinfeld for the log and span join to work, the span query must request id attribute and log query must request for spanId, in case when either is missing should it be handled by internally requesting the id/spanId attribute, or can we consider it sort of an informal contract with the consumer of the api?

Thanks for bringing that up! I meant to comment on that and it completely slipped my mind. IMO it should be handled internally, but I'm OK deferring that into a separate PR if you want since it strictly relaxes the API contract.


Parent not set on some child tasks

I have this setup with two templates, one for development and one for testing. I went through a list of work items in the Backlog list view and added the child tasks using the ... menu for each item. Most worked correctly, but two bugs only had the first child task created. Whenever I do this, it causes the list to refresh. Is it possible the list is refreshing before the last task is created?
Possible Race Condition?

I also have this happen when there are many templates and am using the extension from the backlog rather than a work item popup.

@figueiredorui I also have this issue of having always some new issues created with "unparented" which is really annoying. Could this issue please be fixed?

Trying to reproduce it...

Nowadays there is no reload needed as azure is updating the tasks automatically.


vbump STS

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
28093

Relevant Lines:
62303

💛  - Coveralls


Bad TypeScript colorisation

VSCode Version: 1.5.2
OS Version: Win10

@waderyan Looks like a TypeScript colorisation problem.

@karl20888 Please provide the code snippet that caused the problem.

Closing. Will reopen when more info is provided.


openOnFirstSessionStart does not work with git bash on windows

I'm using the git bash as the default shell on windows. When launching the the debugger a new terminal is opened every time. The openOnFirstSessionStart just works with cmd and PowerShell

How does your launch configuration (launch.json) look like?

Well one year later I'm working for a new company and have no windows setup anymore

Trying to add some more information. I was making cross platform builds. Uses MSYS and git bash as default terminal in vscode Then using gdb to debug a C++ application caused this problem.


Timerbar Customization

I've been trying to customize the style of the raidboss timerbars, but not all changes apply to them?
I'm not the best with code, but I can manage css a bit. I assume the resize-helper-bars aren't the same style as the ones during testing? Is there a way to apply whatever changes you've made to the resize-helpers to the other bars?

What in particular are you trying to do?

Like for example change the colours of the bars and the font. I've been having a similar problem.

I guess Im doing wrong too, like changing the raidboss.css some modifs come only in helper. And like dethmoose I dont have much experience with coding, so if I create a new css its will overwrite what suppose to be the default one?

The timeline is a bit hard to change because it's in nested web components.  Sorry about that.
/deep/ is deprecated, but this will give you the border radius you're looking for, I think?
/* this works but not really because the boxes don't change size */
#timeline /deep/ #root {
  font-size: 16px;
}

#timeline /deep/ #fg {
  border-radius: 5px;
}

#timeline /deep/ #bg {
  border-radius: 5px;
}

/* these are in the raidboss css file */
.timeline-bar-color {
  background-color: papayawhip;
}
.timeline-bar-color.soon {
  background-color: red;
}

This should get you a little bit of the way there.  I think I need to make some changes to the timeline itself to allow more extensive changes.
Sorry for the headaches.  This really isn't clear at all how to do.  I think the raidboss pop up text is easy to modify, but the timeline is not at the moment.

Oh, I see :[
You mean its hard to get customs from user/ directory, or the bars himself?
Because I did direct in the timerbar.js and got same result, yet I thought it was doing something wrong, because looks like the bars is a stretching image, comes from square and become rounded.
Yet, "works". thanks for your effort on that.

Oh, I see :[
You mean its hard to get customs from user/ directory, or the bars himself?
Because before I did direct in the timerbar.js and got same result, yet I thought it was doing something wrong, because looks like the bars is a stretching image, comes from square and become rounded.
Yet, "works". thanks for your effort on that.

I mean that it's a little bit tricky to style the bars themselves.  They're embedded inside two custom elements.  They also animate quickly, so it's hard to use devtools to investigate inside of them.  Either that or you have to go read all the code setting them up.
It looks like the stretching is because the bars are using transform and not width to animate.  I fixed that, and now border-radius should work properly.  Sorry for the hassle.
I added more reasonable class names in
cc7c676, so you can style #timeline, .timerbar-root, .timerbar-fg, .timerbar-bg, .timerbar-lefttext, .timerbar-centertext, .timerbar-righttext, and .text classes inside #timeline /deep/.
It looks like offhand that the MaxNumberOfTimerBars option combined with the height of #timer-container determine how big the bars are.  So, if you want to make the bars taller to have a bigger font size, then you can adjust that.
Was there anything else you were trying to do?

I'm going to close this issue for now.  Let me know if there's more customization you want here or if any of this is too cumbersome.


Inconsistent behavior when using OneToOne relationship and primary key

Describe the bug
When attempting to create a 1:1 relationship between two entities, there were inconsistencies in the produced SQL. I was able to get this working, but wanted to flag this as a potential issue for the library based on my experimentation.
@Entity()
export class Profile {
  @PrimaryKey()
  userId!: string;

  @OneToOne(() => Rating, (rating) => rating.profile, {
    cascade: [Cascade.ALL],
  })
  rating!: Rating;
}

@Entity()
export class Rating {
  @OneToOne({ entity: () => Profile, primary: true })
  profile!: Profile;

  // eslint-disable-next-line @typescript-eslint/no-inferrable-types
  @Property()
  rating: number = 1000;

  [PrimaryKeyType]?: [string];
}

When my profile and rating entities are written like this, I get the following SQL (which is desired):
create table "profile" ("user_id" varchar(255) not null, constraint "profile_pkey" primary key ("user_id"));

create table "rating" ("profile_user_id" varchar(255) not null, "rating" int not null default 1000, constraint "rating_pkey" primary key ("profile_user_id"));

alter table "rating" add constraint "rating_profile_user_id_foreign" foreign key ("profile_user_id") references "profile" ("user_id") on update cascade on delete cascade;

However, when I change profile and rating to be like this:
@Entity()
export class Profile {
  @PrimaryKey()
  userId!: string;

  @OneToOne({ inversedBy: 'profile' })
  rating!: Rating;
}

@Entity()
export class Rating {
  @OneToOne({ entity: () => Profile, mappedBy: 'rating', primary: true })
  profile!: Profile;

  // eslint-disable-next-line @typescript-eslint/no-inferrable-types
  @Property()
  rating: number = 1000;

  [PrimaryKeyType]?: [string];
}

For starters, if I don't include the 'entity' part in the decorator then ReflectMetadata throws an error, but also the SQL that's produced ends up with the rating table missing the entire "profile_user_id" column being included in the create table definition.
create table "rating" ("rating" int not null default 1000, constraint "rating_pkey" primary key ("profile_user_id"));

create table "profile" ("user_id" varchar(255) not null, "rating_profile_user_id" varchar(255) not null, constraint "profile_pkey" primary key ("user_id"));

alter table "profile" add constraint "profile_rating_profile_user_id_unique" unique ("rating_profile_user_id");

// this now throws an error since rating doesn't have this column
alter table "profile" add constraint "profile_rating_profile_user_id_foreign" foreign key ("rating_profile_user_id") references "rating" ("profile_user_id") on update cascade;

Expected behavior
Expected these different implementations to work in the same way.
Versions

Dependency
Version

node
v19.3.0

typescript
v4.7.4

mikro-orm
v5.6.1

your-driver
postgresql

However, when I change profile and rating to be like this:

Well, that change you made means your Profile entity has no PK, which is indeed invalid. You cannot use an inverse side 1:1 as the primary key, it represents no database column.
So if something, this is a missing validation. The side of the relation that uses mappedBy is always inverse, only owning side can be a primary key.

Interesting, so adding the 'mappedBy' attribute makes it so that the relation no longer represents a database column if attempted to use as a PK? I didn't know that was the expected behavior. Would the same then happen if I marked the rating property in Profile as { owner: true }?

This is not about primary keys at all. You use mappedBy on one end and inversedBy on another, and that is what sets the owning side. It was always like that, from the very first version. The owner option was added to support setting owning side with the "multi param signature", e.g. @OneToOne('Ent', 'prop'), as the second parameter is always mappedBy. Also note that you need to link only one side - the side that don't provide a link is always considered as owner.
https://mikro-orm.io/docs/relationships

Is there a reason why:

You cannot use an inverse side 1:1 as the primary key

Does it break something? A valid use case is 1:0..1 relation. Ex: a user can optionally rate the website (most users won't).
create table "rating" (
  "user_id" int not null,
  "score" integer not null,
  constraint "rating_pkey" primary key ("user_id")
);
alter table "rating" add constraint "rating_user_id_foreign"
  foreign key ("user_id") references "user" ("id") on update cascade;

This could be "rating" int null in the user table, but it would be wasteful because most users won't leave a rating. Plus, a rating doesn't need an id, it's an extremely simple table.
In Mikro, this throws an error:
@Entity()
class Rating {
  @OneToOne({
    entity: () => User,
    mappedBy: (user) => user.rating,
    primary: true,
  })
  user!: User;

MetadataError: Rating.user cannot be primary key as it is defined as inverse side. Maybe you should swap the use of 'inversedBy' and 'mappedBy'.

Inverse side of 1:1 is not represented by any column, its inverse mapping based on the owning side. Sounds like you are confusing inverse with owner.

I was trying to make User the owning side, and Rating with user_id the inverse side. I believe the error would go away once I add an id PK to Rating, but I was trying to avoid that by making user_id both the PK and the FK.

Well, but User is not the owning side, owning side is the one that declares the foreign key.

I think you are just confused what owning side is, you can have a FK as PK, the entity can share the User.id value, its just the sides that you need to swap.

Great, thank you. I misunderstood the sides. This worked as intended:
class Rating {
  @OneToOne(() => User, { primary: true, owner: true })
  user!: User;
...

class User {
  @OneToOne(() => Rating, (rating) => rating.user)
  rating?: Rating;
...

this.addSql(`
  create table "rating" ("user_id" int not null, constraint "rating_pkey" primary key ("user_id"));
`);
this.addSql(`
  alter table "rating" add constraint "rating_user_id_foreign" foreign key ("user_id")
    references "user" ("id") on update cascade on delete cascade;
`);


Row is too big to fit in the cursor window required pos 2 in Android

Hi , i am storing a JSON file as a text field of sqlite.
In Android, i am getting the error "row is too big to fit in the cursor window required pos 2" while getting it from the sqlite.but in ios same thing is working fine.

This is an Android SQLite3 problem and nothing to do with this plugin.

See https://github.com/craftzdog/react-native-sqlite-2/issues/57#issuecomment-491156124


Hmm, that's strange, it didn't give me an option to merge with the right author, so it left me as the author. Anyone know how to fix that?

Hmm, that's strange, it didn't give me an option to merge with the right author, so it left me as the author. Anyone know how to fix that?

You own the merge commit but @hcsxiaohan is the author of the individual code commits: https://github.com/pinterest/bender/commits/master


Why I can't access to getMap() property ?

I'm submitting a ...  (check one with "x")
[X] question
[ ] any problem or bug report
[ ] feature request
I am trying to do the following : this.map.getMap however, the code editor throws an error saying Property 'getMap' does not exist on type 'GoogleMap' where map is an instance of GoogleMap
What's wrong with it ?

Without your code, how can I help you?

Here is it :
  var mapDiv = document.getElementById("map_canvas");
   var map = this.map.getMap(mapDiv, { ///editor throws error here
     camera: {
      target: this.decodedPath
     }
});

Can you show me the code overall?

I found that .getMap property does not belong to Map in ionic, instead I used createElement and it worked.